@import '_content/Blazored.Toast/Blazored.Toast.bundle.scp.css';

/* /Components/Cards/PatientCard.razor.rz.scp.css */
.patient-card[b-k00l9ar2kj] {
    background: white;
    border: 1px solid #E9ECEF;
    border-radius: 14px;
    padding: 18px 18px 14px;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
    display: flex;
    flex-direction: column;
    gap: 14px;
    cursor: pointer;
}

.patient-card:hover[b-k00l9ar2kj] {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.09);
    border-color: #2E86AB;
}

/* ── Topo: nome + badge ─────────────────────────────────────── */
.pc-top[b-k00l9ar2kj] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}

.pc-name-block[b-k00l9ar2kj] {
    min-width: 0;
}

.pc-name[b-k00l9ar2kj] {
    font-weight: 700;
    font-size: 0.95rem;
    color: #212529;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pc-id[b-k00l9ar2kj] {
    font-size: 0.7rem;
    color: #ADB5BD;
    margin-top: 3px;
    font-family: monospace;
    letter-spacing: 0.03em;
}

/* ── Grid de informações ────────────────────────────────────── */
.pc-info[b-k00l9ar2kj] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px 12px;
}

.pc-info-item[b-k00l9ar2kj] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 0.8rem;
    color: #495057;
    min-width: 0;
}

.pc-info-item span[b-k00l9ar2kj] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pc-info-item i[b-k00l9ar2kj] {
    width: 14px;
    text-align: center;
    color: #2E86AB;
    font-size: 0.73rem;
    flex-shrink: 0;
}

/* ── Ações ──────────────────────────────────────────────────── */
.card-actions[b-k00l9ar2kj] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}
/* /Components/Cards/ProfessionalCard.razor.rz.scp.css */
.professional-card[b-5a45m3ravk] {
    background: white;
    border: 1px solid #E9ECEF;
    border-radius: 12px;
    padding: 20px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.professional-card:hover[b-5a45m3ravk] {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    border-color: #2E86AB;
}

.card-header[b-5a45m3ravk] {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.card-avatar[b-5a45m3ravk] {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1.1rem;
    margin-right: 15px;
}

.card-info[b-5a45m3ravk] {
    flex: 1;
}

.card-name[b-5a45m3ravk] {
    font-weight: 600;
    color: #495057;
    margin-bottom: 3px;
}

.card-id[b-5a45m3ravk] {
    font-size: 0.8rem;
    color: #6C757D;
}

.card-details[b-5a45m3ravk] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 15px;
}

.card-detail[b-5a45m3ravk] {
    font-size: 0.8rem;
}

.card-detail-label[b-5a45m3ravk] {
    color: #6C757D;
    margin-bottom: 2px;
}

.card-detail-value[b-5a45m3ravk] {
    color: #495057;
    font-weight: 500;
}

.card-actions[b-5a45m3ravk] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.action-btn[b-5a45m3ravk] {
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
}

.action-btn.view[b-5a45m3ravk] {
    background: #E3F2FD;
    color: #2E86AB;
}

.action-btn.edit[b-5a45m3ravk] {
    background: #FFF3E0;
    color: #F57C00;
}

.action-btn.delete[b-5a45m3ravk] {
    background: #FFEBEE;
    color: #D32F2F;
}

.action-btn:hover[b-5a45m3ravk] {
    transform: translateY(-2px);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
}
/* /Components/Generic/SearchAndFindComponent.razor.rz.scp.css */
/* Estilos de filtro centralizados em wwwroot/css/filters.css */
/* /Components/Input/ProfessionalSearchBox.razor.rz.scp.css */
.search-professional[b-ijae6iv8ke] {
    position: relative;
    width: 100%;
}

.search-professional i[b-ijae6iv8ke] {
    position: absolute;
    left: 1.25rem;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
}

.search-professional i.fa-check[b-ijae6iv8ke]{
    color: green;
}

.search-professional input[b-ijae6iv8ke] {
    width: 100%;
    padding: 0.75rem 0 0.75rem 3rem;
    border-radius: 16px;
    border: 1.5px solid #e2e8f0;
    background: #f8fafc;
    font-size: 1rem;
}

/* Professional Search */
.professional-search[b-ijae6iv8ke] {
    position: relative;
    flex: 1;
}

.professional-search input[b-ijae6iv8ke] {
    padding-right: 45px;
    width: 100%;
}

.professional-search .search-icon[b-ijae6iv8ke] {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #6C757D;
    cursor: pointer;
}

.empty-slot:hover[b-ijae6iv8ke] {
    border-color: #2E86AB;
    color: #2E86AB;
    background: #F8F9FA;
}

.suggestions[b-ijae6iv8ke] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 2px solid #E9ECEF;
    border-top: none;
    border-radius: 0 0 8px 8px;
    max-height: 200px;
    overflow-y: auto;
    z-index: 1000;
    display: none;
}

.suggestion[b-ijae6iv8ke] {
    padding: 12px 15px;
    cursor: pointer;
    border-bottom: 1px solid #F8F9FA;
    transition: background 0.2s ease;
}

.suggestion:hover[b-ijae6iv8ke] {
    background: #F8F9FA;
}

.suggestion:last-child[b-ijae6iv8ke] {
    border-bottom: none;
}
/* /Components/Loading/LoadingContainerState.razor.rz.scp.css */
.main-spinner[b-g5d71ghwis] {
    width: 80px;
    height: 80px;
    margin: 100px auto;
    position: relative;
}

.spinner-ring[b-g5d71ghwis] {
    width: 100%;
    height: 100%;
    border: 4px solid #E9ECEF;
    border-top: 4px solid #2E86AB;
    border-radius: 50%;
    animation: spin-b-g5d71ghwis 1s linear infinite;
    position: absolute;
}

.spinner-ring.secondary[b-g5d71ghwis] {
    border-top-color: #28A745;
    animation-duration: 1.5s;
    animation-direction: reverse;
    width: 60px;
    height: 60px;
    top: 10px;
    left: 10px;
}

.spinner-ring.tertiary[b-g5d71ghwis] {
    border-top-color: #FFC107;
    animation-duration: 2s;
    width: 40px;
    height: 40px;
    top: 20px;
    left: 20px;
}

@keyframes spin-b-g5d71ghwis {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@media (max-width: 768px) {
    .loading-container[b-g5d71ghwis] {
        padding: 30px 20px;
    }

    .main-spinner[b-g5d71ghwis] {
        width: 60px;
        height: 60px;
    }
}
/* /Components/Loading/LoadingPageState.razor.rz.scp.css */
.loading-text[b-e5l65m2tx0] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 10px;
}

.loading-subtitle[b-e5l65m2tx0] {
    font-size: 0.9rem;
    color: #6C757D;
    margin-bottom: 20px;
}

.loading-overlay[b-e5l65m2tx0] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    /*Lembrar que precisa ativar o overlay para aparecer.*/
    opacity: 0; 
    visibility: hidden;
    transition: all 0.3s ease;
}

    .loading-overlay.active[b-e5l65m2tx0] {
        opacity: 1;
        visibility: visible;
    }

.progress-container[b-e5l65m2tx0] {
    width: 100%;
    height: 6px;
    background: #E9ECEF;
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 15px;
}

.progress-bar[b-e5l65m2tx0] {
    height: 100%;
    background: linear-gradient(90deg, #2E86AB, #28A745);
    border-radius: 3px;
    width: 0%;
    transition: width 0.3s ease;
    animation: progressAnimation 3s ease-in-out infinite;
}

.loading-state[b-e5l65m2tx0] {
    padding: 40px;
    text-align: center;
    background: white;
    border-radius: 12px;
    margin: 20px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}

    .loading-state h3[b-e5l65m2tx0] {
        color: #2E86AB;
        margin-bottom: 15px;
        font-size: 1.1rem;
    }

.main-spinner[b-e5l65m2tx0] {
    width: 80px;
    height: 80px;
    margin: 0 auto 25px;
    position: relative;
}

.spinner-ring[b-e5l65m2tx0] {
    width: 100%;
    height: 100%;
    border: 4px solid #E9ECEF;
    border-top: 4px solid #2E86AB;
    border-radius: 50%;
    animation: spin-b-e5l65m2tx0 1s linear infinite;
    position: absolute;
}

    .spinner-ring.secondary[b-e5l65m2tx0] {
        border-top-color: #28A745;
        animation-duration: 1.5s;
        animation-direction: reverse;
        width: 60px;
        height: 60px;
        top: 10px;
        left: 10px;
    }

    .spinner-ring.tertiary[b-e5l65m2tx0] {
        border-top-color: #FFC107;
        animation-duration: 2s;
        width: 40px;
        height: 40px;
        top: 20px;
        left: 20px;
    }

.loading-container[b-e5l65m2tx0] {
    text-align: center;
    padding: 40px;
    background: white;
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
    max-width: 400px;
    width: 90%;
    transform: scale(0.8);
    transition: all 0.3s ease;
}

.loading-overlay.active .loading-container[b-e5l65m2tx0] {
    transform: scale(1);
}

@keyframes spin-b-e5l65m2tx0 {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@media (max-width: 768px) {
    .loading-container[b-e5l65m2tx0] {
        padding: 30px 20px;
    }

    .main-spinner[b-e5l65m2tx0] {
        width: 60px;
        height: 60px;
    }
}
/* /Components/Modals/Billing/BillingModal.razor.rz.scp.css */
/* ── Overlay ── */
.modal-overlay[b-j42ix3sxjl] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}

.modal-overlay.open[b-j42ix3sxjl] {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}

/* ── Container ── */
.billing-modal[b-j42ix3sxjl] {
    background: #fff;
    border-radius: 16px;
    width: 100%;
    max-width: 700px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.22);
    overflow: hidden;
    opacity: 0;
    transform: translateY(16px) scale(0.98);
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.modal-overlay.open .billing-modal[b-j42ix3sxjl] {
    opacity: 1;
    transform: translateY(0) scale(1);
}

/* ── Subtítulo do paciente abaixo do título ── */
.billing-patient[b-j42ix3sxjl] {
    margin: 2px 0 0;
    font-size: 0.8rem;
    color: #64748b;
    font-weight: 400;
}

/* ── Body: sobrepõe padding do modal.css para layout flex com gap ── */
.billing-modal-body[b-j42ix3sxjl] {
    padding: 20px 24px !important;
    display: flex;
    flex-direction: column;
    gap: 22px;
}

/* ── Loading / Empty ── */
.billing-loading[b-j42ix3sxjl],
.billing-empty[b-j42ix3sxjl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px;
    color: #9E9E9E;
    gap: 12px;
    font-size: 0.95rem;
}

.billing-loading i[b-j42ix3sxjl],
.billing-empty i[b-j42ix3sxjl] {
    font-size: 2.2rem;
}

/* ── Summary bar ── */
.billing-summary[b-j42ix3sxjl] {
    display: flex;
    gap: 0;
    background: #F8F9FA;
    border: 1px solid #E9ECEF;
    border-radius: 10px;
    overflow: hidden;
}

.summary-item[b-j42ix3sxjl] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px 20px;
    flex: 1;
    border-right: 1px solid #E9ECEF;
}

.summary-item:last-child[b-j42ix3sxjl] {
    border-right: none;
}

.summary-label[b-j42ix3sxjl] {
    font-size: 0.68rem;
    color: #6C757D;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
}

.summary-value[b-j42ix3sxjl] {
    font-size: 0.92rem;
    font-weight: 700;
    color: #212529;
}

.summary-value.total[b-j42ix3sxjl]    { color: #2E86AB; font-size: 1rem; }
.summary-value.pago[b-j42ix3sxjl]     { color: #198754; }
.summary-value.restante[b-j42ix3sxjl] { color: #C75000; }

/* ── Status badge ── */
.billing-status-badge[b-j42ix3sxjl] {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.73rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    width: fit-content;
}

.billing-status-badge.Draft[b-j42ix3sxjl]       { background: #E9ECEF; color: #6C757D; }
.billing-status-badge.Issued[b-j42ix3sxjl]      { background: #FFF3CD; color: #856404; }
.billing-status-badge.Partial[b-j42ix3sxjl]     { background: #FFE8CC; color: #C75000; }
.billing-status-badge.Paid[b-j42ix3sxjl]        { background: #D1E7DD; color: #146C43; }
.billing-status-badge.Overdue[b-j42ix3sxjl]     { background: #F8D7DA; color: #842029; }
.billing-status-badge.Installment[b-j42ix3sxjl] { background: #E0EAFF; color: #3B5CA8; }
.billing-status-badge.Cancelled[b-j42ix3sxjl]   { background: #E9ECEF; color: #6C757D; text-decoration: line-through; }

/* ── Sections ── */
.billing-section[b-j42ix3sxjl] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.section-title[b-j42ix3sxjl] {
    font-size: 0.85rem;
    font-weight: 700;
    color: #495057;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 7px;
    padding-bottom: 10px;
    border-bottom: 2px solid #F0F0F0;
}

.section-title i[b-j42ix3sxjl] {
    color: #2E86AB;
    width: 16px;
    text-align: center;
}

/* ── Table ── */
.billing-table[b-j42ix3sxjl] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.billing-table th[b-j42ix3sxjl] {
    padding: 7px 10px;
    font-size: 0.7rem;
    font-weight: 700;
    color: #6C757D;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 2px solid #E9ECEF;
    text-align: left;
    background: #FAFAFA;
}

.billing-table td[b-j42ix3sxjl] {
    padding: 9px 10px;
    border-bottom: 1px solid #F4F4F4;
    color: #343A40;
}

.billing-table tr:last-child td[b-j42ix3sxjl] {
    border-bottom: none;
}

.text-center[b-j42ix3sxjl] { text-align: center !important; }
.text-right[b-j42ix3sxjl]  { text-align: right !important; }

.notes-cell[b-j42ix3sxjl] {
    color: #6C757D;
    font-size: 0.8rem;
    font-style: italic;
}

.method-badge[b-j42ix3sxjl] {
    background: #E9ECEF;
    border-radius: 5px;
    padding: 3px 9px;
    font-size: 0.75rem;
    font-weight: 600;
    color: #495057;
}

.empty-hint[b-j42ix3sxjl] {
    font-size: 0.85rem;
    color: #AEAEAE;
    font-style: italic;
    margin: 0;
    padding: 2px 0;
}

.no-services-warning[b-j42ix3sxjl] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: #FFF8E1;
    border: 1px solid #FFE082;
    border-radius: 8px;
    font-size: 0.85rem;
    color: #7B5800;
    margin-bottom: 12px;
}

/* ── Add forms ── */
.add-item-form[b-j42ix3sxjl] {
    background: #F8F9FA;
    border: 1px solid #E9ECEF;
    border-radius: 10px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 2px;
}

.add-item-form h5[b-j42ix3sxjl] {
    font-size: 0.75rem;
    font-weight: 700;
    color: #6C757D;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 6px;
}

.add-item-form h5 i[b-j42ix3sxjl] {
    color: #2E86AB;
}

/* ── Form rows ── */
.form-row[b-j42ix3sxjl] {
    display: flex;
    gap: 8px;
    align-items: center;
}

.form-row .form-control[b-j42ix3sxjl],
.form-row .form-select[b-j42ix3sxjl] {
    height: 36px;
    font-size: 0.85rem;
    border-color: #DEE2E6;
    border-radius: 7px;
}

.form-row .form-control:focus[b-j42ix3sxjl],
.form-row .form-select:focus[b-j42ix3sxjl] {
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.12);
}

/* Line-item row 1: description full width */
.form-row .field-desc[b-j42ix3sxjl] {
    flex: 1;
}

/* Line-item row 2: qty + price + button */
.form-row--actions .field-qty[b-j42ix3sxjl]   { flex: 0 0 80px; }
.form-row--actions .field-price[b-j42ix3sxjl] { flex: 1; }

/* Payment row: amount + method same height */
.form-row--payment .field-amount[b-j42ix3sxjl] { flex: 0 0 140px; }
.form-row--payment .field-method[b-j42ix3sxjl] { flex: 1; }

/* Bottom row of payment: notes + button */
.form-row--actions .field-notes[b-j42ix3sxjl] { flex: 1; }

.action-btn1[b-j42ix3sxjl] {
    flex-shrink: 0;
    height: 36px;
    padding: 0 16px;
    font-size: 0.83rem;
    border-radius: 7px;
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

/* ── Insurance info ── */
.insurance-info[b-j42ix3sxjl] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    background: #EAF4FB;
    border: 1px solid #BEE0F0;
    border-radius: 8px;
    font-size: 0.85rem;
    color: #1A6E96;
}

.insurance-info i[b-j42ix3sxjl] {
    margin-top: 2px;
    flex-shrink: 0;
}

.insurance-info-details[b-j42ix3sxjl] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.insurance-info-details strong[b-j42ix3sxjl] {
    font-size: 0.88rem;
}

.insurance-info--warning[b-j42ix3sxjl] {
    background: #FFF8E1;
    border-color: #FFE082;
    color: #7A5C00;
}

/* ── Cancel actions ── */
.cancel-billing-bar[b-j42ix3sxjl] {
    display: flex;
    justify-content: flex-end;
    margin-top: -12px;
}

.cancel-link[b-j42ix3sxjl] {
    background: none;
    border: none;
    font-size: 0.75rem;
    color: #ADB5BD;
    cursor: pointer;
    padding: 4px 6px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    gap: 5px;
    transition: color 0.15s, background 0.15s;
    white-space: nowrap;
}

.cancel-link:hover[b-j42ix3sxjl] {
    color: #842029;
    background: #FEF2F2;
}

.cancel-link--billing[b-j42ix3sxjl] {
    font-size: 0.78rem;
}

.section-title-text[b-j42ix3sxjl] {
    display: flex;
    align-items: center;
    gap: 7px;
    flex: 1;
}

/* ── Installment grid ── */
.installment-grid[b-j42ix3sxjl] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.installment-row[b-j42ix3sxjl] {
    display: grid;
    grid-template-columns: 32px 1fr auto auto auto;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: #F8F9FA;
    border: 1px solid #E9ECEF;
    font-size: 0.84rem;
    transition: background 0.15s;
}

.installment-row.inst-paid[b-j42ix3sxjl] {
    background: #F0FBF4;
    border-color: #B7E4C7;
    opacity: 0.85;
}

.installment-row.inst-overdue[b-j42ix3sxjl] {
    background: #FFF5F5;
    border-color: #FFBDBD;
}

.inst-number[b-j42ix3sxjl] {
    font-weight: 800;
    font-size: 0.78rem;
    color: #6C757D;
    text-align: center;
    background: #E9ECEF;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.inst-paid .inst-number[b-j42ix3sxjl] {
    background: #C3EFD3;
    color: #146C43;
}

.inst-overdue .inst-number[b-j42ix3sxjl] {
    background: #FFD6D6;
    color: #842029;
}

.inst-due[b-j42ix3sxjl] {
    color: #495057;
    display: flex;
    align-items: center;
    gap: 5px;
}

.inst-due i[b-j42ix3sxjl] {
    color: #6C757D;
    font-size: 0.78rem;
}

.inst-amount[b-j42ix3sxjl] {
    font-weight: 700;
    color: #2E86AB;
    white-space: nowrap;
}

.inst-status[b-j42ix3sxjl] {
    white-space: nowrap;
}

.inst-action[b-j42ix3sxjl] {
    display: flex;
    justify-content: flex-end;
}

.inst-paid-at[b-j42ix3sxjl] {
    font-size: 0.78rem;
    color: #198754;
    gap: 4px;
    align-items: center;
}

.pay-inst-btn[b-j42ix3sxjl] {
    font-size: 0.78rem;
    padding: 4px 10px;
    height: 30px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
}

/* ── Installment creator ── */
.installment-creator[b-j42ix3sxjl] {
    border-color: #C3D9FF;
    background: #F0F5FF;
}

.installment-creator h5[b-j42ix3sxjl] {
    color: #3B5CA8;
}

.installment-creator h5 i[b-j42ix3sxjl] {
    color: #3B5CA8;
}

.installment-row-form[b-j42ix3sxjl] {
    align-items: flex-end;
}

.install-field[b-j42ix3sxjl] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.install-field label[b-j42ix3sxjl] {
    font-size: 0.72rem;
    font-weight: 700;
    color: #6C757D;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.install-field .form-control[b-j42ix3sxjl] {
    width: 120px;
}

.install-preview[b-j42ix3sxjl] {
    flex: 1;
    display: flex;
    align-items: flex-end;
    padding-bottom: 2px;
}

.preview-text[b-j42ix3sxjl] {
    font-size: 0.82rem;
    font-weight: 700;
    color: #3B5CA8;
    background: #D8E8FF;
    padding: 4px 10px;
    border-radius: 20px;
    white-space: nowrap;
}

.install-hint[b-j42ix3sxjl] {
    font-size: 0.8rem;
    color: #6C757D;
    margin: 0;
    font-style: italic;
}

/* ── Responsive ── */
@media (max-width: 560px) {
    .billing-modal[b-j42ix3sxjl] {
        border-radius: 12px;
        max-height: 95vh;
    }

    .billing-summary[b-j42ix3sxjl] {
        flex-wrap: wrap;
    }

    .summary-item[b-j42ix3sxjl] {
        flex: 1 1 45%;
        border-right: none;
        border-bottom: 1px solid #E9ECEF;
    }

    .form-row--payment[b-j42ix3sxjl] {
        flex-wrap: wrap;
    }

    .form-row--payment .field-amount[b-j42ix3sxjl],
    .form-row--payment .field-method[b-j42ix3sxjl] {
        flex: 1 1 100%;
    }
}
/* /Components/Modals/Calendar/CalendarModal.razor.rz.scp.css */

.modal-content-checking[b-bkqautfvs0] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    max-width: 700px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    transition: all 0.3s ease;
}

/* Patient Search */
.patient-search[b-bkqautfvs0] {
    position: relative;
}

.patient-search input[b-bkqautfvs0] {
    padding-right: 45px;
    width: 100%;
}

.patient-search .search-icon-wrapper[b-bkqautfvs0] {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #6C757D;
}

.patient-search .search-icon[b-bkqautfvs0] {
    display: block;
}

.custom-input-group-default[b-bkqautfvs0] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    position: relative;
}

.custom-input-group-default label[b-bkqautfvs0] {
    font-size: 0.813rem;
    font-weight: 700;
    color: var(--body-text);
}

.patient-suggestions[b-bkqautfvs0] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 2px solid #E9ECEF;
    border-top: none;
    border-radius: 0 0 8px 8px;
    max-height: 200px;
    overflow-y: auto;
    z-index: 1000;
    display: none;
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
}

.patient-suggestion[b-bkqautfvs0] {
    padding: 12px 15px;
    cursor: pointer;
    border-bottom: 1px solid #F8F9FA;
    transition: background 0.2s ease;
}

.patient-suggestion:hover[b-bkqautfvs0] {
    background: #F8F9FA;
}

.patient-suggestion:last-child[b-bkqautfvs0] {
    border-bottom: none;
}

/* Time Slots */
.time-slots[b-bkqautfvs0] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
    gap: 10px;
}

.time-slots-horizontal[b-bkqautfvs0] {
    display: flex;
    gap: 10px;
}

.time-slot[b-bkqautfvs0] {
    padding: 8px 12px;
    border: 2px solid #E9ECEF;
    border-radius: 6px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 0.85rem;
}

.time-slot:hover[b-bkqautfvs0] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.1);
}

.time-slot.selected[b-bkqautfvs0] {
    background: #2E86AB;
    color: white;
    border-color: #2E86AB;
}

.time-slot.unavailable[b-bkqautfvs0] {
    background: #F8F9FA;
    color: #6C757D;
    cursor: not-allowed;
    opacity: 0.6;
}

/* Professional Card */
.professional-list[b-bkqautfvs0] {
    max-height: 150px;
    /* altura máxima antes de criar o scroll */
    overflow-y: auto;
    /* ativa scroll vertical */
    padding-right: 5px;
    /* evita que o conteúdo encoste no scroll */
    /* border: 1px solid #ddd; */
}

.professional-card[b-bkqautfvs0] {
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    padding: 15px;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-bottom: 2px;
}

.professional-card.disabled[b-bkqautfvs0] {
    opacity: 1;
    background: #E9ECEF;
    /* cursor: not-allowed; */
    color: #6C757D;
}

.professional-card:hover[b-bkqautfvs0] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.05);
}

.professional-card.selected[b-bkqautfvs0] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.1);
}

.professional-info[b-bkqautfvs0] {
    display: flex;
    align-items: center;
    gap: 15px;
}

.professional-avatar[b-bkqautfvs0] {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #2E86AB;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 600;
}

.professional-details h4[b-bkqautfvs0] {
    color: #2E86AB;
    margin-bottom: 5px;
}

.professional-details p[b-bkqautfvs0] {
    color: #6C757D;
    font-size: 0.85rem;
}


.block-allday-toggle[b-bkqautfvs0] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    margin-bottom: 14px;
    background: #FFF3E0;
    border: 1px solid #FFB74D;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 500;
    color: #E65100;
    transition: background 0.2s ease;
    user-select: none;
}

.block-allday-toggle:hover[b-bkqautfvs0] {
    background: #FFE0B2;
}

.block-allday-toggle i[b-bkqautfvs0] {
    font-size: 1.4rem;
}

.block-allday-banner[b-bkqautfvs0] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px;
    background: linear-gradient(135deg, #FFF3E0, #FFF8F0);
    border: 1px dashed #FFB74D;
    border-radius: 8px;
    color: #E65100;
    font-size: 0.9rem;
    font-weight: 500;
}

.block-allday-banner i[b-bkqautfvs0] {
    font-size: 1.1rem;
}

/* Responsive */
@media (max-width: 768px) {
    .time-slots[b-bkqautfvs0] {
        grid-template-columns: repeat(auto-fill, minmax(60px, 1fr));
    }
}
/* /Components/Modals/ClinicalReport/AllergyModal.razor.rz.scp.css */
/* ── Header: acento vermelho (sem background colorido) ─────────── */
.modal-header[b-6zjqo97ton] { border-bottom: 2px solid #fecaca; }
.modal-icon[b-6zjqo97ton]   { background: rgba(220, 38, 38, 0.10); color: #dc2626; }

/* ── Footer: summary à esquerda + ações à direita ──────────────── */
.modal-footer[b-6zjqo97ton] { justify-content: space-between; align-items: center; }

.allergy-summary[b-6zjqo97ton] {
    flex: 1;
    font-size: 0.875rem;
    color: #6C757D;
}

.modal-actions[b-6zjqo97ton] {
    display: flex;
    gap: 12px;
}

/* ── Allergy type selector ─────────────────────────────────────── */
.allergy-types[b-6zjqo97ton] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
}

.allergy-type[b-6zjqo97ton] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: white;
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.allergy-type:hover[b-6zjqo97ton] {
    border-color: #DC3545;
    background: rgba(220, 53, 69, 0.05);
}

.allergy-type input[type="radio"][b-6zjqo97ton] { width: auto; margin: 0; }

.allergy-type.selected[b-6zjqo97ton] {
    border-color: #DC3545;
    background: rgba(220, 53, 69, 0.1);
}

.allergy-type-icon[b-6zjqo97ton] {
    font-size: 1.2rem;
    color: #DC3545;
}

/* ── Severity pill group (segmented control) ───────────────────── */
.severity-pill-group[b-6zjqo97ton] {
    display: flex;
    background: #f1f5f9;
    border-radius: 12px;
    padding: 4px;
    gap: 4px;
    width: 100%;
}

.severity-pill[b-6zjqo97ton] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 9px 22px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.875rem;
    font-weight: 500;
    color: #64748b;
    background: transparent;
    border: none;
    transition: all 0.18s ease;
    white-space: nowrap;
    user-select: none;
    flex: 1;
}

