/* /Components/Account/Pages/RegisterConfirmation.razor.rz.scp.css */
.register-confirmation-actions[b-ltd64y8xol] {
    margin-top: 1.5rem;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-01e9v26xxd] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-01e9v26xxd] {
    flex: 1;
}

.sidebar[b-01e9v26xxd] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-01e9v26xxd] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-01e9v26xxd]  a, .top-row[b-01e9v26xxd]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-01e9v26xxd]  a:hover, .top-row[b-01e9v26xxd]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-01e9v26xxd]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-01e9v26xxd] {
        justify-content: space-between;
    }

    .top-row[b-01e9v26xxd]  a, .top-row[b-01e9v26xxd]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-01e9v26xxd] {
        flex-direction: row;
    }

    .sidebar[b-01e9v26xxd] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-01e9v26xxd] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-01e9v26xxd]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-01e9v26xxd], article[b-01e9v26xxd] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-01e9v26xxd] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-01e9v26xxd] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-n6g9ze2k30] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-n6g9ze2k30] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-n6g9ze2k30] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-n6g9ze2k30] {
    font-size: 1.1rem;
}

.bi[b-n6g9ze2k30] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-n6g9ze2k30] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-n6g9ze2k30] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-n6g9ze2k30] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.bi-lock-nav-menu[b-n6g9ze2k30] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath d='M8 1a2 2 0 0 1 2 2v4H6V3a2 2 0 0 1 2-2zm3 6V3a3 3 0 0 0-6 0v4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2zM5 8h6a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9a1 1 0 0 1 1-1z'/%3E%3C/svg%3E");
}

.bi-person-nav-menu[b-n6g9ze2k30] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person' viewBox='0 0 16 16'%3E%3Cpath d='M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z'/%3E%3C/svg%3E");
}

.bi-person-badge-nav-menu[b-n6g9ze2k30] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-badge' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 2a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0z'/%3E%3Cpath d='M4.5 0A2.5 2.5 0 0 0 2 2.5V14a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V2.5A2.5 2.5 0 0 0 11.5 0h-7zM3 2.5A1.5 1.5 0 0 1 4.5 1h7A1.5 1.5 0 0 1 13 2.5v10.795a4.2 4.2 0 0 0-.776-.492C11.392 12.387 10.063 12 8 12s-3.392.387-4.224.803a4.2 4.2 0 0 0-.776.492V2.5z'/%3E%3C/svg%3E");
}

.bi-person-fill-nav-menu[b-n6g9ze2k30] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-fill' viewBox='0 0 16 16'%3E%3Cpath d='M3 14s-1 0-1-1 1-4 6-4 6 3 6 4-1 1-1 1H3Zm5-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E");
}

.bi-arrow-bar-left-nav-menu[b-n6g9ze2k30] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-arrow-bar-left' viewBox='0 0 16 16'%3E%3Cpath d='M12.5 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5ZM10 8a.5.5 0 0 1-.5.5H3.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L3.707 7.5H9.5a.5.5 0 0 1 .5.5Z'/%3E%3C/svg%3E");
}

.nav-item[b-n6g9ze2k30] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-n6g9ze2k30] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-n6g9ze2k30] {
        padding-bottom: 1rem;
    }

    .nav-item[b-n6g9ze2k30]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-n6g9ze2k30]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-n6g9ze2k30]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-n6g9ze2k30] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-n6g9ze2k30] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-n6g9ze2k30] {
        display: none;
    }

    .nav-scrollable[b-n6g9ze2k30] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* /Components/Pages/Clerk/Notifications.razor.rz.scp.css */
.tabs-container[b-htdfw5jmy7] {
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
    border-bottom: 2px solid #e5e7eb;
}

.tab-button[b-htdfw5jmy7] {
    padding: 12px 24px;
    background: none;
    border: none;
    border-bottom: 3px solid transparent;
    color: #6b7280;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: -2px;
    white-space: nowrap;
}

.tab-button:hover[b-htdfw5jmy7] {
    color: #2563eb;
    background: #f9fafb;
}

.tab-button.active[b-htdfw5jmy7] {
    color: #2563eb;
    border-bottom-color: #2563eb;
}

.tab-button i[b-htdfw5jmy7] {
    font-size: 16px;
}

.section-header[b-htdfw5jmy7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
}

.section-header h2[b-htdfw5jmy7] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
}

.empty-state[b-htdfw5jmy7] {
    text-align: center;
    padding: 3rem 1rem;
    color: #6b7280;
}

.empty-state i[b-htdfw5jmy7] {
    font-size: 3rem;
    margin-bottom: 1rem;
    color: #d1d5db;
}

.empty-state h3[b-htdfw5jmy7] {
    margin: 0.5rem 0;
    font-size: 1.1rem;
    color: #374151;
}

.empty-state p[b-htdfw5jmy7] {
    margin: 0;
    font-size: 0.9rem;
}

.status-badge[b-htdfw5jmy7] {
    display: inline-block;
    padding: 0.2rem 0.6rem;
    border-radius: 12px;
    font-size: 0.8rem;
    font-weight: 500;
}

.status-badge.active[b-htdfw5jmy7] {
    background-color: #d1fae5;
    color: #065f46;
}

.status-badge.inactive[b-htdfw5jmy7] {
    background-color: #f3f4f6;
    color: #6b7280;
}

.btn-sm[b-htdfw5jmy7] {
    padding: 0.75rem;
    font-size: 0.85rem;
    margin-right: 0.5rem;
}

.spin[b-htdfw5jmy7] {
    animation: vab-spin-b-htdfw5jmy7 0.8s linear infinite;
}

@keyframes vab-spin-b-htdfw5jmy7 {
    to { transform: rotate(360deg); }
}

.btn-outline[b-htdfw5jmy7] {
    background: transparent;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    cursor: pointer;
    color: #374151;
}

.btn-outline:hover[b-htdfw5jmy7] {
    background-color: #f3f4f6;
}

.btn-outline-danger[b-htdfw5jmy7] {
    background: transparent;
    border: 1px solid #fca5a5;
    border-radius: 6px;
    cursor: pointer;
    color: #dc2626;
}

.btn-outline-danger:hover[b-htdfw5jmy7] {
    background-color: #fef2f2;
}

.loading-spinner[b-htdfw5jmy7] {
    display: flex;
    justify-content: center;
    padding: 3rem;
}
/* /Components/Pages/Clerk/PaymentLookup.razor.rz.scp.css */
.payment-lookup-container[b-2sq7tzgsmt] {
    max-width: 760px;
    margin: 1.5rem auto;
    padding: 0 1rem;
}

.payment-lookup-card[b-2sq7tzgsmt] {
    background: #fff;
    border: 1px solid #e1e1e1;
    border-radius: 12px;
    padding: 1.75rem;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
}

.payment-lookup-label-input[b-2sq7tzgsmt] {
    display: block;
    font-weight: 600;
    color: #374151;
    margin-bottom: 0.5rem;
    font-size: 0.95rem;
}

.payment-lookup-input-row[b-2sq7tzgsmt] {
    display: flex;
    gap: 0.5rem;
    align-items: stretch;
}

.payment-lookup-input[b-2sq7tzgsmt] {
    flex: 1;
    padding: 0.625rem 0.875rem;
    font-size: 0.95rem;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.payment-lookup-input:focus[b-2sq7tzgsmt] {
    outline: none;
    border-color: var(--ebp-primary, #2563eb);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15);
}

.payment-lookup-btn[b-2sq7tzgsmt] {
    background: var(--ebp-primary, #2563eb);
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 0.625rem 1.25rem;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    white-space: nowrap;
}

.payment-lookup-btn:hover:not(:disabled)[b-2sq7tzgsmt] {
    filter: brightness(1.05);
}

.payment-lookup-btn:disabled[b-2sq7tzgsmt] {
    opacity: 0.6;
    cursor: not-allowed;
}

.payment-lookup-hint[b-2sq7tzgsmt] {
    color: #6b7280;
    font-size: 0.85rem;
    margin-top: 0.625rem;
    margin-bottom: 0;
}

.payment-lookup-error[b-2sq7tzgsmt] {
    margin-top: 1rem;
    padding: 0.75rem 1rem;
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
    border-radius: 8px;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.payment-lookup-result[b-2sq7tzgsmt] {
    margin-top: 1.5rem;
    border-top: 1px solid #e5e7eb;
    padding-top: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.payment-lookup-row[b-2sq7tzgsmt] {
    display: flex;
    align-items: baseline;
    gap: 1rem;
}

.payment-lookup-key[b-2sq7tzgsmt] {
    flex: 0 0 160px;
    color: #6b7280;
    font-size: 0.875rem;
    font-weight: 500;
}

.payment-lookup-value[b-2sq7tzgsmt] {
    flex: 1;
    color: #111827;
    font-size: 0.95rem;
    word-break: break-word;
}

.payment-lookup-mono[b-2sq7tzgsmt] {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.875rem;
    color: #374151;
}

.payment-lookup-petitions[b-2sq7tzgsmt] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.payment-lookup-petition-link[b-2sq7tzgsmt] {
    display: inline-block;
    padding: 0.25rem 0.625rem;
    background: #eff6ff;
    color: #1d4ed8;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    border: 1px solid #dbeafe;
}

.payment-lookup-petition-link:hover[b-2sq7tzgsmt] {
    background: #dbeafe;
    text-decoration: none;
}

.payment-lookup-badge[b-2sq7tzgsmt] {
    display: inline-block;
    padding: 0.25rem 0.625rem;
    border-radius: 999px;
    font-size: 0.8125rem;
    font-weight: 600;
}

.payment-lookup-badge-success[b-2sq7tzgsmt] {
    background: #dcfce7;
    color: #166534;
}

.payment-lookup-badge-error[b-2sq7tzgsmt] {
    background: #fee2e2;
    color: #991b1b;
}

.payment-lookup-badge-pending[b-2sq7tzgsmt] {
    background: #fef3c7;
    color: #92400e;
}

@media (max-width: 640px) {
    .payment-lookup-input-row[b-2sq7tzgsmt] {
        flex-direction: column;
    }

    .payment-lookup-row[b-2sq7tzgsmt] {
        flex-direction: column;
        gap: 0.25rem;
    }

    .payment-lookup-key[b-2sq7tzgsmt] {
        flex: 0 0 auto;
    }
}
/* /Components/Pages/Clerk/PetitionClerkEdit.razor.rz.scp.css */
.edit-form-container[b-173np0lrsn] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.collapsible-card[b-173np0lrsn] {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
}

.collapsible-card .card-header[b-173np0lrsn] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.5rem;
    background: #f9fafb;
    border-bottom: 1px solid #e5e7eb;
}

.collapsible-card .card-header.clickable[b-173np0lrsn] {
    cursor: pointer;
    transition: background-color 0.2s;
}

.collapsible-card .card-header.clickable:hover[b-173np0lrsn] {
    background: #f3f4f6;
}

.collapsible-card .card-header h2[b-173np0lrsn] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.collapsible-card.collapsed .card-header[b-173np0lrsn] {
    border-bottom: none;
}

.collapsible-card .card-content[b-173np0lrsn] {
    padding: 1.5rem;
}

.form-row[b-173np0lrsn] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
}

.form-group[b-173np0lrsn] {
    display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
}

.form-label[b-173np0lrsn] {
    font-weight: 500;
    margin-bottom: 0.5rem;
    color: #374151;
}

.form-input[b-173np0lrsn],
.form-select[b-173np0lrsn],
.form-textarea[b-173np0lrsn] {
    padding: 0.625rem 0.875rem;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 0.95rem;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.form-input:focus[b-173np0lrsn],
.form-select:focus[b-173np0lrsn],
.form-textarea:focus[b-173np0lrsn] {
    outline: none;
    border-color: var(--ebp-primary);
    box-shadow: 0 0 0 3px rgba(11, 42, 74, 0.1);
}

.form-textarea[b-173np0lrsn] {
    resize: vertical;
    min-height: 100px;
}

.checkbox-group[b-173np0lrsn] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.checkbox-label-block[b-173np0lrsn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
}

.radio-group[b-173np0lrsn] {
    display: flex;
    gap: 1.5rem;
}

.radio-label[b-173np0lrsn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
}

.radio-label input[type="radio"][b-173np0lrsn] {
    width: 1.125rem;
    height: 1.125rem;
    flex-shrink: 0;
    accent-color: var(--color-primary);
}

.date-tags[b-173np0lrsn] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.date-tag[b-173np0lrsn] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.75rem;
    background: #e5e7eb;
    border-radius: 999px;
    font-size: 0.875rem;
}

.date-tag .remove-date[b-173np0lrsn] {
    background: none;
    border: none;
    cursor: pointer;
    color: #6b7280;
    padding: 0;
    display: flex;
    align-items: center;
}

.date-tag .remove-date:hover[b-173np0lrsn] {
    color: #ef4444;
}

.file-list[b-173np0lrsn] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.file-item[b-173np0lrsn] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 1rem;
    background: #f9fafb;
    border-radius: 6px;
}

.file-item .file-name[b-173np0lrsn] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.file-item .file-date[b-173np0lrsn] {
    color: #6b7280;
    font-size: 0.875rem;
}

.no-files[b-173np0lrsn] {
    color: #6b7280;
    font-style: italic;
}

.upload-area[b-173np0lrsn] {
    padding: 1.5rem;
    border: 2px dashed #d1d5db;
    border-radius: 8px;
    text-align: center;
}

.upload-hint[b-173np0lrsn] {
    color: #6b7280;
    font-size: 0.875rem;
    margin-top: 0.5rem;
}

.pending-file-item[b-173np0lrsn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    color: var(--ebp-primary);
}

.alert[b-173np0lrsn] {
    padding: 1rem 1.25rem;
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.alert-danger[b-173np0lrsn] {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

.alert-success[b-173np0lrsn] {
    background: #f0fdf4;
    color: #16a34a;
    border: 1px solid #bbf7d0;
}

.btn-danger[b-173np0lrsn] {
    background: #ef4444;
    color: white;
    border: none;
    padding: 0.375rem 0.75rem;
    border-radius: 4px;
    cursor: pointer;
}

.btn-danger:hover[b-173np0lrsn] {
    background: #dc2626;
}

.btn-sm[b-173np0lrsn] {
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem;
}

.action-bar[b-173np0lrsn] {
    padding: 1rem 0;
    border-top: 1px solid #e5e7eb;
}
/* /Components/Pages/Clerk/VoucherRedemptionPage.razor.rz.scp.css */
.voucher-redemption-container[b-gn3pkj2s19] {
    max-width: 560px;
    margin: 2rem auto;
}

.voucher-redemption-card[b-gn3pkj2s19] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e7eb;
    padding: 2rem;
}

/* Lookup form */
.voucher-lookup-field[b-gn3pkj2s19] {
    margin-bottom: 1.25rem;
}

.voucher-lookup-field label[b-gn3pkj2s19] {
    display: block;
    font-weight: 600;
    font-size: 0.875rem;
    color: #374151;
    margin-bottom: 0.5rem;
}

.voucher-lookup-input[b-gn3pkj2s19] {
    width: 100%;
    height: 44px;
    padding: 0 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-family: 'Courier New', monospace;
    letter-spacing: 0.05em;
    font-size: 1.1rem;
    color: #111827;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    outline: none;
    box-sizing: border-box;
}

.voucher-lookup-input:focus[b-gn3pkj2s19] {
    border-color: #22c55e;
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.25);
}

/* Buttons */
.voucher-btn[b-gn3pkj2s19] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    height: 44px;
    padding: 0 1.5rem;
    border-radius: 8px;
    border: 1px solid transparent;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 150ms ease, box-shadow 150ms ease;
}

.voucher-btn:disabled[b-gn3pkj2s19] {
    opacity: 0.6;
    cursor: not-allowed;
}

.voucher-btn-primary[b-gn3pkj2s19] {
    background: #22c55e;
    color: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.voucher-btn-primary:hover:not(:disabled)[b-gn3pkj2s19] {
    background: #16a34a;
}

.voucher-btn-success[b-gn3pkj2s19] {
    background: #22c55e;
    color: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.voucher-btn-success:hover:not(:disabled)[b-gn3pkj2s19] {
    background: #16a34a;
}

.voucher-btn-danger-outline[b-gn3pkj2s19] {
    background: #fff;
    color: #dc2626;
    border: 1px solid #fca5a5;
}

.voucher-btn-danger-outline:hover:not(:disabled)[b-gn3pkj2s19] {
    background: #fef2f2;
}

.voucher-btn-link[b-gn3pkj2s19] {
    background: transparent;
    border: none;
    color: #6b7280;
    padding: 0;
    height: auto;
    font-weight: 500;
    cursor: pointer;
}

.voucher-btn-link:hover[b-gn3pkj2s19] {
    color: #111827;
}

/* Details card */
.voucher-details[b-gn3pkj2s19] {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.25rem;
}

.voucher-detail-row[b-gn3pkj2s19] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.4rem 0;
}

.voucher-detail-row + .voucher-detail-row[b-gn3pkj2s19] {
    border-top: 1px solid #f3f4f6;
}

.voucher-detail-label[b-gn3pkj2s19] {
    color: #6b7280;
    font-size: 0.875rem;
}

.voucher-detail-value[b-gn3pkj2s19] {
    font-weight: 500;
    color: #111827;
}

.voucher-code-mono[b-gn3pkj2s19] {
    font-family: 'Courier New', monospace;
    font-weight: 700;
}

.voucher-amount-row[b-gn3pkj2s19] {
    padding-top: 0.5rem;
    border-top: 2px solid #e5e7eb !important;
}

.voucher-amount-value[b-gn3pkj2s19] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #22c55e;
}

/* Receipt review section */
.voucher-receipt-review[b-gn3pkj2s19] {
    background: #fffbeb;
    border: 1px solid #fcd34d;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.25rem;
}

.voucher-receipt-review h3[b-gn3pkj2s19] {
    margin: 0 0 0.75rem;
    font-size: 1rem;
    color: #92400e;
}

.voucher-receipt-photo[b-gn3pkj2s19] {
    max-width: 100%;
    border-radius: 6px;
    border: 1px solid #d1d5db;
}

/* Info panel (no receipt yet) */
.voucher-info-panel[b-gn3pkj2s19] {
    background: #f0fdf4;
    border: 1px solid #86efac;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.25rem;
}

.voucher-info-panel p[b-gn3pkj2s19] {
    color: #166534;
    margin: 0 0 0.75rem;
}

.voucher-info-panel .voucher-lookup-input[b-gn3pkj2s19] {
    margin-bottom: 0;
}

.voucher-info-panel label[b-gn3pkj2s19] {
    display: block;
    font-weight: 600;
    font-size: 0.875rem;
    margin-bottom: 0.375rem;
    color: #374151;
}

/* Alerts */
.voucher-alert[b-gn3pkj2s19] {
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.25rem;
}

.voucher-alert-success[b-gn3pkj2s19] {
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #86efac;
}

.voucher-alert-error[b-gn3pkj2s19] {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fca5a5;
}

.voucher-alert strong[b-gn3pkj2s19] {
    display: block;
    margin-bottom: 0.25rem;
}

.voucher-alert p[b-gn3pkj2s19] {
    margin: 0;
}

/* Button row */
.voucher-btn-row[b-gn3pkj2s19] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.voucher-back-link[b-gn3pkj2s19] {
    margin-top: 1.25rem;
}
/* /Components/Pages/Petitioner/MyHearing.razor.rz.scp.css */
.hearing-empty-wrap[b-6oc6m2dxd4] {
    display: flex;
    justify-content: center;
    padding: 3rem 1rem;
}

.hearing-empty-card[b-6oc6m2dxd4] {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    padding: 2.5rem 2rem;
    max-width: 520px;
    width: 100%;
    text-align: center;
}

.hearing-empty-icon[b-6oc6m2dxd4] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #eff6ff;
    color: #2563eb;
    font-size: 1.75rem;
    margin-bottom: 1.25rem;
}

.hearing-empty-card h2[b-6oc6m2dxd4] {
    font-size: 1.35rem;
    font-weight: 600;
    color: #111827;
    margin: 0 0 0.75rem 0;
}

.hearing-empty-card p[b-6oc6m2dxd4] {
    color: #6b7280;
    line-height: 1.5;
    margin: 0 0 1.75rem 0;
}
/* /Components/Pages/Petitioner/MySettings.razor.rz.scp.css */
textarea[b-31ab6oq9o5] {
    resize: none;
}

.settings-container[b-31ab6oq9o5] {
    max-width: 1400px;
    margin: 0 auto;
}

/* 2-pane layout */
.settings-layout[b-31ab6oq9o5] {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}

.settings-nav[b-31ab6oq9o5] {
    width: 220px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 8px;
    position: sticky;
    top: 16px;
}

.settings-content[b-31ab6oq9o5] {
    flex: 1;
    min-width: 0;
}

/* Tab Button Styles */
.tab-button[b-31ab6oq9o5] {
    padding: 10px 14px;
    background: none;
    border: none;
    border-radius: 6px;
    color: #6b7280;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    text-align: left;
}

    .tab-button:hover[b-31ab6oq9o5] {
        color: var(--ebp-primary);
        background: #f0f7ff;
    }

    .tab-button.active[b-31ab6oq9o5] {
        color: var(--ebp-primary);
        background: #eff6ff;
        font-weight: 600;
    }

    .tab-button i[b-31ab6oq9o5] {
        font-size: 15px;
        width: 18px;
        text-align: center;
        flex-shrink: 0;
    }

