/* /Components/NoticeBoard.razor.rz.scp.css */
/* ---------- Card ---------- */

.notice-card[b-g8l6ttnx8h] {
    background: #ffffff;
    border: 1px solid #e9edf2;
    /*border-radius: .9rem;*/
    box-shadow: 0 4px 18px rgba(36, 52, 71, .06);
    padding: 1.5rem 1.75rem;
}

.notice-card-header[b-g8l6ttnx8h] {
    display: flex;
    align-items: center;
    gap: .6rem;
    margin-bottom: 1.25rem;
}

    .notice-card-header i[b-g8l6ttnx8h] {
        font-size: 1.15rem;
        color: #d9a520;
    }

    .notice-card-header h3[b-g8l6ttnx8h] {
        margin: 0;
        font-size: 1rem;
        font-weight: 600;
        color: #243447;
        text-transform: uppercase;
        letter-spacing: .03em;
    }

/* ---------- Notice list ---------- */

.notice-list[b-g8l6ttnx8h] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: .9rem;
}

.notice-item[b-g8l6ttnx8h] {
    display: flex;
    gap: .85rem;
    align-items: flex-start;
    background: #fdfaf1;
    border: 1px solid #f2e6bd;
    border-left: 4px solid #f0c93b;
    /*border-radius: .6rem;*/
    padding: .9rem 1.1rem;
}

.notice-pin[b-g8l6ttnx8h] {
    flex-shrink: 0;
    margin-top: .15rem;
    color: #d9a520;
    font-size: .95rem;
}

.notice-body[b-g8l6ttnx8h] {
    flex: 1;
    min-width: 0;
    font-size: .92rem;
    line-height: 1.55;
    color: #3a4656;
}

    /* Styling for the raw HTML rendered via MarkupString — these elements don't
       carry Blazor's scope attribute, so ::deep is required to reach them. */
    .notice-body[b-g8l6ttnx8h]  b,
    .notice-body[b-g8l6ttnx8h]  strong {
        color: #243447;
        font-weight: 600;
    }

    .notice-body[b-g8l6ttnx8h]  ul {
        margin: .5rem 0 0;
        padding-left: 1.1rem;
    }

    .notice-body[b-g8l6ttnx8h]  li {
        margin-bottom: .25rem;
    }

    .notice-body[b-g8l6ttnx8h]  li:last-child {
        margin-bottom: 0;
    }

    .notice-body[b-g8l6ttnx8h]  div {
        margin: 0;
    }

/* ---------- Empty state ---------- */

.notice-empty[b-g8l6ttnx8h] {
    padding: 2rem 1rem;
    text-align: center;
    color: #8b96a5;
}

    .notice-empty i[b-g8l6ttnx8h] {
        display: block;
        margin-bottom: .5rem;
        font-size: 1.75rem;
    }

.contact-list[b-g8l6ttnx8h] {
    list-style: none;
    margin: .6rem 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: .6rem;
}

.contact-item[b-g8l6ttnx8h] {
    padding: .55rem .75rem;
    background: #ffffff;
    border: 1px solid #f2e6bd;
    border-radius: .4rem;
}

.contact-name[b-g8l6ttnx8h] {
    font-weight: 600;
    color: #243447;
    font-size: .92rem;
}

.contact-role[b-g8l6ttnx8h] {
    font-size: .8rem;
    color: #8b96a5;
    margin-top: .1rem;
}

.contact-phone[b-g8l6ttnx8h] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    margin-top: .35rem;
    font-size: .85rem;
    color: #3a4656;
    text-decoration: none;
}

    .contact-phone i[b-g8l6ttnx8h] {
        color: #d9a520;
        font-size: .8rem;
    }

    .contact-phone:hover[b-g8l6ttnx8h] {
        color: #d9a520;
        text-decoration: underline;
    }
/* ---------- Mobile ---------- */

@media (max-width: 575.98px) {
    .notice-card[b-g8l6ttnx8h] {
        padding: 1.25rem;
    }

    .notice-item[b-g8l6ttnx8h] {
        padding: .8rem .9rem;
    }
}
/* /Components/OFileViewer.razor.rz.scp.css */
.modal[b-suy3mvwrco] {
    z-index: 2000;
}

.modal-content[b-suy3mvwrco] {
    border-radius: .75rem;
}

