/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-vr6ygllc33] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-vr6ygllc33] {
    flex: 1;
}

.sidebar[b-vr6ygllc33] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-vr6ygllc33] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-vr6ygllc33]  a, .top-row[b-vr6ygllc33]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-vr6ygllc33]  a:hover, .top-row[b-vr6ygllc33]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-vr6ygllc33]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-vr6ygllc33] {
        justify-content: space-between;
    }

    .top-row[b-vr6ygllc33]  a, .top-row[b-vr6ygllc33]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-vr6ygllc33] {
        flex-direction: row;
    }

    .sidebar[b-vr6ygllc33] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-vr6ygllc33] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-vr6ygllc33]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-vr6ygllc33], article[b-vr6ygllc33] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-vr6ygllc33] {
    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-vr6ygllc33] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-2faj67df03] {
    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-2faj67df03] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-2faj67df03] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-2faj67df03] {
    font-size: 1.1rem;
}

.bi[b-2faj67df03] {
    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-2faj67df03] {
    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-2faj67df03] {
    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-2faj67df03] {
    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");
}

.nav-item[b-2faj67df03] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-2faj67df03] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-2faj67df03] {
        padding-bottom: 1rem;
    }

    .nav-item[b-2faj67df03]  .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-2faj67df03]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-2faj67df03]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-2faj67df03] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-2faj67df03] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-2faj67df03] {
        display: none;
    }

    .nav-scrollable[b-2faj67df03] {
        /* 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/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-7fdg4goocz],
.components-reconnect-repeated-attempt-visible[b-7fdg4goocz],
.components-reconnect-failed-visible[b-7fdg4goocz],
.components-pause-visible[b-7fdg4goocz],
.components-resume-failed-visible[b-7fdg4goocz],
.components-rejoining-animation[b-7fdg4goocz] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-7fdg4goocz],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-7fdg4goocz],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-7fdg4goocz],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-7fdg4goocz],
#components-reconnect-modal.components-reconnect-retrying[b-7fdg4goocz],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-7fdg4goocz],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-7fdg4goocz],
#components-reconnect-modal.components-reconnect-failed[b-7fdg4goocz],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-7fdg4goocz] {
    display: block;
}


#components-reconnect-modal[b-7fdg4goocz] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-7fdg4goocz 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-7fdg4goocz 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-7fdg4goocz 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-7fdg4goocz]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-7fdg4goocz 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-7fdg4goocz {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-7fdg4goocz {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-7fdg4goocz {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-7fdg4goocz] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-7fdg4goocz] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-7fdg4goocz] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-7fdg4goocz] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-7fdg4goocz] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-7fdg4goocz] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-7fdg4goocz] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-7fdg4goocz 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-7fdg4goocz] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-7fdg4goocz {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Admin/AdminAccounts.razor.rz.scp.css */
.sub-wrapper[b-bgqulcnzje] {
    min-height: 100vh;
    background: #f5f6fa;
    display: flex;
    flex-direction: column;
}

/* TOP NAV */
.topnav[b-bgqulcnzje] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-bgqulcnzje] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
    margin: 0;
}

.topnav-left p[b-bgqulcnzje] {
    font-size: .82rem;
    color: #4f46e5;
    margin: 0;
}

.topnav-right[b-bgqulcnzje] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.avatar[b-bgqulcnzje] {
    width: 38px;
    height: 38px;
    background: #4f46e5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.1rem;
}

/* PAGE CONTENT */
.page-content[b-bgqulcnzje] {
    padding: 32px;
    flex: 1;
}

/* TABLE CARD */
.table-card[b-bgqulcnzje] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

/* SEARCH */
.search-box[b-bgqulcnzje] {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 8px 14px;
    width: 260px;
    background: white;
}

    .search-box input[b-bgqulcnzje] {
        border: none;
        outline: none;
        font-size: .9rem;
        width: 100%;
        color: #333;
    }

/* TABLE */
.sub-table[b-bgqulcnzje] {
    width: 100%;
    border-collapse: collapse;
}

    .sub-table thead tr[b-bgqulcnzje] {
        border-bottom: 2px solid #f3f4f6;
    }

    .sub-table th[b-bgqulcnzje] {
        text-align: left;
        padding: 10px 12px;
        font-size: .82rem;
        color: #888;
        font-weight: 600;
    }

    .sub-table td[b-bgqulcnzje] {
        padding: 14px 12px;
        border-bottom: 1px solid #f3f4f6;
        font-size: .9rem;
        color: #333;
    }

    .sub-table tbody tr:hover[b-bgqulcnzje] {
        background: #fafafa;
    }

/* STATUS BADGE */
.status-badge[b-bgqulcnzje] {
    background: #111827;
    color: white;
    padding: 5px 14px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

/* ACTION BUTTONS */
.action-btn[b-bgqulcnzje] {
    border: 1px solid #e5e7eb;
    background: white;
    border-radius: 8px;
    padding: 6px 10px;
    cursor: pointer;
    transition: .2s;
    font-size: .9rem;
}

.edit-btn:hover[b-bgqulcnzje] {
    background: #f0f0ff;
    border-color: #4f46e5;
    color: #4f46e5;
}

.delete-btn:hover[b-bgqulcnzje] {
    background: #fff0f0;
    border-color: #ef4444;
    color: #ef4444;
}

/* MODAL */
.modal-backdrop-custom[b-bgqulcnzje] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1040;
}

.modal-box[b-bgqulcnzje] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    padding: 2rem;
    width: 620px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;

    
}
/* MOBILE TABLE FIX */
.table-card[b-bgqulcnzje] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
    overflow-x: auto;
}

.sub-table[b-bgqulcnzje] {
    width: 100%;
    min-width: 800px;
    border-collapse: collapse;
}

@media (max-width: 768px) {
    .page-content[b-bgqulcnzje] {
        padding: 16px;
    }

    .search-box[b-bgqulcnzje] {
        width: 100%;
    }

    .sub-table th[b-bgqulcnzje],
    .sub-table td[b-bgqulcnzje] {
        white-space: nowrap;
        padding: 10px 8px;
        font-size: 0.8rem;
    }

    .modal-box[b-bgqulcnzje] {
        width: 95%;
        padding: 1rem;
    }
}


/* /Components/Pages/Admin/AdminBilling.razor.rz.scp.css */
.sub-wrapper[b-1qbive4qtu] {
    min-height: 100vh;
    background: #f5f6fa;
    display: flex;
    flex-direction: column;
}

.topnav[b-1qbive4qtu] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-1qbive4qtu] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
    margin: 0;
}

.topnav-left p[b-1qbive4qtu] {
    font-size: .82rem;
    color: #4f46e5;
    margin: 0;
}

.topnav-right[b-1qbive4qtu] {
    display: flex;
    align-items: center;
}

.page-content[b-1qbive4qtu] {
    padding: 32px;
    flex: 1;
}

.summary-cards[b-1qbive4qtu] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.summary-card[b-1qbive4qtu] {
    background: white;
    border-radius: 14px;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,.05);
    border-left: 4px solid #4f46e5;
}

    .summary-card.green[b-1qbive4qtu] {
        border-left-color: #22c55e;
    }

    .summary-card.orange[b-1qbive4qtu] {
        border-left-color: #f59e0b;
    }

    .summary-card.blue[b-1qbive4qtu] {
        border-left-color: #3b82f6;
    }
    .summary-card.red[b-1qbive4qtu] {
        border-left-color: #dc2626;
        color: #dc2626;
    }

.summary-label[b-1qbive4qtu] {
    font-size: .8rem;
    color: #888;
    margin-bottom: 4px;
}

.summary-value[b-1qbive4qtu] {
    font-size: 1.5rem;
    font-weight: 800;
    color: #111;
}

.table-card[b-1qbive4qtu] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.search-box[b-1qbive4qtu] {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 8px 14px;
    width: 260px;
    background: white;
}

    .search-box input[b-1qbive4qtu] {
        border: none;
        outline: none;
        font-size: .9rem;
        width: 100%;
    }

.sub-table[b-1qbive4qtu] {
    width: 100%;
    border-collapse: collapse;
}

    .sub-table thead tr[b-1qbive4qtu] {
        border-bottom: 2px solid #f3f4f6;
    }

    .sub-table th[b-1qbive4qtu] {
        text-align: left;
        padding: 10px 12px;
        font-size: .82rem;
        color: #888;
        font-weight: 600;
        white-space: nowrap;
    }

    .sub-table td[b-1qbive4qtu] {
        padding: 14px 12px;
        border-bottom: 1px solid #f3f4f6;
        font-size: .9rem;
        color: #333;
    }

    .sub-table tbody tr:hover[b-1qbive4qtu] {
        background: #fafafa;
    }