.severity-pill input[type="radio"][b-6zjqo97ton] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.severity-pill:hover[b-6zjqo97ton] { background: #e2e8f0; color: #334155; }

.severity-pill.severity-mild.selected[b-6zjqo97ton]     { background: #f59e0b; color: #fff; box-shadow: 0 2px 8px rgba(245, 158, 11, 0.35); }
.severity-pill.severity-moderate.selected[b-6zjqo97ton] { background: #f97316; color: #fff; box-shadow: 0 2px 8px rgba(249, 115, 22, 0.35); }
.severity-pill.severity-severe.selected[b-6zjqo97ton]   { background: #ef4444; color: #fff; box-shadow: 0 2px 8px rgba(239, 68, 68, 0.35); }

/* ── Symptom tags ──────────────────────────────────────────────── */
.symptom-tags[b-6zjqo97ton] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.symptom-tag[b-6zjqo97ton] {
    padding: 8px 12px;
    background: #E9ECEF;
    border: none;
    border-radius: 15px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.8rem;
    display: flex;
    align-items: center;
    gap: 6px;
}

.symptom-tag:hover[b-6zjqo97ton],
.symptom-tag.active[b-6zjqo97ton] { background: #DC3545; color: white; }

/* ── Allergen suggestions ──────────────────────────────────────── */
.allergen-suggestions[b-6zjqo97ton] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.allergen-suggestion[b-6zjqo97ton] {
    padding: 6px 12px;
    background: #F8F9FA;
    border: 1px solid #DEE2E6;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.8rem;
}

.allergen-suggestion:hover[b-6zjqo97ton] { background: #E9ECEF; border-color: #ADB5BD; }

/* ── Alert ─────────────────────────────────────────────────────── */
.alert[b-6zjqo97ton] {
    padding: 12px 15px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.alert-warning[b-6zjqo97ton] { background: #FFF3CD; color: #856404; border: 1px solid #FFEAA7; }
.alert-danger[b-6zjqo97ton]  { background: #F8D7DA; color: #721C24; border: 1px solid #F5C6CB; }

/* ── Checkbox layout ───────────────────────────────────────────── */
.checkbox[b-6zjqo97ton] { display: flex; }

/* ── Responsive ────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .allergy-types[b-6zjqo97ton]     { grid-template-columns: 1fr; }
    .modal-footer[b-6zjqo97ton]      { flex-direction: column; gap: 15px; }
    .modal-actions[b-6zjqo97ton]     { width: 100%; justify-content: center; }
}
/* /Components/Modals/ClinicalReport/MedicalCertificateModal.razor.rz.scp.css */
/* ── Header: verde clínico (atestado) ───────────────────────────── */
.modal-header[b-km26xnknyb] {
    background: #f0fdf4;
    border-bottom: 2px solid #86efac;
}

.modal-header .modal-icon[b-km26xnknyb] { background: rgba(22, 163, 74, 0.12); color: #16a34a; }

/* ── Título do modal ─────────────────────────────────────────────── */
.modal-title[b-km26xnknyb] {
    font-size: 1.0625rem;
    font-weight: 700;
    color: #14532d;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* ── Body / Footer básicos ───────────────────────────────────────── */
.modal-body[b-km26xnknyb] {
    padding: 30px;
}

.modal-footer[b-km26xnknyb] {
    padding: 20px 30px;
    border-top: 1px solid #E9ECEF;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #F8F9FA;
}

/* ── required star ───────────────────────────────────────────────── */
.required[b-km26xnknyb] {
    color: #DC3545;
}

/* ── Chips de atalho de dias ─────────────────────────────────────── */
.rx-chips-label[b-km26xnknyb] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #6C757D;
    display: block;
    margin-bottom: 6px;
}

.rx-chips[b-km26xnknyb] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.rx-chip[b-km26xnknyb] {
    padding: 5px 13px;
    background: #E8F5E9;
    color: #1B5E20;
    border: 1.5px solid #A5D6A7;
    border-radius: 20px;
    font-size: 0.78rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    line-height: 1.4;
}

.rx-chip:hover[b-km26xnknyb] {
    background: #2EAB6E;
    color: white;
    border-color: #2EAB6E;
}

.rx-chip--on[b-km26xnknyb] {
    background: #2EAB6E;
    color: white;
    border-color: #2EAB6E;
}

/* ── Footer actions (direita) ────────────────────────────────────── */
.rx-footer-actions[b-km26xnknyb] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.btn-outline-primary[b-km26xnknyb] {
    background: white;
    color: #1A7A5A;
    border: 1.5px solid #1A7A5A;
    padding: 9px 18px;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    transition: background 0.15s;
}

.btn-outline-primary:hover[b-km26xnknyb] {
    background: #E8F5E9;
}

.btn-success[b-km26xnknyb] {
    background: #16a34a;
    color: white;
    border: none;
    padding: 9px 18px;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    transition: opacity 0.18s, transform 0.15s;
}

.btn-success:hover:not(:disabled)[b-km26xnknyb] {
    transform: translateY(-1px);
    opacity: 0.9;
}

.btn-success:disabled[b-km26xnknyb] {
    opacity: 0.38;
    cursor: not-allowed;
    transform: none;
}

/* ── Preview do atestado ─────────────────────────────────────────── */
.atestado-preview[b-km26xnknyb] {
    background: white;
    border: 2px solid #2EAB6E;
    border-radius: 12px;
    padding: 30px;
    margin-top: 20px;
    page-break-inside: avoid;
}

.atestado-header[b-km26xnknyb] {
    text-align: center;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 2px solid #2EAB6E;
}

.atestado-clinic-name[b-km26xnknyb] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1A7A5A;
    margin-bottom: 5px;
}

.atestado-clinic-info[b-km26xnknyb] {
    font-size: 0.85rem;
    color: #6C757D;
    margin-bottom: 10px;
}

.atestado-title[b-km26xnknyb] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #495057;
}

.atestado-content[b-km26xnknyb] {
    margin-bottom: 30px;
    line-height: 1.8;
    font-size: 0.95rem;
    color: #495057;
}

.atestado-content p[b-km26xnknyb] {
    margin-bottom: 15px;
    text-align: justify;
}

.atestado-footer[b-km26xnknyb] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid #E9ECEF;
}

.atestado-signature[b-km26xnknyb] {
    text-align: center;
}

.atestado-signature-line[b-km26xnknyb] {
    border-top: 1px solid #495057;
    margin-top: 40px;
    padding-top: 10px;
    font-size: 0.85rem;
    color: #495057;
}

.atestado-date[b-km26xnknyb] {
    text-align: right;
    font-size: 0.9rem;
    color: #6C757D;
    margin-top: 20px;
}

/* ── Animações ───────────────────────────────────────────────────── */
@keyframes fadeIn-b-km26xnknyb {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@keyframes slideUp-b-km26xnknyb {
    from { transform: translateY(30px); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

/* ── Responsivo ──────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .modal-body[b-km26xnknyb],
    .modal-footer[b-km26xnknyb] {
        padding: 20px;
    }

    .rx-footer-actions[b-km26xnknyb] {
        flex-direction: column;
        width: 100%;
    }

    .atestado-footer[b-km26xnknyb] {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}
/* /Components/Modals/ClinicalReport/MedicationModal.razor.rz.scp.css */
/* ── Header: acento verde-azulado (sem background colorido) ────── */
.modal-header[b-6pelv7oxm0] { border-bottom: 2px solid #99f6e4; }
.modal-icon[b-6pelv7oxm0]   { background: rgba(13, 148, 136, 0.12); color: #0d9488; }

/* ── Footer: summary à esquerda + ações à direita ──────────────── */
.modal-footer[b-6pelv7oxm0] { justify-content: space-between; align-items: center; }

.medication-summary[b-6pelv7oxm0] {
    flex: 1;
    font-size: 0.875rem;
    color: #6C757D;
}

.modal-actions[b-6pelv7oxm0] {
    display: flex;
    gap: 12px;
}

/* ── Usage status pill group (segmented control) ───────────────── */
.usage-pill-group[b-6pelv7oxm0] {
    display: flex;
    background: #f1f5f9;
    border-radius: 12px;
    padding: 4px;
    gap: 4px;
    width: 100%;
}

.status-pill[b-6pelv7oxm0] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 9px 22px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.875rem;
    font-weight: 500;
    color: #64748b;
    background: transparent;
    border: none;
    transition: all 0.18s ease;
    white-space: nowrap;
    user-select: none;
    flex: 1;
}

.status-pill input[type="radio"][b-6pelv7oxm0] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.status-pill:hover[b-6pelv7oxm0] { background: #e2e8f0; color: #334155; }

.status-pill.status-active.selected[b-6pelv7oxm0]       { background: #22c55e; color: #fff; box-shadow: 0 2px 8px rgba(34, 197, 94, 0.35); }
.status-pill.status-paused.selected[b-6pelv7oxm0]       { background: #eab308; color: #fff; box-shadow: 0 2px 8px rgba(234, 179, 8, 0.35); }
.status-pill.status-discontinued.selected[b-6pelv7oxm0] { background: #ef4444; color: #fff; box-shadow: 0 2px 8px rgba(239, 68, 68, 0.35); }

/* ── Frequency presets ─────────────────────────────────────────── */
.frequency-options[b-6pelv7oxm0] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.frequency-preset[b-6pelv7oxm0] {
    padding: 8px 12px;
    background: #E9ECEF;
    border: none;
    border-radius: 15px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.8rem;
}

.frequency-preset:hover[b-6pelv7oxm0],
.frequency-preset.active[b-6pelv7oxm0] { background: #17A2B8; color: white; }

/* ── Indication tags ───────────────────────────────────────────── */
.indication-tags[b-6pelv7oxm0] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.indication-tag[b-6pelv7oxm0] {
    padding: 6px 12px;
    background: #E9ECEF;
    border: none;
    border-radius: 15px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.8rem;
}

.indication-tag:hover[b-6pelv7oxm0],
.indication-tag.selected[b-6pelv7oxm0] { background: #17A2B8; color: white; }

/* ── Alert ─────────────────────────────────────────────────────── */
.alert[b-6pelv7oxm0] {
    padding: 12px 15px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.alert-info[b-6pelv7oxm0]    { background: #D1ECF1; color: #0C5460; border: 1px solid #B8DAFF; }
.alert-warning[b-6pelv7oxm0] { background: #FFF3CD; color: #856404; border: 1px solid #FFEAA7; }

/* ── Label sugestões ───────────────────────────────────────────── */
.lbl-suggestions[b-6pelv7oxm0] { color: var(--text-muted); }

/* ── Medication search results ─────────────────────────────────── */
.search-results[b-6pelv7oxm0] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border: 2px solid #E9ECEF;
    border-top: none;
    border-radius: 0 0 8px 8px;
    max-height: 200px;
    overflow-y: auto;
    z-index: 10;
    display: none;
}

.search-results.active[b-6pelv7oxm0] { display: block; }

.search-result-item[b-6pelv7oxm0] {
    padding: 12px 15px;
    cursor: pointer;
    border-bottom: 1px solid #F8F9FA;
    transition: background 0.2s ease;
}

.search-result-item:hover[b-6pelv7oxm0]       { background: #F8F9FA; }
.search-result-item:last-child[b-6pelv7oxm0]  { border-bottom: none; }

.medication-name[b-6pelv7oxm0] { font-weight: 500; color: #2E86AB; }
.medication-info[b-6pelv7oxm0] { font-size: 0.8rem; color: #6C757D; margin-top: 2px; }

/* ── Responsive ────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .modal-footer[b-6pelv7oxm0]  { flex-direction: column; gap: 15px; }
    .modal-actions[b-6pelv7oxm0] { width: 100%; justify-content: center; }
}
/* /Components/Modals/ClinicalReport/PrescriptionModal.razor.rz.scp.css */
/* ── Header: azul médico (prescrição) ──────────────────────────── */
.modal-header[b-99i66t7qvs] {
    background: #f0f9ff;
    border-bottom: 2px solid #bae6fd;
}

.modal-header .modal-icon[b-99i66t7qvs] { background: rgba(46, 134, 171, 0.12); color: #2e86ab; }
.modal-header .modal-title[b-99i66t7qvs] { color: #0c4a6e; }

/* ── Chips de frequência ───────────────────────────────────────── */
.rx-chips-label[b-99i66t7qvs] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #6C757D;
    display: block;
    margin-bottom: 6px;
}

.rx-chips[b-99i66t7qvs] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.rx-chip[b-99i66t7qvs] {
    padding: 5px 13px;
    background: #EBF4FB;
    color: #1A6E96;
    border: 1.5px solid #BEE0F0;
    border-radius: 20px;
    font-size: 0.78rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    line-height: 1.4;
}

.rx-chip:hover[b-99i66t7qvs] {
    background: #2E86AB;
    color: white;
    border-color: #2E86AB;
}

.rx-chip--on[b-99i66t7qvs] {
    background: #2E86AB;
    color: white;
    border-color: #2E86AB;
}

/* ── Linha inferior: duração + quantidade + botão ──────────────── */
.rx-bottom-row[b-99i66t7qvs] {
    display: flex;
    align-items: flex-end;
    gap: 12px;
}

.rx-inline-field[b-99i66t7qvs] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    width: 130px;
    flex-shrink: 0;
}

.rx-inline-field label[b-99i66t7qvs] {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--body-text, #343A40);
}

/* ── Linha validade + atalhos ──────────────────────────────────── */
.rx-validity-row[b-99i66t7qvs] {
    display: flex;
    align-items: flex-end;
    gap: 20px;
    flex-wrap: wrap;
}

.rx-validity-shortcuts[b-99i66t7qvs] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* ── Botão adicionar ───────────────────────────────────────────── */
.rx-btn-add[b-99i66t7qvs] {
    padding: 10px 22px;
    background: #2E86AB;
    color: white;
    border: 1px solid transparent;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 700;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
    white-space: nowrap;
}

.rx-btn-add:hover:not(:disabled)[b-99i66t7qvs] {
    background: #247697;
    transform: translateY(-1px);
    box-shadow: 0 6px 15px rgba(46, 134, 171, 0.25);
}

.rx-btn-add:disabled[b-99i66t7qvs] {
    opacity: 0.38;
    cursor: not-allowed;
    transform: none;
}

/* ── Badge contador no título da seção ─────────────────────────── */
.rx-count[b-99i66t7qvs] {
    margin-left: 8px;
    background: #2E86AB;
    color: white;
    font-size: 0.72rem;
    font-weight: 700;
    min-width: 20px;
    height: 20px;
    border-radius: 10px;
    padding: 0 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* ── Lista de medicamentos (numerada, estilo receituário) ─────── */
.rx-item-list[b-99i66t7qvs] {
    border: 1.5px solid #E9ECEF;
    border-radius: 10px;
    overflow: hidden;
}

.rx-item[b-99i66t7qvs] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 14px;
    border-bottom: 1px solid #F1F3F5;
    background: white;
    transition: background 0.15s;
}

.rx-item:last-child[b-99i66t7qvs] {
    border-bottom: none;
}

.rx-item:hover[b-99i66t7qvs] {
    background: #F8FCFF;
}

.rx-item-num[b-99i66t7qvs] {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    border-radius: 50%;
    background: #2E86AB;
    color: white;
    font-size: 0.7rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.rx-item-body[b-99i66t7qvs] {
    flex: 1;
    min-width: 0;
}

.rx-item-name[b-99i66t7qvs] {
    font-weight: 600;
    font-size: 0.88rem;
    color: #212529;
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-bottom: 2px;
}

.rx-item-conc[b-99i66t7qvs] {
    font-size: 0.78rem;
    font-weight: 500;
    color: #6C757D;
}

.rx-item-posology[b-99i66t7qvs] {
    font-size: 0.78rem;
    color: #6C757D;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Botão remover ─────────────────────────────────────────────── */
.rx-item-remove[b-99i66t7qvs] {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    border: none;
    background: #FDECEA;
    color: #C62828;
    border-radius: 6px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.78rem;
    transition: background 0.15s;
}

.rx-item-remove:hover[b-99i66t7qvs] {
    background: #FFCDD2;
}

/* ── Estado vazio ──────────────────────────────────────────────── */
.rx-empty[b-99i66t7qvs] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px 20px;
    background: #F0F8FF;
    border: 1.5px dashed #90CAF9;
    border-radius: 10px;
    color: #1565C0;
}

.rx-empty > i[b-99i66t7qvs] {
    font-size: 1.5rem;
    opacity: 0.5;
    flex-shrink: 0;
    margin-top: 2px;
}

.rx-empty-title[b-99i66t7qvs] {
    font-weight: 600;
    font-size: 0.875rem;
    margin-bottom: 3px;
}

.rx-empty-sub[b-99i66t7qvs] {
    font-size: 0.8rem;
    color: #42A5F5;
    line-height: 1.5;
}

/* ── Footer ────────────────────────────────────────────────────── */
.rx-footer-actions[b-99i66t7qvs] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.btn-outline-primary[b-99i66t7qvs] {
    background: white;
    color: #2E86AB;
    border: 1.5px solid #2E86AB;
    padding: 9px 18px;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    transition: background 0.15s;
}

.btn-outline-primary:hover[b-99i66t7qvs] {
    background: #EBF4FB;
}
/* /Components/Modals/ClinicalReport/VisitStockModal.razor.rz.scp.css */
.modal-header[b-eear1la6ff] {
    background: #f0f9ff;
    border-bottom: 2px solid #bae6fd;
}

.modal-header .modal-icon[b-eear1la6ff] { background: rgba(46, 134, 171, 0.12); color: #2e86ab; }
.modal-header .modal-title[b-eear1la6ff] { color: #0c4a6e; }

.modal-title[b-eear1la6ff] {
    font-size: 1.4rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Body */
.modal-body[b-eear1la6ff] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Lista de itens registrados */
.consumption-list[b-eear1la6ff] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.consumption-item[b-eear1la6ff] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    gap: 12px;
}

.consumption-item-info[b-eear1la6ff] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    flex: 1;
    min-width: 0;
}

.consumption-product[b-eear1la6ff] {
    font-weight: 600;
    font-size: 0.92rem;
    color: #212529;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.consumption-meta[b-eear1la6ff] {
    font-size: 0.78rem;
    color: #6c757d;
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
}

.consumption-item-right[b-eear1la6ff] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.consumption-qty[b-eear1la6ff] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #2E86AB;
    white-space: nowrap;
}

/* Equaliza altura de select e input no modal — scoped CSS supera Bootstrap */
select[b-eear1la6ff],
input[type="number"][b-eear1la6ff] {
    padding: 0.75rem 1rem;
    border-radius: 14px;
    line-height: 1.5;
    box-sizing: border-box;
}

select[b-eear1la6ff] {
    padding-right: 2.5rem; /* espaço para a seta do dropdown */
}

/* Origem do estoque toggle */
.stock-source-toggle[b-eear1la6ff] {
    display: flex;
    gap: 8px;
}

.source-btn[b-eear1la6ff] {
    flex: 1;
    padding: 8px 14px;
    border: 2px solid #dee2e6;
    border-radius: 8px;
    background: #fff;
    color: #6c757d;
    font-size: 0.85rem;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.source-btn:hover[b-eear1la6ff] {
    border-color: #2E86AB;
    color: #2E86AB;
}

.source-btn.active[b-eear1la6ff] {
    border-color: #2E86AB;
    background: #e8f4f8;
    color: #2E86AB;
    font-weight: 600;
}

/* Lote único — chips compactos, sem caixa extensa */
.lot-info-chips[b-eear1la6ff] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    padding-top: 2px;
}

.lot-chip[b-eear1la6ff] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.78rem;
    font-weight: 500;
    border-radius: 20px;
    padding: 4px 10px;
    white-space: nowrap;
    border: 1px solid transparent;
}

.lot-chip--lot[b-eear1la6ff] {
    background: #f0f7fb;
    color: #1a6a8e;
    border-color: #bde0ef;
}

.lot-chip--exp[b-eear1la6ff] {
    background: #fff8ed;
    color: #92400e;
    border-color: #fde68a;
}

.lot-chip--qty[b-eear1la6ff] {
    background: #f0fdf4;
    color: #166534;
    border-color: #bbf7d0;
    font-weight: 700;
}

/* Botão adicionar */
.modal-add-btn-row[b-eear1la6ff] {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
}

/* Footer */
.modal-footer[b-eear1la6ff] {
    padding: 16px 24px;
    border-top: 1px solid #dee2e6;
}

.modal-actions[b-eear1la6ff] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.consumption-footer-badge[b-eear1la6ff] {
    font-size: 0.82rem;
    color: #856404;
    background: #fff3cd;
    border: 1px solid #ffc107;
    border-radius: 20px;
    padding: 4px 12px;
    display: flex;
    align-items: center;
    gap: 6px;
}
/* /Components/Modals/Exclusions/ProfessionalExclusionModal.razor.rz.scp.css */
.preview-section[b-rsrfeaec63] {
    width: 100%;
    max-width: 500px;
}

.preview-label[b-rsrfeaec63] {
    font-weight: 800;
    color: var(--text-muted);
    text-transform: uppercase;
    font-size: 0.75rem;
    margin-bottom: 1rem;
    display: block;
    text-align: center;
}

/* Modal Genérico Premium */
.modal-container[b-rsrfeaec63] {
    background: white;
    border-radius: 24px;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    overflow: hidden;
    border: 1px solid var(--border-color);
    animation: modalPop-b-rsrfeaec63 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    width: auto;
}

@keyframes modalPop-b-rsrfeaec63 {
    from {
        opacity: 0;
        transform: scale(0.9);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

.modal-body[b-rsrfeaec63] {
    padding: 2rem;
    text-align: center;
}

/* Ícone Dinâmico */
.icon-wrapper[b-rsrfeaec63] {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background: #fef2f2;
    color: var(--danger-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin: 0 auto 1.25rem;
    transition: transform 0.3s ease;
}

.modal-container:hover .icon-wrapper[b-rsrfeaec63] {
    transform: rotate(-5deg) scale(1.05);
}

.modal-body h2[b-rsrfeaec63] {
    font-size: 1.25rem;
    font-weight: 800;
    color: var(--body-text);
    margin-bottom: 0.5rem;
    letter-spacing: -0.02em;
}

.modal-body p[b-rsrfeaec63] {
    font-size: 0.938rem;
    color: var(--text-muted);
    line-height: 1.5;
}

.object-name[b-rsrfeaec63] {
    color: var(--body-text);
    font-weight: 700;
    display: block;
    margin-top: 1rem;
}

/* Badge de Contexto (Opcional) */
.context-badge[b-rsrfeaec63] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.75rem;
    background: #f1f5f9;
    border-radius: 8px;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--text-muted);
    margin-top: 1.25rem;
}

/* Rodapé */
.modal-footer[b-rsrfeaec63] {
    padding: 1.25rem 2rem;
    background: #f8fafc;
    border-top: 1px solid var(--border-color);
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.btn[b-rsrfeaec63] {
    padding: 0.75rem 1rem;
    border-radius: 12px;
    font-weight: 700;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.2s;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

.btn-secondary[b-rsrfeaec63] {
    background: white;
    color: var(--text-muted);
    border: 1px solid var(--border-color);
}

.btn-secondary:hover[b-rsrfeaec63] {
    background: #f1f5f9;
    color: var(--body-text);
}

.btn-danger[b-rsrfeaec63] {
    background: var(--danger-color);
    color: white;
}

.btn-danger:hover[b-rsrfeaec63] {
    background: var(--danger-hover);
    transform: translateY(-1px);
}
/* /Components/Modals/FinancialModal/EditPaymentModal.razor.rz.scp.css */
/* Modal Container */
.modal-content[b-ci19bvtxo7] {
    max-width: 600px;
}

/* Modal Header */
.modal-header.success[b-ci19bvtxo7] {
    background: #f0fdf4;
    border-bottom: 2px solid #86efac;
    color: #0f172a;
    border-radius: 16px 16px 0 0;
}

.modal-header.warning[b-ci19bvtxo7] {
    background: #fffbeb;
    border-bottom: 2px solid #fde68a;
    color: #0f172a;
    border-radius: 16px 16px 0 0;
}

.modal-header.info[b-ci19bvtxo7] {
    background: #f0f9ff;
    border-bottom: 2px solid #bae6fd;
    color: #0f172a;
    border-radius: 16px 16px 0 0;
}

/* Modal Body */
.modal-body[b-ci19bvtxo7] {
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Patient Info */
.patient-info[b-ci19bvtxo7] {
    background: #F8F9FA;
    border-radius: 12px;
    padding: 20px;
    border-left: 4px solid #2E86AB;
}

.patient-info h3[b-ci19bvtxo7] {
    color: var(--primary-color);
    margin-bottom: 10px;
    font-size: 1.1rem;
}

.patient-info p[b-ci19bvtxo7] {
    color: #6C757D;
    margin-bottom: 5px;
}

/* Payment Info */
.payment-info[b-ci19bvtxo7] {
    background: rgba(46, 134, 171, 0.06);
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 25px;
    text-align: center;
}

.payment-amount[b-ci19bvtxo7] {
    font-size: 2rem;
    font-weight: 700;
    color: #2E86AB;
    margin-bottom: 10px;
}

.payment-description[b-ci19bvtxo7] {
    color: #6C757D;
    font-size: 0.9rem;
}

/* Form Styles */

form[b-ci19bvtxo7]{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.form-row[b-ci19bvtxo7] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

.form-group[b-ci19bvtxo7] {
    display: flex;
    flex-direction: column;
}

.form-group label[b-ci19bvtxo7] {
    font-size: 0.9rem;
    font-weight: 500;
    color: #495057;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.form-group input[b-ci19bvtxo7],
.form-group select[b-ci19bvtxo7],
.form-group textarea[b-ci19bvtxo7] {
    padding: 12px 15px;
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    background: white;
}

.form-group input:focus[b-ci19bvtxo7],
.form-group select:focus[b-ci19bvtxo7],
.form-group textarea:focus[b-ci19bvtxo7] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.form-group textarea[b-ci19bvtxo7] {
    resize: vertical;
    min-height: 80px;
}

/* Payment Methods */
.payment-methods[b-ci19bvtxo7] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 15px;
    margin-top: 10px;
}

.payment-method[b-ci19bvtxo7] {
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    padding: 15px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.payment-method:hover[b-ci19bvtxo7] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.05);
}

.payment-method.selected[b-ci19bvtxo7] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.1);
}

.payment-method i[b-ci19bvtxo7] {
    font-size: 1.5rem;
    color: #2E86AB;
    margin-bottom: 8px;
}

.payment-method span[b-ci19bvtxo7] {
    display: block;
    font-size: 0.85rem;
    color: #495057;
}

/* Installment Options */
.installment-options[b-ci19bvtxo7] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 10px;
    margin-top: 10px;
}

.installment-option[b-ci19bvtxo7] {
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    padding: 12px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.installment-option:hover[b-ci19bvtxo7] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.05);
}

.installment-option.selected[b-ci19bvtxo7] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.1);
}

.installment-option .times[b-ci19bvtxo7] {
    font-weight: 600;
    color: #2E86AB;
    font-size: 1.1rem;
}

.installment-option .value[b-ci19bvtxo7] {
    font-size: 0.8rem;
    color: #6C757D;
}

/* Buttons */
.btn[b-ci19bvtxo7] {
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    min-width: 120px;
    justify-content: center;
}

.btn-success[b-ci19bvtxo7] {
    background: #16A34A;
    color: white;
}

.btn-success:hover[b-ci19bvtxo7] {
    background: #15803d;
    transform: translateY(-1px);
    box-shadow: 0 5px 15px rgba(22, 163, 74, 0.25);
}

.btn-warning[b-ci19bvtxo7] {
    background: #d97706;
    color: white;
}

.btn-warning:hover[b-ci19bvtxo7] {
    background: #b45309;
    transform: translateY(-1px);
    box-shadow: 0 5px 15px rgba(217, 119, 6, 0.25);
}

.btn-primary[b-ci19bvtxo7] {
    background: #2E86AB;
    color: white;
}

.btn-primary:hover[b-ci19bvtxo7] {
    background: #247697;
    transform: translateY(-1px);
    box-shadow: 0 5px 15px rgba(46, 134, 171, 0.25);
}

.btn-outline[b-ci19bvtxo7] {
    background: white;
    color: #6C757D;
    border: 2px solid #E9ECEF;
}

.btn-outline:hover[b-ci19bvtxo7] {
    background: #F8F9FA;
    border-color: #DEE2E6;
    transform: translateY(-2px);
}

/* Responsive */
@media (max-width: 768px) {
    .modal[b-ci19bvtxo7] {
        width: 95%;
        margin: 20px;
    }

    .modal-header[b-ci19bvtxo7],
    .modal-body[b-ci19bvtxo7],
    .modal-footer[b-ci19bvtxo7] {
        padding-left: 20px;
        padding-right: 20px;
    }

    .form-row[b-ci19bvtxo7] {
        grid-template-columns: 1fr;
    }

    .payment-methods[b-ci19bvtxo7] {
        grid-template-columns: repeat(2, 1fr);
    }

    .modal-footer[b-ci19bvtxo7] {
        flex-direction: column;
    }

    .btn[b-ci19bvtxo7] {
        width: 100%;
    }
}
/* /Components/Modals/FinancialModal/NegociatePaymentModal.razor.rz.scp.css */
/* Modal Overlay */
.modal-overlay[b-nenyfqps0i] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(5px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.modal-overlay.active[b-nenyfqps0i] {
    opacity: 1;
    visibility: visible;
}

/* Modal Container */
.modal-content[b-nenyfqps0i] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    max-width: 600px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    transition: all 0.3s ease;
}

.modal-overlay.active .modal[b-nenyfqps0i] {
    transform: scale(1) translateY(0);
}

/* Modal Header */
.modal-header[b-nenyfqps0i] {
    padding: 25px 30px 20px;
    border-bottom: 1px solid #E9ECEF;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.modal-header.success[b-nenyfqps0i] {
    background: #f0fdf4;
    border-bottom: 2px solid #86efac;
    color: #0f172a;
}

.modal-header.warning[b-nenyfqps0i] {
    background: #fffbeb;
    border-bottom: 2px solid #fde68a;
    color: #0f172a;
}

.modal-header.info[b-nenyfqps0i] {
    background: #f0f9ff;
    border-bottom: 2px solid #bae6fd;
    color: #0f172a;
}

.modal-title[b-nenyfqps0i] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 1.3rem;
    font-weight: 600;
}

.modal-icon[b-nenyfqps0i] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}

/* Modal Body */
.modal-body[b-nenyfqps0i] {
    padding: 30px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Patient Info */
.patient-info[b-nenyfqps0i] {
    background: #F8F9FA;
    border-radius: 12px;
    padding: 20px;
    border-left: 4px solid #2E86AB;
}

.patient-info h4[b-nenyfqps0i] {
    color: #2E86AB;
    margin-bottom: 10px;
    font-size: 1.1rem;
}

.patient-info p[b-nenyfqps0i] {
    color: #6C757D;
    margin-bottom: 5px;
}

/* Payment Info */
.payment-info[b-nenyfqps0i] {
    background: rgba(46, 134, 171, 0.06);
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 25px;
    text-align: center;
}

.payment-amount[b-nenyfqps0i] {
    font-size: 2rem;
    font-weight: 700;
    color: #2E86AB;
    margin-bottom: 10px;
}

.payment-description[b-nenyfqps0i] {
    color: #6C757D;
    font-size: 0.9rem;
}

/* Form Styles */

form[b-nenyfqps0i]{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.form-row[b-nenyfqps0i] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

.form-group[b-nenyfqps0i] {
    display: flex;
    flex-direction: column;
}

.form-group label[b-nenyfqps0i] {
    font-size: 0.9rem;
    font-weight: 500;
    color: #495057;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.form-group input[b-nenyfqps0i],
.form-group select[b-nenyfqps0i],
.form-group textarea[b-nenyfqps0i] {
    padding: 12px 15px;
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    background: white;
}

.form-group input:focus[b-nenyfqps0i],
.form-group select:focus[b-nenyfqps0i],
.form-group textarea:focus[b-nenyfqps0i] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.form-group textarea[b-nenyfqps0i] {
    resize: vertical;
    min-height: 80px;
}

/* Payment Methods */
.payment-methods[b-nenyfqps0i] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 15px;
    margin-top: 10px;
}

.payment-method[b-nenyfqps0i] {
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    padding: 15px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.payment-method:hover[b-nenyfqps0i] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.05);
}

.payment-method.selected[b-nenyfqps0i] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.1);
}

.payment-method i[b-nenyfqps0i] {
    font-size: 1.5rem;
    color: #2E86AB;
    margin-bottom: 8px;
}

.payment-method span[b-nenyfqps0i] {
    display: block;
    font-size: 0.85rem;
    color: #495057;
}

/* Installment Options */
.installment-options[b-nenyfqps0i] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 10px;
    margin-top: 10px;
}

.installment-option[b-nenyfqps0i] {
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    padding: 12px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.installment-option:hover[b-nenyfqps0i] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.05);
}

.installment-option.selected[b-nenyfqps0i] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.1);
}

.installment-option .times[b-nenyfqps0i] {
    font-weight: 600;
    color: #2E86AB;
    font-size: 1.1rem;
}

.installment-option .value[b-nenyfqps0i] {
    font-size: 0.8rem;
    color: #6C757D;
}

/* Modal Footer */
.modal-footer[b-nenyfqps0i] {
    padding: 15px 30px 15px;
    border-top: 1px solid #E9ECEF;
    display: flex;
    gap: 15px;
    justify-content: flex-end;
    background: #F8F9FA;
}

/* Buttons */
.btn[b-nenyfqps0i] {
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    min-width: 120px;
    justify-content: center;
}

.btn-success[b-nenyfqps0i] {
    background: #16A34A;
    color: white;
}

.btn-success:hover[b-nenyfqps0i] {
    background: #15803d;
    transform: translateY(-1px);
    box-shadow: 0 5px 15px rgba(22, 163, 74, 0.25);
}

.btn-warning[b-nenyfqps0i] {
    background: #d97706;
    color: white;
}

.btn-warning:hover[b-nenyfqps0i] {
    background: #b45309;
    transform: translateY(-1px);
    box-shadow: 0 5px 15px rgba(217, 119, 6, 0.25);
}

.btn-primary[b-nenyfqps0i] {
    background: #2E86AB;
    color: white;
}

.btn-primary:hover[b-nenyfqps0i] {
    background: #247697;
    transform: translateY(-1px);
    box-shadow: 0 5px 15px rgba(46, 134, 171, 0.25);
}

.btn-outline[b-nenyfqps0i] {
    background: white;
    color: #6C757D;
    border: 2px solid #E9ECEF;
}

.btn-outline:hover[b-nenyfqps0i] {
    background: #F8F9FA;
    border-color: #DEE2E6;
    transform: translateY(-2px);
}

/* Responsive */
@media (max-width: 768px) {
    .modal[b-nenyfqps0i] {
        width: 95%;
        margin: 20px;
    }

    .modal-header[b-nenyfqps0i],
    .modal-body[b-nenyfqps0i],
    .modal-footer[b-nenyfqps0i] {
        padding-left: 20px;
        padding-right: 20px;
    }

    .form-row[b-nenyfqps0i] {
        grid-template-columns: 1fr;
    }

    .payment-methods[b-nenyfqps0i] {
        grid-template-columns: repeat(2, 1fr);
    }

    .modal-footer[b-nenyfqps0i] {
        flex-direction: column;
    }

    .btn[b-nenyfqps0i] {
        width: 100%;
    }
}
/* /Components/Modals/FinancialModal/ReceivePaymentModal.razor.rz.scp.css */
/* Modal Overlay */
.modal-overlay[b-oouzou8osb] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(5px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.modal-overlay.active[b-oouzou8osb] {
    opacity: 1;
    visibility: visible;
}

/* Modal Container */
.modal-content[b-oouzou8osb] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    max-width: 600px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    transition: all 0.3s ease;
}

.modal-overlay.active .modal[b-oouzou8osb] {
    transform: scale(1) translateY(0);
}

/* Modal Header */
.modal-header[b-oouzou8osb] {
    padding: 25px 30px 20px;
    border-bottom: 1px solid #E9ECEF;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.modal-header.success[b-oouzou8osb] {
    background: #f0fdf4;
    border-bottom: 2px solid #86efac;
    color: #0f172a;
}

.modal-header.warning[b-oouzou8osb] {
    background: #fffbeb;
    border-bottom: 2px solid #fde68a;
    color: #0f172a;
}

.modal-header.info[b-oouzou8osb] {
    background: #f0f9ff;
    border-bottom: 2px solid #bae6fd;
    color: #0f172a;
}

.modal-title[b-oouzou8osb] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 1.3rem;
    font-weight: 600;
}

.modal-icon[b-oouzou8osb] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}

/* Modal Body */
.modal-body[b-oouzou8osb] {
    padding: 30px;
}

/* Patient Info */
.patient-info[b-oouzou8osb] {
    background: #F8F9FA;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 25px;
    border-left: 4px solid #2E86AB;
}

.patient-info h4[b-oouzou8osb] {
    color: #2E86AB;
    margin-bottom: 10px;
    font-size: 1.1rem;
}

.patient-info p[b-oouzou8osb] {
    color: #6C757D;
    margin-bottom: 5px;
}

/* Payment Info */
.payment-info[b-oouzou8osb] {
    background: rgba(46, 134, 171, 0.06);
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 25px;
    text-align: center;
}

.payment-amount[b-oouzou8osb] {
    font-size: 2rem;
    font-weight: 700;
    color: #2E86AB;
    margin-bottom: 10px;
}

.payment-description[b-oouzou8osb] {
    color: #6C757D;
    font-size: 0.9rem;
}

/* Form Styles */
form[b-oouzou8osb]{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-row[b-oouzou8osb] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

.form-group[b-oouzou8osb] {
    display: flex;
    flex-direction: column;
}

.form-group label[b-oouzou8osb] {
    font-size: 0.9rem;
    font-weight: 500;
    color: #495057;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.form-group input[b-oouzou8osb],
.form-group select[b-oouzou8osb],
.form-group textarea[b-oouzou8osb] {
    padding: 12px 15px;
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    background: white;
}

.form-group input:focus[b-oouzou8osb],
.form-group select:focus[b-oouzou8osb],
.form-group textarea:focus[b-oouzou8osb] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.form-group textarea[b-oouzou8osb] {
    resize: vertical;
    min-height: 80px;
}

/* Payment Methods */
.payment-methods[b-oouzou8osb] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 15px;
    margin-top: 10px;
}

.payment-method[b-oouzou8osb] {
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    padding: 15px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.payment-method:hover[b-oouzou8osb] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.05);
}

.payment-method.selected[b-oouzou8osb] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.1);
}

.payment-method i[b-oouzou8osb] {
    font-size: 1.5rem;
    color: #2E86AB;
    margin-bottom: 8px;
}

.payment-method span[b-oouzou8osb] {
    display: block;
    font-size: 0.85rem;
    color: #495057;
}

/* Installment Options */
.installment-options[b-oouzou8osb] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 10px;
    margin-top: 10px;
}

.installment-option[b-oouzou8osb] {
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    padding: 12px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.installment-option:hover[b-oouzou8osb] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.05);
}

.installment-option.selected[b-oouzou8osb] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.1);
}

.installment-option .times[b-oouzou8osb] {
    font-weight: 600;
    color: #2E86AB;
    font-size: 1.1rem;
}

.installment-option .value[b-oouzou8osb] {
    font-size: 0.8rem;
    color: #6C757D;
}

/* Modal Footer */
.modal-footer[b-oouzou8osb] {
    padding: 15px 30px 15px;
    border-top: 1px solid #E9ECEF;
    display: flex;
    gap: 15px;
    justify-content: flex-end;
    background: #F8F9FA;
}

/* Buttons */
.btn[b-oouzou8osb] {
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    min-width: 120px;
    justify-content: center;
}

.btn-success[b-oouzou8osb] {
    background: #16A34A;
    color: white;
}

.btn-success:hover[b-oouzou8osb] {
    background: #15803d;
    transform: translateY(-1px);
    box-shadow: 0 5px 15px rgba(22, 163, 74, 0.25);
}

.btn-warning[b-oouzou8osb] {
    background: #d97706;
    color: white;
}

.btn-warning:hover[b-oouzou8osb] {
    background: #b45309;
    transform: translateY(-1px);
    box-shadow: 0 5px 15px rgba(217, 119, 6, 0.25);
}

.btn-primary[b-oouzou8osb] {
    background: #2E86AB;
    color: white;
}

.btn-primary:hover[b-oouzou8osb] {
    background: #247697;
    transform: translateY(-1px);
    box-shadow: 0 5px 15px rgba(46, 134, 171, 0.25);
}

.btn-outline[b-oouzou8osb] {
    background: white;
    color: #6C757D;
    border: 2px solid #E9ECEF;
}

.btn-outline:hover[b-oouzou8osb] {
    background: #F8F9FA;
    border-color: #DEE2E6;
    transform: translateY(-2px);
}

/* Responsive */
@media (max-width: 768px) {
    .modal[b-oouzou8osb] {
        width: 95%;
        margin: 20px;
    }

    .modal-header[b-oouzou8osb],
    .modal-body[b-oouzou8osb],
    .modal-footer[b-oouzou8osb] {
        padding-left: 20px;
        padding-right: 20px;
    }

    .form-row[b-oouzou8osb] {
        grid-template-columns: 1fr;
    }

    .payment-methods[b-oouzou8osb] {
        grid-template-columns: repeat(2, 1fr);
    }

    .modal-footer[b-oouzou8osb] {
        flex-direction: column;
    }

    .btn[b-oouzou8osb] {
        width: 100%;
    }
}
/* /Components/Modals/GenericModal.razor.rz.scp.css */
/* Always above domain modals (BillingModal etc. use 1050) */
.modal-overlay[b-8lwc0cs1cn] {
    z-index: 2000;
}

.modal-container[b-8lwc0cs1cn] {
    max-width: 420px;
    padding: 2.5rem;
    border: 1px solid rgba(255, 255, 255, 0.8);
    text-align: center;
    animation: modalPop-b-8lwc0cs1cn 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.icon-wrapper[b-8lwc0cs1cn] {
    width: 56px;
    height: 56px;
    border-radius: 16px;
    background: #fef2f2;
    color: var(--danger);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin: 0 auto 1.25rem;
    transition: transform 0.3s ease;
}

@keyframes modalPop-b-8lwc0cs1cn {
    from {
        opacity: 0;
        transform: scale(0.95) translateY(10px);
    }

    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

.modal-icon-box[b-8lwc0cs1cn] {
    width: 72px;
    height: 72px;
    border-radius: 22px;
    margin: 0 auto 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    transition: transform 0.3s;
}

.modal-container:hover .modal-icon-box[b-8lwc0cs1cn] {
    transform: scale(1.05) rotate(5deg);
}

.icon-primary[b-8lwc0cs1cn] {
    background: var(--primary-soft);
    color: var(--primary);
}

.icon-success[b-8lwc0cs1cn] {
    background: var(--success-soft);
    color: var(--success);
}

.icon-warning[b-8lwc0cs1cn] {
    background: var(--warning-soft);
    color: var(--warning-color);
}

.icon-danger[b-8lwc0cs1cn] {
    background: var(--danger-soft);
    color: var(--danger);
}

.modal-title[b-8lwc0cs1cn] {
    font-size: 1.5rem;
    font-weight: 800;
    letter-spacing: -0.03em;
    margin-bottom: 0.75rem;
    color: var(--primary-color);
    justify-content: center;
}

.modal-description[b-8lwc0cs1cn] {
    font-size: 0.938rem;
    color: var(--text-muted);
    line-height: 1.6;
    margin-bottom: 2rem;
}

.modal-description[b-8lwc0cs1cn]  strong {
    color: var(--body-text);
}

.modal-actions[b-8lwc0cs1cn] {
    display: flex;
    gap: 1rem;
    justify-content: center;
}
/* /Components/Modals/Insurance/InsuranceModal.razor.rz.scp.css */
/* /Components/Modals/Products/ProductModal.razor.rz.scp.css */

.custom-gap[b-vyo5gwoz8o] {
    gap: 1.25rem;
    display: flex;
    flex-direction: column;
}

/* Checkbox "Item Faturável" — exclusivo do ProductModal */
.billing-checkbox[b-vyo5gwoz8o] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 10px 14px;
    background: #f8fafc;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
    margin: 0;
}

.billing-checkbox:hover[b-vyo5gwoz8o] {
    border-color: var(--primary);
    background: #f5f3ff;
}

.billing-checkbox input[b-vyo5gwoz8o] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--primary);
}

.billing-checkbox span[b-vyo5gwoz8o] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--body-text);
}

/* Dark mode — scoped; não afeta outras páginas */
.theme-dark .billing-checkbox[b-vyo5gwoz8o] {
    background: #142034;
    border-color: #334155;
}

.theme-dark .billing-checkbox:hover[b-vyo5gwoz8o] {
    background: #1e293b;
    border-color: var(--primary);
}
/* /Components/Modals/Professional/ProfessionalModal.razor.rz.scp.css */

/* Progress Bar */
.progress-container[b-u5v3ca7ilt] {
    margin-bottom: 30px;
}

.progress-label[b-u5v3ca7ilt] {
    font-size: 0.9rem;
    color: #6C757D;
    margin-bottom: 8px;
    display: flex;
    justify-content: space-between;
}

.progress-bar-container[b-u5v3ca7ilt] {
    width: 100%;
    height: 6px;
    background: #E9ECEF;
    border-radius: 3px;
    overflow: hidden;
}

.progress-bar[b-u5v3ca7ilt] {
    height: 100%;
    background: linear-gradient(90deg, #2E86AB, #28A745);
    border-radius: 3px;
    width: 0%;
    transition: width 0.3s ease;
}

.campo-email[b-u5v3ca7ilt]{
    display: flex;
    align-items: center;
    gap: 4px;
}

/* Form Sections */
.form-section[b-u5v3ca7ilt] {
    margin-bottom: 30px;
}
.last-form-section[b-u5v3ca7ilt] {
    margin-bottom: 0;
}

.section-title-modal[b-u5v3ca7ilt] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding-bottom: 10px;
}

/* Photo Upload */
.photo-upload[b-u5v3ca7ilt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

.photo-preview[b-u5v3ca7ilt] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    border: 3px solid #E9ECEF;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #F8F9FA;
    overflow: hidden;
    position: relative;
}

    .photo-preview img[b-u5v3ca7ilt] {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.photo-placeholder[b-u5v3ca7ilt] {
    font-size: 2rem;
    color: #6C757D;
}

.photo-upload-btn[b-u5v3ca7ilt] {
    background: linear-gradient(135deg, #2E86AB, #007BFF);
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
}

    .photo-upload-btn:hover[b-u5v3ca7ilt] {
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(46, 134, 171, 0.3);
    }

/* Checkbox Group */
.checkbox-group[b-u5v3ca7ilt] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
}

.checkbox-item[b-u5v3ca7ilt] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

    .checkbox-item:hover[b-u5v3ca7ilt] {
        border-color: #2E86AB;
        background: rgba(46, 134, 171, 0.05);
    }

    .checkbox-item input[type="checkbox"][b-u5v3ca7ilt] {
        width: 18px;
        height: 18px;
        accent-color: #2E86AB;
    }

    .checkbox-item.checked[b-u5v3ca7ilt] {
        border-color: #2E86AB;
        background: rgba(46, 134, 171, 0.1);
    }

/* Schedule Grid */
.schedule-grid[b-u5v3ca7ilt] {
    display: grid;
    grid-template-columns: auto 1fr 1fr;
    gap: 10px;
    align-items: center;
    margin-bottom: 15px;
}

.schedule-day[b-u5v3ca7ilt] {
    font-weight: 500;
    color: #495057;
    padding: 8px 0;
}

.schedule-input[b-u5v3ca7ilt] {
    padding: 8px 12px;
    border: 2px solid #E9ECEF;
    border-radius: 6px;
    font-size: 0.85rem;
}

/* Responsive */
@media (max-width: 768px) {
    /* .modal-container {
        width: 98%;
        margin: 10px;
        max-height: 95vh;
    } */

    .modal-header[b-u5v3ca7ilt] {
        padding: 20px;
    }

    .modal-body[b-u5v3ca7ilt] {
        padding: 20px;
    }

    .form-grid.two-columns[b-u5v3ca7ilt],
    .form-grid.three-columns[b-u5v3ca7ilt] {
        grid-template-columns: 1fr;
    }

    .modal-footer[b-u5v3ca7ilt] {
        flex-direction: column;
        gap: 10px;
    }

        .modal-footer .btn[b-u5v3ca7ilt] {
            width: 100%;
            justify-content: center;
        }
}
/* /Components/Modals/Stock/CheckStockItemModal.razor.rz.scp.css */
/* Modal Header */
.modal-header.primary[b-b1q846ip3e] {
    background: linear-gradient(135deg, #2E86AB, #007BFF);
    color: white;
    border-radius: 16px 16px 0 0;
}

.modal-header.success[b-b1q846ip3e] {
    background: linear-gradient(135deg, #28A745, #20C997);
    color: white;
    border-radius: 16px 16px 0 0;
}

.modal-header.warning[b-b1q846ip3e] {
    background: linear-gradient(135deg, #FFC107, #FF8C00);
    color: white;
    border-radius: 16px 16px 0 0;
}

/* Product Info Card */
.product-info[b-b1q846ip3e] {
    background: linear-gradient(135deg, rgba(46, 134, 171, 0.1), rgba(40, 167, 69, 0.1));
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 25px;
    border-left: 4px solid #2E86AB;
}

.product-header[b-b1q846ip3e] {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
}

.product-image[b-b1q846ip3e] {
    width: 80px;
    height: 80px;
    border-radius: 12px;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
}

.product-details h3[b-b1q846ip3e] {
    color: #2E86AB;
    margin-bottom: 5px;
    font-size: 1.2rem;
}

.product-details p[b-b1q846ip3e] {
    color: #6C757D;
    font-size: 0.9rem;
    margin-bottom: 3px;
}

.product-stats[b-b1q846ip3e] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 15px;
    margin-top: 15px;
}

.stat-item[b-b1q846ip3e] {
    text-align: center;
    padding: 10px;
    background: white;
    border-radius: 8px;
    border: 1px solid #E9ECEF;
}

.stat-value[b-b1q846ip3e] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2E86AB;
}

.stat-label[b-b1q846ip3e] {
    font-size: 0.8rem;
    color: #6C757D;
    margin-top: 2px;
}

/* Form Styles */
.form-row[b-b1q846ip3e] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

.form-group[b-b1q846ip3e] {
    display: flex;
    flex-direction: column;
}

.form-group label[b-b1q846ip3e] {
    font-size: 0.9rem;
    font-weight: 500;
    color: #495057;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.form-group input[b-b1q846ip3e],
.form-group select[b-b1q846ip3e],
.form-group textarea[b-b1q846ip3e] {
    padding: 12px 15px;
    border: 2px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    background: white;
}

.form-group input:focus[b-b1q846ip3e],
.form-group select:focus[b-b1q846ip3e],
.form-group textarea:focus[b-b1q846ip3e] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.form-group textarea[b-b1q846ip3e] {
    resize: vertical;
    min-height: 80px;
}

/* Stock Level Indicator */
.stock-level[b-b1q846ip3e] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
}

.stock-bar[b-b1q846ip3e] {
    flex: 1;
    height: 8px;
    background: #E9ECEF;
    border-radius: 4px;
    overflow: hidden;
}

.stock-fill[b-b1q846ip3e] {
    height: 100%;
    transition: width 0.3s ease;
}

.stock-fill.high[b-b1q846ip3e] {
    background: linear-gradient(90deg, #28A745, #20C997);
}

.stock-fill.medium[b-b1q846ip3e] {
    background: linear-gradient(90deg, #FFC107, #FF8C00);
}

.stock-fill.low[b-b1q846ip3e] {
    background: linear-gradient(90deg, #DC3545, #C82333);
}

.stock-text[b-b1q846ip3e] {
    font-size: 0.8rem;
    font-weight: 500;
}

/* Alert Boxes */
.alert[b-b1q846ip3e] {
    padding: 12px 15px;
    border-radius: 8px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.alert.warning[b-b1q846ip3e] {
    background: rgba(255, 193, 7, 0.1);
    border: 1px solid rgba(255, 193, 7, 0.3);
    color: #856404;
}

.alert.danger[b-b1q846ip3e] {
    background: rgba(220, 53, 69, 0.1);
    border: 1px solid rgba(220, 53, 69, 0.3);
    color: #721c24;
}

/* Buttons */
.btn-success[b-b1q846ip3e] {
    background: linear-gradient(135deg, #28A745, #20C997);
    color: white;
}

.btn-success:hover[b-b1q846ip3e] {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(40, 167, 69, 0.3);
}

.btn-warning[b-b1q846ip3e] {
    background: linear-gradient(135deg, #FFC107, #FF8C00);
    color: white;
}

.btn-warning:hover[b-b1q846ip3e] {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(255, 193, 7, 0.3);
}

.btn-outline[b-b1q846ip3e] {
    background: white;
    color: #6C757D;
    border: 2px solid #E9ECEF;
}

.btn-outline:hover[b-b1q846ip3e] {
    background: #F8F9FA;
    border-color: #DEE2E6;
    transform: translateY(-2px);
}

/* Responsive */
@media (max-width: 768px) {
    .modal-header[b-b1q846ip3e],
    .modal-body[b-b1q846ip3e],
    .modal-footer[b-b1q846ip3e] {
        padding-left: 20px;
        padding-right: 20px;
    }

    .form-row[b-b1q846ip3e] {
        grid-template-columns: 1fr;
    }

    .product-stats[b-b1q846ip3e] {
        grid-template-columns: repeat(2, 1fr);
    }
}
/* /Components/Modals/Stock/EditStockItemModal.razor.rz.scp.css */
/* Modal Header */
.modal-header[b-51oxcpk0lj] {
    padding: 25px 30px 20px;
    border-bottom: 1px solid #E9ECEF;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

    .modal-header.primary[b-51oxcpk0lj] {
        background: linear-gradient(135deg, #2E86AB, #007BFF);
        color: white;
        border-radius: 16px 16px 0 0;
    }

    .modal-header.success[b-51oxcpk0lj] {
        background: linear-gradient(135deg, #28A745, #20C997);
        color: white;
        border-radius: 16px 16px 0 0;
    }

    .modal-header.warning[b-51oxcpk0lj] {
        background: linear-gradient(135deg, #FFC107, #FF8C00);
        color: white;
        border-radius: 16px 16px 0 0;
    }

.modal-title[b-51oxcpk0lj] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 1.3rem;
    font-weight: 600;
}

.modal-icon[b-51oxcpk0lj] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
}

/* Modal Body */
.modal-body[b-51oxcpk0lj] {
    padding: 30px;
}

/* Form Styles */
.form-row[b-51oxcpk0lj] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

.form-group[b-51oxcpk0lj] {
    display: flex;
    flex-direction: column;
}

    .form-group label[b-51oxcpk0lj] {
        font-size: 0.9rem;
        font-weight: 500;
        color: #495057;
        margin-bottom: 8px;
        display: flex;
        align-items: center;
        gap: 5px;
    }

    .form-group input[b-51oxcpk0lj],
    .form-group select[b-51oxcpk0lj],
    .form-group textarea[b-51oxcpk0lj] {
        padding: 12px 15px;
        border: 2px solid #E9ECEF;
        border-radius: 8px;
        font-size: 0.9rem;
        transition: all 0.3s ease;
        background: white;
    }

        .form-group input:focus[b-51oxcpk0lj],
        .form-group select:focus[b-51oxcpk0lj],
        .form-group textarea:focus[b-51oxcpk0lj] {
            outline: none;
            border-color: #2E86AB;
            box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
        }

    .form-group textarea[b-51oxcpk0lj] {
        resize: vertical;
        min-height: 80px;
    }


/* Alert Boxes */
.alert[b-51oxcpk0lj] {
    padding: 12px 15px;
    border-radius: 8px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

    .alert.warning[b-51oxcpk0lj] {
        background: rgba(255, 193, 7, 0.1);
        border: 1px solid rgba(255, 193, 7, 0.3);
        color: #856404;
    }

    .alert.danger[b-51oxcpk0lj] {
        background: rgba(220, 53, 69, 0.1);
        border: 1px solid rgba(220, 53, 69, 0.3);
        color: #721c24;
    }

/* Modal Footer */
.modal-footer[b-51oxcpk0lj] {
    padding: 20px 30px 25px;
    border-top: 1px solid #E9ECEF;
    display: flex;
    gap: 15px;
    justify-content: flex-end;
    background: #F8F9FA;
}

/* Buttons */
.btn-success[b-51oxcpk0lj] {
    background: linear-gradient(135deg, #28A745, #20C997);
    color: white;
}

    .btn-success:hover[b-51oxcpk0lj] {
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(40, 167, 69, 0.3);
    }

.btn-warning[b-51oxcpk0lj] {
    background: linear-gradient(135deg, #FFC107, #FF8C00);
    color: white;
}

    .btn-warning:hover[b-51oxcpk0lj] {
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(255, 193, 7, 0.3);
    }

.btn-outline[b-51oxcpk0lj] {
    background: white;
    color: #6C757D;
    border: 2px solid #E9ECEF;
}

    .btn-outline:hover[b-51oxcpk0lj] {
        background: #F8F9FA;
        border-color: #DEE2E6;
        transform: translateY(-2px);
    }

/* Responsive */
@media (max-width: 768px) {
    .modal[b-51oxcpk0lj] {
        width: 95%;
        margin: 20px;
    }

    .modal-header[b-51oxcpk0lj],
    .modal-body[b-51oxcpk0lj],
    .modal-footer[b-51oxcpk0lj] {
        padding-left: 20px;
        padding-right: 20px;
    }

    .form-row[b-51oxcpk0lj] {
        grid-template-columns: 1fr;
    }

    .product-stats[b-51oxcpk0lj] {
        grid-template-columns: repeat(2, 1fr);
    }

    .modal-footer[b-51oxcpk0lj] {
        flex-direction: column;
    }

    .btn[b-51oxcpk0lj] {
        width: 100%;
    }
}
/* /Components/Modals/Stock/NewStockItemModal.razor.rz.scp.css */
/* Modal Header */
    .modal-header.primary[b-3p6jmu7qu9] {
        background: linear-gradient(135deg, #2E86AB, #28A745);
        color: white;
    }

/* Form Styles */
.form-row[b-3p6jmu7qu9] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

.last-form-row[b-3p6jmu7qu9] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

.form-group[b-3p6jmu7qu9] {
    display: flex;
    flex-direction: column;
}

    .form-group label[b-3p6jmu7qu9] {
        font-size: 0.9rem;
        font-weight: 500;
        color: #495057;
        margin-bottom: 8px;
        display: flex;
        align-items: center;
        gap: 5px;
    }

    .form-group input[b-3p6jmu7qu9],
    .form-group select[b-3p6jmu7qu9],
    .form-group textarea[b-3p6jmu7qu9] {
        padding: 12px 15px;
        border: 2px solid #E9ECEF;
        border-radius: 8px;
        font-size: 0.9rem;
        transition: all 0.3s ease;
        background: white;
    }

        .form-group input:focus[b-3p6jmu7qu9],
        .form-group select:focus[b-3p6jmu7qu9],
        .form-group textarea:focus[b-3p6jmu7qu9] {
            outline: none;
            border-color: #2E86AB;
            box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
        }

    .form-group textarea[b-3p6jmu7qu9] {
        resize: vertical;
        min-height: 80px;
    }

/* File Upload */
.file-upload[b-3p6jmu7qu9] {
    border: 2px dashed #E9ECEF;
    border-radius: 8px;
    padding: 20px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    background: #F8F9FA;
}

    .file-upload:hover[b-3p6jmu7qu9] {
        border-color: #2E86AB;
        background: rgba(46, 134, 171, 0.05);
    }

    .file-upload.dragover[b-3p6jmu7qu9] {
        border-color: #2E86AB;
        background: rgba(46, 134, 171, 0.1);
    }

    .file-upload i[b-3p6jmu7qu9] {
        font-size: 2rem;
        color: #6C757D;
        margin-bottom: 10px;
    }

    .file-upload p[b-3p6jmu7qu9] {
        color: #6C757D;
        margin-bottom: 5px;
    }

    .file-upload small[b-3p6jmu7qu9] {
        color: #ADB5BD;
    }

/* Buttons */
.btn[b-3p6jmu7qu9] {
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    min-width: 120px;
    justify-content: center;
}

.btn-success[b-3p6jmu7qu9] {
    background: linear-gradient(135deg, #28A745, #20C997);
    color: white;
}

    .btn-success:hover[b-3p6jmu7qu9] {
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(40, 167, 69, 0.3);
    }

.btn-warning[b-3p6jmu7qu9] {
    background: linear-gradient(135deg, #FFC107, #FF8C00);
    color: white;
}

    .btn-warning:hover[b-3p6jmu7qu9] {
        transform: translateY(-2px);
        box-shadow: 0 5px 15px rgba(255, 193, 7, 0.3);
    }

.btn-outline[b-3p6jmu7qu9] {
    background: white;
    color: #6C757D;
    border: 2px solid #E9ECEF;
}

    .btn-outline:hover[b-3p6jmu7qu9] {
        background: #F8F9FA;
        border-color: #DEE2E6;
        transform: translateY(-2px);
    }

/* Responsive */
@media (max-width: 768px) {
    .modal-header[b-3p6jmu7qu9],
    .modal-body[b-3p6jmu7qu9],
    .modal-footer[b-3p6jmu7qu9] {
        padding-left: 20px;
        padding-right: 20px;
    }

    .form-row[b-3p6jmu7qu9] {
        grid-template-columns: 1fr;
    }

    .product-stats[b-3p6jmu7qu9] {
        grid-template-columns: repeat(2, 1fr);
    }
}
/* /Components/Modals/Stock/StockModal.razor.rz.scp.css */
/* ===================================================
   StockModal — estilos específicos
   Overlay, container, header, footer → modal.css global
   =================================================== */

/* Toggle Entrada / Saída */
.movement-toggle[b-2q74xb30m2] {
    display: flex;
    background: #f1f5f9;
    padding: 0.25rem;
    border-radius: 12px;
    margin-bottom: 20px;
}

.toggle-btn[b-2q74xb30m2] {
    flex: 1;
    padding: 0.6rem;
    border-radius: 10px;
    border: none;
    font-weight: 700;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    color: var(--text-muted);
    background: transparent;
}

.toggle-btn.active.entry[b-2q74xb30m2] {
    background: white;
    color: var(--success);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
}

.toggle-btn.active.exit[b-2q74xb30m2] {
    background: white;
    color: var(--danger);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
}

/* Seções — igual ao SectionClinicSettings */
.form-section[b-2q74xb30m2] {
    margin-bottom: 20px;
    padding: 20px;
    background: #fff;
    border: 1px solid #E9ECEF;
    border-radius: 12px;
}

.form-section:last-of-type[b-2q74xb30m2] {
    margin-bottom: 0;
}

.form-section-title[b-2q74xb30m2] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.form-section-title i[b-2q74xb30m2] {
    color: #2E86AB;
    width: 14px;
}

/* Grid 2 colunas */
.form-grid-2[b-2q74xb30m2] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 16px;
}

.form-group[b-2q74xb30m2] {
    display: flex;
    flex-direction: column;
}

.form-group.span-2[b-2q74xb30m2] {
    grid-column: span 2;
}

.form-label[b-2q74xb30m2] {
    display: block;
    margin-bottom: 6px;
    color: #374151;
    font-weight: 500;
    font-size: 0.85rem;
}

.form-control[b-2q74xb30m2] {
    padding: 10px 14px;
    border: 1px solid #D1D5DB;
    border-radius: 8px;
    font-size: 0.9rem;
    color: #374151;
    background: #FAFAFA;
    transition: border-color 0.2s, box-shadow 0.2s;
    box-sizing: border-box;
    width: 100%;
}

.form-control:focus[b-2q74xb30m2] {
    outline: none;
    border-color: #2E86AB;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.form-control[b-2q74xb30m2]::placeholder {
    color: #9CA3AF;
    font-weight: 400;
}

textarea.form-control[b-2q74xb30m2] {
    resize: none;
}

/* Seletor de Estoque */
.stock-selector[b-2q74xb30m2] {
    display: flex;
    gap: 0.5rem;
}

.stock-btn[b-2q74xb30m2] {
    flex: 1;
    padding: 0.65rem 0.75rem;
    border: 2px solid #D1D5DB;
    border-radius: 10px;
    background: #FAFAFA;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    transition: all 0.2s;
    color: #6C757D;
}

.stock-btn.active[b-2q74xb30m2] {
    border-color: #2E86AB;
    background: rgba(46, 134, 171, 0.08);
    color: #2E86AB;
}

/* Alerta */
.alert-box[b-2q74xb30m2] {
    display: flex;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-radius: 10px;
    margin-top: 16px;
    border: 1px solid;
}

.alert-box.info[b-2q74xb30m2] {
    background: #eff6ff;
    border-color: #bfdbfe;
}

.alert-box.info i[b-2q74xb30m2],
.alert-box.info p[b-2q74xb30m2] { color: #1e40af; }

.alert-box.warning[b-2q74xb30m2] {
    background: #fffbeb;
    border-color: #fef3c7;
}

.alert-box.warning i[b-2q74xb30m2],
.alert-box.warning p[b-2q74xb30m2] { color: #92400e; }

.alert-box i[b-2q74xb30m2] { margin-top: 2px; flex-shrink: 0; }

.alert-box p[b-2q74xb30m2] {
    font-size: 0.82rem;
    font-weight: 500;
    margin: 0;
}

/* Labels inline */
.required[b-2q74xb30m2] { color: var(--danger); margin-left: 2px; }
.optional[b-2q74xb30m2]  { color: #9CA3AF; font-weight: 400; font-size: 0.8rem; }

/* ── Lote de Origem ── */
.lots-hint[b-2q74xb30m2] {
    font-size: 0.82rem;
    color: #9CA3AF;
    margin: 0;
}

.lots-loading[b-2q74xb30m2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.85rem;
    color: #6C757D;
}

.lots-empty[b-2q74xb30m2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.85rem;
    color: #B45309;
    background: #FEF3C7;
    padding: 0.65rem 0.9rem;
    border-radius: 8px;
    font-weight: 500;
}

.lot-single[b-2q74xb30m2] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: #F0FDF4;
    border: 1px solid #BBF7D0;
    border-radius: 10px;
    padding: 0.75rem 1rem;
}

.lot-single > i[b-2q74xb30m2] {
    color: #16A34A;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.lot-single-body[b-2q74xb30m2] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    min-width: 0;
}

.lot-single-name[b-2q74xb30m2] {
    font-weight: 700;
    color: #15803D;
    font-size: 0.9rem;
}

.lot-single-meta[b-2q74xb30m2] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.78rem;
    color: #166534;
}

.lot-meta-sep[b-2q74xb30m2] { color: #86EFAC; }

.lot-auto-tag[b-2q74xb30m2] {
    font-size: 0.7rem;
    font-weight: 700;
    background: #DCFCE7;
    color: #15803D;
    padding: 2px 8px;
    border-radius: 20px;
    flex-shrink: 0;
    letter-spacing: 0.03em;
}
/* /Components/Pagination/Pagination.razor.rz.scp.css */
/* ── Container ── */
.pagination[b-qga8n1ttgr] {
    padding: 0.75rem 1.5rem;
    border-top: 1px solid var(--border-color);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}

/* ── Contagem à esquerda ── */
.pagination-info[b-qga8n1ttgr] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--text-muted);
    letter-spacing: 0.02em;
    white-space: nowrap;
}

/* ── Grupo de botões à direita ── */
.pagination-buttons[b-qga8n1ttgr] {
    display: flex;
    align-items: center;
    gap: 2px;
}

/* ── Botão de página ── */
.pagination-btn[b-qga8n1ttgr] {
    min-width: 32px;
    height: 32px;
    padding: 0 0.45rem;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: var(--text-muted);
    font-size: 0.78rem;
    font-weight: 600;
    font-family: inherit;
    line-height: 1;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pagination-btn:hover:not(:disabled)[b-qga8n1ttgr] {
    background: #F1F5F9;
    color: var(--body-text);
}

.pagination-btn.active[b-qga8n1ttgr] {
    background: var(--primary-color);
    color: white;
}

.pagination-btn:disabled[b-qga8n1ttgr] {
    opacity: 0.3;
    cursor: default;
    pointer-events: none;
}
/* /Components/Products/ProductCard.razor.rz.scp.css */
*[b-6iza1mysve] {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body[b-6iza1mysve] {
    font-family: 'Inter', sans-serif;
    background: #f0f2f5;
    color: #2d3436;
    padding: 2rem;
}

.clinica-container[b-6iza1mysve] {
    max-width: 1400px;
    margin: 0 auto;
}

.page-header[b-6iza1mysve] {
    background: linear-gradient(135deg, #6a11cb 0%, #2575fc 100%);
    padding: 2rem;
    border-radius: 20px;
    color: white;
    margin-bottom: 2rem;
    box-shadow: 0 10px 30px rgba(37, 117, 252, 0.2);
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: 500;
    line-height: 1.2;
}

.card-badge.general[b-6iza1mysve] { background: #f0f2f5; color: #636e72; } /* Cinza */
.card-badge.supplements[b-6iza1mysve] { background: #fff4e1; color: #d35400; } /* Laranja */
.card-badge.medications[b-6iza1mysve] { background: #e1d5ff; color: #6c5ce7; } /* Roxo (conforme seu exemplo) */
.card-badge.medical-devices[b-6iza1mysve] { background: #d1ecf1; color: #0c5460; } /* Azul Petróleo */
.card-badge.disposables[b-6iza1mysve] { background: #f8d7da; color: #721c24; } /* Vermelho Suave */
.card-badge.syringes[b-6iza1mysve] { background: #e2f3f5; color: #22a6b3; } /* Turquesa */
.card-badge.anesthetics[b-6iza1mysve] { background: #fff3cd; color: #856404; } /* Amarelo Ocre */
.card-badge.antiseptics[b-6iza1mysve] { background: #d1f2eb; color: #1abc9c; } /* Verde (conforme seu exemplo) */
.card-badge.surgical[b-6iza1mysve] { background: #e9ecef; color: #2d3436; } /* Grafite */
.card-badge.furniture[b-6iza1mysve] { background: #e3f2fd; color: #1976d2; } /* Azul Royal */
.card-badge.implants[b-6iza1mysve] { background: #f3e5f5; color: #8e24aa; } /* Lilás */
.card-badge.cleaning[b-6iza1mysve] { background: #f1f8e9; color: #33691e; } /* Verde Folha */
.card-badge.none[b-6iza1mysve] { background: #ebebeb; color: #999; } /* Neutro */

.title-section h1[b-6iza1mysve] {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 0.3rem;
}

.title-section p[b-6iza1mysve] {
    opacity: 0.9;
    font-size: 0.95rem;
}

.header-actions[b-6iza1mysve] {
    display: flex;
    gap: 1rem;
}

.btn-primary[b-6iza1mysve],
.btn-secondary[b-6iza1mysve] {
    padding: 0.8rem 1.5rem;
    border-radius: 12px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    transition: all 0.3s;
    font-size: 0.9rem;
}

.btn-primary[b-6iza1mysve] {
    background: white;
    color: #2575fc;
    border: none;
}

.btn-secondary[b-6iza1mysve] {
    background: rgba(255, 255, 255, 0.2);
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(10px);
}

.catalog-filters[b-6iza1mysve] {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(15px);
    border-radius: 20px;
    padding: 1.2rem 2rem;
    border: 1px solid rgba(255, 255, 255, 0.5);
    box-shadow: 0 8px 32px rgba(31, 38, 135, 0.05);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2rem;
    margin-bottom: 2rem;
}

.search-box[b-6iza1mysve] {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
}

.search-box i[b-6iza1mysve] {
    position: absolute;
    left: 1rem;
    color: #b2bec3;
}

.search-box input[b-6iza1mysve] {
    width: 100%;
    padding: 0.8rem 1rem 0.8rem 2.8rem;
    border: 1px solid #dfe6e9;
    border-radius: 12px;
    font-size: 0.95rem;
}

.filter-group[b-6iza1mysve] {
    display: flex;
    gap: 1rem;
}

.filter-group select[b-6iza1mysve] {
    padding: 0.8rem 1.5rem;
    border: 1px solid #dfe6e9;
    border-radius: 12px;
    background: white;
    font-size: 0.9rem;
    color: #636e72;
}

.catalog-grid[b-6iza1mysve] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 2rem;
}

.product-card[b-6iza1mysve] {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(15px);
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    box-shadow: 0 8px 32px rgba(31, 38, 135, 0.05);
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: transform 0.3s ease;
}

.product-card:hover[b-6iza1mysve] {
    transform: translateY(-5px);
}

.card-badge[b-6iza1mysve] {
    position: absolute;
    top: 0.6rem;
    right: 1rem;
    padding: 0.3rem 0.8rem;
    border-radius: 20px;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    background: #f1f2f6;
    color: #636e72;
}

.card-badge.medication[b-6iza1mysve] {
    background: #e1d5ff;
    color: #6c5ce7;
}

.card-badge.vaccine[b-6iza1mysve] {
    background: #d1f2eb;
    color: #1abc9c;
}

.card-main[b-6iza1mysve] {
    padding: 2.5rem 2rem 2rem 2rem;
    flex: 1;
}

.prod-header h3[b-6iza1mysve] {
    font-size: 1.2rem;
    color: #2d3436;
    margin-bottom: 0.2rem;
    font-weight: bold;
    line-height: normal;
}

.sku[b-6iza1mysve] {
    font-size: 0.75rem;
    color: #b2bec3;
    font-family: monospace;
}

.description[b-6iza1mysve] {
    font-size: 0.85rem;
    color: #636e72;
    margin: 1rem 0 1.5rem;
}

.info-grid[b-6iza1mysve] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.info-item[b-6iza1mysve] {
    display: flex;
    flex-direction: column;
}

.info-item label[b-6iza1mysve] {
    font-size: 0.7rem;
    font-weight: 700;
    color: #b2bec3;
    text-transform: uppercase;
}

.info-item span[b-6iza1mysve] {
    font-size: 1rem;
    font-weight: 600;
    color: #2d3436;
}

.info-item .price[b-6iza1mysve] {
    color: var(--bs-green);
}

.info-item .markup[b-6iza1mysve] {
    color: #00b894;
}

.card-footer[b-6iza1mysve] {
    background: rgb(239 239 239);
    padding: 1rem 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #eee;
}

.supplier-info[b-6iza1mysve] {
    font-size: 0.8rem;
    color: #636e72;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.actions[b-6iza1mysve] {
    display: flex;
    gap: 0.5rem;
}

.btn-icon[b-6iza1mysve] {
    width: 35px;
    height: 35px;
    border-radius: 8px;
    border: 1px solid #dfe6e9;
    background: white;
    color: #636e72;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
}

.btn-icon.highlight[b-6iza1mysve] {
    background: #2E86AB;
    color: white;
    border: none;
}

@media (max-width: 768px) {
    .catalog-filters[b-6iza1mysve] {
        flex-direction: column;
        align-items: stretch;
    }
}
/* /Components/Products/ProductCard2.razor.rz.scp.css */
/* /Components/ProfilePage/ConsultaTable.razor.rz.scp.css */
/* /Components/ProfilePage/ReceitaTable.razor.rz.scp.css */
/* /Components/Toast/CustomToast.razor.rz.scp.css */
.custom-toast-container[b-dyp6j1uayh] {
    position: static;
    bottom: 1.5rem;
    right: 1.5rem;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.3s ease-out;  
    z-index: 2000 !important;   
}

.custom-toast-container.show[b-dyp6j1uayh] {
    opacity: 1;
    transform: translateY(0);
}

.custom-toast[b-dyp6j1uayh] {
    display: flex;
    width: 320px;
    background: white;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    border-left: 4px solid var(--toast-accent, #4A90E2);
}

.toast-icon-container[b-dyp6j1uayh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    background-color: rgba(74, 144, 226, 0.1);
}

.toast-icon-container i[b-dyp6j1uayh] {
    font-size: 1.25rem;
}

.text-success[b-dyp6j1uayh] {
    color: #28a745;
}

.text-error[b-dyp6j1uayh] {
    color: #dc3545;
}

.toast-content[b-dyp6j1uayh] {
    flex: 1;
    padding: 1rem;
}

.toast-title[b-dyp6j1uayh] {
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #2A3F54;
    font-size: 0.95rem;
}

.toast-message[b-dyp6j1uayh] {
    color: #6c757d;
    font-size: 0.875rem;
    margin-bottom: 0.75rem;
    line-height: 1.4;
}

.toast-footer[b-dyp6j1uayh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.toast-time[b-dyp6j1uayh] {
    font-size: 0.75rem;
    color: #adb5bd;
}

.toast-close[b-dyp6j1uayh] {
    background: none;
    border: none;
    color: #adb5bd;
    cursor: pointer;
    padding: 0.25rem;
    font-size: 0.875rem;
    transition: color 0.2s;
}

.toast-close:hover[b-dyp6j1uayh] {
    color: #6c757d;
}
/* /Components/Toast/ToastNotification.razor.rz.scp.css */
/* Toast Container */
.toast-container[b-h4r6f23dm7] {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 10000;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 400px;
    width: 100%;
}

/* Toast Base */
.toast[b-h4r6f23dm7] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    transform: translateX(100%);
    opacity: 0;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border-left: 4px solid #2E86AB;
    position: relative;
    overflow: hidden;
}

.toast.show[b-h4r6f23dm7] {
    transform: translateX(0);
    opacity: 1;
}

.toast.hide[b-h4r6f23dm7] {
    transform: translateX(100%);
    opacity: 0;
}

/* Toast Types */
.toast.success[b-h4r6f23dm7] {
    border-left-color: #28A745;
}

.toast.error[b-h4r6f23dm7] {
    border-left-color: #DC3545;
}

.toast.warning[b-h4r6f23dm7] {
    border-left-color: #FFC107;
}

.toast.info[b-h4r6f23dm7] {
    border-left-color: #2E86AB;
}

/* Toast Icon */
.toast-icon[b-h4r6f23dm7] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    color: white;
    flex-shrink: 0;
}

.toast.success .toast-icon[b-h4r6f23dm7] {
    background: linear-gradient(135deg, #28A745, #20C997);
}

.toast.error .toast-icon[b-h4r6f23dm7] {
    background: linear-gradient(135deg, #DC3545, #C82333);
}

.toast.warning .toast-icon[b-h4r6f23dm7] {
    background: linear-gradient(135deg, #FFC107, #FF8C00);
}

.toast.info .toast-icon[b-h4r6f23dm7] {
    background: linear-gradient(135deg, #2E86AB, #007BFF);
}

/* Toast Content */
.toast-content[b-h4r6f23dm7] {
    flex: 1;
    min-width: 0;
}

.toast-title[b-h4r6f23dm7] {
    font-weight: 600;
    font-size: 0.95rem;
    color: #2C3E50;
    margin-bottom: 4px;
    line-height: 1.3;
}

.toast-message[b-h4r6f23dm7] {
    font-size: 0.85rem;
    color: #6C757D;
    line-height: 1.4;
    word-wrap: break-word;
}

/* Toast Close Button */
.toast-close[b-h4r6f23dm7] {
    background: none;
    border: none;
    color: #6C757D;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
    transition: all 0.3s ease;
    flex-shrink: 0;
    font-size: 1rem;
}

.toast-close:hover[b-h4r6f23dm7] {
    background: #F8F9FA;
    color: #495057;
}

/* Progress Bar */
.toast-progress[b-h4r6f23dm7] {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3px;
    background: rgba(0, 0, 0, 0.1);
    border-radius: 0 0 12px 12px;
    overflow: hidden;
}

.toast-progress-bar[b-h4r6f23dm7] {
    height: 100%;
    width: 100%;
    transform-origin: left;
    transition: transform linear;
}

.toast.success .toast-progress-bar[b-h4r6f23dm7] {
    background: linear-gradient(90deg, #28A745, #20C997);
}

.toast.error .toast-progress-bar[b-h4r6f23dm7] {
    background: linear-gradient(90deg, #DC3545, #C82333);
}

.toast.warning .toast-progress-bar[b-h4r6f23dm7] {
    background: linear-gradient(90deg, #FFC107, #FF8C00);
}

.toast.info .toast-progress-bar[b-h4r6f23dm7] {
    background: linear-gradient(90deg, #2E86AB, #007BFF);
}

/* Action Button */
.toast-action[b-h4r6f23dm7] {
    background: none;
    border: 1px solid #E9ECEF;
    color: #2E86AB;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-left: 10px;
}

.toast-action:hover[b-h4r6f23dm7] {
    background: #2E86AB;
    color: white;
    border-color: #2E86AB;
}

/* Responsive */
@media (max-width: 768px) {
    .toast-container[b-h4r6f23dm7] {
        top: 10px;
        right: 10px;
        left: 10px;
        max-width: none;
    }

    .toast[b-h4r6f23dm7] {
        padding: 14px 16px;
    }

    .toast-icon[b-h4r6f23dm7] {
        width: 35px;
        height: 35px;
        font-size: 1rem;
    }

    .toast-title[b-h4r6f23dm7] {
        font-size: 0.9rem;
    }

    .toast-message[b-h4r6f23dm7] {
        font-size: 0.8rem;
    }
}

/* Demo Styles */
.demo-section[b-h4r6f23dm7] {
    max-width: 800px;
    margin: 0 auto;
    background: white;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
}

.demo-title[b-h4r6f23dm7] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    text-align: center;
}

.demo-buttons[b-h4r6f23dm7] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
    margin-bottom: 30px;
}

.demo-btn[b-h4r6f23dm7] {
    padding: 12px 20px;
    border: none;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.demo-btn.success[b-h4r6f23dm7] {
    background: linear-gradient(135deg, #28A745, #20C997);
    color: white;
}

.demo-btn.error[b-h4r6f23dm7] {
    background: linear-gradient(135deg, #DC3545, #C82333);
    color: white;
}

.demo-btn.warning[b-h4r6f23dm7] {
    background: linear-gradient(135deg, #FFC107, #FF8C00);
    color: white;
}

.demo-btn.info[b-h4r6f23dm7] {
    background: linear-gradient(135deg, #2E86AB, #007BFF);
    color: white;
}

.demo-btn:hover[b-h4r6f23dm7] {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

.demo-description[b-h4r6f23dm7] {
    background: #F8F9FA;
    border-radius: 8px;
    padding: 20px;
    color: #6C757D;
    line-height: 1.6;
}

@keyframes progressBar-b-h4r6f23dm7 {
    from {
        transform: scaleX(1);
    }

    to {
        transform: scaleX(0);
    }
}
/* /Layout/MainLayout.razor.rz.scp.css */
main[b-rl2udbfjl3] {
    margin-left: 256px;
    min-height: 100vh;
    transition: margin-left 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

main.expanded[b-rl2udbfjl3] {
    margin-left: 64px;
}

/* Wrapper da sidebar — z-index garante que o stacking context
   criado pelo transform no mobile fique acima do conteúdo       */
.sidebar[b-rl2udbfjl3] {
    position: relative;
    z-index: 1001;
}

/* Botão hamburger — oculto em desktop */
.mobile-menu-btn[b-rl2udbfjl3] {
    display: none;
}

/* ── Mobile ──────────────────────────────────────────────── */
@media (max-width: 768px) {
    main[b-rl2udbfjl3] {
        margin-left: 0;
    }

    /* Sidebar escondida por padrão no mobile */
    .sidebar[b-rl2udbfjl3] {
        transform: translateX(-100%);
        transition: transform 0.3s ease;
    }

    /* Sidebar aberta — sobrepõe o conteúdo sem deslocar */
    .sidebar.mobile-open[b-rl2udbfjl3] {
        transform: translateX(0);
    }

    /* Backdrop escurece o conteúdo atrás da sidebar aberta */
    .mobile-backdrop[b-rl2udbfjl3] {
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.45);
        z-index: 999;
        animation: fadeInBackdrop-b-rl2udbfjl3 0.2s ease;
    }

    @keyframes fadeInBackdrop-b-rl2udbfjl3 {
        from { opacity: 0; }
        to   { opacity: 1; }
    }

    /* Botão hamburger — fixo no topo-esquerdo, abaixo da sidebar */
    .mobile-menu-btn[b-rl2udbfjl3] {
        display: flex;
        align-items: center;
        justify-content: center;
        position: fixed;
        top: 14px;
        left: 14px;
        z-index: 997;
        width: 44px;
        height: 44px;
        background: #fff;
        color: #0f172a;
        border: 1px solid #e2e8f0;
        border-radius: 10px;
        font-size: 1.1rem;
        cursor: pointer;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
        transition: background 0.2s, transform 0.15s;
    }

    .mobile-menu-btn:active[b-rl2udbfjl3] {
        transform: scale(0.93);
        background: #f1f5f9;
    }
}
/* /Layout/Menu.razor.rz.scp.css */
/* ── Sidebar base ───────────────────────────────────────────── */
.sidebar[b-h83gqs7pz5] {
    position: fixed;
    left: 0;
    top: 0;
    width: 256px;
    height: 100vh;
    background: #f8fafc;
    border-right: 1px solid #e2e8f0;
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.04);
    z-index: 1000;
    transition: width 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.sidebar.collapsed[b-h83gqs7pz5] {
    width: 64px;
}

/* ── Header / Logo ──────────────────────────────────────────── */
.sidebar-header[b-h83gqs7pz5] {
    height: 64px;
    padding: 0 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
    border-bottom: 1px solid #e2e8f0;
    transition: all 0.25s;
}

.logo[b-h83gqs7pz5] {
    display: flex;
    align-items: center;
    overflow: hidden;
    min-width: 0;
}

.logo-full[b-h83gqs7pz5] {
    font-size: 1rem;
    font-weight: 600;
    color: #374151;
    white-space: nowrap;
    letter-spacing: -0.025em;
    line-height: 1;
    font-family: 'Manrope', sans-serif;
}

.logo-accent[b-h83gqs7pz5] {
    color: #2e86ab;
    font-weight: 800;
}

.logo-short[b-h83gqs7pz5] {
    display: none;
    font-size: 0.9375rem;
    font-weight: 800;
    color: #2e86ab;
    letter-spacing: -0.05em;
    font-family: 'Manrope', sans-serif;
    line-height: 1;
}

.sidebar-toggle[b-h83gqs7pz5] {
    background: none;
    border: none;
    color: #94a3b8;
    cursor: pointer;
    padding: 6px 8px;
    border-radius: 6px;
    line-height: 1;
    font-size: 0.75rem;
    flex-shrink: 0;
    transition: color 0.15s, background 0.15s;
}

.sidebar-toggle:hover[b-h83gqs7pz5] {
    color: #0f172a;
    background: #e2e8f0;
}

/* collapsed header: empilha monograma + toggle centralizados */
.sidebar.collapsed .sidebar-header[b-h83gqs7pz5] {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 80px;
    padding: 0;
    gap: 4px;
}

.sidebar.collapsed .logo-full[b-h83gqs7pz5] {
    display: none;
}

.sidebar.collapsed .logo-short[b-h83gqs7pz5] {
    display: block;
}

/* ── Navigation ─────────────────────────────────────────────── */
.sidebar-menu[b-h83gqs7pz5] {
    flex: 1;
    padding: 8px 10px;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: none;
}

.sidebar-menu[b-h83gqs7pz5]::-webkit-scrollbar {
    display: none;
}

.menu-group-label[b-h83gqs7pz5] {
    display: block;
    font-size: 0.625rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #94a3b8;
    padding: 14px 8px 4px;
    white-space: nowrap;
    overflow: hidden;
}

.sidebar.collapsed .menu-group-label[b-h83gqs7pz5] {
    display: none;
}

.sidebar.collapsed .menu-text[b-h83gqs7pz5] {
    display: none;
}

[b-h83gqs7pz5] .menu-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    margin-bottom: 1px;
    color: #64748b;
    text-decoration: none;
    border-radius: 7px;
    font-size: 0.8125rem;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    transition: color 0.15s, background 0.15s;
    border-left: 2px solid transparent;
}

[b-h83gqs7pz5] .menu-item:hover {
    color: #0f172a;
    background: #e8edf2;
    text-decoration: none;
}

[b-h83gqs7pz5] .menu-item.active {
    color: #2e86ab;
    background: rgba(46, 134, 171, 0.1);
    border-left-color: #2e86ab;
    font-weight: 600;
    text-decoration: none;
}

[b-h83gqs7pz5] .menu-item i {
    font-size: 0.9375rem;
    width: 18px;
    text-align: center;
    flex-shrink: 0;
}

.sidebar.collapsed[b-h83gqs7pz5]  .menu-item {
    justify-content: center;
    padding: 10px;
    border-left-color: transparent;
}

.sidebar.collapsed[b-h83gqs7pz5]  .menu-item.active {
    border-left-color: transparent;
    background: rgba(46, 134, 171, 0.12);
    color: #2e86ab;
}

.sidebar.collapsed[b-h83gqs7pz5]  .menu-item i {
    width: auto;
}

/* ── Footer / Perfil ────────────────────────────────────────── */
.sidebar-footer[b-h83gqs7pz5] {
    flex-shrink: 0;
    padding: 8px 10px;
    border-top: 1px solid #e2e8f0;
}

.user-card[b-h83gqs7pz5] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    margin-bottom: 2px;
    border-radius: 7px;
    overflow: hidden;
}

.user-avatar[b-h83gqs7pz5] {
    width: 30px;
    height: 30px;
    border-radius: 7px;
    background: rgba(46, 134, 171, 0.12);
    border: 1px solid rgba(46, 134, 171, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6875rem;
    font-weight: 700;
    color: #2e86ab;
    flex-shrink: 0;
    letter-spacing: 0.02em;
}

.user-details[b-h83gqs7pz5] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
}

.user-name[b-h83gqs7pz5] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: #0f172a;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

.user-role[b-h83gqs7pz5] {
    font-size: 0.6875rem;
    color: #94a3b8;
    white-space: nowrap;
    line-height: 1.3;
}

.sidebar.collapsed .user-details[b-h83gqs7pz5] {
    display: none;
}

.sidebar.collapsed .user-card[b-h83gqs7pz5] {
    justify-content: center;
    padding: 8px;
}

/* theme toggle */
.theme-toggle[b-h83gqs7pz5] {
    width: 100%;
    background: none;
    border: none;
    text-align: left;
    cursor: pointer;
    font-family: inherit;
    color: #94a3b8;
}

.theme-toggle:hover[b-h83gqs7pz5] {
    color: #2e86ab;
    background: rgba(46, 134, 171, 0.08);
}

/* logout */
[b-h83gqs7pz5] .logout-item {
    color: #94a3b8;
}

[b-h83gqs7pz5] .logout-item:hover {
    color: #dc2626;
    background: #fee2e2;
}

/* ── Version badge ──────────────────────────────────────────── */
.version-badge[b-h83gqs7pz5] {
    padding: 6px 10px 2px;
    text-align: center;
    overflow: hidden;
}

.version-badge .menu-text[b-h83gqs7pz5] {
    font-size: 0.625rem;
    color: #cbd5e1;
    letter-spacing: 0.05em;
    font-weight: 500;
}
/* /Pages/AdminPages/AdminLoginPage.razor.rz.scp.css */
.alert-error[b-cklis3s04e] {
    background-color: #fee2e2;
    color: #b91c1c;
    border: 1px solid #fca5a5;
    border-radius: 0.5rem;
    padding: 0.6rem 0.9rem;
    font-size: 0.875rem;
    margin-top: 0.5rem;
}

.login-container[b-cklis3s04e] {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

.login-box[b-cklis3s04e] {
    margin: 2rem auto;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    background-color: #ffffff;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
/* /Pages/AdminPages/PanelPage.razor.rz.scp.css */
.panel-container[b-aww2no7ew8] {
    min-height: 100vh;
    background-color: #f1f5f9;
    display: flex;
    flex-direction: column;
}

.panel-header[b-aww2no7ew8] {
    background-color: #1e293b;
    color: #f8fafc;
    padding: 1rem 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.panel-title[b-aww2no7ew8] {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0;
    color: #f8fafc;
}

.panel-badge[b-aww2no7ew8] {
    font-size: 0.7rem;
    background-color: #334155;
    color: #94a3b8;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

table[b-aww2no7ew8]{
    width: 100%;
    border-collapse: collapse;
    margin-top: 1rem;
}
table th[b-aww2no7ew8], table td[b-aww2no7ew8] {
    padding: 0.75rem;
    text-align: left;
    border-bottom: 1px solid #e2e8f0;
}
table th[b-aww2no7ew8] {
    background-color: #f8fafc;
    font-weight: 600;
    color: #1e293b;
}
table tr:hover[b-aww2no7ew8] {
    background-color: #f1f5f9;
}
.status-indicator[b-aww2no7ew8]{
    display: inline-block;
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 9999px;
    margin-right: 0.5rem;
}
.active[b-aww2no7ew8] {
    background-color: #22c55e;
}
.inactive[b-aww2no7ew8] {
    background-color: #ef4444;
}

.btn-logout[b-aww2no7ew8] {
    background: transparent;
    border: 1px solid #475569;
    color: #94a3b8;
    padding: 0.4rem 0.9rem;
    border-radius: 0.375rem;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.15s;
}

.btn-logout:hover[b-aww2no7ew8] {
    background-color: #334155;
    color: #f8fafc;
}

.panel-content[b-aww2no7ew8] {
    padding: 2rem;
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
}

.panel-card[b-aww2no7ew8] {
    background: #ffffff;
    border-radius: 0.75rem;
    padding: 1.75rem;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.card-title[b-aww2no7ew8] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
    margin-bottom: 0.25rem;
}

.card-subtitle[b-aww2no7ew8] {
    font-size: 0.875rem;
    color: #64748b;
    margin-bottom: 1.25rem;
}

.form-group[b-aww2no7ew8] {
    display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
}

.form-group label[b-aww2no7ew8] {
    font-size: 0.875rem;
    font-weight: 500;
    color: #374151;
    margin-bottom: 0.375rem;
}

.form-control[b-aww2no7ew8] {
    padding: 0.625rem 0.75rem;
    border: 1px solid #d1d5db;
    border-radius: 0.5rem;
    font-size: 0.95rem;
    outline: none;
    transition: border-color 0.15s;
}

.form-control:focus[b-aww2no7ew8] {
    border-color: #6366f1;
    box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.15);
}

.form-hint[b-aww2no7ew8] {
    font-size: 0.78rem;
    color: #6b7280;
    margin-top: 0.375rem;
}

.btn-primary[b-aww2no7ew8] {
    width: 100%;
    padding: 0.7rem;
    margin-top: 0.5rem;
    background-color: #6366f1;
    border: none;
    border-radius: 0.5rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: #ffffff;
    cursor: pointer;
    transition: background-color 0.15s;
}

.btn-primary:hover:not(:disabled)[b-aww2no7ew8] {
    background-color: #4f46e5;
}

.btn-primary:disabled[b-aww2no7ew8] {
    opacity: 0.6;
    cursor: not-allowed;
}

.alert-success[b-aww2no7ew8] {
    background-color: #dcfce7;
    color: #15803d;
    border: 1px solid #86efac;
    border-radius: 0.5rem;
    padding: 0.6rem 0.9rem;
    font-size: 0.875rem;
    margin-bottom: 0.75rem;
}

.alert-error[b-aww2no7ew8] {
    background-color: #fee2e2;
    color: #b91c1c;
    border: 1px solid #fca5a5;
    border-radius: 0.5rem;
    padding: 0.6rem 0.9rem;
    font-size: 0.875rem;
    margin-bottom: 0.75rem;
}
/* /Pages/CadastroOdonto.razor.rz.scp.css */
.form-container[b-ltvr28cksj] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.form-header[b-ltvr28cksj] {
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    padding: 25px 30px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.form-icon[b-ltvr28cksj] {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.form-title[b-ltvr28cksj] {
    font-size: 1.5rem;
    font-weight: 600;
}

.form-subtitle[b-ltvr28cksj] {
    font-size: 0.9rem;
    opacity: 0.9;
    margin-top: 5px;
}

.form-body[b-ltvr28cksj] {
    padding: 30px;
}

.form-section[b-ltvr28cksj] {
    margin-bottom: 30px;
}

.section-title[b-ltvr28cksj] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.section-title i[b-ltvr28cksj] {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #E3F2FD;
    color: #2E86AB;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
}

.form-grid[b-ltvr28cksj] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
}

.form-grid.two-columns[b-ltvr28cksj] {
    grid-template-columns: 1fr 1fr;
}

.form-grid.three-columns[b-ltvr28cksj] {
    grid-template-columns: 1fr 1fr 1fr;
}

.form-group[b-ltvr28cksj] {
    display: flex;
    flex-direction: column;
}

.form-label[b-ltvr28cksj] {
    font-size: 0.9rem;
    font-weight: 500;
    color: #495057;
    margin-bottom: 8px;
}

.form-input[b-ltvr28cksj] {
    padding: 12px 15px;
    border: 1px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    background: white;
}

.form-input:focus[b-ltvr28cksj] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.form-input.error[b-ltvr28cksj] {
    border-color: #DC3545;
}

.form-textarea[b-ltvr28cksj] {
    min-height: 100px;
    resize: vertical;
}

.form-select[b-ltvr28cksj] {
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
    background-position: right 12px center;
    background-repeat: no-repeat;
    background-size: 16px;
    padding-right: 40px;
}

.form-checkbox[b-ltvr28cksj] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.form-checkbox input[type="checkbox"][b-ltvr28cksj] {
    width: 18px;
    height: 18px;
    accent-color: #2E86AB;
}

.form-checkbox label[b-ltvr28cksj] {
    font-size: 0.9rem;
    color: #495057;
    cursor: pointer;
}

.photo-upload[b-ltvr28cksj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

.photo-preview[b-ltvr28cksj] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: #F8F9FA;
    border: 2px dashed #E9ECEF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: #6C757D;
    position: relative;
    overflow: hidden;
}

.photo-preview img[b-ltvr28cksj] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.photo-upload-btn[b-ltvr28cksj] {
    padding: 8px 16px;
    background: #E3F2FD;
    color: #2E86AB;
    border: none;
    border-radius: 6px;
    font-size: 0.8rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

.photo-upload-btn:hover[b-ltvr28cksj] {
    background: #2E86AB;
    color: white;
}

.emergency-contact[b-ltvr28cksj] {
    background: #FFF3E0;
    border: 1px solid #FFE0B2;
    border-radius: 12px;
    padding: 20px;
    margin-top: 20px;
}

.emergency-title[b-ltvr28cksj] {
    font-size: 1rem;
    font-weight: 600;
    color: #F57C00;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.form-actions[b-ltvr28cksj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 25px 30px;
    background: #F8F9FA;
    border-top: 1px solid #E9ECEF;
}

.form-actions-left[b-ltvr28cksj] {
    display: flex;
    gap: 10px;
}

.form-actions-right[b-ltvr28cksj] {
    display: flex;
    gap: 15px;
}

.progress-bar[b-ltvr28cksj] {
    width: 100%;
    height: 4px;
    background: #E9ECEF;
    border-radius: 2px;
    overflow: hidden;
    margin-bottom: 20px;
}

.progress-fill[b-ltvr28cksj] {
    height: 100%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    width: 75%;
    transition: width 0.3s ease;
}

.error-message[b-ltvr28cksj] {
    color: #DC3545;
    font-size: 0.8rem;
    margin-top: 5px;
}

.success-message[b-ltvr28cksj] {
    color: #28A745;
    font-size: 0.8rem;
    margin-top: 5px;
}

@media (max-width: 768px) {
    .main-content[b-ltvr28cksj] {
        margin-left: 0;
    }

    .sidebar[b-ltvr28cksj] {
        transform: translateX(-100%);
    }

    .form-grid[b-ltvr28cksj] {
        grid-template-columns: 1fr;
    }

    .form-grid.two-columns[b-ltvr28cksj],
    .form-grid.three-columns[b-ltvr28cksj] {
        grid-template-columns: 1fr;
    }

    .form-actions[b-ltvr28cksj] {
        flex-direction: column;
        gap: 15px;
    }

    .form-actions-left[b-ltvr28cksj],
    .form-actions-right[b-ltvr28cksj] {
        width: 100%;
        justify-content: center;
    }
}
/* /Pages/CalendarPages/CalendarMonthlyPage.razor.rz.scp.css */
/* Customizado o header */
.header-left[b-g3tqxuplom] {
    display: block !important;
    align-items: unset !important;
    gap: 0 !important;
}

.content[b-g3tqxuplom] {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.calendar-container[b-g3tqxuplom] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

/* ── Header ── */
.schedule-header[b-g3tqxuplom] {
    background: #fff;
    border-bottom: 1px solid #e2e8f0;
    color: #0f172a;
    padding: 18px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.date-header[b-g3tqxuplom] {
    display: flex;
    gap: 30px;
    align-items: center;
}

.nav-btn[b-g3tqxuplom] {
    min-width: 34px;
    min-height: 34px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    color: #374151;
    font-size: 0.875rem;
}

.nav-btn:hover[b-g3tqxuplom] {
    background: #e2e8f0;
    color: #0f172a;
}

.today-btn[b-g3tqxuplom] {
    padding: 6px 12px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 7px;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: all 0.2s;
    color: #374151;
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: 500;
}

.today-btn:hover[b-g3tqxuplom] {
    background: #e2e8f0;
    color: #0f172a;
}

.view-controls[b-g3tqxuplom] {
    display: flex;
    gap: 8px;
}

[b-g3tqxuplom] .view-btn {
    padding: 7px 14px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 7px;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: all 0.2s;
    text-decoration: none;
    color: #64748b;
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
}

[b-g3tqxuplom] .view-btn.active {
    background: rgba(46, 134, 171, 0.10);
    border-color: #2e86ab;
    color: #2e86ab;
    font-weight: 600;
}

[b-g3tqxuplom] .view-btn:hover {
    background: #f1f5f9;
    color: #374151;
    text-decoration: none;
}

/* ── Grid mensal ── */
.monthly-grid[b-g3tqxuplom] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
}

.month-day-header[b-g3tqxuplom] {
    padding: 14px 10px;
    text-align: center;
    font-weight: 600;
    font-size: 0.85rem;
    color: #6C757D;
    background: #F8F9FA;
    border-right: 1px solid #E9ECEF;
    border-bottom: 2px solid #DEE2E6;
}

.month-day-header:last-child[b-g3tqxuplom] {
    border-right: none;
}

.month-day[b-g3tqxuplom] {
    min-height: 110px;
    border-right: 1px solid #E9ECEF;
    border-bottom: 1px solid #E9ECEF;
    padding: 10px;
    cursor: pointer;
    transition: background 0.2s;
}

.month-day:hover[b-g3tqxuplom] {
    background: #F0F7FF;
}

.month-day:last-child[b-g3tqxuplom] {
    border-right: none;
}

.month-day.other-month[b-g3tqxuplom] {
    background: #FAFAFA;
}

.month-day.other-month .month-day-number[b-g3tqxuplom] {
    color: #CED4DA;
}

.month-day.today[b-g3tqxuplom] {
    background: #EBF5FB;
}

.month-day.selected[b-g3tqxuplom] {
    background: #E8F4F8;
    outline: 2px solid #2E86AB;
    outline-offset: -2px;
}

.month-day-number[b-g3tqxuplom] {
    font-weight: 600;
    font-size: 0.95rem;
    color: #495057;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.month-day-number.today-circle[b-g3tqxuplom] {
    background: #2E86AB;
    color: white;
}

/* ── Chips de agendamentos por dia ── */
.month-appts[b-g3tqxuplom] {
    margin-top: 4px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.month-appt-chip[b-g3tqxuplom] {
    font-size: 0.7rem;
    padding: 2px 5px;
    border-radius: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    background: #E3F2FD;
    border-left: 3px solid #2196F3;
    color: #1565C0;
}

.month-appt-chip.Consultation[b-g3tqxuplom]  { background: #e0f2fe; border-left-color: #2e86ab; color: #0c4a6e; }
.month-appt-chip.FollowUp[b-g3tqxuplom]      { background: #f0f9ff; border-left-color: #38bdf8; color: #0369a1; }
.month-appt-chip.Exam[b-g3tqxuplom]          { background: #ede9fe; border-left-color: #7c3aed; color: #4c1d95; }
.month-appt-chip.Emergency[b-g3tqxuplom]     { background: #fee2e2; border-left-color: #dc2626; color: #7f1d1d; }
.month-appt-chip.Completed[b-g3tqxuplom]     { background: #dcfce7; border-left-color: #16a34a; color: #14532d; }
.month-appt-chip.NoShow[b-g3tqxuplom]        { background: #f1f5f9; border-left-color: #94a3b8; color: #475569; }

.month-appt-more[b-g3tqxuplom] {
    font-size: 0.65rem;
    color: #6C757D;
    padding: 1px 5px;
    font-style: italic;
}

/* Chips ocultos — revelados no hover */
.month-appt-chip--hidden[b-g3tqxuplom] {
    display: none;
}

.month-day:hover .month-appt-chip--hidden[b-g3tqxuplom] {
    display: block;
}

.month-day:hover .month-appt-more[b-g3tqxuplom] {
    display: none;
}

@media (max-width: 768px) {
    .month-day[b-g3tqxuplom] {
        min-height: 70px;
        padding: 6px;
    }

    .view-controls[b-g3tqxuplom] {
        display: none;
    }
}
/* /Pages/CalendarPages/CalendarPage.razor.rz.scp.css */
/* Restante */
.content[b-2ovib6s0qo] {
    display: grid;
    grid-template-columns: 1fr 350px;
    gap: 15px;
}

.main-schedule[b-2ovib6s0qo] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.schedule-header[b-2ovib6s0qo] {
    background: #fff;
    border-bottom: 1px solid #e2e8f0;
    color: #0f172a;
    padding: 18px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.date-header[b-2ovib6s0qo] {
    display: flex;
    gap: 30px;
    align-items: center;
}

.view-controls[b-2ovib6s0qo] {
    display: flex;
    gap: 8px;
}

[b-2ovib6s0qo] .view-btn {
    padding: 7px 14px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 7px;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: all 0.2s;
    text-decoration: none;
    color: #64748b;
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
}

[b-2ovib6s0qo] .view-btn.active {
    background: rgba(46, 134, 171, 0.10);
    border-color: #2e86ab;
    color: #2e86ab;
    font-weight: 600;
}

[b-2ovib6s0qo] .view-btn:hover {
    background: #f1f5f9;
    color: #374151;
    text-decoration: none;
}

[b-2ovib6s0qo] .nav-btn {
    min-width: 34px;
    min-height: 34px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    color: #374151;
    font-size: 0.875rem;
}

.nav-btn:hover[b-2ovib6s0qo] {
    background: #e2e8f0;
    color: #0f172a;
}

.today-btn[b-2ovib6s0qo] {
    padding: 6px 12px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 7px;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: all 0.2s;
    color: #374151;
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: 500;
}

.today-btn:hover[b-2ovib6s0qo] {
    background: #e2e8f0;
    color: #0f172a;
}

.schedule-body[b-2ovib6s0qo] {
    padding: 30px 30px 0 30px;
}

.time-grid[b-2ovib6s0qo] {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 0;
    max-height: 100vh;
    overflow-y: auto;
    margin-bottom: 20px;
}

.time-slot[b-2ovib6s0qo] {
    padding: 15px 10px;
    border-bottom: 1px solid #E9ECEF;
    border-left: 1px solid #E9ECEF;
    font-size: 0.9rem;
    color: #6C757D;
    text-align: center;
    background: #FAFAFA;
    font-weight: 500;
}

.appointment-slot[b-2ovib6s0qo] {
    border-bottom: 1px solid #E9ECEF;
    position: relative;
    min-height: 60px;
    padding: 5px;
}

.appointment-card[b-2ovib6s0qo] {
    background: white;
    border-radius: 8px;
    padding: 15px;
    margin: 2px 0;
    border-left: 4px solid #2196F3;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transition: all 0.3s ease;
}

.appointment-card:hover[b-2ovib6s0qo] {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
}

.appointment-card.Consultation[b-2ovib6s0qo] {
    border-left-color: #2e86ab;
    background: #e0f2fe;
}

.appointment-card.Procedimento[b-2ovib6s0qo] {
    border-left-color: #ca8a04;
    background: #fef9c3;
}

.appointment-card.FollowUp[b-2ovib6s0qo] {
    border-left-color: #38bdf8;
    background: #f0f9ff;
}

.appointment-card.Exam[b-2ovib6s0qo] {
    border-left-color: #7c3aed;
    background: #ede9fe;
}

.appointment-card.Emergency[b-2ovib6s0qo] {
    border-left-color: #dc2626 !important;
    background: #fee2e2 !important;
}

.appointment-card.Cancelled[b-2ovib6s0qo] {
    border-left-color: #94a3b8 !important;
    background: #f1f5f9 !important;
    opacity: 0.7;
}

.appointment-card.bloqueado[b-2ovib6s0qo] {
    border-left-color: #9333ea !important;
    background: #f5f3ff !important;
}

.appointment-card.Completed[b-2ovib6s0qo] {
    border-left-color: #16a34a;
    background: #dcfce7;
}

.appointment-card.NoShow[b-2ovib6s0qo] {
    border-left-color: #94a3b8;
    background: #f1f5f9;
    opacity: 0.8;
}

.appointment-card.NoShow .appointment-patient[b-2ovib6s0qo] {
    text-decoration: line-through;
    color: #90A4AE;
}

.appointment-summary[b-2ovib6s0qo] {
    font-size: 0.8rem;
    opacity: 0.8;
}

.appointment-type[b-2ovib6s0qo] {
    font-size: 0.8rem;
    opacity: 0.8;
}

.appointment-summary .title[b-2ovib6s0qo],
.appointment-type .title[b-2ovib6s0qo] {
    font-size: 0.8rem;
    opacity: 0.8;
}

.appointment-summary .span-text[b-2ovib6s0qo],
.appointment-type .span-text[b-2ovib6s0qo] {
    font-size: 0.8rem;
    opacity: 0.8;
    color: var(--primary-color);
}

.appointment-summary .noshow[b-2ovib6s0qo] {
    color: #F44336;
}

.appointment-patient[b-2ovib6s0qo] {
    color: var(--body-text);
    margin-bottom: 5px;
    font-weight: bold;
    letter-spacing: -1.5px;
}

.appointment-actions[b-2ovib6s0qo] {
    display: flex;
    gap: 10px;
    margin-top: 15px;
}

.sidebar-right[b-2ovib6s0qo] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ── Slot bloqueado ───────────────────────────────────────── */

.time-slot.blocked[b-2ovib6s0qo] {
    color: #B0BEC5;
    background: #F7F8F9;
}

.blocked-row[b-2ovib6s0qo] {
    border-bottom: 1px solid #E9ECEF;
    min-height: 60px;
    padding: 5px;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
}

/* Fundo listrado diagonal */
.blocked-row[b-2ovib6s0qo]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: repeating-linear-gradient(
        -45deg,
        transparent,
        transparent 7px,
        rgba(144, 164, 174, 0.07) 7px,
        rgba(144, 164, 174, 0.07) 14px
    );
    pointer-events: none;
}

.blocked-row-inner[b-2ovib6s0qo] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 8px 12px;
    border-left: 3px solid #90A4AE;
    border-radius: 0 6px 6px 0;
    background: rgba(144, 164, 174, 0.06);
    color: #90A4AE;
    font-size: 0.8rem;
    font-weight: 500;
    min-height: 48px;
    position: relative;
    transition: background 0.18s ease;
}

.blocked-row:hover .blocked-row-inner[b-2ovib6s0qo] {
    background: rgba(144, 164, 174, 0.13);
}

.blocked-row-label[b-2ovib6s0qo] {
    flex: 1;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.7rem;
    display: flex;
    align-items: center;
    gap: 6px;
}

.blocked-row-range[b-2ovib6s0qo] {
    font-size: 0.65rem;
    opacity: 0.65;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
}

.blocked-row-remove[b-2ovib6s0qo] {
    opacity: 0;
    transition: opacity 0.18s ease;
    background: none;
    border: 1px solid #B0BEC5;
    border-radius: 4px;
    color: #78909C;
    font-size: 0.72rem;
    cursor: pointer;
    padding: 3px 8px;
    display: flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}

.blocked-row:hover .blocked-row-remove[b-2ovib6s0qo] {
    opacity: 1;
}

.blocked-row-remove:hover[b-2ovib6s0qo] {
    background: rgba(144, 164, 174, 0.2);
    border-color: #78909C;
    color: #546E7A;
}

.summary-title[b-2ovib6s0qo] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* info-card pattern (matches ClinicalRecordsPage sidebar) */
.info-card[b-2ovib6s0qo] {
    background: white;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.info-card-title[b-2ovib6s0qo] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: -20px -20px 16px -20px;
    padding: 14px 20px;
    border-bottom: 1px solid #F0F4F7;
}

.info-card-title h3[b-2ovib6s0qo] {
    font-size: 0.8rem;
    font-weight: 700;
    color: #1A5F7A;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.info-card-title h3 i[b-2ovib6s0qo] {
    color: #F59E0B;
    font-size: 0.85rem;
}

.next-appointment-item[b-2ovib6s0qo] {
    display: flex;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #E9ECEF;
}

.next-appointment-item:last-child[b-2ovib6s0qo] {
    border-bottom: none;
}

.next-time[b-2ovib6s0qo] {
    font-size: 0.9rem;
    font-weight: 600;
    color: #2E86AB;
    min-width: 60px;
}

.next-info[b-2ovib6s0qo] {
    flex: 1;
    border-left: 1px solid var(--secondary-color);
    padding-left: 10px;
}

.next-patient[b-2ovib6s0qo] {
    font-size: 0.9rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 2px;
}

.next-type[b-2ovib6s0qo] {
    font-size: 0.8rem;
    color: #6C757D;
}

.next-status[b-2ovib6s0qo] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.next-status.Consultation[b-2ovib6s0qo] { background: #2e86ab; }
.next-status.Exam[b-2ovib6s0qo]         { background: #7c3aed; }
.next-status.FollowUp[b-2ovib6s0qo]     { background: #38bdf8; }
.next-status.Completed[b-2ovib6s0qo]    { background: #16a34a; }
.next-status.Emergency[b-2ovib6s0qo]    { background: #dc2626; }

/* ── Legenda ────────────────────────────────────────────────── */
.legend-grid[b-2ovib6s0qo] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px;
}

.legend-item[b-2ovib6s0qo] {
    border-left: 3px solid transparent;
    border-radius: 0 5px 5px 0;
    padding: 6px 10px;
    font-size: 0.775rem;
    font-weight: 600;
    line-height: 1.2;
}

.legend-item.type-consultation[b-2ovib6s0qo] { border-left-color: #2e86ab; background: #e0f2fe; color: #0c4a6e; }
.legend-item.type-followup[b-2ovib6s0qo]     { border-left-color: #38bdf8; background: #f0f9ff; color: #0369a1; }
.legend-item.type-exam[b-2ovib6s0qo]         { border-left-color: #7c3aed; background: #ede9fe; color: #4c1d95; }
.legend-item.type-emergency[b-2ovib6s0qo]    { border-left-color: #dc2626; background: #fee2e2; color: #7f1d1d; }
.legend-item.type-completed[b-2ovib6s0qo]    { border-left-color: #16a34a; background: #dcfce7; color: #14532d; }
.legend-item.type-cancelled[b-2ovib6s0qo]    { border-left-color: #94a3b8; background: #f1f5f9; color: #475569; }

.legend-card .info-card-title h3 i[b-2ovib6s0qo] {
    color: #94a3b8;
}

.quick-action-btn[b-2ovib6s0qo] {
    width: 100%;
    padding: 14px 16px;
    margin-bottom: 10px;
    border-radius: 10px;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.25s ease;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border: none;
}

.quick-action-btn i[b-2ovib6s0qo] {
    font-size: 1rem;
    width: 20px;
    text-align: center;
}

.quick-action-btn.block[b-2ovib6s0qo] {
    background: #f8fafc;
    color: #374151;
    border: 1px solid #e2e8f0;
}

.quick-action-btn.block i[b-2ovib6s0qo] { color: #d97706; }

.quick-action-btn.block:hover[b-2ovib6s0qo] {
    background: #f1f5f9;
    border-color: #cbd5e1;
    transform: translateY(-1px);
}

.quick-action-btn.patients[b-2ovib6s0qo] {
    background: #f8fafc;
    color: #374151;
    border: 1px solid #e2e8f0;
}

.quick-action-btn.patients i[b-2ovib6s0qo] { color: #2e86ab; }

.quick-action-btn.patients:hover[b-2ovib6s0qo] {
    background: #f1f5f9;
    border-color: #cbd5e1;
    transform: translateY(-1px);
}

.quick-action-btn.remaining[b-2ovib6s0qo] {
    background: #f8fafc;
    color: #374151;
    border: 1px solid #e2e8f0;
}

.quick-action-btn.remaining i[b-2ovib6s0qo] { color: #7c3aed; }

.quick-action-btn.remaining:hover[b-2ovib6s0qo] {
    background: #f1f5f9;
    border-color: #cbd5e1;
    transform: translateY(-1px);
}

.quick-action-btn.unblock[b-2ovib6s0qo] {
    background: #f8fafc;
    color: #374151;
    border: 1px solid #e2e8f0;
}

.quick-action-btn.unblock i[b-2ovib6s0qo] { color: #16a34a; }

.quick-action-btn.unblock:hover[b-2ovib6s0qo] {
    background: #f1f5f9;
    border-color: #cbd5e1;
    transform: translateY(-1px);
}

.empty-slot[b-2ovib6s0qo] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100px;
    color: #6C757D;
    font-size: 0.9rem;
    border: 2px dashed #E9ECEF;
    border-radius: 8px;
    margin: 2px 0;
    cursor: pointer;
    transition: all 0.3s ease;
    gap: 5px;
}

.form-row[b-2ovib6s0qo] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 30px;
}

.form-group[b-2ovib6s0qo] {
    display: flex;
    gap: 15px;
    align-items: center;
}

@media (max-width: 768px) {
    .content[b-2ovib6s0qo] {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    .sidebar-right[b-2ovib6s0qo] {
        order: -1;
    }

    .view-controls[b-2ovib6s0qo] {
        display: none;
    }
}
/* /Pages/CalendarPages/CalendarWeeklyPage.razor.rz.scp.css */
/* Customizado o header */
.header-left[b-ovzdsbwzn8] {
    display: block !important;
    align-items: unset !important;
    gap: 0 !important;
}

.content[b-ovzdsbwzn8] {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.main-schedule[b-ovzdsbwzn8] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

/* ── Header ── */
.schedule-header[b-ovzdsbwzn8] {
    background: #fff;
    border-bottom: 1px solid #e2e8f0;
    color: #0f172a;
    padding: 18px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.date-header[b-ovzdsbwzn8] {
    display: flex;
    gap: 30px;
    align-items: center;
}

.nav-btn[b-ovzdsbwzn8] {
    min-width: 34px;
    min-height: 34px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    color: #374151;
    font-size: 0.875rem;
}

.nav-btn:hover[b-ovzdsbwzn8] {
    background: #e2e8f0;
    color: #0f172a;
}

.today-btn[b-ovzdsbwzn8] {
    padding: 6px 12px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 7px;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: all 0.2s;
    color: #374151;
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: 500;
}

.today-btn:hover[b-ovzdsbwzn8] {
    background: #e2e8f0;
    color: #0f172a;
}

.view-controls[b-ovzdsbwzn8] {
    display: flex;
    gap: 8px;
}

[b-ovzdsbwzn8] .view-btn {
    padding: 7px 14px;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 7px;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: all 0.2s;
    text-decoration: none;
    color: #64748b;
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
}

[b-ovzdsbwzn8] .view-btn.active {
    background: rgba(46, 134, 171, 0.10);
    border-color: #2e86ab;
    color: #2e86ab;
    font-weight: 600;
}

[b-ovzdsbwzn8] .view-btn:hover {
    background: #f1f5f9;
    color: #374151;
    text-decoration: none;
}

/* ── Body ── */
.schedule-body[b-ovzdsbwzn8] {
    padding: 20px 20px 0 20px;
}

.form-row[b-ovzdsbwzn8] {
    margin-bottom: 20px;
}

.form-group[b-ovzdsbwzn8] {
    display: flex;
    gap: 15px;
    align-items: center;
}

/* ── Grid semanal ── */
.weekly-grid[b-ovzdsbwzn8] {
    display: grid;
    grid-template-columns: 70px repeat(7, 1fr);
    border-top: 1px solid #E9ECEF;
    border-left: 1px solid #E9ECEF;
    max-height: 72vh;
    overflow-y: auto;
    margin-bottom: 20px;
}

.week-corner[b-ovzdsbwzn8] {
    background: #F8F9FA;
    border-right: 1px solid #E9ECEF;
    border-bottom: 2px solid #DEE2E6;
}

.week-day-header[b-ovzdsbwzn8] {
    padding: 10px 6px;
    text-align: center;
    background: #F8F9FA;
    border-right: 1px solid #E9ECEF;
    border-bottom: 2px solid #DEE2E6;
    font-size: 0.8rem;
    color: #6C757D;
}

.week-day-header.today[b-ovzdsbwzn8] {
    background: #E3F2FD;
    color: #1565C0;
}

.week-day-name[b-ovzdsbwzn8] {
    font-weight: 500;
    text-transform: capitalize;
}

.week-day-number[b-ovzdsbwzn8] {
    font-size: 1.1rem;
    font-weight: 700;
    margin-top: 2px;
    color: #495057;
}

.week-day-number.today-circle[b-ovzdsbwzn8] {
    background: #2E86AB;
    color: white;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.95rem;
}

.week-time-slot[b-ovzdsbwzn8] {
    padding: 8px 4px;
    font-size: 0.75rem;
    color: #9E9E9E;
    text-align: center;
    border-right: 1px solid #E9ECEF;
    border-bottom: 1px solid #E9ECEF;
    background: #FAFAFA;
    position: sticky;
    left: 0;
}

.week-cell[b-ovzdsbwzn8] {
    border-right: 1px solid #E9ECEF;
    border-bottom: 1px solid #E9ECEF;
    min-height: 52px;
    padding: 2px;
    cursor: pointer;
    transition: background 0.15s;
}

.week-cell:hover[b-ovzdsbwzn8] {
    background: #F0F7FF;
}

.week-cell.today-col[b-ovzdsbwzn8] {
    background: #FAFEFF;
}

.week-cell.past[b-ovzdsbwzn8] {
    background: #FAFAFA;
    opacity: 0.7;
}

/* ── Mini cards de agendamento ── */
.week-appt[b-ovzdsbwzn8] {
    border-left: 3px solid #2196F3;
    background: #E3F2FD;
    border-radius: 4px;
    padding: 4px 6px;
    min-height: 44px;
    overflow: hidden;
    font-size: 0.72rem;
}

.week-appt.Consultation[b-ovzdsbwzn8]  { border-left-color: #2e86ab; background: #e0f2fe; }
.week-appt.FollowUp[b-ovzdsbwzn8]      { border-left-color: #38bdf8; background: #f0f9ff; }
.week-appt.Exam[b-ovzdsbwzn8]          { border-left-color: #7c3aed; background: #ede9fe; }
.week-appt.Emergency[b-ovzdsbwzn8]     { border-left-color: #dc2626; background: #fee2e2; }
.week-appt.Cancelled[b-ovzdsbwzn8]     { border-left-color: #94a3b8; background: #f1f5f9; opacity: 0.7; }
.week-appt.Completed[b-ovzdsbwzn8]     { border-left-color: #16a34a; background: #dcfce7; }
.week-appt.NoShow[b-ovzdsbwzn8]        { border-left-color: #94a3b8; background: #f1f5f9; opacity: 0.75; }

.week-appt-name[b-ovzdsbwzn8] {
    font-weight: 600;
    color: #37474F;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.week-appt-meta[b-ovzdsbwzn8] {
    color: #78909C;
    font-size: 0.68rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Continuação de um agendamento multi-slot */
.week-appt--fill[b-ovzdsbwzn8] {
    min-height: 50px;
    padding: 0;
    border-radius: 0;
    border-left-width: 3px;
    border-left-style: solid;
    opacity: 0.45;
}

@media (max-width: 900px) {
    .weekly-grid[b-ovzdsbwzn8] {
        grid-template-columns: 55px repeat(7, 1fr);
    }

    .view-controls[b-ovzdsbwzn8] {
        display: none;
    }
}
/* /Pages/FinancePages/FinanceGeneralPage.razor.rz.scp.css */
.financial-overview[b-ywj7386kpv] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 25px;
    margin-bottom: 30px;
}

.overview-card[b-ywj7386kpv] {
    background: white;
    padding: 25px;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.overview-card:hover[b-ywj7386kpv] {
    transform: translateY(-5px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.overview-card[b-ywj7386kpv]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
}

.overview-card.revenue[b-ywj7386kpv]::before {
    background: linear-gradient(180deg, #28A745, #20c997);
}

.overview-card.expenses[b-ywj7386kpv]::before {
    background: linear-gradient(180deg, #DC3545, #e74c3c);
}

.overview-card.profit[b-ywj7386kpv]::before {
    background: linear-gradient(180deg, #2E86AB, #17a2b8);
}

.overview-card.pending[b-ywj7386kpv]::before {
    background: linear-gradient(180deg, #FFC107, #ffb300);
}

.card-header[b-ywj7386kpv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.card-title[b-ywj7386kpv] {
    font-size: 0.9rem;
    color: #6C757D;
    font-weight: 500;
}

.card-icon[b-ywj7386kpv] {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: white;
}

.card-icon.revenue[b-ywj7386kpv] {
    background: linear-gradient(135deg, #28A745, #20c997);
}

.card-icon.expenses[b-ywj7386kpv] {
    background: linear-gradient(135deg, #DC3545, #e74c3c);
}

.card-icon.profit[b-ywj7386kpv] {
    background: linear-gradient(135deg, #2E86AB, #17a2b8);
}

.card-icon.pending[b-ywj7386kpv] {
    background: linear-gradient(135deg, #FFC107, #ffb300);
}

.card-value[b-ywj7386kpv] {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 8px;
}

.card-value.revenue[b-ywj7386kpv] {
    color: #28A745;
}

.card-value.expenses[b-ywj7386kpv] {
    color: #DC3545;
}

.card-value.profit[b-ywj7386kpv] {
    color: #2E86AB;
}

.card-value.pending[b-ywj7386kpv] {
    color: #FFC107;
}

.card-change[b-ywj7386kpv] {
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    gap: 5px;
}

.card-change.positive[b-ywj7386kpv] {
    color: #28A745;
}

.card-change.negative[b-ywj7386kpv] {
    color: #DC3545;
}

.financial-grid[b-ywj7386kpv] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 30px;
    margin-bottom: 30px;
}

.chart-container[b-ywj7386kpv] {
    background: white;
    padding: 25px;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.chart-header[b-ywj7386kpv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.chart-title[b-ywj7386kpv] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
}

.chart-filter[b-ywj7386kpv] {
    padding: 8px 15px;
    border: 1px solid #E9ECEF;
    border-radius: 8px;
    background: white;
    color: #495057;
    font-size: 0.9rem;
}

.transactions-container[b-ywj7386kpv] {
    background: white;
    padding: 25px;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.transactions-header[b-ywj7386kpv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.transaction-item[b-ywj7386kpv] {
    display: flex;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #F1F3F4;
}

.transaction-item:last-child[b-ywj7386kpv] {
    border-bottom: none;
}

.transaction-icon[b-ywj7386kpv] {
    width: 45px;
    height: 45px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    font-size: 1.2rem;
    color: white;
}

.transaction-icon.income[b-ywj7386kpv] {
    background: linear-gradient(135deg, #28A745, #20c997);
}

.transaction-icon.expense[b-ywj7386kpv] {
    background: linear-gradient(135deg, #DC3545, #e74c3c);
}

.transaction-details[b-ywj7386kpv] {
    flex: 1;
}

.transaction-description[b-ywj7386kpv] {
    font-weight: 600;
    color: #495057;
    margin-bottom: 3px;
}

.transaction-category[b-ywj7386kpv] {
    font-size: 0.85rem;
    color: #6C757D;
}

.transaction-amount[b-ywj7386kpv] {
    font-weight: 700;
    font-size: 1.1rem;
}

.transaction-amount.income[b-ywj7386kpv] {
    color: #28A745;
}

.transaction-amount.expense[b-ywj7386kpv] {
    color: #DC3545;
}

.date-range[b-ywj7386kpv] {
    display: flex;
    gap: 0.75rem;
    align-items: flex-end;
}

.reports-grid[b-ywj7386kpv] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 25px;
}

.report-card[b-ywj7386kpv] {
    background: white;
    padding: 25px;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.report-card:hover[b-ywj7386kpv] {
    transform: translateY(-5px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.report-icon[b-ywj7386kpv] {
    width: 70px;
    height: 70px;
    margin: 0 auto 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: white;
    background: linear-gradient(135deg, #2E86AB, #28A745);
}

.report-title[b-ywj7386kpv] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 10px;
}

.report-description[b-ywj7386kpv] {
    font-size: 0.9rem;
    color: #6C757D;
    line-height: 1.5;
}

.modal[b-ywj7386kpv] {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 2000;
    align-items: center;
    justify-content: center;
}

.modal.show[b-ywj7386kpv] {
    display: flex;
}

.modal-content[b-ywj7386kpv] {
    background: white;
    border-radius: 16px;
    padding: 30px;
    width: 90%;
    max-width: 500px;
    max-height: 90vh;
    overflow-y: auto;
}

.modal-header[b-ywj7386kpv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
}

.modal-title[b-ywj7386kpv] {
    font-size: 1.3rem;
    font-weight: 600;
    color: #2E86AB;
}

.close-btn[b-ywj7386kpv] {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: #6C757D;
    cursor: pointer;
}

.form-group[b-ywj7386kpv] {
    margin-bottom: 20px;
}

.form-label[b-ywj7386kpv] {
    display: block;
    margin-bottom: 8px;
    color: #495057;
    font-weight: 500;
    font-size: 0.9rem;
}

.form-control[b-ywj7386kpv] {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.form-control:focus[b-ywj7386kpv] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.form-row[b-ywj7386kpv] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

@media (max-width: 768px) {
    .main-content[b-ywj7386kpv] {
        margin-left: 0;
    }

    .sidebar[b-ywj7386kpv] {
        transform: translateX(-100%);
    }

    .financial-grid[b-ywj7386kpv] {
        grid-template-columns: 1fr;
    }

    .date-range[b-ywj7386kpv] {
        flex-direction: column;
        align-items: stretch;
    }

    .form-row[b-ywj7386kpv] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/FinancePages/FinancePage.razor.rz.scp.css */
/* ============================================================
   PERIOD SELECTOR
   ============================================================ */
.period-selector[b-ppug860shk] {
    display: flex;
    gap: 3px;
    background: var(--light-color);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding: 4px;
}

.period-btn[b-ppug860shk] {
    padding: 6px 13px;
    border: none;
    border-radius: 7px;
    font-size: 0.82rem;
    font-weight: 500;
    cursor: pointer;
    background: transparent;
    color: var(--text-muted);
    transition: var(--transition);
    white-space: nowrap;
    font-family: inherit;
}

.period-btn.active[b-ppug860shk] {
    background: white;
    color: var(--primary-color);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
    font-weight: 600;
}

.period-btn:hover:not(.active)[b-ppug860shk] {
    background: rgba(46, 134, 171, 0.08);
    color: var(--primary-color);
}

/* ============================================================
   CUSTOM RANGE BAR
   ============================================================ */
.custom-range-bar[b-ppug860shk] {
    display: flex;
    align-items: center;
    gap: 12px;
    background: white;
    border: 1.5px solid var(--primary-color);
    border-radius: var(--border-radius);
    padding: 14px 20px;
    box-shadow: var(--box-shadow);
    flex-wrap: wrap;
}

.custom-range-bar i[b-ppug860shk] {
    color: var(--primary-color);
    font-size: 1rem;
}

.custom-range-bar span[b-ppug860shk] {
    font-size: 0.9rem;
    color: var(--text-muted);
    font-weight: 500;
}

.date-field[b-ppug860shk] {
    padding: 8px 12px;
    border: 1.5px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.88rem;
    font-family: inherit;
    color: var(--body-text);
    background: var(--bg-input);
    transition: var(--transition);
    cursor: pointer;
}

.date-field:focus[b-ppug860shk] {
    outline: none;
    border-color: var(--primary-color);
    box-shadow: var(--box-shadow-focus);
}

/* ============================================================
   KPI GRID
   ============================================================ */
.kpi-grid[b-ppug860shk] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.kpi-card[b-ppug860shk] {
    background: white;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    padding: 20px 22px;
    display: flex;
    align-items: center;
    gap: 16px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.kpi-card:hover[b-ppug860shk] {
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}

.kpi-icon[b-ppug860shk] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    flex-shrink: 0;
}

.kpi-icon.total-icon[b-ppug860shk]    { background: rgba(9, 132, 227, 0.1); color: #0984e3; }
.kpi-icon.pago-icon[b-ppug860shk]     { background: rgba(0, 184, 148, 0.1); color: #00b894; }
.kpi-icon.pendente-icon[b-ppug860shk] { background: rgba(253, 203, 110, 0.15); color: #e17055; }
.kpi-icon.atrasado-icon[b-ppug860shk] { background: rgba(214, 48, 49, 0.1); color: #d63031; }

.kpi-body[b-ppug860shk] { flex: 1; min-width: 0; }

.kpi-value[b-ppug860shk] {
    font-size: 1.35rem;
    font-weight: 700;
    font-family: 'Manrope', sans-serif;
    color: var(--title-text);
    line-height: 1.2;
    margin-bottom: 2px;
}

.kpi-value.pago[b-ppug860shk]     { color: #00b894; }
.kpi-value.pendente[b-ppug860shk] { color: #e17055; }
.kpi-value.atrasado[b-ppug860shk] { color: #d63031; }

.kpi-label[b-ppug860shk] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 3px;
}

.kpi-sub[b-ppug860shk] {
    font-size: 0.78rem;
    color: var(--text-placeholder);
}

/* ============================================================
   PATIENT LOOKUP CARD
   ============================================================ */
.lookup-card[b-ppug860shk] {
    background: white;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    padding: 20px 24px;
}

.lookup-header[b-ppug860shk] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}


.clear-btn[b-ppug860shk] {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    border: 1.5px solid var(--border-color);
    border-radius: 20px;
    background: transparent;
    font-size: 0.8rem;
    color: var(--text-muted);
    cursor: pointer;
    transition: var(--transition);
    font-family: inherit;
}

.clear-btn:hover[b-ppug860shk] {
    border-color: var(--danger-color);
    color: var(--danger-color);
    background: rgba(239, 68, 68, 0.05);
}

.patient-search[b-ppug860shk] {
    position: relative;
}

.ps-icon[b-ppug860shk] {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-placeholder);
    font-size: 0.85rem;
    pointer-events: none;
}

.patient-search input[b-ppug860shk] {
    width: 100%;
    padding: 11px 14px 11px 40px;
    border: 1.5px solid var(--border-color);
    border-radius: 10px;
    font-size: 0.9rem;
    font-family: inherit;
    background: var(--bg-input);
    color: var(--body-text);
    transition: var(--transition);
    box-sizing: border-box;
}

.patient-search input:focus[b-ppug860shk] {
    outline: none;
    border-color: var(--primary-color);
    box-shadow: var(--box-shadow-focus);
    background: white;
}

.patient-search input[b-ppug860shk]::placeholder { color: var(--text-placeholder); }

.patient-suggestions[b-ppug860shk] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: white;
    border: 1.5px solid var(--border-color);
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    max-height: 240px;
    overflow-y: auto;
    z-index: 500;
}

.patient-suggestion[b-ppug860shk] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 16px;
    cursor: pointer;
    transition: background 0.15s ease;
    border-bottom: 1px solid #f1f3f5;
}

.patient-suggestion:last-child[b-ppug860shk] { border-bottom: none; }

.patient-suggestion:hover[b-ppug860shk],
.patient-suggestion.highlight[b-ppug860shk]  { background: #f0f8ff; }

.sug-avatar[b-ppug860shk] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary-color), #28a745);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.9rem;
    flex-shrink: 0;
}

.sug-info[b-ppug860shk] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sug-info strong[b-ppug860shk] { font-size: 0.88rem; color: var(--title-text); }
.sug-info small[b-ppug860shk]  { font-size: 0.78rem; color: var(--text-muted); }

/* ============================================================
   PATIENT CARD (selected patient)
   ============================================================ */
.patient-card[b-ppug860shk] {
    background: white;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    padding: 20px 24px;
    display: flex;
    align-items: center;
    gap: 20px;
    border-left: 4px solid var(--primary-color);
}

.pc-avatar[b-ppug860shk] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary-color), #28a745);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    font-weight: 700;
    flex-shrink: 0;
    font-family: 'Manrope', sans-serif;
}

.pc-info[b-ppug860shk] { flex: 1; min-width: 0; }

.pc-name[b-ppug860shk] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--title-text);
    margin-bottom: 6px;
}

.pc-meta[b-ppug860shk] {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.pc-meta span[b-ppug860shk] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 0.82rem;
    color: var(--text-muted);
}

.pc-meta i[b-ppug860shk] { color: var(--primary-color); font-size: 0.75rem; }

.pc-stats[b-ppug860shk] {
    display: flex;
    gap: 0;
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
    flex-shrink: 0;
}

.pcs[b-ppug860shk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 10px 18px;
    border-right: 1px solid var(--border-color);
    min-width: 90px;
}

.pcs:last-child[b-ppug860shk] { border-right: none; }

.pcs-val[b-ppug860shk] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--title-text);
    white-space: nowrap;
}

.pcs-lbl[b-ppug860shk] {
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
    margin-top: 2px;
}

.pcs.pago .pcs-val[b-ppug860shk]     { color: #00b894; }
.pcs.pendente .pcs-val[b-ppug860shk] { color: #e17055; }
.pcs.atrasado .pcs-val[b-ppug860shk] { color: #d63031; }

/* ============================================================
   BILLING PANEL
   ============================================================ */
.billing-panel[b-ppug860shk] {
    background: white;
    border-radius: var(--border-radius);
    box-shadow: var(--box-shadow);
    overflow: hidden;
}

.panel-tabs[b-ppug860shk] {
    display: flex;
    background: var(--light-color);
    border-bottom: 1px solid var(--border-color);
    padding: 0 4px;
    gap: 2px;
}

.panel-tab[b-ppug860shk] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 13px 20px;
    border: none;
    background: transparent;
    font-size: 0.88rem;
    font-weight: 500;
    cursor: pointer;
    color: var(--text-muted);
    transition: var(--transition);
    font-family: inherit;
    border-bottom: 3px solid transparent;
    margin-bottom: -1px;
}

.panel-tab.active[b-ppug860shk] {
    color: var(--primary-color);
    background: white;
    border-bottom-color: var(--primary-color);
    font-weight: 600;
}

.panel-tab:hover:not(.active)[b-ppug860shk] {
    color: var(--primary-color);
    background: rgba(46, 134, 171, 0.06);
}

.tab-badge[b-ppug860shk] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    border-radius: 10px;
    font-size: 0.72rem;
    font-weight: 600;
    background: var(--border-color);
    color: var(--text-muted);
}

.tab-badge.warn[b-ppug860shk] {
    background: rgba(214, 48, 49, 0.12);
    color: #d63031;
}

.panel-tab.active .tab-badge[b-ppug860shk] {
    background: rgba(46, 134, 171, 0.15);
    color: var(--primary-color);
}

.panel-body[b-ppug860shk] { padding: 8px 0; }

.panel-empty[b-ppug860shk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 52px 20px;
    color: var(--text-muted);
    gap: 12px;
    text-align: center;
}

.panel-empty i[b-ppug860shk] {
    font-size: 2.8rem;
    color: var(--border-color);
}

.panel-empty p[b-ppug860shk] { margin: 0; font-size: 0.9rem; }

/* ============================================================
   BILLING LIST
   ============================================================ */
.billing-list[b-ppug860shk] { display: flex; flex-direction: column; }

.billing-row[b-ppug860shk] {
    display: grid;
    grid-template-columns: 140px 1fr 140px 130px 100px;
    align-items: center;
    gap: 12px;
    padding: 13px 24px;
    border-bottom: 1px solid #f1f3f5;
    transition: background 0.15s ease;
}

.billing-row:last-child[b-ppug860shk] { border-bottom: none; }

.billing-row:hover[b-ppug860shk] { background: #fafbfc; }

.br-date[b-ppug860shk] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 0.85rem;
    color: var(--text-muted);
}

.br-date i[b-ppug860shk] { color: var(--primary-color); font-size: 0.78rem; }

.br-date.overdue[b-ppug860shk] { color: #d63031; }

.br-invoice[b-ppug860shk] {
    font-size: 0.85rem;
    color: var(--text-muted);
    font-variant-numeric: tabular-nums;
}

.br-amount[b-ppug860shk] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--title-text);
    font-variant-numeric: tabular-nums;
    text-align: right;
}

.br-status[b-ppug860shk] { display: flex; justify-content: center; }

.br-action[b-ppug860shk] { display: flex; justify-content: flex-end; }

.status-pill[b-ppug860shk] {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-pill.pago[b-ppug860shk]      { background: #d1fae5; color: #065f46; }
.status-pill.pendente[b-ppug860shk]  { background: #fef3c7; color: #92400e; }
.status-pill.atrasado[b-ppug860shk]  { background: #fee2e2; color: #991b1b; }
.status-pill.parcelado[b-ppug860shk] { background: #e0eaff; color: #3b5ca8; }
.status-pill.cancelado[b-ppug860shk] { background: #f1f3f5; color: #868e96; text-decoration: line-through; }

.row-btn[b-ppug860shk] {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    border: 1.5px solid var(--border-color);
    border-radius: 8px;
    background: white;
    font-size: 0.78rem;
    font-weight: 500;
    color: var(--text-muted);
    cursor: pointer;
    transition: var(--transition);
    font-family: inherit;
    white-space: nowrap;
}

.row-btn:hover[b-ppug860shk] {
    border-color: var(--primary-color);
    color: var(--primary-color);
    background: rgba(46, 134, 171, 0.06);
}

.row-btn.pay[b-ppug860shk] {
    border-color: #00b894;
    color: #00b894;
}

.row-btn.pay:hover[b-ppug860shk] {
    background: rgba(0, 184, 148, 0.08);
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 1100px) {
    .kpi-grid[b-ppug860shk] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .kpi-grid[b-ppug860shk] {
        grid-template-columns: 1fr 1fr;
    }

    .patient-card[b-ppug860shk] {
        flex-direction: column;
        align-items: flex-start;
    }

    .pc-stats[b-ppug860shk] {
        width: 100%;
        justify-content: stretch;
    }

    .pcs[b-ppug860shk] { flex: 1; }

    .billing-row[b-ppug860shk] {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto;
        gap: 6px;
        padding: 12px 16px;
    }

    .br-action[b-ppug860shk] { grid-column: 1 / -1; justify-content: flex-start; }

    .period-selector[b-ppug860shk] { flex-wrap: wrap; }
}

/* ============================================================
   PRINT STYLES
   ============================================================ */
@media print {
    .print-hide[b-ppug860shk] { display: none !important; }

    .main-content[b-ppug860shk] { padding: 0; }
    .header[b-ppug860shk] { box-shadow: none; border-bottom: 1px solid #ccc; }
    .kpi-card[b-ppug860shk] { box-shadow: none; border: 1px solid #ddd; break-inside: avoid; }
    .patient-card[b-ppug860shk] { box-shadow: none; border: 1px solid #ddd; }
    .billing-panel[b-ppug860shk] { box-shadow: none; border: 1px solid #ddd; }
    .billing-row:hover[b-ppug860shk] { background: transparent; }
    .row-btn[b-ppug860shk] { display: none; }

    .kpi-grid[b-ppug860shk] { grid-template-columns: repeat(4, 1fr); gap: 8px; }

    .panel-tabs[b-ppug860shk] { display: none; }
    .panel-body[b-ppug860shk] { padding: 0; }

    /* Always show both tabs in print */
    .billing-list[b-ppug860shk] { display: flex !important; }
}
/* /Pages/HomePages/HomePage.razor.rz.scp.css */
/* Customizado o header */
.header-left[b-crrldh0sft] {
    display: block !important;
    align-items: unset !important;
    gap: 0 !important;
}

.user-info[b-crrldh0sft] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.user-name[b-crrldh0sft],
.user-role[b-crrldh0sft] {
    margin: 0 !important;
    padding: 0 !important;
    align-self: end;
}

.user-avatar[b-crrldh0sft] {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    background: rgba(46, 134, 171, 0.10);
    border: 1px solid rgba(46, 134, 171, 0.20);
    color: #2e86ab;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.75rem;
}

.user-details[b-crrldh0sft] {
    display: flex;
    flex-direction: column;
}

.user-name[b-crrldh0sft] {
    font-weight: 600;
    color: #495057;
    font-size: 0.9rem;
}

.user-role[b-crrldh0sft] {
    font-size: 0.8rem;
    color: #6C757D;
}

.welcome-section[b-crrldh0sft] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #2e86ab;
    border-radius: 16px;
    padding: 28px 30px;
    position: relative;
}

.welcome-content[b-crrldh0sft] {
    position: relative;
}

.welcome-title[b-crrldh0sft] {
    font-size: 1.5rem;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: -0.02em;
}

.welcome-subtitle[b-crrldh0sft] {
    font-size: 0.9rem;
    color: #64748b;
    margin-bottom: 20px;
}

.quick-stats[b-crrldh0sft] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 20px;
}

.quick-stat[b-crrldh0sft] {
    background: #f0f9ff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 16px 20px;
    text-align: center;
}

.quick-stat-number[b-crrldh0sft] {
    font-size: 1.75rem;
    font-weight: 800;
    color: #2e86ab;
    margin-bottom: 4px;
    letter-spacing: -0.03em;
}

.quick-stat-label[b-crrldh0sft] {
    font-size: 0.8rem;
    color: #64748b;
    font-weight: 500;
}

.alerts-section[b-crrldh0sft] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

.alert-card[b-crrldh0sft] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.alert-header[b-crrldh0sft] {
    padding: 20px 25px;
    border-bottom: 1px solid #E9ECEF;
    display: flex;
    align-items: center;
    gap: 12px;
}

.alert-icon[b-crrldh0sft] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}

.alert-icon.agenda[b-crrldh0sft] {
    background: #E3F2FD;
    color: #2E86AB;
}

.alert-icon.estoque[b-crrldh0sft] {
    background: #FFF3E0;
    color: #FF8F00;
}

.alert-title[b-crrldh0sft] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
}

.alert-content[b-crrldh0sft] {
    padding: 0 25px 25px;
}

.alert-item[b-crrldh0sft] {
    display: flex;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid #F8F9FA;
}

.alert-item:last-child[b-crrldh0sft] {
    border-bottom: none;
}

.alert-item-icon[b-crrldh0sft] {
    width: 32px;
    height: 32px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    font-size: 0.9rem;
}

.alert-item-icon.urgent[b-crrldh0sft] {
    background: #FFEBEE;
    color: #D32F2F;
}

.alert-item-icon.warning[b-crrldh0sft] {
    background: #FFF3E0;
    color: #F57C00;
}

.alert-item-icon.info[b-crrldh0sft] {
    background: #E3F2FD;
    color: #1976D2;
}

.alert-item-content[b-crrldh0sft] {
    flex: 1;
}

.alert-item-title[b-crrldh0sft] {
    font-weight: 500;
    color: #495057;
    font-size: 0.9rem;
    margin-bottom: 2px;
}

.alert-item-subtitle[b-crrldh0sft] {
    font-size: 0.8rem;
    color: #6C757D;
}

.alert-item-time[b-crrldh0sft] {
    font-size: 0.8rem;
    color: #6C757D;
    white-space: nowrap;
}

.dashboard-grid[b-crrldh0sft] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 30px;
}

.chart-card[b-crrldh0sft] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 25px;
}

.chart-header[b-crrldh0sft] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.chart-title[b-crrldh0sft] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    display: flex;
    align-items: center;
    gap: 10px;
}

.chart-container[b-crrldh0sft] {
    height: 300px;
    position: relative;
}

.stats-grid[b-crrldh0sft] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.stat-card[b-crrldh0sft] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 25px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.stat-card[b-crrldh0sft]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #2e86ab;
    border-radius: 16px 16px 0 0;
}

.stat-card.warning[b-crrldh0sft]::before { background: #d97706; }
.stat-card.danger[b-crrldh0sft]::before  { background: #dc2626; }
.stat-card.success[b-crrldh0sft]::before { background: #16a34a; }

.stat-icon[b-crrldh0sft] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(46, 134, 171, 0.10);
    color: #2e86ab;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    margin: 0 auto 14px;
}

.stat-icon.warning[b-crrldh0sft] {
    background: rgba(217, 119, 6, 0.10);
    color: #d97706;
}

.stat-icon.danger[b-crrldh0sft] {
    background: rgba(220, 38, 38, 0.10);
    color: #dc2626;
}

.stat-icon.success[b-crrldh0sft] {
    background: rgba(22, 163, 74, 0.10);
    color: #16a34a;
}

.stat-number[b-crrldh0sft] {
    font-size: 2rem;
    font-weight: 700;
    color: #2E86AB;
    margin-bottom: 5px;
}

.stat-number.warning[b-crrldh0sft] {
    color: #FF8F00;
}

.stat-number.danger[b-crrldh0sft] {
    color: #DC3545;
}

.stat-number.success[b-crrldh0sft] {
    color: #28A745;
}

.stat-label[b-crrldh0sft] {
    font-size: 0.9rem;
    color: #6C757D;
    font-weight: 500;
}

.recent-activity[b-crrldh0sft] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.activity-header[b-crrldh0sft] {
    padding: 25px;
    border-bottom: 1px solid #E9ECEF;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.activity-title[b-crrldh0sft] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    display: flex;
    align-items: center;
    gap: 10px;
}

.activity-list[b-crrldh0sft] {
    padding: 0 25px 25px;
}

.activity-item[b-crrldh0sft] {
    display: flex;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #F8F9FA;
}

.activity-item:last-child[b-crrldh0sft] {
    border-bottom: none;
}

.activity-avatar[b-crrldh0sft] {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: rgba(46, 134, 171, 0.10);
    border: 1px solid rgba(46, 134, 171, 0.18);
    color: #2e86ab;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    margin-right: 12px;
    font-size: 0.6875rem;
    flex-shrink: 0;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.activity-content[b-crrldh0sft] {
    flex: 1;
}
.activity-user-action[b-crrldh0sft]{
    display: flex;
    gap: 5px;
    margin-bottom: 3px;
    align-items: baseline;
}

.activity-user[b-crrldh0sft] {
    font-weight: bold;
    color: #2c3e50;
    font-size: 0.9rem;
}

.activity-text[b-crrldh0sft] {
    font-size: 0.9rem;
    color: #495057;
}

.activity-time[b-crrldh0sft] {
    font-size: 0.8rem;
    color: #6C757D;
}

@media (max-width: 1200px) {
    .dashboard-grid[b-crrldh0sft] {
        grid-template-columns: 1fr;
    }

    .alerts-section[b-crrldh0sft] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .main-content[b-crrldh0sft] {
        margin-left: 0;
    }

    .sidebar[b-crrldh0sft] {
        transform: translateX(-100%);
    }

    .quick-stats[b-crrldh0sft] {
        grid-template-columns: 1fr;
    }

    .stats-grid[b-crrldh0sft] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/InsurancePages/InsurancePage.razor.rz.scp.css */

.patients-section[b-5ayc83bp6v] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.patients-header[b-5ayc83bp6v] {
    padding: 25px;
    border-bottom: 1px solid #E9ECEF;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.patients-title[b-5ayc83bp6v] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    display: flex;
    align-items: center;
    gap: 10px;
}

.view-toggle[b-5ayc83bp6v] {
    display: flex;
    gap: 5px;
    background: #F8F9FA;
    border-radius: 8px;
    padding: 5px;
}

.view-btn[b-5ayc83bp6v] {
    padding: 8px 12px;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: #6C757D;
    cursor: pointer;
    transition: all 0.3s ease;
}

    .view-btn.active[b-5ayc83bp6v] {
        background: white;
        color: #2E86AB;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    }

.patients-table[b-5ayc83bp6v] {
    width: 100%;
    border-collapse: collapse;
}

    .patients-table th[b-5ayc83bp6v] {
        background: #F8F9FA;
        padding: 15px 20px;
        text-align: left;
        font-weight: 600;
        color: #495057;
        font-size: 0.9rem;
        border-bottom: 1px solid #E9ECEF;
    }

    .patients-table td[b-5ayc83bp6v] {
        padding: 15px 20px;
        border-bottom: 1px solid #F8F9FA;
        font-size: 0.9rem;
    }

    .patients-table tr:hover[b-5ayc83bp6v] {
        background: #F8F9FA;
    }

.patient-avatar[b-5ayc83bp6v] {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    margin-right: 12px;
}

.patient-info[b-5ayc83bp6v] {
    display: flex;
    align-items: center;
}

.patient-details[b-5ayc83bp6v] {
    display: flex;
    flex-direction: column;
}

.patient-name[b-5ayc83bp6v] {
    font-weight: 600;
    color: #495057;
    margin-bottom: 2px;
}

.patient-id[b-5ayc83bp6v] {
    font-size: 0.8rem;
    color: #6C757D;
}

.action-buttons[b-5ayc83bp6v] {
    display: flex;
    gap: 8px;
}

.action-btn[b-5ayc83bp6v] {
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
}

    .action-btn.view[b-5ayc83bp6v] {
        background: #E3F2FD;
        color: #2E86AB;
    }

    .action-btn.edit[b-5ayc83bp6v] {
        background: #FFF3E0;
        color: #F57C00;
    }

    .action-btn.schedule[b-5ayc83bp6v] {
        background: #E8F5E8;
        color: #28A745;
    }

    .action-btn:hover[b-5ayc83bp6v] {
        transform: translateY(-2px);
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
    }

.patients-grid[b-5ayc83bp6v] {
    display: none;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    padding: 25px;
}

    .patients-grid.active[b-5ayc83bp6v] {
        display: grid;
    }

.patient-card[b-5ayc83bp6v] {
    background: white;
    border: 1px solid #E9ECEF;
    border-radius: 12px;
    padding: 20px;
    transition: all 0.3s ease;
    cursor: pointer;
}

    .patient-card:hover[b-5ayc83bp6v] {
        transform: translateY(-5px);
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
        border-color: #2E86AB;
    }

.card-header[b-5ayc83bp6v] {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.card-avatar[b-5ayc83bp6v] {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1.1rem;
    margin-right: 15px;
}

.card-info[b-5ayc83bp6v] {
    flex: 1;
}

.card-name[b-5ayc83bp6v] {
    font-weight: 600;
    color: #495057;
    margin-bottom: 3px;
}

.card-id[b-5ayc83bp6v] {
    font-size: 0.8rem;
    color: #6C757D;
}

.card-details[b-5ayc83bp6v] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 15px;
}

.card-detail[b-5ayc83bp6v] {
    font-size: 0.8rem;
}

.card-detail-label[b-5ayc83bp6v] {
    color: #6C757D;
    margin-bottom: 2px;
}

.card-detail-value[b-5ayc83bp6v] {
    color: #495057;
    font-weight: 500;
}

.card-actions[b-5ayc83bp6v] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.no-results[b-5ayc83bp6v] {
    padding: 2rem;
    text-align: center;
    margin: 2rem auto;
    border-radius: 8px;
    background-color: #f8f9fa;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    border: 1px solid #e9ecef;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

    .no-results i[b-5ayc83bp6v] {
        font-size: 2.5rem;
        color: #6c757d;
        margin-bottom: 0.5rem;
    }

    .no-results span[b-5ayc83bp6v] {
        font-size: 1.1rem;
        color: #495057;
    }

    .no-results .search-term[b-5ayc83bp6v] {
        font-weight: 600;
        color: #212529;
        background-color: #e9ecef;
        padding: 0.25rem 0.5rem;
        border-radius: 4px;
        display: inline-block;
        margin: 0 0.25rem;
    }

    .no-results .suggestion[b-5ayc83bp6v] {
        font-size: 0.95rem;
        color: #6c757d;
        margin-top: 0.5rem;
    }


@media (max-width: 768px) {
    .stats-section[b-5ayc83bp6v] {
        grid-template-columns: repeat(2, 1fr);
    }

    .patients-table[b-5ayc83bp6v] {
        font-size: 0.8rem;
    }

        .patients-table th[b-5ayc83bp6v],
        .patients-table td[b-5ayc83bp6v] {
            padding: 10px 15px;
        }
}

.empty-state[b-5ayc83bp6v] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    color: #9E9E9E;
    gap: 12px;
    text-align: center;
}

.empty-state i[b-5ayc83bp6v] {
    font-size: 3rem;
    color: #DEE2E6;
}

.empty-state h3[b-5ayc83bp6v] {
    margin: 0;
    font-size: 1.1rem;
    color: #6C757D;
}

.empty-state p[b-5ayc83bp6v] {
    margin: 0;
    font-size: 0.88rem;
}

.convenios-section[b-5ayc83bp6v] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.section-header[b-5ayc83bp6v] {
    padding: 25px;
    border-bottom: 1px solid #E9ECEF;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.section-title[b-5ayc83bp6v] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    display: flex;
    align-items: center;
    gap: 10px;
}

.convenios-table[b-5ayc83bp6v] {
    width: 100%;
    border-collapse: collapse;
}

    .convenios-table th[b-5ayc83bp6v] {
        background: #F8F9FA;
        padding: 15px;
        text-align: left;
        font-weight: 600;
        color: #495057;
        border-bottom: 1px solid #E9ECEF;
    }

    .convenios-table td[b-5ayc83bp6v] {
        padding: 15px;
        border-bottom: 1px solid #E9ECEF;
        vertical-align: middle;
    }

    .convenios-table tr:hover[b-5ayc83bp6v] {
        background: #F8F9FA;
    }


/* Specialty Badge */
.specialty-badge[b-5ayc83bp6v] {
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 0.7rem;
    font-weight: 500;
    background: #E3F2FD;
    color: #1976D2;
    margin: 2px;
    display: inline-block;
}

/* Action Buttons */
.action-buttons[b-5ayc83bp6v] {
    display: flex;
    gap: 8px;
}

.btn-sm[b-5ayc83bp6v] {
    padding: 8px 12px;
    font-size: 0.8rem;
}


/* Responsive */
@media (max-width: 768px) {
    .sidebar[b-5ayc83bp6v] {
        transform: translateX(-100%);
        transition: transform 0.3s ease;
    }

        .sidebar.open[b-5ayc83bp6v] {
            transform: translateX(0);
        }

    .main-content[b-5ayc83bp6v] {
        margin-left: 0;
    }

    .header[b-5ayc83bp6v] {
        padding: 15px 20px;
    }

    .content[b-5ayc83bp6v] {
        padding: 20px;
    }

    .stats-grid[b-5ayc83bp6v] {
        grid-template-columns: 1fr;
    }

    .convenios-table[b-5ayc83bp6v] {
        font-size: 0.8rem;
    }

        .convenios-table th[b-5ayc83bp6v],
        .convenios-table td[b-5ayc83bp6v] {
            padding: 10px 8px;
        }

    .action-buttons[b-5ayc83bp6v] {
        flex-direction: column;
    }
}

/* /Pages/LoginPages/ForgotPasswordPage.razor.rz.scp.css */
/* Reuses login-page / login-card / login-* from LoginPage.razor.css via global scope */

.forgot-desc[b-lsgk14ea5x] {
    font-size: 0.88rem;
    color: #64748b;
    margin: 0 0 24px;
    line-height: 1.55;
    text-align-last: center;
}

.sent-box[b-lsgk14ea5x] {
    text-align: center;
    padding: 8px 0 16px;
}

.sent-icon[b-lsgk14ea5x] {
    font-size: 2.2rem;
    color: #2E86AB;
    margin-bottom: 14px;
}

.sent-title[b-lsgk14ea5x] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0D2B38;
    margin: 0 0 10px;
}

.sent-desc[b-lsgk14ea5x] {
    font-size: 0.86rem;
    color: #64748b;
    line-height: 1.6;
    margin: 0;
}
/* /Pages/LoginPages/LoginPage.razor.rz.scp.css */
/* Styles moved to wwwroot/css/login.css (shared with ForgotPassword and ResetPassword pages) */
/* /Pages/LoginPages/ResetPasswordPage.razor.rz.scp.css */
/* Inherits login-page / login-card / login-* from global scope + LoginPage.razor.css */

.forgot-desc[b-tyjdy9ocrw] {
    font-size: 0.88rem;
    color: #64748b;
    margin: 0 0 24px;
    line-height: 1.55;
}

.sent-box[b-tyjdy9ocrw] {
    text-align: center;
    padding: 8px 0 16px;
}

.sent-icon[b-tyjdy9ocrw] {
    font-size: 2.2rem;
    color: #2E86AB;
    margin-bottom: 14px;
}

.sent-title[b-tyjdy9ocrw] {
    font-size: 1.05rem;
    font-weight: 700;
    color: #0D2B38;
    margin: 0 0 10px;
}

.sent-desc[b-tyjdy9ocrw] {
    font-size: 0.86rem;
    color: #64748b;
    line-height: 1.6;
    margin: 0;
}
/* /Pages/PatientsPages/ClinicalRecordsPage.razor.rz.scp.css */
.custom-header-left[b-gaufdwwijt]{
    color: #2E86AB;
    letter-spacing: -2.4px;
    font-weight: bold;
}
.patient-info[b-gaufdwwijt] {
    background: #E3F2FD;
    padding: 10px 15px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.patient-avatar[b-gaufdwwijt] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #2E86AB;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 600;
}

.patient-details h3[b-gaufdwwijt] {
    color: #2E86AB;
    font-size: 1rem;
    margin-bottom: 2px;
}

.patient-details p[b-gaufdwwijt] {
    color: #6C757D;
    font-size: 0.85rem;
}

.prontuario-container[b-gaufdwwijt] {
    display: grid;
    grid-template-columns: 1fr 350px;
    gap: 15px;
}

.prontuario-main[b-gaufdwwijt] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    align-self: start;
}

.prontuario-tabs[b-gaufdwwijt] {
    display: flex;
    background: #F8F9FA;
    border-bottom: 1px solid #E9ECEF;
}

.tab-btn[b-gaufdwwijt] {
    flex: 1;
    padding: 15px 20px;
    background: none;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: 500;
    color: #6C757D;
}

.tab-btn.active[b-gaufdwwijt] {
    background: white;
    color: #2E86AB;
    border-bottom: 3px solid #2E86AB;
}

.tab-content[b-gaufdwwijt] {
    padding: 30px;
    display: none;
}

.tab-content.active[b-gaufdwwijt] {
    display: block;
}

.form-section[b-gaufdwwijt] {
    margin-bottom: 30px;
}

.section-title[b-gaufdwwijt] {
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.form-grid[b-gaufdwwijt] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.form-group[b-gaufdwwijt] {
    margin-bottom: 20px;
}

.form-label[b-gaufdwwijt] {
    display: block;
    margin-bottom: 8px;
    color: #495057;
    font-weight: 500;
    font-size: 0.9rem;
}

.form-control[b-gaufdwwijt] {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.form-control:focus[b-gaufdwwijt] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.vital-signs-quick[b-gaufdwwijt] {
    display: flex;
    gap: 15px;
    margin-left: auto;
}

.vital-sign[b-gaufdwwijt] {
    text-align: center;
    padding: 10px;
    background: #F8F9FA;
    border-radius: 8px;
    min-width: 80px;
}

.vital-sign .value[b-gaufdwwijt] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2E86AB;
}

.vital-sign .label[b-gaufdwwijt] {
    font-size: 0.7rem;
    color: #6C757D;
    margin-top: 3px;
}

.sidebar-right[b-gaufdwwijt] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.info-card[b-gaufdwwijt] {
    background: white;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* Títulos genéricos (ex: Histórico de Consultas — h3 direto no card) */
.info-card h3[b-gaufdwwijt] {
    color: #2E86AB;
    font-size: 1rem;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
}

/* Header estilo qa-card (Alergias + Medicações Atuais) */
.info-card-title[b-gaufdwwijt] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: -20px -20px 16px -20px;
    padding: 14px 20px;
    border-bottom: 1px solid #F0F4F7;
}

.info-card-title h3[b-gaufdwwijt] {
    font-size: 0.8rem;
    font-weight: 700;
    color: #1A5F7A;
    text-transform: uppercase;
    letter-spacing: 0.7px;
    margin: 0;
}

.info-card-title h3 i[b-gaufdwwijt] {
    color: #F59E0B;
    font-size: 0.85rem;
}

.history-item[b-gaufdwwijt] {
    padding: 12px 0;
    border-bottom: 1px solid #F1F3F4;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.history-item:last-child[b-gaufdwwijt] {
    border-bottom: none;
}

.history-date[b-gaufdwwijt] {
    font-size: 0.8rem;
    color: #6C757D;
}

.history-type[b-gaufdwwijt] {
    font-weight: bold;
    color: #495057;
}

.allergy-item[b-gaufdwwijt] {
    background: rgb(253 234 232);
    border: none;
    color: #856404;
    padding: 8px 12px;
    border-radius: 6px;
    margin-bottom: 8px;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.medication-item[b-gaufdwwijt] {
    background: #E8F5E8;
    border: none;
    color: #2E7D32;
    padding: 8px 12px;
    border-radius: 6px;
    margin-bottom: 8px;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
}

.medication-item.Discontinued[b-gaufdwwijt]{
    background: #eeee;
    color: #808080;
}

/* Patient Info Bar */
.patient-info-bar[b-gaufdwwijt] {
    padding: 20px 25px;
    border-bottom: 1px solid #E9ECEF;
    display: flex;
    align-items: center;
    gap: 20px;
}

.patient-avatar-large[b-gaufdwwijt] {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #2E86AB;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.8rem;
    font-weight: 600;
}

.patient-basic-info h2[b-gaufdwwijt] {
    margin-bottom: 8px;
    letter-spacing: -2.4px;
}

.patient-basic-info p[b-gaufdwwijt] {
    color: #6C757D;
    font-size: 0.9rem;
    margin-bottom: 3px;
}


/* Session Timer */
.session-timer[b-gaufdwwijt] {
    background: white;
    padding: 20px;
    border-radius: 12px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    text-align: center;
}

.timer-display[b-gaufdwwijt] {
    font-size: 2rem;
    font-weight: 700;
    color: #2E86AB;
    margin-bottom: 10px;
}

.timer-label[b-gaufdwwijt] {
    font-size: 0.9rem;
    color: #6C757D;
}

.timer-controls[b-gaufdwwijt] {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-top: 15px;
}

/* ── Ações Rápidas ─────────────────────────────────────────────── */
.qa-card[b-gaufdwwijt] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    overflow: hidden;
}

.qa-header[b-gaufdwwijt] {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 14px 20px 13px;
    border-bottom: 1px solid #F0F4F7;
    font-size: 0.8rem;
    font-weight: 700;
    color: #1A5F7A;
    text-transform: uppercase;
    letter-spacing: 0.7px;
}

.qa-header > i[b-gaufdwwijt] {
    color: #F59E0B;
    font-size: 0.85rem;
}

.qa-section[b-gaufdwwijt] {
    padding: 14px 16px 10px;
}

.qa-section-label[b-gaufdwwijt] {
    display: block;
    font-size: 0.67rem;
    font-weight: 700;
    color: #ADB5BD;
    text-transform: uppercase;
    letter-spacing: 0.9px;
    margin-bottom: 9px;
}

.qa-grid-2[b-gaufdwwijt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.qa-btn[b-gaufdwwijt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 14px 6px;
    border-radius: 12px;
    border: 1.5px solid transparent;
    cursor: pointer;
    font-size: 0.76rem;
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    transition: all 0.18s ease;
    background: none;
}

.qa-btn i[b-gaufdwwijt] {
    font-size: 1.2rem;
}

.qa-btn:active[b-gaufdwwijt] {
    transform: scale(0.96) !important;
}

.qa-btn--doc[b-gaufdwwijt] {
    background: #EBF4FB;
    color: #1A5F7A;
    border-color: #C4DFEE;
}

.qa-btn--doc:hover[b-gaufdwwijt] {
    background: #D0E9F5;
    border-color: #2E86AB;
    box-shadow: 0 4px 14px rgba(46,134,171,0.18);
    transform: translateY(-2px);
}

.qa-btn--stock[b-gaufdwwijt] {
    width: 100%;
    flex-direction: row;
    justify-content: flex-start;
    padding: 11px 14px;
    gap: 12px;
    background: #FFF8ED;
    color: #92400E;
    border-color: #FDE68A;
    font-size: 0.82rem;
}

.qa-btn--stock:hover[b-gaufdwwijt] {
    background: #FEF3C7;
    border-color: #F59E0B;
    box-shadow: 0 4px 12px rgba(245,158,11,0.15);
    transform: translateY(-1px);
}

.qa-btn--stock i[b-gaufdwwijt] {
    font-size: 1rem;
}

.qa-stock-badge[b-gaufdwwijt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #F59E0B;
    color: #fff;
    border-radius: 50%;
    font-size: 0.68rem;
    font-weight: 700;
    width: 18px;
    height: 18px;
    margin-left: 5px;
    vertical-align: middle;
}

.qa-btn--schedule[b-gaufdwwijt] {
    width: 100%;
    flex-direction: row;
    justify-content: flex-start;
    padding: 11px 14px;
    gap: 12px;
    background: #F0FFF4;
    color: #166534;
    border-color: #BBF7D0;
    font-size: 0.82rem;
}

.qa-btn--schedule:hover[b-gaufdwwijt] {
    background: #DCFCE7;
    border-color: #4ADE80;
    box-shadow: 0 4px 12px rgba(22,101,52,0.12);
    transform: translateY(-1px);
}

.qa-btn--schedule i[b-gaufdwwijt] {
    font-size: 1rem;
}

.qa-divider[b-gaufdwwijt] {
    height: 1px;
    background: linear-gradient(to right, transparent, #E9ECEF 20%, #E9ECEF 80%, transparent);
    margin: 2px 16px 0;
}

.qa-finish-btn[b-gaufdwwijt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    width: 100%;
    padding: 20px;
    background: linear-gradient(135deg, #1A5F7A 0%, #2E86AB 100%);
    color: white;
    border: none;
    cursor: pointer;
    transition: filter 0.2s;
    margin-top: 6px;
}

.qa-finish-btn:hover[b-gaufdwwijt] {
    filter: brightness(1.1);
}

.qa-finish-btn:active[b-gaufdwwijt] {
    filter: brightness(0.93);
}

.qa-finish-btn > i[b-gaufdwwijt] {
    font-size: 1.4rem;
    margin-bottom: 2px;
}

.qa-finish-label[b-gaufdwwijt] {
    font-size: 0.92rem;
    font-weight: 700;
    letter-spacing: 0.2px;
}

.qa-finish-sub[b-gaufdwwijt] {
    font-size: 0.71rem;
    font-weight: 400;
    opacity: 0.72;
}

/* Input */
input[b-gaufdwwijt] {
    width: 80px;
    justify-items: center;
}

@media (max-width: 768px) {
    .main-content[b-gaufdwwijt] {
        margin-left: 0;
    }

    .sidebar[b-gaufdwwijt] {
        transform: translateX(-100%);
    }

    .prontuario-container[b-gaufdwwijt] {
        grid-template-columns: 1fr;
    }

    .header-left[b-gaufdwwijt] {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
}
/* /Pages/PatientsPages/ClinicalRecordTabs/AnamneseContentTab.razor.rz.scp.css */

.section-title[b-s90gcf6mae] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.form-section[b-s90gcf6mae] {
    margin-bottom: 30px;
}

.form-control[b-s90gcf6mae] {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.form-control:focus[b-s90gcf6mae] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.vital-signs[b-s90gcf6mae] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 15px;
    background: #F8F9FA;
    padding: 20px;
    border-radius: 12px;
}

.vital-item[b-s90gcf6mae] {
    text-align: center;
}

.vital-value[b-s90gcf6mae] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #2E86AB;
    margin-bottom: 5px;
    width: 85px;
    justify-items: center;
}

.vital-pressure[b-s90gcf6mae] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    flex-direction: row;
}

.vital-label[b-s90gcf6mae] {
    font-size: 0.8rem;
    color: #6C757D;
}

/* /Pages/PatientsPages/ClinicalRecordTabs/DiagnosesContentTab.razor.rz.scp.css */
.section-title[b-4higbmyykz] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}
/* /Pages/PatientsPages/ClinicalRecordTabs/ExamContentTab.razor.rz.scp.css */
.section-title[b-2zqwu3ibnm] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}
.form-section[b-2zqwu3ibnm] {
    margin-bottom: 30px;
}
/* /Pages/PatientsPages/ClinicalRecordTabs/PrescriptionsContentTab.razor.rz.scp.css */
/* ── Seção e cabeçalho ─────────────────────────────────────────── */
.prescription-section[b-fi0bgirpdh] {
    padding-top: 4px;
}

/* ── Botão de adição ao final da seção ─────────────────────────── */
.section-add-btn[b-fi0bgirpdh] {
    display: flex;
    justify-content: flex-end;
    padding: 12px 0 4px;
}

/* ── Seção de Atestados ─────────────────────────────────────────── */
.cert-section-header[b-fi0bgirpdh] {
    margin-top: 32px;
    padding-top: 24px;
    border-top: 2px solid #E9ECEF;
}

.cert-section[b-fi0bgirpdh] {
    padding-top: 4px;
}

/* Sobrescreve o cabeçalho do pres-card para paleta roxa */
.cert-card .cert-card-head[b-fi0bgirpdh] {
    background: linear-gradient(135deg, #F5F0FA, #EDE7F6);
    border-bottom-color: #DDD0F0;
}

.cert-card--unsaved[b-fi0bgirpdh] {
    border-color: #7B1FA2 !important;
    box-shadow: 0 0 0 3px rgba(123, 31, 162, 0.1) !important;
}

.cert-num[b-fi0bgirpdh] {
    font-weight: 700;
    font-size: 0.85rem;
    color: #6A1B9A;
    display: flex;
    align-items: center;
    gap: 6px;
}

.cert-date[b-fi0bgirpdh]::before {
    content: '·';
    color: #CED4DA;
    margin-right: -4px;
}

.cert-days-badge[b-fi0bgirpdh] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    background: #EDE7F6;
    color: #6A1B9A;
}

.cert-cid-badge[b-fi0bgirpdh] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    background: #F3E5F5;
    color: #4527A0;
}

/* ── Corpo do atestado ──────────────────────────────────────────── */
.cert-body[b-fi0bgirpdh] {
    padding: 14px 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.cert-period-row[b-fi0bgirpdh] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.85rem;
    color: #495057;
}

.cert-period-row > i[b-fi0bgirpdh] {
    color: #6A1B9A;
    font-size: 0.85rem;
    flex-shrink: 0;
}

.cert-period-label[b-fi0bgirpdh] {
    font-weight: 700;
    color: #6A1B9A;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.cert-period-value[b-fi0bgirpdh] {
    font-weight: 600;
    color: #212529;
}

.cert-detail-row[b-fi0bgirpdh] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding-top: 6px;
    border-top: 1px dashed #F0F0F0;
}

.cert-detail-row > i[b-fi0bgirpdh] {
    color: #7B1FA2;
    font-size: 0.85rem;
    flex-shrink: 0;
    margin-top: 3px;
}

.cert-detail-label[b-fi0bgirpdh] {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #7B1FA2;
    margin-bottom: 3px;
}

.cert-detail-text[b-fi0bgirpdh] {
    display: block;
    font-size: 0.88rem;
    color: #333;
    line-height: 1.5;
}

/* ── Rodapé de observações (espelha pres-instructions) ──────────── */
.cert-obs-footer[b-fi0bgirpdh] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 13px 18px;
    background: #F5F0FA;
    border-top: 1px solid #DDD0F0;
}

.cert-obs-footer > i[b-fi0bgirpdh] {
    font-size: 1rem;
    color: #7B1FA2;
    flex-shrink: 0;
    margin-top: 3px;
}

.cert-obs-label[b-fi0bgirpdh] {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #6A1B9A;
    margin-bottom: 4px;
}

.cert-obs-text[b-fi0bgirpdh] {
    display: block;
    font-size: 0.85rem;
    color: #4A148C;
    line-height: 1.55;
}

.prescription-header[b-fi0bgirpdh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.section-title[b-fi0bgirpdh] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* ── Estado vazio ──────────────────────────────────────────────── */
.pres-empty[b-fi0bgirpdh] {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 28px 24px;
    background: #F8F9FA;
    border: 1.5px dashed #DEE2E6;
    border-radius: 12px;
}

.pres-empty-icon[b-fi0bgirpdh] {
    font-size: 2rem;
    color: #CED4DA;
    flex-shrink: 0;
}

.pres-empty-title[b-fi0bgirpdh] {
    display: block;
    font-weight: 600;
    font-size: 0.9rem;
    color: #6C757D;
}

.pres-empty-sub[b-fi0bgirpdh] {
    display: block;
    font-size: 0.8rem;
    color: #ADB5BD;
    margin-top: 3px;
}

/* ── Card de prescrição ────────────────────────────────────────── */
.pres-card[b-fi0bgirpdh] {
    background: white;
    border: 1.5px solid #E9ECEF;
    border-radius: 14px;
    margin-bottom: 16px;
    overflow: hidden;
    transition: box-shadow 0.18s;
}

.pres-card:hover[b-fi0bgirpdh] {
    box-shadow: 0 4px 18px rgba(0,0,0,0.07);
}

.pres-card--unsaved[b-fi0bgirpdh] {
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46,134,171,0.1);
}

/* ── Cabeçalho do card ─────────────────────────────────────────── */
.pres-card-head[b-fi0bgirpdh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 13px 18px;
    background: linear-gradient(135deg, #F8FAFB, #EEF4F8);
    border-bottom: 1px solid #E4EBF0;
    gap: 12px;
    flex-wrap: wrap;
}

.pres-card-meta[b-fi0bgirpdh] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.pres-card-num[b-fi0bgirpdh] {
    font-weight: 700;
    font-size: 0.85rem;
    color: #1A5F7A;
    display: flex;
    align-items: center;
    gap: 6px;
}

.pres-card-date[b-fi0bgirpdh] {
    font-size: 0.8rem;
    color: #6C757D;
    display: flex;
    align-items: center;
    gap: 5px;
}

.pres-card-date[b-fi0bgirpdh]::before {
    content: '·';
    color: #CED4DA;
    margin-right: -4px;
}

/* ── Badge de validade ─────────────────────────────────────────── */
.pres-validity[b-fi0bgirpdh] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.pres-validity--active[b-fi0bgirpdh] {
    background: #E8F5E9;
    color: #2E7D32;
}

.pres-validity--expired[b-fi0bgirpdh] {
    background: #FEECEB;
    color: #C62828;
}

.pres-unsaved-badge[b-fi0bgirpdh] {
    display: inline-flex;
    align-items: center;
    padding: 2px 9px;
    background: #FFF3E0;
    color: #E65100;
    border: 1px solid #FFCC80;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 600;
}

/* ── Ações do card ─────────────────────────────────────────────── */
.pres-card-actions[b-fi0bgirpdh] {
    display: flex;
    gap: 7px;
    align-items: center;
    flex-shrink: 0;
}

.pres-btn[b-fi0bgirpdh] {
    padding: 5px 13px;
    border-radius: 8px;
    font-size: 0.77rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: background 0.15s, transform 0.12s;
    border: 1.5px solid transparent;
    white-space: nowrap;
}

.pres-btn:hover[b-fi0bgirpdh] {
    transform: translateY(-1px);
}

.pres-btn--edit[b-fi0bgirpdh] {
    background: #FFF3E0;
    color: #E65100;
    border-color: #FFCC80;
}

.pres-btn--edit:hover[b-fi0bgirpdh] {
    background: #FFE0B2;
}

.pres-btn--print[b-fi0bgirpdh] {
    background: #EBF4FB;
    color: #1A6E96;
    border-color: #BEE0F0;
}

.pres-btn--print:hover[b-fi0bgirpdh] {
    background: #D4EAF7;
}

.pres-btn--remove[b-fi0bgirpdh] {
    background: #FDECEA;
    color: #C62828;
    border-color: #FFCDD2;
}

.pres-btn--remove:hover[b-fi0bgirpdh] {
    background: #FFCDD2;
}

/* ── Lista de medicamentos ─────────────────────────────────────── */
.pres-med-list[b-fi0bgirpdh] {
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.pres-med-row[b-fi0bgirpdh] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.pres-med-num[b-fi0bgirpdh] {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB, #1A5F7A);
    color: white;
    font-size: 0.7rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 1px;
}

.pres-med-body[b-fi0bgirpdh] {
    flex: 1;
    min-width: 0;
}

.pres-med-name[b-fi0bgirpdh] {
    font-weight: 600;
    font-size: 0.92rem;
    color: #212529;
    margin-bottom: 7px;
    line-height: 1.3;
}

.pres-med-tags[b-fi0bgirpdh] {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

/* ── Tags coloridas ────────────────────────────────────────────── */
.pres-tag[b-fi0bgirpdh] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.74rem;
    font-weight: 500;
    line-height: 1.4;
}

.pres-tag--dose[b-fi0bgirpdh] {
    background: #EBF4FB;
    color: #1565C0;
}

.pres-tag--freq[b-fi0bgirpdh] {
    background: #E8F5E9;
    color: #1B5E20;
}

.pres-tag--dur[b-fi0bgirpdh] {
    background: #FFF3E0;
    color: #E65100;
}

.pres-tag--qty[b-fi0bgirpdh] {
    background: #F3E5F5;
    color: #6A1B9A;
}

/* ── Separador entre medicamentos (exceto o último) ────────────── */
.pres-med-row:not(:last-child)[b-fi0bgirpdh] {
    padding-bottom: 14px;
    border-bottom: 1px dashed #F0F0F0;
}

/* ── Orientações ───────────────────────────────────────────────── */
.pres-instructions[b-fi0bgirpdh] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 13px 18px;
    background: #FFFDE7;
    border-top: 1px solid #FFF9C4;
}

.pres-instructions > i[b-fi0bgirpdh] {
    font-size: 1rem;
    color: #F9A825;
    flex-shrink: 0;
    margin-top: 3px;
}

.pres-instructions-label[b-fi0bgirpdh] {
    display: block;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: #795548;
    margin-bottom: 4px;
}

.pres-instructions-text[b-fi0bgirpdh] {
    display: block;
    font-size: 0.85rem;
    color: #4E342E;
    line-height: 1.55;
}
/* /Pages/PatientsPages/PatientCarePage.razor.rz.scp.css */
.consultation-status[b-4kutwv3z12] {
    background: linear-gradient(135deg, #28A745, #20c997);
    color: white;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 8px;
}

.consultation-timer[b-4kutwv3z12] {
    background: #E3F2FD;
    color: #2E86AB;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.9rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
}

.btn-primary[b-4kutwv3z12] {
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
}

.btn-outline[b-4kutwv3z12] {
    background: white;
    color: #2E86AB;
    border: 2px solid #2E86AB;
}

.btn-danger[b-4kutwv3z12] {
    background: linear-gradient(135deg, #DC3545, #c82333);
    color: white;
}

.btn:hover[b-4kutwv3z12] {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(46, 134, 171, 0.3);
}

.content[b-4kutwv3z12] {
    padding: 30px;
}

.consultation-layout[b-4kutwv3z12] {
    display: grid;
    grid-template-columns: 350px 1fr 300px;
    gap: 30px;
    height: calc(100vh - 140px);
}

.patient-panel[b-4kutwv3z12] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.patient-header[b-4kutwv3z12] {
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    padding: 25px;
    text-align: center;
}

.patient-avatar[b-4kutwv3z12] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 700;
    margin: 0 auto 15px;
}

.patient-name[b-4kutwv3z12] {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 5px;
}

.patient-info[b-4kutwv3z12] {
    font-size: 0.9rem;
    opacity: 0.9;
}

.patient-details[b-4kutwv3z12] {
    padding: 25px;
    flex: 1;
    overflow-y: auto;
}

.detail-section[b-4kutwv3z12] {
    margin-bottom: 25px;
}

.detail-title[b-4kutwv3z12] {
    font-size: 1rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.detail-item[b-4kutwv3z12] {
    background: #F8F9FA;
    padding: 12px 15px;
    border-radius: 8px;
    margin-bottom: 8px;
    font-size: 0.9rem;
}

.detail-label[b-4kutwv3z12] {
    font-weight: 500;
    color: #6C757D;
    margin-bottom: 3px;
}

.detail-value[b-4kutwv3z12] {
    color: #495057;
}

.alert-item[b-4kutwv3z12] {
    background: #FFF3CD;
    color: #856404;
    padding: 10px 15px;
    border-radius: 8px;
    margin-bottom: 8px;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 8px;
}

.consultation-main[b-4kutwv3z12] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-self: start;
}

.consultation-tabs[b-4kutwv3z12] {
    display: flex;
    background: #F8F9FA;
    border-bottom: 1px solid #E9ECEF;
}

.tab-btn[b-4kutwv3z12] {
    flex: 1;
    padding: 15px 20px;
    background: none;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: 500;
    color: #6C757D;
    position: relative;
}

.tab-btn.active[b-4kutwv3z12] {
    background: white;
    color: #2E86AB;
    border-bottom: 3px solid #2E86AB;
}

.tab-content[b-4kutwv3z12] {
    padding: 25px;
    display: none;
}

.tab-content.active[b-4kutwv3z12] {
    display: block;
}

.form-section[b-4kutwv3z12] {
    margin-bottom: 25px;
}

.section-title[b-4kutwv3z12] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.form-group[b-4kutwv3z12] {
    margin-bottom: 20px;
}

.form-label[b-4kutwv3z12] {
    display: block;
    margin-bottom: 8px;
    color: #495057;
    font-weight: 500;
    font-size: 0.9rem;
}

.form-control[b-4kutwv3z12] {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    resize: vertical;
}

.form-control:focus[b-4kutwv3z12] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.form-row[b-4kutwv3z12] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.vital-signs-grid[b-4kutwv3z12] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 15px;
    background: #F8F9FA;
    padding: 20px;
    border-radius: 12px;
}

.vital-item[b-4kutwv3z12] {
    text-align: center;
    background: white;
    padding: 15px;
    border-radius: 8px;
    border: 1px solid #E9ECEF;
}

.vital-input[b-4kutwv3z12] {
    width: 100%;
    text-align: center;
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    border: none;
    background: transparent;
    margin-bottom: 5px;
}

.vital-label[b-4kutwv3z12] {
    font-size: 0.8rem;
    color: #6C757D;
    font-weight: 500;
}

.actions-panel[b-4kutwv3z12] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 25px;
    height: fit-content;
}

.actions-title[b-4kutwv3z12] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.action-btn[b-4kutwv3z12] {
    width: 100%;
    padding: 15px 20px;
    margin-bottom: 12px;
    border: 2px solid #E9ECEF;
    border-radius: 12px;
    background: white;
    color: #495057;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 12px;
}

.action-btn:hover[b-4kutwv3z12] {
    border-color: #2E86AB;
    background: #E3F2FD;
    color: #2E86AB;
    transform: translateY(-2px);
}

.action-btn.primary[b-4kutwv3z12] {
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    border-color: transparent;
}

.action-btn.primary:hover[b-4kutwv3z12] {
    background: linear-gradient(135deg, #1a5f7a, #1e7e34);
    transform: translateY(-2px);
}

.quick-notes[b-4kutwv3z12] {
    margin-top: 25px;
}

.notes-textarea[b-4kutwv3z12] {
    width: 100%;
    min-height: 120px;
    padding: 15px;
    border: 1px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    resize: vertical;
}

.prescription-quick[b-4kutwv3z12] {
    background: #F8F9FA;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 15px;
}

.prescription-item[b-4kutwv3z12] {
    background: white;
    padding: 12px;
    border-radius: 6px;
    margin-bottom: 8px;
    border-left: 3px solid #28A745;
    font-size: 0.9rem;
}

.medication-name[b-4kutwv3z12] {
    font-weight: 600;
    color: #495057;
    margin-bottom: 3px;
}

.medication-dosage[b-4kutwv3z12] {
    color: #6C757D;
    font-size: 0.85rem;
}

.timer-display[b-4kutwv3z12] {
    font-family: 'Courier New', monospace;
    font-size: 1.1rem;
    font-weight: 600;
}

.status-indicator[b-4kutwv3z12] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #28A745;
    animation: pulse-b-4kutwv3z12 2s infinite;
}

@keyframes pulse-b-4kutwv3z12 {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }

    100% {
        opacity: 1;
    }
}

.modal[b-4kutwv3z12] {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 2000;
    align-items: center;
    justify-content: center;
}

.modal.show[b-4kutwv3z12] {
    display: flex;
}

.modal-content[b-4kutwv3z12] {
    background: white;
    border-radius: 16px;
    padding: 30px;
    width: 90%;
    max-width: 600px;
    max-height: 90vh;
    overflow-y: auto;
}

.modal-header[b-4kutwv3z12] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
}

.modal-title[b-4kutwv3z12] {
    font-size: 1.3rem;
    font-weight: 600;
    color: #2E86AB;
}

.close-btn[b-4kutwv3z12] {
    background: none;
    border: none;
    font-size: 1.5rem;
    color: #6C757D;
    cursor: pointer;
}

@media (max-width: 1200px) {
    .consultation-layout[b-4kutwv3z12] {
        grid-template-columns: 1fr;
        height: auto;
    }

    .patient-panel[b-4kutwv3z12],
    .actions-panel[b-4kutwv3z12] {
        order: -1;
    }
}

@media (max-width: 768px) {
    .main-content[b-4kutwv3z12] {
        margin-left: 0;
    }

    .sidebar[b-4kutwv3z12] {
        transform: translateX(-100%);
    }

    .header-left[b-4kutwv3z12] {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .form-row[b-4kutwv3z12] {
        grid-template-columns: 1fr;
    }

    .vital-signs-grid[b-4kutwv3z12] {
        grid-template-columns: repeat(2, 1fr);
    }
}
/* /Pages/PatientsPages/PatientRegistrationPage.razor.rz.scp.css */
/* ─── CNS block ──────────────────────────────────── */
.cns-block[b-be8b9x7biv] {
    background: #F0F9FF;
    border: 1px solid #BAE6FD;
    border-radius: 12px;
    padding: 16px 20px 20px;
    margin-bottom: 24px;
}

.cns-label-row[b-be8b9x7biv] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
    font-weight: 700;
    color: #0369A1;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 14px;
}

.cns-label-row i[b-be8b9x7biv] {
    font-size: 0.9rem;
    color: #0EA5E9;
}

/* ─────────────────────────────────────────────────── */
.action-buttons-step[b-be8b9x7biv]{
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.checkbox-group[b-be8b9x7biv] {
    display: flex;
    gap: 0.5rem;
    align-self: center;
    justify-self: start;
}

[b-be8b9x7biv] form {
    max-height: none;
    gap: 0px;
    height: 100%;
}

.form-container[b-be8b9x7biv] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.form-header[b-be8b9x7biv] {
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    padding: 25px 30px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.form-icon[b-be8b9x7biv] {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.form-title[b-be8b9x7biv] {
    font-size: 1.5rem;
    font-weight: 600;
}

.form-subtitle[b-be8b9x7biv] {
    font-size: 0.9rem;
    opacity: 0.9;
    margin-top: 5px;
}

.form-body[b-be8b9x7biv] {
    padding: 30px;
}

.form-section[b-be8b9x7biv] {
    display: flex;
    flex-direction: column;
    padding: 20px 0 20px 0;
    gap: 15px;
}

.section-title[b-be8b9x7biv] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    display: flex;
    align-items: center;
    gap: 20px;
    text-transform: none;
    margin-bottom: 1.25rem;
    letter-spacing: 0.1em;
}

.section-title[b-be8b9x7biv]::after {
    content: '';
    flex: 1;
    height: 2px;
    background: #eee;
}

.section-title i[b-be8b9x7biv] {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #E3F2FD;
    color: #2E86AB;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
}

.form-grid-2[b-be8b9x7biv] {
    display: grid;
    gap: 20px;
}

.form-grid[b-be8b9x7biv] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
}

.form-grid.two-columns[b-be8b9x7biv] {
    grid-template-columns: 1fr 1fr;
}

.form-grid.two-columns-2[b-be8b9x7biv] {
    grid-template-columns: 0.5fr 1fr;
}

.form-grid.three-columns[b-be8b9x7biv] {
    grid-template-columns: 1fr 1fr 1fr;
}

.form-group[b-be8b9x7biv] {
    display: flex;
    flex-direction: column;
}

.form-checkbox[b-be8b9x7biv] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.form-checkbox input[type="checkbox"][b-be8b9x7biv] {
    width: 18px;
    height: 18px;
    accent-color: #2E86AB;
}

.form-checkbox label[b-be8b9x7biv] {
    font-size: 0.9rem;
    color: #495057;
    cursor: pointer;
}

.photo-upload[b-be8b9x7biv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

.photo-preview[b-be8b9x7biv] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: #F8F9FA;
    border: 2px dashed #E9ECEF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: #6C757D;
    position: relative;
    overflow: hidden;
}

.photo-preview img[b-be8b9x7biv] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.photo-upload-btn[b-be8b9x7biv] {
    padding: 8px 16px;
    background: #E3F2FD;
    color: #2E86AB;
    border: none;
    border-radius: 6px;
    font-size: 0.8rem;
    cursor: pointer;
    transition: all 0.3s ease;
}

.photo-upload-btn:hover[b-be8b9x7biv] {
    background: #2E86AB;
    color: white;
}

.emergency-contact[b-be8b9x7biv] {
    background: #ffffff;
    border: 1px solid #FFE0B2;
    border-radius: 12px;
    padding: 20px;
}

.emergency-title[b-be8b9x7biv] {
    font-size: 1rem;
    font-weight: 600;
    color: #F57C00;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.form-actions[b-be8b9x7biv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 25px 30px;
    background: #F8F9FA;
    border-top: 1px solid #E9ECEF;
}

.form-actions-left[b-be8b9x7biv] {
    display: flex;
    gap: 10px;
}

.form-actions-right[b-be8b9x7biv] {
    display: flex;
    gap: 15px;
}

.progress-bar[b-be8b9x7biv] {
    width: 100%;
    height: 4px;
    background: #E9ECEF;
    border-radius: 2px;
    overflow: hidden;
    margin-bottom: 20px;
}

.progress-fill[b-be8b9x7biv] {
    height: 100%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    width: 75%;
    transition: width 0.3s ease;
}

.error-message[b-be8b9x7biv] {
    color: #DC3545;
    font-size: 0.8rem;
    margin-top: 5px;
}

.success-message[b-be8b9x7biv] {
    color: #28A745;
    font-size: 0.8rem;
    margin-top: 5px;
}

.care-team-list[b-be8b9x7biv] {
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    max-height: 200px;
    overflow-y: auto;
}

.empty-state-team[b-be8b9x7biv] {
    text-align: center;
    padding: 1.5rem;
    color: #b2bec3;
}

.empty-state-team i[b-be8b9x7biv] {
    font-size: 2rem;
    margin-bottom: 0.5rem;
}

.care-member-card[b-be8b9x7biv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.8rem 1rem;
    background: white;
    border-radius: 10px;
    border: 1px solid #eee;
    transition: all 0.3s ease;
}

.care-member-card.primary[b-be8b9x7biv] {
    border-left: 4px solid #f1c40f;
    background: #fffdf0;
}

.member-info[b-be8b9x7biv] {
    display: flex;
    flex-direction: column;
}

.member-name[b-be8b9x7biv] {
    font-weight: 600;
    color: #2d3436;
    font-size: 1.1rem;
}

.member-specialty[b-be8b9x7biv] {
    font-size: 0.8rem;
    color: #636e72;
}

.member-actions[b-be8b9x7biv] {
    display: flex;
    gap: 0.5rem;
}

.member-actions[b-be8b9x7biv] {
    display: flex;
    gap: 0.5rem;
}

.care-team-container[b-be8b9x7biv] {
    background: rgba(255, 255, 255, 0.6);
    border-radius: 15px;
    padding: 1.5rem;
    border: 2px solid #eee;
}

.cep-input-group[b-be8b9x7biv] {
    display: flex;
    gap: 0;
}

[b-be8b9x7biv] .cep-input-group input {
    flex: 1;
    width: auto;
    border-radius: 8px 0 0 8px;
    border-right: none;
}

.btn-cep-search[b-be8b9x7biv] {
    padding: 0 14px;
    background: #2E86AB;
    color: #fff;
    border: 1px solid #2E86AB;
    border-radius: 0 8px 8px 0;
    cursor: pointer;
    font-size: 0.9rem;
    flex-shrink: 0;
    transition: background 0.2s;
}

.btn-cep-search:hover[b-be8b9x7biv] {
    background: #236d8c;
    border-color: #236d8c;
}

.btn-star[b-be8b9x7biv],
.btn-remove[b-be8b9x7biv] {
    background: #f8f9fa;
    border: none;
    cursor: pointer;
    width: 35px;
    height: 35px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
}

.btn-star.active[b-be8b9x7biv] {
    color: var(--warning-color);
    background: #fff9db;
}

.btn-remove[b-be8b9x7biv] {
    color: var(--danger-color);
}

.btn-remove:hover[b-be8b9x7biv] {
    background: #fff5f5;
}

@media (max-width: 768px) {
    .main-content[b-be8b9x7biv] {
        margin-left: 0;
    }

    .sidebar[b-be8b9x7biv] {
        transform: translateX(-100%);
    }

    .form-grid[b-be8b9x7biv] {
        grid-template-columns: 1fr;
    }

    .form-grid.two-columns[b-be8b9x7biv],
    .form-grid.three-columns[b-be8b9x7biv] {
        grid-template-columns: 1fr;
    }

    .form-actions[b-be8b9x7biv] {
        flex-direction: column;
        gap: 15px;
    }

    .form-actions-left[b-be8b9x7biv],
    .form-actions-right[b-be8b9x7biv] {
        width: 100%;
        justify-content: center;
    }
}

/* NOVO AQUI */
/* NOVO AQUI */
/* NOVO AQUI */

/* Header Profissional */

.dot[b-be8b9x7biv] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.dot-total[b-be8b9x7biv] {
    background: #4f46e5;
}

.dot-active[b-be8b9x7biv] {
    background: #10b981;
}

/* Layout de Registro com Stepper */
.registration-layout[b-be8b9x7biv] {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 2.5rem;
    align-items: start;
}

.registration-layout.view-mode[b-be8b9x7biv] {
    grid-template-columns: 1fr;
}

/* Stepper Sidebar */
.stepper-sidebar[b-be8b9x7biv] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.step-item[b-be8b9x7biv] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-radius: 16px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid transparent;
}

.step-item:hover[b-be8b9x7biv] {
    background: #f1f5f9;
}

.step-item.active[b-be8b9x7biv] {
    background: white;
    border-color: #e2e8f0;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.05);
}

.step-icon[b-be8b9x7biv] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #f1f5f9;
    color: #64748b;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 0.875rem;
    transition: all 0.3s;
}

.step-item.active .step-icon[b-be8b9x7biv] {
    background: var(--primary-color);
    color: white;
    box-shadow: 0 4px 10px rgba(79, 70, 229, 0.3);
}

.step-item.completed .step-icon[b-be8b9x7biv] {
    border: 1.5px solid;
    background: #ecfdf5;
    color: #10b981;
}

.step-label[b-be8b9x7biv] {
    font-size: 0.938rem;
    font-weight: 600;
    color: #64748b;
    transition: all 0.3s;
}

.step-item.active .step-label[b-be8b9x7biv] {
    color: #0f172a;
    font-weight: 700;
}

/* Container do Formulário */
.form-container[b-be8b9x7biv] {
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(16px);
    border-radius: 32px;
    padding: 3rem;
    border: 1px solid rgba(255, 255, 255, 0.8);
    box-shadow: 0 20px 40px -15px rgba(15, 23, 42, 0.08);
    min-height: 600px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.view-mode .form-container[b-be8b9x7biv] {
    min-height: unset;
    height: auto;
}

.view-mode .form-step-content[b-be8b9x7biv] {
    flex: 0 0 auto;
}

/* Divisor entre seções no modo view */
.view-section-divider[b-be8b9x7biv] {
    height: 1px;
    background: #e2e8f0;
    margin: 2rem 0;
}

/* Section header no modo view: remove ícone, alinha à esquerda com borda */
.view-mode .section-header[b-be8b9x7biv] {
    margin-bottom: 1.25rem;
    gap: 10px;
    border-left: 3px solid var(--primary-color);
    padding-left: 0.875rem;
    align-items: center;
    justify-content: start;
    flex-direction: row;
}

.view-mode .section-header h2[b-be8b9x7biv] {
    font-size: 1rem;
    font-weight: 700;
    color: #0f172a;
}

.view-mode .section-header p[b-be8b9x7biv] {
    font-size: 0.8rem;
    margin-top: 0.1rem;
}

.form-step-content[b-be8b9x7biv] {
    flex: 1;
    gap: 1.5rem;
    display: flex;
    flex-direction: column;
}

.section-header[b-be8b9x7biv] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-bottom: 3rem;
}

.icon-box[b-be8b9x7biv] {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    background: #f5f3ff;
    color: var(--primary-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.section-header h2[b-be8b9x7biv] {
    font-size: 1.5rem;
    font-weight: 800;
    color: #0f172a;
    letter-spacing: -0.02em;
}

.section-header p[b-be8b9x7biv] {
    font-size: 0.938rem;
    color: #64748b;
}

/* Grid de Formulário */
.form-grid-layout[b-be8b9x7biv] {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 3rem;
}

.photo-upload-container[b-be8b9x7biv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.photo-preview[b-be8b9x7biv] {
    width: 160px;
    height: 160px;
    border-radius: 24px;
    background: #f8fafc;
    border: 2px dashed #e2e8f0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #94a3b8;
    gap: 0.5rem;
}

.photo-preview i[b-be8b9x7biv] {
    font-size: 2rem;
}

.photo-preview span[b-be8b9x7biv] {
    font-size: 0.75rem;
    font-weight: 600;
}

.btn-upload-photo[b-be8b9x7biv] {
    background: transparent;
    border: 1px solid #e2e8f0;
    padding: 0.5rem 1rem;
    border-radius: 10px;
    font-size: 0.75rem;
    font-weight: 700;
    color: #64748b;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-upload-photo:hover[b-be8b9x7biv] {
    background: #f1f5f9;
    color: #0f172a;
}

/* Inputs Premium */
.fields-grid[b-be8b9x7biv] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.input-row[b-be8b9x7biv] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1.5rem;
}


/* Navegação do Formulário */
.form-navigation[b-be8b9x7biv] {
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid #f1f5f9;
    display: flex;
    align-items: center;
}

.spacer[b-be8b9x7biv] {
    flex: 1;
}

/* Botões */
.btn[b-be8b9x7biv] {
    padding: 0.75rem 1.5rem;
    border-radius: 14px;
    font-weight: 700;
    font-size: 0.875rem;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    border: none;
}

/* Adaptar esse outline para geral */
.btn-outline[b-be8b9x7biv] {
    background: white;
    color: #64748b;
    border: 1px solid #e2e8f0;
}

.btn-outline:hover[b-be8b9x7biv] {
    background: #f1f5f9;
    color: #0f172a;
}

.btn-success[b-be8b9x7biv] {
    background: #10b981;
    color: white;
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.2);
}

/* Equipe de Cuidado */
.search-professional[b-be8b9x7biv] {
    position: relative;
    margin-bottom: 2rem;
}

.search-professional i[b-be8b9x7biv] {
    position: absolute;
    left: 1.25rem;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
}

.search-professional input[b-be8b9x7biv] {
    width: 100%;
    padding: 1rem 1rem 1rem 3rem;
    border-radius: 16px;
    border: 1.5px solid #e2e8f0;
    background: #f8fafc;
    font-size: 1rem;
}

.care-team-list[b-be8b9x7biv] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.25rem;
}

.member-card[b-be8b9x7biv] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    padding: 1.25rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    transition: all 0.3s;
}

.member-card-premium.primary[b-be8b9x7biv] {
    border-color: #4f46e5;
    background: #f5f3ff;
}

.member-avatar[b-be8b9x7biv] {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: #4f46e5;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
}

.member-info[b-be8b9x7biv] {
    flex: 1;
    display: flex;
    flex-direction: column;
}


.btn-icon[b-be8b9x7biv] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: none;
    background: white;
    color: #94a3b8;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-icon.active[b-be8b9x7biv] {
    color: #f59e0b;
}

.btn-icon.danger:hover[b-be8b9x7biv] {
    background: #fee2e2;
    color: #ef4444;
}

/* Animações */
.animate-in[b-be8b9x7biv] {
    animation: slideUp-b-be8b9x7biv 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.fade-in[b-be8b9x7biv] {
    animation: fadeIn-b-be8b9x7biv 0.2s ease-in-out;
}

@keyframes fadeIn-b-be8b9x7biv {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideUp-b-be8b9x7biv {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsividade */
@media (max-width: 1024px) {
    .registration-layout[b-be8b9x7biv] {
        grid-template-columns: 1fr;
    }

    .stepper-sidebar[b-be8b9x7biv] {
        flex-direction: row;
        overflow-x: auto;
        padding-bottom: 1rem;
    }

    .step-label[b-be8b9x7biv] {
        display: none;
    }
}
/* /Pages/PatientsPages/PatientsPage.razor.rz.scp.css */

.stats-section[b-40xz928dt3] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

.stat-card[b-40xz928dt3] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 25px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

    .stat-card[b-40xz928dt3]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 4px;
        background: linear-gradient(135deg, #2E86AB, #28A745);
    }

.stat-icon[b-40xz928dt3] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin: 0 auto 15px;
}

.stat-number[b-40xz928dt3] {
    font-size: 2rem;
    font-weight: 700;
    color: #2E86AB;
    margin-bottom: 5px;
}

.stat-label[b-40xz928dt3] {
    font-size: 0.9rem;
    color: #6C757D;
    font-weight: 500;
}


.patient-info[b-40xz928dt3] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.patient-name[b-40xz928dt3] {
    font-weight: 600;
    color: var(--body-text);
    font-size: 0.875rem;
}

.patient-id[b-40xz928dt3] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.status-badge[b-40xz928dt3] {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
    text-align: center;
}

.status-active[b-40xz928dt3], .status-new[b-40xz928dt3] {
    background: #D4EDDA;
    color: #155724;
    border: 1px solid #C3E6CB;
}

.status-incare[b-40xz928dt3] {
    background: #D1ECF1;
    color: #0C5460;
    border: 1px solid #BEE5EB;
}

.status-pending[b-40xz928dt3] {
    background: #FFF3CD;
    color: #856404;
    border: 1px solid #FFEEBA;
}

.status-hospitalized[b-40xz928dt3] {
    background: #F8D7DA;
    color: #721C24;
    border: 1px solid #F5C6CB;
}

.status-discharged[b-40xz928dt3] {
    background: #E2E3E5;
    color: #383D41;
    border: 1px dashed #D6D8DB;
}

.status-inactive[b-40xz928dt3] {
    background: #F8F9FA;
    color: #6C757D;
    border: 1px solid #E2E3E5;
}

.action-buttons[b-40xz928dt3] {
    display: flex;
    gap: 8px;
}

.action-btn[b-40xz928dt3] {
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
}

    .action-btn.view[b-40xz928dt3] {
        background: #E3F2FD;
        color: #2E86AB;
    }

    .action-btn.edit[b-40xz928dt3] {
        background: #FFF3E0;
        color: #F57C00;
    }

    .action-btn.schedule[b-40xz928dt3] {
        background: #E8F5E8;
        color: #28A745;
    }

    .action-btn:hover[b-40xz928dt3] {
        transform: translateY(-2px);
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
    }

.patients-grid[b-40xz928dt3] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    padding: 25px;
}

.empty-state[b-40xz928dt3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    color: #9E9E9E;
    gap: 12px;
    text-align: center;
}

.empty-state i[b-40xz928dt3] {
    font-size: 3rem;
    color: #DEE2E6;
}

.empty-state h3[b-40xz928dt3] {
    margin: 0;
    font-size: 1.1rem;
    color: #6C757D;
}

.empty-state p[b-40xz928dt3] {
    margin: 0;
    font-size: 0.88rem;
}



@media (max-width: 768px) {
    .stats-section[b-40xz928dt3] {
        grid-template-columns: repeat(2, 1fr);
    }
}
/* /Pages/ProductPages/ProductsPage.razor.rz.scp.css */
.empty-state[b-kzxhy5saxu] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    color: #9E9E9E;
    gap: 12px;
    text-align: center;
}

.empty-state i[b-kzxhy5saxu] {
    font-size: 3rem;
    color: #DEE2E6;
}

.empty-state h3[b-kzxhy5saxu] {
    margin: 0;
    font-size: 1.1rem;
    color: #6C757D;
}

.empty-state p[b-kzxhy5saxu] {
    margin: 0;
    font-size: 0.88rem;
}

.catalog-grid[b-kzxhy5saxu] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 1rem;
    margin: 1rem;
}

.catalog-filters[b-kzxhy5saxu] {
    background: var(--bg-glass);
    backdrop-filter: blur(15px);
    border-radius: 20px;
    padding: 1.2rem 2rem;
    border: 1px solid var(--border-glass);
    box-shadow: 0 8px 32px rgba(31, 38, 135, 0.05);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2rem;
    margin-bottom: 2rem;
}

.search-box[b-kzxhy5saxu] {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
}

.search-box i[b-kzxhy5saxu] {
    position: absolute;
    left: 1rem;
    color: #b2bec3;
}

.search-box input[b-kzxhy5saxu] {
    width: 100%;
    padding: 0.8rem 1rem 0.8rem 2.8rem;
    border: 1px solid #dfe6e9;
    border-radius: 12px;
    font-size: 0.95rem;
}

.stats-section[b-kzxhy5saxu] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

.stat-card[b-kzxhy5saxu] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 25px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.stat-card[b-kzxhy5saxu]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(135deg, #2E86AB, #28A745);
}

.stat-card.warning[b-kzxhy5saxu]::before {
    background: linear-gradient(135deg, #FFC107, #FF8F00);
}

.stat-card.danger[b-kzxhy5saxu]::before {
    background: linear-gradient(135deg, #DC3545, #C82333);
}

.stat-icon[b-kzxhy5saxu] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin: 0 auto 15px;
}

.stat-icon.warning[b-kzxhy5saxu] {
    background: linear-gradient(135deg, #FFC107, #FF8F00);
}

.stat-icon.danger[b-kzxhy5saxu] {
    background: linear-gradient(135deg, #DC3545, #C82333);
}

.stat-number[b-kzxhy5saxu] {
    font-size: 2rem;
    font-weight: 700;
    color: #2E86AB;
    margin-bottom: 5px;
}

.stat-number.warning[b-kzxhy5saxu] {
    color: #FF8F00;
}

.stat-number.danger[b-kzxhy5saxu] {
    color: #DC3545;
}

.stat-label[b-kzxhy5saxu] {
    font-size: 0.9rem;
    color: #6C757D;
    font-weight: 500;
}

.alerts-section[b-kzxhy5saxu] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 25px;
}

.alerts-title[b-kzxhy5saxu] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.alert-item[b-kzxhy5saxu] {
    display: flex;
    align-items: center;
    padding: 15px;
    border-radius: 12px;
    margin-bottom: 15px;
    border-left: 4px solid;
}

.alert-item.warning[b-kzxhy5saxu] {
    background: #FFF3CD;
    border-left-color: #FFC107;
}

.alert-item.danger[b-kzxhy5saxu] {
    background: #F8D7DA;
    border-left-color: #DC3545;
}

.alert-icon[b-kzxhy5saxu] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    font-size: 1.1rem;
}

.alert-icon.warning[b-kzxhy5saxu] {
    background: #FFC107;
    color: white;
}

.alert-icon.danger[b-kzxhy5saxu] {
    background: #DC3545;
    color: white;
}

.alert-content[b-kzxhy5saxu] {
    flex: 1;
}

.alert-title[b-kzxhy5saxu] {
    font-weight: 600;
    margin-bottom: 3px;
}

.alert-description[b-kzxhy5saxu] {
    font-size: 0.9rem;
    color: #6C757D;
}

.default-price[b-kzxhy5saxu] {
    color: var(--bs-green);
}

.product-info[b-kzxhy5saxu] {
    display: flex;
    align-items: center;
}

.product-image[b-kzxhy5saxu] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    margin-right: 12px;
}

.product-details[b-kzxhy5saxu] {
    display: flex;
    flex-direction: column;
}

.product-name[b-kzxhy5saxu] {
    font-weight: 600;
    color: #495057;
    margin-bottom: 2px;
}

.product-code[b-kzxhy5saxu] {
    font-size: 0.8rem;
    color: #6C757D;
}

.category-badge[b-kzxhy5saxu] {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
    text-align: center;
}

.category-medication[b-kzxhy5saxu] {
    background: #E0F7FA;
    color: #00796B;
}

.category-injectable[b-kzxhy5saxu] {
    background: #F3E5F5;
    color: #6A1B9A;
}

.category-vaccine[b-kzxhy5saxu] {
    background: #E8F5E9;
    color: #2E7D32;
}

.category-nutrition-supplement[b-kzxhy5saxu] {
    background: #FFFDE7;
    color: #FBC02D;
}

.category-supply[b-kzxhy5saxu] {
    background: #FFF3E0;
    color: #E65100;
}

.category-surgical-material[b-kzxhy5saxu] {
    background: #FFEBEE;
    color: #C62828;
}

.category-dental-material[b-kzxhy5saxu] {
    background: #E1F5FE;
    color: #0277BD;
}

.category-laboratory-material[b-kzxhy5saxu] {
    background: #F5F5F5;
    color: #424242;
}

.category-imaging-material[b-kzxhy5saxu] {
    background: #ECEFF1;
    color: #37474F;
}

.category-diagnostic-tool[b-kzxhy5saxu] {
    background: #F0F4C3;
    color: #9E9D24;
}

.category-equipment[b-kzxhy5saxu] {
    background: #E0F2F7;
    color: #006064;
}

.category-physical-therapy-material[b-kzxhy5saxu] {
    background: #FFCCBC;
    color: #D84315;
}

.category-veterinary-product[b-kzxhy5saxu] {
    background: #E0F2F7;
    color: #00796B;
}

.category-personal-protective-equipment[b-kzxhy5saxu] {
    background: #E3F2FD;
    color: #1976D2;
}

.category-cleaning-product[b-kzxhy5saxu] {
    background: #FCE4EC;
    color: #AD1457;
}

.category-office-supply[b-kzxhy5saxu] {
    background: #FBE9E7;
    color: #BF360C;
}

.category-other[b-kzxhy5saxu] {
    background: #EEEEEE;
    color: #616161;
}

.stock-level[b-kzxhy5saxu] {
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: space-between;
}

.stock-bar[b-kzxhy5saxu] {
    width: 60px;
    height: 8px;
    background: #E9ECEF;
    border-radius: 4px;
    overflow: hidden;
}

.stock-fill[b-kzxhy5saxu] {
    height: 100%;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.stock-fill.available[b-kzxhy5saxu] {
    background: #28A745;
}

.stock-fill.low-stock[b-kzxhy5saxu] {
    background: #FFC107;
}

.stock-fill.out-of-stock[b-kzxhy5saxu] {
    background: #DC3545;
}

.stock-fill.near-expiration[b-kzxhy5saxu] {
    background: #FD7E14;
}

.stock-fill.expired[b-kzxhy5saxu] {
    background: #6C757D;
}

.stock-fill.inactive[b-kzxhy5saxu] {
    background: #6C757D;
}

.stock-status[b-kzxhy5saxu] {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
    text-align: center;
    display: inline-block;
}

.stock-status.available[b-kzxhy5saxu] {
    background: #D4EDDA;
    color: #155724;
}

.stock-status.low-stock[b-kzxhy5saxu] {
    background: #FFF3CD;
    color: #856404;
}

.stock-status.out-of-stock[b-kzxhy5saxu] {
    background: #E2E3E5;
    color: #383D41;
}

.stock-status.near-expiration[b-kzxhy5saxu] {
    background: #FFE8CC;
    color: #984C0C;
}

.stock-status.expired[b-kzxhy5saxu] {
    background: #F8D7DA;
    color: #721C24;
}

.stock-status.inactive[b-kzxhy5saxu] {
    background: #E2E3E5;
    color: #383D41;
}

.products-grid[b-kzxhy5saxu] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    padding: 25px;
}


.product-card[b-kzxhy5saxu] {
    background: white;
    border: 1px solid #E9ECEF;
    border-radius: 12px;
    padding: 20px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.product-card:hover[b-kzxhy5saxu] {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
    border-color: #2E86AB;
}

.card-header[b-kzxhy5saxu] {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.card-image[b-kzxhy5saxu] {
    width: 50px;
    height: 50px;
    border-radius: 8px;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    margin-right: 15px;
}

.card-info[b-kzxhy5saxu] {
    flex: 1;
}

.card-name[b-kzxhy5saxu] {
    font-weight: 600;
    color: #495057;
    margin-bottom: 3px;
}

.card-code[b-kzxhy5saxu] {
    font-size: 0.8rem;
    color: #6C757D;
}

.card-details[b-kzxhy5saxu] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 15px;
}

.card-detail[b-kzxhy5saxu] {
    font-size: 0.8rem;
}

.card-detail-label[b-kzxhy5saxu] {
    color: #6C757D;
    margin-bottom: 2px;
}

.card-detail-value[b-kzxhy5saxu] {
    color: #495057;
    font-weight: 500;
}

.card-stock[b-kzxhy5saxu] {
    margin-bottom: 15px;
}

.card-stock-label[b-kzxhy5saxu] {
    font-size: 0.8rem;
    color: #6C757D;
    margin-bottom: 5px;
}

.card-stock-bar[b-kzxhy5saxu] {
    width: 100%;
    height: 8px;
    background: #E9ECEF;
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 5px;
}

.card-actions[b-kzxhy5saxu] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.pagination[b-kzxhy5saxu] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    padding: 25px;
    border-top: 1px solid #E9ECEF;
}


.pagination-info[b-kzxhy5saxu] {
    color: #6C757D;
    font-size: 0.9rem;
    margin: 0 15px;
}

@media (max-width: 768px) {
    .stats-section[b-kzxhy5saxu] {
        grid-template-columns: repeat(2, 1fr);
    }

    .products-table[b-kzxhy5saxu] {
        font-size: 0.8rem;
    }

    .products-table th[b-kzxhy5saxu],
    .products-table td[b-kzxhy5saxu] {
        padding: 10px 15px;
    }
}
/* /Pages/ProfessionalPages/ProfessionalPage.razor.rz.scp.css */
.empty-state[b-d2myz5eq1v] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    color: #9E9E9E;
    gap: 12px;
    text-align: center;
}

.empty-state i[b-d2myz5eq1v] {
    font-size: 3rem;
    color: #DEE2E6;
}

.empty-state h3[b-d2myz5eq1v] {
    margin: 0;
    font-size: 1.1rem;
    color: #6C757D;
}

.empty-state p[b-d2myz5eq1v] {
    margin: 0;
    font-size: 0.88rem;
}


/* .employees-table {
    width: 100%;
    border-collapse: collapse;
}

.employees-table th {
    background: #F8F9FA;
    padding: 15px 20px;
    text-align: left;
    font-weight: 600;
    color: #495057;
    font-size: 0.9rem;
    border-bottom: 1px solid #E9ECEF;
}

.employees-table td {
    padding: 15px 20px;
    border-bottom: 1px solid #F8F9FA;
    font-size: 0.9rem;
}

.employees-table tr:hover {
    background: #F8F9FA;
} */

.employee-info[b-d2myz5eq1v] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.employee-name[b-d2myz5eq1v] {
    font-weight: 600;
    color: var(--body-text);
    font-size: 0.875rem;
}

.employee-id[b-d2myz5eq1v] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.role-badge[b-d2myz5eq1v] {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
    text-align: center;
    display: inline-block;
}

.role-doctor[b-d2myz5eq1v] {
    background: #E3F2FD;
    /* Light Blue */
    color: #1976D2;
    /* Dark Blue */
}

.role-nurse[b-d2myz5eq1v] {
    background: #E8F5E8;
    /* Light Green */
    color: #388E3C;
    /* Dark Green */
}

.role-admin[b-d2myz5eq1v] {
    background: #FFF3E0;
    /* Light Orange */
    color: #F57C00;
    /* Dark Orange */
}

.role-receptionist[b-d2myz5eq1v] {
    background: #F3E5F5;
    /* Light Purple */
    color: #7B1FA2;
    /* Dark Purple */
}

.role-dentistry[b-d2myz5eq1v] {
    background: #E1F5FE;
    /* Lighter Blue */
    color: #0277BD;
    /* Stronger Blue */
}

.role-psychology[b-d2myz5eq1v] {
    background: #FCE4EC;
    /* Light Pink */
    color: #AD1457;
    /* Dark Pink */
}

.role-therapy[b-d2myz5eq1v] {
    background: #FFFDE7;
    /* Light Yellow */
    color: #FBC02D;
    /* Dark Yellow */
}

.role-veterinary[b-d2myz5eq1v] {
    background: #E0F2F7;
    /* Light Blue-Green */
    color: #00796B;
    /* Dark Blue-Green */
}

.role-nutrition[b-d2myz5eq1v] {
    background: #C8E6C9;
    /* Light Green */
    color: #388E3C;
    /* Dark Green */
}

.role-physiotherapy[b-d2myz5eq1v] {
    background: #FFCCBC;
    /* Light Orange-Red */
    color: #D84315;
    /* Dark Orange-Red */
}

.role-speechtherapy[b-d2myz5eq1v] {
    background: #EDE7F6;
    /* Lighter Purple */
    color: #5E35B1;
    /* Darker Purple */
}

.role-chiropractic[b-d2myz5eq1v] {
    background: #E0F7FA;
    /* Light Cyan */
    color: #00838F;
    /* Dark Cyan */
}

.role-ophthalmology[b-d2myz5eq1v] {
    background: #FBE9E7;
    /* Light Peach */
    color: #BF360C;
    /* Dark Orange-Brown */
}

.role-other[b-d2myz5eq1v] {
    background: #EEEEEE;
    /* Lighter Gray */
    color: #616161;
    /* Medium Gray */
}

.action-buttons[b-d2myz5eq1v] {
    display: flex;
    gap: 8px;
}

.action-btn[b-d2myz5eq1v] {
    width: 32px;
    height: 32px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
}

.action-btn.view[b-d2myz5eq1v] {
    background: #E3F2FD;
    color: #2E86AB;
}

.action-btn.edit[b-d2myz5eq1v] {
    background: #FFF3E0;
    color: #F57C00;
}

.action-btn.delete[b-d2myz5eq1v] {
    background: #FFEBEE;
    color: #D32F2F;
}

.action-btn:hover[b-d2myz5eq1v] {
    transform: translateY(-2px);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
}

.employees-grid[b-d2myz5eq1v] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    padding: 25px;
}


.schedule-section[b-d2myz5eq1v] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 25px;
}

.schedule-title[b-d2myz5eq1v] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.schedule-grid[b-d2myz5eq1v] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.schedule-card[b-d2myz5eq1v] {
    background: #F8F9FA;
    border-radius: 12px;
    padding: 20px;
    border-left: 4px solid #2E86AB;
}

.schedule-doctor[b-d2myz5eq1v] {
    font-weight: 600;
    color: #495057;
    margin-bottom: 10px;
}

.schedule-time[b-d2myz5eq1v] {
    font-size: 0.9rem;
    color: #6C757D;
    margin-bottom: 5px;
}

.schedule-patients[b-d2myz5eq1v] {
    font-size: 0.8rem;
    color: #28A745;
    font-weight: 500;
}

@media (max-width: 768px) {
    .main-content[b-d2myz5eq1v] {
        margin-left: 0;
    }

    .sidebar[b-d2myz5eq1v] {
        transform: translateX(-100%);
    }
}
/* /Pages/ReceptionPages/ReceptionPage.razor.rz.scp.css */
/* ── Header overrides ── */
.header-left[b-gsu9zqysyi] {
    display: block !important;
    align-items: unset !important;
    gap: 0 !important;
}

.content[b-gsu9zqysyi] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ── Header chips ── */
.stats-chips[b-gsu9zqysyi] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.stat-chip[b-gsu9zqysyi] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 20px;
    font-size: 0.82rem;
    font-weight: 600;
}

.stat-chip.total[b-gsu9zqysyi]   { background: #E3F2FD; color: #1565C0; }
.stat-chip.waiting[b-gsu9zqysyi] { background: #FFF8E1; color: #E65100; }
.stat-chip.done[b-gsu9zqysyi]    { background: #E8F5E9; color: #2E7D32; }

/* ── Professional search ── */
.professional-search-wrapper[b-gsu9zqysyi] {
    background: white;
    border-radius: 10px;
    padding: 16px 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

/* ── Reception table ── */
.reception-container[b-gsu9zqysyi] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
    overflow: hidden;
}

.table-row[b-gsu9zqysyi] {
    display: grid;
    grid-template-columns: 100px 1fr 150px 150px 260px;
    align-items: center;
    padding: 12px 20px;
    gap: 12px;
    transition: background 0.15s;
}

.table-header-row[b-gsu9zqysyi] {
    background: #F8F9FA;
    font-size: 0.72rem;
    font-weight: 700;
    color: #6C757D;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 2px solid #E9ECEF;
    padding: 10px 20px;
}

.appt-row[b-gsu9zqysyi] {
    border-bottom: 1px solid #F0F0F0;
}

.appt-row:last-child[b-gsu9zqysyi] {
    border-bottom: none;
}

.appt-row:hover[b-gsu9zqysyi] {
    background: #FAFBFC;
}

/* Subtle left accent by appointment status */
.appt-row.Pending[b-gsu9zqysyi]   { border-left: 3px solid #FF9800; }
.appt-row.Called[b-gsu9zqysyi]    { border-left: 3px solid #1565C0; background: #F0F7FF; }
.appt-row.Completed[b-gsu9zqysyi] { border-left: 3px solid #4CAF50; background: #F0FFF4; }
.appt-row.Cancelled[b-gsu9zqysyi] { opacity: 0.55; }
.appt-row.NoShow[b-gsu9zqysyi]    { opacity: 0.65; border-left: 3px solid #78909C; }

/* ── Time column ── */
.col-time[b-gsu9zqysyi] {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
}

.time-badge[b-gsu9zqysyi] {
    font-size: 1rem;
    font-weight: 700;
    color: #2E86AB;
}

.time-end[b-gsu9zqysyi] {
    font-size: 0.75rem;
    color: #9E9E9E;
}

/* ── Patient column ── */
.patient-name[b-gsu9zqysyi] {
    font-weight: 600;
    color: #212529;
    font-size: 0.9rem;
}

/* ── Type / Billing columns ── */
.col-type[b-gsu9zqysyi],
.col-billing[b-gsu9zqysyi] {
    display: flex;
    justify-content: center;
}

/* ── Type badge ── */
.type-badge[b-gsu9zqysyi] {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.type-badge.Consultation[b-gsu9zqysyi] { background: #E3F2FD; color: #1565C0; }
.type-badge.FollowUp[b-gsu9zqysyi]     { background: #E8F5E9; color: #2E7D32; }
.type-badge.Exam[b-gsu9zqysyi]         { background: #F3E5F5; color: #6A1B9A; }
.type-badge.Emergency[b-gsu9zqysyi]    { background: #FFEBEE; color: #C62828; }

/* ── Status badge ── */
.status-badge[b-gsu9zqysyi] {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-badge.Initial[b-gsu9zqysyi]    { background: #E9ECEF; color: #495057; }
.status-badge.Scheduled[b-gsu9zqysyi]  { background: #E3F2FD; color: #1565C0; }
.status-badge.Pending[b-gsu9zqysyi]    { background: #FFF3E0; color: #E65100; }
.status-badge.Called[b-gsu9zqysyi]     { background: #DBEAFE; color: #1D4ED8; font-weight: 700; }
.status-badge.Completed[b-gsu9zqysyi]  { background: #E8F5E9; color: #2E7D32; }
.status-badge.Cancelled[b-gsu9zqysyi]  { background: #FFEBEE; color: #C62828; }
.status-badge.NoShow[b-gsu9zqysyi]     { background: #ECEFF1; color: #546E7A; }

/* ── Billing badge ── */
.billing-badge[b-gsu9zqysyi] {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.billing-badge.Draft[b-gsu9zqysyi]   { background: #E9ECEF; color: #6C757D; }
.billing-badge.Issued[b-gsu9zqysyi]  { background: #FFF3CD; color: #856404; }
.billing-badge.Partial[b-gsu9zqysyi] { background: #FFE8CC; color: #C75000; }
.billing-badge.Paid[b-gsu9zqysyi]    { background: #D1E7DD; color: #146C43; }
.billing-badge.Overdue[b-gsu9zqysyi] { background: #F8D7DA; color: #842029; }

.billing-badge-loading[b-gsu9zqysyi] {
    color: #B0BEC5;
    font-size: 0.8rem;
}

/* ── Action buttons ── */
.col-actions[b-gsu9zqysyi] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.action-btn1[b-gsu9zqysyi] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    border-radius: 6px;
    font-size: 0.78rem;
    font-weight: 600;
    cursor: pointer;
    border: none;
    transition: all 0.2s;
    white-space: nowrap;
}

.action-btn1.arrive[b-gsu9zqysyi] {
    background: #E8F5E9;
    color: #2E7D32;
}

.action-btn1.arrive:hover[b-gsu9zqysyi] {
    background: #C8E6C9;
}

.action-btn1.call[b-gsu9zqysyi] {
    background: #FFF3E0;
    color: #E65100;
}

.action-btn1.call:hover[b-gsu9zqysyi] {
    background: #FFE0B2;
}

.action-btn1.call.called[b-gsu9zqysyi] {
    background: #ECEFF1;
    color: #9E9E9E;
    cursor: default;
}

.action-btn1.billing[b-gsu9zqysyi] {
    background: #E3F2FD;
    color: #1565C0;
}

.action-btn1.billing:hover[b-gsu9zqysyi] {
    background: #BBDEFB;
}

.action-btn1.notify-enter[b-gsu9zqysyi] {
    background: #DCFCE7;
    color: #166534;
    border: 1.5px solid #86EFAC;
    cursor: default;
    animation: pulse-enter-b-gsu9zqysyi 1.4s ease-in-out infinite;
}

@keyframes pulse-enter-b-gsu9zqysyi {
    0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(34,197,94,0.4); }
    50%       { opacity: 0.9; box-shadow: 0 0 0 5px rgba(34,197,94,0); }
}

/* ── Empty state ── */
.empty-state[b-gsu9zqysyi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    color: #9E9E9E;
    gap: 12px;
    text-align: center;
}

.empty-state i[b-gsu9zqysyi] {
    font-size: 3rem;
    color: #DEE2E6;
}

.empty-state h3[b-gsu9zqysyi] {
    margin: 0;
    font-size: 1.1rem;
    color: #6C757D;
}

.empty-state p[b-gsu9zqysyi] {
    margin: 0;
    font-size: 0.88rem;
}

/* ── Responsive ── */
@media (max-width: 1100px) {
    .table-row[b-gsu9zqysyi] {
        grid-template-columns: 80px 1fr 110px 120px auto;
    }
}

@media (max-width: 768px) {
    .table-row[b-gsu9zqysyi] {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .table-header-row[b-gsu9zqysyi] {
        display: none;
    }

    .appt-row[b-gsu9zqysyi] {
        padding: 14px 16px;
        border-left: none !important;
        border-bottom: 1px solid #E9ECEF;
        border-radius: 0;
    }

    .stats-chips[b-gsu9zqysyi] {
        justify-content: flex-start;
    }
}
/* /Pages/SettingsPages/NavigationMenu.razor.rz.scp.css */
.settings-nav[b-9hbktnbgzu] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 25px 0;
    height: fit-content;
}

.nav-section[b-9hbktnbgzu] {
    margin-bottom: 25px;
}

.nav-section:last-child[b-9hbktnbgzu] {
    margin-bottom: 0;
}

.nav-title[b-9hbktnbgzu] {
    padding: 0 25px 15px;
    font-size: 0.85rem;
    font-weight: 600;
    color: #6C757D;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.nav-item[b-9hbktnbgzu] {
    display: flex;
    align-items: center;
    padding: 12px 25px;
    color: #495057;
    text-decoration: none;
    transition: all 0.3s ease;
    border-left: 3px solid transparent;
    cursor: pointer;
}

.nav-item:hover[b-9hbktnbgzu] {
    background: #F8F9FA;
    color: #2E86AB;
    border-left-color: #2E86AB;
}

.nav-item.active[b-9hbktnbgzu] {
    background: #E3F2FD;
    color: #2E86AB;
    border-left-color: #2E86AB;
}

.nav-item--disabled[b-9hbktnbgzu] {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

.nav-item i[b-9hbktnbgzu] {
    margin-right: 12px;
    width: 18px;
    text-align: center;
}
/* /Pages/SettingsPages/Sections/SectionBackup.razor.rz.scp.css */
.section-header[b-38j7glyarp] {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #E9ECEF;
}

.section-title[b-38j7glyarp] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 8px;
}

.section-description[b-38j7glyarp] {
    color: #6C757D;
    font-size: 0.95rem;
    line-height: 1.5;
}

.form-section[b-38j7glyarp] {
    margin-bottom: 40px;
}

.form-section:last-child[b-38j7glyarp] {
    margin-bottom: 0;
}

.form-section-title[b-38j7glyarp] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.backup-item[b-38j7glyarp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
    background: #F8F9FA;
    border-radius: 8px;
    margin-bottom: 10px;
}

.backup-info[b-38j7glyarp] {
    flex: 1;
}

.backup-date[b-38j7glyarp] {
    font-weight: 500;
    color: #495057;
}

.backup-size[b-38j7glyarp] {
    font-size: 0.85rem;
    color: #6C757D;
}

.backup-actions[b-38j7glyarp] {
    display: flex;
    gap: 10px;
}
/* /Pages/SettingsPages/Sections/SectionClinicSettings.razor.rz.scp.css */
.section-header[b-22h7lpf70t] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid #E9ECEF;
}

.section-title[b-22h7lpf70t] {
    font-size: 1.4rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 6px;
}

.section-description[b-22h7lpf70t] {
    color: #6C757D;
    font-size: 0.9rem;
    line-height: 1.5;
    margin: 0;
}

/* Seções do formulário */
.form-section[b-22h7lpf70t] {
    margin-bottom: 36px;
    padding: 24px;
    background: #fff;
    border: 1px solid #E9ECEF;
    border-radius: 12px;
}

.form-section-title[b-22h7lpf70t] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 8px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.form-section-title i[b-22h7lpf70t] {
    color: #2E86AB;
    width: 16px;
}

/* Grid 3 colunas com suporte a span */
.form-grid-3[b-22h7lpf70t] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px 20px;
}

.form-group.span-2[b-22h7lpf70t] {
    grid-column: span 2;
}

/* Grid 4 colunas (endereço) */
.form-grid-4[b-22h7lpf70t] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px 20px;
}

.form-group[b-22h7lpf70t] {
    display: flex;
    flex-direction: column;
}

.form-label[b-22h7lpf70t] {
    display: block;
    margin-bottom: 6px;
    color: #374151;
    font-weight: 500;
    font-size: 0.85rem;
}

/* ::deep penetra nos filhos de componentes (InputMask, InputText, etc.)
   Sem width:100% para não quebrar contextos flex (ex: cep-group) */
[b-22h7lpf70t] .form-control,
.form-control[b-22h7lpf70t] {
    padding: 10px 14px;
    border: 1px solid #D1D5DB;
    border-radius: 8px;
    font-size: 0.9rem;
    color: #374151;
    background: #FAFAFA;
    transition: border-color 0.2s, box-shadow 0.2s;
    box-sizing: border-box;
}

/* width:100% somente fora de contextos flex específicos */
.form-group > .form-control[b-22h7lpf70t],
.form-group[b-22h7lpf70t]  .form-control {
    width: 100%;
}

[b-22h7lpf70t] .form-control:focus,
.form-control:focus[b-22h7lpf70t] {
    outline: none;
    border-color: #2E86AB;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

/* CEP: input + botão lado a lado */
.cep-group[b-22h7lpf70t] {
    display: flex;
    gap: 0;
}

.cep-group[b-22h7lpf70t]  .form-control {
    flex: 1;
    width: auto;
    border-radius: 8px 0 0 8px;
    border-right: none;
}

.btn-cep[b-22h7lpf70t] {
    padding: 0 14px;
    background: #2E86AB;
    color: #fff;
    border: 1px solid #2E86AB;
    border-radius: 0 8px 8px 0;
    cursor: pointer;
    font-size: 0.9rem;
    transition: background 0.2s;
    flex-shrink: 0;
}

.btn-cep:hover[b-22h7lpf70t] {
    background: #236d8c;
    border-color: #236d8c;
}


/* Rodapé */
.form-footer[b-22h7lpf70t] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 24px;
    border-top: 1px solid #E9ECEF;
    margin-top: 4px;
}

.footer-hint[b-22h7lpf70t] {
    font-size: 0.82rem;
    color: #9CA3AF;
}

@media (max-width: 768px) {
    .form-grid-3[b-22h7lpf70t],
    .form-grid-4[b-22h7lpf70t] {
        grid-template-columns: 1fr;
    }

    .form-group.span-2[b-22h7lpf70t],
    .form-group.span-3[b-22h7lpf70t] {
        grid-column: span 1;
    }

    .form-footer[b-22h7lpf70t] {
        flex-direction: column;
        gap: 12px;
        align-items: stretch;
    }

    .form-footer .btn[b-22h7lpf70t] {
        width: 100%;
        justify-content: center;
    }
}
/* /Pages/SettingsPages/Sections/SectionIntegrations.razor.rz.scp.css */
.form-section[b-yfouqvtz88] {
    margin-bottom: 40px;
}

.form-section:last-child[b-yfouqvtz88] {
    margin-bottom: 0;
}

.form-section-title[b-yfouqvtz88] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}


.integration-card[b-yfouqvtz88] {
    border: 1px solid #E9ECEF;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 20px;
    transition: all 0.3s ease;
}

.integration-card:hover[b-yfouqvtz88] {
    border-color: #2E86AB;
    box-shadow: 0 4px 15px rgba(46, 134, 171, 0.1);
}

.integration-header[b-yfouqvtz88] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
}

.integration-info[b-yfouqvtz88] {
    display: flex;
    align-items: center;
    gap: 15px;
}

.integration-icon[b-yfouqvtz88] {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.3rem;
}

.integration-details h4[b-yfouqvtz88] {
    color: #495057;
    font-weight: 600;
    margin-bottom: 3px;
}

.integration-details p[b-yfouqvtz88] {
    color: #6C757D;
    font-size: 0.9rem;
}

.status-badge[b-yfouqvtz88] {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
}

.status-connected[b-yfouqvtz88] {
    background: #E8F5E8;
    color: #2E7D32;
}

.status-disconnected[b-yfouqvtz88] {
    background: #FFEBEE;
    color: #C62828;
}
/* /Pages/SettingsPages/Sections/SectionMaster.razor.rz.scp.css */
.section-header[b-50ksj60o15] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid #E9ECEF;
}

.section-title[b-50ksj60o15] {
    font-size: 1.4rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 6px;
}

.section-description[b-50ksj60o15] {
    color: #6C757D;
    font-size: 0.9rem;
    line-height: 1.5;
    margin: 0;
}

.section-badge[b-50ksj60o15] {
    display: inline-flex;
    align-items: center;
    padding: 6px 14px;
    background: #FFF3CD;
    color: #856404;
    border: 1px solid #FFDCA8;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    white-space: nowrap;
}

/* ── Estado: sem profissional selecionado ── */
.search-state[b-50ksj60o15] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 48px 24px;
    background: #F8FAFC;
    border: 2px dashed #D1D5DB;
    border-radius: 16px;
}

.search-state-icon[b-50ksj60o15] {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB22, #2E86AB11);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    font-size: 1.8rem;
    color: #2E86AB;
}

.search-state-title[b-50ksj60o15] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #374151;
    margin-bottom: 8px;
}

.search-state-desc[b-50ksj60o15] {
    color: #6B7280;
    font-size: 0.9rem;
    max-width: 420px;
    margin-bottom: 28px;
    line-height: 1.6;
}

.search-box-wrapper[b-50ksj60o15] {
    width: 100%;
    max-width: 480px;
}

/* ── Estado: profissional selecionado ── */
.selected-state[b-50ksj60o15] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.selected-professional-card[b-50ksj60o15] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 24px;
    background: linear-gradient(135deg, #EBF5FB, #F0FFF4);
    border: 1px solid #A7D9EE;
    border-radius: 12px 12px 0 0;
    border-bottom: none;
}

.selected-avatar[b-50ksj60o15] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 700;
    flex-shrink: 0;
}

.selected-info[b-50ksj60o15] {
    flex: 1;
}

.selected-name[b-50ksj60o15] {
    font-size: 1.05rem;
    font-weight: 600;
    color: #1F2937;
    margin-bottom: 2px;
}

.selected-role[b-50ksj60o15] {
    font-size: 0.85rem;
    color: #2E86AB;
    font-weight: 500;
    margin-bottom: 2px;
}

.selected-email[b-50ksj60o15] {
    font-size: 0.82rem;
    color: #6B7280;
}

.btn-change[b-50ksj60o15] {
    display: inline-flex;
    align-items: center;
    padding: 7px 14px;
    background: #fff;
    border: 1px solid #D1D5DB;
    border-radius: 8px;
    font-size: 0.82rem;
    color: #6B7280;
    cursor: pointer;
    transition: all 0.2s;
    white-space: nowrap;
}

.btn-change:hover[b-50ksj60o15] {
    border-color: #EF4444;
    color: #EF4444;
    background: #FFF5F5;
}

/* Área da senha */
.password-section[b-50ksj60o15] {
    padding: 24px;
    background: #fff;
    border: 1px solid #A7D9EE;
    border-top: none;
    border-radius: 0 0 12px 12px;
}

.form-group[b-50ksj60o15] {
    display: flex;
    flex-direction: column;
}

.form-label[b-50ksj60o15] {
    font-size: 0.85rem;
    font-weight: 500;
    color: #374151;
    margin-bottom: 6px;
}

.form-control[b-50ksj60o15] {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #D1D5DB;
    border-radius: 8px;
    font-size: 0.9rem;
    color: #374151;
    background: #FAFAFA;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.form-control:focus[b-50ksj60o15] {
    outline: none;
    border-color: #2E86AB;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

/* Checkbox com descrição */
.checkbox-row[b-50ksj60o15] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 8px;
    cursor: pointer;
}

.checkbox-label[b-50ksj60o15] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    cursor: pointer;
}

.checkbox-title[b-50ksj60o15] {
    font-size: 0.9rem;
    font-weight: 500;
    color: #374151;
}

.checkbox-desc[b-50ksj60o15] {
    font-size: 0.8rem;
    color: #9CA3AF;
    line-height: 1.4;
}

/* Rodapé */
.form-footer[b-50ksj60o15] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding-top: 24px;
    border-top: 1px solid #E9ECEF;
    margin-top: 24px;
}

@media (max-width: 640px) {
    .section-header[b-50ksj60o15] {
        flex-direction: column;
        gap: 12px;
    }

    .selected-professional-card[b-50ksj60o15] {
        flex-wrap: wrap;
    }

    .form-footer[b-50ksj60o15] {
        flex-direction: column-reverse;
        align-items: stretch;
    }

    .form-footer .btn[b-50ksj60o15] {
        justify-content: center;
    }
}
/* /Pages/SettingsPages/Sections/SectionNotification.razor.rz.scp.css */
.form-section[b-w2k6k3367x] {
    margin-bottom: 40px;
}

.form-section:last-child[b-w2k6k3367x] {
    margin-bottom: 0;
}

.form-section-title[b-w2k6k3367x] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.setting-item[b-w2k6k3367x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #F1F3F4;
}

.setting-item:last-child[b-w2k6k3367x] {
    border-bottom: none;
}

.setting-info[b-w2k6k3367x] {
    flex: 1;
}

.setting-name[b-w2k6k3367x] {
    font-weight: 500;
    color: #495057;
    margin-bottom: 3px;
}

.setting-desc[b-w2k6k3367x] {
    font-size: 0.85rem;
    color: #6C757D;
}
/* /Pages/SettingsPages/Sections/SectionScheduleSettings.razor.rz.scp.css */
.section-header[b-lhanj34shb] {
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #E9ECEF;
}

.section-title[b-lhanj34shb] {
  font-size: 1.5rem;
  font-weight: 600;
  color: #2E86AB;
  margin-bottom: 8px;
}

.section-description[b-lhanj34shb] {
  color: #6C757D;
  font-size: 0.95rem;
  line-height: 1.5;
}

.form-section[b-lhanj34shb] {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.form-section:last-child[b-lhanj34shb] {
  margin-bottom: 0;
}

.form-section-title[b-lhanj34shb] {
  font-size: 1.1rem;
  font-weight: 600;
  color: #495057;
  display: flex;
  align-items: center;
  gap: 10px;
}

.form-grid[b-lhanj34shb] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
}

.form-group[b-lhanj34shb] {
  margin-bottom: 20px;
}

.form-label[b-lhanj34shb] {
  display: block;
  margin-bottom: 8px;
  color: #495057;
  font-weight: 500;
  font-size: 0.9rem;
}

.form-control[b-lhanj34shb] {
  width: 100%;
  padding: 12px 15px;
  border: 1px solid #E9ECEF;
  border-radius: 8px;
  font-size: 0.9rem;
  transition: all 0.3s ease;
}

.form-control:focus[b-lhanj34shb] {
  outline: none;
  border-color: #2E86AB;
  box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.toggle-switch[b-lhanj34shb] {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 24px;
}

.toggle-switch input[b-lhanj34shb] {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider[b-lhanj34shb] {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: .4s;
  border-radius: 24px;
}

.slider[b-lhanj34shb]:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  transition: .4s;
  border-radius: 50%;
}

input:checked+.slider[b-lhanj34shb] {
  background-color: #2E86AB;
}

input:checked+.slider[b-lhanj34shb]:before {
  transform: translateX(26px);
}

.settings[b-lhanj34shb] {
  display: flex;
  flex-direction: column;
  gap: 15px;
  border-bottom: 1px solid var(--border-color);
}

.setting-item[b-lhanj34shb] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0px 0px 15px 30px;
  border-bottom: 1px solid #F1F3F4;
}

.setting-item:last-child[b-lhanj34shb] {
  border-bottom: none;
}

.setting-info[b-lhanj34shb] {
  flex: 1;
}

.setting-name[b-lhanj34shb] {
  font-weight: 500;
  color: #495057;
  margin-bottom: 3px;
}

.setting-desc[b-lhanj34shb] {
  font-size: 0.85rem;
  color: #6C757D;
}

@media (max-width: 768px) {
  .form-grid[b-lhanj34shb] {
    grid-template-columns: 1fr;
  }
}
/* /Pages/SettingsPages/Sections/SectionSecurity.razor.rz.scp.css */
.form-section[b-kdtok3xske] {
    margin-bottom: 40px;
}

.form-section:last-child[b-kdtok3xske] {
    margin-bottom: 0;
}

.form-section-title[b-kdtok3xske] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.setting-item[b-kdtok3xske] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #F1F3F4;
}

.setting-item:last-child[b-kdtok3xske] {
    border-bottom: none;
}

.setting-info[b-kdtok3xske] {
    flex: 1;
}

.setting-name[b-kdtok3xske] {
    font-weight: 500;
    color: #495057;
    margin-bottom: 3px;
}

.setting-desc[b-kdtok3xske] {
    font-size: 0.85rem;
    color: #6C757D;
}

.section-header[b-kdtok3xske] {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #E9ECEF;
}

.section-title[b-kdtok3xske] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 8px;
}

.section-description[b-kdtok3xske] {
    color: #6C757D;
    font-size: 0.95rem;
    line-height: 1.5;
}
/* /Pages/SettingsPages/Sections/SectionUserManager.razor.rz.scp.css */
.user-card[b-gv52qahq4a] {
    background: #F8F9FA;
    padding: 20px;
    border-radius: 12px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
}

.user-avatar[b-gv52qahq4a] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
    font-weight: 600;
}

.user-info[b-gv52qahq4a] {
    flex: 1;
}

.user-name[b-gv52qahq4a] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 3px;
}

.user-role[b-gv52qahq4a] {
    color: #6C757D;
    font-size: 0.9rem;
}

.user-actions[b-gv52qahq4a] {
    display: flex;
    gap: 10px;
}

.form-section[b-gv52qahq4a] {
    margin-bottom: 40px;
}

.form-section:last-child[b-gv52qahq4a] {
    margin-bottom: 0;
}

.form-section-title[b-gv52qahq4a] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.section-header[b-gv52qahq4a] {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #E9ECEF;
}

.section-title[b-gv52qahq4a] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 8px;
}

.section-description[b-gv52qahq4a] {
    color: #6C757D;
    font-size: 0.95rem;
    line-height: 1.5;
}
/* /Pages/SettingsPages/Sections/SectionVisitTemplates.razor.rz.scp.css */
/* ── Section Header ─────────────────────────────────────── */

.section-header[b-dkvqcm2ch3] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 28px;
    padding-bottom: 24px;
    border-bottom: 1px solid #E9ECEF;
}

.section-title[b-dkvqcm2ch3] {
    font-size: 1.4rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 6px;
}

.section-description[b-dkvqcm2ch3] {
    color: #6C757D;
    font-size: 0.9rem;
    line-height: 1.5;
    margin: 0;
}

.tpl-header-btn[b-dkvqcm2ch3] {
    flex-shrink: 0;
    white-space: nowrap;
}

/* ── Stats bar ──────────────────────────────────────────── */

.tpl-stats-bar[b-dkvqcm2ch3] {
    display: flex;
    gap: 16px;
    margin-bottom: 24px;
}

.tpl-stat[b-dkvqcm2ch3] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
    font-weight: 600;
    color: #6c757d;
    background: #f8f9fa;
    border: 1px solid #E9ECEF;
    padding: 4px 12px;
    border-radius: 20px;
}

.tpl-stat i[b-dkvqcm2ch3] { font-size: 0.75rem; }

.tpl-stat--active[b-dkvqcm2ch3] {
    color: #155724;
    background: #d4edda;
    border-color: #c3e6cb;
}

/* ── Empty state ────────────────────────────────────────── */

.tpl-empty[b-dkvqcm2ch3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 64px 24px;
    text-align: center;
    color: #868e96;
}

.tpl-empty-icon[b-dkvqcm2ch3] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #e8f4fb;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    color: #2E86AB;
    margin-bottom: 4px;
}

.tpl-empty-title[b-dkvqcm2ch3] {
    font-size: 1rem;
    font-weight: 600;
    color: #495057;
    margin: 0;
}

.tpl-empty-sub[b-dkvqcm2ch3] {
    font-size: 0.88rem;
    color: #868e96;
    max-width: 360px;
    margin: 0;
}

/* ── Groups ─────────────────────────────────────────────── */

.tpl-group[b-dkvqcm2ch3] {
    margin-bottom: 32px;
}

.tpl-group-header[b-dkvqcm2ch3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #E9ECEF;
}

.tpl-group-label[b-dkvqcm2ch3] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #495057;
}

.tpl-group-icon[b-dkvqcm2ch3] {
    width: 24px;
    height: 24px;
    border-radius: 6px;
    background: #e8f4fb;
    color: #2E86AB;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
}

.tpl-group-count[b-dkvqcm2ch3] {
    font-size: 0.75rem;
    font-weight: 700;
    color: #6c757d;
    background: #f0f0f0;
    padding: 2px 8px;
    border-radius: 20px;
}

/* ── Cards ──────────────────────────────────────────────── */

.tpl-cards[b-dkvqcm2ch3] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.tpl-card[b-dkvqcm2ch3] {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #fff;
    border: 1px solid #E9ECEF;
    border-radius: 10px;
    padding: 14px 16px;
    transition: box-shadow 0.18s, border-color 0.18s;
}

.tpl-card:hover[b-dkvqcm2ch3] {
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.07);
    border-color: #d0d8e0;
}

.tpl-card--active[b-dkvqcm2ch3] {
    border-left: 3px solid #28a745;
}

.tpl-card--inactive[b-dkvqcm2ch3] {
    opacity: 0.72;
    border-left: 3px solid #dee2e6;
}

/* Status dot */
.tpl-card-status[b-dkvqcm2ch3] { flex-shrink: 0; }

.tpl-dot[b-dkvqcm2ch3] { font-size: 0.5rem; }
.tpl-dot--on[b-dkvqcm2ch3]  { color: #28a745; }
.tpl-dot--off[b-dkvqcm2ch3] { color: #ced4da; }

/* Card body */
.tpl-card-body[b-dkvqcm2ch3] {
    flex: 1;
    min-width: 0;
}

.tpl-card-name[b-dkvqcm2ch3] {
    font-weight: 600;
    font-size: 0.93rem;
    color: #212529;
    margin-bottom: 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tpl-card-fields[b-dkvqcm2ch3] {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.tpl-field-chip[b-dkvqcm2ch3] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 20px;
    background: #e8f0fe;
    color: #3367d6;
}

.tpl-field-chip--med[b-dkvqcm2ch3] {
    background: #fff3e0;
    color: #e65100;
}

.tpl-field-chip--off[b-dkvqcm2ch3] {
    background: #f0f0f0;
    color: #868e96;
}

/* Actions */
.tpl-card-actions[b-dkvqcm2ch3] {
    display: flex;
    gap: 4px;
    flex-shrink: 0;
}

.tpl-action-btn[b-dkvqcm2ch3] {
    width: 32px;
    height: 32px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: none;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.78rem;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.tpl-action-btn--edit[b-dkvqcm2ch3] {
    color: #495057;
}

.tpl-action-btn--edit:hover[b-dkvqcm2ch3] {
    background: #f0f0f0;
    border-color: #ced4da;
}

.tpl-action-btn--delete[b-dkvqcm2ch3] {
    color: #dc3545;
}

.tpl-action-btn--delete:hover[b-dkvqcm2ch3] {
    background: #fff0f1;
    border-color: #f5c6cb;
}
/* /Pages/SettingsPages/Sections/VisitTemplateModal.razor.rz.scp.css */
/* ── Modal container ────────────────────────────────────── */

.tpl-modal[b-wul5ulpzaf] {
    max-width: 820px;
}


/* ── Cabeçalho da seção Identificação (título + toggle) ─── */

.tpl-identification-header[b-wul5ulpzaf] {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 1.25rem;
}

.tpl-identification-header .section-title-modal[b-wul5ulpzaf] {
    margin-bottom: 0;
    flex: 1; /* ocupa o espaço disponível; ::after cresce dentro do título */
}

/* ── Status toggle ──────────────────────────────────────── */

.tpl-switch-wrap[b-wul5ulpzaf] {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 42px;
    cursor: pointer;
    user-select: none;
    margin: 0;
}

.tpl-switch[b-wul5ulpzaf] {
    position: relative;
    width: 44px;
    height: 24px;
    flex-shrink: 0;
}

.tpl-switch input[b-wul5ulpzaf] { display: none; }

.tpl-slider[b-wul5ulpzaf] {
    position: absolute;
    inset: 0;
    background: #ced4da;
    border-radius: 24px;
    cursor: pointer;
    transition: background 0.2s;
}

.tpl-slider[b-wul5ulpzaf]::before {
    content: '';
    position: absolute;
    width: 18px;
    height: 18px;
    background: #fff;
    border-radius: 50%;
    left: 3px;
    top: 3px;
    transition: transform 0.2s;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

.tpl-switch input:checked + .tpl-slider[b-wul5ulpzaf] { background: #28a745; }
.tpl-switch input:checked + .tpl-slider[b-wul5ulpzaf]::before { transform: translateX(20px); }

.tpl-switch-label[b-wul5ulpzaf] {
    font-size: 0.88rem;
    font-weight: 600;
    color: #868e96;
    white-space: nowrap;
}

.tpl-switch-label--on[b-wul5ulpzaf] { color: #28a745; }

.tpl-hint[b-wul5ulpzaf] {
    font-size: 0.73rem;
    color: #9ca3af;
    margin-top: 3px;
    display: block;
}

/* ── Medication form ────────────────────────────────────── */

.tpl-med-form[b-wul5ulpzaf] {
    display: flex;
    align-items: flex-end;
    gap: 10px;
    background: #f8fafc;
    border: 1px solid #E9ECEF;
    border-radius: 10px;
    padding: 14px;
    margin-bottom: 12px;
}

.tpl-med-inputs[b-wul5ulpzaf] {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 0.65fr) minmax(0, 0.65fr);
    gap: 10px;
    flex: 1;
    min-width: 0;
    align-items: flex-end;
}

/* Grid cuida do dimensionamento — flex/min-width não se aplicam */
.tpl-med-name[b-wul5ulpzaf]  { min-width: 0; }
.tpl-med-small[b-wul5ulpzaf] { min-width: 0; }
.tpl-med-tiny[b-wul5ulpzaf]  { min-width: 0; }

.tpl-add-med-btn[b-wul5ulpzaf] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    border: none;
    background: #2E86AB;
    color: white;
    font-size: 0.9rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 0.15s, transform 0.1s;
}

.tpl-add-med-btn:hover:not(:disabled)[b-wul5ulpzaf] {
    background: #236d8c;
    transform: translateY(-1px);
}

.tpl-add-med-btn:disabled[b-wul5ulpzaf] {
    background: #ced4da;
    cursor: not-allowed;
}

/* ── Medication list ────────────────────────────────────── */

.tpl-med-list[b-wul5ulpzaf] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.tpl-med-row[b-wul5ulpzaf] {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    border: 1px solid #E9ECEF;
    border-left: 3px solid #2E86AB;
    border-radius: 8px;
    padding: 10px 12px;
    transition: box-shadow 0.15s;
}

.tpl-med-row:hover[b-wul5ulpzaf] { box-shadow: 0 1px 6px rgba(0,0,0,0.06); }

.tpl-med-icon[b-wul5ulpzaf] {
    color: #2E86AB;
    font-size: 0.85rem;
    flex-shrink: 0;
}

.tpl-med-info[b-wul5ulpzaf] {
    flex: 1;
    min-width: 0;
}

.tpl-med-name[b-wul5ulpzaf] {
    font-weight: 600;
    font-size: 0.9rem;
    color: #212529;
    display: block;
    margin-bottom: 4px;
}

.tpl-med-chips[b-wul5ulpzaf] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.tpl-med-chip[b-wul5ulpzaf] {
    font-size: 0.72rem;
    font-weight: 500;
    color: #6c757d;
    background: #f0f2f4;
    padding: 2px 7px;
    border-radius: 20px;
}

.tpl-med-empty[b-wul5ulpzaf] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #9ca3af;
    font-size: 0.85rem;
    font-style: italic;
    padding: 10px 4px;
}

.tpl-med-empty i[b-wul5ulpzaf] { font-size: 0.9rem; }

/* ── Remove button ──────────────────────────────────────── */

.tpl-action-btn[b-wul5ulpzaf] {
    width: 32px;
    height: 32px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: none;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.78rem;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.tpl-action-btn--delete[b-wul5ulpzaf] {
    color: #dc3545;
}

.tpl-action-btn--delete:hover[b-wul5ulpzaf] {
    background: #fff0f1;
    border-color: #f5c6cb;
}

/* ── Required mark ──────────────────────────────────────── */
.required[b-wul5ulpzaf] { color: #dc3545; }
/* /Pages/SettingsPages/SettingsPage.razor.rz.scp.css */
.settings-container[b-gnl1nct85p] {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 30px;
}

.settings-content[b-gnl1nct85p] {
  background: white;
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  display: flex;
}

.content-section[b-gnl1nct85p] {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 30px;
}

.form-grid[b-gnl1nct85p] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 20px;
}

.form-group[b-gnl1nct85p] {
  margin-bottom: 20px;
}

.form-label[b-gnl1nct85p] {
  display: block;
  margin-bottom: 8px;
  color: #495057;
  font-weight: 500;
  font-size: 0.9rem;
}

.form-control[b-gnl1nct85p] {
  width: 100%;
  padding: 12px 15px;
  border: 1px solid #E9ECEF;
  border-radius: 8px;
  font-size: 0.9rem;
  transition: all 0.3s ease;
}

.form-control:focus[b-gnl1nct85p] {
  outline: none;
  border-color: #2E86AB;
  box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.toggle-switch[b-gnl1nct85p] {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 24px;
}

.toggle-switch input[b-gnl1nct85p] {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider[b-gnl1nct85p] {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: .4s;
  border-radius: 24px;
}

.slider[b-gnl1nct85p]:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  transition: .4s;
  border-radius: 50%;
}

input:checked+.slider[b-gnl1nct85p] {
  background-color: #2E86AB;
}

input:checked+.slider[b-gnl1nct85p]:before {
  transform: translateX(26px);
}

/* .setting-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 0;
  border-bottom: 1px solid #F1F3F4;
}

.setting-item:last-child {
  border-bottom: none;
}

.setting-info {
  flex: 1;
}

.setting-name {
  font-weight: 500;
  color: #495057;
  margin-bottom: 3px;
}

.setting-desc {
  font-size: 0.85rem;
  color: #6C757D;
} */

/* .user-card {
  background: #F8F9FA;
  padding: 20px;
  border-radius: 12px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 15px;
}

.user-avatar {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: linear-gradient(135deg, #2E86AB, #28A745);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 1.5rem;
  font-weight: 600;
}

.user-info {
  flex: 1;
}

.user-name {
  font-size: 1.1rem;
  font-weight: 600;
  color: #495057;
  margin-bottom: 3px;
}

.user-role {
  color: #6C757D;
  font-size: 0.9rem;
}

.user-actions {
  display: flex;
  gap: 10px;
} */

.btn-sm[b-gnl1nct85p] {
  padding: 6px 12px;
  font-size: 0.8rem;
}
/* 
.integration-card {
  border: 1px solid #E9ECEF;
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 20px;
  transition: all 0.3s ease;
}

.integration-card:hover {
  border-color: #2E86AB;
  box-shadow: 0 4px 15px rgba(46, 134, 171, 0.1);
}

.integration-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}

.integration-info {
  display: flex;
  align-items: center;
  gap: 15px;
}

.integration-icon {
  width: 50px;
  height: 50px;
  border-radius: 12px;
  background: linear-gradient(135deg, #2E86AB, #28A745);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 1.3rem;
}

.integration-details h4 {
  color: #495057;
  font-weight: 600;
  margin-bottom: 3px;
}

.integration-details p {
  color: #6C757D;
  font-size: 0.9rem;
} */

/* .status-badge {
  padding: 4px 12px;
  border-radius: 20px;
  font-size: 0.8rem;
  font-weight: 500;
}

.status-connected {
  background: #E8F5E8;
  color: #2E7D32;
}

.status-disconnected {
  background: #FFEBEE;
  color: #C62828;
} */

/* .backup-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px;
  background: #F8F9FA;
  border-radius: 8px;
  margin-bottom: 10px;
}

.backup-info {
  flex: 1;
} */

/* .backup-date {
  font-weight: 500;
  color: #495057;
}

.backup-size {
  font-size: 0.85rem;
  color: #6C757D;
} */

/* .backup-actions {
  display: flex;
  gap: 10px;
} */

@media (max-width: 768px) {
  .settings-container[b-gnl1nct85p] {
    grid-template-columns: 1fr;
  }
}
/* /Pages/StockPages/StockPage.razor.rz.scp.css */
/* ── Stats Dashboard ── */
.inventory-dashboard[b-t8cnf6vt78] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

.stat-card[b-t8cnf6vt78] {
    background: white;
    border-radius: 20px;
    padding: 1.5rem;
    border: 1px solid var(--border-glass);
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.stat-icon[b-t8cnf6vt78] {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.stat-icon.warning[b-t8cnf6vt78] { background: #fff3cd; color: #856404; }
.stat-icon.caution[b-t8cnf6vt78] { background: #ffe8cc; color: #c2440b; }
.stat-icon.danger[b-t8cnf6vt78]  { background: #f8d7da; color: #721c24; }
.stat-icon.muted[b-t8cnf6vt78]   { background: #F1F3F5; color: #6C757D; }
.stat-icon.success[b-t8cnf6vt78] { background: #d4edda; color: #155724; }

.stat-info label[b-t8cnf6vt78] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #636e72;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.stat-info h3[b-t8cnf6vt78] {
    font-size: 1.6rem;
    font-weight: 700;
    color: #2d3436;
    margin: 0;
}


.total-badge[b-t8cnf6vt78] {
    font-size: 0.78rem;
    background: #F1F5F9;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    color: #6C757D;
    font-weight: 600;
}

/* ── Tabs integradas ao card-header da tabela ── */
.table-tabs[b-t8cnf6vt78] {
    display: flex;
    gap: 0.25rem;
}

.table-tab-btn[b-t8cnf6vt78] {
    padding: 0.35rem 0.85rem;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    color: #9CA3AF;
    transition: all 0.18s;
}

.table-tab-btn:hover:not(.active)[b-t8cnf6vt78] {
    background: #F1F5F9;
    color: #6C757D;
}

.table-tab-btn.active[b-t8cnf6vt78] {
    background: rgba(46, 134, 171, 0.1);
    border-color: rgba(46, 134, 171, 0.25);
    color: #2E86AB;
}

/* Row accents */
.row-expired td:first-child[b-t8cnf6vt78]  { border-left: 3px solid #dc2626; }
.row-expiring td:first-child[b-t8cnf6vt78] { border-left: 3px solid #d97706; }

/* ── Product cell ── */
.prod-cell[b-t8cnf6vt78] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.prod-name[b-t8cnf6vt78] {
    font-weight: 600;
    color: #374151;
    font-size: 0.9rem;
}

.prod-meta[b-t8cnf6vt78] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.prod-sku[b-t8cnf6vt78] {
    font-size: 0.72rem;
    background: #F1F5F9;
    color: #64748B;
    padding: 1px 6px;
    border-radius: 4px;
    font-family: monospace;
    letter-spacing: 0.03em;
}

.prod-cat[b-t8cnf6vt78] {
    font-size: 0.75rem;
    color: #9CA3AF;
}

.prod-cat[b-t8cnf6vt78]::before { content: "·"; margin-right: 4px; color: #D1D5DB; }

.prod-lot[b-t8cnf6vt78] {
    font-size: 0.72rem;
    color: #B45309;
    font-weight: 500;
    background: #FEF3C7;
    padding: 1px 6px;
    border-radius: 4px;
}

.prod-loc[b-t8cnf6vt78] {
    font-size: 0.75rem;
    color: #2E86AB;
    font-weight: 500;
}

.prod-loc[b-t8cnf6vt78]::before { content: "·"; margin-right: 4px; color: #D1D5DB; }

/* ── Stock level cell ── */
.stock-level[b-t8cnf6vt78] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    min-width: 80px;
}

.qty-num[b-t8cnf6vt78] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #374151;
    line-height: 1;
}

.qty-num.critical[b-t8cnf6vt78] { color: #dc2626; }

.qty-bar[b-t8cnf6vt78] {
    width: 64px;
    height: 5px;
    background: #E9ECEF;
    border-radius: 10px;
    overflow: hidden;
}

.qty-bar-fill[b-t8cnf6vt78] {
    height: 100%;
    background: #28A745;
    border-radius: 10px;
    transition: width 0.4s ease;
    min-width: 4px;
}

.qty-bar-fill.critical[b-t8cnf6vt78] { background: #dc2626; }

.qty-min-label[b-t8cnf6vt78] {
    font-size: 0.7rem;
    color: #ADB5BD;
    font-weight: 500;
}

/* ── Expiration ── */
.exp-ok[b-t8cnf6vt78]      { color: #374151; }
.exp-warning[b-t8cnf6vt78] { color: #d97706; font-weight: 600; }
.exp-danger[b-t8cnf6vt78]  { color: #dc2626; font-weight: 600; }

/* ── Status pills ── */
.status-pills[b-t8cnf6vt78] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    justify-content: center;
}

.status-pill[b-t8cnf6vt78] {
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-pill.success[b-t8cnf6vt78] { background: #D4EDDA; color: #155724; }
.status-pill.warning[b-t8cnf6vt78] { background: #FFF3CD; color: #856404; }
.status-pill.danger[b-t8cnf6vt78]  { background: #F8D7DA; color: #721C24; }

/* ── Empty state ── */
.empty-state[b-t8cnf6vt78] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    color: #9E9E9E;
    gap: 12px;
    text-align: center;
}

.empty-state i[b-t8cnf6vt78]  { font-size: 3rem; color: #DEE2E6; }
.empty-state h3[b-t8cnf6vt78] { margin: 0; font-size: 1.1rem; color: #6C757D; }
.empty-state p[b-t8cnf6vt78]  { margin: 0; font-size: 0.88rem; }

/* ── Responsive ── */
@media (max-width: 1200px) {
    .inventory-dashboard[b-t8cnf6vt78] { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
    .inventory-dashboard[b-t8cnf6vt78] { grid-template-columns: 1fr; }
    .stock-toolbar[b-t8cnf6vt78] { flex-direction: column; align-items: flex-start; }
    .toolbar-actions[b-t8cnf6vt78] { align-self: flex-end; }
}
/* /Pages/UserPerfil.razor.rz.scp.css */
.btn-primary[b-0wxxcmfy13] {
    background: linear-gradient(135deg, #2E86AB, #28A745);
    color: white;
}

.btn-outline[b-0wxxcmfy13] {
    background: white;
    color: #2E86AB;
    border: 2px solid #2E86AB;
}

.btn:hover[b-0wxxcmfy13] {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(46, 134, 171, 0.3);
}

.profile-container[b-0wxxcmfy13] {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 30px;
}

.profile-sidebar[b-0wxxcmfy13] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 30px;
    height: fit-content;
}

.profile-photo[b-0wxxcmfy13] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2E86AB, #28A745);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
    color: white;
    margin: 0 auto 20px;
    position: relative;
    overflow: hidden;
}

.profile-photo img[b-0wxxcmfy13] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-photo-edit[b-0wxxcmfy13] {
    position: absolute;
    bottom: 5px;
    right: 5px;
    width: 30px;
    height: 30px;
    background: #28A745;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    cursor: pointer;
    font-size: 0.8rem;
}

.profile-name[b-0wxxcmfy13] {
    text-align: center;
    margin-bottom: 20px;
}

.profile-name h2[b-0wxxcmfy13] {
    color: #2E86AB;
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 5px;
}

.profile-specialty[b-0wxxcmfy13] {
    color: #6C757D;
    font-size: 0.9rem;
    margin-bottom: 10px;
}

.profile-status[b-0wxxcmfy13] {
    display: inline-block;
    padding: 4px 12px;
    background: #E8F5E8;
    color: #28A745;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
}

.profile-stats[b-0wxxcmfy13] {
    margin-top: 30px;
}

.stat-item[b-0wxxcmfy13] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid #E9ECEF;
}

.stat-item:last-child[b-0wxxcmfy13] {
    border-bottom: none;
}

.stat-label[b-0wxxcmfy13] {
    color: #6C757D;
    font-size: 0.9rem;
}

.stat-value[b-0wxxcmfy13] {
    color: #2E86AB;
    font-weight: 600;
}

.profile-main[b-0wxxcmfy13] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

.profile-tabs[b-0wxxcmfy13] {
    display: flex;
    background: #F8F9FA;
    border-bottom: 1px solid #E9ECEF;
}

.tab-button[b-0wxxcmfy13] {
    flex: 1;
    padding: 20px;
    background: none;
    border: none;
    font-size: 0.9rem;
    font-weight: 500;
    color: #6C757D;
    cursor: pointer;
    transition: all 0.3s ease;
    border-bottom: 3px solid transparent;
}

.tab-button.active[b-0wxxcmfy13] {
    color: #2E86AB;
    border-bottom-color: #2E86AB;
    background: white;
}

.tab-content[b-0wxxcmfy13] {
    padding: 30px;
}

.tab-pane[b-0wxxcmfy13] {
    display: none;
}

.tab-pane.active[b-0wxxcmfy13] {
    display: block;
}

.form-section[b-0wxxcmfy13] {
    margin-bottom: 30px;
}

.section-title[b-0wxxcmfy13] {
    font-size: 1.2rem;
    font-weight: 600;
    color: #2E86AB;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.section-title i[b-0wxxcmfy13] {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #E3F2FD;
    color: #2E86AB;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
}

.form-grid[b-0wxxcmfy13] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
}

.form-grid.two-columns[b-0wxxcmfy13] {
    grid-template-columns: 1fr 1fr;
}

.form-group[b-0wxxcmfy13] {
    display: flex;
    flex-direction: column;
}

.form-label[b-0wxxcmfy13] {
    font-size: 0.9rem;
    font-weight: 500;
    color: #495057;
    margin-bottom: 8px;
}

.form-input[b-0wxxcmfy13] {
    padding: 12px 15px;
    border: 1px solid #E9ECEF;
    border-radius: 8px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    background: white;
}

.form-input:focus[b-0wxxcmfy13] {
    outline: none;
    border-color: #2E86AB;
    box-shadow: 0 0 0 3px rgba(46, 134, 171, 0.1);
}

.form-textarea[b-0wxxcmfy13] {
    min-height: 100px;
    resize: vertical;
}

.form-select[b-0wxxcmfy13] {
    appearance: none;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
    background-position: right 12px center;
    background-repeat: no-repeat;
    background-size: 16px;
    padding-right: 40px;
}

.schedule-grid[b-0wxxcmfy13] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 10px;
    margin-top: 20px;
}

.schedule-day[b-0wxxcmfy13] {
    text-align: center;
    padding: 15px 10px;
    border: 1px solid #E9ECEF;
    border-radius: 8px;
    background: white;
}

.schedule-day.active[b-0wxxcmfy13] {
    background: #E3F2FD;
    border-color: #2E86AB;
}

.day-name[b-0wxxcmfy13] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #6C757D;
    margin-bottom: 10px;
}

.time-input[b-0wxxcmfy13] {
    width: 100%;
    padding: 5px;
    border: 1px solid #E9ECEF;
    border-radius: 4px;
    font-size: 0.8rem;
    margin-bottom: 5px;
}

.security-item[b-0wxxcmfy13] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border: 1px solid #E9ECEF;
    border-radius: 12px;
    margin-bottom: 15px;
}

.security-info[b-0wxxcmfy13] {
    display: flex;
    align-items: center;
    gap: 15px;
}

.security-icon[b-0wxxcmfy13] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #E3F2FD;
    color: #2E86AB;
    display: flex;
    align-items: center;
    justify-content: center;
}

.security-text h4[b-0wxxcmfy13] {
    color: #2E86AB;
    font-size: 1rem;
    margin-bottom: 5px;
}

.security-text p[b-0wxxcmfy13] {
    color: #6C757D;
    font-size: 0.8rem;
}

.toggle-switch[b-0wxxcmfy13] {
    position: relative;
    width: 50px;
    height: 24px;
    background: #E9ECEF;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.toggle-switch.active[b-0wxxcmfy13] {
    background: #28A745;
}

.toggle-switch[b-0wxxcmfy13]::after {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 20px;
    height: 20px;
    background: white;
    border-radius: 50%;
    transition: all 0.3s ease;
}

.toggle-switch.active[b-0wxxcmfy13]::after {
    left: 28px;
}

.form-actions[b-0wxxcmfy13] {
    display: flex;
    justify-content: flex-end;
    gap: 15px;
    padding: 25px 30px;
    background: #F8F9FA;
    border-top: 1px solid #E9ECEF;
}

.btn-secondary[b-0wxxcmfy13] {
    background: #6C757D;
    color: white;
}

.btn-success[b-0wxxcmfy13] {
    background: linear-gradient(135deg, #28A745, #20C997);
    color: white;
}

@media (max-width: 768px) {
    .profile-container[b-0wxxcmfy13] {
        grid-template-columns: 1fr;
    }

    .form-grid[b-0wxxcmfy13] {
        grid-template-columns: 1fr;
    }

    .form-grid.two-columns[b-0wxxcmfy13] {
        grid-template-columns: 1fr;
    }

    .schedule-grid[b-0wxxcmfy13] {
        grid-template-columns: 1fr;
    }
}