.modal-body[b-suy3mvwrco] {
    flex: 1 1 auto;
    overflow: hidden;
    padding: 0;
    display: flex;
}

img[b-suy3mvwrco] {
    display: block;
    margin: auto;
}
/* /Components/OHttpRequestProgressSpinner.razor.rz.scp.css */
.loading-overlay[b-bqhqsjk8t5] {
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    /* Soft tinted overlay */
    background: rgba(30, 41, 59, 0.12);
    backdrop-filter: blur(3px);
}

.loading-panel[b-bqhqsjk8t5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    min-width: 260px;
    padding: 2.5rem 3rem;
    /*border-radius: 18px;*/
    /* Glass effect */
    background: linear-gradient( 135deg, rgba(255,255,255,0.95), rgba(240,247,255,0.92) );
    border: 1px solid rgba(99, 102, 241, 0.15);
    backdrop-filter: blur(10px);
    box-shadow: 0 12px 32px rgba(37, 99, 235, 0.12), 0 4px 12px rgba(15, 23, 42, 0.08);
    pointer-events: auto;
}

.loading-text[b-bqhqsjk8t5] {
    font-size: 1rem;
    font-weight: 600;
    color: #334155;
    letter-spacing: .2px;
    text-align: center;
}

    .loading-text small[b-bqhqsjk8t5] {
        display: block;
        margin-top: .35rem;
        font-size: .85rem;
        font-weight: 400;
        color: #64748b;
    }


.loader-ring[b-bqhqsjk8t5] {
    width: 70px;
    height: 70px;
    border: 5px solid #dbeafe;
    border-top: 5px solid #0d6efd;
    border-radius: 50%;
    animation: spin-b-bqhqsjk8t5 1s linear infinite;
    position: relative;
}

    .loader-ring[b-bqhqsjk8t5]::after {
        content: "";
        position: absolute;
        inset: 10px;
        border: 5px solid transparent;
        border-bottom-color: #66b3ff;
        border-radius: 50%;
        animation: spinReverse-b-bqhqsjk8t5 .8s linear infinite;
    }

@keyframes spin-b-bqhqsjk8t5 {
    to {
        transform: rotate(360deg);
    }
}

@keyframes spinReverse-b-bqhqsjk8t5 {
    to {
        transform: rotate(-360deg);
    }
}
/* /Components/OModalOtp.razor.rz.scp.css */
.otp-box[b-y685oaln06] {
    width: 50px;
    height: 55px;
    font-size: 24px;
    font-weight: bold;
}

.modal[b-y685oaln06] {
    z-index: 1050;
}

/* Give the dialog breathing room instead of touching the screen edges,
   and let it shrink on narrow viewports */
.modal-dialog[b-y685oaln06] {
    margin: 1rem;
    max-width: 400px;
}

@media (min-width: 576px) {
    .modal-dialog[b-y685oaln06] {
        margin: 1.75rem auto;
    }
}

/* Shrink OTP boxes so they don't overflow on small phones */
@media (max-width: 400px) {
    .otp-box[b-y685oaln06] {
        width: 42px;
        height: 48px;
        font-size: 20px;
    }
}

@media (max-width: 340px) {
    .otp-box[b-y685oaln06] {
        width: 36px;
        height: 44px;
        font-size: 18px;
    }
}
/* /Components/OSupportUser.razor.rz.scp.css */
/* ---------- Card ---------- */

.support-card[b-w581tefxb8] {
    background: #ffffff;
    border: 1px solid #e9edf2;
    box-shadow: 0 4px 18px rgba(36, 52, 71, .06);
    padding: 1.5rem 1.75rem;
}

.support-card-header[b-w581tefxb8] {
    display: flex;
    align-items: center;
    gap: .6rem;
    margin-bottom: 1.25rem;
}

    .support-card-header i[b-w581tefxb8] {
        font-size: 1.15rem;
        color: #d9a520;
    }

    .support-card-header h3[b-w581tefxb8] {
        margin: 0;
        font-size: 1rem;
        font-weight: 600;
        color: #243447;
        text-transform: uppercase;
        letter-spacing: .03em;
    }

/* ---------- Support list ---------- */

.support-list[b-w581tefxb8] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: .75rem;
}