/* Chip Input Styles */
.chip-input-container[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.chip-input-wrapper[b-31ab6oq9o5] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    padding: 8px;
    border: 2px solid #d1d5db;
    border-radius: 8px;
    background: white;
    min-height: 120px;
    max-height: 300px;
    overflow-y: auto;
    cursor: text;
    transition: border-color 0.2s;
}

    .chip-input-wrapper:hover[b-31ab6oq9o5] {
        border-color: #9ca3af;
    }

    .chip-input-wrapper:focus-within[b-31ab6oq9o5] {
        border-color: var(--ebp-primary);
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
    }

.chip[b-31ab6oq9o5] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    color: #1e40af;
    animation: chipAppear 0.2s ease-out;
}

@@keyframes chipAppear {
    from[b-31ab6oq9o5] {
        opacity: 0;
        transform: scale(0.8);
    }

    to[b-31ab6oq9o5] {
        opacity: 1;
        transform: scale(1);
    }
}

.chip-text[b-31ab6oq9o5] {
    font-family: 'Courier New', monospace;
}

.chip-remove[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 3px;
    cursor: pointer;
    color: #3b82f6;
    transition: all 0.15s;
}

    .chip-remove:hover[b-31ab6oq9o5] {
        background: #3b82f6;
        color: white;
    }

    .chip-remove i[b-31ab6oq9o5] {
        font-size: 10px;
    }

.chip-input[b-31ab6oq9o5] {
    flex: 1;
    min-width: 200px;
    padding: 6px 4px;
    border: none;
    outline: none;
    font-size: 14px;
    background: transparent;
}

    .chip-input[b-31ab6oq9o5]::placeholder {
        color: #9ca3af;
    }

.chip-input-hint[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #6b7280;
    padding: 4px 8px;
    background: #f9fafb;
    border-radius: 6px;
}

    .chip-input-hint i[b-31ab6oq9o5] {
        color: #fbbf24;
    }

    .chip-input-hint kbd[b-31ab6oq9o5] {
        display: inline-block;
        padding: 2px 6px;
        background: white;
        border: 1px solid #d1d5db;
        border-radius: 4px;
        font-size: 11px;
        font-family: monospace;
        font-weight: 600;
        color: #374151;
        box-shadow: 0 1px 2px rgba(0,0,0,0.05);
    }

/* Resources Content */
.resources-content[b-31ab6oq9o5] {
    margin-top: 12px;
}

.section-description[b-31ab6oq9o5] {
    color: #6b7280;
    font-size: 14px;
    margin: 0 0 12px 0;
    line-height: 1.5;
}