.status-badge[b-1qbive4qtu] {
    padding: 5px 14px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

.badge-paid[b-1qbive4qtu] {
    background: #d1fae5;
    color: #059669;
}

.badge-pending[b-1qbive4qtu] {
    background: #fef3c7;
    color: #d97706;
}

.badge-overdue[b-1qbive4qtu] {
    background: #fee2e2;
    color: #dc2626;
}

.action-btn[b-1qbive4qtu] {
    border: 1px solid #e5e7eb;
    background: white;
    border-radius: 8px;
    padding: 6px 10px;
    cursor: pointer;
    transition: .2s;
    font-size: .9rem;
}

.edit-btn:hover[b-1qbive4qtu] {
    background: #f0f0ff;
    border-color: #4f46e5;
    color: #4f46e5;
}

.delete-btn:hover[b-1qbive4qtu] {
    background: #fff0f0;
    border-color: #ef4444;
    color: #ef4444;
}

.modal-backdrop-custom[b-1qbive4qtu] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1040;
}

.modal-box[b-1qbive4qtu] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    padding: 2rem;
    width: 620px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;
}

@media (max-width: 800px) {
    .summary-cards[b-1qbive4qtu] {
        grid-template-columns: repeat(2, 1fr);
    }

    .page-content[b-1qbive4qtu] {
        padding: 70px 12px 12px 12px;
    }
}


/* ── Bill Cards ── */
.bills-section[b-1qbive4qtu] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.bills-grid[b-1qbive4qtu] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 18px;
}

.bill-card[b-1qbive4qtu] {
    background: #f9fafb;
    border: 1.5px solid #e5e7eb;
    border-radius: 14px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: relative;
    transition: box-shadow .2s, transform .2s;
}

.bill-card:hover[b-1qbive4qtu] {
    box-shadow: 0 6px 20px rgba(0,0,0,.08);
    transform: translateY(-3px);
}

.bill-card.bill-overdue[b-1qbive4qtu] {
    border-color: #fca5a5;
    background: #fff8f8;
}

.bill-card.bill-paid[b-1qbive4qtu] {
    border-color: #86efac;
    background: #f0fdf4;
}

.bill-badge[b-1qbive4qtu] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: .72rem;
    font-weight: 700;
    align-self: flex-start;
}

.bill-subscriber[b-1qbive4qtu] {
    font-size: 1rem;
    font-weight: 700;
    color: #111;
}

.bill-id[b-1qbive4qtu] {
    font-size: .8rem;
}

.bill-amount[b-1qbive4qtu] {
    font-size: 1.4rem;
    font-weight: 800;
    color: #111;
}

.bill-amount span[b-1qbive4qtu] {
    font-size: .8rem;
    font-weight: 400;
    color: #888;
}

.bill-meta[b-1qbive4qtu] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: .83rem;
    color: #555;
    flex: 1;
}

.bill-desc[b-1qbive4qtu] {
    color: #888;
    font-style: italic;
}

.bill-actions[b-1qbive4qtu] {
    display: flex;
    gap: 8px;
    margin-top: 4px;
}

.bill-action-btn[b-1qbive4qtu] {
    flex: 1;
    padding: 7px;
    border-radius: 8px;
    border: 1.5px solid #e5e7eb;
    background: white;
    font-size: .82rem;
    font-weight: 600;
    cursor: pointer;
    transition: .2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.bill-action-btn.edit-btn:hover[b-1qbive4qtu] {
    background: #f0f0ff;
    border-color: #4f46e5;
    color: #4f46e5;
}

.bill-action-btn.delete-btn:hover[b-1qbive4qtu] {
    background: #fff0f0;
    border-color: #ef4444;
    color: #ef4444;
}

.bills-empty[b-1qbive4qtu] {
    grid-column: 1 / -1;
    text-align: center;
    padding: 40px;
}
/* /Components/Pages/Admin/AdminDashboard.razor.rz.scp.css */
*[b-7nc2b8bbze] {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: 'Segoe UI', sans-serif;
}

.wrapper[b-7nc2b8bbze] {
    min-height: 100vh;
    background: #f5f6fa;
    overflow-x: hidden;
}

/* TOP NAV */
.topnav[b-7nc2b8bbze] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #e5e7eb;
    gap: 20px;
    flex-wrap: wrap;
}

.topnav-left h2[b-7nc2b8bbze] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
}

.topnav-left p[b-7nc2b8bbze] {
    font-size: .82rem;
    color: #4f46e5;
}

.topnav-right[b-7nc2b8bbze] {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Logout button (single definition only) */
.logout-btn[b-7nc2b8bbze] {
    background: #4f46e5;
    border: none;
    color: #fff;
    padding: 8px 16px;
    border-radius: 10px;
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 600;
    transition: .2s ease;
}

    .logout-btn:hover[b-7nc2b8bbze] {
        background: #4338ca;
        transform: translateY(-1px);
    }

.notif-dot[b-7nc2b8bbze] {
    position: absolute;
    top: 0;
    right: 0;
    width: 8px;
    height: 8px;
    background: red;
    border-radius: 50%;
}

.avatar[b-7nc2b8bbze] {
    width: 38px;
    height: 38px;
    background: #4f46e5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

/* CONTENT */
.content[b-7nc2b8bbze] {
    padding: 32px;
}

    .content h1[b-7nc2b8bbze] {
        font-size: 2rem;
        font-weight: 800;
        margin-bottom: 24px;
        color: #111;
    }

/* STAT CARDS */
.stat-cards[b-7nc2b8bbze] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 28px;
}

.stat-card[b-7nc2b8bbze] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    box-shadow: 0 2px 10px rgba(0,0,0,.05);
    min-width: 0;
}

    .stat-card .label[b-7nc2b8bbze] {
        font-size: .82rem;
        color: #888;
        margin-bottom: 6px;
    }

    .stat-card .value[b-7nc2b8bbze] {
        font-size: 2rem;
        font-weight: 800;
        color: #111;
        margin-bottom: 6px;
    }

    .stat-card .trend[b-7nc2b8bbze] {
        font-size: .8rem;
        color: #22c55e;
        font-weight: 600;
    }

.stat-icon[b-7nc2b8bbze] {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.icon-blue[b-7nc2b8bbze] {
    background: #eff6ff;
}

.icon-green[b-7nc2b8bbze] {
    background: #f0fdf4;
}

.icon-orange[b-7nc2b8bbze] {
    background: #fff7ed;
}

/* GRID */
.bottom-grid[b-7nc2b8bbze] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

/* CARD */
.card[b-7nc2b8bbze] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 10px rgba(0,0,0,.05);
}

/* table scroll wrapper */
.table-wrap[b-7nc2b8bbze] {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.card-title[b-7nc2b8bbze] {
    font-size: 1rem;
    font-weight: 700;
    color: #111;
    margin-bottom: 4px;
}

.card-sub[b-7nc2b8bbze] {
    font-size: .82rem;
    color: #aaa;
    margin-bottom: 16px;
}

/* TABLE */
table[b-7nc2b8bbze] {
    width: 100%;
    border-collapse: collapse;
    min-width: 700px;
}

thead tr[b-7nc2b8bbze] {
    background: #f9fafb;
}

th[b-7nc2b8bbze] {
    text-align: left;
    padding: 12px;
    font-size: .82rem;
    color: #444;
}

td[b-7nc2b8bbze] {
    padding: 14px 12px;
    border-bottom: 1px solid #f3f4f6;
    color: #333;
}

.badge[b-7nc2b8bbze] {
    background: #111827;
    color: white;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

/* NOTIFICATIONS */
.notif-item[b-7nc2b8bbze] {
    padding: 14px 0;
    border-bottom: 1px solid #f3f4f6;
}

    .notif-item:last-of-type[b-7nc2b8bbze] {
        border-bottom: none;
    }

    .notif-item p[b-7nc2b8bbze] {
        font-size: .9rem;
        color: #222;
        font-weight: 500;
        margin-bottom: 4px;
        line-height: 1.4;
    }

    .notif-item span[b-7nc2b8bbze] {
        font-size: .78rem;
        color: #aaa;
    }

.view-all-btn[b-7nc2b8bbze] {
    width: 100%;
    margin-top: 18px;
    padding: 11px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    font-weight: 600;
    cursor: pointer;
    transition: .2s;
}

    .view-all-btn:hover[b-7nc2b8bbze] {
        background: #f9fafb;
    }

/* RESPONSIVE */
@media (max-width: 1100px) {
    .stat-cards[b-7nc2b8bbze] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .topnav[b-7nc2b8bbze] {
        padding: 12px 16px;
        flex-direction: column;
        align-items: flex-start;
    }

    .topnav-right[b-7nc2b8bbze] {
        width: 100%;
        justify-content: flex-end;
    }

    .content[b-7nc2b8bbze] {
        padding: 16px;
    }

        .content h1[b-7nc2b8bbze] {
            font-size: 1.5rem;
        }

    .stat-cards[b-7nc2b8bbze] {
        grid-template-columns: 1fr;
    }

    .stat-card[b-7nc2b8bbze] {
        padding: 16px;
    }

        .stat-card .value[b-7nc2b8bbze] {
            font-size: 1.5rem;
        }

    table[b-7nc2b8bbze] {
        min-width: 600px;
    }
}
/* /Components/Pages/Admin/AdminFinancialReport.razor.rz.scp.css */
.sub-wrapper[b-t8nq65o8kx] {
    min-height: 100vh;
    background: #f5f6fa;
    display: flex;
    flex-direction: column;
}

.topnav[b-t8nq65o8kx] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-t8nq65o8kx] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
    margin: 0;
}