.support-item[b-w581tefxb8] {
    display: flex;
    align-items: center;
    gap: .75rem;
    background: #fdfaf1;
    border: 1px solid #f2e6bd;
    border-left: 4px solid #f0c93b;
    border-radius: .5rem;
    padding: .75rem .9rem;
}

.support-avatar[b-w581tefxb8] {
    flex-shrink: 0;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 50%;
    background: #f0c93b;
    color: #243447;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .02em;
}

.support-info[b-w581tefxb8] {
    flex: 1;
    min-width: 0;
}

.support-name[b-w581tefxb8] {
    font-size: .92rem;
    font-weight: 600;
    color: #243447;
    line-height: 1.3;
    overflow-wrap: anywhere;
    text-wrap:nowrap;
}

.support-role[b-w581tefxb8] {
    font-size: .78rem;
    color: #8b96a5;
    line-height: 1.3;
    margin-top: .1rem;
    text-wrap: nowrap;
}

.support-phone[b-w581tefxb8] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: .85rem;
    color: #3a4656;
    text-decoration: none;
    padding: .3rem .5rem;
    border-radius: .35rem;
    white-space: nowrap;
}

    .support-phone i[b-w581tefxb8] {
        color: #d9a520;
        font-size: .8rem;
    }

    .support-phone:hover[b-w581tefxb8],
    .support-phone:focus-visible[b-w581tefxb8] {
        color: #243447;
        background: #f2e6bd;
    }

    .support-phone:focus-visible[b-w581tefxb8] {
        outline: 2px solid #d9a520;
        outline-offset: 2px;
    }

/* ---------- Empty state ---------- */

.support-empty[b-w581tefxb8] {
    padding: 2rem 1rem;
    text-align: center;
    color: #8b96a5;
}

    .support-empty i[b-w581tefxb8] {
        display: block;
        margin-bottom: .5rem;
        font-size: 1.75rem;
    }

/* ---------- Mobile ---------- */