/* Upload Section */
.upload-section[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.upload-label[b-31ab6oq9o5] {
    font-weight: 500;
    color: #333;
    display: flex;
    align-items: center;
    gap: 8px;
}

.file-upload-input[b-31ab6oq9o5] {
    position: relative;
}

[b-31ab6oq9o5] .file-input {
    position: absolute;
    visibility: hidden;
}

/* Resources List */
.resources-list[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.list-header[b-31ab6oq9o5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
}

.resource-items[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.resource-item[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    transition: all 0.2s;
}

    .resource-item:hover[b-31ab6oq9o5] {
        border-color: #d1d5db;
        box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    }

.resource-icon[b-31ab6oq9o5] {
    width: 40px;
    height: 40px;
    background: white;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

    .resource-icon i[b-31ab6oq9o5] {
        font-size: 20px;
        color: var(--ebp-primary);
    }

.resource-details[b-31ab6oq9o5] {
    flex: 1;
    min-width: 0;
}

.resource-title[b-31ab6oq9o5] {
    font-weight: 600;
    color: #1a1a1a;
    font-size: 15px;
    margin-bottom: 4px;
}

.resource-description[b-31ab6oq9o5] {
    color: #6b7280;
    font-size: 13px;
    line-height: 1.4;
    margin-bottom: 6px;
}

.resource-meta[b-31ab6oq9o5] {
    display: flex;
    gap: 16px;
    font-size: 13px;
    color: #6b7280;
}

    .resource-meta span[b-31ab6oq9o5] {
        display: flex;
        align-items: center;
        gap: 4px;
    }

    .resource-meta i[b-31ab6oq9o5] {
        font-size: 12px;
    }

.resource-url[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
}

    .resource-url i[b-31ab6oq9o5] {
        font-size: 12px;
        color: #9ca3af;
    }

    .resource-url a[b-31ab6oq9o5] {
        color: var(--ebp-primary);
        text-decoration: none;
        font-size: 13px;
    }

        .resource-url a:hover[b-31ab6oq9o5] {
            text-decoration: underline;
        }

.resource-actions[b-31ab6oq9o5] {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}

.btn-icon[b-31ab6oq9o5] {
    width: 36px;
    height: 36px;
    border: 1px solid #d1d5db;
    background: white;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    color: #6b7280;
}

    .btn-icon:hover[b-31ab6oq9o5] {
        background: #f9fafb;
        border-color: var(--ebp-primary);
        color: var(--ebp-primary);
    }

    .btn-icon.btn-edit[b-31ab6oq9o5] {
        color: var(--ebp-primary);
        border-color: #93c5fd;
        background: #eff6ff;
    }

        .btn-icon.btn-edit:hover[b-31ab6oq9o5] {
            background: #dbeafe;
            border-color: var(--ebp-primary);
            color: #1d4ed8;
        }

    .btn-icon.btn-download[b-31ab6oq9o5] {
        color: #059669;
        border-color: #6ee7b7;
        background: #ecfdf5;
    }

        .btn-icon.btn-download:hover[b-31ab6oq9o5] {
            background: #d1fae5;
            border-color: #059669;
            color: #047857;
        }

    .btn-icon.btn-danger[b-31ab6oq9o5] {
        color: #ef4444;
        border-color: #fca5a5;
        background: #fef2f2;
    }

        .btn-icon.btn-danger:hover[b-31ab6oq9o5] {
            background: #fee2e2;
            border-color: #ef4444;
            color: #dc2626;
        }

/* Empty State */
.empty-state[b-31ab6oq9o5] {
    text-align: center;
    padding: 48px 16px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}

    .empty-state i[b-31ab6oq9o5] {
        font-size: 48px;
        color: #d1d5db;
        margin-bottom: 12px;
    }

    .empty-state p[b-31ab6oq9o5] {
        color: #6b7280;
        font-weight: 500;
        margin: 0 0 4px 0;
        font-size: 16px;
    }

    .empty-state small[b-31ab6oq9o5] {
        color: #9ca3af;
        font-size: 14px;
    }

/* Add Link Section */
.add-link-section[b-31ab6oq9o5] {
    margin-bottom: 14px;
}

.link-form[b-31ab6oq9o5] {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.form-header[b-31ab6oq9o5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
}

    .form-header h3[b-31ab6oq9o5] {
        font-size: 16px;
        color: #1a1a1a;
        margin: 0;
    }

.btn-close[b-31ab6oq9o5] {
    width: 32px;
    height: 32px;
    border: none;
    background: white;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #6b7280;
    transition: all 0.2s;
}

    .btn-close:hover[b-31ab6oq9o5] {
        background: #f3f4f6;
        color: #1a1a1a;
    }

.form-actions[b-31ab6oq9o5] {
    display: flex;
    gap: 12px;
    justify-content: flex-end;
    margin-top: 8px;
}

.btn-block[b-31ab6oq9o5] {
    width: 100%;
    justify-content: center;
}

/* Deadline Table Styles */
.table-responsive[b-31ab6oq9o5] {
    overflow-x: auto;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}

.deadline-table[b-31ab6oq9o5] {
    width: 100%;
    border-collapse: collapse;
    background: white;
}

    .deadline-table th[b-31ab6oq9o5] {
        background: #f9fafb;
        padding: 12px 16px;
        text-align: left;
        font-size: 13px;
        font-weight: 600;
        color: #4b5563;
        border-bottom: 1px solid #e5e7eb;
        white-space: nowrap;
    }

    .deadline-table td[b-31ab6oq9o5] {
        padding: 14px 16px;
        font-size: 14px;
        color: #374151;
        border-bottom: 1px solid #f3f4f6;
        vertical-align: middle;
    }

    .deadline-table tr:last-child td[b-31ab6oq9o5] {
        border-bottom: none;
    }

    .deadline-table tr:hover td[b-31ab6oq9o5] {
        background-color: #f9fafb;
    }

.fw-bold[b-31ab6oq9o5] {
    font-weight: 600;
}

.text-center[b-31ab6oq9o5] {
    text-align: center;
}

.py-4[b-31ab6oq9o5] {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

/* Existing Styles */
.cards-grid[b-31ab6oq9o5] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-bottom: 16px;
}

.card[b-31ab6oq9o5] {
    background: white;
    border-radius: 8px;
    padding: 16px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.08);
}

.card-description[b-31ab6oq9o5] {
    margin: -8px 0 12px 0;
    font-size: 14px;
}

.hearing-details-header[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}

    .hearing-details-header i[b-31ab6oq9o5] {
        font-size: 20px;
        color: var(--ebp-primary);
    }

    .hearing-details-header h2[b-31ab6oq9o5] {
        font-size: 18px;
        color: #1a1a1a;
        margin: 0;
    }

.settings-section[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.setting-item[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

    .setting-item label[b-31ab6oq9o5] {
        font-weight: 500;
        color: #333;
        display: flex;
        align-items: center;
        gap: 8px;
    }

.setting-group[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
    background: #f9fafb;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
}

.group-label[b-31ab6oq9o5] {
    font-weight: 600;
    color: #1a1a1a;
    font-size: 15px;
    display: flex;
    align-items: center;
    gap: 8px;
}

    .group-label i[b-31ab6oq9o5] {
        color: var(--ebp-primary);
        font-size: 16px;
    }

.checkbox-group[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 4px;
}

.checkbox-item[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: white;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
}

    .checkbox-item:hover[b-31ab6oq9o5] {
        border-color: var(--ebp-primary);
        background: #f0f7ff;
    }

    .checkbox-item input[type="checkbox"][b-31ab6oq9o5] {
        width: 18px;
        height: 18px;
        cursor: pointer;
        accent-color: var(--ebp-primary);
    }

.checkbox-label[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #374151;
    font-weight: 500;
    flex: 1;
}

    .checkbox-label i[b-31ab6oq9o5] {
        color: #6b7280;
        font-size: 14px;
        width: 16px;
    }

.form-control[b-31ab6oq9o5], .form-select[b-31ab6oq9o5] {
    padding: 10px 12px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 14px;
    width: 100%;
}

    .form-control:focus[b-31ab6oq9o5], .form-select:focus[b-31ab6oq9o5] {
        outline: none;
        border-color: var(--ebp-primary);
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
    }

.form-control-sm[b-31ab6oq9o5] {
    padding: 8px 10px;
    font-size: 13px;
}

.text-muted[b-31ab6oq9o5] {
    color: #6b7280;
    font-size: 13px;
    margin-top: 4px;
}

.form-row[b-31ab6oq9o5] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.preview-label[b-31ab6oq9o5] {
    font-weight: 600;
    color: #374151;
    font-size: 14px;
    margin-bottom: 12px;
    display: block;
}

.preview-box[b-31ab6oq9o5] {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 16px;
    margin-top: 8px;
}

    .preview-box h3[b-31ab6oq9o5] {
        font-size: 16px;
        margin-bottom: 12px;
        color: #1a1a1a;
    }

    .preview-box .preview-label-text[b-31ab6oq9o5] {
        font-weight: 600;
        font-size: 13px;
        color: #6b7280;
    }

    .preview-box p[b-31ab6oq9o5] {
        margin: 4px 0 12px 0;
        color: #374151;
        font-size: 14px;
    }

    .preview-box .office-hours[b-31ab6oq9o5] {
        margin-top: 12px;
        padding-top: 12px;
        border-top: 1px solid #e5e7eb;
    }

.save-banner[b-31ab6oq9o5] {
    background: white;
    border-radius: 8px;
    padding: 16px 24px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.12);
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    bottom: 20px;
    z-index: 10;
    max-width: 100%;
    box-sizing: border-box;
}

.save-banner-text[b-31ab6oq9o5] {
    color: #374151;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 8px;
}

.save-banner-buttons[b-31ab6oq9o5] {
    display: flex;
    gap: 12px;
}

.btn[b-31ab6oq9o5] {
    padding: 10px 16px;
    border-radius: 6px;
    border: none;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s;
}

.btn-sm[b-31ab6oq9o5] {
    padding: 7px 12px;
    font-size: 13px;
}

.btn-primary[b-31ab6oq9o5] {
    background: var(--ebp-primary);
    color: white;
}

    .btn-primary:hover[b-31ab6oq9o5] {
        background: #1d4ed8;
    }

.btn-success[b-31ab6oq9o5] {
    background: #10b981;
    color: white;
}

    .btn-success:hover[b-31ab6oq9o5] {
        background: #059669;
    }

.btn-outline-secondary[b-31ab6oq9o5] {
    background: white;
    border: 1px solid #d1d5db;
    color: #374151;
}

    .btn-outline-secondary:hover[b-31ab6oq9o5] {
        background: #f9fafb;
    }

.alert[b-31ab6oq9o5] {
    padding: 12px 16px;
    border-radius: 6px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.alert-success[b-31ab6oq9o5] {
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    color: #065f46;
}

.alert-danger[b-31ab6oq9o5] {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #991b1b;
}

.alert i[b-31ab6oq9o5] {
    font-size: 18px;
}

/* Fees Tab Styles */
.fees-content[b-31ab6oq9o5] {
    margin-top: 12px;
}

.fee-card-full[b-31ab6oq9o5] {
    grid-column: 1 / -1;
}

.fee-table-wrapper[b-31ab6oq9o5] {
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
}

.fee-table[b-31ab6oq9o5] {
    width: 100%;
    border-collapse: collapse;
}

    .fee-table thead[b-31ab6oq9o5] {
        background: #f9fafb;
        border-bottom: 2px solid #e5e7eb;
    }

    .fee-table th[b-31ab6oq9o5] {
        padding: 14px 20px;
        text-align: left;
        font-size: 12px;
        font-weight: 600;
        color: #6b7280;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }

    .fee-table th.text-center[b-31ab6oq9o5] {
        text-align: center;
    }

    .fee-table th.text-right[b-31ab6oq9o5] {
        text-align: right;
    }

    .fee-table td[b-31ab6oq9o5] {
        padding: 18px 20px;
        border-bottom: 1px solid #f3f4f6;
        font-size: 14px;
        color: #374151;
    }

    .fee-table tbody tr[b-31ab6oq9o5] {
        transition: background 0.15s;
    }

        .fee-table tbody tr:hover[b-31ab6oq9o5] {
            background: #f9fafb;
        }

        .fee-table tbody tr:last-child td[b-31ab6oq9o5] {
            border-bottom: none;
        }

/* Note Visibility Matrix */
.note-matrix-wrapper[b-31ab6oq9o5] {
    margin-top: 1rem;
    overflow-x: auto;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}

.note-matrix[b-31ab6oq9o5] {
    width: 100%;
    border-collapse: collapse;
}

    .note-matrix thead[b-31ab6oq9o5] {
        background: #f9fafb;
        border-bottom: 2px solid #e5e7eb;
    }

    .note-matrix th[b-31ab6oq9o5] {
        font-size: 12px;
        font-weight: 600;
        color: #6b7280;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }

    .note-matrix .note-matrix-label-col[b-31ab6oq9o5] {
        text-align: left;
        padding: 12px 16px;
        min-width: 140px;
    }

    .note-matrix .note-matrix-check-col[b-31ab6oq9o5] {
        text-align: center;
        padding: 12px 8px;
        white-space: nowrap;
    }

    .note-matrix .note-matrix-author[b-31ab6oq9o5] {
        font-weight: 600;
        color: #1a1a1a;
        padding: 10px 16px;
    }

    .note-matrix .note-matrix-cell[b-31ab6oq9o5] {
        text-align: center;
        padding: 10px 8px;
    }

    .note-matrix tbody tr[b-31ab6oq9o5] {
        border-bottom: 1px solid #f3f4f6;
        transition: background 0.15s;
    }

        .note-matrix tbody tr:hover[b-31ab6oq9o5] {
            background: #f9fafb;
        }

        .note-matrix tbody tr:last-child[b-31ab6oq9o5] {
            border-bottom: none;
        }

.note-matrix-toggle[b-31ab6oq9o5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    margin: 0;
}

    .note-matrix-toggle input[type="checkbox"][b-31ab6oq9o5] {
        position: absolute;
        opacity: 0;
        pointer-events: none;
    }

.note-matrix-checkmark[b-31ab6oq9o5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    border: 2px solid #d1d5db;
    background: white;
    color: transparent;
    font-size: 14px;
    transition: all 0.15s ease;
}

.note-matrix-toggle input[type="checkbox"]:checked ~ .note-matrix-checkmark[b-31ab6oq9o5] {
    background: #dcfce7;
    border-color: var(--ebp-primary);
    color: #16a34a;
}

.note-matrix-toggle:hover .note-matrix-checkmark[b-31ab6oq9o5] {
    border-color: var(--ebp-primary);
}

.note-matrix-footer[b-31ab6oq9o5] {
    display: block;
    margin-top: 0.75rem;
    font-style: italic;
}

.fee-name[b-31ab6oq9o5] {
    font-weight: 600;
    color: #1a1a1a;
}

.contiguous-badge[b-31ab6oq9o5] {
    display: inline-block;
    margin-left: 0.5rem;
    padding: 0.125rem 0.5rem;
    font-size: 0.7rem;
    font-weight: 600;
    background-color: #e0f2fe;
    color: #0369a1;
    border-radius: 9999px;
    vertical-align: middle;
}

.fee-description[b-31ab6oq9o5] {
    color: #6b7280;
    max-width: 300px;
}

.fee-amount[b-31ab6oq9o5] {
    font-weight: 600;
    color: #059669;
}

.fee-gl-code[b-31ab6oq9o5] {
    color: #6b7280;
}

.text-right[b-31ab6oq9o5] {
    text-align: right;
}

.text-center[b-31ab6oq9o5] {
    text-align: center;
}

.status-badge[b-31ab6oq9o5] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.status-active[b-31ab6oq9o5] {
    background: #d1fae5;
    color: #065f46;
}

.action-buttons[b-31ab6oq9o5] {
    display: flex;
    gap: 8px;
    justify-content: center;
}

/* Modal Styles */
.modal-overlay[b-31ab6oq9o5] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    animation: fadeIn 0.2s;
}

@@keyframes fadeIn {
    from[b-31ab6oq9o5] {
        opacity: 0;
    }

    to[b-31ab6oq9o5] {
        opacity: 1;
    }
}

.modal-dialog[b-31ab6oq9o5] {
    background: white;
    border-radius: 12px;
    width: 90%;
    max-width: 520px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    animation: slideUp 0.3s;
}

.modal-compact[b-31ab6oq9o5] {
    max-width: 700px;
    max-height: 85vh;
}

@@keyframes slideUp {
    from[b-31ab6oq9o5] {
        transform: translateY(20px);
        opacity: 0;
    }

    to[b-31ab6oq9o5] {
        transform: translateY(0);
        opacity: 1;
    }
}

.modal-header[b-31ab6oq9o5] {
    padding: 20px 20px 16px;
    border-bottom: 1px solid #e5e7eb;
    position: relative;
    flex-shrink: 0;
}

    .modal-header h3[b-31ab6oq9o5] {
        font-size: 18px;
        color: #1a1a1a;
        margin: 0 0 4px 0;
        font-weight: 600;
        padding-right: 40px;
    }

    .modal-header .modal-subtitle[b-31ab6oq9o5] {
        color: #6b7280;
        font-size: 13px;
        margin: 0;
        line-height: 1.5;
    }

.modal-close[b-31ab6oq9o5] {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 32px;
    height: 32px;
    border: none;
    background: #f3f4f6;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #6b7280;
    transition: all 0.2s;
}

    .modal-close:hover[b-31ab6oq9o5] {
        background: #e5e7eb;
        color: #1a1a1a;
    }

    .modal-close i[b-31ab6oq9o5] {
        font-size: 16px;
    }

.modal-body[b-31ab6oq9o5] {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    overflow-y: auto;
    flex: 1;
}

.modal-body-compact[b-31ab6oq9o5] {
    padding: 16px 20px;
    gap: 14px;
}

.modal-row[b-31ab6oq9o5] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.modal-footer[b-31ab6oq9o5] {
    padding: 14px 20px;
    border-top: 1px solid #e5e7eb;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    background: #f9fafb;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    flex-shrink: 0;
}

.modal-footer-compact[b-31ab6oq9o5] {
    padding: 12px 20px;
}

.required[b-31ab6oq9o5] {
    color: #ef4444;
    font-weight: 600;
}

/* Compact Modal Styles */
.section-label-sm[b-31ab6oq9o5] {
    font-weight: 600;
    color: #1a1a1a;
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 6px;
}

    .section-label-sm i[b-31ab6oq9o5] {
        color: var(--ebp-primary);
        font-size: 14px;
    }

.empty-message-sm[b-31ab6oq9o5] {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 12px;
    text-align: center;
    color: #6b7280;
    font-size: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.checkbox-group-compact[b-31ab6oq9o5] {
    max-height: 180px;
    overflow-y: auto;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 6px;
    background: white;
}

.checkbox-item-compact[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px;
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s;
    margin-bottom: 6px;
}

    .checkbox-item-compact:last-child[b-31ab6oq9o5] {
        margin-bottom: 0;
    }

    .checkbox-item-compact:hover[b-31ab6oq9o5] {
        border-color: var(--ebp-primary);
        background: #eff6ff;
    }

    .checkbox-item-compact input[type="checkbox"][b-31ab6oq9o5] {
        width: 16px;
        height: 16px;
        cursor: pointer;
        accent-color: var(--ebp-primary);
        flex-shrink: 0;
    }

.checkbox-label-compact[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1;
    gap: 8px;
}

.component-name-sm[b-31ab6oq9o5] {
    font-weight: 500;
    font-size: 13px;
    color: #374151;
}

.component-amount-sm[b-31ab6oq9o5] {
    color: #059669;
    font-weight: 600;
    font-size: 13px;
}

.total-preview-sm[b-31ab6oq9o5] {
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 6px;
    padding: 8px 12px;
    margin-top: 8px;
    text-align: right;
    color: #065f46;
    font-size: 13px;
}

.dor-codes-grid-compact[b-31ab6oq9o5] {
    max-height: 220px;
    overflow-y: auto;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 8px;
    background: white;
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
}

.dor-checkbox-item-compact[b-31ab6oq9o5] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 8px;
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s;
}

    .dor-checkbox-item-compact:hover[b-31ab6oq9o5] {
        border-color: var(--ebp-primary);
        background: #eff6ff;
    }

    .dor-checkbox-item-compact input[type="checkbox"][b-31ab6oq9o5] {
        margin-top: 1px;
        width: 16px;
        height: 16px;
        cursor: pointer;
        accent-color: var(--ebp-primary);
        flex-shrink: 0;
    }

.dor-label-compact[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

.dor-code-sm[b-31ab6oq9o5] {
    font-weight: 600;
    color: #1a1a1a;
    font-size: 12px;
    font-family: 'Courier New', monospace;
}

.dor-description-sm[b-31ab6oq9o5] {
    color: #6b7280;
    font-size: 12px;
    line-height: 1.3;
}

.dor-codes-cell[b-31ab6oq9o5] {
    max-width: 200px;
}

.dor-badges[b-31ab6oq9o5] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.dor-badge[b-31ab6oq9o5] {
    display: inline-block;
    padding: 4px 8px;
    background: #dbeafe;
    color: #1e40af;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    font-family: 'Courier New', monospace;
}

.dor-badge-more[b-31ab6oq9o5] {
    display: inline-block;
    padding: 4px 8px;
    background: #f3f4f6;
    color: #6b7280;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
}

.components-cell[b-31ab6oq9o5] {
    max-width: 250px;
}

.component-list[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.component-item[b-31ab6oq9o5] {
    font-size: 13px;
    color: #374151;
}

    .component-item strong[b-31ab6oq9o5] {
        color: #059669;
    }

.component-more[b-31ab6oq9o5] {
    font-size: 12px;
    color: #6b7280;
    font-style: italic;
    margin-top: 4px;
}

/* NEW STYLES FOR PETITION TYPE DISCOUNTS */
.radio-group[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.radio-item[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: white;
    border: 2px solid #d1d5db;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
}

    .radio-item:hover[b-31ab6oq9o5] {
        border-color: var(--ebp-primary);
        background: #f0f7ff;
    }

    .radio-item.radio-item-selected[b-31ab6oq9o5] {
        border-color: var(--ebp-primary);
        background: #eff6ff;
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
    }

    .radio-item input[type="radio"][b-31ab6oq9o5] {
        width: 18px;
        height: 18px;
        cursor: pointer;
        accent-color: var(--ebp-primary);
        flex-shrink: 0;
    }

.radio-label[b-31ab6oq9o5] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #374151;
    font-weight: 500;
    flex: 1;
}

    .radio-label i[b-31ab6oq9o5] {
        color: #6b7280;
        font-size: 16px;
    }

.radio-item-selected .radio-label[b-31ab6oq9o5] {
    color: #1d4ed8;
    font-weight: 600;
}

    .radio-item-selected .radio-label i[b-31ab6oq9o5] {
        color: var(--ebp-primary);
    }

.discount-type-badge[b-31ab6oq9o5] {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.discount-type-percentage[b-31ab6oq9o5] {
    background: #dbeafe;
    color: #1e40af;
}

.discount-type-flatamount[b-31ab6oq9o5] {
    background: #d1fae5;
    color: #065f46;
}

/* Responsive adjustments */
@media (max-width: 1024px) {
    .cards-grid[b-31ab6oq9o5] {
        grid-template-columns: 1fr;
    }

    .form-row[b-31ab6oq9o5], .modal-row[b-31ab6oq9o5] {
        grid-template-columns: 1fr;
    }

    .save-banner[b-31ab6oq9o5] {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        flex-direction: column;
        gap: 10px;
        padding: 12px 16px;
        padding-bottom: calc(12px + env(safe-area-inset-bottom));
        align-items: stretch;
        border-radius: 0;
    }

    .save-banner-buttons[b-31ab6oq9o5] {
        display: flex;
        flex-direction: row;
        gap: 8px;
    }

    .save-banner-buttons .btn[b-31ab6oq9o5] {
        flex: 1;
        padding: 6px 12px;
        font-size: 13px;
        white-space: nowrap;
        justify-content: center;
    }

    .settings-layout[b-31ab6oq9o5] {
        flex-direction: column;
    }

    .settings-nav[b-31ab6oq9o5] {
        width: 100%;
        position: static;
        flex-direction: column;
        border-radius: 8px;
        gap: 2px;
    }

    .tab-button[b-31ab6oq9o5] {
        width: 100%;
        white-space: nowrap;
        padding: 10px 14px;
        font-size: 13px;
        justify-content: flex-start;
    }

    .modal-compact[b-31ab6oq9o5] {
        max-width: 95%;
        margin: 8px;
    }

    .radio-group[b-31ab6oq9o5] {
        gap: 10px;
    }

    .radio-item[b-31ab6oq9o5] {
        padding: 12px 14px;
    }

    .radio-label[b-31ab6oq9o5] {
        font-size: 13px;
    }
}

@media (max-width: 768px) {
    .fee-table-wrapper[b-31ab6oq9o5] {
        overflow-x: auto;
    }

    .fee-table[b-31ab6oq9o5] {
        min-width: 800px;
    }

    .modal-dialog[b-31ab6oq9o5] {
        margin: 12px;
        max-width: none;
    }
}

/* Email Configuration */
.email-connected-info[b-31ab6oq9o5] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.email-status-badge[b-31ab6oq9o5] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 14px;
    font-weight: 500;
    width: fit-content;
}

.email-status-badge.connected[b-31ab6oq9o5] {
    background: #dcfce7;
    color: #166534;
}

.connected-value[b-31ab6oq9o5] {
    margin: 0;
    font-size: 15px;
    color: #1f2937;
    font-weight: 500;
}

.app-reg-actions[b-31ab6oq9o5] {
    display: flex;
    gap: 12px;
    margin-top: 8px;
}

.field-hint[b-31ab6oq9o5] {
    display: block;
    font-size: 12px;
    color: #6b7280;
    margin-top: 4px;
}
/* /Components/Pages/VABPages/CapacityView.razor.rz.scp.css */
.side-by-side[b-vl3z5ll92x] {
    display: flex;
    gap: 10px;
}

.mode-card[b-vl3z5ll92x] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 24px 16px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    width: 100%;
}

    .mode-card:hover[b-vl3z5ll92x] {
        border-color: #cbd5e1;
        box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05);
    }

    .mode-card.selected[b-vl3z5ll92x] {
        border-color: #0f172a;
        background-color: #f8fafc;
        border-width: 2px;
    }

.mode-icon-box[b-vl3z5ll92x] {
    width: 48px;
    height: 48px;
    background: #f1f5f9;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
    font-size: 1.25rem;
}

.selected .mode-icon-box[b-vl3z5ll92x] {
    background: #0f172a;
    color: white;
}

.text-muted[b-vl3z5ll92x] {
    color: #64748b;
}

.space-y-4 > * + *[b-vl3z5ll92x] {
    margin-top: 1rem;
}

.step-2-content[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.date-badge-row[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: #1e293b;
}

.btn-filter-small[b-vl3z5ll92x] {
    background: white;
    border: 1px solid #e2e8f0;
    padding: 4px 12px;
    border-radius: 6px;
    font-size: 0.75rem;
    cursor: pointer;
    margin-left: 8px;
}

.room-card-grid[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: repeat(4, minmax(220px, 1fr));
    gap: 20px;
}

.room-card[b-vl3z5ll92x] {
    border: 1px solid #eef2f6;
    border-radius: 10px;
    padding: 16px;
    background: #ffffff;
    transition: all 0.2s;
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: 320px;
}

.card-header-compact[b-vl3z5ll92x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.judge-name[b-vl3z5ll92x] {
    font-size: 0.75rem;
    color: #64748b;
    margin: 0;
}

.slots-info[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.75rem;
    color: #64748b;
}

.badge-percent[b-vl3z5ll92x] {
    font-size: 0.75rem;
    font-weight: 700;
    background: #fff7eb;
    color: #92400e;
    padding: 6px 8px;
    border-radius: 999px;
    border: 1px solid rgba(249,115,22,0.12);
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.progress-container[b-vl3z5ll92x] {
    height: 10px;
    background: #f1f5f9;
    border-radius: 999px;
    overflow: hidden;
    margin: 8px 0 4px 0;
}

.progress-bar[b-vl3z5ll92x] {
    height: 100%;
    border-radius: 10px;
}

.progress-container.small[b-vl3z5ll92x] { height: 8px; }

.bg-emerald[b-vl3z5ll92x] { background-color: #10b981; }
.bg-orange[b-vl3z5ll92x] { background-color: #f97316; }
.bg-amber[b-vl3z5ll92x] { background-color: #f59e0b; }
.bg-green[b-vl3z5ll92x] { background-color: #10b981; }
.bg-red[b-vl3z5ll92x] { background-color: #ef4444; }

.text-emerald[b-vl3z5ll92x] { color: #059669; }
.text-orange[b-vl3z5ll92x] { color: #ea580c; }
.text-amber[b-vl3z5ll92x] { color: #d97706; }
.text-green[b-vl3z5ll92x] { color: #059669; }
.text-red[b-vl3z5ll92x] { color: #dc2626; }

.border-source[b-vl3z5ll92x] {
    border: 2px solid #ef4444;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.06);
}

.border-target[b-vl3z5ll92x] {
    border: 2px solid #0f172a;
    box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.06);
}

.card-actions[b-vl3z5ll92x] {
    display: flex;
    gap: 8px;
    margin-top: 8px;
}

.btn-toggle[b-vl3z5ll92x] {
    flex: 1;
    padding: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

    .btn-toggle.active-source[b-vl3z5ll92x] {
        background: #ef4444;
        color: #fff;
        border-color: #ef4444;
    }

    .btn-toggle.active-target[b-vl3z5ll92x] {
        background: #0f172a;
        color: #fff;
        border-color: #0f172a;
    }

.card-top[b-vl3z5ll92x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.percent-badge[b-vl3z5ll92x] {
    background: #fff;
    border: 1px solid #f1f5f9;
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 700;
    color: #0f172a;
    font-size: 0.85rem;
}

.time-slots-breakdown[b-vl3z5ll92x] {
    margin-top: 4px;
    padding-top: 4px;
    border-top: 1px dashed #e2e8f0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

    .time-slots-breakdown.compact[b-vl3z5ll92x] {
        margin-top: 8px;
        gap: 6px;
    }

.compact-row[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.chevron[b-vl3z5ll92x] {
    width: 16px;
    color: #cbd5e1;
}

.time-slot-row[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    font-size: 9px;
    border-radius: 6px;
}

.time-range[b-vl3z5ll92x] {
    color: #0f172a;
    width: 90px;
    font-weight: 600;
    flex: 0 0 90px;
    min-width: 60px;
}

.slot-progress[b-vl3z5ll92x] {
    flex: 1;
    height: 10px;
    background: #f1f5f9;
    border-radius: 999px;
    overflow: hidden;
}

    .slot-progress.small[b-vl3z5ll92x] {
        flex: 1 1 auto;
        min-width: 0;
        height: 8px;
    }

    .slot-progress .bar[b-vl3z5ll92x] {
        height: 100%;
        border-radius: 999px;
    }

.slot-count[b-vl3z5ll92x] {
    font-family: monospace;
    color: #d97706;
    text-align: right;
    font-weight: 700;
}

.room-name-group[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.chev-btn[b-vl3z5ll92x] {
    background: transparent;
    border: none;
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    color: #64748b;
    cursor: pointer;
    font-size: 12px;
    flex: 0 0 24px;
}

    .chev-btn:hover[b-vl3z5ll92x] {
        background: rgba(15,23,42,0.03);
    }

.hearing-list[b-vl3z5ll92x] {
    margin-left: 36px;
    margin-top: 6px;
    padding: 8px 12px;
    background: #ffffff;
    border: 1px solid #f1f5f9;
    border-radius: 8px;
    box-shadow: 0 2px 6px rgba(2,6,23,0.04);
}

.hearing-item[b-vl3z5ll92x] {
    padding: 6px 0;
    color: #475569;
    font-size: 0.85rem;
}

.step-footer[b-vl3z5ll92x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid #f1f5f9;
}

.btn-link[b-vl3z5ll92x] {
    background: none;
    border: none;
    color: #3b82f6;
    text-decoration: underline;
    cursor: pointer;
    font-size: 0.75rem;
}

.btn-large[b-vl3z5ll92x] {
    padding: 12px 24px;
    font-size: 0.875rem;
}

.modal-footer-nav[b-vl3z5ll92x] {
    padding: 16px 24px;
    border-top: 1px solid #f1f5f9;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #f8fafc;
}

.footer-right[b-vl3z5ll92x] {
    display: flex;
    gap: 12px;
}

.footer-left[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.btn-ghost[b-vl3z5ll92x] {
    color: #64748b;
    background: transparent;
    border: none;
    cursor: pointer;
}

.btn-link-footer[b-vl3z5ll92x] {
    color: #3b82f6;
    background: none;
    border: none;
    font-size: 0.75rem;
    text-decoration: underline;
    cursor: pointer;
}

.modal-content[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
}

.modal-body[b-vl3z5ll92x] {
    padding: 24px;
    overflow: auto;
    flex: 1 1 auto;
}

.text-xs[b-vl3z5ll92x] { font-size: 0.75rem; }

.manual-grid[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-top: 8px;
}

.manual-card[b-vl3z5ll92x] {
    border: 1px solid #f1f5f9;
    border-radius: 8px;
    padding: 14px 16px;
    background: #fff;
    cursor: pointer;
    transition: box-shadow 0.12s, transform 0.12s;
}

    .manual-card:hover[b-vl3z5ll92x] {
        box-shadow: 0 8px 20px rgba(2,6,23,0.04);
        transform: translateY(-2px);
    }

    .manual-card.selected[b-vl3z5ll92x] {
        outline: 2px solid rgba(15,23,42,0.06);
    }

.manual-card-inner[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
}

.manual-checkbox[b-vl3z5ll92x] {
    width: 18px;
    height: 18px;
    border-radius: 4px;
}

.manual-meta[b-vl3z5ll92x] { flex: 1; }
.manual-name[b-vl3z5ll92x] { font-weight: 700; }
.manual-slots[b-vl3z5ll92x] { font-size: 0.85rem; color: #64748b; margin-top: 4px; }
.manual-percent[b-vl3z5ll92x] { font-weight: 700; color: #0f172a; background: transparent; }

.manual-card-green[b-vl3z5ll92x] { background: #f0fdf4; border-color: #bbf7d0; }
.manual-card-amber[b-vl3z5ll92x] { background: #fffbeb; border-color: #fde68a; }
.manual-card-orange[b-vl3z5ll92x] { background: #fff7ed; border-color: #fed7aa; }
.manual-card-red[b-vl3z5ll92x] { background: #fef2f2; border-color: #fecaca; }

.section-title[b-vl3z5ll92x] {
    margin: 8px 0;
    font-weight: 600;
}

.review-grid[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: 1fr 1fr 240px;
    gap: 16px;
    margin-top: 12px;
}

.review-panel[b-vl3z5ll92x] {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 12px;
}

.review-summary[b-vl3z5ll92x] {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.petition-list-compact[b-vl3z5ll92x] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.petition-chip[b-vl3z5ll92x] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    padding: 6px 8px;
    border-radius: 6px;
    font-family: monospace;
}

.proj-row[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 8px 0;
}

.proj-label[b-vl3z5ll92x] {
    width: 120px;
    color: #0f172a;
    font-weight: 600;
}

.proj-bar-outer[b-vl3z5ll92x] {
    flex: 1;
    background: #f1f5f9;
    height: 12px;
    border-radius: 999px;
    overflow: hidden;
}

.proj-bar-inner[b-vl3z5ll92x] {
    height: 100%;
    border-radius: 999px;
}

.proj-meta[b-vl3z5ll92x] {
    width: 120px;
    text-align: right;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, monospace;
    color: #0f172a;
}

.capacity-card[b-vl3z5ll92x] {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    width: 100%;
}

.capacity-card-header[b-vl3z5ll92x] {
    padding: 24px 24px 12px 24px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.card-title[b-vl3z5ll92x] {
    font-size: 1.5rem;
    font-weight: 600;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.card-desc[b-vl3z5ll92x] {
    font-size: 0.875rem;
    color: #475569;
    margin: 4px 0 0 0;
}

.month-nav[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.icon-btn[b-vl3z5ll92x] {
    background: transparent;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    width: 36px;
    height: 36px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s;
}

    .icon-btn:hover[b-vl3z5ll92x] {
        background: #f8fafc;
    }

.stats-grid[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background: rgba(241, 245, 249, 0.5);
    margin: 0 24px 16px 24px;
    padding: 12px;
    border-radius: 8px;
}

.stat-item[b-vl3z5ll92x] {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.stat-label[b-vl3z5ll92x] {
    font-size: 0.85rem;
    color: #64748b;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.stat-value[b-vl3z5ll92x] {
    font-size: 1.125rem;
    font-weight: 600;
    color: #0f172a;
}

.border-x[b-vl3z5ll92x] {
    border-left: 1px solid #e2e8f0;
    border-right: 1px solid #e2e8f0;
}

.border-r[b-vl3z5ll92x] {
    border-right: 1px solid #e2e8f0;
}

.calendar-border-box[b-vl3z5ll92x] {
    margin: 0 24px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 12px;
}

.calendar-grid-header[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    text-align: center;
    font-size: 0.75rem;
    font-weight: 500;
    color: #64748b;
    margin-bottom: 4px;
}

.calendar-days-grid[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
}

.calendar-day-btn[b-vl3z5ll92x] {
    aspect-ratio: 1;
    border: none;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
}

    .calendar-day-btn.disabled[b-vl3z5ll92x] {
        background: rgba(241, 245, 249, 0.3);
        color: #cbd5e1;
        cursor: not-allowed;
    }

    .calendar-day-btn:not(.disabled):hover[b-vl3z5ll92x] {
        outline: 2px solid #0f172a;
    }

    .calendar-day-btn.selected-day[b-vl3z5ll92x] {
        outline: 3px solid #0f172a;
        box-shadow: 0 4px 12px rgba(15,23,42,0.12);
    }

.day-num[b-vl3z5ll92x] {
    font-size: 0.875rem;
}

    .day-num.underlined[b-vl3z5ll92x] {
        text-decoration: underline;
        font-weight: 700;
    }

.day-slots[b-vl3z5ll92x] {
    font-size: 10px;
    opacity: 0.75;
    margin-top: 2px;
}

.empty[b-vl3z5ll92x] {
    background: #f8fafc;
    color: #64748b;
    border: 1px solid #e2e8f0;
}

.low[b-vl3z5ll92x] {
    background: #ecfdf5;
    color: #065f46;
    border: 1px solid #d1fae5;
}

.medium[b-vl3z5ll92x] {
    background: #fffbeb;
    color: #92400e;
    border: 1px solid #fef3c7;
}

.high[b-vl3z5ll92x] {
    background: #fff7ed;
    color: #9a3412;
    border: 1px solid #ffedd5;
}

.overbooked[b-vl3z5ll92x] {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fee2e2;
}

.calendar-footer[b-vl3z5ll92x] {
    padding: 16px 24px 24px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.legend-row[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 0.75rem;
}

.legend-title[b-vl3z5ll92x] {
    font-weight: 500;
    color: #64748b;
}

.legend-tag[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.dot[b-vl3z5ll92x] {
    width: 12px;
    height: 12px;
    border-radius: 3px;
    border: 1px solid rgba(0,0,0,0.05);
}

    .dot.empty[b-vl3z5ll92x] { background: #f1f5f9; }
    .dot.low[b-vl3z5ll92x] { background: #ecfdf5; border-color: #a7f3d0; }
    .dot.medium[b-vl3z5ll92x] { background: #fffbeb; border-color: #fde68a; }
    .dot.high[b-vl3z5ll92x] { background: #fff7ed; border-color: #fed7aa; }
    .dot.overbooked[b-vl3z5ll92x] { background: #fef2f2; border-color: #fecaca; }

.badge-destructive[b-vl3z5ll92x] {
    background: #ef4444;
    color: white;
    padding: 2px 10px;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
}

.filter-container[b-vl3z5ll92x] {
    background: #ffffff;
    padding: 24px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

.quick-filters[b-vl3z5ll92x] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.btn[b-vl3z5ll92x] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 500;
    height: 36px;
    padding: 0 12px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-outline[b-vl3z5ll92x] {
    background-color: transparent;
    border: 1px solid #e2e8f0;
    color: #1e293b;
}

    .btn-outline:hover[b-vl3z5ll92x] {
        background-color: #f8fafc;
        border-color: #cbd5e1;
    }

    .btn-outline.active[b-vl3z5ll92x] {
        background-color: #0f172a;
        color: #fff;
        border-color: #0f172a;
    }

.filter-grid[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 12px;
}

.filter-grid-secondary[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 12px;
    margin-top: 12px;
}

.input-wrapper[b-vl3z5ll92x], .select-wrapper[b-vl3z5ll92x] {
    position: relative;
    display: flex;
    align-items: center;
}

.form-input[b-vl3z5ll92x], .form-select[b-vl3z5ll92x] {
    width: 100%;
    height: 40px;
    padding: 8px 12px;
    font-size: 14px;
    border-radius: 6px;
    border: 1px solid #e2e8f0;
    background-color: #ffffff;
    color: #1e293b;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s;
}

    .form-input:focus[b-vl3z5ll92x], .form-select:focus[b-vl3z5ll92x] {
        border-color: #94a3b8;
        box-shadow: 0 0 0 2px rgba(148, 163, 184, 0.1);
    }

.input-icon[b-vl3z5ll92x], .select-icon-left[b-vl3z5ll92x] {
    position: absolute;
    left: 12px;
    color: #64748b;
    font-size: 14px;
    pointer-events: none;
}

.select-icon-right[b-vl3z5ll92x] {
    position: absolute;
    right: 12px;
    color: #94a3b8;
    font-size: 12px;
    pointer-events: none;
}

.form-input[b-vl3z5ll92x] { padding-left: 36px; }
.form-select[b-vl3z5ll92x] { padding-left: 36px; padding-right: 32px; appearance: none; }

.capacity-container[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    color: #1e293b;
    background-color: white;
    position: relative;
    padding: 24px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    margin-top: 20px;
}

.capacity-header[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-center[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.week-title[b-vl3z5ll92x] {
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0;
}

.nav-btn[b-vl3z5ll92x], .action-btn[b-vl3z5ll92x] {
    background: #fff;
    border: 1px solid #e2e8f0;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: background 0.2s;
}

    .nav-btn:hover[b-vl3z5ll92x], .action-btn:hover[b-vl3z5ll92x] {
        background: #f8fafc;
    }

.capacity-legend[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px;
    background: #f1f5f9;
    border-radius: 8px;
    flex-wrap: wrap;
    font-size: 0.875rem;
}

.legend-label[b-vl3z5ll92x] {
    font-weight: 600;
    margin-right: 4px;
}

.legend-item[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 6px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 4px;
}

    .legend-item:hover[b-vl3z5ll92x] {
        outline: 2px solid rgba(15, 23, 42, 0.1);
    }

.swatch-dot[b-vl3z5ll92x] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 1px solid rgba(0,0,0,0.1);
    flex-shrink: 0;
    display: inline-block;
}

    .swatch-dot.empty[b-vl3z5ll92x] { background: #f1f5f9; border-color: #e2e8f0; }
    .swatch-dot.low[b-vl3z5ll92x] { background: #ecfdf5; border-color: #a7f3d0; }
    .swatch-dot.medium[b-vl3z5ll92x] { background: #fffbeb; border-color: #fde68a; }
    .swatch-dot.high[b-vl3z5ll92x] { background: #fff7ed; border-color: #fed7aa; }
    .swatch-dot.overbooked[b-vl3z5ll92x] { background: #fef2f2; border-color: #fecaca; }
    .swatch-dot.all-cap[b-vl3z5ll92x] {
        background: linear-gradient(135deg, #ecfdf5 0 25%, #fffbeb 25% 50%, #fff7ed 50% 75%, #fef2f2 75%);
        border-color: #cbd5e1;
    }

/* Hide the real checkbox; we render a CSS-driven indicator on the parent label
   so the visual checked state always tracks the .is-active class — avoiding
   Blazor's DOM checked-property sync quirk on mutex checkbox groups. */
.legend-checkbox input[type="checkbox"][b-vl3z5ll92x] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.legend-checkbox[b-vl3z5ll92x]::before {
    content: "";
    width: 14px;
    height: 14px;
    border: 1.5px solid #94a3b8;
    border-radius: 3px;
    background: #ffffff;
    flex-shrink: 0;
    display: inline-block;
    box-sizing: border-box;
    line-height: 11px;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
    color: #1e293b;
}

.legend-checkbox.is-active[b-vl3z5ll92x] {
    background: #1e293b;
    color: #ffffff;
    outline: 2px solid #0f172a;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.25);
}

    .legend-checkbox.is-active[b-vl3z5ll92x]::before {
        content: "\2713";
        background: #ffffff;
        border-color: #ffffff;
    }

    .legend-checkbox.is-active .text-danger[b-vl3z5ll92x] {
        color: #fecaca;
    }

    .legend-checkbox.is-active .swatch-dot[b-vl3z5ll92x] {
        outline: 2px solid #ffffff;
    }

.text-danger[b-vl3z5ll92x] {
    color: #dc2626;
    font-weight: 500;
}

.schedule-scroll-area[b-vl3z5ll92x] {
    overflow-x: auto;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
}

.schedule-min-width[b-vl3z5ll92x] {
    min-width: 800px;
    padding: 16px;
}

.schedule-grid[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: 200px repeat(5, 1fr);
    gap: 8px;
    margin-bottom: 4px;
}

.header-row[b-vl3z5ll92x] {
    margin-bottom: 12px;
}

.grid-cell[b-vl3z5ll92x] {
    padding: 8px;
}

.day-header[b-vl3z5ll92x] {
    text-align: center;
    display: flex;
    flex-direction: column;
}

    .day-header strong[b-vl3z5ll92x] {
        font-size: 0.875rem;
        color: #0f172a;
    }

    .day-header span[b-vl3z5ll92x] {
        font-size: 0.75rem;
        color: #64748b;
    }

.time-label[b-vl3z5ll92x] {
    color: #64748b;
    font-size: 0.875rem;
    font-weight: 500;
}

.room-group[b-vl3z5ll92x] {
    margin-bottom: 24px;
}

.room-title[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 0 8px;
    margin-bottom: 8px;
}

    .room-title i[b-vl3z5ll92x] {
        color: #64748b;
    }

.slot-btn[b-vl3z5ll92x] {
    border: 2px solid transparent;
    border-radius: 8px;
    padding: 10px;
    text-align: left;
    cursor: pointer;
    transition: transform 0.1s, box-shadow 0.1s;
}

    .slot-btn:hover[b-vl3z5ll92x] {
        transform: translateY(-1px);
        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    }

    .slot-btn.success[b-vl3z5ll92x] { background: #ecfdf5; border-color: #a7f3d0; }
    .slot-btn.info[b-vl3z5ll92x] { background: #fffbeb; border-color: #fde68a; }
    .slot-btn.warning[b-vl3z5ll92x] { background: #fff7ed; border-color: #fed7aa; }
    .slot-btn.danger[b-vl3z5ll92x] { background: #fef2f2; border-color: #fecaca; }
    .slot-btn.empty-cell[b-vl3z5ll92x] { background: #f8fafc; border-color: #e2e8f0; }

.slot-name[b-vl3z5ll92x] {
    margin-top: 6px;
    font-size: 0.75rem;
    color: #1e293b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.time-slot[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    font-size: 0.75rem;
    color: #64748b;
}

    .time-slot i[b-vl3z5ll92x] {
        margin-right: 6px;
        font-size: 0.7rem;
    }

.badge[b-vl3z5ll92x] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 700;
    color: #fff;
}

.badge-success[b-vl3z5ll92x] { background: #10b981; }
.badge-info[b-vl3z5ll92x] { background: #f59e0b; }
.badge-warning[b-vl3z5ll92x] { background: #f97316; }
.badge-danger[b-vl3z5ll92x] { background: #ef4444; }
.badge-muted[b-vl3z5ll92x] { background: #e2e8f0; color: #475569; }

.modal-overlay[b-vl3z5ll92x] {
    position: fixed;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(4px);
    padding: 24px;
}

.modal-content[b-vl3z5ll92x] {
    background: #ffffff;
    width: 100%;
    max-width: 1200px;
    max-height: calc(100vh - 80px);
    border-radius: 12px;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    border: 1px solid #e2e8f0;
    overflow: auto;
    position: relative;
}

    .modal-content.modal-wide[b-vl3z5ll92x] {
        max-width: 1200px;
        width: calc(100% - 48px);
    }

.modal-header[b-vl3z5ll92x] {
    padding: 24px;
    border-bottom: 1px solid #f1f5f9;
    display: flex;
    justify-content: space-between;
}

.modal-title[b-vl3z5ll92x] {
    font-size: 1.25rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.modal-description[b-vl3z5ll92x] {
    margin: 6px 0 0 0;
    font-size: 0.875rem;
    color: #64748b;
}

.modal-close-btn[b-vl3z5ll92x] {
    background: transparent;
    border: none;
    color: #94a3b8;
    font-size: 1.25rem;
    cursor: pointer;
}

.form-group[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-label[b-vl3z5ll92x] {
    font-size: 0.875rem;
    font-weight: 500;
}

.form-grid-2[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.form-range[b-vl3z5ll92x] { width: 100%; }

.checkbox-group label[b-vl3z5ll92x] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.modal-footer[b-vl3z5ll92x] {
    margin-top: 32px;
    display: flex;
    justify-content: flex-end;
}

.btn-primary[b-vl3z5ll92x] {
    background-color: #0f172a;
    color: #ffffff;
    border: none;
    padding: 10px 20px;
    border-radius: 6px;
    font-weight: 500;
    cursor: pointer;
}

    .btn-primary:disabled[b-vl3z5ll92x] { opacity: 0.5; cursor: not-allowed; }
    .btn-primary:not(:disabled):hover[b-vl3z5ll92x] { background-color: #1e293b; }

.btn-outline[b-vl3z5ll92x] {
    background: transparent;
    border: 1px solid #e2e8f0;
    color: #1e293b;
    padding: 10px 20px;
    border-radius: 6px;
    font-weight: 500;
    cursor: pointer;
}

.datepicker-container[b-vl3z5ll92x] {
    position: relative;
    display: flex;
    align-items: center;
}

.datepicker-icon[b-vl3z5ll92x] {
    position: absolute;
    left: 12px;
    color: #64748b;
    pointer-events: none;
    z-index: 10;
}

.date-input[b-vl3z5ll92x] {
    padding-left: 38px;
    cursor: pointer;
    font-family: inherit;
    color: #1e293b;
}

    .date-input[b-vl3z5ll92x]::-webkit-calendar-picker-indicator {
        cursor: pointer;
        opacity: 0.6;
    }

.selection-preview[b-vl3z5ll92x] {
    font-size: 0.75rem;
    color: #0f172a;
    margin-top: 4px;
}

.day-details-card[b-vl3z5ll92x] {
    border: 1px solid #e2e8f0;
    background: #fff;
    border-radius: 8px;
    height: 100%;
    display: flex;
    flex-direction: column;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    width: 30%;
    max-height: 905px;
}

    .day-details-card .card-header[b-vl3z5ll92x] {
        padding: 24px 24px 12px 24px;
        border-bottom: 1px solid #f1f5f9;
        align-items: flex-start;
        flex-direction: column;
    }

    .day-details-card .card-title[b-vl3z5ll92x] {
        font-size: 1.125rem;
        font-weight: 600;
        display: flex;
        align-items: center;
        gap: 8px;
        margin: 0;
    }

.badge-row[b-vl3z5ll92x] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

.badge-pill[b-vl3z5ll92x] {
    font-size: 0.75rem;
    padding: 3px 10px;
    border-radius: 999px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 4px;
    border: 1px solid #eee;
}

    .badge-pill:first-child[b-vl3z5ll92x] {
        background-color: rgba(241, 245, 249, 0.5);
    }

.card-scroll-area[b-vl3z5ll92x] {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
    background: #fafafa;
}

.room-section[b-vl3z5ll92x] {
    margin-bottom: 24px;
}

.room-label[b-vl3z5ll92x] {
    font-size: 0.675rem;
    font-weight: 500;
    color: #64748b;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.slot-details-card[b-vl3z5ll92x] {
    background: #fffbea;
    border: 1.5px solid #fde68a;
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 16px;
    transition: transform 0.12s, box-shadow 0.12s;
    position: relative;
}

    .slot-details-card:hover[b-vl3z5ll92x] {
        box-shadow: 0 6px 18px rgba(2,6,23,0.06);
        transform: translateY(-2px);
    }

.slot-header[b-vl3z5ll92x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    gap: 8px;
}

.slot-time[b-vl3z5ll92x] {
    font-size: 0.75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #0f172a;
}

.badge-mini[b-vl3z5ll92x] {
    background: #e6eef7;
    color: #0f172a;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 0.8rem;
    font-weight: 700;
    border: 1px solid rgba(15,23,42,0.06);
    flex: 0 0 auto;
}

.petition-rows[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 8px;
}

.petition-item[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: 130px 1fr auto;
    align-items: center;
    gap: 12px;
    background: rgba(255,255,255,0.6);
    padding: 8px 10px;
    border-radius: 6px;
    font-size: 0.85rem;
    color: #0f172a;
    border: 1px solid rgba(0,0,0,0.05);
}

.judge-subtext[b-vl3z5ll92x] {
    font-size: 0.75rem;
    color: #475569;
    margin: 0 0 8px 0;
}

.vab-code[b-vl3z5ll92x] {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, monospace;
    color: #475569;
    font-size: 0.85rem;
}

.petitioner-info[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    overflow: hidden;
}

.petitioner-name[b-vl3z5ll92x] {
    font-weight: 600;
    color: #0f172a;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.status-badge[b-vl3z5ll92x] {
    font-size: 0.62rem;
    padding: 4px 8px;
    border-radius: 999px;
    text-transform: none;
    border: 1px solid rgba(15,23,42,0.06);
    font-weight: 600;
}

    .status-badge.rescheduled[b-vl3z5ll92x] { background: #f8fafc; color: #475569; }
    .status-badge.confirmed[b-vl3z5ll92x] { background: #0f172a; color: #fff; }
    .status-badge.scheduled[b-vl3z5ll92x] { background: #eef2ff; color: #0f172a; }

.more-indicator[b-vl3z5ll92x] {
    font-size: 0.75rem;
    color: #64748b;
    text-align: center;
    margin: 10px 0 0 0;
    display: block;
    width: 100%;
}

.slot-red[b-vl3z5ll92x] {
    background-color: #fef2f2 !important;
    border: 2px solid #fecaca !important;
}

    .slot-red .badge-mini[b-vl3z5ll92x] { background: #ef4444; color: white; }
    .slot-red .slot-time[b-vl3z5ll92x] { color: #991b1b; }

.slot-orange[b-vl3z5ll92x] {
    background-color: #fff7ed !important;
    border: 2px solid #fed7aa !important;
}

    .slot-orange .badge-mini[b-vl3z5ll92x] { background: #f97316; color: white; }
    .slot-orange .slot-time[b-vl3z5ll92x] { color: #9a3412; }

.slot-green[b-vl3z5ll92x] {
    background-color: #f0fdf4 !important;
    border: 2px solid #bbf7d0 !important;
}

    .slot-green .badge-mini[b-vl3z5ll92x] { background: #10b981; color: white; }
    .slot-green .slot-time[b-vl3z5ll92x] { color: #166534; }

.calendar-dashboard-layout[b-vl3z5ll92x] {
    display: flex;
    gap: 16px;
    align-items: stretch;
    margin-top: 24px;
}

.calendar-main-column[b-vl3z5ll92x] {
    flex: 2;
}

.dashboard-side-stack[b-vl3z5ll92x] {
    flex: 1;
    min-width: 320px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-height: 0;
}

.dashboard-side-stack .day-details-card.side-view[b-vl3z5ll92x] {
    flex: 1 1 auto;
    min-height: 0;
}

.day-details-sidebar[b-vl3z5ll92x] {
    flex: 1;
    min-width: 300px;
    display: flex;
    flex-direction: column;
}

.petition-selection-list[b-vl3z5ll92x] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    max-height: 300px;
    overflow-y: auto;
}

.form-table[b-vl3z5ll92x] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

    .form-table th[b-vl3z5ll92x] {
        background: #f8fafc;
        padding: 12px;
        text-align: left;
        border-bottom: 1px solid #e2e8f0;
    }

    .form-table td[b-vl3z5ll92x] {
        padding: 12px;
        border-bottom: 1px solid #f1f5f9;
    }

.row-selected[b-vl3z5ll92x] {
    background-color: #f0f9ff;
}

.ai-hero-box[b-vl3z5ll92x] {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
    color: white;
    padding: 24px;
    border-radius: 12px;
    text-align: center;
    margin-bottom: 20px;
}

.ai-pulse[b-vl3z5ll92x] {
    font-size: 2rem;
    color: #38bdf8;
    margin-bottom: 12px;
}

.alert-info[b-vl3z5ll92x] {
    background: #eff6ff;
    border: 1px solid #dbeafe;
    color: #1e40af;
    padding: 12px;
    border-radius: 6px;
    display: flex;
    gap: 10px;
    align-items: center;
    font-size: 0.875rem;
}

.cv-loading-state[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 0;
    gap: 16px;
    color: #64748b;
}

.cv-empty-cell[b-vl3z5ll92x] {
    color: #94a3b8;
    font-size: 0.75rem;
    background: #f8fafc;
    border: 1px dashed #e2e8f0;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
}

@media (max-width: 768px) {
    .room-card-grid[b-vl3z5ll92x] {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .stats-grid[b-vl3z5ll92x] {
        grid-template-columns: repeat(2, 1fr);
        margin: 0 12px 12px 12px;
        padding: 8px;
    }

    .review-grid[b-vl3z5ll92x] { grid-template-columns: 1fr; }
    .manual-grid[b-vl3z5ll92x] { grid-template-columns: 1fr; }
    .calendar-dashboard-layout[b-vl3z5ll92x] { flex-direction: column; }
    .day-details-sidebar[b-vl3z5ll92x] { min-width: 0; }
    .calendar-grid-header[b-vl3z5ll92x],
    .calendar-days-grid[b-vl3z5ll92x] { font-size: 11px; }
    .schedule-min-width[b-vl3z5ll92x] {
        min-width: 0;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .side-by-side[b-vl3z5ll92x] { flex-direction: column; }
    .filter-grid[b-vl3z5ll92x],
    .filter-grid-secondary[b-vl3z5ll92x] { grid-template-columns: 1fr !important; }
}

@media (max-width: 480px) {
    .stats-grid[b-vl3z5ll92x] { grid-template-columns: 1fr; }
}

/* ===== Capacity-view layout (Lovable-style two-column rows) ===== */
.cv-week-row[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(320px, 1fr);
    gap: 16px;
    margin-top: 16px;
    align-items: stretch;
}

.cv-week-row > .capacity-container[b-vl3z5ll92x] {
    margin-top: 0;
    min-width: 0;
}

@media (max-width: 1100px) {
    .cv-week-row[b-vl3z5ll92x] { grid-template-columns: 1fr; }
}

/* Block Details aside */
.cv-block-details[b-vl3z5ll92x] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: 0;
    position: sticky;
    top: 16px;
    align-self: start;
    max-height: calc(100vh - 32px);
    overflow-y: auto;
}

.cv-block-details-header[b-vl3z5ll92x] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    border-bottom: 1px solid #f1f5f9;
    padding-bottom: 10px;
}

.cv-block-details-title[b-vl3z5ll92x] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: #0f172a;
    display: flex;
    align-items: center;
    gap: 8px;
}

.cv-block-details-title i[b-vl3z5ll92x] { color: #475569; }

.cv-block-details-sub[b-vl3z5ll92x] {
    font-size: 0.8rem;
    color: #64748b;
}

.cv-block-details-body[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cv-bd-empty[b-vl3z5ll92x] {
    color: #64748b;
    font-size: 0.875rem;
    margin: 8px 0;
}

.cv-bd-hint[b-vl3z5ll92x] {
    color: #475569;
    font-size: 0.8rem;
    margin: 0 0 4px;
    font-style: italic;
}

.cv-bd-meta-card[b-vl3z5ll92x] {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 12px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cv-bd-meta-card.slot-green[b-vl3z5ll92x]  { background: #ecfdf5; border-color: #a7f3d0; }
.cv-bd-meta-card.slot-orange[b-vl3z5ll92x] { background: #fff7ed; border-color: #fed7aa; }
.cv-bd-meta-card.slot-red[b-vl3z5ll92x]    { background: #fef2f2; border-color: #fecaca; }

.cv-bd-meta-row[b-vl3z5ll92x] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    font-size: 0.875rem;
    color: #0f172a;
}

.cv-bd-meta-label[b-vl3z5ll92x] {
    color: #64748b;
    font-weight: 500;
}

.cv-bd-capacity-badge[b-vl3z5ll92x] {
    border-radius: 9999px;
    padding: 2px 10px;
    font-size: 0.75rem;
    font-weight: 700;
    background: #10b981;
    color: #fff;
}

.cv-bd-capacity-badge.slot-orange[b-vl3z5ll92x] { background: #f97316; }
.cv-bd-capacity-badge.slot-red[b-vl3z5ll92x]    { background: #ef4444; }

.cv-bd-petitions-title[b-vl3z5ll92x] {
    margin: 0 0 6px;
    font-size: 0.875rem;
    font-weight: 600;
    color: #0f172a;
}

.cv-bd-petition-rows[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cv-bd-actions[b-vl3z5ll92x] {
    display: flex;
    justify-content: flex-end;
    margin-top: 4px;
}

/* Selected slot highlight */
.slot-btn.is-selected[b-vl3z5ll92x],
.slot-details-card.is-selected[b-vl3z5ll92x] {
    box-shadow: 0 0 0 2px #2563eb;
}

/* ===== Day Summary aside (right of monthly calendar) ===== */
.cv-day-summary[b-vl3z5ll92x] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 280px;
}

.cv-day-summary-header[b-vl3z5ll92x] {
    border-bottom: 1px solid #f1f5f9;
    padding-bottom: 10px;
}

.cv-day-summary-title[b-vl3z5ll92x] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: #0f172a;
    display: flex;
    align-items: center;
    gap: 8px;
}

.cv-day-summary-title i[b-vl3z5ll92x] { color: #475569; }

.cv-day-summary-stats[b-vl3z5ll92x] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.cv-day-stat[b-vl3z5ll92x] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 8px 12px;
    text-align: center;
}

.cv-day-stat-label[b-vl3z5ll92x] {
    font-size: 0.7rem;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 2px;
}

.cv-day-stat-value[b-vl3z5ll92x] {
    font-size: 1.05rem;
    font-weight: 600;
    color: #0f172a;
}

.cv-day-summary-section-title[b-vl3z5ll92x] {
    margin: 4px 0 6px;
    font-size: 0.8rem;
    font-weight: 600;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.cv-day-summary-rooms[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.cv-day-room-row[b-vl3z5ll92x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 10px;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    background: #fff;
    font-size: 0.8rem;
    color: #0f172a;
}

.cv-day-room-row.slot-green[b-vl3z5ll92x]  { background: #ecfdf5; border-color: #a7f3d0; }
.cv-day-room-row.slot-orange[b-vl3z5ll92x] { background: #fff7ed; border-color: #fed7aa; }
.cv-day-room-row.slot-red[b-vl3z5ll92x]    { background: #fef2f2; border-color: #fecaca; }

.cv-day-room-name[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 500;
}

.cv-day-room-name i[b-vl3z5ll92x] { color: #64748b; }

.cv-day-room-counts[b-vl3z5ll92x] {
    color: #475569;
    font-weight: 500;
    font-size: 0.75rem;
}

/* Make slot-details-card act like a button (for clicking in Block Details day list) */
button.slot-details-card[b-vl3z5ll92x] {
    border: none;
    width: 100%;
    text-align: left;
    cursor: pointer;
    font: inherit;
}

/* Fix the calendar-dashboard-layout side column now that we replaced the side-stack */
.calendar-dashboard-layout > .cv-day-summary[b-vl3z5ll92x] {
    flex: 1;
    min-width: 280px;
    align-self: stretch;
}

/* ===== Day-summary block cards (per-hearing cards on right of monthly calendar) ===== */
.cv-day-room-group[b-vl3z5ll92x] {
    margin-bottom: 12px;
}

.cv-day-room-group-title[b-vl3z5ll92x] {
    margin: 0 0 6px;
    font-size: 0.75rem;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 6px;
}

.cv-day-room-group-title i[b-vl3z5ll92x] { color: #94a3b8; }

.cv-block-card[b-vl3z5ll92x] {
    width: 100%;
    text-align: left;
    border: 2px solid #e2e8f0;
    background: #fff;
    border-radius: 10px;
    padding: 12px;
    cursor: pointer;
    transition: box-shadow 0.15s, transform 0.1s;
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 8px;
    font: inherit;
    color: inherit;
}

.cv-block-card:hover[b-vl3z5ll92x] { box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1); }

.cv-block-card.slot-green[b-vl3z5ll92x]  { background: #ecfdf5; border-color: #a7f3d0; }
.cv-block-card.slot-orange[b-vl3z5ll92x] { background: #fff7ed; border-color: #fed7aa; }
.cv-block-card.slot-red[b-vl3z5ll92x]    { background: #fef2f2; border-color: #fecaca; }
.cv-block-card.is-selected[b-vl3z5ll92x] { box-shadow: 0 0 0 2px #2563eb; }

.cv-block-card-header[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.cv-block-card-time[b-vl3z5ll92x] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #0f172a;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.cv-block-card-time i[b-vl3z5ll92x] { color: #64748b; }

.cv-block-card-capacity[b-vl3z5ll92x] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 9999px;
    padding: 2px 10px;
    font-size: 0.7rem;
    font-weight: 700;
    color: #475569;
}

.cv-block-card-magistrate[b-vl3z5ll92x] {
    margin: 0;
    font-size: 0.75rem;
    color: #64748b;
}

.cv-block-card-pet-rows[b-vl3z5ll92x] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.cv-block-pet-row[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 4px;
    padding: 4px 8px;
    font-size: 0.7rem;
    gap: 8px;
}

.cv-block-pet-id[b-vl3z5ll92x] {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    color: #64748b;
    flex-shrink: 0;
}

.cv-block-pet-right[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.cv-block-pet-owner[b-vl3z5ll92x] {
    color: #0f172a;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 110px;
}

.cv-block-pet-status[b-vl3z5ll92x] {
    font-size: 0.65rem;
    padding: 1px 6px;
    border-radius: 9999px;
    border: 1px solid #e2e8f0;
    background: #fff;
    color: #475569;
    text-transform: lowercase;
}

.cv-block-empty[b-vl3z5ll92x],
.cv-block-more[b-vl3z5ll92x] {
    margin: 4px 0 0;
    font-size: 0.7rem;
    color: #64748b;
    text-align: center;
}

/* ===== Block Details — Lovable-style petition cards (with checkbox / link / pills) ===== */
.cv-bd-petitions-header[b-vl3z5ll92x] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
}

.cv-bd-select-all[b-vl3z5ll92x] {
    background: none;
    border: none;
    color: #2563eb;
    font-size: 0.75rem;
    cursor: pointer;
    padding: 2px 4px;
}

.cv-bd-select-all:hover[b-vl3z5ll92x] { text-decoration: underline; }

.cv-pet-card[b-vl3z5ll92x] {
    display: flex;
    gap: 8px;
    padding: 8px 10px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #fff;
    transition: border-color 0.15s, background 0.15s;
}

.cv-pet-card.is-checked[b-vl3z5ll92x] {
    border-color: #93c5fd;
    background: #eff6ff;
}

.cv-pet-checkbox[b-vl3z5ll92x] {
    margin-top: 4px;
    accent-color: #2563eb;
    cursor: pointer;
    flex-shrink: 0;
}

.cv-pet-body[b-vl3z5ll92x] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.cv-pet-row1[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.cv-pet-link[b-vl3z5ll92x] {
    font-weight: 600;
    color: #2563eb;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.85rem;
}

.cv-pet-link:hover[b-vl3z5ll92x] { text-decoration: underline; }
.cv-pet-link-icon[b-vl3z5ll92x] { font-size: 0.65rem; opacity: 0.8; }

.cv-pet-pill[b-vl3z5ll92x] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border: 1px solid #e2e8f0;
    background: #fff;
    color: #475569;
    border-radius: 9999px;
    padding: 1px 8px;
    font-size: 0.7rem;
    font-weight: 600;
}

.cv-pet-pill.pill-good-cause[b-vl3z5ll92x] {
    background: #f3e8ff;
    color: #6d28d9;
    border-color: #d8b4fe;
}

.cv-pet-owner[b-vl3z5ll92x] {
    margin: 0;
    color: #64748b;
    font-size: 0.75rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cv-pet-row3[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.cv-pet-rep[b-vl3z5ll92x] {
    color: #64748b;
    font-size: 0.7rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 160px;
}

/* ===== Bulk Operations Bar ===== */
.cv-bulk-bar[b-vl3z5ll92x] {
    position: fixed;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    background: #1e293b;
    color: #fff;
    border-radius: 10px;
    box-shadow: 0 10px 25px -5px rgba(0,0,0,0.25);
    padding: 12px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    z-index: 60;
    min-width: 480px;
    max-width: calc(100vw - 32px);
}

.cv-bulk-left[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 0.875rem;
}

.cv-bulk-count[b-vl3z5ll92x] {
    background: rgba(255,255,255,0.15);
    border-radius: 9999px;
    padding: 3px 12px;
    font-weight: 700;
    font-size: 1rem;
}

.cv-bulk-label[b-vl3z5ll92x] { font-weight: 500; }

.cv-bulk-actions[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.cv-bulk-btn[b-vl3z5ll92x] {
    border: none;
    background: transparent;
    color: rgba(255,255,255,0.85);
    border-radius: 6px;
    padding: 6px 12px;
    font-size: 0.85rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}

.cv-bulk-btn:hover:not(:disabled)[b-vl3z5ll92x] {
    background: rgba(255,255,255,0.1);
    color: #fff;
}

.cv-bulk-btn-primary[b-vl3z5ll92x] {
    border: 2px solid #34d399;
    color: #34d399;
    background: transparent;
}

.cv-bulk-btn-primary:hover:not(:disabled)[b-vl3z5ll92x] {
    background: rgba(52,211,153,0.15);
    color: #6ee7b7;
}

.cv-bulk-btn-icon[b-vl3z5ll92x] {
    padding: 6px 8px;
}

.cv-bulk-btn:disabled[b-vl3z5ll92x] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* ===== Move-mode banner & target cell highlight ===== */
.cv-move-banner[b-vl3z5ll92x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #eff6ff;
    border: 1px dashed #60a5fa;
    color: #1e40af;
    padding: 10px 14px;
    border-radius: 8px;
    margin: 8px 0 12px;
    font-size: 0.875rem;
}

.cv-move-banner-text[b-vl3z5ll92x] { flex: 1; }
.cv-move-banner-text i[b-vl3z5ll92x] { margin-right: 6px; }

.cv-move-banner-cancel[b-vl3z5ll92x] {
    background: #fff;
    border: 1px solid #93c5fd;
    color: #1d4ed8;
    border-radius: 6px;
    padding: 4px 10px;
    font-size: 0.8rem;
    font-weight: 500;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.cv-move-banner-cancel:hover[b-vl3z5ll92x] {
    background: #dbeafe;
}

/* Target-mode cell affordance */
.cv-empty-target[b-vl3z5ll92x] {
    border: 2px dashed #93c5fd;
    background: #f8fafc;
    color: #2563eb;
    cursor: pointer;
    border-radius: 8px;
    transition: background 0.15s, border-color 0.15s, transform 0.1s;
}

.cv-empty-target:hover[b-vl3z5ll92x] {
    background: #dbeafe;
    border-color: #2563eb;
    transform: translateY(-1px);
}

.slot-btn.is-target[b-vl3z5ll92x] {
    cursor: pointer;
    outline: 2px dashed transparent;
    transition: outline-color 0.15s, transform 0.1s;
}

.slot-btn.is-target:hover[b-vl3z5ll92x] {
    outline-color: #2563eb;
    transform: translateY(-1px);
}
/* /Components/Pages/VoucherSubmitPage.razor.rz.scp.css */
.voucher-submit-page[b-l1nl1p8h0a] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f4f4f4;
    padding: 2rem 1rem;
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
}

.voucher-submit-card[b-l1nl1p8h0a] {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    border: 1px solid #e5e7eb;
    max-width: 520px;
    width: 100%;
    padding: 2rem;
}

.voucher-submit-header[b-l1nl1p8h0a] {
    text-align: center;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e5e7eb;
}

.voucher-submit-header i[b-l1nl1p8h0a] {
    font-size: 2rem;
    color: #22c55e;
    margin-bottom: 0.5rem;
    display: block;
}

.voucher-submit-header h1[b-l1nl1p8h0a] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #111827;
    margin: 0;
}

.voucher-submit-loading[b-l1nl1p8h0a] {
    text-align: center;
    padding: 3rem 0;
    color: #6b7280;
}

.voucher-submit-loading i[b-l1nl1p8h0a] {
    font-size: 1.5rem;
    color: #22c55e;
    margin-bottom: 0.5rem;
    display: block;
}

.voucher-submit-error[b-l1nl1p8h0a],
.voucher-submit-success[b-l1nl1p8h0a],
.voucher-submit-pending[b-l1nl1p8h0a] {
    text-align: center;
    padding: 2rem 0;
}

.voucher-submit-error i[b-l1nl1p8h0a] {
    font-size: 2.5rem;
    color: #dc2626;
    margin-bottom: 0.75rem;
    display: block;
}

.voucher-submit-success i[b-l1nl1p8h0a] {
    font-size: 2.5rem;
    color: #22c55e;
    margin-bottom: 0.75rem;
    display: block;
}

.voucher-submit-pending i[b-l1nl1p8h0a] {
    font-size: 2.5rem;
    color: #d97706;
    margin-bottom: 0.75rem;
    display: block;
}

.voucher-submit-error h2[b-l1nl1p8h0a],
.voucher-submit-success h2[b-l1nl1p8h0a],
.voucher-submit-pending h2[b-l1nl1p8h0a] {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 0.5rem;
    color: #111827;
}

.voucher-submit-error p[b-l1nl1p8h0a],
.voucher-submit-success p[b-l1nl1p8h0a],
.voucher-submit-pending p[b-l1nl1p8h0a] {
    color: #6b7280;
    margin: 0;
    line-height: 1.5;
}

.voucher-submit-info[b-l1nl1p8h0a] {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.voucher-detail-row[b-l1nl1p8h0a] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.4rem 0;
}

.voucher-detail-row + .voucher-detail-row[b-l1nl1p8h0a] {
    border-top: 1px solid #f3f4f6;
}

.voucher-detail-label[b-l1nl1p8h0a] {
    color: #6b7280;
    font-size: 0.875rem;
}

.voucher-detail-value[b-l1nl1p8h0a] {
    font-weight: 500;
    color: #111827;
}

.voucher-code-value[b-l1nl1p8h0a] {
    font-family: 'Courier New', monospace;
    letter-spacing: 0.05em;
    font-weight: 700;
}

.voucher-amount-row[b-l1nl1p8h0a] {
    margin-top: 0.25rem;
    padding-top: 0.5rem;
    border-top: 2px solid #e5e7eb !important;
}

.voucher-amount-value[b-l1nl1p8h0a] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #22c55e;
}

.voucher-submit-form h2[b-l1nl1p8h0a] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #111827;
    margin: 0 0 0.25rem;
}

.voucher-submit-instructions[b-l1nl1p8h0a] {
    color: #6b7280;
    font-size: 0.875rem;
    margin: 0 0 1.25rem;
    line-height: 1.5;
}

.voucher-field[b-l1nl1p8h0a] {
    margin-bottom: 1rem;
}

.voucher-field label[b-l1nl1p8h0a] {
    display: block;
    font-weight: 600;
    font-size: 0.875rem;
    color: #374151;
    margin-bottom: 0.375rem;
}

.voucher-field .required[b-l1nl1p8h0a] {
    color: #dc2626;
}

.voucher-field input[type="text"][b-l1nl1p8h0a] {
    width: 100%;
    height: 44px;
    padding: 0 12px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 0.95rem;
    color: #111827;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    outline: none;
    transition: border-color 0.15s;
    box-sizing: border-box;
}

.voucher-field input[type="text"]:focus[b-l1nl1p8h0a] {
    border-color: #22c55e;
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.25);
}

.voucher-field input[type="file"][b-l1nl1p8h0a] {
    width: 100%;
    padding: 0.5rem;
    border: 1px dashed #d1d5db;
    border-radius: 8px;
    font-size: 0.875rem;
    cursor: pointer;
    box-sizing: border-box;
}

.voucher-field-hint[b-l1nl1p8h0a] {
    display: block;
    font-size: 0.75rem;
    color: #9ca3af;
    margin-top: 0.25rem;
}

.voucher-submit-error-inline[b-l1nl1p8h0a] {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fca5a5;
    border-radius: 8px;
    padding: 0.75rem;
    margin-bottom: 1rem;
    font-size: 0.875rem;
}

.voucher-submit-button[b-l1nl1p8h0a] {
    width: 100%;
    height: 44px;
    padding: 0 1.5rem;
    background: #22c55e;
    color: #fff;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.voucher-submit-button:hover:not(:disabled)[b-l1nl1p8h0a] {
    background: #16a34a;
}

.voucher-submit-button:focus[b-l1nl1p8h0a] {
    outline: none;
    box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.25);
}

.voucher-submit-button:disabled[b-l1nl1p8h0a] {
    opacity: 0.6;
    cursor: not-allowed;
}
/* /Components/UI/Admin/AdminBlockoutDates.razor.rz.scp.css */
.ebp-blockout-help[b-07m8uuo293] {
    color: #555;
    margin-bottom: 1.25rem;
}

.ebp-blockout-add[b-07m8uuo293] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.ebp-blockout-empty[b-07m8uuo293] {
    color: #888;
    margin: 1rem 0;
}
/* /Components/UI/Admin/AdminConsolidationSettings.razor.rz.scp.css */
.cs-card[b-l73qybotbt] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 24px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.cs-header[b-l73qybotbt] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 8px;
}

.cs-icon[b-l73qybotbt] {
    color: #0f172a;
    font-size: 1.5rem;
    margin-top: 4px;
}

.cs-desc[b-l73qybotbt] {
    font-size: 0.875rem;
    color: #475569;
    margin: 4px 0 0 0;
}

.cs-divider[b-l73qybotbt] {
    border: none;
    border-top: 1px solid #e2e8f0;
    margin: 20px 0;
}

.cs-section[b-l73qybotbt] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cs-section-title[b-l73qybotbt] {
    font-size: 0.75rem;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: 0.06em;
    margin: 0;
}

.cs-row[b-l73qybotbt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 16px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #f8fafc;
}

.cs-row-info[b-l73qybotbt] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.cs-row-title[b-l73qybotbt] {
    font-weight: 600;
    margin: 0;
}

.cs-row-desc[b-l73qybotbt] {
    font-size: 0.875rem;
    color: #64748b;
    margin: 0;
}

.cs-save-row[b-l73qybotbt] {
    display: flex;
    justify-content: flex-end;
}

.cs-block-list[b-l73qybotbt] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.cs-block-row[b-l73qybotbt] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #f8fafc;
}

.cs-block-row input[type="time"][b-l73qybotbt] {
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    padding: 6px 8px;
    font-size: 0.9rem;
    background: #fff;
}

.cs-block-row .cs-block-sep[b-l73qybotbt] {
    color: #64748b;
    font-weight: 500;
}

.cs-block-row .cs-block-spacer[b-l73qybotbt] {
    flex: 1;
}

.cs-block-empty[b-l73qybotbt] {
    font-size: 0.875rem;
    color: #64748b;
    font-style: italic;
    padding: 8px 0;
}

.cs-block-add-row[b-l73qybotbt] {
    display: flex;
    justify-content: flex-start;
    margin-top: 4px;
}

.cs-block-error[b-l73qybotbt] {
    color: #dc2626;
    font-size: 0.8rem;
    margin: 0;
}
/* /Components/UI/Admin/ApiClientManager.razor.rz.scp.css */
/* Layout */
.api-client-manager[b-pha0hll9m5] {
    max-width: 1200px;
}

.county-selector-bar[b-pha0hll9m5] {
    background-color: var(--light-grey);
    display: grid;
    grid-template-columns: auto 1fr;
    grid-gap: 1em;
    padding: 1em;
    border-radius: var(--radius-lg);
    align-items: center;
    margin-bottom: var(--space-lg);
}

.api-client-section[b-pha0hll9m5] {
    margin-top: var(--space-md);
}

.section-header-row[b-pha0hll9m5] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: var(--space-md);
    margin-bottom: var(--space-lg);
}

.section-description[b-pha0hll9m5] {
    color: var(--text-gray);
    font-size: var(--font-sm);
    max-width: 600px;
    margin: 0;
}

/* Table */
.api-client-table[b-pha0hll9m5] {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--font-sm);
    background: #fff;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.api-client-table th[b-pha0hll9m5] {
    text-align: left;
    padding: 0.75rem 1rem;
    border-bottom: 2px solid var(--grey);
    color: var(--text-gray);
    font-weight: 600;
    font-size: var(--font-xs);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.api-client-table td[b-pha0hll9m5] {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    vertical-align: middle;
}

.api-client-table tr:hover[b-pha0hll9m5] {
    background-color: #f9fafb;
}

/* Credentials display */
.credential-value[b-pha0hll9m5] {
    font-family: 'Courier New', monospace;
    font-size: var(--font-xs);
    background: #f3f4f6;
    padding: 2px 6px;
    border-radius: var(--radius-sm);
    word-break: break-all;
    max-width: 220px;
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

.credential-masked[b-pha0hll9m5] {
    color: #9ca3af;
    letter-spacing: 2px;
}

/* Action buttons */
.action-cell[b-pha0hll9m5] {
    white-space: nowrap;
    text-align: right;
}

.btn-icon[b-pha0hll9m5] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 6px 8px;
    border-radius: var(--radius-sm);
    color: var(--text-gray);
    font-size: var(--font-sm);
    transition: var(--transition);
}

.btn-icon:hover[b-pha0hll9m5] {
    background: #f3f4f6;
    color: var(--black);
}

.btn-icon-danger:hover[b-pha0hll9m5] {
    color: var(--red);
    background: #fef2f2;
}

.delete-confirm[b-pha0hll9m5] {
    font-size: var(--font-xs);
    color: var(--red);
    margin-right: 4px;
}

.delete-yes[b-pha0hll9m5] {
    background: var(--red) !important;
}

.delete-yes:hover[b-pha0hll9m5] {
    background: #b91c1c !important;
}

/* Status badges */
.status-badge[b-pha0hll9m5] {
    display: inline-block;
    padding: 2px 10px;
    border-radius: var(--radius-full);
    font-size: var(--font-xs);
    font-weight: 600;
    text-transform: uppercase;
}

.status-badge.active[b-pha0hll9m5] {
    background: #dcfce7;
    color: #166534;
}

.status-badge.inactive[b-pha0hll9m5] {
    background: #f3f4f6;
    color: var(--text-gray);
}

/* Create panel */
.create-panel[b-pha0hll9m5] {
    margin-top: var(--space-lg);
    padding: var(--space-lg);
    background: #fff;
    border: 1px solid var(--grey);
    border-radius: var(--radius-lg);
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.create-panel h3[b-pha0hll9m5] {
    margin: 0 0 var(--space-md) 0;
}

/* Form elements */
.form-group[b-pha0hll9m5] {
    margin-bottom: var(--space-md);
}

.form-group label[b-pha0hll9m5] {
    display: block;
    font-weight: 600;
    margin-bottom: var(--space-xs);
    font-size: var(--font-sm);
}

.form-input[b-pha0hll9m5] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid #d1d5db;
    border-radius: var(--radius-md);
    font-size: var(--font-sm);
}

.form-input:focus[b-pha0hll9m5] {
    outline: none;
    border-color: var(--theme-green);
    box-shadow: 0 0 0 2px rgba(30, 174, 83, 0.15);
}

.form-hint[b-pha0hll9m5] {
    display: block;
    font-size: var(--font-xs);
    color: #9ca3af;
    margin-top: var(--space-xs);
}

/* Empty state */
.empty-state[b-pha0hll9m5] {
    text-align: center;
    padding: var(--space-2xl) var(--space-md);
    color: #9ca3af;
}

.empty-icon[b-pha0hll9m5] {
    font-size: 2.5rem;
    margin-bottom: 0.75rem;
}

.empty-text[b-pha0hll9m5] {
    font-size: var(--font-base);
    font-weight: 600;
    color: var(--text-gray);
    margin: 0;
}

.empty-subtext[b-pha0hll9m5] {
    font-size: var(--font-sm);
    margin: var(--space-xs) 0 0 0;
}
/* /Components/UI/Admin/ConfirmGoodCauseApproverDialog.razor.rz.scp.css */
.confirm-approver-dialog[b-pke6vpp2yb] {
    padding: 0.25rem;
}

.confirm-approver-intro[b-pke6vpp2yb] {
    font-size: var(--font-sm, 0.9rem);
    color: var(--text-gray, #555);
    margin: 0 0 var(--space-md, 1rem) 0;
}

.confirm-approver-details[b-pke6vpp2yb] {
    display: grid;
    grid-template-columns: 160px 1fr;
    row-gap: 0.5rem;
    column-gap: 1rem;
    margin: 0 0 var(--space-lg, 1.25rem) 0;
}

.confirm-approver-details dt[b-pke6vpp2yb] {
    font-weight: 600;
    color: var(--text-gray, #555);
}

.confirm-approver-details dd[b-pke6vpp2yb] {
    margin: 0;
    word-break: break-word;
}

.confirm-approver-actions[b-pke6vpp2yb] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
}
/* /Components/UI/Admin/WebhookEditor.razor.rz.scp.css */
/* ===== CSS CUSTOM PROPERTIES ===== */
.webhook-editor[b-5p2kfuonsk] {
  /* Colors */
  --color-primary: var(--ebp-primary);
  --color-primary-hover: var(--ebp-secondary);
  --color-blue: #2563eb;
  --color-blue-light: #dbeafe;
  
  /* Grayscale */
  --color-gray-50: #f9fafb;
  --color-gray-100: #f3f4f6;
  --color-gray-200: #e5e7eb;
  --color-gray-300: #d1d5db;
  --color-gray-400: #9ca3af;
  --color-gray-500: #6b7280;
  --color-gray-600: #4b5563;
  --color-gray-700: #374151;
  --color-gray-900: #111827;
  
  /* Spacing */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  
  /* Border Radius */
  --radius-sm: 0.25rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.75rem;
  
  /* Font Sizes */
  --font-xs: 0.75rem;
  --font-sm: 0.875rem;
  --font-base: 1rem;
  --font-lg: 1.125rem;
  --font-xl: 1.25rem;
  --font-2xl: 1.5rem;
  
  /* Transitions */
  --transition: 0.2s ease;
}

/* ===== ROOT CONTAINER ===== */
.webhook-editor[b-5p2kfuonsk] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-lg);
  max-width: 1400px;
  margin: 0 auto;
  padding: var(--space-xl);
}

.webhook-editor .editor-left[b-5p2kfuonsk],
.webhook-editor .editor-right[b-5p2kfuonsk] {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
}

/* ===== EDITOR SECTIONS ===== */
.webhook-editor .editor-section[b-5p2kfuonsk] {
  background-color: #ffffff;
  border: 1px solid var(--color-gray-200);
  border-radius: var(--radius-lg);
  padding: var(--space-lg);
}

.webhook-editor .section-heading[b-5p2kfuonsk] {
  font-size: var(--font-lg);
  font-weight: 600;
  color: var(--color-gray-900);
  margin: 0 0 var(--space-lg) 0;
}

/* ===== FORM ELEMENTS ===== */
.webhook-editor .form-group[b-5p2kfuonsk] {
  margin-bottom: var(--space-lg);
}

.webhook-editor .form-group label[b-5p2kfuonsk] {
  display: block;
  font-size: var(--font-sm);
  font-weight: 500;
  color: var(--color-gray-700);
  margin-bottom: var(--space-sm);
}

.webhook-editor .form-input[b-5p2kfuonsk],
.webhook-editor .form-textarea[b-5p2kfuonsk],
.webhook-editor .form-select[b-5p2kfuonsk] {
  width: 100%;
  padding: 0.625rem 0.875rem;
  font-size: var(--font-sm);
  color: var(--color-gray-900);
  background-color: #ffffff;
  border: 1px solid var(--color-gray-300);
  border-radius: var(--radius-md);
  transition: all var(--transition);
  box-sizing: border-box;
}

.webhook-editor .form-input:focus[b-5p2kfuonsk],
.webhook-editor .form-textarea:focus[b-5p2kfuonsk],
.webhook-editor .form-select:focus[b-5p2kfuonsk] {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(22, 162, 73, 0.1);
}

.webhook-editor .form-textarea[b-5p2kfuonsk] {
  min-height: 80px;
  resize: vertical;
  font-family: inherit;
}

.webhook-editor .form-hint[b-5p2kfuonsk] {
  display: block;
  font-size: var(--font-xs);
  color: var(--color-gray-500);
  margin-top: var(--space-xs);
}

.webhook-editor .form-row[b-5p2kfuonsk] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-md);
}

/* ===== INPUT WITH ICON ===== */
.webhook-editor .input-with-icon[b-5p2kfuonsk] {
  position: relative;
}

.webhook-editor .input-icon[b-5p2kfuonsk] {
  position: absolute;
  right: 0.875rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--color-gray-400);
  pointer-events: none;
}

/* ===== AUTHENTICATION SECTION ===== */
.webhook-editor .auth-header[b-5p2kfuonsk] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-sm);
}

.webhook-editor .secret-display[b-5p2kfuonsk] {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin-top: var(--space-sm);
  padding: 0.75rem;
  background-color: var(--color-gray-50);
  border: 1px solid var(--color-gray-200);
  border-radius: var(--radius-md);
}

.webhook-editor .secret-code[b-5p2kfuonsk] {
  flex: 1;
  font-family: 'Courier New', monospace;
  font-size: var(--font-sm);
  color: var(--color-gray-700);
  word-break: break-all;
}

.webhook-editor .btn-copy[b-5p2kfuonsk] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background-color: transparent;
  border: none;
  border-radius: var(--radius-sm);
  color: var(--color-gray-500);
  cursor: pointer;
  transition: all var(--transition);
  flex-shrink: 0;
}

.webhook-editor .btn-copy:hover[b-5p2kfuonsk] {
  background-color: var(--color-gray-200);
  color: var(--color-gray-900);
}

/* ===== SAMPLE PAYLOAD SECTION ===== */
.webhook-editor .sample-section[b-5p2kfuonsk] {
  background-color: var(--color-gray-50);
}

.webhook-editor .payload-header[b-5p2kfuonsk] {
  display: flex;
  justify-content: flex-end;
  margin-bottom: var(--space-sm);
}

.webhook-editor .payload-display[b-5p2kfuonsk] {
  padding: var(--space-md);
  background-color: #1e293b;
  border-radius: var(--radius-md);
  overflow-x: auto;
  margin: 0 0 var(--space-md) 0;
}

.webhook-editor .payload-display code[b-5p2kfuonsk] {
  font-family: 'Courier New', monospace;
  font-size: var(--font-sm);
  color: #e2e8f0;
  line-height: 1.6;
  white-space: pre;
}

.webhook-editor .payload-info[b-5p2kfuonsk] {
  display: flex;
  gap: var(--space-sm);
  padding: var(--space-md);
  background-color: var(--color-blue-light);
  border-radius: var(--radius-md);
  font-size: var(--font-sm);
  color: var(--color-gray-700);
  line-height: 1.5;
}

.webhook-editor .payload-info i[b-5p2kfuonsk] {
  color: var(--color-blue);
  flex-shrink: 0;
  margin-top: 0.125rem;
}

/* ===== TEST CONFIGURATION SECTION ===== */
.webhook-editor .test-section[b-5p2kfuonsk] {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
}

.webhook-editor .test-header[b-5p2kfuonsk] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: var(--space-lg);
  border-bottom: 1px solid var(--color-gray-200);
}

.webhook-editor .test-title[b-5p2kfuonsk] {
  font-size: var(--font-base);
  font-weight: 600;
  color: var(--color-gray-900);
  margin-bottom: var(--space-xs);
}

.webhook-editor .test-subtitle[b-5p2kfuonsk] {
  font-size: var(--font-sm);
  color: var(--color-gray-500);
}

.webhook-editor .btn-action[b-5p2kfuonsk] {
  display: inline-flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 0.625rem 1.25rem;
  font-size: var(--font-sm);
  font-weight: 500;
  color: #ffffff;
  background-color: var(--color-primary);
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition);
}

.webhook-editor .btn-action:hover[b-5p2kfuonsk] {
  background-color: var(--color-primary-hover);
}

.webhook-editor .btn-action:disabled[b-5p2kfuonsk] {
  background-color: var(--color-gray-300);
  cursor: not-allowed;
}

.webhook-editor .btn-danger[b-5p2kfuonsk] {
  display: inline-flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 0.625rem 1.25rem;
  font-size: var(--font-sm);
  font-weight: 500;
  color: #ffffff;
  background-color: #dc2626;
  border: none;
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: all var(--transition);
}

.webhook-editor .btn-danger:hover[b-5p2kfuonsk] {
  background-color: #b91c1c;
}

.webhook-editor .test-results[b-5p2kfuonsk] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-lg);
}

.webhook-editor .test-result-item[b-5p2kfuonsk] {
  display: flex;
  flex-direction: column;
}

.webhook-editor .result-label[b-5p2kfuonsk] {
  font-size: var(--font-sm);
  font-weight: 500;
  color: var(--color-gray-700);
  margin-bottom: var(--space-xs);
}

.webhook-editor .result-value[b-5p2kfuonsk] {
  font-size: var(--font-lg);
  font-weight: 600;
  color: var(--color-gray-900);
  margin-bottom: var(--space-xs);
}

.webhook-editor .result-hint[b-5p2kfuonsk] {
  font-size: var(--font-xs);
  color: var(--color-gray-500);
}

.page-title[b-5p2kfuonsk] {
  font-size: var(--font-2xl);
  font-weight: 600;
  color: var(--color-gray-900);
  margin: var(--space-md) 0 var(--space-xl) 0;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .webhook-editor[b-5p2kfuonsk] {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .webhook-editor .form-row[b-5p2kfuonsk] {
    grid-template-columns: 1fr;
  }

  .webhook-editor .test-header[b-5p2kfuonsk] {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-md);
  }

  .webhook-editor .btn-send-test[b-5p2kfuonsk] {
    width: 100%;
    justify-content: center;
  }

  .webhook-editor .test-results[b-5p2kfuonsk] {
    grid-template-columns: 1fr;
  }
}
/* /Components/UI/Admin/WebhookManager.razor.rz.scp.css */
/* ===== CSS CUSTOM PROPERTIES ===== */
#webhook-manager[b-u1q1zsybe4] {
  /* Colors */
  --color-primary: var(--ebp-primary);
  --color-primary-hover: var(--ebp-secondary);
  --color-blue: #2563eb;
  --color-green: #10b981;
  --color-purple: #8b5cf6;
  --color-orange: #f97316;
  
  /* Grayscale */
  --color-gray-50: #f9fafb;
  --color-gray-100: #f3f4f6;
  --color-gray-200: #e5e7eb;
  --color-gray-300: #d1d5db;
  --color-gray-400: #9ca3af;
  --color-gray-500: #6b7280;
  --color-gray-600: #4b5563;
  --color-gray-700: #374151;
  --color-gray-900: #111827;
  
  /* Status Colors */
  --color-active: #10b981;
  --color-inactive: #6b7280;
  
  /* Spacing */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  
  /* Border Radius */
  --radius-sm: 0.25rem;
  --radius-md: 0.5rem;
  --radius-lg: 0.75rem;
  
  /* Font Sizes */
  --font-xs: 0.75rem;
  --font-sm: 0.875rem;
  --font-base: 1rem;
  --font-lg: 1.125rem;
  --font-xl: 1.25rem;
  --font-2xl: 1.5rem;
  
  /* Transitions */
  --transition: 0.2s ease;
}

/* ===== ROOT CONTAINER ===== */
#webhook-manager[b-u1q1zsybe4] {
  width: 100%;
  max-width: 80rem;
  margin: 0 auto;
  padding: var(--space-xl);
  background-color: #ffffff;
  min-height: 100vh;
}

/* ===== PAGE TITLE ===== */
#webhook-manager .page-title[b-u1q1zsybe4] {
  font-size: var(--font-2xl);
  font-weight: 600;
  color: var(--color-gray-900);
  margin: 0 0 var(--space-xl) 0;
}

/* ===== EVENT SECTION ===== */
#webhook-manager .event-section[b-u1q1zsybe4] {
  margin-bottom: var(--space-xl);
  background-color: #ffffff;
  border: 1px solid var(--color-gray-200);
  border-radius: var(--radius-lg);
  overflow: hidden;
}

#webhook-manager .section-header[b-u1q1zsybe4] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--space-lg);
  background-color: var(--color-gray-100);
  border-bottom: 1px solid var(--color-gray-200);
}

#webhook-manager .section-title[b-u1q1zsybe4] {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  font-size: var(--font-lg);
  font-weight: 600;
  color: var(--color-gray-900);
}

#webhook-manager .section-icon[b-u1q1zsybe4] {
  font-size: var(--font-lg);
  color: var(--color-gray-600);
}

/* Icon Colors */
#webhook-manager .event-section:nth-child(2) .section-icon[b-u1q1zsybe4],
#webhook-manager .event-section:nth-child(2) .btn-add-webhook[b-u1q1zsybe4] {
  color: var(--color-blue);
  border-color: var(--color-blue);
}

#webhook-manager .event-section:nth-child(2) .btn-add-webhook:hover[b-u1q1zsybe4]{
  background-color: var(--color-blue);
  color: #ffffff;
}

#webhook-manager .event-section:nth-child(3) .section-icon[b-u1q1zsybe4],
#webhook-manager .event-section:nth-child(3) .btn-add-webhook[b-u1q1zsybe4] {
  color: var(--color-green);
  border-color: var(--color-green);
}

#webhook-manager .event-section:nth-child(3) .btn-add-webhook:hover[b-u1q1zsybe4]{
    background-color: var(--color-green);
    color: #ffffff;
}

#webhook-manager .event-section:nth-child(4) .section-icon[b-u1q1zsybe4],
#webhook-manager .event-section:nth-child(4) .btn-add-webhook[b-u1q1zsybe4] {
  color: var(--color-purple);
  border-color: var(--color-purple);
}
#webhook-manager .event-section:nth-child(4) .btn-add-webhook:hover[b-u1q1zsybe4]{
    background-color: var(--color-purple);
    color: #ffffff;
}

#webhook-manager .event-section:nth-child(5) .section-icon[b-u1q1zsybe4],
#webhook-manager .event-section:nth-child(5) .btn-add-webhook[b-u1q1zsybe4]
{
  color: var(--color-orange);
  border-color: var(--color-orange);
}

#webhook-manager .event-section:nth-child(5) .btn-add-webhook:hover[b-u1q1zsybe4]{
    background-color: var(--color-orange);
    color: #ffffff;
}

/* ===== ADD WEBHOOK BUTTON ===== */
#webhook-manager .btn-add-webhook[b-u1q1zsybe4] {
  display: inline-flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 0.5rem 1rem;
  background-color: #ffffff;
  color: var(--color-primary);
  border: 1px solid var(--color-primary);
  border-radius: var(--radius-md);
  font-size: var(--font-sm);
  font-weight: 500;
  cursor: pointer;
  transition: all var(--transition);
}

#webhook-manager .btn-add-webhook:hover[b-u1q1zsybe4] {
  background-color: var(--color-primary);
  color: #ffffff;
}

/* ===== WEBHOOK LIST ===== */
#webhook-manager .webhook-list[b-u1q1zsybe4] {
  display: flex;
  flex-direction: column;
}

#webhook-manager .webhook-item[b-u1q1zsybe4] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--space-lg);
  border-bottom: 1px solid var(--color-gray-200);
  transition: background-color var(--transition);
}

#webhook-manager .webhook-item:last-child[b-u1q1zsybe4] {
  border-bottom: none;
}

#webhook-manager .webhook-item:hover[b-u1q1zsybe4] {
  background-color: var(--color-gray-50);
}

#webhook-manager .webhook-info[b-u1q1zsybe4] {
  display: flex;
  align-items: center;
  gap: var(--space-xl);
  flex: 1;
}

#webhook-manager .webhook-name[b-u1q1zsybe4] {
  font-size: var(--font-sm);
  font-weight: 600;
  color: var(--color-gray-900);
  min-width: 180px;
  max-width: 180px;      /* Set your desired max width */
  white-space: nowrap;
}

#webhook-manager .webhook-trigger[b-u1q1zsybe4]{
  font-size: var(--font-sm);
  font-weight: 600;
  color: var(--color-gray-900);
  min-width: 120px;
  text-align: center;
}

#webhook-manager .webhook-arrow[b-u1q1zsybe4] {
  color: var(--color-gray-400);
  font-size: var(--font-base);
  flex-shrink: 0;
}

#webhook-manager .webhook-description[b-u1q1zsybe4] {
  font-size: var(--font-sm);
  color: var(--color-gray-700);
  min-width: 180px;
}

#webhook-manager .webhook-url[b-u1q1zsybe4] {
  font-size: var(--font-xs);
  color: var(--color-gray-500);
  font-family: 'Courier New', monospace;
  flex: 1;
  margin-top: var(--space-xs);
}

/* ===== WEBHOOK ACTIONS ===== */
#webhook-manager .webhook-actions[b-u1q1zsybe4] {
  display: flex;
  align-items: center;
  gap: var(--space-md);
}

#webhook-manager .status-badge[b-u1q1zsybe4] {
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  font-size: var(--font-xs);
  font-weight: 600;
  text-transform: capitalize;
}

#webhook-manager .status-badge.active[b-u1q1zsybe4] {
  background-color: #d1fae5;
  color: #065f46;
}

#webhook-manager .status-badge.inactive[b-u1q1zsybe4] {
  background-color: var(--color-gray-200);
  color: var(--color-gray-600);
}

#webhook-manager .btn-icon[b-u1q1zsybe4] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  background-color: transparent;
  border: none;
  border-radius: var(--radius-sm);
  color: var(--color-gray-500);
  cursor: pointer;
  transition: all var(--transition);
}

#webhook-manager .btn-icon:hover[b-u1q1zsybe4] {
  background-color: var(--color-gray-100);
  color: var(--color-gray-900);
}

#webhook-manager .form-hint[b-u1q1zsybe4] {
  display: block;
  font-size: var(--font-xs);
  color: var(--color-gray-500);
  margin-top: var(--space-xs);
}

/* ===== EMPTY STATE ===== */
#webhook-manager .empty-state[b-u1q1zsybe4] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-xl) var(--space-lg);
  text-align: center;
}

#webhook-manager .empty-icon[b-u1q1zsybe4] {
  font-size: 3rem;
  color: var(--color-gray-300);
  margin-bottom: var(--space-md);
}

#webhook-manager .empty-text[b-u1q1zsybe4] {
  font-size: var(--font-base);
  font-weight: 500;
  color: var(--color-gray-700);
  margin: 0 0 var(--space-xs) 0;
}

#webhook-manager .empty-subtext[b-u1q1zsybe4] {
  font-size: var(--font-sm);
  color: var(--color-gray-500);
  margin: 0;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
  #webhook-manager .webhook-info[b-u1q1zsybe4] {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-sm);
  }
  
  #webhook-manager .webhook-name[b-u1q1zsybe4],
  #webhook-manager .webhook-description[b-u1q1zsybe4] {
    min-width: auto;
  }
  
  #webhook-manager .section-header[b-u1q1zsybe4] {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-md);
  }
  
  #webhook-manager .btn-add-webhook[b-u1q1zsybe4] {
    width: 100%;
    justify-content: center;
  }
}
/* /Components/UI/Clerk/FilesComIntegration.razor.rz.scp.css */
.filescom-card[b-u2mfkhztys] {
    margin-bottom: 1.5rem;
}

.filescom-heading[b-u2mfkhztys] {
    margin: 0 0 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.filescom-description[b-u2mfkhztys] {
    color: #555;
    margin: 0 0 1.25rem;
    line-height: 1.6;
}

.filescom-last-import[b-u2mfkhztys] {
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: 7px;
    padding: 0.75rem 1rem;
    margin-bottom: 1.25rem;
}

.filescom-last-import-header[b-u2mfkhztys] {
    font-weight: 600;
    font-size: 0.9rem;
    color: #0369a1;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.filescom-last-import-stats[b-u2mfkhztys] {
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
}

.filescom-stat[b-u2mfkhztys] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.filescom-stat-label[b-u2mfkhztys] {
    font-size: 0.78rem;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filescom-stat-value[b-u2mfkhztys] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #334155;
}

.filescom-stat-success[b-u2mfkhztys] {
    color: #16a34a;
}

.filescom-stat-error[b-u2mfkhztys] {
    color: #dc2626;
}

.filescom-field[b-u2mfkhztys] {
    margin-bottom: 1rem;
}

.filescom-label[b-u2mfkhztys] {
    display: block;
    font-weight: 600;
    font-size: 0.9rem;
    margin-bottom: 0.3rem;
    color: #334155;
}

.filescom-input[b-u2mfkhztys] {
    width: 100%;
    max-width: 500px;
}

.filescom-input-row[b-u2mfkhztys] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-wrap: wrap;
}

.filescom-hint[b-u2mfkhztys] {
    display: block;
    margin-top: 0.25rem;
    color: #94a3b8;
    font-size: 0.82rem;
}

.filescom-browser[b-u2mfkhztys] {
    border: 1px solid #e2e8f0;
    border-radius: 7px;
    margin-bottom: 1.25rem;
    overflow: hidden;
}

.filescom-browser-header[b-u2mfkhztys] {
    background: #f8fafc;
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid #e2e8f0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.88rem;
    color: #475569;
}

.filescom-breadcrumb[b-u2mfkhztys] {
    font-family: monospace;
    font-size: 0.85rem;
    flex: 1;
}

.filescom-loading[b-u2mfkhztys] {
    color: #94a3b8;
    font-size: 0.82rem;
    font-style: italic;
}

.filescom-browser-list[b-u2mfkhztys] {
    max-height: 320px;
    overflow-y: auto;
}

.filescom-browser-item[b-u2mfkhztys] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.45rem 0.75rem;
    cursor: pointer;
    font-size: 0.9rem;
    border-bottom: 1px solid #f1f5f9;
    transition: background 0.12s;
}

.filescom-browser-item:hover[b-u2mfkhztys] {
    background: #f0f9ff;
}

.filescom-browser-item-selected[b-u2mfkhztys] {
    background: #dbeafe;
    border-left: 3px solid #3b82f6;
}

.filescom-icon-folder[b-u2mfkhztys] {
    color: #f59e0b;
}

.filescom-icon-file[b-u2mfkhztys] {
    color: #6b7280;
}

.filescom-item-name[b-u2mfkhztys] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.filescom-item-size[b-u2mfkhztys] {
    color: #94a3b8;
    font-size: 0.8rem;
    white-space: nowrap;
}

.filescom-item-date[b-u2mfkhztys] {
    color: #94a3b8;
    font-size: 0.8rem;
    white-space: nowrap;
}

.filescom-browser-empty[b-u2mfkhztys] {
    padding: 1.5rem;
    text-align: center;
    color: #94a3b8;
    font-size: 0.88rem;
}

.filescom-selected-file[b-u2mfkhztys] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 6px;
    font-size: 0.9rem;
    font-family: monospace;
    color: #166534;
    max-width: 600px;
}

.filescom-actions[b-u2mfkhztys] {
    display: flex;
    gap: 0.75rem;
    margin-top: 1.5rem;
    flex-wrap: wrap;
}
/* /Components/UI/Clerk/PaymentDialog.razor.rz.scp.css */
/* Brand tokens (from your Tailwind config) */
.modal-overlay[b-2is683rg7u] {
    --brand-green: var(--ebp-primary);
    --brand-green-light: #E8EDF3;
    --gray-50: #F9FAFB;
    --gray-100: #F3F4F6;
    --gray-200: #E5E7EB;
    --gray-300: #D1D5DB;
    --gray-400: #9CA3AF;
    --gray-500: #6B7280;
    --gray-600: #4B5563;
    --gray-700: #374151;
    --gray-900: #111827;
}

/* Overlay */
.modal-overlay[b-2is683rg7u] {
    position: fixed;
    inset: 0;
    background: rgba(17, 24, 39, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    z-index:11;
}

/* Dialog shell */
.payment-dialog[b-2is683rg7u] {
    width: 100%;
    max-width: 672px; /* ~max-w-2xl */
    max-height: 90vh;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 25px 50px -12px rgba(0,0,0,0.25);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transform: translateZ(0);
}

/* Header */
.dialog-header[b-2is683rg7u] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px;
    border-bottom: 1px solid var(--gray-200);
}

.dialog-title[b-2is683rg7u] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: var(--gray-900);
}

.icon-button[b-2is683rg7u] {
    appearance: none;
    border: 0;
    background: transparent;
    color: var(--gray-400);
    cursor: pointer;
    transition: color 150ms ease;
}

    .icon-button:hover[b-2is683rg7u] {
        color: var(--gray-600);
    }

/* Body */
.dialog-body[b-2is683rg7u] {
    padding: 32px;
    overflow-y: auto;
    flex: 1;
}

.payment-summary[b-2is683rg7u] {
    text-align: center;
    margin-bottom: 32px;
}

.summary-label[b-2is683rg7u] {
    margin: 0 0 12px 0;
    font-size: 12px;
    color: var(--gray-500);
}

.amount-row[b-2is683rg7u] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.currency[b-2is683rg7u] {
    font-size: 36px;
    font-weight: 700;
    color: var(--gray-900);
    line-height: 1;
}

.amount-input[b-2is683rg7u] {
    width: 160px;
    text-align: center;
    font-size: 36px;
    font-weight: 700;
    color: var(--gray-900);
    border: none;
    border-bottom: 2px solid var(--gray-300);
    outline: none;
    background: transparent;
    padding: 2px 0;
}

    .amount-display[b-2is683rg7u] {
    font-size: 36px;
    font-weight: 700;
    color: var(--gray-900);
}

.summary-hint[b-2is683rg7u] {
    margin: 8px 0 0 0;
    font-size: 12px;
    color: var(--gray-400);
}

/* Receipt styles for PaymentDialog */
.vab-receipt-section[b-2is683rg7u] {
    margin: 10px 0;
    text-align: left;
}

.vab-receipt-row[b-2is683rg7u] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    font-size: 14px;
}

.vab-label[b-2is683rg7u] {
    color: var(--gray-600);
}

.vab-value[b-2is683rg7u] {
    text-align: right;
    font-weight: 500;
    color: var(--gray-900);
}

.bold[b-2is683rg7u] {
    font-weight: 600;
}

.text-green[b-2is683rg7u] {
    color: var(--brand-green);
}

.border-top[b-2is683rg7u] {
    border-top: 1px solid var(--gray-200);
}

.pt-1[b-2is683rg7u] {
    padding-top: 8px;
}

.mt-1[b-2is683rg7u] {
    margin-top: 4px;
}

.mt-2[b-2is683rg7u] {
    margin-top: 8px;
}

/* Tabs */
.tabs-container[b-2is683rg7u] {
    margin-bottom: 24px;
}

.tabs-border[b-2is683rg7u] {
    border-bottom: 1px solid var(--gray-200);
}

.tabs[b-2is683rg7u] {
    display: flex;
    gap: 24px;
    margin-bottom: -1px; /* mimic -mb-px */
}

.tab-button[b-2is683rg7u] {
    appearance: none;
    border: 0;
    background: transparent;
    cursor: pointer;
    padding: 12px 4px;
    border-bottom: 2px solid transparent;
    font-size: 14px;
    font-weight: 500;
    white-space: nowrap;
    transition: color 150ms ease, border-color 150ms ease;
    display: inline-flex;
    align-items: center;
}

.tab-icon[b-2is683rg7u] {
    margin-right: 8px;
}

.tab-active[b-2is683rg7u] {
    color: var(--brand-green);
    border-bottom-color: var(--brand-green);
}

.tab-inactive[b-2is683rg7u] {
    color: var(--gray-500);
}

    .tab-inactive:hover[b-2is683rg7u] {
        color: var(--gray-700);
        border-bottom-color: var(--gray-300);
    }

/* Forms */
.tab-panels[b-2is683rg7u] {
}

.form-stack[b-2is683rg7u] {
    display: flex;
    flex-direction: column;
    gap: 16px; /* replaces space-y-4 */
}

.field[b-2is683rg7u] {
    display: block;
}

.label[b-2is683rg7u] {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: var(--gray-700);
    margin-bottom: 4px;
}

.input[b-2is683rg7u] {
    display: block;
    width: 100%;
    height: 44px; /* h-11 */
    border-radius: 8px;
    border: 1px solid var(--gray-300);
    padding: 0 12px;
    font-size: 14px;
    color: var(--gray-900);
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
    outline: none;
}

    .input:focus[b-2is683rg7u] {
        border-color: var(--brand-green);
        box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.25);
    }

.validation[b-2is683rg7u] {
    display: block;
    margin-top: 6px;
    font-size: 12px;
    color: #dc2626; /* red-600 */
}

/* Input with right icon */
.input-with-icon[b-2is683rg7u] {
    position: relative;
}

.input-with-right-icon[b-2is683rg7u] {
    padding-right: 40px;
}

.right-icon[b-2is683rg7u] {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--gray-400);
    pointer-events: none;
}

/* Two column row */
.two-col[b-2is683rg7u] {
    display: flex;
    gap: 16px;
}

    .two-col > *[b-2is683rg7u] {
        flex: 1 1 0;
    }

/* Primary button */
.primary-button[b-2is683rg7u] {
    width: 100%;
    margin-top: 16px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 8px;
    border: 1px solid transparent;
    background: var(--brand-green);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    box-shadow: 0 1px 2px rgba(0,0,0,0.1);
    cursor: pointer;
    transition: background-color 150ms ease, box-shadow 150ms ease;
}

    .primary-button:hover[b-2is683rg7u] {
        background: #16a34a; /* green-600-ish */
    }

    .primary-button:focus[b-2is683rg7u] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.25);
    }

/* Footer */
.dialog-footer[b-2is683rg7u] {
    background: var(--gray-50);
    padding: 16px 32px;
    border-top: 1px solid var(--gray-200);
}

.footer-center[b-2is683rg7u] {
    display: flex;
    justify-content: center;
}

.link-button[b-2is683rg7u] {
    appearance: none;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    color: var(--gray-600);
    transition: color 150ms ease;
    display: inline-flex;
    align-items: center;
}

    .link-button:hover[b-2is683rg7u] {
        color: var(--gray-900);
    }

.link-icon[b-2is683rg7u] {
    margin-right: 6px;
}

    .dialog-footer[b-2is683rg7u] {
        display:block;
    }

.payment-credit-card-description[b-2is683rg7u] {
    color: #555;
    margin-bottom: 1rem;
}
/* /Components/UI/Clerk/PetitionWorkflowStatus.razor.rz.scp.css */
/* /Components/UI/ConsolidationHistoryPanel.razor.rz.scp.css */
.cv-history-card[b-fnhmc1c9iy] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
}

.cv-history-header[b-fnhmc1c9iy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    border-bottom: 1px solid #e2e8f0;
    background: #f8fafc;
}

.cv-history-title[b-fnhmc1c9iy] {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 600;
    color: #0f172a;
    display: flex;
    align-items: center;
    gap: 8px;
}

.cv-history-title i[b-fnhmc1c9iy] {
    color: #475569;
}

.cv-history-count[b-fnhmc1c9iy] {
    background: #e2e8f0;
    color: #475569;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 9999px;
}

.cv-history-body[b-fnhmc1c9iy] {
    flex: 1;
    overflow-y: auto;
    padding: 12px;
    max-height: 480px;
}

.cv-history-loading[b-fnhmc1c9iy] {
    color: #64748b;
    font-size: 0.875rem;
    text-align: center;
    padding: 24px 0;
}

.cv-history-empty[b-fnhmc1c9iy] {
    color: #64748b;
    font-size: 0.875rem;
    text-align: center;
    padding: 16px 8px;
    line-height: 1.5;
    margin: 0;
}

.cv-history-list[b-fnhmc1c9iy] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.cv-history-entry[b-fnhmc1c9iy] {
    border: 1px solid #dbeafe;
    background: #fff;
    border-radius: 8px;
    padding: 10px 12px;
}

.cv-history-entry.is-undone[b-fnhmc1c9iy] {
    border-color: #e2e8f0;
    background: #f8fafc;
    opacity: 0.7;
}

.cv-history-entry-row[b-fnhmc1c9iy] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.cv-history-icon[b-fnhmc1c9iy] {
    color: #3b82f6;
    font-size: 0.875rem;
    margin-top: 3px;
    flex-shrink: 0;
}

.cv-history-entry.is-undone .cv-history-icon[b-fnhmc1c9iy] {
    color: #94a3b8;
}

.cv-history-entry-main[b-fnhmc1c9iy] {
    flex: 1;
    min-width: 0;
}

.cv-history-entry-line[b-fnhmc1c9iy] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    font-size: 0.8125rem;
    font-weight: 500;
    color: #0f172a;
}

.cv-history-source[b-fnhmc1c9iy],
.cv-history-target[b-fnhmc1c9iy] {
    overflow-wrap: anywhere;
}

.cv-history-arrow[b-fnhmc1c9iy] {
    color: #94a3b8;
    font-size: 0.7rem;
}

.cv-history-entry-meta[b-fnhmc1c9iy] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 4px;
    font-size: 0.7rem;
    color: #64748b;
    flex-wrap: wrap;
}

.cv-history-entry-meta i[b-fnhmc1c9iy] {
    font-size: 0.7rem;
}

.cv-history-dot[b-fnhmc1c9iy] {
    color: #cbd5e1;
}

.cv-history-mode[b-fnhmc1c9iy] {
    margin-left: auto;
    border: 1px solid #e2e8f0;
    border-radius: 9999px;
    padding: 1px 8px;
    font-size: 0.65rem;
    font-weight: 600;
    color: #475569;
    background: #f8fafc;
}

.cv-history-mode.mode-ai[b-fnhmc1c9iy] {
    border-color: #c4b5fd;
    color: #6d28d9;
    background: #f5f3ff;
}

.cv-history-mode.mode-quick[b-fnhmc1c9iy] {
    border-color: #a7f3d0;
    color: #047857;
    background: #ecfdf5;
}

.cv-history-mode.mode-advanced[b-fnhmc1c9iy] {
    border-color: #bfdbfe;
    color: #1d4ed8;
    background: #eff6ff;
}

.cv-history-undone-note[b-fnhmc1c9iy] {
    margin: 6px 0 0 0;
    color: #64748b;
    font-size: 0.7rem;
    display: flex;
    align-items: center;
    gap: 4px;
}

.cv-history-undo-btn[b-fnhmc1c9iy] {
    border: 1px solid #93c5fd;
    background: #fff;
    color: #1d4ed8;
    border-radius: 6px;
    padding: 4px 10px;
    font-size: 0.75rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
    flex-shrink: 0;
}

.cv-history-undo-btn:hover:not(:disabled)[b-fnhmc1c9iy] {
    background: #eff6ff;
    border-color: #60a5fa;
}

.cv-history-undo-btn:disabled[b-fnhmc1c9iy] {
    opacity: 0.6;
    cursor: not-allowed;
}
/* /Components/UI/PetitionCommunicationsPanel.razor.rz.scp.css */
.communications-panel[b-qrxsdi9ltg] {
    margin-top: 0;
}

.comm-content[b-qrxsdi9ltg] {
    padding: 0 !important;
    flex-direction: column;
}

.comm-loading[b-qrxsdi9ltg] {
    text-align: center;
    padding: 2rem;
    color: #6b7280;
}

/* Tabs */
.comm-tabs[b-qrxsdi9ltg] {
    display: flex;
    border-bottom: 1px solid #e5e7eb;
    padding: 0 1rem;
}

.comm-tab[b-qrxsdi9ltg] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.65rem 1rem;
    border: none;
    background: none;
    cursor: pointer;
    font-size: 0.875rem;
    font-weight: 500;
    color: #6b7280;
    border-bottom: 2px solid transparent;
    transition: all 0.2s;
}

.comm-tab:hover[b-qrxsdi9ltg] {
    color: #374151;
}

.comm-tab.active[b-qrxsdi9ltg] {
    color: #4f46e5;
    border-bottom-color: #4f46e5;
}

.comm-tab-count[b-qrxsdi9ltg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    background: #e5e7eb;
    font-size: 0.7rem;
    font-weight: 600;
    color: #374151;
}

.comm-tab.active .comm-tab-count[b-qrxsdi9ltg] {
    background: #eef2ff;
    color: #4f46e5;
}

/* Empty state */
.comm-empty[b-qrxsdi9ltg] {
    text-align: center;
    padding: 2rem 1rem;
    color: #9ca3af;
}

.comm-empty i[b-qrxsdi9ltg] {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
    display: block;
    color: #d1d5db;
}

.comm-empty p[b-qrxsdi9ltg] {
    margin: 0;
    font-size: 0.875rem;
}

/* Email list */
.comm-email-list[b-qrxsdi9ltg] {
    display: flex;
    flex-direction: column;
}

.comm-email-item[b-qrxsdi9ltg] {
    border-bottom: 1px solid #f3f4f6;
}

.comm-email-item:last-child[b-qrxsdi9ltg] {
    border-bottom: none;
}

.comm-email-header[b-qrxsdi9ltg] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 1rem;
    cursor: pointer;
    transition: background 0.15s;
}

.comm-email-header:hover[b-qrxsdi9ltg] {
    background: #f9fafb;
}

.comm-email-icon[b-qrxsdi9ltg] {
    width: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.comm-email-item.sent .comm-email-icon[b-qrxsdi9ltg] { color: #059669; }
.comm-email-item.failed .comm-email-icon[b-qrxsdi9ltg] { color: #dc2626; }
.comm-email-item.pending .comm-email-icon[b-qrxsdi9ltg] { color: #d97706; }

.comm-email-info[b-qrxsdi9ltg] {
    flex: 1;
    min-width: 0;
}

.comm-email-subject[b-qrxsdi9ltg] {
    font-weight: 600;
    font-size: 0.875rem;
    color: #111827;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.comm-email-meta[b-qrxsdi9ltg] {
    font-size: 0.75rem;
    color: #6b7280;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.15rem;
}

.comm-email-template[b-qrxsdi9ltg] {
    font-weight: 500;
    color: #4f46e5;
}

.comm-email-sep[b-qrxsdi9ltg] {
    margin: 0 0.15rem;
    color: #d1d5db;
}

.comm-error-hint[b-qrxsdi9ltg] {
    color: #dc2626;
    font-weight: 500;
    cursor: help;
}

.comm-email-status[b-qrxsdi9ltg] {
    flex-shrink: 0;
}

.comm-status-badge[b-qrxsdi9ltg] {
    display: inline-block;
    padding: 0.1rem 0.5rem;
    border-radius: 12px;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.comm-status-badge.sent[b-qrxsdi9ltg] { background: #d1fae5; color: #065f46; }
.comm-status-badge.failed[b-qrxsdi9ltg] { background: #fef2f2; color: #991b1b; }
.comm-status-badge.pending[b-qrxsdi9ltg] { background: #fef3c7; color: #92400e; }

.comm-email-expand[b-qrxsdi9ltg] {
    width: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #9ca3af;
    font-size: 0.75rem;
    flex-shrink: 0;
}

/* Email body expanded */
.comm-email-body[b-qrxsdi9ltg] {
    padding: 0 1rem 0.75rem 3.1rem;
}

.comm-email-body-content[b-qrxsdi9ltg] {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    padding: 0.75rem 1rem;
    font-size: 0.85rem;
    line-height: 1.5;
    color: #374151;
    max-height: 300px;
    overflow-y: auto;
}

.comm-email-body-empty[b-qrxsdi9ltg] {
    font-size: 0.82rem;
    color: #9ca3af;
    padding: 0.5rem 0;
}

/* Attachments */
.comm-attachments[b-qrxsdi9ltg] {
    margin-top: 0.5rem;
    padding-top: 0.5rem;
    border-top: 1px solid #e5e7eb;
}

.comm-attachments-label[b-qrxsdi9ltg] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 0.35rem;
}

.comm-attachment-item[b-qrxsdi9ltg] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.25rem 0;
    font-size: 0.82rem;
    color: #374151;
}

.comm-attachment-name[b-qrxsdi9ltg] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.comm-download-btn[b-qrxsdi9ltg] {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    cursor: pointer;
    color: #6b7280;
    font-size: 0.7rem;
    transition: all 0.2s;
    flex-shrink: 0;
}

.comm-download-btn:hover[b-qrxsdi9ltg] {
    background: #4f46e5;
    color: #fff;
    border-color: #4f46e5;
}

/* Generated Forms */
.comm-forms-list[b-qrxsdi9ltg] {
    display: flex;
    flex-direction: column;
}

.comm-form-item[b-qrxsdi9ltg] {
    display: flex;
    align-items: center;
    padding: 0.5rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    transition: background 0.15s;
}

.comm-form-item:last-child[b-qrxsdi9ltg] {
    border-bottom: none;
}

.comm-form-item:hover[b-qrxsdi9ltg] {
    background: #f9fafb;
}

.comm-form-icon[b-qrxsdi9ltg] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 0.5rem;
    font-size: 0.95rem;
    color: #0ea5e9;
    flex-shrink: 0;
}

.comm-form-info[b-qrxsdi9ltg] {
    flex: 1;
    min-width: 0;
}

.comm-form-name[b-qrxsdi9ltg] {
    font-weight: 600;
    font-size: 0.875rem;
    color: #111827;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.comm-form-meta[b-qrxsdi9ltg] {
    font-size: 0.75rem;
    color: #6b7280;
}

.comm-form-actions[b-qrxsdi9ltg] {
    display: flex;
    gap: 0.25rem;
    flex-shrink: 0;
}

.comm-icon-btn[b-qrxsdi9ltg] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #bae6fd;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
    color: #6b7280;
    font-size: 0.8rem;
}

.comm-icon-btn:hover[b-qrxsdi9ltg] {
    background: #0ea5e9;
    color: #fff;
    border-color: #0ea5e9;
}

/* Email action buttons */
.comm-email-actions[b-qrxsdi9ltg] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.6rem;
    padding-top: 0.5rem;
    border-top: 1px solid #e5e7eb;
}

.comm-action-btn[b-qrxsdi9ltg] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.7rem;
    border: 1px solid #d1d5db;
    border-radius: 5px;
    background: #fff;
    cursor: pointer;
    font-size: 0.78rem;
    font-weight: 500;
    color: #374151;
    transition: all 0.2s;
}

.comm-action-btn:hover[b-qrxsdi9ltg] {
    background: #f3f4f6;
    border-color: #9ca3af;
}

.comm-action-btn:disabled[b-qrxsdi9ltg] {
    opacity: 0.6;
    cursor: not-allowed;
}

.comm-action-resend[b-qrxsdi9ltg] {
    color: #4f46e5;
    border-color: #c7d2fe;
}

.comm-action-resend:hover:not(:disabled)[b-qrxsdi9ltg] {
    background: #eef2ff;
    border-color: #4f46e5;
}

/* Count badge in header */
.comm-count[b-qrxsdi9ltg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: 11px;
    background: #eef2ff;
    font-size: 0.75rem;
    font-weight: 600;
    color: #4f46e5;
    margin-left: 0.5rem;
}
/* /Components/UI/PetitionProgress.razor.rz.scp.css */
/* Contiguous Parcel Confirmation Dialog — matches PaymentDialog style */

.cp-confirm-overlay[b-kt5i1bqer6] {
    --brand-green: var(--ebp-primary);
    --gray-50: #F9FAFB;
    --gray-200: #E5E7EB;
    --gray-400: #9CA3AF;
    --gray-500: #6B7280;
    --gray-600: #4B5563;
    --gray-900: #111827;

    position: fixed;
    inset: 0;
    background: rgba(17, 24, 39, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    z-index: 1000;
}

.cp-confirm-dialog[b-kt5i1bqer6] {
    width: 100%;
    max-width: 520px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    overflow: hidden;
}

/* Header */
.cp-confirm-header[b-kt5i1bqer6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px;
    border-bottom: 1px solid var(--gray-200);
}

.cp-confirm-title[b-kt5i1bqer6] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: var(--gray-900);
}

.cp-confirm-close[b-kt5i1bqer6] {
    appearance: none;
    border: 0;
    background: transparent;
    color: var(--gray-400);
    cursor: pointer;
    transition: color 150ms ease;
}

.cp-confirm-close:hover[b-kt5i1bqer6] {
    color: var(--gray-600);
}

/* Body */
.cp-confirm-body[b-kt5i1bqer6] {
    padding: 32px;
}

.cp-confirm-icon-row[b-kt5i1bqer6] {
    text-align: center;
    margin-bottom: 20px;
}

.cp-confirm-icon-row i[b-kt5i1bqer6] {
    font-size: 40px;
    color: #f59e0b;
}

.cp-confirm-message[b-kt5i1bqer6] {
    margin: 0 0 8px 0;
    font-size: 15px;
    line-height: 1.6;
    color: var(--gray-600);
    text-align: center;
}

.cp-confirm-hint[b-kt5i1bqer6] {
    margin: 0 0 24px 0;
    font-size: 12px;
    color: var(--gray-400);
    text-align: center;
}

.cp-confirm-submit[b-kt5i1bqer6] {
    width: 100%;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 8px;
    border: 1px solid transparent;
    background: var(--brand-green);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transition: background-color 150ms ease;
}

.cp-confirm-submit:hover[b-kt5i1bqer6] {
    background: var(--ebp-secondary);
}

.cp-confirm-submit:disabled[b-kt5i1bqer6] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Footer */
.cp-confirm-footer[b-kt5i1bqer6] {
    background: var(--gray-50);
    padding: 16px 32px;
    border-top: 1px solid var(--gray-200);
    display: flex;
    justify-content: center;
}

.cp-confirm-cancel[b-kt5i1bqer6] {
    appearance: none;
    border: 0;
    background: transparent;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    color: var(--gray-600);
    transition: color 150ms ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.cp-confirm-cancel:hover[b-kt5i1bqer6] {
    color: var(--gray-900);
}
/* /Components/UI/PetitionWorkflowIllustration.razor.rz.scp.css */
.ppw-container[b-r44t7wuqov] {
    width: 100%;
    overflow-x: auto; /* if the viewport is too narrow, allow horizontal scroll instead of wrapping */
}

.ppw-steps-wrapper[b-r44t7wuqov] {
    position: relative;
}

/* Force all 8 steps into a single row */
.ppw-steps-grid[b-r44t7wuqov] {
    display: grid;
    grid-template-columns: repeat(8, minmax(92px, 1fr));
    gap: 12px;
    align-items: start;
    width: 100%;
    min-width: 880px;
}

/* Make sure a step can shrink without forcing a wrap */
.ppw-step[b-r44t7wuqov] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Normalize icon “bubble” sizing for ALL steps (fixes step 8/9 mismatch) */
.ppw-icon[b-r44t7wuqov] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    line-height: 1;
}

    .ppw-icon i[b-r44t7wuqov] {
        font-size: 18px;
        line-height: 1;
    }

/* Text sizing tuned so long labels (8) fit without expanding the row */
.ppw-step-label[b-r44t7wuqov] {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.1;
}

.ppw-step-title[b-r44t7wuqov] {
    font-size: 12px;
    font-weight: 600;
    line-height: 1.15;
}

.ppw-subtitle[b-r44t7wuqov] {
    font-size: 11px;
    font-weight: 500;
    opacity: 0.85;
}

/* Ensure the connecting line spans the full single-row layout */
.ppw-line[b-r44t7wuqov] {
    position: absolute;
    left: 0;
    right: 0;
    top: 22px; /* vertically centered relative to 44px icons */
    height: 4px;
    border-radius: 9999px;
}

/* Optional: on smaller screens tighten spacing a bit */
@media (max-width: 1200px) {
    .ppw-steps-grid[b-r44t7wuqov] {
        gap: 10px;
        grid-template-columns: repeat(8, minmax(88px, 1fr));
        min-width: 840px;
    }

    .ppw-icon[b-r44t7wuqov] {
        width: 40px;
        height: 40px;
        flex-basis: 40px;
    }

    .ppw-line[b-r44t7wuqov] {
        top: 20px;
    }

    .ppw-icon i[b-r44t7wuqov] {
        font-size: 17px;
    }
}

@media (max-width: 768px) {
    .ppw-steps-grid[b-r44t7wuqov] {
        grid-template-columns: repeat(4, 1fr);
        min-width: 0;
        gap: 8px;
    }

    .ppw-line[b-r44t7wuqov] {
        display: none;
    }

    .ppw-icon[b-r44t7wuqov] {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
        border-radius: 10px;
    }

    .ppw-icon i[b-r44t7wuqov] {
        font-size: 15px;
    }

    .ppw-step-label[b-r44t7wuqov] {
        font-size: 11px;
    }

    .ppw-step-title[b-r44t7wuqov] {
        font-size: 11px;
    }

    .ppw-subtitle[b-r44t7wuqov] {
        font-size: 10px;
    }
}

@media (max-width: 480px) {
    .ppw-steps-grid[b-r44t7wuqov] {
        grid-template-columns: repeat(2, 1fr);
        gap: 6px;
    }

    .ppw-icon[b-r44t7wuqov] {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
    }
}
/* /Components/UI/ReceiptBody.razor.rz.scp.css */
.vab-receipt-outer[b-oo8k99zf4y] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px;
    background-color: white;
}

.vab-receipt[b-oo8k99zf4y] {
    width: 100%;
    max-width: 500px;
    padding: 30px;
    border: 2px dashed #ccc;
    font-family: 'Courier New', Courier, monospace;
    color: #333;
    background-color: #fff;
}

.vab-receipt-header[b-oo8k99zf4y] {
    text-align: center;
}

.vab-receipt-header h1[b-oo8k99zf4y] {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 5px;
    letter-spacing: 1px;
}

.vab-receipt-header p[b-oo8k99zf4y] {
    font-size: 1rem;
    color: #666;
    margin: 0;
}

.vab-receipt-divider[b-oo8k99zf4y] {
    border-top: 1px dashed #eee;
    margin: 15px 0;
}

.vab-receipt-section[b-oo8k99zf4y] {
    margin: 10px 0;
}

.vab-receipt-row[b-oo8k99zf4y] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    line-height: 1.4;
}

.vab-receipt-row-stacked[b-oo8k99zf4y] {
    flex-direction: column;
    align-items: flex-start;
}

.vab-receipt-row-indent[b-oo8k99zf4y] {
    padding-left: 1rem;
}

.vab-receipt-row-discount[b-oo8k99zf4y] {
    color: var(--ebp-success);
}

.vab-receipt-row-total .vab-label[b-oo8k99zf4y],
.vab-receipt-row-total .vab-value[b-oo8k99zf4y] {
    font-size: 1.1rem;
}

.vab-label[b-oo8k99zf4y] {
    color: #555;
}

.vab-value[b-oo8k99zf4y] {
    text-align: right;
}

.vab-value-wrap[b-oo8k99zf4y] {
    word-break: break-all;
    text-align: right;
}

.bold[b-oo8k99zf4y] {
    font-weight: bold;
}

.text-green[b-oo8k99zf4y] {
    color: var(--ebp-success);
}

.mt-1[b-oo8k99zf4y] {
    margin-top: 0.5rem;
}

.mt-2[b-oo8k99zf4y] {
    margin-top: 1rem;
}

.mt-3[b-oo8k99zf4y] {
    margin-top: 1.5rem;
}

.mb-0[b-oo8k99zf4y] {
    margin-bottom: 0;
}

.mb-2[b-oo8k99zf4y] {
    margin-bottom: 1rem;
}

.border-top[b-oo8k99zf4y] {
    border-top: 1px solid #eee;
}

.pt-1[b-oo8k99zf4y] {
    padding-top: 0.5rem;
}

.vab-receipt-footer-subtitle[b-oo8k99zf4y] {
    font-size: 0.9rem;
}

.vab-receipt-footer-contact[b-oo8k99zf4y] {
    font-size: 0.8rem;
    line-height: 1.4;
}
/* /Components/UI/SignatureConfiguration.razor.rz.scp.css */
.signature-settings-page[b-9fb7crlvb1] {
    display: flex;
    justify-content: center;
    padding: 2rem 1rem;
}

.signature-card[b-9fb7crlvb1] {
    width: 100%;
    max-width: 720px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    overflow: hidden;
}

.signature-card-header[b-9fb7crlvb1] {
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid #e5e7eb;
}

    .signature-card-header h2[b-9fb7crlvb1] {
        margin: 0 0 0.25rem;
        font-size: 1.15rem;
        font-weight: 600;
        color: #1f2937;
    }

    .signature-card-header p[b-9fb7crlvb1] {
        margin: 0;
        font-size: 0.9rem;
        color: #4b5563; /* 7.1:1 against white — exceeds AA */
    }

.signature-card-body[b-9fb7crlvb1] {
    padding: 1.5rem;
}

.signature-loading[b-9fb7crlvb1] {
    text-align: center;
    padding: 2rem;
    color: #4b5563;
}

.signature-preview-section[b-9fb7crlvb1] {
    margin-bottom: 1.5rem;
}

.sig-label[b-9fb7crlvb1] {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    color: #1f2937;
    margin-bottom: 0.4rem;
}

.sig-section-heading[b-9fb7crlvb1] {
    margin: 0 0 0.75rem;
    font-size: 1rem;
    font-weight: 600;
    color: #1f2937;
}

.signature-preview-box[b-9fb7crlvb1] {
    background: #f9fafb;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    padding: 1rem;
    text-align: center;
}

.signature-preview-img[b-9fb7crlvb1] {
    max-width: 100%;
    max-height: 120px;
}

/* Tabs */
.sig-tabs[b-9fb7crlvb1] {
    display: flex;
    gap: 0.25rem;
    border-bottom: 1px solid #e5e7eb;
    margin-bottom: 1rem;
}

.sig-tab[b-9fb7crlvb1] {
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    padding: 0.55rem 1rem;
    font-size: 0.9rem;
    color: #4b5563;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-weight: 500;
}

    .sig-tab:hover[b-9fb7crlvb1] {
        color: #1f2937;
        background: #f3f4f6;
    }

    .sig-tab.active[b-9fb7crlvb1] {
        color: #1d4ed8;
        border-bottom-color: #1d4ed8;
        font-weight: 600;
    }

    /* Visible focus ring — meets WCAG 2.1 SC 2.4.7 Focus Visible */
    .sig-tab:focus-visible[b-9fb7crlvb1] {
        outline: 2px solid #1d4ed8;
        outline-offset: 2px;
        border-radius: 4px;
    }

.sig-help[b-9fb7crlvb1] {
    margin: 0 0 0.75rem;
    color: #4b5563; /* 7.1:1 contrast */
    font-size: 0.875rem;
    line-height: 1.5;
}

.sig-inline-link[b-9fb7crlvb1] {
    background: none;
    border: 0;
    padding: 0;
    color: #1d4ed8;
    text-decoration: underline;
    cursor: pointer;
    font: inherit;
}

    .sig-inline-link:focus-visible[b-9fb7crlvb1] {
        outline: 2px solid #1d4ed8;
        outline-offset: 2px;
    }

.sig-text-input[b-9fb7crlvb1] {
    display: block;
    width: 100%;
    height: 2.5rem;
    padding: 0 0.75rem;
    font-size: 1rem;
    border: 1px solid #6b7280; /* 4.5:1 against white — meets non-text contrast SC 1.4.11 */
    border-radius: 6px;
    margin-bottom: 0.5rem;
    background: #fff;
    color: #111827;
}

    .sig-text-input:focus[b-9fb7crlvb1] {
        outline: 2px solid #1d4ed8;
        outline-offset: 1px;
        border-color: #1d4ed8;
    }

/* Canvas wrapper used by both Draw and Type modes */
.signature-canvas-wrapper[b-9fb7crlvb1] {
    border: 2px dashed #6b7280; /* meets 3:1 non-text contrast */
    border-radius: 8px;
    background: #fff;
    margin-bottom: 0.75rem;
    display: flex;
    justify-content: center;
    overflow: hidden;
}

    .signature-canvas-wrapper canvas[b-9fb7crlvb1] {
        display: block;
        width: 100%;
        height: 180px;
        cursor: crosshair;
        touch-action: none;
    }

        /* Focusable canvas — make the focus state visible */
        .signature-canvas-wrapper canvas:focus-visible[b-9fb7crlvb1] {
            outline: 3px solid #1d4ed8;
            outline-offset: 2px;
        }

        /* In Type mode the canvas is purely a preview, so kill the drawing cursor and
           the focusable affordance so AT users aren't told they can interact with it. */
        .signature-canvas-wrapper canvas.sig-canvas-preview[b-9fb7crlvb1] {
            cursor: default;
            background: #f9fafb;
        }

.signature-actions[b-9fb7crlvb1] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-top: 0.5rem;
}

.sig-status[b-9fb7crlvb1] {
    margin-top: 1rem;
    padding: 0.55rem 0.75rem;
    border-radius: 6px;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    gap: 0.45rem;
    border-left: 4px solid transparent;
    min-height: 2.25rem;
}

    .sig-status.ok[b-9fb7crlvb1] {
        background: #ecfdf5;
        color: #065f46;
        border-left-color: #047857;
    }

    .sig-status.error[b-9fb7crlvb1] {
        background: #fef2f2;
        color: #991b1b;
        border-left-color: #b91c1c;
    }

.btn-danger-outline[b-9fb7crlvb1] {
    background: transparent;
    border: 1px solid #b91c1c;
    color: #b91c1c;
    border-radius: 6px;
    cursor: pointer;
    padding: 0.25rem 0.75rem;
    font-size: 0.85rem;
}

    .btn-danger-outline:hover:not(:disabled)[b-9fb7crlvb1] {
        background: #fef2f2;
    }

    .btn-danger-outline:focus-visible[b-9fb7crlvb1] {
        outline: 2px solid #b91c1c;
        outline-offset: 2px;
    }
/* /Components/UI/WorkflowStepsOverview.razor.rz.scp.css */
.wso-container[b-3sj227lr3u] {
    width: 100%;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    margin-bottom: 1rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

.wso-toggle[b-3sj227lr3u] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: #fff;
    border: none;
    cursor: pointer;
    text-align: left;
    color: #334155;
    font: inherit;
}

    .wso-toggle:hover[b-3sj227lr3u] {
        background: #f8fafc;
    }

.wso-toggle-left[b-3sj227lr3u] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

    .wso-toggle-left > i[b-3sj227lr3u] {
        color: #64748b;
        font-size: 14px;
    }

.wso-title[b-3sj227lr3u] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #334155;
}

.wso-subtitle[b-3sj227lr3u] {
    font-size: 0.8rem;
    color: #64748b;
    margin-left: 0.25rem;
}

.wso-chevron[b-3sj227lr3u] {
    color: #94a3b8;
    font-size: 12px;
}

/* Collapse animation */
.wso-body[b-3sj227lr3u] {
    max-height: 800px;
    overflow: hidden;
    transition: all 0.3s ease;
    border-top: 1px solid #f1f5f9;
}

.wso-collapsed .wso-body[b-3sj227lr3u] {
    max-height: 0;
    border-top-color: transparent;
}

.wso-workflow-scroll[b-3sj227lr3u] {
    width: 100%;
    overflow-x: auto;
    padding: 1.5rem 1rem 1rem;
}

.wso-workflow[b-3sj227lr3u] {
    position: relative;
}

.wso-mode-clerk[b-3sj227lr3u] {
    min-width: 1100px;
}

.wso-mode-petitioner[b-3sj227lr3u] {
    min-width: 720px;
}

/* Connecting line behind step circles */
.wso-track[b-3sj227lr3u] {
    position: absolute;
    left: 24px;
    right: 24px;
    top: 21px; /* (42px circle / 2) - line is centered through circles */
    height: 2px;
    background: #e2e8f0;
    border-radius: 9999px;
    z-index: 0;
}

.wso-steps[b-3sj227lr3u] {
    display: grid;
    gap: 12px;
    align-items: flex-start;
    position: relative;
    z-index: 1;
}

.wso-mode-clerk .wso-steps[b-3sj227lr3u] {
    grid-template-columns: repeat(9, 1fr);
}

.wso-mode-petitioner .wso-steps[b-3sj227lr3u] {
    grid-template-columns: repeat(6, 1fr);
}

/* Simple step (round circle, label, title) */
.wso-step[b-3sj227lr3u] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-width: 0;
}

.wso-step-circle[b-3sj227lr3u] {
    width: 42px;
    height: 42px;
    border-radius: 9999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--ebp-primary, #1e3a8a);
    color: #fff;
    border: 4px solid #ffffff;
    box-shadow: 0 6px 14px rgba(16, 24, 40, 0.10);
    flex: 0 0 auto;
}

    .wso-step-circle i[b-3sj227lr3u] {
        font-size: 16px;
        line-height: 1;
    }

.wso-step-text[b-3sj227lr3u] {
    margin-top: 8px;
}

.wso-step-label[b-3sj227lr3u] {
    font-size: 12px;
    font-weight: 800;
    color: var(--ebp-primary, #1e3a8a);
    margin: 0 0 2px;
    text-transform: none;
}

.wso-step-title[b-3sj227lr3u] {
    font-size: 12px;
    font-weight: 700;
    color: #111827;
    margin: 0;
    line-height: 1.25;
}

/* Step 3 review card (Clerk mode only) — extends a regular step with sub-items below */
.wso-step-card[b-3sj227lr3u] {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 0.5rem 0.5rem 0.75rem;
    margin-top: -0.25rem; /* nudge so circle stays aligned with the connector line */
}

.wso-review-subitems[b-3sj227lr3u] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 8px;
    width: 100%;
}

.wso-subitem[b-3sj227lr3u] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 8px;
    background: #fff;
    border: 1px solid #f1f5f9;
}

.wso-subitem-dot[b-3sj227lr3u] {
    width: 22px;
    height: 22px;
    border-radius: 9999px;
    background: var(--ebp-primary, #1e3a8a);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    font-size: 10px;
}

.wso-subitem-title[b-3sj227lr3u] {
    font-size: 11px;
    font-weight: 700;
    color: #334155;
    margin: 0;
}

@media (max-width: 768px) {
    .wso-mode-clerk[b-3sj227lr3u],
    .wso-mode-petitioner[b-3sj227lr3u] {
        min-width: 0;
    }

    .wso-mode-clerk .wso-steps[b-3sj227lr3u] {
        grid-template-columns: repeat(3, 1fr);
    }

    .wso-mode-petitioner .wso-steps[b-3sj227lr3u] {
        grid-template-columns: repeat(3, 1fr);
    }

    .wso-track[b-3sj227lr3u] {
        display: none;
    }
}

@media (max-width: 480px) {
    .wso-mode-clerk .wso-steps[b-3sj227lr3u],
    .wso-mode-petitioner .wso-steps[b-3sj227lr3u] {
        grid-template-columns: repeat(2, 1fr);
    }
}