.topnav-left p[b-t8nq65o8kx] {
    font-size: .82rem;
    color: #4f46e5;
    margin: 0;
}

.page-content[b-t8nq65o8kx] {
    padding: 32px;
    flex: 1;
}

/* Summary Cards */
.summary-cards[b-t8nq65o8kx] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.summary-card[b-t8nq65o8kx] {
    background: white;
    border-radius: 14px;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,.05);
    border-left: 4px solid #4f46e5;
}

.summary-card.green[b-t8nq65o8kx]  { border-left-color: #22c55e; }
.summary-card.orange[b-t8nq65o8kx] { border-left-color: #f59e0b; }
.summary-card.red[b-t8nq65o8kx]    { border-left-color: #ef4444; }

.summary-label[b-t8nq65o8kx] {
    font-size: .8rem;
    color: #888;
    margin-bottom: 4px;
}

.summary-value[b-t8nq65o8kx] {
    font-size: 1.4rem;
    font-weight: 800;
    color: #111;
}

/* Table Card */
.table-card[b-t8nq65o8kx] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.sub-table[b-t8nq65o8kx] {
    width: 100%;
    border-collapse: collapse;
}

.sub-table thead tr[b-t8nq65o8kx] {
    border-bottom: 2px solid #f3f4f6;
}

.sub-table th[b-t8nq65o8kx] {
    text-align: left;
    padding: 10px 12px;
    font-size: .82rem;
    color: #888;
    font-weight: 600;
    white-space: nowrap;
}

.sub-table td[b-t8nq65o8kx] {
    padding: 14px 12px;
    border-bottom: 1px solid #f3f4f6;
    font-size: .9rem;
    color: #333;
}

.sub-table tbody tr:hover[b-t8nq65o8kx] {
    background: #fafafa;
}

/* Status Badges */
.status-badge[b-t8nq65o8kx] {
    padding: 5px 14px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

.badge-paid[b-t8nq65o8kx]    { background: #d1fae5; color: #059669; }
.badge-pending[b-t8nq65o8kx] { background: #fef3c7; color: #d97706; }
.badge-overdue[b-t8nq65o8kx] { background: #fee2e2; color: #dc2626; }

/* Search */
.search-box[b-t8nq65o8kx] {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 8px 14px;
    width: 240px;
    background: white;
}

.search-box input[b-t8nq65o8kx] {
    border: none;
    outline: none;
    font-size: .9rem;
    width: 100%;
}

@media (max-width: 800px) {
    .summary-cards[b-t8nq65o8kx] {
        grid-template-columns: repeat(2, 1fr);
    }

    .page-content[b-t8nq65o8kx] {
        padding: 70px 12px 12px 12px;
    }
}

@media print {
    .topnav-right[b-t8nq65o8kx],
    .search-box[b-t8nq65o8kx] {
        display: none !important;
    }
}
/* /Components/Pages/Admin/AdminInternetPlans.razor.rz.scp.css */
.sub-wrapper[b-dirh7h54px] {
    min-height: 100vh;
    background: #f5f6fa;
    display: flex;
    flex-direction: column;
}

.topnav[b-dirh7h54px] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-dirh7h54px] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
    margin: 0;
}

.topnav-left p[b-dirh7h54px] {
    font-size: .82rem;
    color: #4f46e5;
    margin: 0;
}

.topnav-right[b-dirh7h54px] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.page-content[b-dirh7h54px] {
    padding: 32px;
    flex: 1;
}

.table-card[b-dirh7h54px] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.sub-table[b-dirh7h54px] {
    width: 100%;
    border-collapse: collapse;
}

    .sub-table thead tr[b-dirh7h54px] {
        border-bottom: 2px solid #f3f4f6;
    }

    .sub-table th[b-dirh7h54px] {
        text-align: left;
        padding: 10px 12px;
        font-size: .82rem;
        color: #888;
        font-weight: 600;
    }

    .sub-table td[b-dirh7h54px] {
        padding: 14px 12px;
        border-bottom: 1px solid #f3f4f6;
        font-size: .9rem;
        color: #333;
    }

    .sub-table tbody tr:hover[b-dirh7h54px] {
        background: #fafafa;
    }

.status-badge[b-dirh7h54px] {
    padding: 5px 14px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

.badge-active[b-dirh7h54px] {
    background: #111827;
    color: white;
}

.badge-inactive[b-dirh7h54px] {
    background: #f3f4f6;
    color: #888;
}

.action-btn[b-dirh7h54px] {
    border: 1px solid #e5e7eb;
    background: white;
    border-radius: 8px;
    padding: 6px 10px;
    cursor: pointer;
    transition: .2s;
    font-size: .9rem;
}

.edit-btn:hover[b-dirh7h54px] {
    background: #f0f0ff;
    border-color: #4f46e5;
    color: #4f46e5;
}

.delete-btn:hover[b-dirh7h54px] {
    background: #fff0f0;
    border-color: #ef4444;
    color: #ef4444;
}

.modal-backdrop-custom[b-dirh7h54px] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1040;
}

.modal-box[b-dirh7h54px] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    padding: 2rem;
    width: 620px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;
}

/* /Components/Pages/Admin/AdminSubscriber.razor.rz.scp.css */
.sub-wrapper[b-dozc7la6k9] { min-height: 100vh; background: #f5f6fa; display: flex; flex-direction: column; }

.topnav[b-dozc7la6k9] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-dozc7la6k9] { font-size: 1.2rem; font-weight: 700; color: #111; margin: 0; }
.topnav-left p[b-dozc7la6k9] { font-size: .82rem; color: #4f46e5; margin: 0; }
.topnav-right[b-dozc7la6k9] { display: flex; align-items: center; gap: 16px; }

.avatar[b-dozc7la6k9] {
    width: 38px;
    height: 38px;
    background: #4f46e5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.1rem;
}

.page-content[b-dozc7la6k9] { padding: 32px; flex: 1; }

.table-card[b-dozc7la6k9] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.search-box[b-dozc7la6k9] {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 8px 14px;
    width: 260px;
    background: white;
}

.search-box input[b-dozc7la6k9] { border: none; outline: none; font-size: .9rem; width: 100%; color: #333; }

.sub-table[b-dozc7la6k9] { width: 100%; border-collapse: collapse; }
.sub-table thead tr[b-dozc7la6k9] { border-bottom: 2px solid #f3f4f6; }
.sub-table th[b-dozc7la6k9] { text-align: left; padding: 10px 12px; font-size: .82rem; color: #888; font-weight: 600; white-space: nowrap; }
.sub-table td[b-dozc7la6k9] { padding: 14px 12px; border-bottom: 1px solid #f3f4f6; font-size: .9rem; color: #333; }
.sub-table tbody tr:hover[b-dozc7la6k9] { background: #fafafa; }

.status-badge[b-dozc7la6k9] { padding: 5px 14px; border-radius: 20px; font-size: .75rem; font-weight: 600; }
.badge-active[b-dozc7la6k9] {
    background-color: #28a745;
    color: white;
}

.badge-inactive[b-dozc7la6k9] {
    background-color: #dc3545;
    color: white;
}
.badge-active[b-dozc7la6k9] {
    background-color: #28a745;
    color: white;
}
.badge-inactive[b-dozc7la6k9] { background: #f3f4f6; color: #888; }

.action-btn[b-dozc7la6k9] { border: 1px solid #e5e7eb; background: white; border-radius: 8px; padding: 6px 10px; cursor: pointer; transition: .2s; font-size: .9rem; }
.edit-btn:hover[b-dozc7la6k9] { background: #f0f0ff; border-color: #4f46e5; color: #4f46e5; }
.delete-btn:hover[b-dozc7la6k9] { background: #fff0f0; border-color: #ef4444; color: #ef4444; }

.modal-backdrop-custom[b-dozc7la6k9] { position: fixed; inset: 0; background: rgba(0,0,0,0.4); z-index: 1040; }

.modal-box[b-dozc7la6k9] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    padding: 2rem;
    width: 620px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;
}
/* /Components/Pages/Admin/AdminTechnicians.razor.rz.scp.css */
.sub-wrapper[b-xrxxtmg4im] { min-height: 100vh; background: #f5f6fa; display: flex; flex-direction: column; }

.topnav[b-xrxxtmg4im] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #2563eb;
}

.topnav-left h2[b-xrxxtmg4im] { font-size: 1.3rem; font-weight: 800; color: #111; margin: 0; }
.topnav-left p[b-xrxxtmg4im]  { font-size: .82rem; color: #2563eb; margin: 0; }
.topnav-right[b-xrxxtmg4im]   { display: flex; align-items: center; gap: 16px; }

.page-content[b-xrxxtmg4im] { padding: 32px; flex: 1; }

/* Stat Cards */
.tech-stats[b-xrxxtmg4im] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 24px;
}

.tech-stat-card[b-xrxxtmg4im] {
    background: white;
    border-radius: 14px;
    padding: 20px 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 2px 10px rgba(0,0,0,.05);
}

.tech-stat-icon[b-xrxxtmg4im] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    flex-shrink: 0;
}

.icon-blue[b-xrxxtmg4im]  { background: #eff6ff; color: #2563eb; }
.icon-green[b-xrxxtmg4im] { background: #f0fdf4; color: #16a34a; }
.icon-pin[b-xrxxtmg4im]   { background: #eff6ff; color: #2563eb; }

.tech-stat-label[b-xrxxtmg4im] { font-size: .8rem; color: #888; margin-bottom: 4px; }
.tech-stat-value[b-xrxxtmg4im] { font-size: 1.8rem; font-weight: 800; color: #111; line-height: 1; }

/* Table Card */
.table-card[b-xrxxtmg4im] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.search-box[b-xrxxtmg4im] {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 8px 14px;
    width: 260px;
    background: white;
}

.search-box input[b-xrxxtmg4im] { border: none; outline: none; font-size: .9rem; width: 100%; color: #333; }

.sub-table[b-xrxxtmg4im] { width: 100%; border-collapse: collapse; }
.sub-table thead tr[b-xrxxtmg4im] { border-bottom: 2px solid #f3f4f6; }
.sub-table th[b-xrxxtmg4im] { text-align: left; padding: 10px 12px; font-size: .82rem; color: #888; font-weight: 600; white-space: nowrap; }
.sub-table td[b-xrxxtmg4im] { padding: 14px 12px; border-bottom: 1px solid #f3f4f6; font-size: .9rem; color: #333; vertical-align: middle; }
.sub-table tbody tr:hover[b-xrxxtmg4im] { background: #fafafa; }

.tech-name[b-xrxxtmg4im] { font-weight: 600; color: #111; }

.action-btn[b-xrxxtmg4im] { border: 1px solid #e5e7eb; background: white; border-radius: 8px; padding: 6px 10px; cursor: pointer; transition: .2s; font-size: .9rem; }
.edit-btn:hover[b-xrxxtmg4im]   { background: #eff6ff; border-color: #2563eb; color: #2563eb; }
.delete-btn:hover[b-xrxxtmg4im] { background: #fff0f0; border-color: #ef4444; color: #ef4444; }

/* Modals */
.modal-backdrop-custom[b-xrxxtmg4im] { position: fixed; inset: 0; background: rgba(0,0,0,0.4); z-index: 1040; }

.modal-box[b-xrxxtmg4im] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    padding: 2rem;
    width: 620px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;
}

@media (max-width: 900px) {
    .tech-stats[b-xrxxtmg4im] { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
    .tech-stats[b-xrxxtmg4im] { grid-template-columns: 1fr; }
    .page-content[b-xrxxtmg4im] { padding: 16px; }
    .topnav[b-xrxxtmg4im] { padding: 12px 16px; flex-direction: column; align-items: flex-start; gap: 12px; }
}
/* /Components/Pages/Admin/AdminUpgradeRequests.razor.rz.scp.css */

.sub-wrapper[b-eseca6q4q2] {
    min-height: 100vh;
    background: #f5f6fa;
    display: flex;
    flex-direction: column;
}

.topnav[b-eseca6q4q2] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-eseca6q4q2] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
    margin: 0;
}

.topnav-left p[b-eseca6q4q2] {
    font-size: .82rem;
    color: #4f46e5;
    margin: 0;
}

.page-content[b-eseca6q4q2] {
    padding: 32px;
    flex: 1;
}

.table-card[b-eseca6q4q2] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.sub-table[b-eseca6q4q2] {
    width: 100%;
    border-collapse: collapse;
}

    .sub-table thead tr[b-eseca6q4q2] {
        border-bottom: 2px solid #f3f4f6;
    }

    .sub-table th[b-eseca6q4q2] {
        text-align: left;
        padding: 10px 12px;
        font-size: .82rem;
        color: #888;
        font-weight: 600;
        white-space: nowrap;
    }

    .sub-table td[b-eseca6q4q2] {
        padding: 14px 12px;
        border-bottom: 1px solid #f3f4f6;
        font-size: .9rem;
        color: #333;
        vertical-align: middle;
    }

    .sub-table tbody tr:hover[b-eseca6q4q2] {
        background: #fafafa;
    }

.status-badge[b-eseca6q4q2] {
    padding: 5px 14px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

.badge-pending[b-eseca6q4q2] {
    background: #fef3c7;
    color: #d97706;
}

.badge-approved[b-eseca6q4q2] {
    background: #d1fae5;
    color: #059669;
}

.badge-rejected[b-eseca6q4q2] {
    background: #fee2e2;
    color: #dc2626;
}

/* /Components/Pages/Staff/StaffBilling.razor.rz.scp.css */
.sub-wrapper[b-zoan1c8gyx] {
    min-height: 100vh;
    background: #f5f6fa;
    display: flex;
    flex-direction: column;
}

.topnav[b-zoan1c8gyx] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-zoan1c8gyx] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
    margin: 0;
}

.topnav-left p[b-zoan1c8gyx] {
    font-size: .82rem;
    color: #4f46e5;
    margin: 0;
}

.topnav-right[b-zoan1c8gyx] {
    display: flex;
    align-items: center;
}

.page-content[b-zoan1c8gyx] {
    padding: 32px;
    flex: 1;
}

.summary-cards[b-zoan1c8gyx] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.summary-card[b-zoan1c8gyx] {
    background: white;
    border-radius: 14px;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,.05);
    border-left: 4px solid #4f46e5;
}

    .summary-card.green[b-zoan1c8gyx] {
        border-left-color: #22c55e;
    }

    .summary-card.orange[b-zoan1c8gyx] {
        border-left-color: #f59e0b;
    }

    .summary-card.blue[b-zoan1c8gyx] {
        border-left-color: #3b82f6;
    }

    .summary-card.red[b-zoan1c8gyx] {
        border-left-color: #dc2626;
        color: #dc2626;
    }

.summary-label[b-zoan1c8gyx] {
    font-size: .8rem;
    color: #888;
    margin-bottom: 4px;
}

.summary-value[b-zoan1c8gyx] {
    font-size: 1.5rem;
    font-weight: 800;
    color: #111;
}

.table-card[b-zoan1c8gyx] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.search-box[b-zoan1c8gyx] {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 8px 14px;
    width: 260px;
    background: white;
}

    .search-box input[b-zoan1c8gyx] {
        border: none;
        outline: none;
        font-size: .9rem;
        width: 100%;
    }

.sub-table[b-zoan1c8gyx] {
    width: 100%;
    border-collapse: collapse;
}

    .sub-table thead tr[b-zoan1c8gyx] {
        border-bottom: 2px solid #f3f4f6;
    }

    .sub-table th[b-zoan1c8gyx] {
        text-align: left;
        padding: 10px 12px;
        font-size: .82rem;
        color: #888;
        font-weight: 600;
        white-space: nowrap;
    }

    .sub-table td[b-zoan1c8gyx] {
        padding: 14px 12px;
        border-bottom: 1px solid #f3f4f6;
        font-size: .9rem;
        color: #333;
    }

    .sub-table tbody tr:hover[b-zoan1c8gyx] {
        background: #fafafa;
    }

.status-badge[b-zoan1c8gyx] {
    padding: 5px 14px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

.badge-paid[b-zoan1c8gyx] {
    background: #d1fae5;
    color: #059669;
}

.badge-pending[b-zoan1c8gyx] {
    background: #fef3c7;
    color: #d97706;
}

.badge-overdue[b-zoan1c8gyx] {
    background: #fee2e2;
    color: #dc2626;
}

.action-btn[b-zoan1c8gyx] {
    border: 1px solid #e5e7eb;
    background: white;
    border-radius: 8px;
    padding: 6px 10px;
    cursor: pointer;
    transition: .2s;
    font-size: .9rem;
}

.edit-btn:hover[b-zoan1c8gyx] {
    background: #f0f0ff;
    border-color: #4f46e5;
    color: #4f46e5;
}

.delete-btn:hover[b-zoan1c8gyx] {
    background: #fff0f0;
    border-color: #ef4444;
    color: #ef4444;
}

.modal-backdrop-custom[b-zoan1c8gyx] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1040;
}

.modal-box[b-zoan1c8gyx] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    padding: 2rem;
    width: 620px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;
}

@media (max-width: 800px) {
    .summary-cards[b-zoan1c8gyx] {
        grid-template-columns: repeat(2, 1fr);
    }

    .page-content[b-zoan1c8gyx] {
        padding: 70px 12px 12px 12px;
    }
}


/* ── Bill Cards ── */
.bills-section[b-zoan1c8gyx] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.bills-grid[b-zoan1c8gyx] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 18px;
}

.bill-card[b-zoan1c8gyx] {
    background: #f9fafb;
    border: 1.5px solid #e5e7eb;
    border-radius: 14px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: relative;
    transition: box-shadow .2s, transform .2s;
}

    .bill-card:hover[b-zoan1c8gyx] {
        box-shadow: 0 6px 20px rgba(0,0,0,.08);
        transform: translateY(-3px);
    }

    .bill-card.bill-overdue[b-zoan1c8gyx] {
        border-color: #fca5a5;
        background: #fff8f8;
    }

    .bill-card.bill-paid[b-zoan1c8gyx] {
        border-color: #86efac;
        background: #f0fdf4;
    }

.bill-badge[b-zoan1c8gyx] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: .72rem;
    font-weight: 700;
    align-self: flex-start;
}

.bill-subscriber[b-zoan1c8gyx] {
    font-size: 1rem;
    font-weight: 700;
    color: #111;
}

.bill-id[b-zoan1c8gyx] {
    font-size: .8rem;
}

.bill-amount[b-zoan1c8gyx] {
    font-size: 1.4rem;
    font-weight: 800;
    color: #111;
}

    .bill-amount span[b-zoan1c8gyx] {
        font-size: .8rem;
        font-weight: 400;
        color: #888;
    }

.bill-meta[b-zoan1c8gyx] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: .83rem;
    color: #555;
    flex: 1;
}

.bill-desc[b-zoan1c8gyx] {
    color: #888;
    font-style: italic;
}

.bill-actions[b-zoan1c8gyx] {
    display: flex;
    gap: 8px;
    margin-top: 4px;
}

.bill-action-btn[b-zoan1c8gyx] {
    flex: 1;
    padding: 7px;
    border-radius: 8px;
    border: 1.5px solid #e5e7eb;
    background: white;
    font-size: .82rem;
    font-weight: 600;
    cursor: pointer;
    transition: .2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

    .bill-action-btn.edit-btn:hover[b-zoan1c8gyx] {
        background: #f0f0ff;
        border-color: #4f46e5;
        color: #4f46e5;
    }

    .bill-action-btn.delete-btn:hover[b-zoan1c8gyx] {
        background: #fff0f0;
        border-color: #ef4444;
        color: #ef4444;
    }

.bills-empty[b-zoan1c8gyx] {
    grid-column: 1 / -1;
    text-align: center;
    padding: 40px;
}
/* /Components/Pages/Staff/StaffDashboard.razor.rz.scp.css */
*[b-gh739bnne4] {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: 'Segoe UI', sans-serif;
}

.wrapper[b-gh739bnne4] {
    min-height: 100vh;
    background: #f5f6fa;
    overflow-x: hidden;
}

/* TOP NAV */
.topnav[b-gh739bnne4] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #e5e7eb;
    gap: 20px;
    flex-wrap: wrap;
}

.topnav-left h2[b-gh739bnne4] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
}

.topnav-left p[b-gh739bnne4] {
    font-size: .82rem;
    color: #4f46e5;
}

.topnav-right[b-gh739bnne4] {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Logout button (single definition only) */
.logout-btn[b-gh739bnne4] {
    background: #4f46e5;
    border: none;
    color: #fff;
    padding: 8px 16px;
    border-radius: 10px;
    cursor: pointer;
    font-size: 0.9rem;
    font-weight: 600;
    transition: .2s ease;
}

    .logout-btn:hover[b-gh739bnne4] {
        background: #4338ca;
        transform: translateY(-1px);
    }

.notif-dot[b-gh739bnne4] {
    position: absolute;
    top: 0;
    right: 0;
    width: 8px;
    height: 8px;
    background: red;
    border-radius: 50%;
}

.avatar[b-gh739bnne4] {
    width: 38px;
    height: 38px;
    background: #4f46e5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
}

/* CONTENT */
.content[b-gh739bnne4] {
    padding: 32px;
}

    .content h1[b-gh739bnne4] {
        font-size: 2rem;
        font-weight: 800;
        margin-bottom: 24px;
        color: #111;
    }

/* STAT CARDS */
.stat-cards[b-gh739bnne4] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    margin-bottom: 28px;
}

.stat-card[b-gh739bnne4] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    box-shadow: 0 2px 10px rgba(0,0,0,.05);
    min-width: 0;
}

    .stat-card .label[b-gh739bnne4] {
        font-size: .82rem;
        color: #888;
        margin-bottom: 6px;
    }

    .stat-card .value[b-gh739bnne4] {
        font-size: 2rem;
        font-weight: 800;
        color: #111;
        margin-bottom: 6px;
    }

    .stat-card .trend[b-gh739bnne4] {
        font-size: .8rem;
        color: #22c55e;
        font-weight: 600;
    }

.stat-icon[b-gh739bnne4] {
    width: 50px;
    height: 50px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.icon-blue[b-gh739bnne4] {
    background: #eff6ff;
}

.icon-green[b-gh739bnne4] {
    background: #f0fdf4;
}

.icon-orange[b-gh739bnne4] {
    background: #fff7ed;
}

/* GRID */
.bottom-grid[b-gh739bnne4] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

/* CARD */
.card[b-gh739bnne4] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 10px rgba(0,0,0,.05);
}

/* table scroll wrapper */
.table-wrap[b-gh739bnne4] {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.card-title[b-gh739bnne4] {
    font-size: 1rem;
    font-weight: 700;
    color: #111;
    margin-bottom: 4px;
}

.card-sub[b-gh739bnne4] {
    font-size: .82rem;
    color: #aaa;
    margin-bottom: 16px;
}

/* TABLE */
table[b-gh739bnne4] {
    width: 100%;
    border-collapse: collapse;
    min-width: 700px;
}

thead tr[b-gh739bnne4] {
    background: #f9fafb;
}

th[b-gh739bnne4] {
    text-align: left;
    padding: 12px;
    font-size: .82rem;
    color: #444;
}

td[b-gh739bnne4] {
    padding: 14px 12px;
    border-bottom: 1px solid #f3f4f6;
    color: #333;
}

.badge[b-gh739bnne4] {
    background: #111827;
    color: white;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

/* NOTIFICATIONS */
.notif-item[b-gh739bnne4] {
    padding: 14px 0;
    border-bottom: 1px solid #f3f4f6;
}

    .notif-item:last-of-type[b-gh739bnne4] {
        border-bottom: none;
    }

    .notif-item p[b-gh739bnne4] {
        font-size: .9rem;
        color: #222;
        font-weight: 500;
        margin-bottom: 4px;
        line-height: 1.4;
    }

    .notif-item span[b-gh739bnne4] {
        font-size: .78rem;
        color: #aaa;
    }

.view-all-btn[b-gh739bnne4] {
    width: 100%;
    margin-top: 18px;
    padding: 11px;
    background: white;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    font-weight: 600;
    cursor: pointer;
    transition: .2s;
}

    .view-all-btn:hover[b-gh739bnne4] {
        background: #f9fafb;
    }

/* RESPONSIVE */
@media (max-width: 1100px) {
    .stat-cards[b-gh739bnne4] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .topnav[b-gh739bnne4] {
        padding: 12px 16px;
        flex-direction: column;
        align-items: flex-start;
    }

    .topnav-right[b-gh739bnne4] {
        width: 100%;
        justify-content: flex-end;
    }

    .content[b-gh739bnne4] {
        padding: 16px;
    }

        .content h1[b-gh739bnne4] {
            font-size: 1.5rem;
        }

    .stat-cards[b-gh739bnne4] {
        grid-template-columns: 1fr;
    }

    .stat-card[b-gh739bnne4] {
        padding: 16px;
    }

        .stat-card .value[b-gh739bnne4] {
            font-size: 1.5rem;
        }

    table[b-gh739bnne4] {
        min-width: 600px;
    }
}
/* /Components/Pages/Staff/StaffInternetPlans.razor.rz.scp.css */
.sub-wrapper[b-95xgrw9hao] {
    min-height: 100vh;
    background: #f5f6fa;
    display: flex;
    flex-direction: column;
}

.topnav[b-95xgrw9hao] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-95xgrw9hao] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
    margin: 0;
}

.topnav-left p[b-95xgrw9hao] {
    font-size: .82rem;
    color: #4f46e5;
    margin: 0;
}

.topnav-right[b-95xgrw9hao] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.page-content[b-95xgrw9hao] {
    padding: 32px;
    flex: 1;
}

.table-card[b-95xgrw9hao] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.sub-table[b-95xgrw9hao] {
    width: 100%;
    border-collapse: collapse;
}

    .sub-table thead tr[b-95xgrw9hao] {
        border-bottom: 2px solid #f3f4f6;
    }

    .sub-table th[b-95xgrw9hao] {
        text-align: left;
        padding: 10px 12px;
        font-size: .82rem;
        color: #888;
        font-weight: 600;
    }

    .sub-table td[b-95xgrw9hao] {
        padding: 14px 12px;
        border-bottom: 1px solid #f3f4f6;
        font-size: .9rem;
        color: #333;
    }

    .sub-table tbody tr:hover[b-95xgrw9hao] {
        background: #fafafa;
    }

.status-badge[b-95xgrw9hao] {
    padding: 5px 14px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

.badge-active[b-95xgrw9hao] {
    background: #111827;
    color: white;
}

.badge-inactive[b-95xgrw9hao] {
    background: #f3f4f6;
    color: #888;
}

.action-btn[b-95xgrw9hao] {
    border: 1px solid #e5e7eb;
    background: white;
    border-radius: 8px;
    padding: 6px 10px;
    cursor: pointer;
    transition: .2s;
    font-size: .9rem;
}

.edit-btn:hover[b-95xgrw9hao] {
    background: #f0f0ff;
    border-color: #4f46e5;
    color: #4f46e5;
}

.delete-btn:hover[b-95xgrw9hao] {
    background: #fff0f0;
    border-color: #ef4444;
    color: #ef4444;
}

.modal-backdrop-custom[b-95xgrw9hao] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1040;
}

.modal-box[b-95xgrw9hao] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    padding: 2rem;
    width: 620px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;
}
/* /Components/Pages/Staff/StaffNotifications.razor.rz.scp.css */
.sub-wrapper[b-95dbzcd1fp] {
    min-height: 100vh;
    background: #f5f6fa;
    display: flex;
    flex-direction: column;
}

.topnav[b-95dbzcd1fp] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-95dbzcd1fp] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
    margin: 0;
}

.topnav-left p[b-95dbzcd1fp] {
    font-size: .82rem;
    color: #4f46e5;
    margin: 0;
}

.page-content[b-95dbzcd1fp] {
    padding: 32px;
    flex: 1;
}

.form-card[b-95dbzcd1fp] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.form-card-title[b-95dbzcd1fp] {
    font-size: 1rem;
    font-weight: 700;
    color: #111;
    margin-bottom: 20px;
}

.table-card[b-95dbzcd1fp] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.sub-table[b-95dbzcd1fp] {
    width: 100%;
    border-collapse: collapse;
}

    .sub-table thead tr[b-95dbzcd1fp] {
        border-bottom: 2px solid #f3f4f6;
    }

    .sub-table th[b-95dbzcd1fp] {
        text-align: left;
        padding: 10px 12px;
        font-size: .82rem;
        color: #888;
        font-weight: 600;
    }

    .sub-table td[b-95dbzcd1fp] {
        padding: 14px 12px;
        border-bottom: 1px solid #f3f4f6;
        font-size: .88rem;
        color: #333;
        vertical-align: middle;
    }

    .sub-table tbody tr:hover[b-95dbzcd1fp] {
        background: #fafafa;
    }

.status-badge[b-95dbzcd1fp] {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: .72rem;
    font-weight: 700;
}

.badge-read[b-95dbzcd1fp] {
    background: #d1fae5;
    color: #059669;
}

.badge-unread[b-95dbzcd1fp] {
    background: #fef3c7;
    color: #d97706;
}

.btn-template[b-95dbzcd1fp] {
    background: #f3f4f6;
    border: 1.5px solid #e5e7eb;
    border-radius: 8px;
    padding: 6px 12px;
    font-size: .8rem;
    font-weight: 600;
    cursor: pointer;
    transition: .2s;
}

    .btn-template:hover[b-95dbzcd1fp] {
        background: #eef2ff;
        border-color: #4f46e5;
        color: #4f46e5;
    }

@media (max-width: 800px) {
    .page-content[b-95dbzcd1fp] {
        padding: 70px 12px 12px;
    }
}
/* /Components/Pages/Staff/StaffSubscriber.razor.rz.scp.css */
.sub-wrapper[b-c4uo04xjec] {
    min-height: 100vh;
    background: #f5f6fa;
    display: flex;
    flex-direction: column;
}

.topnav[b-c4uo04xjec] {
    background: white;
    padding: 16px 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 2px solid #4f46e5;
}

.topnav-left h2[b-c4uo04xjec] {
    font-size: 1.2rem;
    font-weight: 700;
    color: #111;
    margin: 0;
}

.topnav-left p[b-c4uo04xjec] {
    font-size: .82rem;
    color: #4f46e5;
    margin: 0;
}

.topnav-right[b-c4uo04xjec] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.avatar[b-c4uo04xjec] {
    width: 38px;
    height: 38px;
    background: #4f46e5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.1rem;
}

.page-content[b-c4uo04xjec] {
    padding: 32px;
    flex: 1;
}

.table-card[b-c4uo04xjec] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}

.search-box[b-c4uo04xjec] {
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 8px 14px;
    width: 260px;
    background: white;
}

    .search-box input[b-c4uo04xjec] {
        border: none;
        outline: none;
        font-size: .9rem;
        width: 100%;
        color: #333;
    }

.sub-table[b-c4uo04xjec] {
    width: 100%;
    border-collapse: collapse;
}

    .sub-table thead tr[b-c4uo04xjec] {
        border-bottom: 2px solid #f3f4f6;
    }

    .sub-table th[b-c4uo04xjec] {
        text-align: left;
        padding: 10px 12px;
        font-size: .82rem;
        color: #888;
        font-weight: 600;
        white-space: nowrap;
    }

    .sub-table td[b-c4uo04xjec] {
        padding: 14px 12px;
        border-bottom: 1px solid #f3f4f6;
        font-size: .9rem;
        color: #333;
    }

    .sub-table tbody tr:hover[b-c4uo04xjec] {
        background: #fafafa;
    }

.status-badge[b-c4uo04xjec] {
    padding: 5px 14px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

.badge-active[b-c4uo04xjec] {
    background-color: #28a745;
    color: white;
}

.badge-inactive[b-c4uo04xjec] {
    background-color: #dc3545;
    color: white;
}

.badge-active[b-c4uo04xjec] {
    background-color: #28a745;
    color: white;
}

.badge-inactive[b-c4uo04xjec] {
    background: #f3f4f6;
    color: #888;
}

.action-btn[b-c4uo04xjec] {
    border: 1px solid #e5e7eb;
    background: white;
    border-radius: 8px;
    padding: 6px 10px;
    cursor: pointer;
    transition: .2s;
    font-size: .9rem;
}

.edit-btn:hover[b-c4uo04xjec] {
    background: #f0f0ff;
    border-color: #4f46e5;
    color: #4f46e5;
}

.delete-btn:hover[b-c4uo04xjec] {
    background: #fff0f0;
    border-color: #ef4444;
    color: #ef4444;
}

.modal-backdrop-custom[b-c4uo04xjec] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1040;
}

.modal-box[b-c4uo04xjec] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    padding: 2rem;
    width: 620px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;
}
/* /Components/Pages/Subscriber/SubBilling.razor.rz.scp.css */
/* ===== Page Wrapper ===== */
.plans-wrapper[b-im7cmyss46] {
    padding: 32px;
    background: #f5f6fa;
    min-height: 100vh;
}

.plans-header[b-im7cmyss46] {
    margin-bottom: 24px;
}

    .plans-header h3[b-im7cmyss46] {
        color: #111;
    }

/* ===== Current Bill Banner (same feel as internet plans) ===== */
.current-plan-banner[b-im7cmyss46] {
    background: #eef4ff;
    border: 1px solid #c7dcff;
    border-radius: 14px;
    padding: 18px 20px;
    display: flex;
    align-items: center;
    gap: 14px;
}

.current-plan-label[b-im7cmyss46] {
    font-size: .78rem;
    color: #64748b;
    font-weight: 600;
    margin-bottom: 4px;
}

.current-plan-name[b-im7cmyss46] {
    font-size: 1.06rem;
    font-weight: 700;
    color: #1e293b;
}

.current-plan-price[b-im7cmyss46] {
    font-size: .95rem;
    color: #334155;
    margin-top: 2px;
}

.badge-pending-plan[b-im7cmyss46] {
    display: inline-flex;
    align-items: center;
    background: #fef3c7;
    color: #92400e;
    border: 1px solid #fde68a;
    border-radius: 999px;
    padding: 6px 12px;
    font-size: .75rem;
    font-weight: 700;
}

/* ===== Reusable Buttons (same naming as internet plans) ===== */
.btn-plan[b-im7cmyss46] {
    border: none;
    border-radius: 10px;
    padding: 9px 16px;
    font-size: .85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .2s ease;
    white-space: nowrap;
}

.btn-plan-switch[b-im7cmyss46] {
    background: linear-gradient(90deg, #2563eb, #3b82f6);
    color: #fff;
}

    .btn-plan-switch:hover[b-im7cmyss46] {
        opacity: .92;
        transform: translateY(-1px);
    }

/* ===== Table Card ===== */
.table-card[b-im7cmyss46] {
    background: #fff;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .06);
}

.sub-table[b-im7cmyss46] {
    width: 100%;
    border-collapse: collapse;
}

    .sub-table thead tr[b-im7cmyss46] {
        border-bottom: 2px solid #f3f4f6;
    }

    .sub-table th[b-im7cmyss46] {
        text-align: left;
        padding: 10px 12px;
        font-size: .82rem;
        color: #888;
        font-weight: 600;
        white-space: nowrap;
    }

    .sub-table td[b-im7cmyss46] {
        padding: 14px 12px;
        border-bottom: 1px solid #f3f4f6;
        font-size: .9rem;
        color: #333;
    }

    .sub-table tbody tr:hover[b-im7cmyss46] {
        background: #fafafa;
    }

/* ===== Status Badges ===== */
.status-badge[b-im7cmyss46] {
    padding: 5px 14px;
    border-radius: 20px;
    font-size: .75rem;
    font-weight: 600;
}

.badge-paid[b-im7cmyss46] {
    background: #d1fae5;
    color: #059669;
}

.badge-pending[b-im7cmyss46] {
    background: #fef3c7;
    color: #d97706;
}

.badge-overdue[b-im7cmyss46] {
    background: #fee2e2;
    color: #dc2626;
}

/* ===== Submitted Badge ===== */
.badge-submitted[b-im7cmyss46] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #fef9c3;
    color: #854d0e;
    border: 1px solid #fde047;
    border-radius: 8px;
    padding: 5px 12px;
    font-size: .78rem;
    font-weight: 600;
    white-space: nowrap;
}

/* ===== Modal ===== */
.modal-backdrop-custom[b-im7cmyss46] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1040;
}

.modal-box[b-im7cmyss46] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    border-radius: 16px;
    padding: 2rem;
    width: 500px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;
}

/* ===== Responsive ===== */
@media (max-width: 800px) {
    .plans-wrapper[b-im7cmyss46] {
        padding: 70px 16px 16px 16px;
    }

    .current-plan-banner[b-im7cmyss46] {
        padding: 14px;
    }

    .table-card[b-im7cmyss46] {
        padding: 14px;
    }
}
/* /Components/Pages/Subscriber/SubDashboard.razor.rz.scp.css */
.dashboard-container[b-4kmeujdscc] {
    padding: 20px;
    background: #f4f7fb;
    min-height: 100vh;
}

.dashboard-header[b-4kmeujdscc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 18px;
    flex-wrap: wrap;
    gap: 10px;
}

    .dashboard-header h2[b-4kmeujdscc] {
        font-weight: 700;
        margin: 0;
        font-size: 1.35rem;
    }

.sub-text[b-4kmeujdscc] {
    color: #6c757d;
    margin-top: 3px;
    font-size: .88rem;
}

.logout-btn[b-4kmeujdscc] {
    background: #dc3545;
    border: none;
    color: white;
    padding: 8px 14px;
    border-radius: 8px;
    font-weight: 600;
    font-size: .85rem;
    transition: 0.25s;
}

    .logout-btn:hover[b-4kmeujdscc] {
        background: #bb2d3b;
    }

/* cards */
.cards-grid[b-4kmeujdscc] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.dashboard-card[b-4kmeujdscc] {
    background: white;
    padding: 14px;
    border-radius: 12px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.06);
    transition: 0.2s;
}

    .dashboard-card:hover[b-4kmeujdscc] {
        transform: translateY(-2px);
    }

.card-icon[b-4kmeujdscc] {
    font-size: 24px;
    margin-bottom: 6px;
}

.dashboard-card h5[b-4kmeujdscc] {
    color: #6c757d;
    margin-bottom: 4px;
    font-size: .82rem;
    font-weight: 600;
}

.dashboard-card h3[b-4kmeujdscc] {
    font-weight: 700;
    margin-bottom: 2px;
    font-size: 1.1rem;
}

/* section */
.subscription-section[b-4kmeujdscc] {
    background: white;
    padding: 16px;
    border-radius: 12px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.06);
}

.section-header[b-4kmeujdscc] {
    margin-bottom: 12px;
}

    .section-header h4[b-4kmeujdscc] {
        font-weight: 700;
        font-size: 1rem;
        margin: 0;
    }

/* detail boxes */
.details-grid[b-4kmeujdscc] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 10px;
}

.detail-box[b-4kmeujdscc] {
    background: #f8f9fc;
    padding: 12px;
    border-radius: 10px;
}

    .detail-box span[b-4kmeujdscc] {
        display: block;
        color: #6c757d;
        margin-bottom: 4px;
        font-size: .78rem;
    }

    .detail-box strong[b-4kmeujdscc] {
        font-size: .95rem;
        font-weight: 700;
    }

.status-active[b-4kmeujdscc] {
    color: #198754;
}

@media (max-width: 768px) {
    .dashboard-container[b-4kmeujdscc] {
        padding: 14px;
    }

    .dashboard-header[b-4kmeujdscc] {
        flex-direction: column;
        align-items: flex-start;
    }

        .dashboard-header h2[b-4kmeujdscc] {
            font-size: 1.15rem;
        }

    .logout-btn[b-4kmeujdscc] {
        width: 100%;
        font-size: .82rem;
    }
}
/* /Components/Pages/Subscriber/SubInternetPlans.razor.rz.scp.css */
.plans-wrapper[b-f0br280k62] {
    padding: 32px;
    background: #f0f4ff;
    min-height: 100vh;
}

.plans-header[b-f0br280k62] {
    margin-bottom: 24px;
}

.plans-header h3[b-f0br280k62] {
    color: #111;
    font-size: 1.5rem;
}

/* ── Current Plan Banner ── */
.current-plan-banner[b-f0br280k62] {
    background: #eef3ff;
    border: 1.5px solid #c7d7ff;
    border-radius: 14px;
    padding: 20px 28px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.current-plan-label[b-f0br280k62] {
    font-size: .8rem;
    color: #4f46e5;
    font-weight: 600;
    margin-bottom: 4px;
}

.current-plan-name[b-f0br280k62] {
    font-size: 1.4rem;
    font-weight: 800;
    color: #111;
}

.current-plan-price[b-f0br280k62] {
    font-size: .88rem;
    color: #4f46e5;
    font-weight: 500;
    margin-top: 2px;
}

.current-plan-status[b-f0br280k62] {
    background: #4f46e5;
    color: white;
    font-size: .75rem;
    font-weight: 700;
    padding: 5px 14px;
    border-radius: 20px;
}

/* ── Cards Grid ── */
.plans-grid[b-f0br280k62] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.plan-card[b-f0br280k62] {
    background: white;
    border: 1.5px solid #e5e7eb;
    border-radius: 16px;
    padding: 28px 22px;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: box-shadow 0.2s, transform 0.2s;
}

.plan-card:hover[b-f0br280k62] {
    box-shadow: 0 8px 28px rgba(79,70,229,0.10);
    transform: translateY(-4px);
}

.plan-current[b-f0br280k62] {
    border: 2px solid #4f46e5;
    box-shadow: 0 4px 20px rgba(79,70,229,0.12);
}

/* ── Top Badges ── */
.plan-top-badges[b-f0br280k62] {
    display: flex;
    justify-content: center;
    gap: 6px;
    min-height: 22px;
    margin-bottom: 4px;
}

.badge-current-plan[b-f0br280k62] {
    background: #4f46e5;
    color: white;
    font-size: .72rem;
    font-weight: 700;
    padding: 3px 12px;
    border-radius: 20px;
}

.badge-pending-plan[b-f0br280k62] {
    background: #f59e0b;
    color: white;
    font-size: .72rem;
    font-weight: 700;
    padding: 3px 12px;
    border-radius: 20px;
}

/* ── Plan Info ── */
.plan-name[b-f0br280k62] {
    font-size: 1.15rem;
    font-weight: 700;
    color: #111;
    text-align: center;
}

.plan-speed-display[b-f0br280k62] {
    text-align: center;
    line-height: 1.1;
}

.speed-number[b-f0br280k62] {
    font-size: 2rem;
    font-weight: 800;
    color: #4f46e5;
}

.speed-unit[b-f0br280k62] {
    font-size: 1rem;
    font-weight: 500;
    color: #4f46e5;
}

.plan-price-display[b-f0br280k62] {
    font-size: 1.4rem;
    font-weight: 800;
    color: #111;
    text-align: center;
}

.price-period[b-f0br280k62] {
    font-size: .82rem;
    font-weight: 400;
    color: #888;
}

/* ── Features ── */
.plan-features[b-f0br280k62] {
    list-style: none;
    padding: 0;
    margin: 4px 0 8px 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
    flex: 1;
}

.plan-features li[b-f0br280k62] {
    font-size: .88rem;
    color: #444;
}

.feature-check[b-f0br280k62] {
    color: #22c55e;
    font-weight: 700;
    margin-right: 4px;
}

/* ── Buttons ── */
.btn-plan[b-f0br280k62] {
    width: 100%;
    padding: 11px;
    border-radius: 10px;
    font-weight: 700;
    font-size: .92rem;
    cursor: pointer;
    border: none;
    transition: .2s;
    margin-top: auto;
}

.btn-plan-switch[b-f0br280k62] {
    background: white;
    color: #111;
    border: 1.5px solid #d1d5db;
}

.btn-plan-switch:hover[b-f0br280k62] {
    background: #f3f4f6;
    border-color: #aaa;
}

.btn-plan-upgrade[b-f0br280k62] {
    background: #4f46e5;
    color: white;
}

.btn-plan-upgrade:hover[b-f0br280k62] {
    background: #4338ca;
    transform: translateY(-2px);
}

.btn-plan-current[b-f0br280k62] {
    background: transparent;
    color: #888;
    border: 1.5px solid #e5e7eb;
    cursor: default;
}

.btn-plan-pending[b-f0br280k62] {
    background: #fff7ed;
    color: #f59e0b;
    border: 1.5px solid #f59e0b;
    cursor: default;
}

.btn-plan-cancel[b-f0br280k62] {
    background: #fff0f0;
    color: #ef4444;
    border: 1.5px solid #ef4444;
    cursor: pointer;
}

.btn-plan-cancel:hover[b-f0br280k62] {
    background: #ef4444;
    color: white;
}

/* ── Modal ── */
.modal-backdrop-custom[b-f0br280k62] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.4);
    z-index: 1040;
}

.modal-box[b-f0br280k62] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 16px;
    padding: 2rem;
    width: 500px;
    max-width: 95vw;
    z-index: 1050;
    max-height: 90vh;
    overflow-y: auto;
}

@media (max-width: 1100px) {
    .plans-grid[b-f0br280k62] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .plans-wrapper[b-f0br280k62] {
        padding: 70px 16px 16px 16px;
    }

    .plans-grid[b-f0br280k62] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Subscriber/SubMyAccount.razor.rz.scp.css */
.account-page[b-shdwab3puz] {
    padding: 20px;
    background: #f6f8fc;
    min-height: 100vh;
}

.account-header h2[b-shdwab3puz] {
    margin: 0;
    font-weight: 700
}

.account-header p[b-shdwab3puz] {
    margin: 4px 0 16px;
    color: #6b7280
}

.account-grid[b-shdwab3puz] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 16px;
}

.card[b-shdwab3puz] {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 16px;
    margin-bottom: 16px;
}

    .card h4[b-shdwab3puz] {
        margin: 0 0 4px;
        font-size: 1rem
    }

.muted[b-shdwab3puz] {
    color: #6b7280;
    font-size: .9rem;
    margin-bottom: 12px
}

.form-grid[b-shdwab3puz] {
    display: grid;
    gap: 10px;
    margin-bottom: 12px
}

    .form-grid.two[b-shdwab3puz] {
        grid-template-columns: 1fr 1fr
    }

    .form-grid.one[b-shdwab3puz] {
        grid-template-columns: 1fr
    }

label[b-shdwab3puz] {
    font-size: .85rem;
    font-weight: 600;
    display: block;
    margin-bottom: 4px
}

.input[b-shdwab3puz] {
    width: 100%;
    border: 1px solid #dbe1ea;
    background: #f9fafb;
    border-radius: 8px;
    padding: 9px 10px;
    font-size: .9rem;
}

.btn[b-shdwab3puz] {
    border: none;
    border-radius: 8px;
    padding: 8px 12px;
    font-weight: 600;
    cursor: pointer
}

.btn-primary[b-shdwab3puz] {
    background: #2563eb;
    color: #fff
}

.btn-light[b-shdwab3puz] {
    background: #f3f4f6;
    color: #111
}

.summary-list > div[b-shdwab3puz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #eef2f7;
    font-size: .92rem
}

    .summary-list > div:last-child[b-shdwab3puz] {
        border-bottom: none
    }

.summary-list span[b-shdwab3puz] {
    color: #6b7280
}

.badge-active[b-shdwab3puz] {
    background: #dcfce7;
    color: #15803d;
    border: 1px solid #86efac;
    border-radius: 999px;
    padding: 2px 8px;
    font-size: .75rem;
    font-weight: 700
}

.quick[b-shdwab3puz] {
    background: #f8fbff;
    border-color: #cfe0ff
}

.qa-btn[b-shdwab3puz] {
    width: 100%;
    text-align: left;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    padding: 9px 10px;
    margin-top: 8px;
    font-weight: 600
}

    .qa-btn.danger[b-shdwab3puz] {
        color: #dc2626
    }

@media (max-width: 992px) {
    .account-grid[b-shdwab3puz] {
        grid-template-columns: 1fr
    }
}

@media (max-width: 640px) {
    .form-grid.two[b-shdwab3puz] {
        grid-template-columns: 1fr
    }
}