@media (max-width: 575.98px) {
    .support-card[b-w581tefxb8] {
        padding: 1.25rem;
    }

    .support-list[b-w581tefxb8] {
        grid-template-columns: 1fr;
    }

    .support-item[b-w581tefxb8] {
        flex-wrap: wrap;
        padding: .8rem .9rem;
    }

    .support-phone[b-w581tefxb8] {
        margin-left: calc(2.35rem + .75rem);
    }
}
/* /DashboardComponents/SanctionAuthoritySummaryDashboard.razor.rz.scp.css */
.custom-card[b-87gvn2n8nn] {
    border-radius: 16px;
    border: none;
    background: #f7f9fc; /* very soft blue-gray */
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

.custom-header[b-87gvn2n8nn] {
    background: #e9f2ff; /* soft sky blue */
    border-bottom: none;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

    .custom-header .card-title[b-87gvn2n8nn] {
        font-weight: 600;
        color: #3a4e8c; /* soft navy */
    }

.custom-body[b-87gvn2n8nn] {
    background: #ffffff;
    padding-top: 15px;
    padding-bottom: 15px;
}

    .custom-body label[b-87gvn2n8nn] {
        font-size: 15px;
    }

    .custom-body .text-primary[b-87gvn2n8nn] {
        color: #4a74e0 !important;
    }

    .custom-body .text-success[b-87gvn2n8nn] {
        color: #4caf50 !important;
    }

.text-muted[b-87gvn2n8nn] {
    color: #6c7785 !important;
}
/* /Pages/Admin/Dashboard.razor.rz.scp.css */
.progress-vertical[b-ahs1sjsevx] {
    position: relative;
    padding-left: 30px;
}

    .progress-vertical[b-ahs1sjsevx]::before {
        content: '';
        position: absolute;
        left: 15px;
        top: 0;
        bottom: 0;
        width: 4px;
        background-color: #e9ecef;
        border-radius: 2px;
    }

.step[b-ahs1sjsevx] {
    position: relative;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
}

    .step:last-child[b-ahs1sjsevx] {
        margin-bottom: 0;
    }

    .step span[b-ahs1sjsevx] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        background-color: #e9ecef;
        color: #6c757d;
        font-weight: bold;
        margin-right: 15px;
        z-index: 1;
        position: relative;
    }

    .step.completed[b-ahs1sjsevx]::after {
        content: '';
        position: absolute;
        left: 15px;
        top: 30px;
        width: 4px;
        height: 25px;
        z-index: 0;
    }

    .step:last-child[b-ahs1sjsevx]::after {
        display: none;
    }
/* /Pages/Admin/OptmsUser.razor.rz.scp.css */
.table th[b-93mi9wk3ui] {
    white-space: nowrap;
    vertical-align: middle;
}

.table td[b-93mi9wk3ui] {
    vertical-align: middle;
}

.table-responsive[b-93mi9wk3ui] {
    /*border-radius: .5rem;*/
}

.btn-group .btn[b-93mi9wk3ui] {
    min-width: 42px;
}

@media (max-width: 768px) {

    .btn-group[b-93mi9wk3ui] {
        display: flex;
    }

        .btn-group .btn[b-93mi9wk3ui] {
            flex: 1;
        }

    .table[b-93mi9wk3ui] {
        font-size: .92rem;
    }
}
/* /Pages/Anonymous/Login.razor.rz.scp.css */
.login-wrapper[b-q95pmyg3yi] {
    /* px-3/py-4 from Bootstrap handle the base gutter; this is a fallback
       in case Bootstrap utility classes aren't loaded */
    padding-left: 1rem;
    padding-right: 1rem;
}

.login-card[b-q95pmyg3yi] {
    width: 100%;
    max-width: 400px;
    border-radius: 1rem;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.login-header[b-q95pmyg3yi] {
    background-color: #3A7D93;
    color: #fff;
    border-top-left-radius: 1rem;
    border-top-right-radius: 1rem;
    padding: 1.5rem;
}

.login-header h3[b-q95pmyg3yi] {
    font-size: 1.5rem;
    margin-bottom: 0.25rem;
}

.login-btn[b-q95pmyg3yi] {
    background-color: #3A7D93;
    color: #fff;
    min-height: 44px; /* comfortable touch target on mobile */
}

.login-btn:hover[b-q95pmyg3yi],
.login-btn:focus[b-q95pmyg3yi] {
    background-color: #326a7d;
    color: #fff;
}

.login-link[b-q95pmyg3yi] {
    color: #3A7D93;
}

/* Small phones (≤400px) */
@media (max-width: 400px) {
    .login-card[b-q95pmyg3yi] {
        max-width: 100%;
    }

    .login-header[b-q95pmyg3yi] {
        padding: 1.25rem 1rem;
    }

    .login-header h3[b-q95pmyg3yi] {
        font-size: 1.25rem;
    }

    .card-body[b-q95pmyg3yi] {
        padding: 1.25rem !important;
    }
}

/* Very short viewports (landscape phones) */
@media (max-height: 500px) {
    .login-wrapper[b-q95pmyg3yi] {
        min-height: auto !important;
        align-items: flex-start;
    }

    .login-header[b-q95pmyg3yi] {
        padding: 1rem;
    }
}
/* /Pages/Executive/PensionScrutinizeBySanctionAuthority.razor.rz.scp.css */

/* /Pages/Pensioner/PensionApplicationAttachment.razor.rz.scp.css */
.attachment-header[b-w0ir557az6] {
    background: #f5f7fb;
    border: 1px solid #e3e6ec;
    border-radius: 0;
    font-size: .78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #6c757d;
}

.attachment-card[b-w0ir557az6] {
    background: #fff;
    border: 1px solid #e3e6ec;
    border-radius: 0;
    transition: box-shadow .15s ease, border-color .15s ease;
}

.attachment-card:hover[b-w0ir557az6] {
    border-color: #cdd4e0;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .06);
}

.order-chip[b-w0ir557az6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    height: 30px;
    padding: 0 .4rem;
    border-radius: 0;
    background: #fff;
    color: #465266;
    font-size: .78rem;
    font-weight: 700;
}

.attachment-name[b-w0ir557az6] {
    font-size: .95rem;
    color: #212529;
}

/* Stacked/mobile view: give each row its own visual grouping since the
   desktop header is hidden and columns collapse to full width */
@media (max-width: 991.98px) {
    .attachment-card[b-w0ir557az6] {
        row-gap: .35rem;
    }

    .attachment-name[b-w0ir557az6] {
        font-size: 1rem;
    }
}
