/* /Components/Features/Authentication/LoginModal.razor.rz.scp.css */
.modal-dialog[b-9be7lw5c3p] {
    width: calc(100% - 32px);
    max-width: 430px;
}

.login-modal-content[b-9be7lw5c3p] {
    border: 0;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 28px 80px rgba(20, 0, 0, .28);
}

.login-modal-header[b-9be7lw5c3p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px 26px 14px;
}

.login-modal-header-left[b-9be7lw5c3p] {
    display: flex;
    align-items: center;
    gap: 13px;
}

.login-icon-badge[b-9be7lw5c3p] {
    width: 43px;
    height: 43px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #fff;
    background: linear-gradient(135deg, #a60001, #730001);
    font-size: 1.05rem;
    box-shadow: 0 8px 20px rgba(143, 0, 1, .22);
}

.login-modal-title[b-9be7lw5c3p] {
    margin: 0;
    color: #263142;
    font-size: 1.15rem;
    font-weight: 800;
}

.login-modal-accent-line[b-9be7lw5c3p] {
    height: 3px;
    margin: 0 26px;
    border-radius: 999px;
    background: linear-gradient(90deg, #8f0001, #d4b265);
}

.login-modal-body[b-9be7lw5c3p] {
    padding: 20px 26px 25px;
}

.login-field-label[b-9be7lw5c3p] {
    display: block;
    margin: 0 0 7px;
    color: #6b7280;
    font-size: .82rem;
    font-weight: 600;
}

    .login-field-label:not(:first-of-type)[b-9be7lw5c3p] {
        margin-top: 17px;
    }

.login-input-wrap[b-9be7lw5c3p] {
    position: relative;
    display: flex;
    align-items: center;
}

.login-input[b-9be7lw5c3p] {
    width: 100%;
    height: 47px;
    padding: 0 45px 0 42px;
    border: 1px solid #e1e4e9;
    border-radius: 14px;
    outline: none;
    color: #202938;
    background: #fff;
    font-size: .9rem;
    transition: border-color .18s ease, box-shadow .18s ease;
}

    .login-input[b-9be7lw5c3p]::placeholder {
        color: #adb2ba;
    }

    .login-input:focus[b-9be7lw5c3p] {
        border-color: #a60001;
        box-shadow: 0 0 0 4px rgba(143, 0, 1, .08);
    }

.login-icon-leading[b-9be7lw5c3p] {
    position: absolute;
    left: 15px;
    z-index: 1;
    color: #8d95a1;
}

.login-password-toggle[b-9be7lw5c3p] {
    position: absolute;
    right: 13px;
    z-index: 1;
    padding: 3px;
    border: 0;
    background: transparent;
    color: #8d95a1;
    line-height: 1;
}

    .login-password-toggle:hover[b-9be7lw5c3p] {
        color: #8f0001;
    }

.login-row-between[b-9be7lw5c3p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 17px;
}

.login-remember[b-9be7lw5c3p] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #596170;
    font-size: .82rem;
    cursor: pointer;
}

    .login-remember input[b-9be7lw5c3p] {
        width: 15px;
        height: 15px;
        accent-color: #8f0001;
    }

.login-link[b-9be7lw5c3p] {
    color: #8f0001;
    font-size: .82rem;
    font-weight: 700;
    text-decoration: none;
}

    .login-link:hover[b-9be7lw5c3p] {
        color: #670001;
        text-decoration: underline;
    }

.login-submit-btn[b-9be7lw5c3p] {
    width: 100%;
    height: 48px;
    margin-top: 20px;
    padding: 0 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border: 0;
    border-radius: 13px;
    background: linear-gradient(90deg, #a70001, #8b0001);
    color: #fff;
    font-weight: 800;
    box-shadow: 0 12px 24px rgba(143, 0, 1, .18);
    transition: transform .18s ease, box-shadow .18s ease;
}

    .login-submit-btn:hover[b-9be7lw5c3p] {
        transform: translateY(-1px);
        box-shadow: 0 15px 28px rgba(143, 0, 1, .25);
    }

.login-or-divider[b-9be7lw5c3p] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 22px 0 15px;
    color: #a0a5ad;
    font-size: .8rem;
}

    .login-or-divider .line[b-9be7lw5c3p] {
        flex: 1;
        height: 1px;
        background: #e7e8eb;
    }

.login-register-text[b-9be7lw5c3p] {
    margin: 0;
    color: #8a9099;
    text-align: center;
    font-size: .82rem;
}

    .login-register-text a[b-9be7lw5c3p] {
        color: #8f0001;
        font-weight: 800;
        text-decoration: none;
    }

.login-error-message[b-9be7lw5c3p] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-bottom: 16px;
    padding: 11px 13px;
    border: 1px solid #f2c4c4;
    border-radius: 11px;
    background: #fff3f3;
    color: #8f0001;
    font-size: .82rem;
    font-weight: 600;
}

    .login-error-message i[b-9be7lw5c3p] {
        margin-top: 1px;
    }

@media (max-width: 575px) {
    .login-modal-header[b-9be7lw5c3p] {
        padding-left: 20px;
        padding-right: 20px;
    }

    .login-modal-accent-line[b-9be7lw5c3p] {
        margin-left: 20px;
        margin-right: 20px;
    }

    .login-modal-body[b-9be7lw5c3p] {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.login-line-btn[b-9be7lw5c3p] {
    width: 100%;
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 8px 18px;
    border: 1px solid #08a844;
    border-radius: 13px;
    background: #06c755;
    color: #fff;
    font-family: inherit;
    font-size: .9rem;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 10px 22px rgba(6, 199, 85, .16);
    transition:
        transform .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}

.login-line-btn:hover[b-9be7lw5c3p] {
    background: #05b94f;
    transform: translateY(-1px);
    box-shadow: 0 14px 26px rgba(6, 199, 85, .22);
}

.login-line-btn:focus-visible[b-9be7lw5c3p] {
    outline: 0;
    box-shadow:
        0 0 0 4px rgba(6, 199, 85, .18),
        0 14px 26px rgba(6, 199, 85, .22);
}

.login-line-logo[b-9be7lw5c3p] {
    width: 38px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: #fff;
    color: #06c755;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: -.02em;
}

.login-register-options[b-9be7lw5c3p] {
    margin-top: 17px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
}

.login-register-line-link[b-9be7lw5c3p] {
    color: #596170;
    font-size: .78rem;
    font-weight: 700;
    text-decoration: none;
}

.login-register-line-link:hover[b-9be7lw5c3p] {
    color: #06a94a;
    text-decoration: underline;
}
/* /Components/Features/Events/HomeLatestEvents.razor.rz.scp.css */
.home-latest-events[b-p687mt5i4m] {
    height: 100%;
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

.home-event-state[b-p687mt5i4m] {
    min-height: 250px;
    flex: 1 1 auto;
    padding: 30px 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: rgba(255, 255, 255, .84);
    text-align: center;
    font-weight: 700;
}

    .home-event-state > i[b-p687mt5i4m] {
        font-size: 1.45rem;
    }

.home-event-state-error[b-p687mt5i4m] {
    flex-wrap: wrap;
}

    .home-event-state-error > i[b-p687mt5i4m] {
        color: #fff;
        font-size: 1.55rem;
    }

    .home-event-state-error > div[b-p687mt5i4m] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .home-event-state-error strong[b-p687mt5i4m] {
        color: #fff;
        font-weight: 900;
    }

    .home-event-state-error span[b-p687mt5i4m] {
        color: rgba(255, 255, 255, .76);
        font-size: .88rem;
    }

.home-event-retry[b-p687mt5i4m] {
    min-height: 38px;
    padding: .45rem 1rem;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    background: #fff;
    color: #8f0001;
    font-family: inherit;
    font-size: .86rem;
    font-weight: 900;
    cursor: pointer;
    transition: background .18s ease, transform .18s ease;
}

    .home-event-retry:hover[b-p687mt5i4m] {
        background: #f7eeee;
        transform: translateY(-1px);
    }

.home-event-content[b-p687mt5i4m] {
    min-width: 0;
}

.home-event-title[b-p687mt5i4m] {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-height: 1.35;
}

.home-event-meta[b-p687mt5i4m] {
    display: block;
    margin-top: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-event-date-cross-month[b-p687mt5i4m] {
    padding-left: 7px;
    padding-right: 7px;
}

    .home-event-date-cross-month strong[b-p687mt5i4m] {
        font-size: .72rem !important;
    }

    .home-event-date-cross-month span[b-p687mt5i4m] {
        font-size: .65rem !important;
    }

@media (max-width: 575.98px) {

    .home-event-state[b-p687mt5i4m] {
        min-height: 220px;
    }

    .home-event-meta[b-p687mt5i4m] {
        white-space: normal;
    }
}
/* /Components/Features/Jobs/HomeLatestJobs.razor.rz.scp.css */
.home-latest-jobs[b-m223kr4ntu] {
    height: 100%;
}

.home-job-list[b-m223kr4ntu] {
    display: grid;
}

.home-job-item[b-m223kr4ntu] {
    min-height: 104px;
    padding: 15px 0;
    border-bottom: 1px solid #edf0f4;
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    color: inherit;
    text-decoration: none;
    transition: background .18s ease, transform .18s ease;
}

    .home-job-item:last-child[b-m223kr4ntu] {
        border-bottom: 0;
    }

    .home-job-item:hover[b-m223kr4ntu] {
        color: inherit;
        transform: translateX(3px);
    }

.home-job-logo[b-m223kr4ntu] {
    position: relative;
    width: 64px;
    height: 64px;
    overflow: hidden;
    border: 1px solid #edf0f4;
    border-radius: 15px;
    background: #f8fafc;
}

    .home-job-logo > img[b-m223kr4ntu] {
        position: absolute;
        inset: 0;
        z-index: 2;
        width: 100%;
        height: 100%;
        display: block;
        object-fit: contain;
        object-position: center;
        background: #fff;
        transition: transform .2s ease;
    }

.home-job-item:hover .home-job-logo > img[b-m223kr4ntu] {
    transform: scale(1.04);
}

.home-job-logo-fallback[b-m223kr4ntu] {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: grid;
    place-items: center;
    background: linear-gradient( 145deg, #fff4f4, #f7f8fa);
    color: #8f0001;
    font-size: 1.25rem;
}

.home-job-content[b-m223kr4ntu] {
    min-width: 0;
}

.home-job-title[b-m223kr4ntu] {
    display: -webkit-box;
    overflow: hidden;
    color: #172033;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.home-job-item:hover .home-job-title[b-m223kr4ntu] {
    color: #8f0001;
}

.home-job-company[b-m223kr4ntu] {
    display: block;
    margin-top: 3px;
    overflow: hidden;
    color: #69778a;
    font-size: .86rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-job-meta[b-m223kr4ntu] {
    margin-top: 8px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

.home-job-location[b-m223kr4ntu],
.home-job-category[b-m223kr4ntu] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 800;
}

.home-job-location[b-m223kr4ntu] {
    background: #f3f5f8;
    color: #69778a;
}

.home-job-category[b-m223kr4ntu] {
    max-width: 190px;
    overflow: hidden;
    background: #fff1f2;
    color: #8f0001;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.home-job-date[b-m223kr4ntu] {
    min-width: 96px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    color: #8f0001;
    font-size: .78rem;
    font-weight: 900;
    white-space: nowrap;
}

    .home-job-date > i[b-m223kr4ntu] {
        font-size: .75rem;
    }

.home-job-featured[b-m223kr4ntu] {
    width: 25px;
    height: 25px;
    border-radius: 50%;
    display: inline-grid;
    place-items: center;
    background: #fff1f2;
    color: #8f0001;
}

.home-jobs-state[b-m223kr4ntu] {
    min-height: 300px;
    padding: 28px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    color: #6b7280;
    text-align: center;
    font-weight: 700;
}

    .home-jobs-state > i[b-m223kr4ntu] {
        color: #8f0001;
        font-size: 1.6rem;
    }

    .home-jobs-state > div[b-m223kr4ntu] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .home-jobs-state strong[b-m223kr4ntu] {
        color: #172033;
        font-weight: 900;
    }

    .home-jobs-state span[b-m223kr4ntu] {
        color: #6b7280;
        font-size: .86rem;
    }

.home-jobs-state-error[b-m223kr4ntu] {
    flex-wrap: wrap;
}

    .home-jobs-state-error > i[b-m223kr4ntu],
    .home-jobs-state-error strong[b-m223kr4ntu] {
        color: #8f0001;
    }

.home-jobs-retry[b-m223kr4ntu] {
    min-height: 38px;
    padding: .45rem 1rem;
    border: 0;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-size: .84rem;
    font-weight: 800;
    cursor: pointer;
    transition: background .18s ease, transform .18s ease;
}

    .home-jobs-retry:hover[b-m223kr4ntu] {
        background: #650001;
        transform: translateY(-1px);
    }

@media (max-width: 575.98px) {
    .home-job-item[b-m223kr4ntu] {
        grid-template-columns: 56px minmax(0, 1fr);
    }

    .home-job-logo[b-m223kr4ntu] {
        width: 56px;
        height: 56px;
    }

    .home-job-date[b-m223kr4ntu] {
        grid-column: 2;
        min-width: 0;
        justify-content: flex-start;
    }

    .home-job-category[b-m223kr4ntu] {
        max-width: 150px;
    }

    .home-jobs-state[b-m223kr4ntu] {
        min-height: 240px;
    }
}
/* /Components/Features/Library/HomeLatestLibrary.razor.rz.scp.css */
.home-latest-library[b-7cq9h7obf1] {
    height: 100%;
}

.home-library-state[b-7cq9h7obf1] {
    min-height: 390px;
    padding: 36px 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #6b7280;
    text-align: center;
    font-weight: 700;
}

    .home-library-state > i[b-7cq9h7obf1] {
        color: #8f0001;
        font-size: 1.7rem;
    }

    .home-library-state > div[b-7cq9h7obf1] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .home-library-state strong[b-7cq9h7obf1] {
        color: #172033;
        font-weight: 900;
    }

    .home-library-state span[b-7cq9h7obf1] {
        color: #6b7280;
        font-size: .88rem;
    }

.home-library-state-error[b-7cq9h7obf1] {
    flex-wrap: wrap;
}

    .home-library-state-error > i[b-7cq9h7obf1],
    .home-library-state-error strong[b-7cq9h7obf1] {
        color: #8f0001;
    }

.home-library-retry[b-7cq9h7obf1] {
    min-height: 38px;
    padding: .45rem 1rem;
    border: 0;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-size: .86rem;
    font-weight: 800;
    cursor: pointer;
    transition: background .18s ease, transform .18s ease;
}

    .home-library-retry:hover[b-7cq9h7obf1] {
        background: #650001;
        transform: translateY(-1px);
    }

.home-library-meta[b-7cq9h7obf1] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
}

    .home-library-meta > i[b-7cq9h7obf1] {
        margin-left: auto;
        color: #8f0001;
        font-size: .95rem;
    }

.home-library-separator[b-7cq9h7obf1] {
    color: #b0b5bd;
}

.home-library-file-missing[b-7cq9h7obf1] {
    margin-left: auto;
    padding: 3px 8px;
    border-radius: 999px;
    background: #f1f3f5;
    color: #8a929f;
    font-size: .72rem;
    font-weight: 800;
}

.home-library-no-file[b-7cq9h7obf1] {
    cursor: pointer;
}

@media (max-width: 575.98px) {
    .home-library-state[b-7cq9h7obf1] {
        min-height: 300px;
        padding: 28px 20px;
    }

    .home-library-meta[b-7cq9h7obf1] {
        align-items: flex-start;
        flex-direction: column;
        gap: 2px;
    }

    .home-library-separator[b-7cq9h7obf1] {
        display: none;
    }

    .home-library-meta > i[b-7cq9h7obf1],
    .home-library-file-missing[b-7cq9h7obf1] {
        margin-left: 0;
    }
}
/* /Components/Features/Members/HomeGearOverview.razor.rz.scp.css */
.home-gear-overview[b-17djmw8wa8] {
    min-height: 520px;
}

.home-gear-summary[b-17djmw8wa8] {
    margin-top: 12px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

    .home-gear-summary > span[b-17djmw8wa8] {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 7px 11px;
        border-radius: 999px;
        background: #fff2f3;
        color: #6b7280;
        font-size: .82rem;
        font-weight: 700;
    }

    .home-gear-summary i[b-17djmw8wa8] {
        color: #8f0001;
    }

    .home-gear-summary strong[b-17djmw8wa8] {
        color: #8f0001;
        font-weight: 900;
    }

.home-gear-state[b-17djmw8wa8] {
    min-height: 340px;
    padding: 32px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #6b7280;
    text-align: center;
}

    .home-gear-state .spinner-border[b-17djmw8wa8] {
        color: #8f0001;
    }

    .home-gear-state > i[b-17djmw8wa8] {
        color: #8f0001;
        font-size: 2rem;
    }

    .home-gear-state > div[b-17djmw8wa8] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .home-gear-state strong[b-17djmw8wa8] {
        color: #172033;
        font-weight: 900;
    }

    .home-gear-state span[b-17djmw8wa8] {
        color: #6b7280;
        font-size: .88rem;
    }

.home-gear-state-error[b-17djmw8wa8] {
    flex-wrap: wrap;
}

    .home-gear-state-error > i[b-17djmw8wa8],
    .home-gear-state-error strong[b-17djmw8wa8] {
        color: #8f0001;
    }

.home-gear-retry[b-17djmw8wa8] {
    min-height: 40px;
    padding: .45rem 1rem;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-size: .86rem;
    font-weight: 900;
    cursor: pointer;
    transition: background .18s ease, transform .18s ease;
}

    .home-gear-retry:hover[b-17djmw8wa8] {
        background: #650001;
        transform: translateY(-1px);
    }

@media (max-width: 575.98px) {
    .home-gear-overview[b-17djmw8wa8] {
        min-height: 440px;
    }

    .home-gear-state[b-17djmw8wa8] {
        min-height: 280px;
    }
}
/* /Components/Features/Members/HomeMemberSummary.razor.rz.scp.css */
.home-member-summary-state[b-nwefidgasv] {
    min-height: 245px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    color: #6b7280;
    text-align: center;
}

    .home-member-summary-state .spinner-border[b-nwefidgasv] {
        color: #8f0001;
    }

    .home-member-summary-state > i[b-nwefidgasv] {
        color: #8f0001;
        font-size: 1.8rem;
    }

    .home-member-summary-state > div[b-nwefidgasv] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .home-member-summary-state strong[b-nwefidgasv] {
        font-weight: 900;
    }

    .home-member-summary-state span[b-nwefidgasv] {
        color: #6b7280;
        font-size: .88rem;
    }

.home-member-summary-error strong[b-nwefidgasv] {
    color: #8f0001;
}

.home-member-summary-retry[b-nwefidgasv] {
    min-height: 40px;
    padding: .45rem 1rem;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-size: .86rem;
    font-weight: 900;
    cursor: pointer;
    transition: background .18s ease, transform .18s ease;
}

    .home-member-summary-retry:hover[b-nwefidgasv] {
        background: #650001;
        transform: translateY(-1px);
    }

.counter-card-pending strong[b-nwefidgasv] {
    font-size: .88rem;
    opacity: .82;
}

@media (max-width: 767.98px) {
    .home-member-summary-state[b-nwefidgasv] {
        min-height: 220px;
        padding: 26px 20px;
        flex-wrap: wrap;
    }
}
/* /Components/Features/Members/MemberDirectory.razor.rz.scp.css */
/* =========================================================
   CMUEAA TelerikGrid Hybrid Directory - Red Theme
   ========================================================= */

.cmueaa-directory-grid-wrap[b-zpbt5hlxta] {
    overflow-x: auto;
    border-radius: 22px;
}

.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid {
    border: 0 !important;
    background: transparent !important;
    font-family: 'Noto Sans Thai', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    min-width: 980px;
}

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-header {
        background: transparent !important;
        border: 0 !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-header-wrap {
        border: 0 !important;
        background: transparent !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-header .k-table-th {
        border: 0 !important;
        background: transparent !important;
        color: var(--muted) !important;
        font-size: .85rem !important;
        font-weight: 900 !important;
        padding: 0 18px 8px !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-column-title {
        font-weight: 900 !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-content {
        background: transparent !important;
        overflow: auto !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-table {
        border-collapse: separate !important;
        border-spacing: 0 10px !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-master-row {
        background: transparent !important;
        box-shadow: 0 8px 24px rgba(23,32,51,.05);
    }

        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-master-row .k-table-td {
            border: 0 !important;
            background: #fff !important;
            padding: 17px 18px !important;
            vertical-align: middle !important;
            color: var(--text);
        }

            .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-master-row .k-table-td:first-child {
                border-radius: 18px 0 0 18px;
            }

            .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-master-row .k-table-td:last-child {
                border-radius: 0 18px 18px 0;
            }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-pager {
        border: 0 !important;
        background: transparent !important;
        padding: 18px 0 0 !important;
        color: var(--muted);
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-pager-numbers .k-button,
    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-pager-nav {
        border-radius: 999px !important;
        font-weight: 800 !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-selected,
    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-button-solid-primary {
        background-color: var(--maroon) !important;
        border-color: var(--maroon) !important;
        color: #fff !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-filter,
    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-header-column-menu {
        color: var(--maroon) !important;
    }

    /* Grouping header */
    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header {
        border: 1px dashed rgba(143, 0, 1, .22) !important;
        background: #fff7f8 !important;
        color: var(--maroon) !important;
        border-radius: 18px !important;
        margin-bottom: 12px;
        padding: 12px 14px !important;
        font-weight: 900;
    }

        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-grouping-drop-container {
            color: var(--maroon) !important;
            font-weight: 900;
        }

        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-chip,
        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-chip-solid-base,
        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-button,
        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-group-indicator {
            border-radius: 999px !important;
            border: 1px solid rgba(143, 0, 1, .18) !important;
            background: #fff !important;
            color: var(--maroon) !important;
            font-weight: 900 !important;
            box-shadow: 0 6px 14px rgba(143, 0, 1, .055) !important;
        }

        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-icon-button,
        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-button-icon {
            color: var(--maroon) !important;
        }

        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-chip:hover,
        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-button:hover,
        .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-header .k-group-indicator:hover {
            background: var(--maroon-soft) !important;
            border-color: rgba(143, 0, 1, .28) !important;
        }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grouping-row .k-table-td {
        background: #fff2f3 !important;
        color: var(--maroon) !important;
        font-weight: 900 !important;
        border: 0 !important;
        border-radius: 16px !important;
        padding: 12px 18px !important;
    }

/* Locked action column */
.cmueaa-directory-grid-wrap[b-zpbt5hlxta] {
    overflow-x: visible;
    border-radius: 22px;
}

.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid {
    min-width: 1120px;
}

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-content-locked,
    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-header-locked {
        background: transparent !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-header-sticky,
    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-content-sticky,
    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-table-th.k-grid-header-sticky,
    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-table-td.k-grid-content-sticky {
        background: #fff !important;
        border-left: 0 !important;
        box-shadow: none !important;
        z-index: 4;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-table-th.k-grid-header-sticky {
        background: #fff !important;
        color: var(--muted) !important;
        font-weight: 900 !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-master-row .k-table-td.k-grid-content-sticky {
        background: #fff !important;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-master-row:hover .k-table-td.k-grid-content-sticky {
        box-shadow: inset 1px 0 0 rgba(143, 0, 1, .055) !important;
    }

.cmueaa-action-cell[b-zpbt5hlxta] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 118px;
}

    .cmueaa-action-cell .btn[b-zpbt5hlxta] {
        white-space: nowrap;
        min-width: 92px;
    }

.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-group-cell,
.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-hierarchy-cell {
    width: 28px !important;
    min-width: 28px !important;
}

/* =========================================================
   Directory Telerik MultiSelect
   ========================================================= */

.filter-board[b-zpbt5hlxta]  .directory-multiselect {
    width: 100%;
    font-family: 'Noto Sans Thai', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

    .filter-board[b-zpbt5hlxta]  .directory-multiselect.k-multiselect,
    .filter-board[b-zpbt5hlxta]  .directory-multiselect .k-input-inner,
    .filter-board[b-zpbt5hlxta]  .directory-multiselect .k-input-values {
        min-height: 46px;
    }

    .filter-board[b-zpbt5hlxta]  .directory-multiselect.k-input,
    .filter-board[b-zpbt5hlxta]  .directory-multiselect.k-picker,
    .filter-board[b-zpbt5hlxta]  .directory-multiselect.k-multiselect {
        border-radius: 16px !important;
        border-color: #d9e4f0 !important;
        background: #fff !important;
    }

    .filter-board[b-zpbt5hlxta]  .directory-multiselect.k-focus,
    .filter-board[b-zpbt5hlxta]  .directory-multiselect:focus-within {
        border-color: rgba(143, 0, 1, .42) !important;
        box-shadow: 0 0 0 .25rem rgba(143, 0, 1, .08) !important;
    }

    .filter-board[b-zpbt5hlxta]  .directory-multiselect .k-chip {
        border-radius: 999px;
        background: var(--maroon-soft);
        color: var(--maroon);
        border-color: rgba(143, 0, 1, .12);
        font-weight: 800;
    }

        .filter-board[b-zpbt5hlxta]  .directory-multiselect .k-chip .k-chip-content {
            font-weight: 900;
        }

        .filter-board[b-zpbt5hlxta]  .directory-multiselect .k-chip .k-chip-actions,
        .filter-board[b-zpbt5hlxta]  .directory-multiselect .k-chip .k-chip-icon,
        .filter-board[b-zpbt5hlxta]  .directory-multiselect .k-chip .k-icon {
            color: var(--maroon) !important;
        }

    .filter-board[b-zpbt5hlxta]  .directory-multiselect .k-input-values {
        padding: 5px 10px;
    }

.directory-multiselect-actions[b-zpbt5hlxta] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 10px;
    border-bottom-color: rgba(143, 0, 1, .12);
    background: #fff8f9;
}

    .directory-multiselect-actions button[b-zpbt5hlxta] {
        border: 1px solid rgba(143, 0, 1, .16);
        background: #fff;
        color: var(--maroon);
        border-radius: 999px;
        padding: 4px 10px;
        font-size: .78rem;
        font-weight: 900;
    }

        .directory-multiselect-actions button:hover[b-zpbt5hlxta] {
            background: var(--maroon);
            border-color: var(--maroon);
            color: #fff;
        }

/* =========================================================
   Directory Export Toolbar
   ========================================================= */

.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-toolbar {
    border: 0 !important;
    background: transparent !important;
    padding: 0 0 14px !important;
}

.directory-export-toolbar[b-zpbt5hlxta] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 14px 16px;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255, 248, 249, .98), rgba(255, 242, 243, .88));
    border: 1px solid rgba(143, 0, 1, .08);
    box-shadow: 0 10px 24px rgba(143, 0, 1, .055);
}

.directory-export-caption[b-zpbt5hlxta] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--maroon);
    font-weight: 900;
    min-width: 0;
}

    .directory-export-caption i[b-zpbt5hlxta] {
        font-size: 1.05rem;
    }

    .directory-export-caption small[b-zpbt5hlxta] {
        color: var(--muted);
        font-weight: 800;
        margin-left: 4px;
    }

.directory-export-actions[b-zpbt5hlxta] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-button.directory-export-btn {
    min-height: 38px;
    border-radius: 999px !important;
    padding: 0 14px !important;
    font-family: 'Noto Sans Thai', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-weight: 900 !important;
    border-width: 1px !important;
    box-shadow: 0 8px 18px rgba(143, 0, 1, .06);
    transition: .18s ease;
}

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-button.directory-export-btn:not(.k-disabled):hover {
        transform: translateY(-1px);
    }

.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-button.directory-export-excel {
    color: #0f7a3b !important;
    background: #f0fff6 !important;
    border-color: rgba(15, 122, 59, .22) !important;
}

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-button.directory-export-excel:not(.k-disabled):hover {
        color: #fff !important;
        background: #0f7a3b !important;
        border-color: #0f7a3b !important;
    }

.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-button.directory-export-csv {
    color: var(--maroon) !important;
    background: #fff !important;
    border-color: rgba(143, 0, 1, .22) !important;
}

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-button.directory-export-csv:not(.k-disabled):hover {
        color: #fff !important;
        background: var(--maroon) !important;
        border-color: var(--maroon) !important;
    }

.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-button.directory-export-btn.k-disabled,
.cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-button.directory-export-btn:disabled {
    opacity: .45;
    box-shadow: none;
    cursor: not-allowed;
}

/* =========================================================
   Empty Grid
   ========================================================= */

.cmueaa-grid-empty[b-zpbt5hlxta] {
    min-height: 220px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 8px;
    color: var(--muted);
    text-align: center;
    padding: 38px 16px;
}

    .cmueaa-grid-empty i[b-zpbt5hlxta] {
        font-size: 2.2rem;
        color: var(--maroon);
    }

    .cmueaa-grid-empty div[b-zpbt5hlxta] {
        color: var(--ink);
        font-weight: 900;
    }

    .cmueaa-grid-empty small[b-zpbt5hlxta] {
        color: var(--muted);
        font-weight: 700;
    }

/* =========================================================
   Avatar
   ========================================================= */

.alumni-avatar-shell[b-zpbt5hlxta] {
    width: 50px;
    height: 50px;
    display: inline-grid;
    place-items: center;
}

.alumni-avatar-img[b-zpbt5hlxta] {
    width: 50px;
    height: 50px;
    display: block;
    object-fit: cover;
    border-radius: 50%;
    border: 3px solid #fff;
    box-shadow: 0 8px 18px rgba(143, 0, 1, .16);
    background: #fff;
}

.alumni-avatar-fallback[b-zpbt5hlxta] {
    width: 50px;
    height: 50px;
    display: inline-grid;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: radial-gradient(circle at 30% 20%, rgba(255,255,255,.28), transparent 30%), linear-gradient(135deg, var(--maroon), var(--maroon-dark));
    border: 3px solid #fff;
    box-shadow: 0 8px 18px rgba(23,32,51,.12);
    font-weight: 900;
    letter-spacing: -.04em;
}

.alumni-avatar-hidden[b-zpbt5hlxta] {
    display: none;
}

/* =========================================================
   Directory Fullscreen Mode
   ========================================================= */

.directory-title-actions[b-zpbt5hlxta] {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    flex: 0 0 auto;
}

.directory-fullscreen-btn[b-zpbt5hlxta] {
    min-height: 42px;
    padding: .58rem 1rem;
    box-shadow: 0 10px 22px rgba(23,32,51,.06);
}

.directory-fullscreen-backdrop[b-zpbt5hlxta] {
    position: fixed;
    inset: 0;
    z-index: 2400;
    background: rgba(35, 7, 10, .42);
    backdrop-filter: blur(8px);
}

.directory-card.directory-fullscreen[b-zpbt5hlxta] {
    position: fixed;
    inset: 18px;
    z-index: 2500;
    max-width: none;
    width: auto;
    height: auto;
    overflow: auto;
    border-radius: 28px;
    padding: 30px;
    box-shadow: 0 28px 90px rgba(35, 7, 10, .28);
    animation: directoryFullscreenIn-b-zpbt5hlxta .18s ease-out;
}

    .directory-card.directory-fullscreen .directory-title-row[b-zpbt5hlxta] {
        position: sticky;
        top: -30px;
        z-index: 6;
        background: rgba(255,255,255,.96);
        backdrop-filter: blur(14px);
        margin: -30px -30px 22px;
        padding: 28px 30px 18px;
        border-bottom: 1px solid rgba(23,32,51,.07);
        border-radius: 28px 28px 0 0;
    }

    .directory-card.directory-fullscreen .filter-board[b-zpbt5hlxta] {
        position: relative;
        top: auto;
        z-index: 1;
        box-shadow: none;
    }

    .directory-card.directory-fullscreen .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid {
        min-width: 1080px;
    }

        .directory-card.directory-fullscreen .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-content {
            max-height: calc(100vh - 390px);
            overflow: auto !important;
        }

        .directory-card.directory-fullscreen .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-header-sticky,
        .directory-card.directory-fullscreen .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-grid-content-sticky,
        .directory-card.directory-fullscreen .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-table-th.k-grid-header-sticky,
        .directory-card.directory-fullscreen .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid .k-table-td.k-grid-content-sticky {
            z-index: 8;
        }

@keyframes directoryFullscreenIn-b-zpbt5hlxta {
    from {
        opacity: 0;
        transform: translateY(12px) scale(.985);
    }

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

/* =========================================================
   Member Profile Modal - Wide Detail Layout
   ========================================================= */

.member-profile-overlay[b-zpbt5hlxta] {
    z-index: 3100 !important;
}

.member-profile-backdrop[b-zpbt5hlxta] {
    z-index: 3090 !important;
    background: rgba(35, 7, 10, .58) !important;
    backdrop-filter: blur(4px);
}

.member-profile-overlay .modal-dialog[b-zpbt5hlxta] {
    max-height: calc(100vh - 48px);
}

.member-profile-overlay .modal-content[b-zpbt5hlxta] {
    max-height: calc(100vh - 48px);
}

.member-profile-overlay .modal-body[b-zpbt5hlxta] {
    overflow: auto;
}

.member-profile-dialog[b-zpbt5hlxta] {
    max-width: min(1180px, calc(100vw - 48px)) !important;
}

.member-profile-modal[b-zpbt5hlxta] {
    border: 0;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 28px 90px rgba(35, 7, 10, .34);
}

    .member-profile-modal .modal-header[b-zpbt5hlxta] {
        min-height: 72px;
        padding: 20px 28px;
        background: radial-gradient(circle at 92% 8%, rgba(217, 174, 82, .18), transparent 28%), linear-gradient(135deg, #b00618, #8F0001 48%, #23070a) !important;
    }

    .member-profile-modal .modal-title[b-zpbt5hlxta] {
        font-weight: 900;
        letter-spacing: -.02em;
    }

.member-profile-body[b-zpbt5hlxta] {
    max-height: calc(100vh - 150px);
    overflow: auto;
    padding: 30px;
    background: radial-gradient(circle at 12% 8%, rgba(143, 0, 1, .045), transparent 28%), #fff;
}

.member-profile-hero[b-zpbt5hlxta] {
    display: grid;
    grid-template-columns: 230px minmax(0, 1fr);
    gap: 30px;
    align-items: center;
    margin-bottom: 26px;
}

.member-profile-photo-col[b-zpbt5hlxta] {
    display: flex;
    justify-content: center;
}

.profile-avatar-shell[b-zpbt5hlxta] {
    width: 170px;
    height: 170px;
    display: grid;
    place-items: center;
    margin: 0 auto;
}

.profile-avatar-img[b-zpbt5hlxta] {
    width: 170px;
    height: 170px;
    display: block;
    object-fit: cover;
    border-radius: 50%;
    border: 5px solid #fff;
    box-shadow: 0 12px 34px rgba(143, 0, 1, .18);
    background: #fff;
}

.profile-avatar-large[b-zpbt5hlxta] {
    width: 170px;
    height: 170px;
    font-size: 3.2rem;
    margin: 0 auto;
    border-width: 5px;
    box-shadow: 0 12px 34px rgba(23,32,51,.15);
}

.member-profile-title-row[b-zpbt5hlxta] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    min-width: 0;
}

    .member-profile-title-row h3[b-zpbt5hlxta] {
        margin: 0;
        color: var(--ink);
        font-size: clamp(1.8rem, 3vw, 2.55rem);
        font-weight: 950;
        line-height: 1.1;
        letter-spacing: -.04em;
        overflow-wrap: anywhere;
    }

    .member-profile-title-row p[b-zpbt5hlxta] {
        margin: 8px 0 0;
        color: var(--muted);
        font-weight: 800;
        overflow-wrap: anywhere;
    }

.member-profile-code[b-zpbt5hlxta] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex: 0 0 auto;
    border-radius: 999px;
    padding: 7px 12px;
    background: var(--maroon-soft);
    color: var(--maroon);
    font-weight: 900;
    font-size: .9rem;
}

.member-profile-chip-row[b-zpbt5hlxta] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

    .member-profile-chip-row span[b-zpbt5hlxta] {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        max-width: 100%;
        border-radius: 999px;
        padding: 8px 12px;
        background: #fff7f8;
        color: #4b1f25;
        border: 1px solid rgba(143, 0, 1, .12);
        font-weight: 850;
        overflow-wrap: anywhere;
    }

.member-detail-section[b-zpbt5hlxta] {
    margin-top: 20px;
}

.member-detail-section-title[b-zpbt5hlxta] {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 12px;
    color: var(--maroon);
    font-weight: 950;
    letter-spacing: -.02em;
}

.member-detail-grid[b-zpbt5hlxta] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.member-detail-item[b-zpbt5hlxta] {
    min-width: 0;
    border-radius: 18px;
    padding: 15px 16px;
    background: #fff8f9;
    border: 1px solid rgba(143, 0, 1, .07);
}

    .member-detail-item span[b-zpbt5hlxta] {
        display: block;
        margin-bottom: 6px;
        color: #64748b;
        font-size: .86rem;
        font-weight: 900;
    }

    .member-detail-item strong[b-zpbt5hlxta] {
        display: block;
        color: var(--ink);
        font-size: 1rem;
        line-height: 1.45;
        font-weight: 900;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

.member-detail-wide[b-zpbt5hlxta] {
    grid-column: span 2;
}

.member-email[b-zpbt5hlxta] {
    color: var(--maroon) !important;
    font-size: .96rem !important;
    line-height: 1.45 !important;
}

.member-detail-note[b-zpbt5hlxta] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 20px;
    border-radius: 18px;
    padding: 13px 15px;
    background: var(--maroon-soft);
    color: #6c2b33;
    font-weight: 750;
}

    .member-detail-note i[b-zpbt5hlxta] {
        color: var(--maroon);
        margin-top: 2px;
    }

.member-profile-body .profile-avatar-shell[b-zpbt5hlxta],
.member-profile-body .profile-avatar-img[b-zpbt5hlxta],
.member-profile-body .profile-avatar-large[b-zpbt5hlxta] {
    width: 190px;
    height: 190px;
}

.member-profile-body .profile-avatar-large[b-zpbt5hlxta] {
    font-size: 3.4rem;
}

/* Responsive */
@media (max-width: 991.98px) {
    .member-profile-dialog[b-zpbt5hlxta] {
        max-width: calc(100vw - 24px) !important;
    }

    .member-profile-body[b-zpbt5hlxta] {
        max-height: calc(100vh - 120px);
        padding: 22px;
    }

    .member-profile-hero[b-zpbt5hlxta] {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .member-profile-title-row[b-zpbt5hlxta] {
        align-items: center;
        flex-direction: column;
    }

    .member-profile-chip-row[b-zpbt5hlxta] {
        justify-content: center;
    }

    .member-detail-grid[b-zpbt5hlxta] {
        grid-template-columns: 1fr;
    }

    .member-detail-wide[b-zpbt5hlxta] {
        grid-column: auto;
    }
}

@media (max-width: 767.98px) {
    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .cmueaa-directory-grid {
        min-width: 920px;
    }

    .directory-title-actions[b-zpbt5hlxta] {
        width: 100%;
        justify-content: space-between;
    }

    .directory-card.directory-fullscreen[b-zpbt5hlxta] {
        inset: 8px;
        padding: 18px;
        border-radius: 22px;
    }

        .directory-card.directory-fullscreen .directory-title-row[b-zpbt5hlxta] {
            top: -18px;
            margin: -18px -18px 18px;
            padding: 18px;
            border-radius: 22px 22px 0 0;
        }

        .directory-card.directory-fullscreen .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-grid-content {
            max-height: calc(100vh - 430px);
        }

    .profile-avatar-shell[b-zpbt5hlxta],
    .profile-avatar-img[b-zpbt5hlxta],
    .profile-avatar-large[b-zpbt5hlxta] {
        width: 140px;
        height: 140px;
    }
}

@media (max-width: 575.98px) {
    .directory-export-toolbar[b-zpbt5hlxta] {
        align-items: flex-start;
        flex-direction: column;
    }

    .directory-export-actions[b-zpbt5hlxta] {
        width: 100%;
    }

    .cmueaa-directory-grid-wrap[b-zpbt5hlxta]  .k-button.directory-export-btn {
        flex: 1 1 auto;
    }

    .member-profile-modal .modal-header[b-zpbt5hlxta] {
        padding: 16px 18px;
    }

    .member-profile-body[b-zpbt5hlxta] {
        padding: 18px;
    }

        .member-profile-body .profile-avatar-shell[b-zpbt5hlxta],
        .member-profile-body .profile-avatar-img[b-zpbt5hlxta],
        .member-profile-body .profile-avatar-large[b-zpbt5hlxta] {
            width: 145px;
            height: 145px;
        }

        .member-profile-body .profile-avatar-large[b-zpbt5hlxta] {
            font-size: 2.6rem;
        }
}

/* =========================================================
   Member Directory Search Button
   สีแดงเลือดหมูตามหน้าเว็บต้นแบบ
   ========================================================= */

#directory .directory-search-btn[b-zpbt5hlxta] {
    min-width: 168px;
    min-height: 42px;
    padding: 0 28px !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 1px solid #9f000b !important;
    border-radius: 999px !important;
    background: linear-gradient( 180deg, #ad0713 0%, #980008 100% ) !important;
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-family: 'Noto Sans Thai', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-weight: 800 !important;
    line-height: 1;
    box-shadow: 0 11px 24px rgba(143, 0, 1, .22), inset 0 1px 0 rgba(255, 255, 255, .12) !important;
    opacity: 1 !important;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

    #directory .directory-search-btn i[b-zpbt5hlxta] {
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
        font-size: 1rem;
        line-height: 1;
    }

    /* Hover เฉพาะตอนที่ไม่ได้ค้นหา */
    #directory .directory-search-btn:not(:disabled):hover[b-zpbt5hlxta] {
        background: linear-gradient( 180deg, #980008 0%, #7f0001 100% ) !important;
        border-color: #7f0001 !important;
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
        box-shadow: 0 14px 28px rgba(143, 0, 1, .28), inset 0 1px 0 rgba(255, 255, 255, .12) !important;
        transform: translateY(-1px);
    }

    /* Focus */
    #directory .directory-search-btn:focus[b-zpbt5hlxta],
    #directory .directory-search-btn:focus-visible[b-zpbt5hlxta] {
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
        border-color: #8f0001 !important;
        box-shadow: 0 0 0 .23rem rgba(143, 0, 1, .15), 0 11px 24px rgba(143, 0, 1, .22) !important;
    }

    /* สถานะกำลังค้นหา */
    #directory .directory-search-btn:disabled[b-zpbt5hlxta],
    #directory .directory-search-btn.disabled[b-zpbt5hlxta] {
        background: linear-gradient( 180deg, #9f0711 0%, #860001 100% ) !important;
        border-color: #860001 !important;
        color: #fff !important;
        -webkit-text-fill-color: #fff !important;
        opacity: 1 !important;
        filter: none !important;
        cursor: wait !important;
        transform: none !important;
        box-shadow: 0 9px 20px rgba(143, 0, 1, .18), inset 0 1px 0 rgba(255, 255, 255, .10) !important;
    }

        #directory .directory-search-btn:disabled span[b-zpbt5hlxta],
        #directory .directory-search-btn.disabled span[b-zpbt5hlxta] {
            color: #fff !important;
            -webkit-text-fill-color: #fff !important;
            opacity: 1 !important;
        }

    /* Spinner สีขาว */
    #directory .directory-search-btn .spinner-border[b-zpbt5hlxta] {
        width: 1rem;
        height: 1rem;
        flex: 0 0 auto;
        color: #fff !important;
        border-width: .14em;
        opacity: 1 !important;
    }

/* =========================================================
   Full Member Profile
   ========================================================= */

.member-profile-loading[b-zpbt5hlxta],
.member-profile-error[b-zpbt5hlxta] {
    min-height: 360px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    border-radius: 22px;
    text-align: left;
}

.member-profile-loading[b-zpbt5hlxta] {
    color: var(--maroon);
}

.member-profile-loading .spinner-border[b-zpbt5hlxta] {
    width: 2.5rem;
    height: 2.5rem;
}

.member-profile-loading strong[b-zpbt5hlxta],
.member-profile-error strong[b-zpbt5hlxta] {
    display: block;
    font-size: 1.05rem;
    font-weight: 900;
}

.member-profile-loading span[b-zpbt5hlxta],
.member-profile-error span[b-zpbt5hlxta] {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-weight: 700;
}

.member-profile-error[b-zpbt5hlxta] {
    min-height: 220px;
    padding: 24px;
    background: #fff1f2;
    color: #a90008;
}

.member-profile-error > i[b-zpbt5hlxta] {
    font-size: 2rem;
}

.member-detail-full[b-zpbt5hlxta] {
    grid-column: 1 / -1;
}

.member-multiline[b-zpbt5hlxta] {
    white-space: pre-line !important;
}

.member-detail-link[b-zpbt5hlxta] {
    display: block;
    color: var(--maroon);
    font-weight: 900;
    line-height: 1.45;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.member-detail-link:hover[b-zpbt5hlxta] {
    color: #5f0001;
    text-decoration: underline;
}

.member-certificate-list[b-zpbt5hlxta] {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.member-certificate-list span[b-zpbt5hlxta] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 7px 11px;
    border: 1px solid rgba(15, 122, 59, .18);
    border-radius: 999px;
    background: #f0fff6;
    color: #0f7a3b;
    font-size: .86rem;
    font-weight: 900;
}

.member-office-list[b-zpbt5hlxta] {
    display: grid;
    gap: 16px;
}

.member-office-card[b-zpbt5hlxta] {
    padding: 20px;
    border: 1px solid rgba(143, 0, 1, .10);
    border-radius: 22px;
    background: linear-gradient(180deg, #fff, #fffafb);
    box-shadow: 0 10px 24px rgba(23, 32, 51, .045);
}

.member-office-card header[b-zpbt5hlxta] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(143, 0, 1, .08);
}

.member-office-card h4[b-zpbt5hlxta] {
    margin: 8px 0 3px;
    color: var(--ink);
    font-size: 1.08rem;
    font-weight: 900;
}

.member-office-card p[b-zpbt5hlxta] {
    margin: 0;
    color: var(--muted);
    font-weight: 750;
}

.member-office-type[b-zpbt5hlxta] {
    display: inline-flex;
    padding: 5px 10px;
    border-radius: 999px;
    background: var(--maroon-soft);
    color: var(--maroon);
    font-size: .75rem;
    font-weight: 900;
}

.member-office-grid[b-zpbt5hlxta] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.member-office-grid > div[b-zpbt5hlxta] {
    min-width: 0;
    padding: 13px 14px;
    border-radius: 16px;
    background: #f8fafc;
}

.member-office-grid span[b-zpbt5hlxta] {
    display: block;
    margin-bottom: 5px;
    color: #64748b;
    font-size: .8rem;
    font-weight: 900;
}

.member-office-grid strong[b-zpbt5hlxta] {
    display: block;
    color: var(--ink);
    line-height: 1.5;
    font-weight: 850;
    white-space: pre-line;
    overflow-wrap: anywhere;
}

.member-profile-empty[b-zpbt5hlxta] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 110px;
    border: 1px dashed rgba(143, 0, 1, .20);
    border-radius: 18px;
    background: #fffafb;
    color: var(--muted);
    font-weight: 800;
}

.member-profile-empty i[b-zpbt5hlxta] {
    color: var(--maroon);
    font-size: 1.25rem;
}

@media (max-width: 991.98px) {
    .member-office-grid[b-zpbt5hlxta] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Features/News/HomeLatestNews.razor.rz.scp.css */
.home-latest-news[b-xrpv0g3j6x] {
    height: 100%;
}

.home-news-state[b-xrpv0g3j6x] {
    min-height: 286px;
    padding: 30px 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #6b7280;
    text-align: center;
    font-weight: 700;
}

.home-news-state-error[b-xrpv0g3j6x] {
    flex-wrap: wrap;
    color: #8f0001;
}

.home-news-state-error > i[b-xrpv0g3j6x] {
    font-size: 1.55rem;
}

.home-news-state-error > div[b-xrpv0g3j6x] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.home-news-state-error strong[b-xrpv0g3j6x] {
    color: #8f0001;
    font-weight: 900;
}

.home-news-state-error span[b-xrpv0g3j6x] {
    color: #6b7280;
    font-size: .88rem;
}

.home-news-retry[b-xrpv0g3j6x] {
    min-height: 38px;
    padding: .45rem 1rem;
    border: 0;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-size: .86rem;
    font-weight: 800;
    cursor: pointer;
    transition:
        background .18s ease,
        transform .18s ease;
}

.home-news-retry:hover[b-xrpv0g3j6x] {
    background: #650001;
    transform: translateY(-1px);
}

.home-news-image-fallback[b-xrpv0g3j6x] {
    width: 132px;
    min-width: 132px;
    height: 92px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 14px;
    background:
        linear-gradient(
            135deg,
            #a70001,
            #650001);
    color: #fff;
    font-size: 1.45rem;
}

@media (max-width: 575.98px) {
    .home-news-state[b-xrpv0g3j6x] {
        min-height: 220px;
    }

    .home-news-image-fallback[b-xrpv0g3j6x] {
        width: 104px;
        min-width: 104px;
        height: 82px;
    }
}
/* /Components/Features/Photos/HomeLatestPhotos.razor.rz.scp.css */
.entaneer-photo-section[b-j4mdidq3nx] {
    padding: 64px 0 72px;
    background: #f7f7f5;
}

.entaneer-photo-head[b-j4mdidq3nx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 28px;
    gap: 18px;
    flex-wrap: wrap;
}

.entaneer-photo-head-text .mini-heading[b-j4mdidq3nx] {
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #8f0001;
    margin-bottom: 4px;
}

.entaneer-photo-head h2[b-j4mdidq3nx] {
    margin: 0;
    color: #111827;
    font-size: 1.6rem;
    font-weight: 800;
    letter-spacing: -.02em;
}

.entaneer-photo-more[b-j4mdidq3nx] {
    padding: 8px 22px;
    border: 0;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-size: .875rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: background .18s ease, transform .18s ease;
}

    .entaneer-photo-more:hover[b-j4mdidq3nx] {
        background: #6d0001;
        color: #fff;
        transform: translateY(-1px);
    }

.entaneer-photo-grid[b-j4mdidq3nx] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.entaneer-photo-card[b-j4mdidq3nx] {
    position: relative;
    display: block;
    overflow: hidden;
    min-width: 0;
    aspect-ratio: 4 / 3;
    border-radius: 4px;
    background: #d1d5db;
    color: #fff;
    text-decoration: none;
    isolation: isolate;
}

.entaneer-photo-thumb[b-j4mdidq3nx],
.home-photo-cover-fallback[b-j4mdidq3nx] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.entaneer-photo-thumb[b-j4mdidq3nx] {
    display: block;
    object-fit: cover;
    transition: transform .45s ease;
}

.entaneer-photo-card:hover .entaneer-photo-thumb[b-j4mdidq3nx] {
    transform: scale(1.05);
}

.home-photo-cover-fallback[b-j4mdidq3nx] {
    display: grid;
    place-items: center;
    background: radial-gradient( circle at 50% 35%, #fff 0, #f8e8e9 55%, #ecd0d2 100%);
    color: rgba(143, 0, 1, .78);
    font-size: 3rem;
}

.home-photo-cover-fallback-hidden[b-j4mdidq3nx] {
    display: none;
}

.entaneer-photo-date[b-j4mdidq3nx] {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 3;
    padding: 3px 10px;
    border-radius: 999px;
    background: rgba(143, 0, 1, .9);
    color: #fff;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .02em;
    pointer-events: none;
}

.entaneer-photo-caption[b-j4mdidq3nx] {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3;
    padding: 38px 14px 14px;
    overflow: hidden;
    background: linear-gradient( to top, rgba(0, 0, 0, .94) 0%, rgba(0, 0, 0, .58) 48%, rgba(0, 0, 0, 0) 100%);
    color: #fff;
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
}

.home-photo-hover[b-j4mdidq3nx] {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 15px;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 999px;
    background: rgba(143, 0, 1, .9);
    color: #fff;
    box-shadow: 0 10px 26px rgba(0, 0, 0, .25);
    font-size: .86rem;
    font-weight: 800;
    opacity: 0;
    transform: translate(-50%, -40%);
    transition: opacity .22s ease, transform .22s ease;
    pointer-events: none;
}

.entaneer-photo-card:hover .home-photo-hover[b-j4mdidq3nx] {
    opacity: 1;
    transform: translate(-50%, -50%);
}

/* Loading / Error / Empty */

.home-photo-state[b-j4mdidq3nx] {
    min-height: 360px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border: 1px dashed rgba(143, 0, 1, .18);
    border-radius: 18px;
    background: #fff;
    color: #6b7280;
    text-align: center;
    font-weight: 700;
}

    .home-photo-state > i[b-j4mdidq3nx] {
        color: #8f0001;
        font-size: 1.6rem;
    }

.home-photo-state-error[b-j4mdidq3nx],
.home-photo-state-empty[b-j4mdidq3nx] {
    flex-wrap: wrap;
}

    .home-photo-state-error > div[b-j4mdidq3nx],
    .home-photo-state-empty > div[b-j4mdidq3nx] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .home-photo-state-error strong[b-j4mdidq3nx],
    .home-photo-state-empty strong[b-j4mdidq3nx] {
        color: #8f0001;
        font-weight: 900;
    }

    .home-photo-state-error span[b-j4mdidq3nx],
    .home-photo-state-empty span[b-j4mdidq3nx] {
        color: #6b7280;
        font-size: .88rem;
    }

.home-photo-retry[b-j4mdidq3nx] {
    min-height: 38px;
    padding: .45rem 1rem;
    border: 0;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-size: .86rem;
    font-weight: 800;
    cursor: pointer;
    transition: background .18s ease, transform .18s ease;
}

    .home-photo-retry:hover[b-j4mdidq3nx] {
        background: #650001;
        transform: translateY(-1px);
    }

@media (max-width: 991.98px) {

    .entaneer-photo-grid[b-j4mdidq3nx] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-photo-state[b-j4mdidq3nx] {
        min-height: 300px;
    }
}

@media (max-width: 575.98px) {

    .entaneer-photo-section[b-j4mdidq3nx] {
        padding: 46px 0 54px;
    }

    .entaneer-photo-head[b-j4mdidq3nx] {
        align-items: flex-start;
        margin-bottom: 20px;
    }

        .entaneer-photo-head h2[b-j4mdidq3nx] {
            font-size: 1.35rem;
        }

    .entaneer-photo-grid[b-j4mdidq3nx] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px;
    }

    .entaneer-photo-caption[b-j4mdidq3nx] {
        padding: 28px 9px 9px;
        font-size: .88rem;
    }

    .entaneer-photo-date[b-j4mdidq3nx] {
        top: 6px;
        left: 6px;
        padding: 2px 7px;
        font-size: .58rem;
    }

    .home-photo-hover[b-j4mdidq3nx] {
        display: none;
    }

    .home-photo-state[b-j4mdidq3nx] {
        min-height: 220px;
        padding: 24px 16px;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-sx844xkoow] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-sx844xkoow] {
    flex: 1;
}

.sidebar[b-sx844xkoow] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-sx844xkoow] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-sx844xkoow]  a, .top-row[b-sx844xkoow]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-sx844xkoow]  a:hover, .top-row[b-sx844xkoow]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-sx844xkoow]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-sx844xkoow] {
        justify-content: space-between;
    }

    .top-row[b-sx844xkoow]  a, .top-row[b-sx844xkoow]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-sx844xkoow] {
        flex-direction: row;
    }

    .sidebar[b-sx844xkoow] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-sx844xkoow] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-sx844xkoow]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-sx844xkoow], article[b-sx844xkoow] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-sx844xkoow] {
    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-sx844xkoow] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

.header-user-name[b-sx844xkoow] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #fff;
    font-weight: 700;
    white-space: nowrap;
}

.header-logout-form[b-sx844xkoow] {
    display: inline-flex;
    margin: 0;
    padding: 0;
}

.top-action-button[b-sx844xkoow] {
    padding: 0;
    border: 0;
    background: transparent;
    font: inherit;
    cursor: pointer;
}

.dropdown-login-button[b-sx844xkoow] {
    width: 100%;
    border: 0;
    background: transparent;
    text-align: left;
}

.top-action.active-link[b-sx844xkoow] {
    color: #ffd51d !important;
    border-color: rgba(255, 213, 29, .65);
    background: rgba(255, 255, 255, .08);
}

/* =========================================================
   Member account dropdown
   ========================================================= */

.member-account-dropdown[b-sx844xkoow] {
    position: relative;
}

.member-account-toggle[b-sx844xkoow] {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 6px 12px 6px 7px;
    border: 1px solid rgba(255, 255, 255, .20);
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    font-family: inherit;
    font-size: .9rem;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
    transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

    .member-account-toggle[b-sx844xkoow]::after {
        display: none;
    }

    .member-account-toggle:hover[b-sx844xkoow],
    .member-account-toggle:focus[b-sx844xkoow] {
        border-color: rgba(255, 213, 29, .58);
        background: rgba(255, 255, 255, .14);
        color: #fff;
    }

    .member-account-toggle.active[b-sx844xkoow] {
        border-color: rgba(255, 213, 29, .55);
        background: rgba(255, 255, 255, .13);
    }

.member-account-avatar[b-sx844xkoow] {
    width: 33px;
    height: 33px;
    flex: 0 0 33px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    color: #8f0001;
    font-size: .98rem;
}

.member-account-name[b-sx844xkoow] {
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.member-account-chevron[b-sx844xkoow] {
    color: #ffd51d;
    font-size: .72rem;
    transition: transform .18s ease;
}

.member-account-toggle[aria-expanded="true"]
.member-account-chevron[b-sx844xkoow] {
    transform: rotate(180deg);
}

.member-account-menu[b-sx844xkoow] {
    width: 290px;
    margin-top: 12px !important;
    padding: 10px;
    border: 1px solid rgba(143, 0, 1, .10);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(27, 0, 0, .22);
    overflow: hidden;
    z-index: 1100;
}

.member-account-menu-header[b-sx844xkoow] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 10px 10px;
}

.member-account-menu-icon[b-sx844xkoow] {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    background: linear-gradient(135deg, #a70001, #700001);
    color: #fff;
    font-size: 1.05rem;
}

.member-account-menu-header span:last-child[b-sx844xkoow] {
    min-width: 0;
}

.member-account-menu-header small[b-sx844xkoow] {
    display: block;
    margin-bottom: 2px;
    color: #949aa5;
    font-size: .72rem;
    font-weight: 700;
}

.member-account-menu-header strong[b-sx844xkoow] {
    display: block;
    overflow: hidden;
    color: #263142;
    font-size: .9rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.member-account-menu .dropdown-divider[b-sx844xkoow] {
    margin: 6px 4px;
    border-color: #eceef1;
}

.member-account-item[b-sx844xkoow] {
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 54px;
    margin: 2px 0;
    padding: 8px 10px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: #3e4858;
    text-align: left;
    text-decoration: none;
    white-space: normal;
    transition: background .16s ease, color .16s ease, transform .16s ease;
}

    .member-account-item:hover[b-sx844xkoow] {
        background: #f8f4f4;
        color: #8f0001;
        transform: translateX(2px);
    }

    .member-account-item.active[b-sx844xkoow],
    .member-account-item.active:hover[b-sx844xkoow],
    .member-account-item:active[b-sx844xkoow] {
        background: #fff0f1;
        color: #8f0001;
    }

.member-menu-item-icon[b-sx844xkoow] {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #f6f7f9;
    color: #687385;
    font-size: .95rem;
}

.member-account-item:hover .member-menu-item-icon[b-sx844xkoow],
.member-account-item.active .member-menu-item-icon[b-sx844xkoow] {
    background: #ffe4e6;
    color: #8f0001;
}

.member-account-item > span:last-child[b-sx844xkoow] {
    min-width: 0;
}

.member-account-item strong[b-sx844xkoow] {
    display: block;
    color: inherit;
    font-size: .86rem;
    font-weight: 900;
}

.member-account-item small[b-sx844xkoow] {
    display: block;
    margin-top: 2px;
    color: #959ca7;
    font-size: .7rem;
    font-weight: 600;
}

.member-account-logout-form[b-sx844xkoow] {
    width: 100%;
    margin: 0;
}

.member-account-logout[b-sx844xkoow] {
    width: 100%;
    color: #9b0000;
}

    .member-account-logout .member-menu-item-icon[b-sx844xkoow] {
        background: #fff0f1;
        color: #9b0000;
    }

    .member-account-logout:hover[b-sx844xkoow] {
        background: #fff0f1;
        color: #760001;
    }
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-hmtlxg050g],
.components-reconnect-repeated-attempt-visible[b-hmtlxg050g],
.components-reconnect-failed-visible[b-hmtlxg050g],
.components-pause-visible[b-hmtlxg050g],
.components-resume-failed-visible[b-hmtlxg050g],
.components-rejoining-animation[b-hmtlxg050g] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-hmtlxg050g],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-hmtlxg050g],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-hmtlxg050g],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-hmtlxg050g],
#components-reconnect-modal.components-reconnect-retrying[b-hmtlxg050g],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-hmtlxg050g],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-hmtlxg050g],
#components-reconnect-modal.components-reconnect-failed[b-hmtlxg050g],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-hmtlxg050g] {
    display: block;
}


#components-reconnect-modal[b-hmtlxg050g] {
    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-hmtlxg050g 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-hmtlxg050g 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-hmtlxg050g 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-hmtlxg050g]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-hmtlxg050g 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-hmtlxg050g {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-hmtlxg050g {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-hmtlxg050g {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-hmtlxg050g] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-hmtlxg050g] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-hmtlxg050g] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-hmtlxg050g] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-hmtlxg050g] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-hmtlxg050g] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-hmtlxg050g] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-hmtlxg050g 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-hmtlxg050g] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-hmtlxg050g {
    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/About.razor.rz.scp.css */
/* ── About page specific styles ── */

/* Sub-navigation tabs (matches news page tab style) */
.about-subnav[b-69wejd74az] {
    background: #fff;
    position: relative;
    z-index: 1;
    padding: 18px 0;
    margin-top: 50px;
}

.about-subnav-inner[b-69wejd74az] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    background: #fff;
    border-radius: 12px;
    padding: 8px;
    box-shadow: 0 1px 6px rgba(23,32,51,.08);
    width: 100%;
}

.about-subnav-link[b-69wejd74az] {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 7px;
    min-height: 44px;
    padding: .55rem .7rem;
    border-radius: 8px;
    font-weight: 700;
    font-size: .9rem;
    color: #555;
    text-decoration: none;
    white-space: normal;
    line-height: 1.25;
    transition: .18s;
}

    .about-subnav-link:hover[b-69wejd74az] {
        background: #fff0f0;
        color: #8F0001;
    }

    .about-subnav-link.active[b-69wejd74az] {
        background: #8F0001;
        color: #fff;
    }

/* History section */
.history-section[b-69wejd74az] {
    background: #fff;
    padding: 80px 0;
}

.history-lead[b-69wejd74az] {
    font-size: 1.1rem;
    line-height: 2;
    color: #334155;
}

.history-quote[b-69wejd74az] {
    border-left: 5px solid #8F0001;
    padding: 20px 28px;
    margin: 32px 0;
    background: #fff2f3;
    border-radius: 0 18px 18px 0;
}

    .history-quote p[b-69wejd74az] {
        color: #334155;
        line-height: 2;
        margin: 0;
        font-size: 1rem;
    }

    .history-quote cite[b-69wejd74az] {
        display: block;
        margin-top: 14px;
        color: #8F0001;
        font-weight: 800;
        font-style: normal;
        font-size: .9rem;
    }

.history-highlight[b-69wejd74az] {
    background: linear-gradient(135deg, #8F0001, #5a0001);
    color: #fff;
    border-radius: 28px;
    padding: 42px;
    margin: 40px 0;
    text-align: center;
}

    .history-highlight h3[b-69wejd74az] {
        font-weight: 900;
        font-size: 1.55rem;
        line-height: 1.5;
        margin: 0;
        letter-spacing: -.02em;
    }

.history-image-frame[b-69wejd74az] {
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 24px 64px rgba(143,0,1,.15);
    border: 1px solid rgba(23,32,51,.06);
    margin-top: 40px;
}

    .history-image-frame img[b-69wejd74az] {
        width: 100%;
        height: 480px;
        object-fit: cover;
        display: block;
    }

/* Timeline */
.founding-timeline[b-69wejd74az] {
    background: var(--soft);
    padding: 80px 0;
}

.timeline-wrap[b-69wejd74az] {
    position: relative;
    padding-left: 36px;
}

    .timeline-wrap[b-69wejd74az]::before {
        content: "";
        position: absolute;
        left: 10px;
        top: 6px;
        bottom: 6px;
        width: 3px;
        background: linear-gradient(to bottom, #8F0001, rgba(143,0,1,.15));
        border-radius: 3px;
    }

.timeline-item[b-69wejd74az] {
    position: relative;
    margin-bottom: 38px;
}

    .timeline-item[b-69wejd74az]::before {
        content: "";
        position: absolute;
        left: -30px;
        top: 6px;
        width: 14px;
        height: 14px;
        border-radius: 50%;
        background: #8F0001;
        border: 3px solid #fff;
        box-shadow: 0 0 0 3px rgba(143,0,1,.2);
    }

.timeline-year[b-69wejd74az] {
    display: inline-flex;
    background: #8F0001;
    color: #fff;
    font-weight: 900;
    font-size: .82rem;
    padding: .32rem .75rem;
    border-radius: 999px;
    margin-bottom: 8px;
    letter-spacing: .04em;
}

.timeline-title[b-69wejd74az] {
    font-weight: 900;
    font-size: 1.05rem;
    color: #172033;
    margin-bottom: 6px;
}

.timeline-desc[b-69wejd74az] {
    color: #6b7280;
    line-height: 1.75;
    font-size: .95rem;
}

/* Mission cards */
.mission-section[b-69wejd74az] {
    background: #fff;
    padding: 80px 0;
}

.mission-card[b-69wejd74az] {
    background: #f5f6f8;
    border-radius: 24px;
    padding: 32px 28px;
    height: 100%;
    border: 1px solid rgba(23,32,51,.05);
    transition: .22s ease;
}

    .mission-card:hover[b-69wejd74az] {
        background: #fff;
        box-shadow: 0 16px 44px rgba(23,32,51,.09);
        transform: translateY(-4px);
    }

.mission-icon[b-69wejd74az] {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    background: #fff2f3;
    color: #8F0001;
    display: grid;
    place-items: center;
    font-size: 1.5rem;
    margin-bottom: 18px;
}

.mission-card h4[b-69wejd74az] {
    font-weight: 900;
    font-size: 1.08rem;
    color: #172033;
    margin-bottom: 10px;
}

.mission-card p[b-69wejd74az] {
    color: #6b7280;
    line-height: 1.8;
    margin: 0;
    font-size: .95rem;
}

/* Board placeholder */
.board-section[b-69wejd74az] {
    background: var(--soft);
    padding: 80px 0;
}

.board-card[b-69wejd74az] {
    background: #fff;
    border-radius: 24px;
    padding: 32px;
    border: 1px solid rgba(23,32,51,.07);
    box-shadow: 0 8px 28px rgba(23,32,51,.06);
}

.board-tabs[b-69wejd74az] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 28px;
}

.board-tab[b-69wejd74az] {
    padding: .52rem 1.1rem;
    border-radius: 999px;
    font-weight: 800;
    font-size: .9rem;
    text-decoration: none;
    border: 1.5px solid rgba(143,0,1,.2);
    color: #8F0001;
    background: #fff;
    transition: .18s;
}

    .board-tab:hover[b-69wejd74az], .board-tab.active[b-69wejd74az] {
        background: #8F0001;
        border-color: #8F0001;
        color: #fff;
    }

.board-member[b-69wejd74az] {
    display: flex;
    gap: 16px;
    align-items: center;
    padding: 18px 0;
    border-bottom: 1px solid #f0f0f0;
}

    .board-member:last-child[b-69wejd74az] {
        border-bottom: none;
    }

.board-avatar[b-69wejd74az] {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background: #fff2f3;
    display: grid;
    place-items: center;
    color: #8F0001;
    font-size: 1.4rem;
    flex: 0 0 auto;
    border: 2px solid rgba(143,0,1,.12);
}

.board-info strong[b-69wejd74az] {
    display: block;
    font-weight: 900;
    color: #172033;
    font-size: .98rem;
}

.board-info span[b-69wejd74az] {
    color: #6b7280;
    font-size: .87rem;
    font-weight: 700;
}

.executive-directory[b-69wejd74az] {
    background: #f7f8fa;
    border-radius: 22px;
    padding: 22px;
    border: 1px solid rgba(23,32,51,.06);
}

.executive-head[b-69wejd74az] {
    background: linear-gradient(135deg, #8F0001, #5f0001);
    color: #fff;
    border-radius: 18px;
    padding: 26px 28px;
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

    .executive-head h3[b-69wejd74az] {
        margin: 0;
        font-size: 1.45rem;
        font-weight: 900;
    }

    .executive-head p[b-69wejd74az] {
        margin: 6px 0 0;
        opacity: .9;
        line-height: 1.6;
    }

.executive-badge[b-69wejd74az] {
    width: 68px;
    height: 68px;
    border-radius: 20px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.16);
    font-size: 2rem;
    flex: 0 0 auto;
}

.executive-list[b-69wejd74az] {
    display: grid;
    gap: 12px;
}

.executive-item[b-69wejd74az] {
    display: grid;
    grid-template-columns: 120px 1fr auto;
    align-items: center;
    gap: 18px;
    background: #fff;
    border-radius: 16px;
    padding: 16px 18px;
    border: 1px solid rgba(23,32,51,.06);
    box-shadow: 0 4px 14px rgba(23,32,51,.04);
}

.executive-year[b-69wejd74az] {
    color: #8F0001;
    font-weight: 900;
    font-size: 1rem;
}

.executive-title strong[b-69wejd74az] {
    display: block;
    color: #172033;
    font-weight: 900;
    margin-bottom: 3px;
}

.executive-title span[b-69wejd74az] {
    color: #6b7280;
    font-size: .88rem;
    font-weight: 600;
}

.executive-link[b-69wejd74az] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    color: #8F0001;
    background: #fff2f3;
    text-decoration: none;
    font-size: 1.1rem;
}

/* CTA section */
.about-cta[b-69wejd74az] {
    background: #fff;
    padding: 80px 0;
    text-align: center;
}

    .about-cta h2[b-69wejd74az] {
        font-weight: 900;
        letter-spacing: -.04em;
        font-size: clamp(1.8rem, 3.5vw, 2.6rem);
        color: #172033;
        margin-bottom: 16px;
    }

    .about-cta p[b-69wejd74az] {
        color: #6b7280;
        font-size: 1.05rem;
        line-height: 1.85;
        max-width: 560px;
        margin: 0 auto 32px;
    }

@media (max-width: 991.98px) {
    .history-image-frame img[b-69wejd74az] {
        height: 300px;
    }

    .history-highlight[b-69wejd74az] {
        padding: 30px 22px;
    }
}

@media (max-width: 991.98px) {
    .about-subnav-inner[b-69wejd74az] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .executive-item[b-69wejd74az] {
        grid-template-columns: 1fr auto;
    }

    .executive-year[b-69wejd74az] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 640px) {
    .about-subnav-link[b-69wejd74az] {
        padding: .5rem .55rem;
        font-size: .82rem;
    }

    .timeline-wrap[b-69wejd74az] {
        padding-left: 28px;
    }

    .executive-head[b-69wejd74az] {
        align-items: flex-start;
        padding: 22px;
    }

    .executive-badge[b-69wejd74az] {
        width: 52px;
        height: 52px;
        font-size: 1.5rem;
    }
}

/* =====================================================
   About Page Width + Tab Style
   ปรับกรอบหน้า about.html และสี Tab ให้เหมือน news.html
   วางท้าย <style> ใน about.html
   ===================================================== */

/* ให้พื้นที่หลักของ about ใช้โทนและกรอบใกล้ news.html */
/* ── About page title panel (เหมือน news-page) ── */
.about-title-panel[b-69wejd74az] {
    max-width: 1320px;
    margin: 0 auto;
    padding: 80px 24px 0;
}

.about-page-title[b-69wejd74az] {
    font-size: 1.45rem;
    font-weight: 900;
    color: #8F0001;
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px;
}

.about-page-divider[b-69wejd74az] {
    height: 2px;
    background: #e5e7eb;
    border-radius: 99px;
    margin-bottom: 0;
}

.about-page[b-69wejd74az] {
    background: #f7f8fa;
    padding-bottom: 60px;
}

    /* ให้ container ภายใน about อิงความกว้างเดียวกับ news-wrap */
    .about-page .container-xl[b-69wejd74az] {
        max-width: 1320px !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    /* ปรับพื้นที่ Tab ด้านบน */
    .about-page .about-subnav[b-69wejd74az] {
        background: #f7f8fa !important;
        position: relative;
        z-index: 1;
        padding: 16px 0 0 !important;
        margin-top: 0 !important;
    }

    /* Tab wrapper ให้เหมือน news-tabs */
    .about-page .about-subnav-inner[b-69wejd74az] {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
        width: 100%;
        background: #8F0001 !important;
        border-radius: 14px !important;
        padding: 8px !important;
        box-shadow: 0 10px 28px rgba(143, 0, 1, .16) !important;
    }

    /* Tab ปกติ: พื้นแดง ตัวหนังสือขาว */
    .about-page .about-subnav-link[b-69wejd74az] {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        gap: 7px;
        min-height: 52px;
        padding: .6rem .65rem;
        border-radius: 10px;
        background: transparent !important;
        color: #fff !important;
        font-size: .92rem;
        font-weight: 800;
        line-height: 1.25;
        text-decoration: none;
        white-space: normal;
        transition: .18s ease;
    }

        /* Hover ให้เหมือน news-tab */
        .about-page .about-subnav-link:hover[b-69wejd74az] {
            background: rgba(255, 255, 255, .16) !important;
            color: #fff !important;
        }

        /* Active: พื้นขาว ตัวหนังสือแดง */
        .about-page .about-subnav-link.active[b-69wejd74az] {
            background: #fff !important;
            color: #8F0001 !important;
            box-shadow: 0 8px 18px rgba(45, 0, 0, .16) !important;
        }

            /* Icon ของ active ให้แดงตามตัวหนังสือ */
            .about-page .about-subnav-link.active i[b-69wejd74az] {
                color: #8F0001 !important;
            }

    /* ลดระยะห่างหลัง Tab นิดหนึ่ง ให้ใกล้ news.html มากขึ้น */
    .about-page .history-section[b-69wejd74az] {
        padding-top: 64px;
    }

/* Responsive เหมือน news page */
@media (max-width: 991.98px) {
    .about-page .about-subnav-inner[b-69wejd74az] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 500px) {
    .about-page .container-xl[b-69wejd74az] {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .about-page .about-subnav[b-69wejd74az] {
        padding-top: 48px !important;
    }

    .about-page .about-subnav-inner[b-69wejd74az] {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .about-page .about-subnav-link[b-69wejd74az] {
        min-height: 46px;
        font-size: .82rem;
        padding: .5rem .55rem;
    }
}

/* =====================================================
   Committee Policy Section
   Tab: คณะกรรมการบริหารของสมาคมฯ
   วางท้าย <style> ใน about.html
   ===================================================== */

.committee-policy-section[b-69wejd74az] {
    background: #fff;
    padding: 86px 0;
}

.committee-policy-head[b-69wejd74az] {
    max-width: 850px;
    margin-bottom: 34px;
}

.committee-policy-title[b-69wejd74az] {
    font-size: clamp(1.85rem, 3vw, 2.65rem);
    margin-bottom: 14px;
}

.committee-policy-desc[b-69wejd74az] {
    max-width: 760px;
}

.committee-policy-layout[b-69wejd74az] {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(360px, .82fr);
    gap: 28px;
    align-items: start;
}

/* Policy card */
.policy-card[b-69wejd74az],
.structure-card[b-69wejd74az] {
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 28px;
    box-shadow: 0 14px 38px rgba(23, 32, 51, .08);
    overflow: hidden;
}

.policy-card-head[b-69wejd74az],
.structure-card-head[b-69wejd74az] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 28px 30px;
    background: linear-gradient(135deg, #8F0001, #650001);
    color: #fff;
}

.policy-icon[b-69wejd74az],
.structure-icon[b-69wejd74az] {
    width: 56px;
    height: 56px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .16);
    color: #fff;
    font-size: 1.55rem;
    flex: 0 0 auto;
}

.policy-eyebrow[b-69wejd74az],
.structure-eyebrow[b-69wejd74az] {
    display: block;
    margin-bottom: 4px;
    color: rgba(255, 255, 255, .78);
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.policy-card-head h3[b-69wejd74az],
.structure-card-head h3[b-69wejd74az] {
    margin: 0;
    color: #fff;
    font-size: 1.55rem;
    font-weight: 900;
    line-height: 1.2;
}

.policy-content[b-69wejd74az] {
    padding: 30px;
}

.policy-block[b-69wejd74az] {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 18px;
    padding: 0 0 28px;
    margin-bottom: 28px;
    border-bottom: 1px solid #edf0f4;
}

    .policy-block:last-child[b-69wejd74az] {
        padding-bottom: 0;
        margin-bottom: 0;
        border-bottom: 0;
    }

.policy-number[b-69wejd74az] {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: #fff1f1;
    color: #8F0001;
    font-size: 1.35rem;
    font-weight: 900;
    box-shadow: inset 0 0 0 1px rgba(143, 0, 1, .08);
}

.policy-text h4[b-69wejd74az] {
    margin: 0 0 10px;
    color: #172033;
    font-size: 1.18rem;
    font-weight: 900;
    line-height: 1.35;
}

    .policy-text h4 span[b-69wejd74az] {
        color: #8F0001;
        font-size: .95rem;
    }

.policy-text p[b-69wejd74az] {
    margin: 0 0 14px;
    color: #475569;
    font-size: 1rem;
    line-height: 1.85;
}

.policy-list[b-69wejd74az] {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

    .policy-list li[b-69wejd74az] {
        position: relative;
        padding-left: 26px;
        color: #475569;
        font-size: .98rem;
        line-height: 1.75;
    }

        .policy-list li[b-69wejd74az]::before {
            content: "";
            position: absolute;
            left: 2px;
            top: .72em;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: #8F0001;
            box-shadow: 0 0 0 4px rgba(143, 0, 1, .08);
        }

/* Structure card */
.structure-card[b-69wejd74az] {
    position: sticky;
    top: 112px;
}

.org-chart-demo[b-69wejd74az] {
    padding: 34px 28px 28px;
    background: radial-gradient(circle at top right, rgba(143, 0, 1, .07), transparent 34%), #f7f8fa;
}

.org-node[b-69wejd74az] {
    min-height: 72px;
    padding: 14px 16px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
    box-shadow: 0 8px 18px rgba(23, 32, 51, .06);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    text-align: center;
}

    .org-node span[b-69wejd74az] {
        color: #172033;
        font-size: .98rem;
        font-weight: 900;
        line-height: 1.3;
    }

    .org-node small[b-69wejd74az] {
        color: #8F0001;
        font-size: .76rem;
        font-weight: 800;
    }

.org-node-primary[b-69wejd74az] {
    max-width: 260px;
    margin: 0 auto;
    background: linear-gradient(135deg, #8F0001, #6d0001);
    color: #fff;
}

    .org-node-primary span[b-69wejd74az],
    .org-node-primary small[b-69wejd74az] {
        color: #fff;
    }

    .org-node-primary small[b-69wejd74az] {
        opacity: .8;
    }

.org-line[b-69wejd74az] {
    width: 2px;
    height: 28px;
    margin: 0 auto;
    background: rgba(143, 0, 1, .35);
}

.org-node-row[b-69wejd74az] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.org-node-grid[b-69wejd74az] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.org-node-small[b-69wejd74az] {
    min-height: 64px;
}

.structure-note[b-69wejd74az] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 0;
    padding: 20px 24px;
    background: #fff;
    border-top: 1px solid rgba(23, 32, 51, .08);
    color: #64748b;
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.65;
}

    .structure-note i[b-69wejd74az] {
        color: #8F0001;
        margin-top: 3px;
    }

/* Responsive */
@media (max-width: 991.98px) {
    .committee-policy-section[b-69wejd74az] {
        padding: 64px 0;
    }

    .committee-policy-layout[b-69wejd74az] {
        grid-template-columns: 1fr;
    }

    .structure-card[b-69wejd74az] {
        position: static;
    }
}

@media (max-width: 575.98px) {
    .committee-policy-section[b-69wejd74az] {
        padding: 48px 0;
    }

    .policy-card-head[b-69wejd74az],
    .structure-card-head[b-69wejd74az] {
        align-items: flex-start;
        padding: 22px;
    }

    .policy-icon[b-69wejd74az],
    .structure-icon[b-69wejd74az] {
        width: 48px;
        height: 48px;
        border-radius: 16px;
        font-size: 1.35rem;
    }

    .policy-card-head h3[b-69wejd74az],
    .structure-card-head h3[b-69wejd74az] {
        font-size: 1.25rem;
    }

    .policy-content[b-69wejd74az] {
        padding: 22px;
    }

    .policy-block[b-69wejd74az] {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .policy-number[b-69wejd74az] {
        width: 42px;
        height: 42px;
        border-radius: 14px;
        font-size: 1.1rem;
    }

    .org-chart-demo[b-69wejd74az] {
        padding: 24px 18px;
    }

    .org-node-row[b-69wejd74az],
    .org-node-grid[b-69wejd74az] {
        grid-template-columns: 1fr;
    }
}

/* =====================================================
   Executive Committee Directory Section
   Tab: ทำเนียบกรรมการ
   วางท้าย <style> ใน about.html
   ===================================================== */

.executive-directory-section[b-69wejd74az] {
    background: #f7f8fa;
    padding: 86px 0;
}

.executive-directory-layout[b-69wejd74az] {
    display: grid;
    grid-template-columns: minmax(280px, .42fr) minmax(0, .88fr);
    gap: 34px;
    align-items: start;
}

.executive-directory-side[b-69wejd74az] {
    position: sticky;
    top: 112px;
}

.executive-directory-title[b-69wejd74az] {
    font-size: clamp(1.8rem, 3vw, 2.65rem);
    margin-bottom: 16px;
}

.executive-directory-desc[b-69wejd74az] {
    max-width: 420px;
}

.executive-filter-panel[b-69wejd74az] {
    margin-top: 26px;
    padding: 20px;
    border-radius: 24px;
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
    box-shadow: 0 10px 28px rgba(23, 32, 51, .06);
}

    .executive-filter-panel label[b-69wejd74az] {
        display: block;
        margin-bottom: 8px;
        color: #8F0001;
        font-size: .9rem;
        font-weight: 900;
    }

.executive-term-select[b-69wejd74az] {
    width: 100%;
    min-height: 46px;
    padding: .65rem 1rem;
    border-radius: 999px;
    border: 1px solid rgba(143, 0, 1, .22);
    background: #fff;
    color: #172033;
    font-size: .95rem;
    font-weight: 800;
    outline: none;
}

    .executive-term-select:focus[b-69wejd74az] {
        border-color: #8F0001;
        box-shadow: 0 0 0 4px rgba(143, 0, 1, .08);
    }

.executive-directory-card[b-69wejd74az] {
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 30px;
    padding: 28px;
    box-shadow: 0 16px 44px rgba(23, 32, 51, .08);
}

.executive-directory-hero[b-69wejd74az] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    padding: 30px;
    border-radius: 24px;
    background: linear-gradient(135deg, #8F0001, #650001);
    color: #fff;
    margin-bottom: 18px;
}

.executive-eyebrow[b-69wejd74az] {
    display: block;
    margin-bottom: 6px;
    color: rgba(255, 255, 255, .78);
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.executive-directory-hero h3[b-69wejd74az] {
    margin: 0 0 8px;
    color: #fff;
    font-size: clamp(1.35rem, 2vw, 1.85rem);
    font-weight: 900;
    line-height: 1.25;
}

.executive-directory-hero p[b-69wejd74az] {
    margin: 0;
    max-width: 620px;
    color: rgba(255, 255, 255, .9);
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.75;
}

.executive-hero-icon[b-69wejd74az] {
    width: 76px;
    height: 76px;
    border-radius: 24px;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .16);
    color: #fff;
    font-size: 2.15rem;
    flex: 0 0 auto;
}

.executive-term-list[b-69wejd74az] {
    display: grid;
    gap: 14px;
}

.executive-term-item[b-69wejd74az] {
    width: 100%;
    min-height: 92px;
    border: 0;
    border-radius: 20px;
    background: #fff;
    padding: 20px 18px;
    display: grid;
    grid-template-columns: 150px 1fr 48px;
    align-items: center;
    gap: 18px;
    text-align: left;
    box-shadow: 0 8px 20px rgba(23, 32, 51, .06);
    border: 1px solid rgba(23, 32, 51, .06);
    cursor: pointer;
    transition: .18s ease;
}

    .executive-term-item:hover[b-69wejd74az] {
        transform: translateY(-2px);
        box-shadow: 0 14px 30px rgba(23, 32, 51, .10);
        border-color: rgba(143, 0, 1, .18);
    }

.executive-term-year[b-69wejd74az] {
    color: #8F0001;
    font-size: 1rem;
    font-weight: 900;
    white-space: nowrap;
}

.executive-term-info strong[b-69wejd74az] {
    display: block;
    margin-bottom: 4px;
    color: #172033;
    font-size: 1.05rem;
    font-weight: 900;
    line-height: 1.35;
}

.executive-term-info span[b-69wejd74az] {
    display: block;
    color: #64748b;
    font-size: .92rem;
    font-weight: 600;
    line-height: 1.6;
}

.executive-term-arrow[b-69wejd74az] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    justify-self: end;
    background: #fff1f1;
    color: #8F0001;
    font-size: 1.15rem;
    transition: .18s ease;
}

.executive-term-item:hover .executive-term-arrow[b-69wejd74az] {
    background: #8F0001;
    color: #fff;
    transform: translateX(3px);
}

/* Modal */
.executive-committee-modal .modal-content[b-69wejd74az] {
    border: 0;
    border-radius: 28px;
    overflow: hidden;
    box-shadow: 0 24px 80px rgba(23, 32, 51, .22);
}

.executive-committee-modal .modal-header[b-69wejd74az] {
    align-items: center;
    padding: 24px 28px;
    background: linear-gradient(135deg, #8F0001, #650001);
    color: #fff;
    border-bottom: 0;
}

.executive-committee-modal .modal-title[b-69wejd74az] {
    color: #fff;
    font-size: clamp(1.2rem, 2vw, 1.55rem);
    font-weight: 900;
    line-height: 1.35;
}

.modal-eyebrow[b-69wejd74az] {
    display: block;
    margin-bottom: 4px;
    color: rgba(255, 255, 255, .75);
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.executive-modal-close[b-69wejd74az] {
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: .9;
}

.executive-committee-modal .modal-body[b-69wejd74az] {
    padding: 28px;
    background: #f7f8fa;
}

.committee-image-grid[b-69wejd74az] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

    .committee-image-grid img[b-69wejd74az] {
        width: 100%;
        height: auto;
        display: block;
        border-radius: 18px;
        background: #fff;
        border: 1px solid rgba(23, 32, 51, .08);
        box-shadow: 0 10px 26px rgba(23, 32, 51, .08);
    }

.committee-modal-note[b-69wejd74az] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 20px;
    padding: 16px 18px;
    border-radius: 18px;
    background: #fff;
    color: #64748b;
    font-size: .92rem;
    font-weight: 600;
    line-height: 1.65;
    border: 1px solid rgba(23, 32, 51, .08);
}

    .committee-modal-note i[b-69wejd74az] {
        color: #8F0001;
        margin-top: 3px;
    }

/* Responsive */
@media (max-width: 991.98px) {
    .executive-directory-section[b-69wejd74az] {
        padding: 64px 0;
    }

    .executive-directory-layout[b-69wejd74az] {
        grid-template-columns: 1fr;
    }

    .executive-directory-side[b-69wejd74az] {
        position: static;
    }

    .executive-term-item[b-69wejd74az] {
        grid-template-columns: 130px 1fr 44px;
    }
}

@media (max-width: 767.98px) {
    .committee-image-grid[b-69wejd74az] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) {
    .executive-directory-section[b-69wejd74az] {
        padding: 48px 0;
    }

    .executive-directory-card[b-69wejd74az] {
        padding: 18px;
        border-radius: 24px;
    }

    .executive-directory-hero[b-69wejd74az] {
        align-items: flex-start;
        flex-direction: column;
        padding: 22px;
    }

    .executive-hero-icon[b-69wejd74az] {
        width: 58px;
        height: 58px;
        border-radius: 18px;
        font-size: 1.6rem;
    }

    .executive-term-item[b-69wejd74az] {
        grid-template-columns: 1fr 40px;
        gap: 10px;
        padding: 18px;
    }

    .executive-term-year[b-69wejd74az] {
        grid-column: 1 / -1;
    }

    .executive-term-arrow[b-69wejd74az] {
        width: 38px;
        height: 38px;
    }

    .executive-committee-modal .modal-body[b-69wejd74az] {
        padding: 18px;
    }
}

/* =====================================================
   Committee Image Fullscreen Preview
   คลิกรูปใน popup ทำเนียบกรรมการ แล้วเปิดรูปใหญ่ซ้อนอีกชั้น
   วางท้าย <style> ใน about.html
   ===================================================== */

.committee-zoomable-image[b-69wejd74az] {
    cursor: zoom-in;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

    .committee-zoomable-image:hover[b-69wejd74az] {
        transform: translateY(-3px) scale(1.015);
        border-color: rgba(143, 0, 1, .35) !important;
        box-shadow: 0 16px 36px rgba(23, 32, 51, .16) !important;
    }

/* ให้ modal รูปใหญ่ซ้อนเหนือ modal เดิม */
.committee-image-preview-modal[b-69wejd74az] {
    z-index: 1095 !important;
    background: rgba(8, 8, 10, .88);
}

    .committee-image-preview-modal .modal-dialog[b-69wejd74az] {
        margin: 0;
        max-width: none;
    }

    .committee-image-preview-modal .modal-content[b-69wejd74az] {
        min-height: 100vh;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

.committee-image-preview-body[b-69wejd74az] {
    width: 100%;
    min-height: 100vh;
    padding: 72px 28px 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 16px;
}

    .committee-image-preview-body img[b-69wejd74az] {
        max-width: min(96vw, 1500px);
        max-height: 84vh;
        width: auto;
        height: auto;
        object-fit: contain;
        border-radius: 18px;
        background: #fff;
        box-shadow: 0 24px 80px rgba(0, 0, 0, .42);
    }

.committee-image-preview-caption[b-69wejd74az] {
    color: #fff;
    font-size: 1rem;
    font-weight: 800;
    text-align: center;
    opacity: .9;
}

.committee-image-preview-close[b-69wejd74az] {
    position: fixed;
    top: 22px;
    right: 26px;
    z-index: 1105;
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .16);
    color: #fff;
    font-size: 1.25rem;
    cursor: pointer;
    transition: .18s ease;
}

    .committee-image-preview-close:hover[b-69wejd74az] {
        background: #fff;
        color: #8F0001;
        transform: rotate(90deg);
    }

@media (max-width: 575.98px) {
    .committee-image-preview-body[b-69wejd74az] {
        padding: 70px 14px 32px;
    }

        .committee-image-preview-body img[b-69wejd74az] {
            max-width: 96vw;
            max-height: 78vh;
            border-radius: 14px;
        }

    .committee-image-preview-close[b-69wejd74az] {
        top: 16px;
        right: 16px;
        width: 42px;
        height: 42px;
    }
}

/* =====================================================
   Awards Showcase Section
   สำหรับ <section id="awards">
   วางท้าย <style> ของ about.html
   ===================================================== */

.awards-showcase-section[b-69wejd74az] {
    background: #fff;
    padding: 86px 0 96px;
}

.awards-head[b-69wejd74az] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 420px);
    gap: 28px;
    align-items: stretch;
    margin-bottom: 34px;
}

.awards-title[b-69wejd74az] {
    font-size: clamp(1.9rem, 3vw, 2.7rem);
    margin-bottom: 14px;
}

.awards-desc[b-69wejd74az] {
    max-width: 760px;
}

.awards-highlight-card[b-69wejd74az] {
    border-radius: 28px;
    padding: 28px;
    background: linear-gradient(135deg, #8F0001, #650001);
    color: #fff;
    box-shadow: 0 18px 44px rgba(143, 0, 1, .18);
    position: relative;
    overflow: hidden;
}

    .awards-highlight-card[b-69wejd74az]::after {
        content: "";
        position: absolute;
        right: -36px;
        bottom: -36px;
        width: 140px;
        height: 140px;
        border-radius: 50%;
        background: rgba(255,255,255,.08);
    }

.awards-highlight-badge[b-69wejd74az] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    padding: .45rem .8rem;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    color: #fff;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.awards-highlight-card h3[b-69wejd74az] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 900;
    line-height: 1.3;
}

.awards-highlight-card p[b-69wejd74az] {
    margin: 0;
    color: rgba(255,255,255,.9);
    font-size: 1rem;
    line-height: 1.8;
    font-weight: 600;
}

.awards-highlight-meta[b-69wejd74az] {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 20px;
}

.awards-meta-item[b-69wejd74az] {
    min-width: 120px;
    padding: 12px 14px;
    border-radius: 16px;
    background: rgba(255,255,255,.12);
    backdrop-filter: blur(4px);
}

    .awards-meta-item .label[b-69wejd74az] {
        display: block;
        margin-bottom: 4px;
        font-size: .8rem;
        font-weight: 800;
        color: rgba(255,255,255,.72);
    }

    .awards-meta-item strong[b-69wejd74az] {
        font-size: 1.05rem;
        font-weight: 900;
        color: #fff;
    }

.awards-grid[b-69wejd74az] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.award-card[b-69wejd74az] {
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 12px 30px rgba(23, 32, 51, .07);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

    .award-card:hover[b-69wejd74az] {
        transform: translateY(-4px);
        box-shadow: 0 18px 38px rgba(23, 32, 51, .10);
        border-color: rgba(143, 0, 1, .16);
    }

.award-card-top[b-69wejd74az] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
}

.award-icon[b-69wejd74az] {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    background: #fff1f1;
    color: #8F0001;
    font-size: 1.35rem;
    box-shadow: inset 0 0 0 1px rgba(143, 0, 1, .08);
}

.award-year[b-69wejd74az] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .42rem .8rem;
    border-radius: 999px;
    background: #f7f8fa;
    color: #8F0001;
    font-size: .82rem;
    font-weight: 900;
    white-space: nowrap;
}

.award-card h3[b-69wejd74az] {
    margin: 0 0 8px;
    color: #172033;
    font-size: 1.2rem;
    font-weight: 900;
    line-height: 1.35;
}

.award-recipient[b-69wejd74az] {
    margin: 0 0 10px;
    color: #8F0001;
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.6;
}

.award-desc[b-69wejd74az] {
    margin: 0;
    color: #64748b;
    font-size: .95rem;
    line-height: 1.75;
}

.award-tags[b-69wejd74az] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

    .award-tags span[b-69wejd74az] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: .42rem .72rem;
        border-radius: 999px;
        background: #f7f8fa;
        color: #475569;
        font-size: .78rem;
        font-weight: 800;
    }

.awards-criteria-box[b-69wejd74az] {
    margin-top: 34px;
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 24px 26px;
    border-radius: 24px;
    background: linear-gradient(180deg, #fff, #fcfcfc);
    border: 1px solid rgba(23, 32, 51, .08);
    box-shadow: 0 12px 30px rgba(23, 32, 51, .06);
}

.awards-criteria-icon[b-69wejd74az] {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    background: #fff1f1;
    color: #8F0001;
    font-size: 1.45rem;
}

.awards-criteria-eyebrow[b-69wejd74az] {
    display: inline-block;
    margin-bottom: 8px;
    color: #8F0001;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.awards-criteria-content h3[b-69wejd74az] {
    margin: 0 0 10px;
    color: #172033;
    font-size: 1.3rem;
    font-weight: 900;
}

.awards-criteria-content ul[b-69wejd74az] {
    margin: 0;
    padding-left: 1.2rem;
    color: #475569;
}

.awards-criteria-content li[b-69wejd74az] {
    margin-bottom: 8px;
    line-height: 1.7;
}

    .awards-criteria-content li:last-child[b-69wejd74az] {
        margin-bottom: 0;
    }

/* Responsive */
@media (max-width: 1199.98px) {
    .awards-grid[b-69wejd74az] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .awards-showcase-section[b-69wejd74az] {
        padding: 64px 0 76px;
    }

    .awards-head[b-69wejd74az] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .awards-grid[b-69wejd74az] {
        grid-template-columns: 1fr;
    }

    .awards-criteria-box[b-69wejd74az] {
        flex-direction: column;
    }
}

@media (max-width: 575.98px) {
    .awards-showcase-section[b-69wejd74az] {
        padding: 48px 0 58px;
    }

    .awards-highlight-card[b-69wejd74az],
    .award-card[b-69wejd74az] {
        border-radius: 20px;
    }

    .awards-highlight-card[b-69wejd74az] {
        padding: 22px;
    }

    .award-card[b-69wejd74az] {
        padding: 18px;
    }

    .awards-criteria-box[b-69wejd74az] {
        padding: 20px;
        border-radius: 20px;
    }

    .awards-criteria-icon[b-69wejd74az] {
        width: 50px;
        height: 50px;
        border-radius: 16px;
    }
}

#history[b-69wejd74az],
#committee[b-69wejd74az],
#executive_committee[b-69wejd74az],
#awards[b-69wejd74az] {
    scroll-margin-top: 170px;
}

/* =====================================================
   Executive Committee - Real Database additions
   วางต่อท้าย About.razor.css เดิม
   ===================================================== */

.executive-term-period[b-69wejd74az] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 7px;
    color: #94a3b8;
    font-size: .8rem;
    font-weight: 700;
}

.committee-directory-state[b-69wejd74az],
.committee-modal-state[b-69wejd74az] {
    min-height: 230px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 28px;
    text-align: center;
    color: #64748b;
    border-radius: 20px;
    background: #f8fafc;
    border: 1px dashed rgba(100, 116, 139, .22);
}

    .committee-directory-state > i[b-69wejd74az],
    .committee-modal-state > i[b-69wejd74az] {
        color: #8f0001;
        font-size: 1.8rem;
    }

    .committee-directory-state strong[b-69wejd74az],
    .committee-modal-state strong[b-69wejd74az] {
        color: #172033;
        font-weight: 900;
    }

.committee-directory-state-error[b-69wejd74az],
.committee-modal-state-error[b-69wejd74az] {
    color: #8f0001;
    background: #fff7f7;
    border-color: rgba(143, 0, 1, .18);
}

.committee-directory-retry[b-69wejd74az] {
    min-height: 38px;
    margin-top: 4px;
    padding: .45rem 1rem;
    border: 0;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-weight: 800;
    cursor: pointer;
}

    .committee-directory-retry:hover[b-69wejd74az] {
        background: #650001;
    }

.committee-detail-summary[b-69wejd74az] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
    padding: 18px 20px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
}

    .committee-detail-summary > div:first-child[b-69wejd74az] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .committee-detail-summary span[b-69wejd74az] {
        color: #94a3b8;
        font-size: .8rem;
        font-weight: 800;
    }

    .committee-detail-summary strong[b-69wejd74az] {
        color: #172033;
        font-size: 1.05rem;
        font-weight: 900;
    }

.committee-detail-count[b-69wejd74az] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: .48rem .82rem;
    border-radius: 999px;
    background: #fff1f1;
    color: #8f0001;
    font-size: .85rem;
    font-weight: 900;
    white-space: nowrap;
}

.committee-image-button[b-69wejd74az] {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    border-radius: 18px;
    background: transparent;
    cursor: zoom-in;
}

    .committee-image-button:focus-visible[b-69wejd74az] {
        outline: 3px solid rgba(143, 0, 1, .28);
        outline-offset: 3px;
    }

/* ---------------- Member fallback mode ---------------- */

.committee-member-directory-head[b-69wejd74az] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-bottom: 20px;
    padding: 22px 24px;
    border-radius: 22px;
    background: linear-gradient(135deg, #fff, #fff7f7);
    border: 1px solid rgba(143, 0, 1, .10);
}

.committee-member-eyebrow[b-69wejd74az] {
    display: block;
    margin-bottom: 5px;
    color: #8f0001;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.committee-member-directory-head h3[b-69wejd74az] {
    margin: 0 0 6px;
    color: #172033;
    font-size: 1.35rem;
    font-weight: 900;
}

.committee-member-directory-head p[b-69wejd74az] {
    margin: 0;
    color: #64748b;
    font-size: .9rem;
    font-weight: 700;
}

.committee-member-count[b-69wejd74az] {
    min-width: 102px;
    min-height: 84px;
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    column-gap: 7px;
    padding: 12px 16px;
    border-radius: 20px;
    background: #8f0001;
    color: #fff;
}

    .committee-member-count i[b-69wejd74az] {
        font-size: 1.2rem;
    }

    .committee-member-count strong[b-69wejd74az] {
        font-size: 1.35rem;
        font-weight: 900;
    }

    .committee-member-count span[b-69wejd74az] {
        grid-column: 1 / -1;
        text-align: center;
        font-size: .76rem;
        font-weight: 800;
        opacity: .82;
    }

.committee-member-grid[b-69wejd74az] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.committee-member-card[b-69wejd74az] {
    min-width: 0;
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    padding: 18px;
    border-radius: 20px;
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
    box-shadow: 0 8px 22px rgba(23, 32, 51, .06);
}

.committee-member-avatar-wrap img[b-69wejd74az],
.committee-member-avatar-fallback[b-69wejd74az] {
    width: 78px;
    height: 78px;
    border-radius: 20px;
}

.committee-member-avatar-wrap img[b-69wejd74az] {
    display: block;
    object-fit: cover;
    background: #f1f5f9;
}

.committee-member-avatar-fallback[b-69wejd74az] {
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #8f0001, #650001);
    color: #fff;
    font-size: 1.25rem;
    font-weight: 900;
}

.committee-member-card-body[b-69wejd74az] {
    min-width: 0;
}

.committee-member-role[b-69wejd74az] {
    display: inline-flex;
    max-width: 100%;
    margin-bottom: 8px;
    padding: .34rem .62rem;
    border-radius: 999px;
    background: #fff1f1;
    color: #8f0001;
    font-size: .72rem;
    font-weight: 900;
    line-height: 1.35;
}

.committee-member-card h4[b-69wejd74az] {
    margin: 0 0 7px;
    color: #172033;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.4;
}

.committee-member-meta[b-69wejd74az] {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #64748b;
    font-size: .8rem;
    font-weight: 700;
}

.committee-member-remark[b-69wejd74az] {
    margin: 9px 0 0;
    color: #64748b;
    font-size: .82rem;
    line-height: 1.55;
}

@media (max-width: 1199.98px) {
    .committee-member-grid[b-69wejd74az] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .committee-member-directory-head[b-69wejd74az] {
        align-items: flex-start;
    }

    .committee-member-grid[b-69wejd74az] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) {
    .committee-member-directory-head[b-69wejd74az] {
        flex-direction: column;
        padding: 18px;
    }

    .committee-member-count[b-69wejd74az] {
        min-width: 96px;
    }

    .committee-member-card[b-69wejd74az] {
        grid-template-columns: 64px minmax(0, 1fr);
        gap: 12px;
        padding: 15px;
    }

    .committee-member-avatar-wrap img[b-69wejd74az],
    .committee-member-avatar-fallback[b-69wejd74az] {
        width: 64px;
        height: 64px;
        border-radius: 17px;
    }

    .committee-detail-summary[b-69wejd74az] {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* =========================================================
   Committee Detail
   Image section -> Member section
   ========================================================= */

.committee-member-section.has-image-section[b-69wejd74az] {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid rgba(143, 0, 1, .12);
}
/* /Components/Pages/BlogCreate.razor.rz.scp.css */
.blog-create-page[b-0oxqcrpm73] {
    min-height: calc(100vh - 74px);
    padding: 42px 0 76px;
    background: #f4f6f8;
    color: #172033;
}

.blog-create-heading[b-0oxqcrpm73] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
}

.blog-create-eyebrow[b-0oxqcrpm73] {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 8px;
    color: #8f0001;
    font-size: .82rem;
    font-weight: 900;
    letter-spacing: .08em;
}

.blog-create-heading h1[b-0oxqcrpm73] {
    margin: 0;
    color: #172033;
    font-size: clamp(1.8rem, 3vw, 2.45rem);
    font-weight: 900;
}

.blog-create-heading p[b-0oxqcrpm73] {
    margin: 6px 0 0;
    color: #64748b;
    line-height: 1.7;
}

.blog-back-link[b-0oxqcrpm73] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 15px;
    border: 1px solid #d7dce4;
    border-radius: 999px;
    background: #fff;
    color: #475569;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
}

.blog-back-link:hover[b-0oxqcrpm73] {
    border-color: #8f0001;
    color: #8f0001;
}

.blog-form-alert[b-0oxqcrpm73] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 18px;
    padding: 14px 16px;
    border: 1px solid #efb8bd;
    border-radius: 16px;
    background: #fff1f2;
    color: #8f0001;
    font-weight: 800;
}

.blog-create-card[b-0oxqcrpm73] {
    overflow: hidden;
    border: 1px solid #e5e9ef;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(23, 32, 51, .07);
}

.blog-form-section[b-0oxqcrpm73] {
    padding: 28px;
}

.blog-section-title[b-0oxqcrpm73] {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 22px;
}

.blog-section-title > span[b-0oxqcrpm73] {
    display: grid;
    place-items: center;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    border-radius: 15px;
    background: #fff0f1;
    color: #8f0001;
    font-size: 1.15rem;
}

.blog-section-title h2[b-0oxqcrpm73] {
    margin: 0;
    color: #172033;
    font-size: 1.23rem;
    font-weight: 900;
}

.blog-section-title p[b-0oxqcrpm73] {
    margin: 3px 0 0;
    color: #7b8491;
    font-size: .88rem;
}

.blog-field + .blog-field[b-0oxqcrpm73] {
    margin-top: 20px;
}

.blog-field label[b-0oxqcrpm73] {
    display: block;
    margin-bottom: 8px;
    color: #334155;
    font-weight: 900;
}

.blog-field label b[b-0oxqcrpm73] {
    color: #a80008;
}

.blog-field[b-0oxqcrpm73] {
    width: 100%;
    min-width: 0;
}

    .blog-field[b-0oxqcrpm73]  input.blog-input {
        display: block;
        width: 100% !important;
        max-width: none !important;
        min-height: 52px;
        box-sizing: border-box;
        padding: 12px 16px;
        border: 1px solid #dfe4ea;
        border-radius: 14px;
        background: #fff;
        color: #172033;
        font-family: inherit;
        font-size: 1rem;
        line-height: 1.5;
        outline: none;
        appearance: none;
    }

        .blog-field[b-0oxqcrpm73]  input.blog-input:hover {
            border-color: #c8ced7;
        }

        .blog-field[b-0oxqcrpm73]  input.blog-input:focus {
            border-color: #8f0001;
            box-shadow: 0 0 0 4px rgba(143, 0, 1, .08);
        }

        .blog-field[b-0oxqcrpm73]  input.blog-input:disabled {
            background: #f4f6f8;
            color: #7b8491;
            cursor: not-allowed;
        }

.blog-field-help[b-0oxqcrpm73] {
    display: block;
    margin-top: 8px;
    color: #84909f;
}

.blog-divider[b-0oxqcrpm73] {
    height: 1px;
    background: #edf0f4;
}

.blog-editor-shell[b-0oxqcrpm73] {
    overflow: hidden;
    border-radius: 16px;
}

[b-0oxqcrpm73] .blog-editor-shell .k-editor {
    border: 1px solid #dfe4ea;
    border-radius: 16px;
    box-shadow: none;
}

[b-0oxqcrpm73] .blog-editor-shell .k-editor-toolbar {
    border-bottom-color: #e7ebf0;
    background: #f8fafc;
}

[b-0oxqcrpm73] .blog-editor-shell .ProseMirror,
[b-0oxqcrpm73] .blog-editor-shell .k-editor-content {
    font-family: 'Noto Sans Thai', sans-serif;
    line-height: 1.75;
}

.blog-upload-grid[b-0oxqcrpm73] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.blog-upload-box[b-0oxqcrpm73] {
    min-width: 0;
    padding: 20px;
    border: 1px dashed #d8dde5;
    border-radius: 20px;
    background: #fafbfc;
}

.blog-upload-icon[b-0oxqcrpm73] {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    margin-bottom: 12px;
    border-radius: 15px;
    background: #fff0f1;
    color: #8f0001;
    font-size: 1.25rem;
}

.blog-upload-copy strong[b-0oxqcrpm73],
.blog-upload-copy span[b-0oxqcrpm73] {
    display: block;
}

.blog-upload-copy strong[b-0oxqcrpm73] {
    color: #263142;
    font-weight: 900;
}

.blog-upload-copy span[b-0oxqcrpm73] {
    margin-top: 3px;
    color: #7b8491;
    font-size: .84rem;
}

.blog-file-button[b-0oxqcrpm73] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 16px;
    padding: 10px 15px;
    border: 1px solid #d8bdc0;
    border-radius: 999px;
    background: #fff;
    color: #8f0001;
    font-weight: 900;
    cursor: pointer;
    overflow: hidden;
}

    .blog-file-button[b-0oxqcrpm73]  input[type="file"] {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
        opacity: 0;
        cursor: pointer;
    }

.blog-selected-file[b-0oxqcrpm73] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    padding: 10px 12px;
    border-radius: 13px;
    background: #eef8f2;
    color: #187347;
}

.blog-selected-file span[b-0oxqcrpm73] {
    min-width: 0;
    overflow: hidden;
    color: #334155;
    font-size: .84rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.blog-selected-file small[b-0oxqcrpm73] {
    color: #64748b;
    white-space: nowrap;
}

.blog-selected-file button[b-0oxqcrpm73] {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 9px;
    background: #fff;
    color: #8f0001;
    cursor: pointer;
}

.blog-status-options[b-0oxqcrpm73] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.blog-status-option[b-0oxqcrpm73] {
    display: grid;
    grid-template-columns: auto 44px minmax(0, 1fr);
    align-items: center;
    gap: 11px;
    padding: 16px;
    border: 1px solid #e2e7ed;
    border-radius: 18px;
    background: #fafbfc;
    cursor: pointer;
}

.blog-status-option:has(input:checked)[b-0oxqcrpm73] {
    border-color: #b06b70;
    background: #fff6f7;
    box-shadow: 0 0 0 3px rgba(143, 0, 1, .06);
}

.status-icon[b-0oxqcrpm73] {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 14px;
}

.status-icon.draft[b-0oxqcrpm73] {
    background: #eef1f5;
    color: #64748b;
}

.status-icon.publish[b-0oxqcrpm73] {
    background: #e9f8ef;
    color: #168447;
}

.blog-status-option strong[b-0oxqcrpm73],
.blog-status-option small[b-0oxqcrpm73] {
    display: block;
}

.blog-status-option strong[b-0oxqcrpm73] {
    color: #263142;
    font-weight: 900;
}

.blog-status-option small[b-0oxqcrpm73] {
    margin-top: 2px;
    color: #7b8491;
}

.blog-form-actions[b-0oxqcrpm73] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 20px 28px;
    border-top: 1px solid #edf0f4;
    background: #fafbfc;
}

.blog-cancel-button[b-0oxqcrpm73],
.blog-save-button[b-0oxqcrpm73] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 11px 20px;
    border-radius: 999px;
    font-family: inherit;
    font-weight: 900;
    text-decoration: none;
}

.blog-cancel-button[b-0oxqcrpm73] {
    border: 1px solid #d7dce4;
    background: #fff;
    color: #64748b;
}

.blog-save-button[b-0oxqcrpm73] {
    border: 0;
    background: linear-gradient(135deg, #8f0001 0%, #b40008 100%);
    color: #fff;
    box-shadow: 0 12px 26px rgba(143, 0, 1, .20);
    cursor: pointer;
}

.blog-save-button:disabled[b-0oxqcrpm73] {
    cursor: not-allowed;
    opacity: .65;
}

.blog-field[b-0oxqcrpm73]  .validation-message {
    display: block;
    margin-top: 7px;
    color: #b4232c;
    font-size: .86rem;
    font-weight: 700;
}

@media (max-width: 767.98px) {
    .blog-create-heading[b-0oxqcrpm73] {
        align-items: flex-start;
        flex-direction: column;
    }

    .blog-upload-grid[b-0oxqcrpm73],
    .blog-status-options[b-0oxqcrpm73] {
        grid-template-columns: 1fr;
    }

    .blog-form-section[b-0oxqcrpm73] {
        padding: 22px;
    }

    .blog-form-actions[b-0oxqcrpm73] {
        padding: 18px 22px;
    }
}

@media (max-width: 575.98px) {
    .blog-create-page[b-0oxqcrpm73] {
        padding: 28px 0 52px;
    }

    .blog-create-card[b-0oxqcrpm73] {
        border-radius: 22px;
    }

    .blog-form-actions[b-0oxqcrpm73] {
        flex-direction: column-reverse;
    }

    .blog-cancel-button[b-0oxqcrpm73],
    .blog-save-button[b-0oxqcrpm73] {
        width: 100%;
    }
}


/* =========================================================
   Blog create/edit shared states
   ========================================================= */

.blog-page-state[b-0oxqcrpm73] {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 22px;
    border: 1px solid #e5e9ef;
    border-radius: 22px;
    background: #fff;
    color: #526071;
    box-shadow: 0 16px 44px rgba(23, 32, 51, .06);
}

.blog-page-state-error[b-0oxqcrpm73] {
    border-color: #efc9cc;
    background: #fff4f5;
    color: #8f0001;
}

.blog-page-state-error p[b-0oxqcrpm73] {
    margin: 3px 0 0;
    color: #7b4650;
}

.blog-current-cover[b-0oxqcrpm73],
.blog-current-attachment[b-0oxqcrpm73] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    margin-top: 14px;
    padding: 11px 12px;
    border: 1px solid #dce5ee;
    border-radius: 14px;
    background: #f6f9fc;
}

.blog-current-cover img[b-0oxqcrpm73] {
    width: 54px;
    height: 54px;
    object-fit: cover;
    border-radius: 11px;
    background: #fff;
}

.blog-current-cover > div[b-0oxqcrpm73],
.blog-current-attachment > div[b-0oxqcrpm73] {
    min-width: 0;
}

.blog-current-cover strong[b-0oxqcrpm73],
.blog-current-cover span[b-0oxqcrpm73],
.blog-current-attachment strong[b-0oxqcrpm73],
.blog-current-attachment a[b-0oxqcrpm73] {
    display: block;
}

.blog-current-cover strong[b-0oxqcrpm73],
.blog-current-attachment strong[b-0oxqcrpm73] {
    color: #334155;
    font-size: .82rem;
    font-weight: 900;
}

.blog-current-cover span[b-0oxqcrpm73],
.blog-current-attachment a[b-0oxqcrpm73] {
    margin-top: 2px;
    overflow: hidden;
    color: #64748b;
    font-size: .78rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.blog-current-attachment > i[b-0oxqcrpm73] {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    background: #e9f1f9;
    color: #245a91;
    font-size: 1.1rem;
}

.blog-current-cover > button[b-0oxqcrpm73],
.blog-current-attachment > button[b-0oxqcrpm73] {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border: 0;
    border-radius: 10px;
    background: #fff;
    color: #a90008;
    cursor: pointer;
}

.blog-current-cover > button:hover:not(:disabled)[b-0oxqcrpm73],
.blog-current-attachment > button:hover:not(:disabled)[b-0oxqcrpm73] {
    background: #a90008;
    color: #fff;
}

.blog-file-removal-note[b-0oxqcrpm73] {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 14px;
    padding: 11px 12px;
    border: 1px solid #efc9cc;
    border-radius: 13px;
    background: #fff3f4;
    color: #8f0001;
    font-size: .82rem;
    font-weight: 800;
}

.blog-file-removal-note span[b-0oxqcrpm73] {
    min-width: 0;
    flex: 1;
}

.blog-file-removal-note button[b-0oxqcrpm73] {
    border: 0;
    background: transparent;
    color: #245a91;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
}

.blog-file-removal-note button:disabled[b-0oxqcrpm73],
.blog-current-cover > button:disabled[b-0oxqcrpm73],
.blog-current-attachment > button:disabled[b-0oxqcrpm73] {
    opacity: .55;
    cursor: not-allowed;
}
/* /Components/Pages/Calendar.razor.rz.scp.css */
.cal-page[b-kf6rl2uw73] {
    --cal-red: #8F0001;
    --cal-red-dark: #690001;
    --cal-text: #172033;
    --cal-muted: #6b7280;
    min-height: 100vh;
    padding-bottom: 0;
    background: #fff;
    font-family: "Noto Sans Thai", sans-serif;
}

.cal-page[b-kf6rl2uw73]  .cal-wrap {
    width: min(100% - 48px, 1320px);
    margin: 0 auto;
    padding: 70px 0 72px;
}

.cal-page[b-kf6rl2uw73]  .page-title-std {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px;
    color: var(--cal-red);
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1.2;
}

.cal-page[b-kf6rl2uw73]  .page-title-std i {
    font-size: 1.1rem;
}

.cal-page[b-kf6rl2uw73]  .cal-divider {
    height: 2px;
    margin-bottom: 30px;
    border-radius: 99px;
    background: #e5e7eb;
}

/* Toolbar */

.cal-page[b-kf6rl2uw73]  .cal-toolbar {
    position: relative;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

.cal-page[b-kf6rl2uw73]  .cal-nav {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.cal-page[b-kf6rl2uw73]  .cal-nav-buttons {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    flex: 0 0 auto;
}

.cal-page[b-kf6rl2uw73]  .cal-nav-btn {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #858585;
    color: #fff;
    font-size: .9rem;
    cursor: pointer;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .12);
    transition: .18s ease;
}

.cal-page[b-kf6rl2uw73]  .cal-nav-btn:hover {
    background: var(--cal-red);
    transform: translateY(-1px);
}

.cal-page[b-kf6rl2uw73]  .cal-period {
    min-width: 0;
    padding: 0;
    border: 0;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: transparent;
    color: var(--cal-text);
    font-family: inherit;
    font-size: 1.16rem;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
}

.cal-page[b-kf6rl2uw73]  .cal-period:hover {
    color: var(--cal-red);
}

.cal-page[b-kf6rl2uw73]  .cal-period i {
    color: var(--cal-muted);
    font-size: .76rem;
}

.cal-page[b-kf6rl2uw73]  .cal-view-tabs {
    display: flex;
    align-items: center;
    gap: 18px;
    flex: 0 0 auto;
}

.cal-page[b-kf6rl2uw73]  .cal-tab {
    padding: .35rem .1rem;
    border: 0;
    background: transparent;
    color: #777;
    font-family: inherit;
    font-size: 1.05rem;
    font-weight: 800;
    cursor: pointer;
    transition: .16s ease;
}

.cal-page[b-kf6rl2uw73]  .cal-tab:hover,
.cal-page[b-kf6rl2uw73]  .cal-tab.active {
    color: var(--cal-red);
}

.cal-page[b-kf6rl2uw73]  .cal-tab.active {
    font-weight: 900;
}

.cal-page[b-kf6rl2uw73]  .cal-today-btn {
    min-width: 92px;
    min-height: 42px;
    padding: .35rem 1.1rem;
    border: 0;
    border-radius: 999px;
    background: #f3f3f3;
    color: var(--cal-text);
    font-family: inherit;
    font-size: 1.05rem;
    font-weight: 900;
    cursor: pointer;
    transition: .18s ease;
}

.cal-page[b-kf6rl2uw73]  .cal-today-btn:hover {
    background: var(--cal-red);
    color: #fff;
}

/* Date picker */

.cal-page[b-kf6rl2uw73]  .cal-picker {
    position: absolute;
    top: calc(100% + 10px);
    left: 92px;
    z-index: 80;
    width: min(620px, calc(100vw - 48px));
    padding: 16px;
    display: none;
    grid-template-columns: minmax(0, 1fr) 1px minmax(220px, .95fr);
    gap: 18px;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .24);
}

.cal-page[b-kf6rl2uw73]  .cal-picker.show {
    display: grid;
}

.cal-page[b-kf6rl2uw73]  .cal-picker::before {
    content: "";
    position: absolute;
    top: -8px;
    left: 92px;
    width: 16px;
    height: 16px;
    border-top: 1px solid rgba(23, 32, 51, .08);
    border-left: 1px solid rgba(23, 32, 51, .08);
    background: #fff;
    transform: rotate(45deg);
}

.cal-page[b-kf6rl2uw73]  .picker-divider {
    width: 1px;
    background: #ececec;
}

.cal-page[b-kf6rl2uw73]  .picker-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.cal-page[b-kf6rl2uw73]  .picker-title {
    color: #1b1b1b;
    font-size: 1.2rem;
    font-weight: 900;
    text-align: center;
}

.cal-page[b-kf6rl2uw73]  .picker-arrow {
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 8px;
    display: grid;
    place-items: center;
    background: transparent;
    color: #777;
    cursor: pointer;
    transition: .16s ease;
}

.cal-page[b-kf6rl2uw73]  .picker-arrow:hover {
    background: #f2f2f2;
    color: var(--cal-red);
}

.cal-page[b-kf6rl2uw73]  .picker-weekdays,
.cal-page[b-kf6rl2uw73]  .picker-days {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
}

.cal-page[b-kf6rl2uw73]  .picker-weekdays span {
    color: #9b9b9b;
    font-size: .64rem;
    font-weight: 900;
    text-align: center;
}

.cal-page[b-kf6rl2uw73]  .picker-day,
.cal-page[b-kf6rl2uw73]  .picker-month {
    height: 32px;
    border: 0;
    border-radius: 5px;
    background: #eee;
    color: #8a8a8a;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
    transition: .16s ease;
}

.cal-page[b-kf6rl2uw73]  .picker-day:hover,
.cal-page[b-kf6rl2uw73]  .picker-month:hover {
    background: #e3d3d3;
    color: var(--cal-red);
}

.cal-page[b-kf6rl2uw73]  .picker-day.is-muted {
    background: #f3f3f3;
    color: #d7d7d7;
}

.cal-page[b-kf6rl2uw73]  .picker-day.is-selected,
.cal-page[b-kf6rl2uw73]  .picker-month.is-selected {
    background: var(--cal-red);
    color: #fff;
}

.cal-page[b-kf6rl2uw73]  .picker-months {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.cal-page[b-kf6rl2uw73]  .picker-month {
    height: 54px;
    border-radius: 8px;
    font-size: 1.05rem;
}

/* Views */

.cal-page[b-kf6rl2uw73]  .cal-view {
    display: none;
}

.cal-page[b-kf6rl2uw73]  .cal-view.active {
    display: block;
}

/* Month */

.cal-page[b-kf6rl2uw73]  .month-board {
    position: relative;
}

.cal-page[b-kf6rl2uw73]  .cal-week-heads {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 12px;
    margin-bottom: 12px;
}

.cal-page[b-kf6rl2uw73]  .cal-week-heads span {
    height: 36px;
    border: 1px solid #e4e4e4;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: #777;
    font-size: 1.04rem;
    font-weight: 900;
    line-height: 1;
}

.cal-page[b-kf6rl2uw73]  .cal-month-grid {
    display: grid;
    gap: 12px;
}

.cal-page[b-kf6rl2uw73]  .cal-month-week {
    position: relative;
    min-height: 124px;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 12px;
}

.cal-page[b-kf6rl2uw73]  .cal-day-cell {
    position: relative;
    min-height: 124px;
    overflow: hidden;
    border: 0;
    border-radius: 10px;
    background: #f1f1f1;
    cursor: pointer;
    transition: .16s ease;
}

.cal-page[b-kf6rl2uw73]  .cal-day-cell:hover {
    background: #ececec;
}

.cal-page[b-kf6rl2uw73]  .cal-day-cell.is-today {
    background: #d0d0d0;
}

.cal-page[b-kf6rl2uw73]  .cal-day-cell.is-muted {
    background: #f5f5f5;
}

.cal-page[b-kf6rl2uw73]  .cal-day-cell.is-muted .day-number {
    color: #bfbfbf;
}

.cal-page[b-kf6rl2uw73]  .day-number {
    position: absolute;
    top: 8px;
    right: 10px;
    z-index: 3;
    color: #111;
    font-size: 1.15rem;
    font-weight: 900;
    line-height: 1;
}

.cal-page[b-kf6rl2uw73]  .month-event-layer {
    pointer-events: none;
    position: absolute;
    inset: 36px 0 0;
    z-index: 5;
    overflow: visible;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    grid-auto-rows: 0;
    column-gap: 12px;
}

.cal-page[b-kf6rl2uw73]  .month-event-bar {
    pointer-events: auto;
    position: relative;
    min-width: 0;
    height: 16px;
    grid-column: var(--start) / span var(--span);
    grid-row: 1 !important;
    align-self: start;
    margin-top: 0 !important;
    padding: 0 7px;
    overflow: hidden;
    border-radius: 4px;
    background: #970006;
    color: #fff;
    font-size: .6rem;
    font-weight: 800;
    line-height: 16px;
    text-decoration: none;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-shadow: 0 1px 0 rgba(255, 255, 255, .15) inset;
    transform: translateY(calc((var(--slot) - 1) * 18px));
}

.cal-page[b-kf6rl2uw73]  .month-event-bar:hover {
    background: #760004;
    color: #fff;
}

.cal-page[b-kf6rl2uw73]  .month-event-bar::before {
    content: "● ";
    font-size: .55rem;
}

.cal-page[b-kf6rl2uw73]  .month-more {
    position: absolute;
    top: var(--more-top, 91px);
    bottom: auto;
    left: 10px;
    z-index: 20;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--cal-red);
    font-family: inherit;
    font-size: .82rem;
    font-weight: 900;
    line-height: 1;
    cursor: pointer;
}

.cal-page[b-kf6rl2uw73]  .month-more:hover {
    text-decoration: underline;
}

/* Week */

.cal-page[b-kf6rl2uw73]  .week-board {
    position: relative;
    overflow: hidden;
}

.cal-page[b-kf6rl2uw73]  .week-grid {
    min-height: 570px;
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 12px;
}

.cal-page[b-kf6rl2uw73]  .week-col {
    position: relative;
    min-height: 570px;
    overflow: hidden;
    border: 0;
    border-radius: 10px;
    background: #f1f1f1;
    cursor: pointer;
}

.cal-page[b-kf6rl2uw73]  .week-col:hover {
    background: #ececec;
}

.cal-page[b-kf6rl2uw73]  .week-col.is-today {
    background: #d0d0d0;
}

.cal-page[b-kf6rl2uw73]  .week-col-head {
    position: absolute;
    top: 8px;
    right: 10px;
    z-index: 5;
    display: block;
    padding: 0;
    color: #111;
    font-size: 1.18rem;
    font-weight: 900;
    line-height: 1;
    text-align: right;
}

.cal-page[b-kf6rl2uw73]  .week-event-layer {
    pointer-events: none;
    position: absolute;
    inset: 88px 0 0;
    z-index: 8;
    overflow: hidden;
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    grid-auto-rows: 0;
    column-gap: 12px;
}

.cal-page[b-kf6rl2uw73]  .week-event-bar {
    pointer-events: auto;
    min-height: 38px;
    height: 38px;
    grid-column: var(--start) / span var(--span);
    grid-row: 1 !important;
    align-self: start;
    margin-top: 0 !important;
    padding: 5px 8px;
    overflow: hidden;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #970006;
    color: #fff;
    text-decoration: none;
    box-shadow: 0 1px 0 rgba(255, 255, 255, .12) inset;
    transform: translateY(calc((var(--slot) - 1) * 41px));
}

.cal-page[b-kf6rl2uw73]  .week-event-bar:hover {
    background: #760004;
    color: #fff;
}

.cal-page[b-kf6rl2uw73]  .week-event-title {
    display: block;
    overflow: hidden;
    color: #fff;
    font-size: .68rem;
    font-weight: 900;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cal-page[b-kf6rl2uw73]  .week-event-title::before {
    content: "● ";
    font-size: .58rem;
}

.cal-page[b-kf6rl2uw73]  .week-event-time {
    display: block;
    margin-top: 2px;
    color: rgba(255, 255, 255, .88);
    font-size: .62rem;
    font-weight: 700;
    line-height: 1.1;
}

.cal-page[b-kf6rl2uw73]  .week-more {
    position: absolute;
    top: 296px;
    bottom: auto;
    left: 10px;
    z-index: 9;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--cal-red);
    font-family: inherit;
    font-size: .85rem;
    font-weight: 900;
    cursor: pointer;
}

.cal-page[b-kf6rl2uw73]  .week-more:hover {
    text-decoration: underline;
}

/* Day */

.cal-page[b-kf6rl2uw73]  .day-board {
    min-height: 520px;
}

.cal-page[b-kf6rl2uw73]  .day-header-bar {
    height: 42px;
    margin-bottom: 14px;
    border: 1px solid #e4e4e4;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: #777;
    font-size: 1.08rem;
    font-weight: 900;
}

.cal-page[b-kf6rl2uw73]  .day-list {
    max-height: 520px;
    overflow-y: auto;
    padding-right: 8px;
}

.cal-page[b-kf6rl2uw73]  .day-list::-webkit-scrollbar,
.cal-page[b-kf6rl2uw73]  .agenda-list::-webkit-scrollbar {
    width: 9px;
}

.cal-page[b-kf6rl2uw73]  .day-list::-webkit-scrollbar-track,
.cal-page[b-kf6rl2uw73]  .agenda-list::-webkit-scrollbar-track {
    border-radius: 999px;
    background: #eee;
}

.cal-page[b-kf6rl2uw73]  .day-list::-webkit-scrollbar-thumb,
.cal-page[b-kf6rl2uw73]  .agenda-list::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: var(--cal-red);
}

.cal-page[b-kf6rl2uw73]  .day-event-row {
    min-height: 56px;
    padding: 6px 0;
    display: grid;
    grid-template-columns: 260px 1fr;
    align-items: center;
    gap: 18px;
    border-bottom: 1px solid #ececec;
    color: var(--cal-red);
    text-decoration: none;
}

.cal-page[b-kf6rl2uw73]  .day-event-row:hover .day-event-title {
    color: #5c0001;
    text-decoration: underline;
}

.cal-page[b-kf6rl2uw73]  .day-event-badge {
    height: 42px;
    overflow: hidden;
    border-radius: 8px;
    display: grid;
    grid-template-columns: 1fr 1.25fr;
    align-items: center;
    background: #970006;
    color: #fff;
}

.cal-page[b-kf6rl2uw73]  .day-badge-date,
.cal-page[b-kf6rl2uw73]  .day-badge-time {
    height: 100%;
    padding: 0 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .92rem;
    font-weight: 900;
    white-space: nowrap;
}

.cal-page[b-kf6rl2uw73]  .day-badge-date {
    border-right: 1px solid rgba(255, 255, 255, .18);
    color: #fff;
}

.cal-page[b-kf6rl2uw73]  .day-badge-time {
    color: #ffcc1f;
}

.cal-page[b-kf6rl2uw73]  .day-event-title {
    color: var(--cal-red);
    font-size: 1.05rem;
    font-weight: 500;
    line-height: 1.5;
    transition: .16s ease;
}

.cal-page[b-kf6rl2uw73]  .empty-state {
    padding: 36px;
    border-radius: 16px;
    background: #f7f7f7;
    color: #777;
    font-weight: 800;
    text-align: center;
}

/* Agenda */

.cal-page[b-kf6rl2uw73]  .agenda-section {
    margin-top: 58px;
    padding: 26px 28px 18px;
    border: 1px solid #e9e9e9;
    border-radius: 18px;
    background: #f3f3f3;
}

.cal-page[b-kf6rl2uw73]  .agenda-section.is-hidden {
    display: none;
}

.cal-page[b-kf6rl2uw73]  .agenda-section-title {
    margin: 0 0 18px;
    color: var(--cal-text);
    font-size: 1.45rem;
    font-weight: 900;
}

.cal-page[b-kf6rl2uw73]  .agenda-section-title span {
    margin-left: 5px;
    color: var(--cal-red);
    font-size: 1.05rem;
}

.cal-page[b-kf6rl2uw73]  .agenda-list {
    max-height: 330px;
    overflow-y: auto;
    padding-right: 12px;
}

.cal-page[b-kf6rl2uw73]  .agenda-row {
    min-height: 54px;
    padding: 8px 0;
    display: grid;
    grid-template-columns: 138px 1fr;
    align-items: center;
    gap: 20px;
    border-bottom: 1px solid #dedede;
    color: var(--cal-red);
    text-decoration: none;
}

.cal-page[b-kf6rl2uw73]  .agenda-row:last-child {
    border-bottom: 0;
}

.cal-page[b-kf6rl2uw73]  .agenda-row:hover .agenda-row-name {
    color: #5c0001;
    text-decoration: underline;
}

.cal-page[b-kf6rl2uw73]  .agenda-badge {
    height: 38px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #970006;
    color: #fff;
    font-size: .92rem;
    font-weight: 900;
    white-space: nowrap;
}

.cal-page[b-kf6rl2uw73]  .agenda-row-name {
    overflow: hidden;
    color: var(--cal-red);
    font-size: 1.02rem;
    font-weight: 500;
    line-height: 1.45;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 991.98px) {
    .cal-page[b-kf6rl2uw73]  .cal-wrap {
        width: min(100% - 32px, 1320px);
        padding-top: 44px;
    }

    .cal-page[b-kf6rl2uw73]  .cal-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .cal-page[b-kf6rl2uw73]  .cal-view-tabs {
        width: 100%;
        justify-content: flex-end;
        gap: 14px;
    }

    .cal-page[b-kf6rl2uw73]  .cal-picker {
        top: calc(100% + 8px);
        left: 0;
    }

    .cal-page[b-kf6rl2uw73]  .cal-month-week,
    .cal-page[b-kf6rl2uw73]  .cal-week-heads,
    .cal-page[b-kf6rl2uw73]  .week-grid,
    .cal-page[b-kf6rl2uw73]  .month-event-layer,
    .cal-page[b-kf6rl2uw73]  .week-event-layer {
        gap: 7px;
        column-gap: 7px;
    }

    .cal-page[b-kf6rl2uw73]  .cal-day-cell,
    .cal-page[b-kf6rl2uw73]  .cal-month-week {
        min-height: 104px;
    }

    .cal-page[b-kf6rl2uw73]  .week-col,
    .cal-page[b-kf6rl2uw73]  .week-grid {
        min-height: 440px;
    }

    .cal-page[b-kf6rl2uw73]  .day-event-row {
        grid-template-columns: 230px 1fr;
    }
}

@media (max-width: 767.98px) {
    .cal-page[b-kf6rl2uw73]  .cal-week-heads span {
        height: 30px;
        font-size: .75rem;
    }

    .cal-page[b-kf6rl2uw73]  .day-number {
        top: 6px;
        right: 7px;
        font-size: .9rem;
    }

    .cal-page[b-kf6rl2uw73]  .month-event-bar {
        padding: 0 4px;
        font-size: .54rem;
    }

    .cal-page[b-kf6rl2uw73]  .day-event-row,
    .cal-page[b-kf6rl2uw73]  .agenda-row {
        grid-template-columns: 1fr;
        align-items: start;
        gap: 8px;
    }

    .cal-page[b-kf6rl2uw73]  .day-event-badge {
        width: min(100%, 260px);
    }

    .cal-page[b-kf6rl2uw73]  .agenda-badge {
        width: 138px;
    }

    .cal-page[b-kf6rl2uw73]  .cal-picker {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .cal-page[b-kf6rl2uw73]  .picker-divider {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .cal-page[b-kf6rl2uw73]  .cal-wrap {
        width: min(100% - 24px, 1320px);
        padding-top: 34px;
    }

    .cal-page[b-kf6rl2uw73]  .cal-period {
        font-size: 1rem;
    }

    .cal-page[b-kf6rl2uw73]  .cal-view-tabs {
        justify-content: flex-start;
        flex-wrap: wrap;
        gap: 10px;
    }

    .cal-page[b-kf6rl2uw73]  .cal-today-btn {
        min-width: 78px;
        min-height: 38px;
        font-size: .94rem;
    }

    .cal-page[b-kf6rl2uw73]  .cal-month-week,
    .cal-page[b-kf6rl2uw73]  .cal-day-cell {
        min-height: 86px;
    }

    .cal-page[b-kf6rl2uw73]  .cal-day-cell {
        border-radius: 8px;
    }

    .cal-page[b-kf6rl2uw73]  .month-event-layer {
        inset: 30px 0 0;
    }

    .cal-page[b-kf6rl2uw73]  .month-event-bar {
        height: 15px;
        margin-top: 0 !important;
        line-height: 15px;
        transform: translateY(calc((var(--slot) - 1) * 17px));
    }

    .cal-page[b-kf6rl2uw73]  .week-col,
    .cal-page[b-kf6rl2uw73]  .week-grid {
        min-height: 360px;
    }

    .cal-page[b-kf6rl2uw73]  .week-event-bar {
        min-height: 42px;
        padding: 6px 7px;
    }

    .cal-page[b-kf6rl2uw73]  .agenda-section {
        margin-top: 36px;
        padding: 20px 16px 14px;
    }
}


/* Database loading / error state */
.cal-page[b-kf6rl2uw73]  .cal-data-state {
    min-height: 180px;
    margin-top: 8px;
    border: 1px solid #ececec;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background: #f8f8f8;
    color: #555;
    font-weight: 800;
}

.cal-page[b-kf6rl2uw73]  .cal-data-loading .spinner-border {
    color: var(--cal-red);
}

.cal-page[b-kf6rl2uw73]  .cal-data-error {
    min-height: 150px;
    padding: 24px;
    flex-direction: column;
    text-align: center;
}

.cal-page[b-kf6rl2uw73]  .cal-data-error-main {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #7a1c1d;
}

.cal-page[b-kf6rl2uw73]  .cal-data-error-main i {
    color: var(--cal-red);
}

.cal-page[b-kf6rl2uw73]  .cal-retry-btn {
    min-height: 40px;
    padding: 0 18px;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: var(--cal-red);
    color: #fff;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
}

.cal-page[b-kf6rl2uw73]  .cal-retry-btn:hover {
    background: var(--cal-red-dark);
}
/* /Components/Pages/ChangePassword.razor.rz.scp.css */
.change-password-page[b-8alu0cdfpr] {
    min-height: calc(100vh - 74px);
    padding: 44px 0 76px;
    background: #f4f6f8;
    color: #172033;
}

.change-password-page-header[b-8alu0cdfpr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
    padding-bottom: 16px;
    border-bottom: 3px solid #8f0001;
}

    .change-password-page-header > div[b-8alu0cdfpr] {
        display: flex;
        align-items: center;
        gap: 10px;
    }

        .change-password-page-header > div > i[b-8alu0cdfpr] {
            color: #8f0001;
            font-size: 1.25rem;
        }

    .change-password-page-header h1[b-8alu0cdfpr] {
        margin: 0;
        color: #8f0001;
        font-size: 1.35rem;
        font-weight: 900;
    }

    .change-password-page-header > a[b-8alu0cdfpr] {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        color: #64748b;
        font-weight: 800;
        text-decoration: none;
    }

        .change-password-page-header > a:hover[b-8alu0cdfpr] {
            color: #8f0001;
        }

.change-password-shell[b-8alu0cdfpr] {
    display: grid;
    grid-template-columns: 330px minmax(0, 1fr);
    gap: 26px;
    align-items: start;
}

.change-password-sidebar[b-8alu0cdfpr] {
    padding: 34px 28px;
    border-radius: 28px;
    background: radial-gradient( circle at 100% 0, rgba(255, 255, 255, .13), transparent 35% ), linear-gradient( 145deg, #8f0001, #650001 );
    color: #fff;
    box-shadow: 0 18px 50px rgba(143, 0, 1, .18);
}

.change-password-logo[b-8alu0cdfpr] {
    width: 112px;
    height: 112px;
    display: grid;
    place-items: center;
    margin: 0 auto 24px;
    padding: 16px;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .18);
}

    .change-password-logo img[b-8alu0cdfpr] {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

.change-password-sidebar h2[b-8alu0cdfpr] {
    margin: 0 0 10px;
    color: #fff;
    font-size: 1.35rem;
    font-weight: 900;
}

.change-password-sidebar p[b-8alu0cdfpr] {
    margin: 0;
    color: rgba(255, 255, 255, .78);
    line-height: 1.7;
}

.change-password-sidebar ul[b-8alu0cdfpr] {
    display: grid;
    gap: 13px;
    margin: 25px 0 0;
    padding: 0;
    list-style: none;
}

.change-password-sidebar li[b-8alu0cdfpr] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    color: rgba(255, 255, 255, .88);
    font-size: .88rem;
    line-height: 1.6;
}

    .change-password-sidebar li i[b-8alu0cdfpr] {
        margin-top: 3px;
        color: #ffd6d8;
    }

.change-password-card[b-8alu0cdfpr] {
    padding: 30px;
    border: 1px solid #e8ebf0;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 16px 44px rgba(23, 32, 51, .07);
}

.change-password-card-title[b-8alu0cdfpr] {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-bottom: 24px;
}

    .change-password-card-title > span[b-8alu0cdfpr] {
        width: 46px;
        height: 46px;
        flex: 0 0 46px;
        display: grid;
        place-items: center;
        border-radius: 15px;
        background: #fff0f1;
        color: #8f0001;
        font-size: 1.15rem;
    }

    .change-password-card-title h2[b-8alu0cdfpr] {
        margin: 0;
        color: #172033;
        font-size: 1.35rem;
        font-weight: 900;
    }

    .change-password-card-title p[b-8alu0cdfpr] {
        margin: 4px 0 0;
        color: #7a8492;
        font-size: .88rem;
    }

.change-password-message[b-8alu0cdfpr] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-bottom: 20px;
    padding: 13px 15px;
    border-radius: 13px;
    font-size: .86rem;
    font-weight: 700;
}

.change-password-message-success[b-8alu0cdfpr] {
    border: 1px solid #b9e3c8;
    background: #edf9f1;
    color: #167442;
}

.change-password-message-error[b-8alu0cdfpr] {
    border: 1px solid #efc3c3;
    background: #fff2f2;
    color: #8f0001;
}

.change-password-fields[b-8alu0cdfpr] {
    display: grid;
    gap: 18px;
}

.password-field label[b-8alu0cdfpr] {
    display: block;
    margin-bottom: 7px;
    color: #3f4a5a;
    font-weight: 900;
}

.password-control-wrap[b-8alu0cdfpr] {
    position: relative;
}

.password-field[b-8alu0cdfpr]  .change-password-control {
    width: 100%;
    height: 50px;
    padding: 0 48px 0 15px;
    border: 1px solid #dfe3e8;
    border-radius: 14px;
    outline: none;
    background: #fff;
    color: #263142;
    font-family: inherit;
    font-size: .94rem;
    transition: border-color .18s ease, box-shadow .18s ease;
}

    .password-field[b-8alu0cdfpr]  .change-password-control:focus {
        border-color: #9b0000;
        box-shadow: 0 0 0 4px rgba(143, 0, 1, .08);
    }

.password-field[b-8alu0cdfpr]  .readonly-control {
    padding-right: 15px;
    background: #f4f6f8;
    color: #707987;
    cursor: not-allowed;
}

.password-field[b-8alu0cdfpr]  .validation-message {
    display: block;
    margin-top: 6px;
    color: #a30000;
    font-size: .8rem;
    font-weight: 700;
}

.password-visibility-button[b-8alu0cdfpr] {
    position: absolute;
    top: 50%;
    right: 14px;
    z-index: 2;
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 0;
    background: transparent;
    color: #8d95a1;
    transform: translateY(-50%);
}

    .password-visibility-button:hover[b-8alu0cdfpr] {
        color: #8f0001;
    }

.change-password-actions[b-8alu0cdfpr] {
    display: flex;
    justify-content: flex-end;
    gap: 11px;
    margin-top: 28px;
    padding-top: 22px;
    border-top: 1px solid #edf0f4;
}

.change-password-cancel[b-8alu0cdfpr],
.change-password-submit[b-8alu0cdfpr] {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 11px 20px;
    border-radius: 999px;
    font-family: inherit;
    font-weight: 900;
    text-decoration: none;
}

.change-password-cancel[b-8alu0cdfpr] {
    border: 1px solid #d9dee5;
    background: #fff;
    color: #596475;
}

    .change-password-cancel:hover[b-8alu0cdfpr] {
        border-color: #8f0001;
        color: #8f0001;
    }

.change-password-submit[b-8alu0cdfpr] {
    border: 0;
    background: linear-gradient(135deg, #8f0001, #b40008);
    color: #fff;
    box-shadow: 0 12px 25px rgba(143, 0, 1, .20);
}

    .change-password-submit:hover:not(:disabled)[b-8alu0cdfpr] {
        background: linear-gradient(135deg, #760001, #a30007);
        transform: translateY(-1px);
    }

    .change-password-submit:disabled[b-8alu0cdfpr] {
        opacity: .65;
        cursor: wait;
    }

.change-password-auth-card[b-8alu0cdfpr] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    padding: 28px;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 16px 44px rgba(23, 32, 51, .08);
}

    .change-password-auth-card > div[b-8alu0cdfpr] {
        width: 58px;
        height: 58px;
        display: grid;
        place-items: center;
        border-radius: 18px;
        background: #fff0f1;
        color: #8f0001;
        font-size: 1.5rem;
    }

    .change-password-auth-card h1[b-8alu0cdfpr] {
        margin: 0 0 4px;
        color: #172033;
        font-size: 1.3rem;
        font-weight: 900;
    }

    .change-password-auth-card p[b-8alu0cdfpr] {
        margin: 0;
        color: #64748b;
    }

    .change-password-auth-card > a[b-8alu0cdfpr] {
        padding: 11px 18px;
        border-radius: 999px;
        background: #8f0001;
        color: #fff;
        font-weight: 900;
        text-decoration: none;
    }

@media (max-width: 991.98px) {
    .change-password-shell[b-8alu0cdfpr] {
        grid-template-columns: 1fr;
    }

    .change-password-sidebar[b-8alu0cdfpr] {
        position: static;
    }
}

@media (max-width: 575.98px) {
    .change-password-page[b-8alu0cdfpr] {
        padding: 26px 0 52px;
    }

    .change-password-page-header[b-8alu0cdfpr] {
        align-items: flex-start;
        flex-direction: column;
    }

    .change-password-card[b-8alu0cdfpr],
    .change-password-sidebar[b-8alu0cdfpr] {
        padding: 24px 20px;
        border-radius: 22px;
    }

    .change-password-actions[b-8alu0cdfpr] {
        flex-direction: column-reverse;
    }

    .change-password-cancel[b-8alu0cdfpr],
    .change-password-submit[b-8alu0cdfpr] {
        width: 100%;
    }

    .change-password-auth-card[b-8alu0cdfpr] {
        grid-template-columns: 1fr;
        text-align: center;
    }

        .change-password-auth-card > div[b-8alu0cdfpr] {
            margin: 0 auto;
        }
}
/* /Components/Pages/ContactUs.razor.rz.scp.css */
.contact-page[b-v8l58sig6d] {
    min-height: 100vh;
    background: #f5f6f8;
    color: #172033;
}

.page-hero[b-v8l58sig6d] {
    padding: 38px 0 0;
    background: #fff;
}

.page-hero h1[b-v8l58sig6d] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    color: #8f0001;
    font-size: clamp(1.8rem, 3.5vw, 2.4rem);
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: -.02em;
}

.page-hero h1 i[b-v8l58sig6d] {
    flex: 0 0 auto;
    font-size: 1.9rem;
}

.page-hero-divider[b-v8l58sig6d] {
    margin: 18px 0 0;
    border: 0;
    border-top: 2px solid #8f0001;
    opacity: 1;
}

.contact-section[b-v8l58sig6d] {
    padding: 44px 0 60px;
}

.contact-info-section[b-v8l58sig6d] {
    padding-bottom: 40px;
}

.contact-info-wrap[b-v8l58sig6d] {
    overflow: hidden;
    margin-bottom: 0;
    border: 1px solid #e7eaf0;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 8px 36px rgba(23, 32, 51, .07);
}

.contact-info-header[b-v8l58sig6d] {
    padding: 28px 36px;
    background: #8f0001;
}

.contact-info-header h2[b-v8l58sig6d] {
    margin: 0 0 4px;
    color: #fff;
    font-size: 1.15rem;
    font-weight: 900;
    line-height: 1.5;
}

.contact-info-header p[b-v8l58sig6d] {
    margin: 0;
    color: rgba(255, 255, 255, .75);
    font-size: .93rem;
}

.contact-info-body[b-v8l58sig6d] {
    padding: 12px 0;
}

.contact-info-right[b-v8l58sig6d] {
    border-left: 1px solid #f3f4f6;
}

.contact-info-row[b-v8l58sig6d] {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 18px 36px;
    transition: background .15s;
}

.contact-info-row:hover[b-v8l58sig6d] {
    background: #fafafa;
}

.contact-info-row + .contact-info-row[b-v8l58sig6d] {
    border-top: 1px solid #f3f4f6;
}

.cir-icon[b-v8l58sig6d] {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff2f3;
    color: #8f0001;
    font-size: 1.1rem;
}

.cir-icon.teal[b-v8l58sig6d] {
    background: #e6f7f4;
    color: #0e7c6a;
}

.cir-icon.blue[b-v8l58sig6d] {
    background: #e8f0fe;
    color: #1a56db;
}

.cir-icon.amber[b-v8l58sig6d] {
    background: #fef3e2;
    color: #b45309;
}

.contact-info-text[b-v8l58sig6d] {
    flex: 1;
    min-width: 0;
}

.ci-label[b-v8l58sig6d] {
    margin-bottom: 4px;
    color: #94a3b8;
    font-size: .8rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.ci-value[b-v8l58sig6d] {
    color: #172033;
    font-size: .97rem;
    font-weight: 700;
    line-height: 1.65;
}

.ci-value a[b-v8l58sig6d] {
    color: #172033;
    text-decoration: none;
}

.ci-value a:hover[b-v8l58sig6d] {
    color: #8f0001;
}

.contact-separator[b-v8l58sig6d] {
    display: inline-block;
    margin: 0 8px;
    color: #94a3b8;
}

.social-strip[b-v8l58sig6d] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 20px 36px;
    border-top: 1px solid #f3f4f6;
    background: #fafafa;
}

.social-strip > span:first-child[b-v8l58sig6d] {
    margin-right: 4px;
    color: #94a3b8;
    font-size: .88rem;
    font-weight: 800;
}

.ss-btn[b-v8l58sig6d] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    text-decoration: none;
    transition: .18s ease;
}

.ss-btn.fb[b-v8l58sig6d] {
    background: #e8f0fe;
    color: #1877f2;
}

.ss-btn.line[b-v8l58sig6d] {
    background: #e6f9ed;
    color: #06c755;
}

.ss-btn.mail[b-v8l58sig6d] {
    background: #fff2f3;
    color: #8f0001;
}

a.ss-btn:hover[b-v8l58sig6d] {
    transform: scale(1.12);
}

.ss-btn.is-disabled[b-v8l58sig6d] {
    cursor: not-allowed;
    filter: grayscale(.45);
    opacity: .55;
}

.section-divider[b-v8l58sig6d] {
    margin: 0;
    border: 0;
    border-top: 1px solid #edf0f5;
    opacity: 1;
}

.section-head[b-v8l58sig6d] {
    margin-bottom: 28px;
}

.label-red[b-v8l58sig6d] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #8f0001;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.section-head h2[b-v8l58sig6d] {
    margin: 8px 0 0;
    color: #172033;
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: -.03em;
}

.map-wrap[b-v8l58sig6d] {
    overflow: hidden;
    border: 1px solid #eceff4;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 10px 36px rgba(23, 32, 51, .07);
}

.map-wrap iframe[b-v8l58sig6d] {
    display: block;
    width: 100%;
    height: 340px;
    border: 0;
}

.travel-card[b-v8l58sig6d] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 20px 22px;
    border: 1px solid #e7eaf0;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 4px 20px rgba(23, 32, 51, .06);
}

.travel-icon[b-v8l58sig6d] {
    flex: 0 0 auto;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff0f0;
}

.travel-icon i[b-v8l58sig6d] {
    color: #8f0001;
    font-size: 1.5rem;
}

.travel-card h3[b-v8l58sig6d] {
    margin: 0 0 6px;
    color: #172033;
    font-size: .97rem;
    font-weight: 900;
}

.travel-card p[b-v8l58sig6d] {
    margin: 0;
    color: #64748b;
    font-size: .93rem;
    line-height: 1.75;
}

.contact-form-card[b-v8l58sig6d] {
    padding: 36px 32px;
    border: 1px solid #eceff4;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 12px 44px rgba(23, 32, 51, .08);
}

.contact-form-card .form-label[b-v8l58sig6d] {
    color: #172033;
    font-size: .95rem;
    font-weight: 900;
}

.required-mark[b-v8l58sig6d] {
    color: #8f0001;
}

/*
 * InputText, InputSelect, InputTextArea และ ValidationMessage
 * เป็น Child Components จึงใช้ ::deep เพื่อให้ CSS Isolation
 * เข้าไปแต่ง Element ที่ Component เหล่านี้ Render ออกมา
 */
.contact-form-card[b-v8l58sig6d]  .form-control,
.contact-form-card[b-v8l58sig6d]  .form-select {
    min-height: 52px;
    border: 1px solid #e7eaf0;
    border-radius: 14px;
    color: #334155;
    font-size: .97rem;
    font-weight: 600;
}

.contact-form-card[b-v8l58sig6d]  textarea.form-control {
    min-height: 140px;
    resize: vertical;
}

.contact-form-card[b-v8l58sig6d]  .form-control:focus,
.contact-form-card[b-v8l58sig6d]  .form-select:focus {
    border-color: #8f0001;
    box-shadow: 0 0 0 3px rgba(143, 0, 1, .1);
}

.contact-form-card[b-v8l58sig6d]  .form-control.invalid,
.contact-form-card[b-v8l58sig6d]  .form-select.invalid {
    border-color: #dc3545;
}

.contact-form-card[b-v8l58sig6d]  .validation-message {
    margin-top: 6px;
    color: #b42318;
    font-size: .84rem;
    font-weight: 700;
}

.contact-form-actions[b-v8l58sig6d] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 4px;
}

.contact-form-actions p[b-v8l58sig6d] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
    color: #94a3b8;
    font-size: .88rem;
}

.submit-message-button[b-v8l58sig6d] {
    min-width: 190px;
    min-height: 48px;
    padding: 0 28px;
    border: 1px solid #8f0001;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-weight: 900;
    box-shadow: 0 12px 26px rgba(143, 0, 1, .18);
    cursor: pointer;
    transition: .18s ease;
}

.submit-message-button:hover:not(:disabled)[b-v8l58sig6d] {
    border-color: #680001;
    background: #680001;
    transform: translateY(-1px);
}

.submit-message-button:disabled[b-v8l58sig6d] {
    cursor: not-allowed;
    opacity: .68;
}

.contact-spinner[b-v8l58sig6d] {
    width: 17px;
    height: 17px;
    border: 2px solid rgba(255, 255, 255, .38);
    border-top-color: #fff;
    border-radius: 50%;
    animation: contactSpinner-b-v8l58sig6d .7s linear infinite;
}

@keyframes contactSpinner-b-v8l58sig6d {
    to {
        transform: rotate(360deg);
    }
}

.form-success[b-v8l58sig6d],
.form-error[b-v8l58sig6d] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 18px;
    padding: 14px 16px;
    border-radius: 12px;
    font-weight: 700;
    line-height: 1.55;
}

.form-success[b-v8l58sig6d] {
    border: 1px solid #bbf7d0;
    background: #f0fdf4;
    color: #166534;
}

.form-error[b-v8l58sig6d] {
    border: 1px solid #fecaca;
    background: #fef2f2;
    color: #991b1b;
}

.form-success i[b-v8l58sig6d],
.form-error i[b-v8l58sig6d] {
    flex: 0 0 auto;
    margin-top: 2px;
}

@media (max-width: 991.98px) {
    .contact-info-right[b-v8l58sig6d] {
        border-top: 1px solid #f3f4f6;
        border-left: 0;
    }

    .contact-form-card[b-v8l58sig6d] {
        padding: 24px 18px;
    }
}

@media (max-width: 575.98px) {
    .page-hero[b-v8l58sig6d] {
        padding-top: 30px;
    }

    .contact-section[b-v8l58sig6d] {
        padding: 34px 0 46px;
    }

    .contact-info-header[b-v8l58sig6d] {
        padding: 24px 20px;
    }

    .contact-info-row[b-v8l58sig6d] {
        padding: 18px 20px;
    }

    .social-strip[b-v8l58sig6d] {
        padding: 18px 20px;
    }

    .contact-form-actions[b-v8l58sig6d] {
        align-items: stretch;
        flex-direction: column;
    }

    .submit-message-button[b-v8l58sig6d] {
        width: 100%;
    }
}

.captcha-panel[b-v8l58sig6d] {
    padding: 18px 20px;
    border: 1px solid #e7eaf0;
    border-radius: 16px;
    background: #fafbfc;
}

.captcha-panel-head[b-v8l58sig6d] {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 14px;
}

    .captcha-panel-head > i[b-v8l58sig6d] {
        width: 38px;
        height: 38px;
        flex: 0 0 38px;
        display: grid;
        place-items: center;
        border-radius: 11px;
        background: #fff2f3;
        color: #8f0001;
        font-size: 1.05rem;
    }

    .captcha-panel-head > div[b-v8l58sig6d] {
        display: flex;
        flex-direction: column;
        gap: 2px;
    }

    .captcha-panel-head strong[b-v8l58sig6d] {
        color: #172033;
        font-size: .93rem;
        font-weight: 900;
    }

    .captcha-panel-head span[b-v8l58sig6d] {
        color: #64748b;
        font-size: .82rem;
        font-weight: 600;
    }

.turnstile-widget-host[b-v8l58sig6d] {
    min-height: 65px;
}

.captcha-error[b-v8l58sig6d] {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 8px;
    color: #b42318;
    font-size: .84rem;
    font-weight: 700;
}

@media (max-width: 575.98px) {
    .captcha-panel[b-v8l58sig6d] {
        padding: 16px;
    }
}
/* /Components/Pages/EventDetail.razor.rz.scp.css */
.event-detail-page[b-133cdckddi],
.copy-toast[b-133cdckddi] {
    --event-red: #8F0001;
    --event-red-dark: #650001;
    --event-soft: #f7f8fa;
    --event-text: #172033;
    --event-muted: #667085;
    --event-line: #e3e5ea;
    --event-shadow: 0 14px 38px rgba(23, 32, 51, .10);
}

.event-detail-page[b-133cdckddi] {
    min-height: 100vh;
    background: var(--event-soft);
    font-family: 'Noto Sans Thai', sans-serif;
}

.event-detail-wrap[b-133cdckddi] {
    max-width: 1320px;
    margin: 0 auto;
    padding: 68px 24px 78px;
}

/* Breadcrumb */
.event-breadcrumb[b-133cdckddi] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
    color: var(--event-muted);
    font-size: .92rem;
    font-weight: 700;
}

.event-breadcrumb a[b-133cdckddi] {
    color: var(--event-red);
    text-decoration: none;
}

.event-breadcrumb a:hover[b-133cdckddi] {
    text-decoration: underline;
}

.event-breadcrumb i[b-133cdckddi] {
    color: rgba(143, 0, 1, .65);
    font-size: .78rem;
}

/* Title / Meta */
.event-title[b-133cdckddi] {
    margin: 0;
    color: var(--event-red);
    font-size: clamp(1.75rem, 2.75vw, 2.7rem);
    font-weight: 900;
    line-height: 1.28;
    letter-spacing: -.02em;
}

.event-meta-row[b-133cdckddi] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 16px;
    color: var(--event-muted);
    font-size: .95rem;
    font-weight: 800;
}

.event-meta-item[b-133cdckddi] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.event-meta-item i[b-133cdckddi] {
    color: var(--event-red);
    font-size: 1rem;
}

.event-divider[b-133cdckddi] {
    height: 2px;
    margin: 28px 0 26px;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        var(--event-red),
        rgba(143, 0, 1, .08)
    );
}

/* Hero */
.event-hero[b-133cdckddi] {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    background: #ece9dd;
    border: 1px solid rgba(23, 32, 51, .08);
    box-shadow: var(--event-shadow);
}

.event-hero img[b-133cdckddi] {
    width: 100%;
    height: clamp(320px, 42vw, 540px);
    display: block;
    object-fit: cover;
    object-position: center;
}

.event-hero-caption[b-133cdckddi] {
    position: absolute;
    right: 0;
    bottom: 16%;
    left: 0;
    padding: 26px 32px;
    background: rgba(255, 255, 255, .86);
    backdrop-filter: blur(3px);
    text-align: center;
}

.event-hero-caption span[b-133cdckddi] {
    display: block;
    margin-bottom: 8px;
    color: #111827;
    font-size: clamp(1.1rem, 2vw, 1.7rem);
    font-weight: 900;
    line-height: 1.25;
}

.event-hero-caption strong[b-133cdckddi] {
    display: block;
    color: var(--event-red);
    font-size: clamp(1.55rem, 3.5vw, 3.1rem);
    font-weight: 900;
    line-height: 1.16;
}

/* Main layout */
.event-layout[b-133cdckddi] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 380px;
    gap: 28px;
    align-items: start;
    margin-top: 32px;
}

.event-main-card[b-133cdckddi],
.event-side-card[b-133cdckddi],
.event-share-card[b-133cdckddi] {
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 28px;
    background: #fff;
    box-shadow: var(--event-shadow);
}

.event-main-card[b-133cdckddi] {
    padding: 38px 42px;
}

.event-section[b-133cdckddi] {
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px solid #edf0f4;
}

.event-section:last-child[b-133cdckddi] {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0;
}

.event-section-title[b-133cdckddi] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 16px;
    color: var(--event-red);
    font-size: clamp(1.35rem, 2vw, 1.8rem);
    font-weight: 900;
    line-height: 1.25;
}

.event-section-title i[b-133cdckddi] {
    font-size: 1.25rem;
}

.event-info-list[b-133cdckddi] {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.event-info-list li[b-133cdckddi] {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 8px;
    color: #303846;
    font-size: 1.08rem;
    font-weight: 500;
    line-height: 1.7;
}

.event-info-list i[b-133cdckddi] {
    margin-top: 5px;
    color: var(--event-red);
    font-size: 1.05rem;
}

.event-info-list a[b-133cdckddi] {
    color: #303846;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.event-info-list a:hover[b-133cdckddi] {
    color: var(--event-red);
    text-decoration: underline;
}

.event-content[b-133cdckddi] {
    color: #303846;
    font-size: 1.05rem;
    line-height: 1.95;
}

.event-content p[b-133cdckddi] {
    margin: 0 0 16px;
}

.event-content p:last-child[b-133cdckddi] {
    margin-bottom: 0;
}

.event-content strong[b-133cdckddi] {
    color: var(--event-text);
    font-weight: 900;
}

/* Actions */
.event-actions[b-133cdckddi] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
}

.event-action-primary[b-133cdckddi],
.event-action-secondary[b-133cdckddi] {
    min-height: 48px;
    padding: .75rem 1.25rem;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 900;
    text-decoration: none;
    cursor: pointer;
    transition: .18s ease;
}

.event-action-primary[b-133cdckddi] {
    background: var(--event-red);
    color: #fff;
    box-shadow: 0 12px 24px rgba(143, 0, 1, .18);
}

.event-action-primary:hover[b-133cdckddi] {
    background: var(--event-red-dark);
    color: #fff;
    transform: translateY(-2px);
}

.event-action-secondary[b-133cdckddi] {
    border: 1px solid rgba(143, 0, 1, .22);
    background: #fff;
    color: var(--event-red);
    box-shadow: 0 8px 18px rgba(23, 32, 51, .06);
}

.event-action-secondary:hover[b-133cdckddi] {
    background: #fff3f3;
    color: var(--event-red);
    transform: translateY(-2px);
}

/* Side summary */
.event-layout > aside[b-133cdckddi] {
    position: sticky;
    top: 120px;
    z-index: 2;
    align-self: start;
}

.event-side-card[b-133cdckddi] {
    position: relative;
    overflow: hidden;
}

.event-side-head[b-133cdckddi] {
    padding: 26px;
    background: linear-gradient(
        135deg,
        var(--event-red),
        var(--event-red-dark)
    );
    color: #fff;
}

.event-side-eyebrow[b-133cdckddi] {
    display: block;
    margin-bottom: 8px;
    color: rgba(255, 255, 255, .75);
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.event-side-head h2[b-133cdckddi] {
    margin: 0;
    color: #fff;
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1.35;
}

.event-summary-list[b-133cdckddi] {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}

.event-summary-list li[b-133cdckddi] {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 12px;
    padding: 18px 22px;
    border-bottom: 1px solid #edf0f4;
}

.event-summary-list li:last-child[b-133cdckddi] {
    border-bottom: 0;
}

.event-summary-icon[b-133cdckddi] {
    width: 44px;
    height: 44px;
    border-radius: 15px;
    display: grid;
    place-items: center;
    background: #fff1f1;
    color: var(--event-red);
    font-size: 1.15rem;
}

.event-summary-label[b-133cdckddi] {
    display: block;
    margin-bottom: 3px;
    color: var(--event-muted);
    font-size: .82rem;
    font-weight: 800;
}

.event-summary-value[b-133cdckddi] {
    display: block;
    color: var(--event-text);
    font-size: .98rem;
    font-weight: 900;
    line-height: 1.45;
}

.event-side-footer[b-133cdckddi] {
    padding: 22px;
    background: #fff;
}

.event-side-footer .event-action-primary[b-133cdckddi] {
    width: 100%;
}

/* Share */
.event-share-card[b-133cdckddi] {
    position: relative;
    z-index: 1;
    margin-top: 22px;
    padding: 22px;
    scroll-margin-top: 140px;
}

.event-share-title[b-133cdckddi] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    color: var(--event-red);
    font-size: 1.05rem;
    font-weight: 900;
}

.event-share-title i[b-133cdckddi] {
    font-size: 1.25rem;
}

.event-share-buttons[b-133cdckddi] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.event-share-btn[b-133cdckddi] {
    min-height: 42px;
    padding: 0 12px;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #fff;
    font-family: inherit;
    font-size: .88rem;
    font-weight: 900;
    text-decoration: none;
    cursor: pointer;
    transition: .18s ease;
}

.event-share-btn:hover[b-133cdckddi] {
    color: #fff;
    box-shadow: 0 10px 22px rgba(23, 32, 51, .16);
    transform: translateY(-2px);
}

.event-share-facebook[b-133cdckddi] {
    background: #1877f2;
}

.event-share-line[b-133cdckddi] {
    background: #06c755;
}

.event-share-x[b-133cdckddi] {
    background: #111;
}

.event-share-email[b-133cdckddi] {
    background: #6b7280;
}

.event-share-copy[b-133cdckddi] {
    grid-column: 1 / -1;
    background: var(--event-red);
}

.event-share-card.share-card-focus[b-133cdckddi] {
    animation: shareCardFocus-b-133cdckddi 1.2s ease;
}

@keyframes shareCardFocus-b-133cdckddi {
    0% {
        box-shadow:
            0 0 0 0 rgba(143, 0, 1, .28),
            var(--event-shadow);
        transform: translateY(0);
    }

    35% {
        box-shadow:
            0 0 0 8px rgba(143, 0, 1, .12),
            0 18px 42px rgba(143, 0, 1, .16);
        transform: translateY(-2px);
    }

    100% {
        box-shadow: var(--event-shadow);
        transform: translateY(0);
    }
}

/* Related */
.event-related[b-133cdckddi] {
    margin-top: 48px;
}

.event-related-head[b-133cdckddi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.event-related-head h2[b-133cdckddi] {
    margin: 0;
    color: var(--event-red);
    font-size: 1.55rem;
    font-weight: 900;
}

.event-related-head a[b-133cdckddi] {
    color: var(--event-red);
    font-weight: 900;
    text-decoration: none;
}

.event-related-head a:hover[b-133cdckddi] {
    text-decoration: underline;
}

.event-related-grid[b-133cdckddi] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.event-related-card[b-133cdckddi] {
    overflow: hidden;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(23, 32, 51, .07);
    color: inherit;
    text-decoration: none;
    transition: .18s ease;
}

.event-related-card:hover[b-133cdckddi] {
    color: inherit;
    box-shadow: 0 16px 34px rgba(23, 32, 51, .12);
    transform: translateY(-4px);
}

.event-related-card img[b-133cdckddi] {
    width: 100%;
    height: 150px;
    display: block;
    object-fit: cover;
}

.event-related-body[b-133cdckddi] {
    padding: 16px 18px 18px;
}

.event-related-date[b-133cdckddi] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    color: var(--event-red);
    font-size: .82rem;
    font-weight: 900;
}

.event-related-title[b-133cdckddi] {
    margin: 0;
    overflow: hidden;
    color: var(--event-text);
    font-size: .98rem;
    font-weight: 900;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* Toast */
.copy-toast[b-133cdckddi] {
    position: fixed;
    bottom: 30px;
    left: 50%;
    z-index: 3200;
    padding: .75rem 1.2rem;
    border-radius: 999px;
    background: var(--event-red);
    color: #fff;
    font-weight: 900;
    box-shadow: 0 12px 30px rgba(23, 32, 51, .22);
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, 20px);
    transition: .2s ease;
}

.copy-toast.show[b-133cdckddi] {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
}

@media (max-width: 991.98px) {
    .event-detail-wrap[b-133cdckddi] {
        padding: 52px 18px 64px;
    }

    .event-layout[b-133cdckddi] {
        grid-template-columns: 1fr;
    }

    .event-layout > aside[b-133cdckddi] {
        position: static;
    }

    .event-main-card[b-133cdckddi] {
        padding: 32px 30px;
        border-radius: 24px;
    }

    .event-related-grid[b-133cdckddi] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .event-detail-wrap[b-133cdckddi] {
        padding: 38px 14px 52px;
    }

    .event-title[b-133cdckddi] {
        font-size: 1.45rem;
    }

    .event-meta-row[b-133cdckddi] {
        font-size: .86rem;
    }

    .event-hero[b-133cdckddi] {
        border-radius: 18px;
    }

    .event-hero img[b-133cdckddi] {
        height: 280px;
    }

    .event-hero-caption[b-133cdckddi] {
        position: static;
        padding: 18px;
        background: #fff;
    }

    .event-hero-caption span[b-133cdckddi] {
        font-size: 1rem;
    }

    .event-hero-caption strong[b-133cdckddi] {
        font-size: 1.35rem;
    }

    .event-main-card[b-133cdckddi] {
        padding: 24px 20px;
        border-radius: 22px;
    }

    .event-info-list li[b-133cdckddi] {
        font-size: .96rem;
    }

    .event-content[b-133cdckddi] {
        font-size: .96rem;
        line-height: 1.85;
    }

    .event-actions[b-133cdckddi] {
        align-items: stretch;
        flex-direction: column;
    }

    .event-action-primary[b-133cdckddi],
    .event-action-secondary[b-133cdckddi] {
        width: 100%;
    }

    .event-share-buttons[b-133cdckddi] {
        grid-template-columns: 1fr;
    }

    .event-share-copy[b-133cdckddi] {
        grid-column: auto;
    }

    .event-related-grid[b-133cdckddi] {
        grid-template-columns: 1fr;
    }

    .event-related-head[b-133cdckddi] {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* =========================================================
   Database-bound Event Detail additions
   ========================================================= */

.event-state-card[b-133cdckddi] {
    max-width: 760px;
    margin: 40px auto 0;
    padding: 34px 32px;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 26px;
    display: flex;
    align-items: flex-start;
    gap: 18px;
    background: #fff;
    box-shadow: var(--event-shadow);
}

.event-state-card i[b-133cdckddi],
.event-state-card .spinner-border[b-133cdckddi] {
    flex: 0 0 auto;
    margin-top: 3px;
    color: var(--event-red);
    font-size: 1.55rem;
}

.event-state-card h1[b-133cdckddi] {
    margin: 0 0 6px;
    color: var(--event-red);
    font-size: 1.45rem;
    font-weight: 900;
}

.event-state-card p[b-133cdckddi] {
    margin: 0;
    color: var(--event-muted);
    line-height: 1.7;
}

.event-state-actions[b-133cdckddi] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
}

.event-state-actions a[b-133cdckddi],
.event-state-actions button[b-133cdckddi] {
    min-height: 42px;
    padding: .65rem 1rem;
    border: 1px solid rgba(143, 0, 1, .18);
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #fff;
    color: var(--event-red);
    font-family: inherit;
    font-weight: 900;
    text-decoration: none;
    cursor: pointer;
}

.event-state-actions .event-state-primary[b-133cdckddi] {
    border-color: transparent;
    background: var(--event-red);
    color: #fff;
}

.event-hero.event-hero-real-image[b-133cdckddi] {
    min-height: 320px;
    display: grid;
    place-items: center;
    background: #fff;
}

.event-hero.event-hero-real-image img[b-133cdckddi] {
    width: 100%;
    height: auto;
    max-height: 760px;
    object-fit: contain;
    object-position: center;
    background: #fff;
}

.event-hero-image-fallback[b-133cdckddi] {
    min-height: 320px;
    width: 100%;
    padding: 38px;
    display: none;
    place-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #fff7f7, #f5f6f8);
    color: var(--event-red);
    text-align: center;
}

.event-hero-image-fallback i[b-133cdckddi],
.event-hero-placeholder i[b-133cdckddi] {
    font-size: 3.1rem;
}

.event-hero-image-fallback strong[b-133cdckddi],
.event-hero-placeholder strong[b-133cdckddi] {
    display: block;
    max-width: 760px;
    font-size: clamp(1.2rem, 2.4vw, 2rem);
    font-weight: 900;
    line-height: 1.45;
}

.event-hero.event-hero-real-image.image-load-failed img[b-133cdckddi] {
    display: none;
}

.event-hero.event-hero-real-image.image-load-failed .event-hero-image-fallback[b-133cdckddi] {
    display: grid;
}

.event-hero-placeholder[b-133cdckddi] {
    min-height: 320px;
    padding: 42px;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 8px;
    display: grid;
    place-items: center;
    gap: 12px;
    background: linear-gradient(135deg, #fff7f7, #f5f6f8);
    color: var(--event-red);
    text-align: center;
    box-shadow: var(--event-shadow);
}

.event-content[b-133cdckddi] {
    overflow-wrap: anywhere;
}

.event-content-empty[b-133cdckddi] {
    padding: 18px 20px;
    border-radius: 16px;
    background: #f7f8fa;
    color: var(--event-muted);
    font-weight: 700;
}

.event-content[b-133cdckddi]  img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 18px auto;
}

.event-content[b-133cdckddi]  a {
    color: var(--event-red);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.event-content[b-133cdckddi]  iframe,
.event-content[b-133cdckddi]  video {
    max-width: 100%;
}

.event-content[b-133cdckddi]  table {
    width: 100%;
    max-width: 100%;
    border-collapse: collapse;
}

.event-content[b-133cdckddi]  th,
.event-content[b-133cdckddi]  td {
    padding: 8px 10px;
    border: 1px solid #e5e7eb;
    vertical-align: top;
}

.event-related-image-wrap[b-133cdckddi] {
    position: relative;
    height: 150px;
    overflow: hidden;
    background: #f1f2f4;
}

.event-related-image-wrap > img[b-133cdckddi] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.event-related-image-fallback[b-133cdckddi] {
    position: absolute;
    inset: 0;
    display: none;
    place-items: center;
    background: linear-gradient(135deg, #fff5f5, #eceff3);
    color: var(--event-red);
    font-size: 2rem;
}

.event-related-image-wrap.image-load-failed > img[b-133cdckddi] {
    display: none;
}

.event-related-image-wrap.image-load-failed .event-related-image-fallback[b-133cdckddi] {
    display: grid;
}

.event-related-image-wrap.event-related-no-image .event-related-image-fallback[b-133cdckddi] {
    display: grid;
}

.event-related-empty[b-133cdckddi] {
    grid-column: 1 / -1;
    padding: 26px;
    border: 1px dashed #d9dde4;
    border-radius: 18px;
    background: rgba(255, 255, 255, .62);
    color: var(--event-muted);
    text-align: center;
    font-weight: 800;
}

@media (max-width: 575.98px) {
    .event-state-card[b-133cdckddi] {
        margin-top: 20px;
        padding: 24px 20px;
        border-radius: 20px;
    }

    .event-hero.event-hero-real-image[b-133cdckddi],
    .event-hero-image-fallback[b-133cdckddi],
    .event-hero-placeholder[b-133cdckddi] {
        min-height: 240px;
    }

    .event-hero.event-hero-real-image img[b-133cdckddi] {
        max-height: 520px;
    }

    .event-hero-placeholder[b-133cdckddi] {
        padding: 26px 20px;
        border-radius: 18px;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* Fix: Remove white gap between header and banner */
main#home[b-89chwkqj49] {
    display: block;
    margin: 0;
    padding: 0;
}

.directory-login-required[b-89chwkqj49] {
    min-height: 230px;
    padding: 42px;
    display: flex;
    align-items: center;
    gap: 24px;
    border: 1px solid rgba(143, 0, 1, .12);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(20, 0, 0, .07);
}

    .directory-login-required > div:nth-child(2)[b-89chwkqj49] {
        flex: 1;
    }

    .directory-login-required h2[b-89chwkqj49] {
        margin: 5px 0 7px;
        color: #172033;
        font-size: 1.6rem;
        font-weight: 800;
    }

    .directory-login-required p[b-89chwkqj49] {
        margin: 0;
        color: #6b7280;
    }

.directory-login-icon[b-89chwkqj49] {
    width: 68px;
    height: 68px;
    flex: 0 0 68px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    color: #fff;
    background: linear-gradient(135deg, #a70001, #700001);
    font-size: 1.7rem;
    box-shadow: 0 13px 30px rgba(143, 0, 1, .22);
}

@media (max-width: 767px) {
    .directory-login-required[b-89chwkqj49] {
        padding: 28px 22px;
        flex-direction: column;
        align-items: flex-start;
    }

        .directory-login-required button[b-89chwkqj49] {
            width: 100%;
        }
}
/* /Components/Pages/JobDetail.razor.rz.scp.css */
.job-detail-page[b-mmpgwf9bin] {
    min-height: 100vh;
    overflow: hidden;
    background: #fff;
    color: #172033;
}

.detail-hero[b-mmpgwf9bin] {
    padding: 40px 0 24px;
    border-bottom: 2px solid #8f0001;
    background: #fff;
}

.job-breadcrumb[b-mmpgwf9bin] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
    color: #64748b;
    font-size: .88rem;
    font-weight: 700;
}

.job-breadcrumb a[b-mmpgwf9bin] {
    color: #8f0001;
    text-decoration: none;
}

.job-breadcrumb a:hover[b-mmpgwf9bin] {
    text-decoration: underline;
}

.job-breadcrumb i[b-mmpgwf9bin] {
    color: #b8bec7;
    font-size: .7rem;
}

.page-title-std[b-mmpgwf9bin] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px;
    color: #8f0001;
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1.2;
}

.page-title-std i[b-mmpgwf9bin] {
    font-size: 1.1rem;
}

.detail-meta[b-mmpgwf9bin] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 24px;
    margin-top: 12px;
}

.detail-meta span[b-mmpgwf9bin] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #334155;
    font-size: .95rem;
    font-weight: 700;
}

.detail-meta i[b-mmpgwf9bin] {
    color: #8f0001;
}

.detail-wrap[b-mmpgwf9bin] {
    padding: 40px 0 80px;
    background: #f7f8fa;
}

.detail-grid[b-mmpgwf9bin] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}

.detail-card[b-mmpgwf9bin] {
    padding: 30px;
    border: 1px solid #eceff4;
    border-radius: 32px;
    background: #fff;
    box-shadow: 0 18px 52px rgba(23, 32, 51, .07);
}

.detail-card + .detail-card[b-mmpgwf9bin] {
    margin-top: 20px;
}

.section-title[b-mmpgwf9bin] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 18px;
    color: #172033;
    font-size: 1.35rem;
    font-weight: 900;
}

.section-title i[b-mmpgwf9bin] {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background: #fff0f1;
    color: #8f0001;
}

.job-list[b-mmpgwf9bin] {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.job-list li[b-mmpgwf9bin] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    border-radius: 18px;
    background: #f8fafc;
    color: #334155;
    font-weight: 700;
    line-height: 1.65;
}

.job-list li i[b-mmpgwf9bin] {
    margin-top: 4px;
    color: #8f0001;
}

.info-table[b-mmpgwf9bin] {
    display: grid;
    gap: 12px;
}

.info-row[b-mmpgwf9bin] {
    display: grid;
    grid-template-columns: 130px 1fr;
    gap: 16px;
    padding: 14px 0;
    border-bottom: 1px solid #eef1f5;
}

.info-row:last-child[b-mmpgwf9bin] {
    border-bottom: 0;
}

.info-row b[b-mmpgwf9bin] {
    color: #172033;
    font-weight: 900;
}

.info-row span[b-mmpgwf9bin],
.info-row a[b-mmpgwf9bin] {
    color: #64748b;
    line-height: 1.65;
    overflow-wrap: anywhere;
    text-decoration: none;
}

.info-row a:hover[b-mmpgwf9bin] {
    color: #8f0001;
    text-decoration: underline;
}

.poster-card[b-mmpgwf9bin] {
    overflow: hidden;
    padding: 0;
}

.poster-head[b-mmpgwf9bin] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 26px 30px 18px;
    border-bottom: 1px solid #eef1f5;
}

.poster-head .section-title[b-mmpgwf9bin] {
    margin: 0;
}

.poster-note[b-mmpgwf9bin] {
    color: #94a3b8;
    font-size: .92rem;
    font-weight: 800;
    white-space: nowrap;
}

.poster-frame[b-mmpgwf9bin] {
    position: relative;
    display: block;
    width: 100%;
    padding: 20px;
    border: 0;
    background: linear-gradient(135deg, #fff7f7, #f8fafc);
    text-align: left;
    cursor: zoom-in;
}

.poster-image[b-mmpgwf9bin] {
    display: block;
    width: 100%;
    max-height: 760px;
    border: 1px solid #eef1f5;
    border-radius: 24px;
    object-fit: contain;
    background: #fff;
    box-shadow: 0 18px 45px rgba(23, 32, 51, .08);
}

.poster-zoom[b-mmpgwf9bin] {
    position: absolute;
    right: 34px;
    bottom: 34px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-weight: 900;
    box-shadow: 0 12px 28px rgba(143, 0, 1, .25);
}

.back-row[b-mmpgwf9bin] {
    display: flex;
    justify-content: center;
    margin-top: 34px;
}

.back-to-jobs[b-mmpgwf9bin] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 0 20px;
    border: 1px solid #8f0001;
    border-radius: 999px;
    background: #fff;
    color: #8f0001;
    font-weight: 900;
    text-decoration: none;
}

.back-to-jobs:hover[b-mmpgwf9bin] {
    background: #8f0001;
    color: #fff;
}

.poster-lightbox[b-mmpgwf9bin] {
    position: fixed;
    inset: 0;
    z-index: 9999;
    padding: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(11, 14, 22, .9);
    backdrop-filter: blur(5px);
    outline: none;
}

.poster-lightbox-content[b-mmpgwf9bin] {
    width: min(1180px, 96vw);
    max-height: 94vh;
    overflow: hidden;
    border-radius: 28px;
    background: #111827;
    box-shadow: 0 28px 100px rgba(0, 0, 0, .48);
}

.poster-lightbox-head[b-mmpgwf9bin] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 22px;
    color: #fff;
}

.poster-lightbox-head h2[b-mmpgwf9bin] {
    margin: 0;
    color: #fff;
    font-size: 1.1rem;
    font-weight: 900;
}

.poster-lightbox-head button[b-mmpgwf9bin] {
    width: 40px;
    height: 40px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .08);
    color: #fff;
    cursor: pointer;
}

.poster-lightbox-head button:hover[b-mmpgwf9bin] {
    background: #8f0001;
}

.poster-lightbox-body[b-mmpgwf9bin] {
    max-height: calc(94vh - 76px);
    overflow: auto;
    background: #fff;
}

.poster-lightbox-body img[b-mmpgwf9bin] {
    display: block;
    width: 100%;
    height: auto;
}

.job-not-found[b-mmpgwf9bin] {
    min-height: 620px;
    padding: 48px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background: #f7f8fa;
    text-align: center;
}

.job-not-found > i[b-mmpgwf9bin] {
    margin-bottom: 16px;
    color: #8f0001;
    font-size: 4rem;
}

.job-not-found h1[b-mmpgwf9bin] {
    margin: 0;
    color: #172033;
    font-size: 2rem;
    font-weight: 900;
}

.job-not-found p[b-mmpgwf9bin] {
    max-width: 520px;
    margin: 12px 0 24px;
    color: #64748b;
    line-height: 1.7;
}

@media (max-width: 767.98px) {
    .detail-card[b-mmpgwf9bin] {
        padding: 24px 20px;
        border-radius: 24px;
    }

    .poster-head[b-mmpgwf9bin] {
        align-items: flex-start;
        flex-direction: column;
        padding: 22px 20px 16px;
    }

    .poster-note[b-mmpgwf9bin] {
        white-space: normal;
    }

    .poster-frame[b-mmpgwf9bin] {
        padding: 12px;
    }

    .poster-image[b-mmpgwf9bin] {
        border-radius: 16px;
    }

    .poster-zoom[b-mmpgwf9bin] {
        right: 22px;
        bottom: 22px;
    }

    .info-row[b-mmpgwf9bin] {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .poster-lightbox[b-mmpgwf9bin] {
        padding: 12px;
    }
}

/* =========================================================
   2026-08-17 PATCH: Real DB JobDetail + job_logo
   ========================================================= */

.job-detail-page[b-mmpgwf9bin] {
    background: #f6f7f9;
}

.job-detail-state[b-mmpgwf9bin] {
    min-height: 620px;
    padding: 48px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
    background: #f7f8fa;
    text-align: center;
}

.job-detail-state > i[b-mmpgwf9bin] {
    margin-bottom: 6px;
    color: #8f0001;
    font-size: 4rem;
}

.job-detail-state .spinner-border[b-mmpgwf9bin] {
    margin-bottom: 8px;
    color: #8f0001;
}

.job-detail-state h1[b-mmpgwf9bin] {
    margin: 0;
    color: #172033;
    font-size: 2rem;
    font-weight: 900;
}

.job-detail-state p[b-mmpgwf9bin] {
    max-width: 620px;
    margin: 4px 0 16px;
    color: #64748b;
    line-height: 1.7;
}

.job-state-actions[b-mmpgwf9bin] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.job-retry-button[b-mmpgwf9bin] {
    min-height: 46px;
    padding: 0 20px;
    border: 1px solid #8f0001;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
}

.detail-hero[b-mmpgwf9bin] {
    padding: 38px 0 34px;
    border-bottom: 1px solid rgba(143, 0, 1, .14);
    background:
        radial-gradient(circle at 88% 16%, rgba(143, 0, 1, .08), transparent 28%),
        #fff;
}

.detail-identity[b-mmpgwf9bin] {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 28px;
    align-items: center;
}

.job-detail-logo-media[b-mmpgwf9bin] {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 20% 15%, rgba(143, 0, 1, .08), transparent 38%),
        #f8fafc;
}

.job-detail-logo-media > img[b-mmpgwf9bin] {
    position: absolute;
    inset: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    object-position: center;
    background: #fff;
    transition: transform .3s ease;
}

.detail-logo[b-mmpgwf9bin] {
    width: 190px;
    height: 190px;
    border: 1px solid #e7eaf0;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(23, 32, 51, .09);
}

.detail-logo-fallback[b-mmpgwf9bin] {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
    padding: 18px;
    color: #8f0001;
    text-align: center;
}

.detail-logo-fallback i[b-mmpgwf9bin] {
    font-size: 2.6rem;
    opacity: .72;
}

.detail-logo-fallback strong[b-mmpgwf9bin] {
    max-width: 100%;
    font-size: 1.45rem;
    font-weight: 900;
    overflow-wrap: anywhere;
}

.detail-identity-body[b-mmpgwf9bin] {
    min-width: 0;
}

.detail-label-row[b-mmpgwf9bin] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.detail-featured-badge[b-mmpgwf9bin],
.detail-category-badge[b-mmpgwf9bin] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 11px;
    border-radius: 999px;
    color: #8f0001;
    background: #fff0f1;
    font-size: .82rem;
    font-weight: 900;
}

.detail-featured-badge[b-mmpgwf9bin] {
    color: #fff;
    background: #8f0001;
}

.detail-identity h1[b-mmpgwf9bin] {
    max-width: 950px;
    margin: 0 0 10px;
    color: #172033;
    font-size: clamp(2rem, 4vw, 3.5rem);
    font-weight: 900;
    line-height: 1.14;
    letter-spacing: -.035em;
}

.detail-company-name[b-mmpgwf9bin] {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #8f0001;
    font-size: 1.08rem;
    font-weight: 900;
}

.detail-wrap[b-mmpgwf9bin] {
    padding: 42px 0 82px;
    background: #f6f7f9;
}

.detail-grid[b-mmpgwf9bin] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 24px;
    align-items: start;
}

.detail-main[b-mmpgwf9bin] {
    min-width: 0;
}

.detail-sidebar[b-mmpgwf9bin] {
    position: sticky;
    top: 96px;
    display: grid;
    gap: 20px;
}

.detail-card[b-mmpgwf9bin],
.detail-side-card[b-mmpgwf9bin] {
    border: 1px solid #e9edf2;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 16px 46px rgba(23, 32, 51, .06);
}

.detail-card[b-mmpgwf9bin] {
    padding: 28px;
}

.detail-side-card[b-mmpgwf9bin] {
    padding: 20px;
}

.detail-side-card h2[b-mmpgwf9bin] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 16px;
    color: #172033;
    font-size: 1.05rem;
    font-weight: 900;
}

.detail-side-card h2 i[b-mmpgwf9bin] {
    color: #8f0001;
}

.detail-empty-text[b-mmpgwf9bin] {
    padding: 16px;
    border-radius: 16px;
    background: #f8fafc;
    color: #7a8797;
    font-weight: 700;
}

.job-list[b-mmpgwf9bin] {
    gap: 10px;
}

.job-list li[b-mmpgwf9bin] {
    padding: 14px 16px;
    border-radius: 17px;
}

.job-list-qualification li i[b-mmpgwf9bin] {
    margin-top: 0;
    font-size: 1.35rem;
}

.info-row[b-mmpgwf9bin] {
    grid-template-columns: 145px minmax(0, 1fr);
}

.preserve-lines[b-mmpgwf9bin] {
    white-space: pre-line;
}

/* Sidebar poster */
.poster-frame[b-mmpgwf9bin] {
    position: relative;
    width: 100%;
    min-height: 300px;
    overflow: hidden;
    padding: 0;
    border: 1px solid #edf0f4;
    border-radius: 20px;
    display: block;
    background: #f8fafc;
    cursor: zoom-in;
}

.poster-fallback[b-mmpgwf9bin] {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 8px;
    color: #8f0001;
}

.poster-fallback i[b-mmpgwf9bin] {
    font-size: 2.5rem;
    opacity: .65;
}

.poster-fallback span[b-mmpgwf9bin] {
    font-size: 1.1rem;
    font-weight: 900;
}

.poster-image[b-mmpgwf9bin] {
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    min-height: 300px;
    max-height: 520px;
    border: 0;
    border-radius: 0;
    object-fit: contain;
    background: #fff;
    box-shadow: none;
}

.poster-zoom[b-mmpgwf9bin] {
    right: 12px;
    bottom: 12px;
    z-index: 4;
    padding: 9px 12px;
    font-size: .8rem;
}

.poster-missing[b-mmpgwf9bin] {
    min-height: 230px;
    border: 1px dashed rgba(143, 0, 1, .22);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
    background: #fafbfc;
    color: #8290a0;
    text-align: center;
}

.poster-missing i[b-mmpgwf9bin] {
    color: #8f0001;
    font-size: 2.5rem;
    opacity: .55;
}

.quick-info-list[b-mmpgwf9bin] {
    display: grid;
    gap: 12px;
}

.quick-info-list > div[b-mmpgwf9bin] {
    padding: 12px 14px;
    border-radius: 15px;
    background: #f8fafc;
}

.quick-info-list span[b-mmpgwf9bin],
.quick-info-list strong[b-mmpgwf9bin] {
    display: block;
}

.quick-info-list span[b-mmpgwf9bin] {
    margin-bottom: 4px;
    color: #8b96a4;
    font-size: .78rem;
    font-weight: 800;
}

.quick-info-list strong[b-mmpgwf9bin] {
    color: #334155;
    font-size: .92rem;
    font-weight: 900;
    line-height: 1.5;
}

/* Related Jobs แทน sidebar list แบบเว็บเดิม */
.related-jobs[b-mmpgwf9bin] {
    margin-top: 58px;
    padding-top: 36px;
    border-top: 1px solid #e2e7ed;
}

.related-head[b-mmpgwf9bin] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}

.related-head > div > span[b-mmpgwf9bin] {
    color: #8f0001;
    font-size: .8rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.related-head h2[b-mmpgwf9bin] {
    margin: 5px 0 0;
    color: #172033;
    font-size: 1.8rem;
    font-weight: 900;
}

.related-head > a[b-mmpgwf9bin] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #8f0001;
    font-weight: 900;
    text-decoration: none;
}

.related-grid[b-mmpgwf9bin] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.related-card[b-mmpgwf9bin] {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #e9edf2;
    border-radius: 24px;
    display: grid;
    grid-template-columns: 145px minmax(0, 1fr);
    background: #fff;
    color: inherit;
    box-shadow: 0 12px 34px rgba(23, 32, 51, .05);
    text-decoration: none;
    transition: .22s ease;
}

.related-card:hover[b-mmpgwf9bin] {
    border-color: rgba(143, 0, 1, .2);
    color: inherit;
    box-shadow: 0 20px 46px rgba(143, 0, 1, .10);
    transform: translateY(-4px);
}

.related-card:hover .related-media img[b-mmpgwf9bin] {
    transform: scale(1.035);
}

.related-media[b-mmpgwf9bin] {
    min-height: 180px;
    border-right: 1px solid #edf0f4;
}

.related-body[b-mmpgwf9bin] {
    min-width: 0;
    padding: 17px;
}

.related-category[b-mmpgwf9bin] {
    display: inline-block;
    max-width: 100%;
    padding: 5px 8px;
    overflow: hidden;
    border-radius: 999px;
    background: #fff0f1;
    color: #8f0001;
    font-size: .72rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.related-body h3[b-mmpgwf9bin] {
    margin: 10px 0 6px;
    color: #172033;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.45;
}

.related-body p[b-mmpgwf9bin] {
    margin: 0;
    color: #69778a;
    font-size: .86rem;
    font-weight: 700;
    line-height: 1.5;
}

.related-meta[b-mmpgwf9bin] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    margin-top: 12px;
    color: #8c97a6;
    font-size: .76rem;
    font-weight: 800;
}

/* Lightbox header รองรับ title + company */
.poster-lightbox-head > div[b-mmpgwf9bin] {
    min-width: 0;
}

.poster-lightbox-head strong[b-mmpgwf9bin],
.poster-lightbox-head span[b-mmpgwf9bin] {
    display: block;
}

.poster-lightbox-head strong[b-mmpgwf9bin] {
    color: #fff;
    font-size: 1rem;
    font-weight: 900;
}

.poster-lightbox-head span[b-mmpgwf9bin] {
    margin-top: 2px;
    color: rgba(255,255,255,.67);
    font-size: .82rem;
}

@media (max-width: 1199.98px) {
    .detail-grid[b-mmpgwf9bin] {
        grid-template-columns: minmax(0, 1fr) 320px;
    }

    .related-card[b-mmpgwf9bin] {
        grid-template-columns: 120px minmax(0, 1fr);
    }
}

@media (max-width: 991.98px) {
    .detail-grid[b-mmpgwf9bin] {
        grid-template-columns: 1fr;
    }

    .detail-sidebar[b-mmpgwf9bin] {
        position: static;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        order: -1;
    }

    .related-grid[b-mmpgwf9bin] {
        grid-template-columns: 1fr;
    }

    .related-card[b-mmpgwf9bin] {
        grid-template-columns: 180px minmax(0, 1fr);
    }
}

@media (max-width: 767.98px) {
    .detail-identity[b-mmpgwf9bin] {
        grid-template-columns: 120px minmax(0, 1fr);
        gap: 18px;
        align-items: start;
    }

    .detail-logo[b-mmpgwf9bin] {
        width: 120px;
        height: 120px;
        border-radius: 20px;
    }

    .detail-logo-fallback i[b-mmpgwf9bin] {
        font-size: 1.8rem;
    }

    .detail-logo-fallback strong[b-mmpgwf9bin] {
        font-size: 1rem;
    }

    .detail-identity h1[b-mmpgwf9bin] {
        font-size: 2rem;
    }

    .detail-sidebar[b-mmpgwf9bin] {
        grid-template-columns: 1fr;
    }

    .info-row[b-mmpgwf9bin] {
        grid-template-columns: 1fr;
        gap: 5px;
    }

    .related-head[b-mmpgwf9bin] {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 575.98px) {
    .detail-identity[b-mmpgwf9bin] {
        grid-template-columns: 1fr;
    }

    .detail-logo[b-mmpgwf9bin] {
        width: 100%;
        height: 220px;
    }

    .detail-identity h1[b-mmpgwf9bin] {
        font-size: 1.8rem;
    }

    .related-card[b-mmpgwf9bin] {
        grid-template-columns: 115px minmax(0, 1fr);
    }

    .related-media[b-mmpgwf9bin] {
        min-height: 165px;
    }
}

/* =========================================================
   job_property image support
   jobs.job_property สามารถเก็บ <img src="..."> ได้
   ========================================================= */

.qualification-images[b-mmpgwf9bin] {
    display: grid;
    gap: 18px;
    margin-top: 18px;
}

.qualification-image-link[b-mmpgwf9bin] {
    position: relative;
    display: block;
    width: min(100%, 760px);
    margin-inline: auto;
    overflow: hidden;
    border: 1px solid #e7eaf0;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(23, 32, 51, .07);
    text-decoration: none;
    transition: .2s ease;
}

.qualification-image-link:hover[b-mmpgwf9bin] {
    border-color: rgba(143, 0, 1, .22);
    box-shadow: 0 18px 42px rgba(143, 0, 1, .11);
    transform: translateY(-2px);
}

.qualification-image[b-mmpgwf9bin] {
    display: block;
    width: 100%;
    height: auto;
    max-height: 900px;
    object-fit: contain;
    background: #fff;
}

.qualification-image-hint[b-mmpgwf9bin] {
    position: absolute;
    right: 14px;
    bottom: 14px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(143, 0, 1, .92);
    color: #fff;
    font-size: .78rem;
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(143, 0, 1, .22);
}

@media (max-width: 575.98px) {
    .qualification-image-link[b-mmpgwf9bin] {
        border-radius: 16px;
    }

    .qualification-image-hint[b-mmpgwf9bin] {
        right: 10px;
        bottom: 10px;
        padding: 7px 10px;
        font-size: .72rem;
    }
}

/* /Components/Pages/Jobs.razor.rz.scp.css */
.jobs-page[b-ubuy15lcnj] {
    min-height: 100vh;
    overflow: hidden;
    background: #f5f6f8;
    color: #172033;
}

.jobs-hero[b-ubuy15lcnj] {
    padding: 38px 0 32px;
    background: #f5f6f8;
}

.page-title-std[b-ubuy15lcnj] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px;
    color: #8f0001;
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1.2;
}

.page-title-std i[b-ubuy15lcnj] {
    font-size: 1.1rem;
}

.jobs-hero-divider[b-ubuy15lcnj] {
    height: 2px;
    margin-top: 16px;
    border-radius: 999px;
    background: #8f0001;
}

.filter-wrap[b-ubuy15lcnj] {
    padding: 24px 0 32px;
}

.filter-card[b-ubuy15lcnj] {
    padding: 22px 28px;
    border: 1px solid #edf0f5;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 8px 32px rgba(23, 32, 51, .09);
}

.job-filter-grid[b-ubuy15lcnj] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
    gap: 16px;
    align-items: end;
}

.job-filter-field label[b-ubuy15lcnj] {
    display: block;
    margin-bottom: 8px;
    color: #172033;
    font-size: .9rem;
    font-weight: 900;
}

.job-filter-field .form-select[b-ubuy15lcnj],
.job-filter-field .form-control[b-ubuy15lcnj] {
    height: 52px;
    border: 1px solid #e7eaf0;
    border-radius: 12px;
    color: #334155;
    background-color: #fff;
    font-family: inherit;
    font-weight: 700;
}

.job-filter-field .form-select:focus[b-ubuy15lcnj],
.job-filter-field .form-control:focus[b-ubuy15lcnj] {
    border-color: rgba(143, 0, 1, .45);
    box-shadow: 0 0 0 .2rem rgba(143, 0, 1, .08);
}

.job-keyword-wrap[b-ubuy15lcnj] {
    position: relative;
}

.job-keyword-wrap > i[b-ubuy15lcnj] {
    position: absolute;
    top: 50%;
    left: 16px;
    z-index: 2;
    color: #8f0001;
    transform: translateY(-50%);
    pointer-events: none;
}

.job-keyword-control[b-ubuy15lcnj] {
    padding-left: 44px !important;
}

.job-filter-actions[b-ubuy15lcnj] {
    display: grid;
    grid-template-columns: auto minmax(145px, 1fr);
    gap: 10px;
}

.btn-search-job[b-ubuy15lcnj],
.btn-reset-job[b-ubuy15lcnj] {
    min-height: 52px;
    padding: 0 20px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    font-family: inherit;
    font-size: .95rem;
    font-weight: 900;
    cursor: pointer;
    transition: .18s ease;
}

.btn-search-job[b-ubuy15lcnj] {
    border: 1px solid #8f0001;
    background: #8f0001;
    color: #fff;
    box-shadow: 0 12px 26px rgba(143, 0, 1, .18);
}

.btn-search-job:hover:not(:disabled)[b-ubuy15lcnj] {
    border-color: #650001;
    background: #650001;
    transform: translateY(-1px);
}

.btn-reset-job[b-ubuy15lcnj] {
    border: 1px solid #aeb5c0;
    background: #fff;
    color: #667085;
}

.btn-reset-job:hover:not(:disabled)[b-ubuy15lcnj] {
    border-color: #8f0001;
    color: #8f0001;
}

.btn-search-job:disabled[b-ubuy15lcnj],
.btn-reset-job:disabled[b-ubuy15lcnj] {
    cursor: not-allowed;
    opacity: .65;
}

.job-search-spinner[b-ubuy15lcnj] {
    width: 17px;
    height: 17px;
    border: 2px solid rgba(255, 255, 255, .38);
    border-top-color: #fff;
    border-radius: 50%;
    animation: jobSpinner-b-ubuy15lcnj .7s linear infinite;
}

@keyframes jobSpinner-b-ubuy15lcnj {
    to { transform: rotate(360deg); }
}

.job-error-message[b-ubuy15lcnj] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 16px;
    padding: 12px 14px;
    border: 1px solid rgba(143, 0, 1, .16);
    border-radius: 14px;
    color: #7d1114;
    background: #fff5f5;
    font-size: .9rem;
    font-weight: 700;
}

.jobs-section[b-ubuy15lcnj] {
    padding: 78px 0;
}

.section-head[b-ubuy15lcnj] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 22px;
    margin-bottom: 28px;
}

.section-head h2[b-ubuy15lcnj] {
    margin: 8px 0 0;
    color: #172033;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: -.03em;
}

.label-red[b-ubuy15lcnj] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #8f0001;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.job-result-count[b-ubuy15lcnj] {
    padding: 8px 14px;
    border-radius: 999px;
    color: #8f0001;
    background: #fff2f3;
    font-size: .9rem;
    font-weight: 900;
}

.featured-grid[b-ubuy15lcnj] {
    display: grid;
    grid-template-columns: 1.22fr .78fr;
    gap: 22px;
}

.featured-job[b-ubuy15lcnj] {
    position: relative;
    min-height: 390px;
    overflow: hidden;
    padding: 34px;
    border-radius: 36px;
    background: linear-gradient(135deg, #8f0001, #1a0507);
    color: #fff;
    box-shadow: 0 22px 70px rgba(143, 0, 1, .22);
}

.featured-job[b-ubuy15lcnj]::before {
    position: absolute;
    right: -80px;
    bottom: -120px;
    width: 350px;
    height: 350px;
    border: 42px solid rgba(255, 255, 255, .08);
    border-radius: 50%;
    content: "";
}

.featured-job[b-ubuy15lcnj]::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent, rgba(255, 255, 255, .12), transparent);
    content: "";
    transform: skewX(-15deg) translateX(-70%);
}

.featured-job:hover[b-ubuy15lcnj]::after {
    transition: .7s ease;
    transform: skewX(-15deg) translateX(110%);
}

.featured-job > *[b-ubuy15lcnj] {
    position: relative;
    z-index: 2;
}

.job-tag[b-ubuy15lcnj] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 12px;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    font-size: .9rem;
    font-weight: 900;
}

.featured-job h3[b-ubuy15lcnj] {
    max-width: 720px;
    margin: 22px 0 12px;
    font-size: clamp(2rem, 4vw, 3.7rem);
    font-weight: 900;
    line-height: 1.02;
    letter-spacing: -.045em;
}

.featured-job p[b-ubuy15lcnj] {
    max-width: 660px;
    color: rgba(255, 255, 255, .8);
    line-height: 1.8;
}

.job-meta-line[b-ubuy15lcnj] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 22px 0 28px;
}

.job-meta-line span[b-ubuy15lcnj] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px 13px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .11);
    color: #fff;
    font-weight: 800;
}

.btn-white-job[b-ubuy15lcnj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 0 20px;
    border-radius: 999px;
    background: #fff;
    color: #8f0001;
    font-weight: 900;
    text-decoration: none;
    transition: .18s ease;
}

.btn-white-job:hover[b-ubuy15lcnj] {
    background: #fff4f4;
    color: #650001;
    transform: translateY(-2px);
}

.featured-side[b-ubuy15lcnj] {
    display: grid;
    gap: 18px;
}

.side-job[b-ubuy15lcnj] {
    display: flex;
    flex-direction: column;
    padding: 24px;
    border: 1px solid #eceff4;
    border-radius: 28px;
    background: #fff;
    color: inherit;
    box-shadow: 0 14px 38px rgba(23, 32, 51, .06);
    text-decoration: none;
    transition: .24s ease;
}

.side-job:hover[b-ubuy15lcnj],
.job-card:hover[b-ubuy15lcnj] {
    border-color: rgba(143, 0, 1, .2);
    color: inherit;
    box-shadow: 0 22px 58px rgba(143, 0, 1, .12);
    transform: translateY(-5px);
}

.side-job h4[b-ubuy15lcnj],
.job-card h3[b-ubuy15lcnj] {
    margin: 10px 0 8px;
    color: #172033;
    font-weight: 900;
}

.side-job p[b-ubuy15lcnj],
.job-card p[b-ubuy15lcnj] {
    margin: 0;
    color: #64748b;
    line-height: 1.65;
}

.side-job-link[b-ubuy15lcnj] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: auto;
    padding-top: 18px;
    color: #8f0001;
    font-size: .9rem;
    font-weight: 900;
}

.job-company[b-ubuy15lcnj] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    color: #8f0001;
    font-weight: 900;
}

.job-company > span:last-child[b-ubuy15lcnj] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.company-logo[b-ubuy15lcnj] {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display: grid;
    place-items: center;
    background: #fff2f3;
    color: #8f0001;
    font-weight: 900;
}

.job-card-grid[b-ubuy15lcnj] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.job-card[b-ubuy15lcnj] {
    min-height: 285px;
    padding: 24px;
    border: 1px solid #eceff4;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    background: #fff;
    box-shadow: 0 14px 40px rgba(23, 32, 51, .06);
    transition: .24s ease;
}

.job-card-top[b-ubuy15lcnj] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.badge-soft[b-ubuy15lcnj] {
    flex: 0 0 auto;
    max-width: 47%;
    padding: 7px 10px;
    overflow: hidden;
    border-radius: 999px;
    background: #fff2f3;
    color: #8f0001;
    font-size: .82rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.job-card-meta[b-ubuy15lcnj] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 18px 0;
}

.job-card-meta span[b-ubuy15lcnj] {
    padding: 7px 10px;
    border-radius: 999px;
    background: #f6f7fa;
    color: #64748b;
    font-size: .88rem;
    font-weight: 800;
}

.job-card-bottom[b-ubuy15lcnj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px solid #eef1f5;
}

.job-date[b-ubuy15lcnj] {
    color: #94a3b8;
    font-size: .9rem;
    font-weight: 800;
}

.btn-soft-maroon-job[b-ubuy15lcnj] {
    padding: 7px 14px;
    border-radius: 999px;
    background: #fff2f3;
    color: #8f0001;
    font-size: .9rem;
    font-weight: 900;
    text-decoration: none;
}

.btn-soft-maroon-job:hover[b-ubuy15lcnj] {
    background: #8f0001;
    color: #fff;
}

.job-empty-state[b-ubuy15lcnj],
.job-loading-state[b-ubuy15lcnj] {
    min-height: 360px;
    padding: 36px;
    border: 1px dashed rgba(143, 0, 1, .22);
    border-radius: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
    background: #fff;
    text-align: center;
}

.job-empty-state > i[b-ubuy15lcnj] {
    margin-bottom: 4px;
    color: #8f0001;
    font-size: 3rem;
}

.job-empty-state h2[b-ubuy15lcnj] {
    margin: 0;
    color: #172033;
    font-size: 1.5rem;
    font-weight: 900;
}

.job-empty-state p[b-ubuy15lcnj] {
    max-width: 520px;
    margin: 0 0 12px;
    color: #64748b;
    line-height: 1.7;
}

.job-loading-state .spinner-border[b-ubuy15lcnj] {
    color: #8f0001;
}

.job-loading-state strong[b-ubuy15lcnj] {
    color: #172033;
    font-size: 1.05rem;
}

.job-pagination[b-ubuy15lcnj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 48px;
}

.job-pagination button[b-ubuy15lcnj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #e0e4ea;
    border-radius: 50%;
    color: #334155;
    background: #fff;
    font-family: inherit;
    font-size: .95rem;
    font-weight: 900;
    cursor: pointer;
    transition: .18s ease;
}

.job-pagination button:not(:disabled):hover:not(.active)[b-ubuy15lcnj] {
    border-color: #8f0001;
    color: #8f0001;
}

.job-pagination button.active[b-ubuy15lcnj] {
    border-color: #8f0001;
    color: #fff;
    background: #8f0001;
}

.job-pagination .job-page-text[b-ubuy15lcnj] {
    min-width: auto;
    padding: 0 16px;
    border-radius: 20px;
    gap: 6px;
}

.job-pagination button:disabled[b-ubuy15lcnj] {
    border-color: #edf0f5;
    color: #c0c7d0;
    cursor: not-allowed;
}

.job-page-summary[b-ubuy15lcnj] {
    margin-top: 12px;
    color: #7b8491;
    text-align: center;
    font-size: .82rem;
    font-weight: 700;
}

@media (max-width: 1199.98px) {
    .job-filter-grid[b-ubuy15lcnj] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .job-filter-actions[b-ubuy15lcnj] {
        grid-column: 1 / -1;
        justify-content: end;
    }
}

@media (max-width: 991.98px) {
    .jobs-section[b-ubuy15lcnj] {
        padding: 58px 0;
    }

    .featured-grid[b-ubuy15lcnj],
    .job-card-grid[b-ubuy15lcnj] {
        grid-template-columns: 1fr;
    }

    .section-head[b-ubuy15lcnj] {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 767.98px) {
    .filter-card[b-ubuy15lcnj] {
        padding: 20px;
    }

    .job-filter-grid[b-ubuy15lcnj] {
        grid-template-columns: 1fr;
    }

    .job-filter-actions[b-ubuy15lcnj] {
        grid-column: auto;
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 575.98px) {
    .featured-job[b-ubuy15lcnj] {
        min-height: auto;
        padding: 28px 22px;
        border-radius: 26px;
    }

    .featured-job h3[b-ubuy15lcnj] {
        font-size: 2rem;
    }

    .job-filter-actions[b-ubuy15lcnj] {
        grid-template-columns: 1fr;
    }

    .job-card-top[b-ubuy15lcnj] {
        align-items: stretch;
        flex-direction: column;
    }

    .badge-soft[b-ubuy15lcnj] {
        align-self: flex-start;
        max-width: 100%;
    }

    .job-pagination[b-ubuy15lcnj] {
        flex-wrap: wrap;
        margin-top: 36px;
    }
}

/* =========================================================
   2026-08-17 PATCH: jobs.job_logo + image-first cards
   ========================================================= */

.job-logo-media[b-ubuy15lcnj] {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 18% 18%, rgba(143, 0, 1, .06), transparent 38%),
        #f8fafc;
}

.job-logo-media > img[b-ubuy15lcnj] {
    position: absolute;
    inset: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    object-position: center;
    background: #fff;
    transition: transform .32s ease;
}

.job-logo-fallback[b-ubuy15lcnj] {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 8px;
    padding: 18px;
    color: #8f0001;
    text-align: center;
}

.job-logo-fallback i[b-ubuy15lcnj] {
    font-size: 2.1rem;
    opacity: .72;
}

.job-logo-fallback span[b-ubuy15lcnj] {
    max-width: 100%;
    font-size: 1.12rem;
    font-weight: 900;
    overflow-wrap: anywhere;
}

/* Featured หลัก: เพิ่มภาพประกาศด้านขวา */
.featured-job[b-ubuy15lcnj] {
    min-height: 410px;
    padding: 28px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(245px, .66fr);
    gap: 28px;
}

.featured-job-content[b-ubuy15lcnj] {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
}

.featured-job-media[b-ubuy15lcnj] {
    position: relative;
    z-index: 3;
    min-height: 342px;
    overflow: hidden;
    border: 7px solid rgba(255, 255, 255, .13);
    border-radius: 28px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 22px 48px rgba(0, 0, 0, .22);
}

.featured-job-media:hover img[b-ubuy15lcnj] {
    transform: scale(1.025);
}

.featured-logo-fallback[b-ubuy15lcnj] {
    color: #8f0001;
    background:
        radial-gradient(circle at 30% 20%, #fff, transparent 38%),
        linear-gradient(145deg, #fff5f5, #f4f6f8);
}

.featured-logo-fallback i[b-ubuy15lcnj] {
    font-size: 3rem;
}

.featured-logo-fallback span[b-ubuy15lcnj] {
    font-size: 1.5rem;
}

.job-image-caption[b-ubuy15lcnj] {
    position: absolute;
    right: 14px;
    bottom: 14px;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border-radius: 999px;
    background: rgba(23, 32, 51, .82);
    color: #fff;
    font-size: .78rem;
    font-weight: 900;
    backdrop-filter: blur(5px);
}

/* Featured ด้านข้าง: thumbnail + content */
.side-job[b-ubuy15lcnj] {
    min-height: 196px;
    overflow: hidden;
    padding: 0;
    display: grid;
    grid-template-columns: 148px minmax(0, 1fr);
}

.side-job-media[b-ubuy15lcnj] {
    min-height: 100%;
    border-right: 1px solid #edf0f4;
}

.side-job-content[b-ubuy15lcnj] {
    min-width: 0;
    padding: 20px;
    display: flex;
    flex-direction: column;
}

.side-job:hover .side-job-media img[b-ubuy15lcnj] {
    transform: scale(1.035);
}

.side-job p[b-ubuy15lcnj] {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Latest Jobs: รูปด้านบน + body ด้านล่าง */
.job-card[b-ubuy15lcnj] {
    min-height: 430px;
    overflow: hidden;
    padding: 0;
}

.job-card-media[b-ubuy15lcnj] {
    position: relative;
    flex: 0 0 210px;
    height: 210px;
    border-bottom: 1px solid #edf0f4;
    color: inherit;
    text-decoration: none;
}

.job-card:hover .job-card-media img[b-ubuy15lcnj] {
    transform: scale(1.035);
}

.job-card-category[b-ubuy15lcnj] {
    position: absolute;
    top: 14px;
    right: 14px;
    z-index: 4;
    max-width: calc(100% - 28px);
    padding: 7px 10px;
    overflow: hidden;
    border: 1px solid rgba(143, 0, 1, .10);
    border-radius: 999px;
    background: rgba(255, 242, 243, .94);
    color: #8f0001;
    font-size: .78rem;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
    backdrop-filter: blur(4px);
}

.job-card-body[b-ubuy15lcnj] {
    min-height: 0;
    padding: 22px 24px 24px;
    display: flex;
    flex: 1;
    flex-direction: column;
}

.job-card h3[b-ubuy15lcnj] {
    margin: 16px 0 8px;
}

.job-card h3 a[b-ubuy15lcnj] {
    color: inherit;
    text-decoration: none;
}

.job-card h3 a:hover[b-ubuy15lcnj] {
    color: #8f0001;
}

.job-card p[b-ubuy15lcnj] {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.btn-soft-maroon-job[b-ubuy15lcnj] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

/* Responsive ของ layout รูปใหม่ */
@media (max-width: 1199.98px) {
    .featured-job[b-ubuy15lcnj] {
        grid-template-columns: minmax(0, 1fr) 240px;
        gap: 20px;
    }

    .side-job[b-ubuy15lcnj] {
        grid-template-columns: 118px minmax(0, 1fr);
    }
}

@media (max-width: 991.98px) {
    .featured-job[b-ubuy15lcnj] {
        grid-template-columns: minmax(0, 1fr) minmax(260px, .7fr);
    }

    .side-job[b-ubuy15lcnj] {
        grid-template-columns: 180px minmax(0, 1fr);
    }

    .job-card[b-ubuy15lcnj] {
        min-height: 0;
        display: grid;
        grid-template-columns: minmax(220px, .44fr) minmax(0, 1fr);
    }

    .job-card-media[b-ubuy15lcnj] {
        height: 100%;
        min-height: 260px;
        border-right: 1px solid #edf0f4;
        border-bottom: 0;
    }
}

@media (max-width: 767.98px) {
    .featured-job[b-ubuy15lcnj] {
        grid-template-columns: 1fr;
    }

    .featured-job-media[b-ubuy15lcnj] {
        min-height: 330px;
        order: -1;
    }

    .side-job[b-ubuy15lcnj] {
        grid-template-columns: 140px minmax(0, 1fr);
    }

    .job-card[b-ubuy15lcnj] {
        display: flex;
    }

    .job-card-media[b-ubuy15lcnj] {
        flex-basis: 250px;
        height: 250px;
        min-height: 250px;
        border-right: 0;
        border-bottom: 1px solid #edf0f4;
    }
}

@media (max-width: 575.98px) {
    .featured-job[b-ubuy15lcnj] {
        padding: 20px;
    }

    .featured-job-media[b-ubuy15lcnj] {
        min-height: 280px;
        border-radius: 20px;
    }

    .side-job[b-ubuy15lcnj] {
        grid-template-columns: 110px minmax(0, 1fr);
        border-radius: 22px;
    }

    .side-job-content[b-ubuy15lcnj] {
        padding: 16px;
    }

    .side-job .company-logo[b-ubuy15lcnj] {
        display: none;
    }

    .job-card-media[b-ubuy15lcnj] {
        flex-basis: 220px;
        height: 220px;
        min-height: 220px;
    }
}
/* /Components/Pages/Library.razor.rz.scp.css */
.library-page[b-8a7z856v7t] {
    min-height: 100vh;
    overflow: hidden;
    background: #f5f6f8;
    color: #172033;
}

.lib-hero[b-8a7z856v7t] {
    padding: 38px 0 22px;
    background: #f5f6f8;
}

.lib-hero h1[b-8a7z856v7t] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    color: #8f0001;
    font-size: clamp(1.8rem, 3.5vw, 2.4rem);
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: -.02em;
}

.filter-wrap[b-8a7z856v7t] {
    padding: 18px 0 40px;
    background: #f5f6f8;
}

.filter-card[b-8a7z856v7t] {
    position: relative;
    z-index: 4;
    padding: 24px 28px;
    border: 1px solid #edf0f5;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 18px 55px rgba(23, 32, 51, .08);
}

.library-filter-grid[b-8a7z856v7t] {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(240px, .75fr) 220px;
    gap: 16px;
    align-items: end;
}

.library-search-field label[b-8a7z856v7t],
.library-category-field label[b-8a7z856v7t] {
    display: block;
    margin-bottom: 8px;
    color: #172033;
    font-size: .9rem;
    font-weight: 900;
}

.library-input-wrap[b-8a7z856v7t] {
    position: relative;
}

.library-input-wrap > i[b-8a7z856v7t] {
    position: absolute;
    top: 50%;
    left: 17px;
    z-index: 2;
    color: #8b95a5;
    transform: translateY(-50%);
    pointer-events: none;
}

.library-input-wrap .form-control[b-8a7z856v7t] {
    height: 54px;
    padding-left: 47px;
    border: 1px solid #e4e8ee;
    border-radius: 15px;
    color: #334155;
    font-weight: 700;
}

.library-category-field .form-select[b-8a7z856v7t] {
    height: 54px;
    border: 1px solid #e4e8ee;
    border-radius: 15px;
    color: #334155;
    font-weight: 700;
}

.library-input-wrap .form-control:focus[b-8a7z856v7t],
.library-category-field .form-select:focus[b-8a7z856v7t] {
    border-color: rgba(143, 0, 1, .45);
    box-shadow: 0 0 0 .2rem rgba(143, 0, 1, .08);
}

.library-search-button[b-8a7z856v7t] {
    width: 100%;
    min-height: 54px;
    padding: 0 22px;
    border: 1px solid #8f0001;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-weight: 900;
    box-shadow: 0 14px 30px rgba(143, 0, 1, .2);
    cursor: pointer;
    transition: .18s ease;
}

.library-search-button:hover:not(:disabled)[b-8a7z856v7t] {
    border-color: #680001;
    background: #680001;
    transform: translateY(-1px);
}

.library-search-button:disabled[b-8a7z856v7t] {
    cursor: not-allowed;
    opacity: .7;
}

.library-spinner[b-8a7z856v7t] {
    width: 17px;
    height: 17px;
    border: 2px solid rgba(255, 255, 255, .38);
    border-top-color: #fff;
    border-radius: 50%;
    animation: librarySpinner-b-8a7z856v7t .7s linear infinite;
}

@keyframes librarySpinner-b-8a7z856v7t {
    to {
        transform: rotate(360deg);
    }
}

.library-section[b-8a7z856v7t] {
    padding: 36px 0 78px;
    background: #f5f6f8;
}

.section-head[b-8a7z856v7t] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 22px;
    margin-bottom: 28px;
}

.section-head h2[b-8a7z856v7t] {
    margin: 8px 0 0;
    color: #172033;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: -.03em;
}

.label-red[b-8a7z856v7t] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #8f0001;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.library-result-count[b-8a7z856v7t] {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    background: #fff2f3;
    color: #8f0001;
    font-size: .9rem;
    font-weight: 900;
}

.category-tabs[b-8a7z856v7t] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 28px;
}

.category-tab[b-8a7z856v7t] {
    padding: 10px 20px;
    border: 1px solid #e0e4ea;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    color: #172033;
    font-family: inherit;
    font-size: .96rem;
    font-weight: 900;
    box-shadow: 0 10px 28px rgba(23, 32, 51, .05);
    cursor: pointer;
    transition: .18s ease;
}

.category-tab:hover[b-8a7z856v7t] {
    border-color: rgba(143, 0, 1, .35);
    color: #8f0001;
}

.category-tab.active[b-8a7z856v7t] {
    border-color: #8f0001;
    background: #8f0001;
    color: #fff;
    box-shadow: 0 12px 28px rgba(143, 0, 1, .2);
}

.journal-grid[b-8a7z856v7t] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.jcard[b-8a7z856v7t] {
    overflow: hidden;
    border: 1px solid #eceff4;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    background: #fff;
    box-shadow: 0 8px 28px rgba(23, 32, 51, .07);
    transition: .22s ease;
}

.jcard:hover[b-8a7z856v7t] {
    border-color: rgba(143, 0, 1, .18);
    box-shadow: 0 18px 48px rgba(143, 0, 1, .12);
    transform: translateY(-4px);
}

.jcard-top[b-8a7z856v7t] {
    position: relative;
    min-height: 180px;
    padding: 44px 18px 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background:
        radial-gradient(circle at 15% 10%, rgba(255, 255, 255, .16), transparent 28%),
        linear-gradient(135deg, #710001, #a60002 60%, #3d0001);
    color: #fff;
    text-align: center;
}

.jcard-top[b-8a7z856v7t]::after {
    position: absolute;
    inset: 14px;
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 14px;
    content: "";
    pointer-events: none;
}

.article-card-top[b-8a7z856v7t] {
    background:
        radial-gradient(circle at 82% 12%, rgba(255, 215, 108, .18), transparent 30%),
        linear-gradient(135deg, #171923, #631016 58%, #8f0001);
}

.document-type-badge[b-8a7z856v7t] {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 2;
    padding: 6px 10px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    color: #fff;
    font-size: .78rem;
    font-weight: 900;
}

.jcard-top .year[b-8a7z856v7t],
.jcard-top .issue[b-8a7z856v7t],
.jcard-top .period[b-8a7z856v7t] {
    position: relative;
    z-index: 1;
}

.jcard-top .year[b-8a7z856v7t] {
    color: #ffd76c;
    font-size: 1.25rem;
    font-weight: 900;
    line-height: 1.25;
}

.jcard-top .issue[b-8a7z856v7t] {
    margin-top: 3px;
    color: #ffd76c;
    font-size: 1.1rem;
    font-weight: 900;
}

.jcard-top .period[b-8a7z856v7t] {
    margin-top: 12px;
    padding: 7px 10px;
    border-radius: 8px;
    background: rgba(255, 255, 255, .15);
    color: #fff;
    font-size: .88rem;
    font-weight: 700;
}

.jcard-body[b-8a7z856v7t] {
    flex: 1;
    padding: 20px 18px 17px;
    display: flex;
    flex-direction: column;
}

.jcard-title[b-8a7z856v7t] {
    margin: 0 0 7px;
    color: #8f0001;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.5;
}

.jcard-date[b-8a7z856v7t] {
    margin-bottom: 14px;
    color: #94a3b8;
    font-size: .85rem;
    font-weight: 700;
}

.jcard-bottom[b-8a7z856v7t] {
    margin-top: auto;
    padding-top: 13px;
    border-top: 1px solid #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.jcard-link[b-8a7z856v7t] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #8f0001;
    font-size: .92rem;
    font-weight: 900;
    text-decoration: none;
}

.jcard-link:hover[b-8a7z856v7t] {
    color: #650001;
    text-decoration: underline;
}

.jcard-dl[b-8a7z856v7t] {
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff2f3;
    color: #8f0001;
    font-size: 1rem;
    text-decoration: none;
    transition: .18s ease;
}

.jcard-dl:hover[b-8a7z856v7t] {
    background: #8f0001;
    color: #fff;
}

.library-empty-state[b-8a7z856v7t] {
    min-height: 340px;
    padding: 36px 20px;
    border: 1px dashed rgba(143, 0, 1, .25);
    border-radius: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background: #fff;
    text-align: center;
}

.library-empty-state > i[b-8a7z856v7t] {
    margin-bottom: 14px;
    color: #8f0001;
    font-size: 3.2rem;
}

.library-empty-state h3[b-8a7z856v7t] {
    margin: 0;
    color: #172033;
    font-size: 1.35rem;
    font-weight: 900;
}

.library-empty-state p[b-8a7z856v7t] {
    max-width: 520px;
    margin: 10px 0 22px;
    color: #64748b;
    line-height: 1.7;
}

.library-clear-button[b-8a7z856v7t] {
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid #8f0001;
    border-radius: 999px;
    background: #fff;
    color: #8f0001;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
}

.library-clear-button:hover[b-8a7z856v7t] {
    background: #8f0001;
    color: #fff;
}

.pagination-wrap[b-8a7z856v7t] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 44px;
}

.pagination-wrap button[b-8a7z856v7t] {
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #e0e4ea;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    background: #fff;
    color: #334155;
    font-family: inherit;
    font-size: .95rem;
    font-weight: 900;
    cursor: pointer;
}

.pagination-wrap button:hover:not(:disabled):not(.active)[b-8a7z856v7t] {
    border-color: #8f0001;
    color: #8f0001;
}

.pagination-wrap .page-button.active[b-8a7z856v7t] {
    border-color: #8f0001;
    background: #8f0001;
    color: #fff;
}

.pagination-wrap .pg-text[b-8a7z856v7t] {
    min-width: auto;
    border-radius: 20px;
}

.pagination-wrap button:disabled[b-8a7z856v7t] {
    cursor: not-allowed;
    opacity: .45;
}

@media (max-width: 991.98px) {
    .library-filter-grid[b-8a7z856v7t] {
        grid-template-columns: 1fr 1fr;
    }

    .library-search-action[b-8a7z856v7t] {
        grid-column: 1 / -1;
    }

    .journal-grid[b-8a7z856v7t] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .lib-hero[b-8a7z856v7t] {
        padding-top: 30px;
    }

    .filter-card[b-8a7z856v7t] {
        padding: 20px;
        border-radius: 22px;
    }

    .library-filter-grid[b-8a7z856v7t] {
        grid-template-columns: 1fr;
    }

    .library-search-action[b-8a7z856v7t] {
        grid-column: auto;
    }

    .section-head[b-8a7z856v7t] {
        align-items: flex-start;
        flex-direction: column;
    }

    .journal-grid[b-8a7z856v7t] {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Real DB Library states + missing PDF
   ========================================================= */

.library-page-state[b-8a7z856v7t] {
    min-height: 360px;
    margin: 18px auto 80px;
    padding: 48px 24px;
    width: min(1296px, calc(100% - 32px));
    border: 1px solid #edf0f5;
    border-radius: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 10px;
    background: #fff;
    box-shadow: 0 18px 55px rgba(23, 32, 51, .07);
    text-align: center;
}

.library-page-state .spinner-border[b-8a7z856v7t] {
    margin-bottom: 6px;
    color: #8f0001;
}

.library-page-state > i[b-8a7z856v7t] {
    color: #8f0001;
    font-size: 3.2rem;
}

.library-page-state h2[b-8a7z856v7t] {
    margin: 2px 0 0;
    color: #172033;
    font-size: 1.5rem;
    font-weight: 900;
}

.library-page-state p[b-8a7z856v7t] {
    max-width: 620px;
    margin: 0 0 10px;
    color: #64748b;
    line-height: 1.7;
}

.library-retry-button[b-8a7z856v7t] {
    min-height: 46px;
    padding: 0 20px;
    border: 1px solid #8f0001;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #8f0001;
    color: #fff;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
}

.library-retry-button:hover[b-8a7z856v7t] {
    border-color: #680001;
    background: #680001;
}

.jcard-link-disabled[b-8a7z856v7t] {
    color: #98a2b3;
    cursor: default;
    text-decoration: none;
}

.jcard-link-disabled:hover[b-8a7z856v7t] {
    color: #98a2b3;
    text-decoration: none;
}

.jcard-dl-disabled[b-8a7z856v7t] {
    background: #f2f4f7;
    color: #98a2b3;
    cursor: default;
}

.jcard-dl-disabled:hover[b-8a7z856v7t] {
    background: #f2f4f7;
    color: #98a2b3;
}
/* /Components/Pages/News.razor.rz.scp.css */
/* ══════════════════════════════════════
           NEWS & EVENT PAGE
        ══════════════════════════════════════ */
        .news-page[b-9g8wlt6yvc] {
    --red: #8F0001;
    --red-light: #fff0f0;
}

        

        /* ── Page wrapper ── */
        .news-page[b-9g8wlt6yvc] {
            min-height: 100vh;
            padding-bottom: 60px;
            background: #f7f8fa;
            font-family: 'Noto Sans Thai', sans-serif;
        }

        .news-wrap[b-9g8wlt6yvc] {
            max-width: 1320px;
            margin: 0 auto;
            padding: 80px 24px 0;
        }

        /* ── Sticky News Header + Category Tabs ── */
        .news-sticky-panel[b-9g8wlt6yvc] {
            position: sticky;
            top: 76px;
            z-index: 1040;
            background: rgba(247, 248, 250, .96);
            backdrop-filter: blur(8px);
            padding: 18px 0 16px;
            margin: -18px 0 28px;
            border-radius: 0 0 18px 18px;
        }

        /* ── Page title ── */
        .news-page-title[b-9g8wlt6yvc] {
            font-size: 1.45rem;
            font-weight: 900;
            color: var(--red);
            display: flex;
            align-items: center;
            gap: 10px;
            margin: 0 0 10px;
        }

        .news-page-divider[b-9g8wlt6yvc] {
            height: 2px;
            background: #e5e7eb;
            border-radius: 99px;
            margin-bottom: 24px;
        }

        /* ── Filter tabs ── */
        .news-tabs[b-9g8wlt6yvc] {
            display: grid;
            grid-template-columns: repeat(7, minmax(0, 1fr));
            gap: 8px;
            margin-bottom: 0;
            background: var(--red);
            border-radius: 14px;
            padding: 8px;
            box-shadow: 0 10px 28px rgba(143, 0, 1, .16);
        }

        .news-tab[b-9g8wlt6yvc] {
            width: 100%;
            min-height: 52px;
            padding: .6rem .65rem;
            border-radius: 10px;
            border: none;
            background: transparent;
            color: #fff;
            font-size: .92rem;
            font-weight: 800;
            cursor: pointer;
            transition: .18s;
            font-family: inherit;
            white-space: normal;
            line-height: 1.25;
            text-align: center;
        }

            .news-tab:hover[b-9g8wlt6yvc] {
                background: rgba(255, 255, 255, .16);
                color: #fff;
            }

            .news-tab.active[b-9g8wlt6yvc] {
                background: #fff;
                color: var(--red);
                box-shadow: 0 8px 18px rgba(45, 0, 0, .16);
            }

        /* ── Section block (one per category) ── */
        .news-section[b-9g8wlt6yvc] {
            margin-bottom: 44px;
            scroll-margin-top: 260px;
        }

        /* ── Featured row: big red card LEFT + text RIGHT ── */
        .news-featured[b-9g8wlt6yvc] {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 0;
            margin-bottom: 18px;
            border-radius: 14px;
            overflow: hidden;
            box-shadow: 0 4px 18px rgba(0,0,0,.10);
        }

        .news-featured-img[b-9g8wlt6yvc] {
            background: var(--red);
            position: relative;
            min-height: 220px;
            overflow: hidden;
        }

            .news-featured-img img[b-9g8wlt6yvc] {
                width: 100%;
                height: 100%;
                object-fit: cover;
                object-position: center top;
                display: block;
                filter: brightness(.88);
            }

            .news-featured-img .no-img[b-9g8wlt6yvc] {
                width: 100%;
                height: 100%;
                min-height: 220px;
                background: var(--red);
                display: block;
            }

        .news-featured-body[b-9g8wlt6yvc] {
            background: #fff;
            padding: 26px 28px;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            align-items: flex-start;
        }

        .news-featured-cat[b-9g8wlt6yvc] {
            font-size: .75rem;
            font-weight: 900;
            color: var(--red);
            text-transform: uppercase;
            letter-spacing: .08em;
            margin-bottom: 8px;
        }

        .news-featured-title[b-9g8wlt6yvc] {
            font-size: 1.05rem;
            font-weight: 900;
            color: #172033;
            line-height: 1.45;
            margin-bottom: 10px;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
            text-decoration: none;
        }

            .news-featured-title:hover[b-9g8wlt6yvc] {
                color: var(--red);
            }

        .news-featured-body p[b-9g8wlt6yvc] {
            font-size: .88rem;
            color: #555;
            line-height: 1.75;
            display: -webkit-box;
            -webkit-line-clamp: 5;
            -webkit-box-orient: vertical;
            overflow: hidden;
            margin: 0 0 12px;
        }

        .news-featured-more[b-9g8wlt6yvc] {
            margin-top: auto;
            align-self: flex-end;
            font-size: .9rem;
            font-weight: 900;
            color: var(--red);
            text-decoration: none;
            white-space: nowrap;
        }

            .news-featured-more:hover[b-9g8wlt6yvc] {
                text-decoration: underline;
            }

        /* ── Category label (above featured) ── */
        .news-cat-label[b-9g8wlt6yvc] {
            font-size: 2rem;
            font-weight: 900;
            color: var(--red);
            margin: 0;
            line-height: 1.15;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        /* ── 3-column small cards ── */
        .news-cards[b-9g8wlt6yvc] {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 16px;
        }

        .news-card[b-9g8wlt6yvc] {
            background: #fff;
            border-radius: 14px;
            overflow: hidden;
            box-shadow: 0 2px 10px rgba(0,0,0,.07);
            display: flex;
            flex-direction: column;
            text-decoration: none;
            color: inherit;
            transition: .2s;
        }

            .news-card:hover[b-9g8wlt6yvc] {
                transform: translateY(-3px);
                box-shadow: 0 8px 24px rgba(0,0,0,.12);
            }

        .news-card-img[b-9g8wlt6yvc] {
            width: 100%;
            height: 160px;
            object-fit: cover;
            object-position: center top;
            display: block;
            background: var(--red);
        }

            .news-card-img.no-img[b-9g8wlt6yvc] {
                background: var(--red);
                height: 130px;
            }

        .news-card-body[b-9g8wlt6yvc] {
            padding: 14px 16px 12px;
            flex: 1;
            display: flex;
            flex-direction: column;
        }

        .news-card-title[b-9g8wlt6yvc] {
            font-size: .88rem;
            font-weight: 800;
            color: #172033;
            line-height: 1.45;
            margin-bottom: 6px;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        .news-card-body p[b-9g8wlt6yvc] {
            font-size: .78rem;
            color: #666;
            line-height: 1.65;
            flex: 1;
            margin: 0 0 8px;
            display: -webkit-box;
            -webkit-line-clamp: 3;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        .news-card-more[b-9g8wlt6yvc] {
            font-size: .78rem;
            font-weight: 800;
            color: var(--red);
            align-self: flex-end;
            text-decoration: none;
        }

            .news-card-more:hover[b-9g8wlt6yvc] {
                text-decoration: underline;
            }

        /* ── Responsive ── */
        @media (max-width:991.98px) {
            .news-sticky-panel[b-9g8wlt6yvc] {
                top: 86px;
                padding: 14px 0 14px;
                margin: -14px 0 24px;
            }

            .news-tabs[b-9g8wlt6yvc] {
                grid-template-columns: repeat(4, minmax(0, 1fr));
            }

            .news-section[b-9g8wlt6yvc] {
                scroll-margin-top: 300px;
            }
        }

        @media (max-width:760px) {
            .news-featured[b-9g8wlt6yvc] {
                grid-template-columns: 1fr;
            }

            .news-featured-img[b-9g8wlt6yvc] {
                min-height: 180px;
            }

            .news-cards[b-9g8wlt6yvc] {
                grid-template-columns: repeat(2,1fr);
            }
        }

        @media (max-width:500px) {
            .news-sticky-panel[b-9g8wlt6yvc] {
                top: 78px;
                padding: 12px 0;
                margin: -12px 0 20px;
            }

            .news-cards[b-9g8wlt6yvc] {
                grid-template-columns: 1fr;
            }

            .news-tabs[b-9g8wlt6yvc] {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 6px;
            }

            .news-tab[b-9g8wlt6yvc] {
                font-size: .78rem;
                padding: .42rem .45rem;
            }

            .news-section[b-9g8wlt6yvc] {
                scroll-margin-top: 340px;
            }
        }

        /* ── Section heading row + ดูข่าวทั้งหมด button ── */
        .news-section-head[b-9g8wlt6yvc] {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 18px;
            margin-bottom: 16px;
        }

        .news-section-all[b-9g8wlt6yvc] {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            min-height: 34px;
            padding: .42rem 1rem;
            border-radius: 999px;
            background: var(--red);
            color: #fff;
            font-size: .86rem;
            font-weight: 900;
            text-decoration: none;
            white-space: nowrap;
            box-shadow: 0 10px 22px rgba(143, 0, 1, .16);
            transition: .18s ease;
        }

            .news-section-all:hover[b-9g8wlt6yvc] {
                background: #6f0001;
                color: #fff;
                transform: translateY(-1px);
            }

            .news-section-all i[b-9g8wlt6yvc] {
                font-size: .85rem;
            }

        /* ── Featured card text alignment ── */
        .news-featured-title[b-9g8wlt6yvc] {
            margin-top: 0;
        }

        .news-featured-body p[b-9g8wlt6yvc] {
            margin-bottom: 18px;
        }

        /* ── Small card: push ดูเพิ่มเติม to bottom-right ── */
        .news-card-more[b-9g8wlt6yvc] {
            margin-top: auto;
            align-self: flex-end;
            font-size: .82rem;
            font-weight: 900;
            color: var(--red);
            text-decoration: none;
            white-space: nowrap;
        }

            .news-card-more[b-9g8wlt6yvc]::after,
            .news-featured-more[b-9g8wlt6yvc]::after,
            .news-section-all[b-9g8wlt6yvc]::after {
                content: "";
            }

        /* Mobile */
        @media (max-width: 575.98px) {
            .news-section-head[b-9g8wlt6yvc] {
                align-items: flex-start;
                flex-direction: column;
                gap: 10px;
            }

            .news-cat-label[b-9g8wlt6yvc] {
                font-size: 1.55rem;
            }

            .news-section-all[b-9g8wlt6yvc] {
                align-self: flex-start;
            }
        }
/* ══════════════════════════════════════
   Database states / empty image fallback
   ══════════════════════════════════════ */
.news-state-card[b-9g8wlt6yvc] {
    min-height: 240px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    padding: 38px;
    border: 1px solid rgba(143, 0, 1, .12);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(20, 0, 0, .07);
    color: #172033;
}

.news-state-card > div[b-9g8wlt6yvc] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.news-state-card strong[b-9g8wlt6yvc] {
    color: var(--red);
    font-size: 1.05rem;
    font-weight: 900;
}

.news-state-card span[b-9g8wlt6yvc] {
    color: #6b7280;
}

.news-state-card.is-error[b-9g8wlt6yvc] {
    flex-wrap: wrap;
    background: #fff7f7;
}

.news-state-card.is-error > i[b-9g8wlt6yvc] {
    color: var(--red);
    font-size: 1.8rem;
}

.news-empty-category[b-9g8wlt6yvc] {
    min-height: 170px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    padding: 30px;
    border: 1px dashed rgba(143, 0, 1, .22);
    border-radius: 18px;
    background: #fff;
    color: #6b7280;
}

.news-empty-category > i[b-9g8wlt6yvc] {
    color: var(--red);
    font-size: 2rem;
}

.news-empty-category > div[b-9g8wlt6yvc] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.news-empty-category strong[b-9g8wlt6yvc] {
    color: #172033;
    font-weight: 900;
}

.news-featured[b-9g8wlt6yvc] {
    grid-template-areas: "image body";
}

.news-featured.is-reversed[b-9g8wlt6yvc] {
    grid-template-areas: "body image";
}

.news-featured-img[b-9g8wlt6yvc] {
    grid-area: image;
}

.news-featured-body[b-9g8wlt6yvc] {
    grid-area: body;
}

.news-featured-img .no-img[b-9g8wlt6yvc],
.news-card-img.no-img[b-9g8wlt6yvc] {
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, .88);
    background:
        radial-gradient(circle at 28% 22%, rgba(255,255,255,.16), transparent 38%),
        linear-gradient(135deg, #a70001, #650001);
}

.news-featured-img .no-img i[b-9g8wlt6yvc] {
    font-size: 3rem;
}

.news-card-img.no-img i[b-9g8wlt6yvc] {
    font-size: 2.2rem;
}

@media (max-width: 760px) {
    .news-featured[b-9g8wlt6yvc],
    .news-featured.is-reversed[b-9g8wlt6yvc] {
        grid-template-areas:
            "image"
            "body";
    }

    .news-state-card[b-9g8wlt6yvc] {
        min-height: 210px;
        align-items: flex-start;
        flex-direction: column;
        padding: 28px 22px;
    }
}
/* /Components/Pages/NewsCategory.razor.rz.scp.css */
.category-page[b-glk54eve8o] {
    --cat-red: #8f0001;
    --cat-red-dark: #690001;
    --cat-soft: #f7f8fa;
    --cat-text: #172033;
    --cat-muted: #5f6673;
    --cat-line: #e3e5ea;
    min-height: 100vh;
    background: var(--cat-soft);
    font-family: 'Noto Sans Thai', sans-serif;
}

.category-wrap[b-glk54eve8o] {
    max-width: 1320px;
    margin: 0 auto;
    padding: 74px 24px 72px;
}

.category-page-title[b-glk54eve8o] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 14px;
    color: var(--cat-red);
    font-size: 1.55rem;
    font-weight: 900;
}

.category-page-divider[b-glk54eve8o] {
    height: 2px;
    margin-bottom: 38px;
    border-radius: 999px;
    background: var(--cat-line);
}

.category-heading-row[b-glk54eve8o] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 28px;
}

.category-heading[b-glk54eve8o] {
    margin: 0;
    color: var(--cat-red);
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 900;
    line-height: 1.2;
}

.category-result-summary[b-glk54eve8o] {
    margin: 7px 0 0;
    color: var(--cat-muted);
    font-size: .95rem;
}

.category-result-summary strong[b-glk54eve8o] {
    color: var(--cat-red);
}

.category-back-link[b-glk54eve8o] {
    min-height: 42px;
    padding: 0 17px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid rgba(143, 0, 1, .20);
    border-radius: 999px;
    background: #fff;
    color: var(--cat-red);
    font-weight: 850;
    text-decoration: none;
    white-space: nowrap;
    transition: .18s ease;
}

.category-back-link:hover[b-glk54eve8o] {
    border-color: var(--cat-red);
    color: var(--cat-red-dark);
    transform: translateY(-1px);
}


.category-switcher[b-glk54eve8o] {
    margin: 0 0 30px;
    padding: 22px;
    border: 1px solid rgba(143, 0, 1, .12);
    border-radius: 24px;
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, .98),
            rgba(255, 247, 247, .96));
    box-shadow: 0 12px 30px rgba(23, 32, 51, .07);
}

.category-switcher-header[b-glk54eve8o] {
    margin-bottom: 16px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.category-switcher-title[b-glk54eve8o] {
    margin: 0;
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--cat-red);
    font-size: 1.05rem;
    font-weight: 900;
}

.category-switcher-subtitle[b-glk54eve8o] {
    margin: 4px 0 0;
    color: var(--cat-muted);
    font-size: .88rem;
    line-height: 1.5;
}

.category-switcher-list[b-glk54eve8o] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.category-switcher-link[b-glk54eve8o] {
    min-width: 0;
    min-height: 58px;
    padding: 10px 13px;
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(143, 0, 1, .12);
    border-radius: 16px;
    background: #fff;
    color: var(--cat-text);
    font-weight: 800;
    line-height: 1.35;
    text-decoration: none;
    transition:
        border-color .18s ease,
        background .18s ease,
        color .18s ease,
        box-shadow .18s ease,
        transform .18s ease;
}

.category-switcher-link:hover[b-glk54eve8o] {
    border-color: rgba(143, 0, 1, .34);
    background: #fffafa;
    color: var(--cat-red);
    box-shadow: 0 8px 20px rgba(143, 0, 1, .08);
    transform: translateY(-2px);
}

.category-switcher-icon[b-glk54eve8o] {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: rgba(143, 0, 1, .08);
    color: var(--cat-red);
    font-size: 1rem;
}

.category-switcher-label[b-glk54eve8o] {
    min-width: 0;
    overflow-wrap: anywhere;
}

.category-switcher-link.is-active[b-glk54eve8o] {
    border-color: transparent;
    background:
        linear-gradient(
            135deg,
            #a90001,
            #720001);
    color: #fff;
    box-shadow: 0 12px 24px rgba(143, 0, 1, .20);
}

.category-switcher-link.is-active:hover[b-glk54eve8o] {
    color: #fff;
    transform: none;
}

.category-switcher-link.is-active .category-switcher-icon[b-glk54eve8o] {
    background: rgba(255, 255, 255, .18);
    color: #fff;
}

.category-list[b-glk54eve8o] {
    display: grid;
    gap: 30px;
}

.category-card[b-glk54eve8o] {
    min-height: 305px;
    display: grid;
    grid-template-columns:
        minmax(320px, 1.05fr)
        minmax(320px, .95fr);
    overflow: hidden;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 12px 32px rgba(23, 32, 51, .10);
    transition: .2s ease;
}

.category-card:hover[b-glk54eve8o] {
    border-color: rgba(143, 0, 1, .22);
    box-shadow: 0 18px 42px rgba(23, 32, 51, .14);
    transform: translateY(-4px);
}

.category-card-media[b-glk54eve8o] {
    min-height: 305px;
    overflow: hidden;
    background: #ece9dd;
    text-decoration: none;
}

.category-card-media img[b-glk54eve8o] {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
    transition: transform .35s ease;
}

.category-card:hover .category-card-media img[b-glk54eve8o] {
    transform: scale(1.025);
}

.category-card-placeholder[b-glk54eve8o] {
    width: 100%;
    height: 100%;
    min-height: 305px;
    display: grid;
    place-items: center;
    background:
        radial-gradient(
            circle at 30% 20%,
            rgba(255, 255, 255, .20),
            transparent 36%),
        linear-gradient(135deg, #a80001, #640001);
    color: #fff;
    font-size: 4rem;
}

.category-card-body[b-glk54eve8o] {
    min-width: 0;
    padding: 36px 42px 32px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.category-card-date[b-glk54eve8o] {
    margin-bottom: 11px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--cat-red);
    font-size: .86rem;
    font-weight: 800;
}

.category-card-title[b-glk54eve8o] {
    margin: 0 0 14px;
    font-size: clamp(1.25rem, 1.55vw, 1.75rem);
    font-weight: 900;
    line-height: 1.35;
}

.category-card-title a[b-glk54eve8o] {
    color: var(--cat-text);
    text-decoration: none;
}

.category-card-title a:hover[b-glk54eve8o] {
    color: var(--cat-red);
}

.category-card-desc[b-glk54eve8o] {
    max-width: 560px;
    margin: 0;
    color: var(--cat-muted);
    font-size: 1.02rem;
    font-weight: 500;
    line-height: 1.75;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.category-card-link[b-glk54eve8o] {
    margin-top: auto;
    margin-left: auto;
    padding-top: 18px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--cat-red);
    font-size: 1.02rem;
    font-weight: 900;
    text-decoration: none;
    transition: .18s ease;
}

.category-card:hover .category-card-link[b-glk54eve8o] {
    color: var(--cat-red-dark);
    transform: translateX(4px);
}

.category-pagination-wrap[b-glk54eve8o] {
    display: flex;
    justify-content: center;
    margin-top: 44px;
}

.category-pagination[b-glk54eve8o] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.category-pagination a[b-glk54eve8o],
.category-pagination span[b-glk54eve8o] {
    min-width: 42px;
    height: 42px;
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(143, 0, 1, .16);
    border-radius: 999px;
    background: #fff;
    color: var(--cat-red);
    font-weight: 800;
    text-decoration: none;
}

.category-pagination a:hover[b-glk54eve8o] {
    border-color: var(--cat-red);
}

.category-pagination .active span[b-glk54eve8o] {
    border-color: var(--cat-red);
    background: var(--cat-red);
    color: #fff;
}

.category-pagination .disabled span[b-glk54eve8o] {
    color: rgba(23, 32, 51, .35);
    cursor: not-allowed;
}

.category-pagination .ellipsis span[b-glk54eve8o] {
    min-width: 28px;
    padding: 0 4px;
    border-color: transparent;
    background: transparent;
    color: var(--cat-muted);
}

.category-state-card[b-glk54eve8o],
.category-empty[b-glk54eve8o] {
    min-height: 300px;
    padding: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    border: 1px solid rgba(143, 0, 1, .12);
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 16px 42px rgba(23, 32, 51, .08);
    text-align: left;
}

.category-state-card > div[b-glk54eve8o] {
    display: grid;
    gap: 3px;
}

.category-state-card strong[b-glk54eve8o] {
    color: var(--cat-red);
    font-size: 1.05rem;
}

.category-state-card span[b-glk54eve8o] {
    color: var(--cat-muted);
}

.category-state-card.is-error[b-glk54eve8o] {
    background: #fff7f7;
}

.category-state-card.is-error > i[b-glk54eve8o] {
    color: var(--cat-red);
    font-size: 2rem;
}

.category-state-card .btn[b-glk54eve8o] {
    margin-left: 12px;
}

.category-empty[b-glk54eve8o] {
    flex-direction: column;
    text-align: center;
}

.category-empty > i[b-glk54eve8o] {
    color: var(--cat-red);
    font-size: 3rem;
}

.category-empty h2[b-glk54eve8o] {
    margin: 0;
    color: var(--cat-text);
    font-size: 1.45rem;
    font-weight: 900;
}

.category-empty p[b-glk54eve8o] {
    max-width: 520px;
    margin: 0;
    color: var(--cat-muted);
}

.category-empty a[b-glk54eve8o] {
    color: var(--cat-red);
    font-weight: 900;
}

@media (max-width: 991.98px) {
    .category-wrap[b-glk54eve8o] {
        padding: 52px 18px 56px;
    }

    .category-switcher-list[b-glk54eve8o] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .category-card[b-glk54eve8o] {
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .category-card-media[b-glk54eve8o] {
        height: 300px;
        min-height: 260px;
    }

    .category-card-placeholder[b-glk54eve8o] {
        min-height: 300px;
    }

    .category-card-body[b-glk54eve8o] {
        min-height: 240px;
        padding: 28px;
    }
}

@media (max-width: 575.98px) {
    .category-wrap[b-glk54eve8o] {
        padding: 38px 14px 44px;
    }

    .category-page-title[b-glk54eve8o] {
        font-size: 1.25rem;
    }

    .category-heading-row[b-glk54eve8o] {
        align-items: flex-start;
        flex-direction: column;
    }

    .category-heading[b-glk54eve8o] {
        font-size: 1.8rem;
    }

    .category-back-link[b-glk54eve8o] {
        width: 100%;
    }

    .category-switcher[b-glk54eve8o] {
        margin-bottom: 24px;
        padding: 17px 14px 14px;
        border-radius: 20px;
    }

    .category-switcher-header[b-glk54eve8o] {
        margin-bottom: 13px;
    }

    .category-switcher-subtitle[b-glk54eve8o] {
        font-size: .82rem;
    }

    .category-switcher-list[b-glk54eve8o] {
        margin: 0 -14px;
        padding: 0 14px 4px;
        display: flex;
        gap: 9px;
        overflow-x: auto;
        scroll-snap-type: x proximity;
        scrollbar-width: thin;
        overscroll-behavior-inline: contain;
    }

    .category-switcher-link[b-glk54eve8o] {
        min-width: 195px;
        flex: 0 0 195px;
        scroll-snap-align: start;
    }

    .category-list[b-glk54eve8o] {
        gap: 22px;
    }

    .category-card[b-glk54eve8o] {
        border-radius: 22px;
    }

    .category-card-media[b-glk54eve8o],
    .category-card-placeholder[b-glk54eve8o] {
        height: 210px;
        min-height: 210px;
    }

    .category-card-body[b-glk54eve8o] {
        min-height: 230px;
        padding: 22px;
    }

    .category-state-card[b-glk54eve8o] {
        padding: 28px 20px;
        flex-direction: column;
        text-align: center;
    }

    .category-state-card .btn[b-glk54eve8o] {
        width: 100%;
        margin: 4px 0 0;
    }
}
/* /Components/Pages/NewsDetail.razor.rz.scp.css */
.news-detail-page[b-du31sn8uku],
.detail-image-preview-modal[b-du31sn8uku],
.copy-toast[b-du31sn8uku] {
    --detail-red: #8F0001;
    --detail-red-dark: #650001;
    --detail-soft: #f7f8fa;
    --detail-text: #172033;
    --detail-muted: #6b7280;
    --detail-line: #e3e5ea;
    --detail-card-shadow: 0 14px 38px rgba(23, 32, 51, .10);
}

.news-detail-page[b-du31sn8uku] {
    min-height: 100vh;
    background: var(--detail-soft);
    font-family: 'Noto Sans Thai', sans-serif;
}

.news-detail-wrap[b-du31sn8uku] {
    max-width: 1320px;
    margin: 0 auto;
    padding: 68px 24px 78px;
}

/* Breadcrumb */
.detail-breadcrumb[b-du31sn8uku] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
    color: var(--detail-muted);
    font-size: .92rem;
    font-weight: 700;
}

.detail-breadcrumb a[b-du31sn8uku] {
    color: var(--detail-red);
    text-decoration: none;
}

.detail-breadcrumb a:hover[b-du31sn8uku] {
    text-decoration: underline;
}

.detail-breadcrumb i[b-du31sn8uku] {
    color: rgba(143, 0, 1, .65);
    font-size: .78rem;
}

/* Header */
.detail-title[b-du31sn8uku] {
    margin: 0;
    color: var(--detail-red);
    font-size: clamp(1.85rem, 3.2vw, 3.05rem);
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: -.025em;
}

.detail-meta-row[b-du31sn8uku] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 16px;
    color: var(--detail-muted);
    font-size: .95rem;
    font-weight: 700;
}

.detail-meta-item[b-du31sn8uku] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.detail-meta-item i[b-du31sn8uku] {
    color: var(--detail-red);
    font-size: 1rem;
}

.detail-divider[b-du31sn8uku] {
    height: 2px;
    margin: 28px 0 26px;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        var(--detail-red),
        rgba(143, 0, 1, .08)
    );
}

/* Main image */
.detail-hero-image[b-du31sn8uku] {
    position: relative;
    overflow: hidden;
    margin: 0;
    border-radius: 8px;
    background: #ece9dd;
    border: 1px solid rgba(23, 32, 51, .08);
    box-shadow: var(--detail-card-shadow);
}

.detail-hero-image img[b-du31sn8uku] {
    width: 100%;
    max-height: 720px;
    height: auto;
    display: block;
    object-fit: contain;
    object-position: center;
    background: #fff;
}

.detail-hero-zoomable[b-du31sn8uku] {
    cursor: zoom-in;
}

.detail-hero-zoomable:focus-visible[b-du31sn8uku] {
    outline: 3px solid rgba(143, 0, 1, .28);
    outline-offset: 4px;
}

.detail-hero-zoomable img[b-du31sn8uku] {
    object-position: center top;
}

/* Content */
.detail-content-card[b-du31sn8uku] {
    margin-top: 30px;
    padding: 42px 48px;
    border-radius: 28px;
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
    box-shadow: var(--detail-card-shadow);
}

.detail-category[b-du31sn8uku] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 22px;
    padding: .42rem .9rem;
    border-radius: 999px;
    background: #fff1f1;
    color: var(--detail-red);
    font-size: .9rem;
    font-weight: 900;
}

.detail-content[b-du31sn8uku] {
    color: #303846;
    font-size: 1.08rem;
    font-weight: 400;
    line-height: 2.05;
}

.detail-content p[b-du31sn8uku] {
    margin: 0 0 18px;
}

.detail-content p:last-child[b-du31sn8uku] {
    margin-bottom: 0;
}

.detail-content strong[b-du31sn8uku] {
    color: var(--detail-text);
    font-weight: 900;
}

/* Share */
.detail-share-panel[b-du31sn8uku] {
    margin-top: 28px;
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
    border-radius: 24px;
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
    box-shadow: 0 10px 26px rgba(23, 32, 51, .07);
}

.detail-share-title[b-du31sn8uku] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--detail-red);
    font-size: 1.05rem;
    font-weight: 900;
}

.detail-share-title i[b-du31sn8uku] {
    font-size: 1.25rem;
}

.detail-share-buttons[b-du31sn8uku] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.share-btn[b-du31sn8uku] {
    min-width: 44px;
    height: 44px;
    padding: 0 15px;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #fff;
    font-size: .92rem;
    font-weight: 900;
    font-family: inherit;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform .18s ease,
        box-shadow .18s ease,
        opacity .18s ease;
}

.share-btn:hover[b-du31sn8uku] {
    color: #fff;
    opacity: .94;
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(23, 32, 51, .16);
}

.share-facebook[b-du31sn8uku] {
    background: #1877f2;
}

.share-line[b-du31sn8uku] {
    background: #06c755;
}

.share-x[b-du31sn8uku] {
    background: #111;
}

.share-email[b-du31sn8uku] {
    background: #6b7280;
}

.share-copy[b-du31sn8uku] {
    background: var(--detail-red);
}

/* Back links */
.detail-back-row[b-du31sn8uku] {
    margin-top: 32px;
    display: flex;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

.detail-back-link[b-du31sn8uku] {
    min-height: 44px;
    padding: .65rem 1.2rem;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(143, 0, 1, .22);
    color: var(--detail-red);
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 8px 18px rgba(23, 32, 51, .06);
    transition: .18s ease;
}

.detail-back-link:hover[b-du31sn8uku] {
    background: var(--detail-red);
    color: #fff;
    transform: translateY(-1px);
}

/* Related news */
.detail-related[b-du31sn8uku] {
    margin-top: 46px;
}

.detail-related-head[b-du31sn8uku] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 18px;
}

.detail-related-head h2[b-du31sn8uku] {
    margin: 0;
    color: var(--detail-red);
    font-size: 1.55rem;
    font-weight: 900;
}

.detail-related-head a[b-du31sn8uku] {
    color: var(--detail-red);
    font-weight: 900;
    text-decoration: none;
}

.detail-related-head a:hover[b-du31sn8uku] {
    text-decoration: underline;
}

.related-grid[b-du31sn8uku] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.related-card[b-du31sn8uku] {
    overflow: hidden;
    border-radius: 22px;
    background: #fff;
    border: 1px solid rgba(23, 32, 51, .08);
    box-shadow: 0 10px 26px rgba(23, 32, 51, .07);
    color: inherit;
    text-decoration: none;
    transition: .18s ease;
}

.related-card:hover[b-du31sn8uku] {
    color: inherit;
    transform: translateY(-4px);
    box-shadow: 0 16px 34px rgba(23, 32, 51, .12);
}

.related-card img[b-du31sn8uku] {
    width: 100%;
    height: 160px;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.related-card-body[b-du31sn8uku] {
    padding: 16px 18px 18px;
}

.related-card-title[b-du31sn8uku] {
    margin: 0 0 8px;
    color: var(--detail-text);
    font-size: .98rem;
    font-weight: 900;
    line-height: 1.45;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.related-card-date[b-du31sn8uku] {
    color: var(--detail-muted);
    font-size: .82rem;
    font-weight: 700;
}

/* Copy toast */
.copy-toast[b-du31sn8uku] {
    position: fixed;
    left: 50%;
    bottom: 30px;
    z-index: 3200;
    padding: .75rem 1.2rem;
    border-radius: 999px;
    background: var(--detail-red);
    color: #fff;
    font-weight: 900;
    box-shadow: 0 12px 30px rgba(23, 32, 51, .22);
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, 20px);
    transition: .2s ease;
}

.copy-toast.show[b-du31sn8uku] {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
}

/* Hero image zoom button */
.detail-image-zoom-hint[b-du31sn8uku] {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 2;
    min-height: 42px;
    padding: .55rem 1rem;
    border: 0;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(143, 0, 1, .92);
    color: #fff;
    font-size: .9rem;
    font-weight: 900;
    font-family: inherit;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .22);
    cursor: zoom-in;
    transition: .18s ease;
}

.detail-image-zoom-hint:hover[b-du31sn8uku] {
    background: var(--detail-red-dark);
    transform: translateY(-2px);
}

/* Full-screen image modal */
.detail-image-preview-modal[b-du31sn8uku] {
    z-index: 3095;
    background: rgba(8, 8, 10, .9);
}

.detail-image-preview-modal .modal-dialog[b-du31sn8uku] {
    margin: 0;
    max-width: none;
}

.detail-image-preview-modal .modal-content[b-du31sn8uku] {
    min-height: 100vh;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.detail-image-preview-body[b-du31sn8uku] {
    width: 100%;
    min-height: 100vh;
    padding: 72px 28px 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 16px;
}

.detail-image-preview-body img[b-du31sn8uku] {
    max-width: min(96vw, 1600px);
    max-height: 84vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 24px 80px rgba(0, 0, 0, .42);
}

.detail-image-preview-caption[b-du31sn8uku] {
    color: #fff;
    font-size: 1rem;
    font-weight: 800;
    text-align: center;
    opacity: .92;
}

.detail-image-preview-close[b-du31sn8uku] {
    position: fixed;
    top: 22px;
    right: 26px;
    z-index: 3105;
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, .16);
    color: #fff;
    font-size: 1.25rem;
    cursor: pointer;
    transition: .18s ease;
}

.detail-image-preview-close:hover[b-du31sn8uku] {
    background: #fff;
    color: var(--detail-red);
    transform: rotate(90deg);
}

@media (max-width: 991.98px) {
    .news-detail-wrap[b-du31sn8uku] {
        padding: 52px 18px 64px;
    }

    .detail-content-card[b-du31sn8uku] {
        padding: 32px 30px;
        border-radius: 24px;
    }

    .related-grid[b-du31sn8uku] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .news-detail-wrap[b-du31sn8uku] {
        padding: 38px 14px 52px;
    }

    .detail-title[b-du31sn8uku] {
        font-size: 1.55rem;
    }

    .detail-meta-row[b-du31sn8uku] {
        font-size: .86rem;
    }

    .detail-hero-image[b-du31sn8uku] {
        border-radius: 18px;
    }

    .detail-hero-image img[b-du31sn8uku] {
        height: auto;
        max-height: 70vh;
    }

    .detail-content-card[b-du31sn8uku] {
        padding: 24px 20px;
        border-radius: 22px;
    }

    .detail-content[b-du31sn8uku] {
        font-size: .98rem;
        line-height: 1.9;
    }

    .detail-share-panel[b-du31sn8uku] {
        align-items: flex-start;
        flex-direction: column;
        padding: 18px;
    }

    .detail-share-buttons[b-du31sn8uku] {
        width: 100%;
    }

    .share-btn[b-du31sn8uku] {
        flex: 1 1 calc(50% - 8px);
    }

    .related-grid[b-du31sn8uku] {
        grid-template-columns: 1fr;
    }

    .detail-related-head[b-du31sn8uku] {
        align-items: flex-start;
        flex-direction: column;
    }

    .detail-image-zoom-hint[b-du31sn8uku] {
        right: 12px;
        bottom: 12px;
        min-height: 38px;
        padding: .48rem .82rem;
        font-size: .78rem;
    }

    .detail-image-preview-body[b-du31sn8uku] {
        padding: 70px 14px 32px;
    }

    .detail-image-preview-body img[b-du31sn8uku] {
        max-width: 96vw;
        max-height: 78vh;
        border-radius: 12px;
    }

    .detail-image-preview-close[b-du31sn8uku] {
        top: 16px;
        right: 16px;
        width: 42px;
        height: 42px;
    }
}


/* Database states */
.detail-state-card[b-du31sn8uku],
.detail-empty[b-du31sn8uku] {
    min-height: 330px;
    padding: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    border: 1px solid rgba(143, 0, 1, .12);
    border-radius: 28px;
    background: #fff;
    box-shadow: var(--detail-card-shadow);
}

.detail-state-card > div[b-du31sn8uku] {
    display: grid;
    gap: 4px;
}

.detail-state-card strong[b-du31sn8uku] {
    color: var(--detail-red);
    font-size: 1.08rem;
}

.detail-state-card span[b-du31sn8uku] {
    color: var(--detail-muted);
}

.detail-state-card.is-error[b-du31sn8uku] {
    background: #fff7f7;
}

.detail-state-card.is-error > i[b-du31sn8uku] {
    color: var(--detail-red);
    font-size: 2.2rem;
}

.detail-state-card .btn[b-du31sn8uku] {
    margin-left: 12px;
}

.detail-empty[b-du31sn8uku] {
    flex-direction: column;
    text-align: center;
}

.detail-empty > i[b-du31sn8uku] {
    color: var(--detail-red);
    font-size: 3.2rem;
}

.detail-empty h1[b-du31sn8uku] {
    margin: 0;
    color: var(--detail-text);
    font-size: 1.65rem;
    font-weight: 900;
}

.detail-empty p[b-du31sn8uku] {
    max-width: 520px;
    margin: 0;
    color: var(--detail-muted);
}

.detail-empty a[b-du31sn8uku] {
    color: var(--detail-red);
    font-weight: 900;
}

.detail-hero-placeholder[b-du31sn8uku] {
    min-height: 340px;
    display: grid;
    place-items: center;
    border-radius: 24px;
    background:
        radial-gradient(
            circle at 30% 20%,
            rgba(255, 255, 255, .18),
            transparent 36%),
        linear-gradient(135deg, #a80001, #640001);
    color: #fff;
    font-size: 5rem;
    box-shadow: var(--detail-card-shadow);
}

.detail-category[b-du31sn8uku] {
    text-decoration: none;
}

.detail-category:hover[b-du31sn8uku] {
    color: var(--detail-red-dark);
}

/* Legacy HTML content */
.detail-content img[b-du31sn8uku] {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 22px auto;
    border-radius: 14px;
}

.detail-content a[b-du31sn8uku] {
    color: var(--detail-red);
    font-weight: 750;
    overflow-wrap: anywhere;
}

.detail-content table[b-du31sn8uku] {
    width: 100%;
    margin: 22px 0;
    border-collapse: collapse;
    display: block;
    overflow-x: auto;
}

.detail-content th[b-du31sn8uku],
.detail-content td[b-du31sn8uku] {
    padding: 10px 12px;
    border: 1px solid var(--detail-line);
    vertical-align: top;
}

.detail-content blockquote[b-du31sn8uku] {
    margin: 22px 0;
    padding: 16px 20px;
    border-left: 4px solid var(--detail-red);
    background: #fff7f7;
}

.detail-content-empty[b-du31sn8uku] {
    padding: 24px;
    border-radius: 16px;
    background: #f7f8fa;
    color: var(--detail-muted);
    text-align: center;
}

/* Attachments */
.detail-attachments[b-du31sn8uku] {
    margin-top: 34px;
    padding-top: 28px;
    border-top: 1px solid var(--detail-line);
}

.detail-attachments h2[b-du31sn8uku] {
    margin: 0 0 16px;
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--detail-red);
    font-size: 1.12rem;
    font-weight: 900;
}

.detail-attachment-list[b-du31sn8uku] {
    display: grid;
    gap: 10px;
}

.detail-attachment-item[b-du31sn8uku] {
    min-height: 54px;
    padding: 12px 16px;
    display: grid;
    grid-template-columns: 26px 1fr 24px;
    align-items: center;
    gap: 10px;
    border: 1px solid rgba(143, 0, 1, .12);
    border-radius: 15px;
    background: #fff8f8;
    color: var(--detail-text);
    font-weight: 750;
    text-decoration: none;
    transition: .18s ease;
}

.detail-attachment-item > i:first-child[b-du31sn8uku],
.detail-attachment-item > i:last-child[b-du31sn8uku] {
    color: var(--detail-red);
    font-size: 1.12rem;
}

.detail-attachment-item:hover[b-du31sn8uku] {
    border-color: var(--detail-red);
    color: var(--detail-red);
    transform: translateY(-1px);
}

.related-card-placeholder[b-du31sn8uku] {
    height: 160px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg, #a80001, #640001);
    color: #fff;
    font-size: 2.7rem;
}

@media (max-width: 575.98px) {
    .detail-state-card[b-du31sn8uku] {
        padding: 28px 20px;
        flex-direction: column;
        text-align: center;
    }

    .detail-state-card .btn[b-du31sn8uku] {
        width: 100%;
        margin: 4px 0 0;
    }

    .detail-hero-placeholder[b-du31sn8uku] {
        min-height: 230px;
        border-radius: 18px;
    }

    .detail-attachment-item[b-du31sn8uku] {
        grid-template-columns: 24px 1fr 20px;
        padding: 11px 13px;
    }
}
/* /Components/Pages/PhotoAll.razor.rz.scp.css */
.photo-page[b-dn6q8yjkos] {
    background: #fff;
}

.photo-list-section[b-dn6q8yjkos] {
    padding: 46px 0 70px;
    background: #fff;
}

.photo-title-row[b-dn6q8yjkos] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid #8f0001;
    margin-bottom: 52px;
    padding-bottom: 24px;
}

.page-title-std[b-dn6q8yjkos] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    color: #8f0001;
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1.2;
}

.page-title-std i[b-dn6q8yjkos] {
    flex-shrink: 0;
    font-size: 1.1rem;
}

.photo-title-meta[b-dn6q8yjkos] {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-top: 8px;
    color: #6b7280;
    font-size: .9rem;
    font-weight: 700;
}

.photo-title-content[b-dn6q8yjkos] {
    flex-shrink: 0;
}

.photo-search-panel[b-dn6q8yjkos] {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) 170px auto 42px;
    align-items: center;
    gap: 8px;
    width: min(100%, 650px);
}

.photo-search-control[b-dn6q8yjkos] {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 0;
}

    .photo-search-control > i[b-dn6q8yjkos] {
        position: absolute;
        left: 14px;
        z-index: 1;
        color: #8f0001;
        font-size: .9rem;
        pointer-events: none;
    }

    .photo-search-control input[b-dn6q8yjkos] {
        width: 100%;
        height: 44px;
        padding: 0 13px 0 40px;
        border: 1px solid #dfe3e8;
        border-radius: 12px;
        outline: none;
        color: #172033;
        background: #fff;
        font-family: inherit;
        font-size: .88rem;
        font-weight: 600;
        transition: border-color .18s ease, box-shadow .18s ease;
    }

        .photo-search-control input[b-dn6q8yjkos]::placeholder {
            color: #9aa2ad;
            font-weight: 500;
        }

        .photo-search-control input:focus[b-dn6q8yjkos] {
            border-color: rgba(143, 0, 1, .65);
            box-shadow: 0 0 0 3px rgba(143, 0, 1, .08);
        }

.photo-search-date input[b-dn6q8yjkos] {
    padding-right: 10px;
}

.photo-search-btn[b-dn6q8yjkos] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    height: 44px;
    padding: 0 18px;
    border: 0;
    border-radius: 12px;
    color: #fff;
    background: #8f0001;
    box-shadow: 0 8px 20px rgba(143, 0, 1, .16);
    font-family: inherit;
    font-size: .88rem;
    font-weight: 900;
    white-space: nowrap;
    transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

    .photo-search-btn:not(:disabled):hover[b-dn6q8yjkos] {
        background: #a40002;
        box-shadow: 0 10px 24px rgba(143, 0, 1, .22);
        transform: translateY(-1px);
    }

.photo-search-clear-btn[b-dn6q8yjkos] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid #e3e6eb;
    border-radius: 12px;
    color: #687181;
    background: #fff;
    font-size: .9rem;
    transition: color .18s ease, border-color .18s ease, background .18s ease;
}

    .photo-search-clear-btn:not(:disabled):hover[b-dn6q8yjkos] {
        border-color: rgba(143, 0, 1, .35);
        color: #8f0001;
        background: #fff5f5;
    }

    .photo-search-btn:disabled[b-dn6q8yjkos],
    .photo-search-clear-btn:disabled[b-dn6q8yjkos] {
        opacity: .55;
        cursor: not-allowed;
    }

.photo-grid-full[b-dn6q8yjkos] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.photo-gallery-card[b-dn6q8yjkos] {
    position: relative;
    display: block;
    overflow: hidden;
    min-height: 260px;
    border-radius: 4px;
    background: #ccc;
    color: #fff;
    text-decoration: none;
    isolation: isolate;
}

.photo-gallery-card img[b-dn6q8yjkos],
.photo-cover-fallback[b-dn6q8yjkos] {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    border-radius: 0;
    background: #ddd;
}

.photo-gallery-card img[b-dn6q8yjkos] {
    object-fit: cover;
    transition: transform .45s ease;
}

.photo-gallery-card:hover img[b-dn6q8yjkos] {
    transform: scale(1.05);
}

.photo-cover-fallback[b-dn6q8yjkos] {
    place-items: center;
    color: rgba(143, 0, 1, .78);
    background:
        radial-gradient(
            circle at 50% 35%,
            #fff 0,
            #f8e8e9 56%,
            #ecd0d2 100%);
    font-size: 3.2rem;
}

.photo-cover-fallback-hidden[b-dn6q8yjkos] {
    display: none;
}

.photo-gallery-title[b-dn6q8yjkos] {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    margin: 0;
    padding: 34px 14px 14px;
    overflow: hidden;
    color: #fff;
    background: linear-gradient(
        to top,
        rgba(0, 0, 0, .92) 0%,
        rgba(0, 0, 0, .55) 45%,
        rgba(0, 0, 0, 0) 100%);
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: .01em;
    text-overflow: ellipsis;
    white-space: nowrap;
    pointer-events: none;
}

.photo-gallery-date[b-dn6q8yjkos] {
    position: absolute;
    top: 10px;
    left: 10px;
    padding: 3px 10px;
    border-radius: 999px;
    color: #fff;
    background: rgba(143, 0, 1, .88);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .02em;
    pointer-events: none;
}

.photo-gallery-hover[b-dn6q8yjkos] {
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 15px;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 999px;
    color: #fff;
    background: rgba(143, 0, 1, .88);
    box-shadow: 0 10px 26px rgba(0, 0, 0, .25);
    font-size: .88rem;
    font-weight: 800;
    opacity: 0;
    transform: translate(-50%, -40%);
    transition: opacity .22s ease, transform .22s ease;
    pointer-events: none;
}

.photo-gallery-card:hover .photo-gallery-hover[b-dn6q8yjkos] {
    opacity: 1;
    transform: translate(-50%, -50%);
}

.photo-pagination[b-dn6q8yjkos] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 56px;
}

.photo-pagination button[b-dn6q8yjkos] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #e0e4ea;
    border-radius: 50%;
    color: #334155;
    background: #fff;
    font-family: inherit;
    font-size: .95rem;
    font-weight: 900;
    transition: .18s ease;
}

.photo-pagination button:not(:disabled):hover:not(.active)[b-dn6q8yjkos] {
    border-color: #8f0001;
    color: #8f0001;
}

.photo-pagination button.active[b-dn6q8yjkos] {
    border-color: #8f0001;
    color: #fff;
    background: #8f0001;
}

.photo-pagination .pg-text[b-dn6q8yjkos] {
    min-width: auto;
    padding: 0 16px;
    border-radius: 20px;
    gap: 6px;
}

.photo-pagination button:disabled[b-dn6q8yjkos] {
    border-color: #edf0f5;
    color: #c0c7d0;
    cursor: not-allowed;
}

.photo-page-summary[b-dn6q8yjkos] {
    margin-top: 12px;
    color: #7b8491;
    text-align: center;
    font-size: .82rem;
    font-weight: 700;
}

.photo-empty-state[b-dn6q8yjkos],
.photo-load-state[b-dn6q8yjkos] {
    min-height: 320px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 8px;
    border: 1px dashed rgba(143, 0, 1, .2);
    border-radius: 22px;
    color: #6b7280;
    background: #fff8f9;
    text-align: center;
}

.photo-empty-state i[b-dn6q8yjkos],
.photo-load-error > i[b-dn6q8yjkos] {
    color: #8f0001;
    font-size: 2.5rem;
}

.photo-empty-state strong[b-dn6q8yjkos],
.photo-load-state strong[b-dn6q8yjkos] {
    color: #172033;
    font-size: 1.1rem;
}

.photo-empty-state span[b-dn6q8yjkos],
.photo-load-state span[b-dn6q8yjkos] {
    font-size: .9rem;
}

.photo-retry-btn[b-dn6q8yjkos] {
    margin-top: 10px;
    padding: .65rem 1rem;
    border: 0;
    border-radius: 999px;
    color: #fff;
    background: #8f0001;
    font-weight: 900;
}

@media (max-width: 991.98px) {
    .photo-title-row[b-dn6q8yjkos] {
        align-items: stretch;
        flex-direction: column;
    }

    .photo-search-panel[b-dn6q8yjkos] {
        width: 100%;
        grid-template-columns: minmax(0, 1fr) 180px auto 42px;
    }

    .photo-grid-full[b-dn6q8yjkos] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .photo-list-section[b-dn6q8yjkos] {
        padding-top: 34px;
    }
}

@media (max-width: 575.98px) {
    .photo-search-panel[b-dn6q8yjkos] {
        grid-template-columns: minmax(0, 1fr) 42px;
    }

    .photo-search-name[b-dn6q8yjkos],
    .photo-search-date[b-dn6q8yjkos] {
        grid-column: 1 / -1;
    }

    .photo-search-btn[b-dn6q8yjkos] {
        width: 100%;
    }

    .photo-search-clear-btn[b-dn6q8yjkos] {
        width: 42px;
    }

    .photo-title-row[b-dn6q8yjkos] {
        margin-bottom: 28px;
    }

    .photo-grid-full[b-dn6q8yjkos] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px;
    }

    .photo-gallery-card[b-dn6q8yjkos] {
        min-height: 0;
    }

    .photo-gallery-title[b-dn6q8yjkos] {
        padding: 28px 9px 9px;
        font-size: .9rem;
    }

    .photo-gallery-date[b-dn6q8yjkos] {
        top: 6px;
        left: 6px;
        padding: 2px 7px;
        font-size: .58rem;
    }

    .photo-gallery-hover[b-dn6q8yjkos] {
        display: none;
    }

    .photo-pagination[b-dn6q8yjkos] {
        flex-wrap: wrap;
        margin-top: 36px;
    }
}
/* /Components/Pages/PhotoDetail.razor.rz.scp.css */
.photo-detail-page[b-v7qs3ny6op] {
    background: #fff;
}

.photo-detail-section[b-v7qs3ny6op] {
    padding: 46px 0 88px;
    background: #fff;
}

.photo-breadcrumb[b-v7qs3ny6op] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
    color: #64748b;
    font-size: .88rem;
    font-weight: 700;
}

.photo-breadcrumb a[b-v7qs3ny6op] {
    color: #8f0001;
    text-decoration: none;
}

.photo-breadcrumb a:hover[b-v7qs3ny6op] {
    text-decoration: underline;
}

.photo-breadcrumb i[b-v7qs3ny6op] {
    color: #b8bec7;
    font-size: .7rem;
}

.photo-detail-head[b-v7qs3ny6op] {
    padding-bottom: 26px;
    margin-bottom: 30px;
    border-bottom: 1px solid #8f0001;
}

.page-title-std[b-v7qs3ny6op] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 0;
    color: #8f0001;
    font-size: clamp(1.5rem, 3vw, 2.1rem);
    font-weight: 900;
    line-height: 1.35;
}

.page-title-std i[b-v7qs3ny6op] {
    flex-shrink: 0;
    margin-top: .28em;
    font-size: .8em;
}

.photo-detail-meta-row[b-v7qs3ny6op] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 20px;
    margin-top: 12px;
}

.photo-detail-date[b-v7qs3ny6op] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #6b7280;
    font-size: .95rem;
    font-weight: 500;
}

.photo-detail-date i[b-v7qs3ny6op] {
    color: #8f0001;
}

.photo-description-card[b-v7qs3ny6op] {
    margin-bottom: 34px;
    padding: 22px 24px;
    border: 1px solid rgba(143, 0, 1, .10);
    border-radius: 18px;
    background: #fff8f9;
}

.photo-description-card h2[b-v7qs3ny6op] {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0 0 12px;
    color: #8f0001;
    font-size: 1.15rem;
    font-weight: 900;
}

.photo-description-text[b-v7qs3ny6op] {
    color: #384152;
    font-size: .98rem;
    line-height: 1.85;
    white-space: pre-line;
}

.photo-activity-heading[b-v7qs3ny6op] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
}

.photo-activity-title[b-v7qs3ny6op] {
    margin: 0;
    color: #8f0001;
    font-size: clamp(1.4rem, 3vw, 2rem);
    font-weight: 900;
}

.photo-activity-heading span[b-v7qs3ny6op] {
    display: block;
    margin-top: 4px;
    color: #6b7280;
    font-size: .9rem;
}

.photo-total[b-v7qs3ny6op] {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    gap: 8px;
    padding: 8px 15px;
    border-radius: 999px;
    color: #8f0001;
    background: #fff2f3;
    font-size: .9rem;
    font-weight: 900;
}

.activity-photo-grid[b-v7qs3ny6op] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.activity-photo-card[b-v7qs3ny6op] {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 4px;
    background: #ccc;
    cursor: pointer;
}

.activity-photo-card img[b-v7qs3ny6op] {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: 0;
    background: #ddd;
    transition: transform .45s ease;
}

.activity-photo-card:hover img[b-v7qs3ny6op] {
    transform: scale(1.05);
}

.activity-photo-card:focus-visible[b-v7qs3ny6op] {
    outline: 3px solid rgba(143, 0, 1, .28);
    outline-offset: 3px;
}

.activity-photo-hover[b-v7qs3ny6op] {
    position: absolute;
    top: 50%;
    left: 50%;
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 50%;
    color: #fff;
    background: rgba(143, 0, 1, .86);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .28);
    font-size: 1.15rem;
    opacity: 0;
    transform: translate(-50%, -40%);
    transition: opacity .22s ease, transform .22s ease;
}

.activity-photo-card:hover .activity-photo-hover[b-v7qs3ny6op] {
    opacity: 1;
    transform: translate(-50%, -50%);
}

.photo-images-empty[b-v7qs3ny6op] {
    min-height: 220px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 8px;
    border: 1px dashed rgba(143, 0, 1, .18);
    border-radius: 18px;
    color: #6b7280;
    background: #fff8f9;
}

.photo-images-empty i[b-v7qs3ny6op] {
    color: #8f0001;
    font-size: 2.4rem;
}

.back-photo-row[b-v7qs3ny6op] {
    display: flex;
    justify-content: center;
    margin-top: 48px;
}

.back-photo-btn[b-v7qs3ny6op] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 20px;
    border: 1.5px solid #8f0001;
    border-radius: 999px;
    color: #8f0001;
    background: #fff;
    font-family: inherit;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
    transition: .2s ease;
}

.back-photo-btn:hover[b-v7qs3ny6op] {
    border-color: #8f0001;
    color: #fff;
    background: #8f0001;
    transform: translateY(-1px);
}

/* Lightbox */
.lightbox-overlay[b-v7qs3ny6op] {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px;
    color: #fff;
    background: rgba(0, 0, 0, .9);
    backdrop-filter: blur(5px);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
    outline: none;
}

.lightbox-overlay.active[b-v7qs3ny6op] {
    opacity: 1;
    visibility: visible;
}

.lightbox-inner[b-v7qs3ny6op] {
    position: relative;
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) 52px;
    align-items: center;
    gap: 16px;
    max-width: 96vw;
    max-height: 94vh;
}

.lightbox-image-wrap[b-v7qs3ny6op] {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.lightbox-img[b-v7qs3ny6op] {
    display: block;
    max-width: min(82vw, 1400px);
    max-height: 82vh;
    border-radius: 10px;
    object-fit: contain;
    box-shadow: 0 24px 80px rgba(0, 0, 0, .5);
}

.lb-btn[b-v7qs3ny6op] {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50%;
    color: #fff;
    background: rgba(255, 255, 255, .15);
    font-size: 1.4rem;
    cursor: pointer;
    transition: .18s ease;
}

.lb-btn:hover[b-v7qs3ny6op] {
    background: rgba(255, 255, 255, .3);
}

.lb-close[b-v7qs3ny6op] {
    position: absolute;
    top: -18px;
    right: -18px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 50%;
    color: #fff;
    background: rgba(0, 0, 0, .55);
    font-size: 1.15rem;
    cursor: pointer;
    transition: .18s ease;
}

.lb-close:hover[b-v7qs3ny6op] {
    border-color: #8f0001;
    background: #8f0001;
}

.lb-caption[b-v7qs3ny6op] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding-top: 12px;
    color: rgba(255, 255, 255, .8);
    font-size: .9rem;
}

.lb-caption span[b-v7qs3ny6op] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lb-caption strong[b-v7qs3ny6op] {
    flex: 0 0 auto;
    color: #fff;
}

.photo-not-found[b-v7qs3ny6op] {
    min-height: 450px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 12px;
    padding: 30px;
    text-align: center;
}

.photo-not-found > i[b-v7qs3ny6op] {
    color: #8f0001;
    font-size: 4rem;
}

.photo-not-found h1[b-v7qs3ny6op] {
    margin: 0;
    color: #172033;
    font-size: 2rem;
    font-weight: 900;
}

.photo-not-found p[b-v7qs3ny6op] {
    max-width: 520px;
    color: #6b7280;
    line-height: 1.7;
}

.photo-detail-loading .spinner-border[b-v7qs3ny6op] {
    color: #8f0001;
}

@media (max-width: 991.98px) {
    .activity-photo-grid[b-v7qs3ny6op] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lightbox-inner[b-v7qs3ny6op] {
        grid-template-columns: 44px minmax(0, 1fr) 44px;
        gap: 8px;
    }

    .lb-btn[b-v7qs3ny6op] {
        width: 42px;
        height: 42px;
    }
}

@media (max-width: 575.98px) {
    .photo-detail-section[b-v7qs3ny6op] {
        padding-top: 32px;
    }

    .photo-detail-meta-row[b-v7qs3ny6op] {
        align-items: flex-start;
        flex-direction: column;
    }

    .photo-activity-heading[b-v7qs3ny6op] {
        align-items: flex-start;
        flex-direction: column;
    }

    .activity-photo-grid[b-v7qs3ny6op] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px;
    }

    .activity-photo-hover[b-v7qs3ny6op] {
        display: none;
    }

    .lightbox-overlay[b-v7qs3ny6op] {
        padding: 12px;
    }

    .lightbox-inner[b-v7qs3ny6op] {
        display: flex;
        width: 100%;
        justify-content: center;
    }

    .lightbox-img[b-v7qs3ny6op] {
        max-width: calc(100vw - 24px);
        max-height: 76vh;
    }

    .lb-prev[b-v7qs3ny6op],
    .lb-next[b-v7qs3ny6op] {
        position: absolute;
        top: 50%;
        z-index: 3;
        background: rgba(0, 0, 0, .55);
        transform: translateY(-50%);
    }

    .lb-prev[b-v7qs3ny6op] {
        left: 8px;
    }

    .lb-next[b-v7qs3ny6op] {
        right: 8px;
    }

    .lb-close[b-v7qs3ny6op] {
        top: 8px;
        right: 8px;
    }

    .lb-caption[b-v7qs3ny6op] {
        padding: 10px 6px 0;
    }
}

.photo-load-more[b-v7qs3ny6op] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 12px;
    margin-top: 30px;
}

.photo-load-progress[b-v7qs3ny6op] {
    color: #6b7280;
    font-size: .9rem;
}

    .photo-load-progress strong[b-v7qs3ny6op] {
        color: #8f0001;
        font-weight: 900;
    }

.photo-load-more-btn[b-v7qs3ny6op] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 210px;
    padding: 10px 20px;
    border: 0;
    border-radius: 999px;
    color: #fff;
    background: #8f0001;
    font-family: inherit;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 10px 24px rgba(143, 0, 1, .18);
    transition: transform .18s ease, background .18s ease;
}

    .photo-load-more-btn:hover[b-v7qs3ny6op] {
        background: #650001;
        transform: translateY(-1px);
    }

    .photo-load-more-btn span[b-v7qs3ny6op] {
        color: rgba(255, 255, 255, .75);
        font-size: .82rem;
    }

.lb-image-loading[b-v7qs3ny6op] {
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 10001;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 12px;
    min-width: 170px;
    padding: 20px 24px;
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 16px;
    color: #fff;
    background: rgba(0, 0, 0, .72);
    box-shadow: 0 18px 50px rgba(0, 0, 0, .35);
    font-size: .9rem;
    font-weight: 700;
    pointer-events: none;
    transform: translate(-50%, -50%);
}

    .lb-image-loading .spinner-border[b-v7qs3ny6op] {
        width: 2rem;
        height: 2rem;
        border-width: .22em;
    }

.lb-image-error[b-v7qs3ny6op] {
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 10001;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 20px;
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 14px;
    color: #fff;
    background: rgba(143, 0, 1, .92);
    box-shadow: 0 18px 50px rgba(0, 0, 0, .35);
    font-weight: 800;
    pointer-events: none;
    transform: translate(-50%, -50%);
}

    .lb-image-error i[b-v7qs3ny6op] {
        font-size: 1.2rem;
    }

.lb-preload-images[b-v7qs3ny6op] {
    position: fixed;
    left: -10000px;
    top: -10000px;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

    .lb-preload-images img[b-v7qs3ny6op] {
        width: 1px;
        height: 1px;
    }
/* /Components/Pages/Profile.razor.rz.scp.css */
.profile-page[b-ibm8tlhep0] {
    min-height: calc(100vh - 74px);
    padding: 44px 0 76px;
    background: #f4f6f8;
    color: #172033;
}

.profile-shell[b-ibm8tlhep0] {
    display: grid;
    grid-template-columns: 310px minmax(0, 1fr);
    gap: 26px;
    align-items: start;
}

/* =========================================================
   Sidebar
   ========================================================= */

.profile-sidebar[b-ibm8tlhep0] {
    position: sticky;
    top: 92px;
    overflow: hidden;
    border-radius: 28px;
    background: linear-gradient(180deg, #8f0001 0%, #b40008 100%);
    box-shadow: 0 18px 50px rgba(143, 0, 1, .18);
}

.profile-cover[b-ibm8tlhep0] {
    height: 112px;
    background: linear-gradient(135deg, #6f0000, #d90012);
}

.profile-avatar-wrap[b-ibm8tlhep0] {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
    margin-top: -68px;
}

.profile-avatar[b-ibm8tlhep0] {
    width: 136px;
    height: 136px;
    overflow: hidden;
    border: 6px solid rgba(255, 255, 255, .96);
    border-radius: 32px;
    background: #fff;
    box-shadow: 0 14px 32px rgba(0, 0, 0, .22);
}

.profile-avatar img[b-ibm8tlhep0] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 18%;
}

.profile-sidebar-body[b-ibm8tlhep0] {
    padding: 22px 24px 26px;
    color: #fff;
    text-align: center;
}

.profile-sidebar-body h1[b-ibm8tlhep0] {
    margin: 8px 0 4px;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 900;
    line-height: 1.45;
}

.profile-code[b-ibm8tlhep0] {
    color: rgba(255, 255, 255, .78);
    font-size: .92rem;
    font-weight: 700;
    line-height: 1.55;
}

.profile-badges[b-ibm8tlhep0] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin: 16px 0 20px;
}

.profile-badges span[b-ibm8tlhep0] {
    padding: 7px 11px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    background: rgba(255, 255, 255, .13);
    color: #fff;
    font-size: .82rem;
    font-weight: 800;
}

.profile-contact-mini[b-ibm8tlhep0] {
    display: grid;
    gap: 10px;
    margin-top: 18px;
    text-align: left;
}

.profile-contact-mini div[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 11px 12px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .10);
    color: #fff;
    font-size: .9rem;
}

.profile-contact-mini i[b-ibm8tlhep0] {
    flex: 0 0 22px;
    width: 22px;
    color: #fff;
    text-align: center;
}

.profile-contact-mini span[b-ibm8tlhep0] {
    min-width: 0;
    overflow-wrap: anywhere;
}

.ebiz-btn[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 18px;
    padding: 10px 16px;
    border: 0;
    border-radius: 999px;
    background: #fff;
    color: #8f0001;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease;
}

.ebiz-btn:hover[b-ibm8tlhep0] {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(0, 0, 0, .16);
}

/* =========================================================
   Main content
   ========================================================= */

.profile-main[b-ibm8tlhep0] {
    min-width: 0;
}

.profile-topbar[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
    padding: 16px 18px;
    border: 1px solid #e8ebf0;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 14px 38px rgba(23, 32, 51, .06);
}

.profile-tabs[b-ibm8tlhep0] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.profile-tab[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border: 0;
    border-radius: 14px;
    background: transparent;
    color: #475569;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
}

.profile-tab:hover[b-ibm8tlhep0] {
    background: #f8fafc;
    color: #8f0001;
}

.profile-tab.active[b-ibm8tlhep0] {
    background: #fff0f1;
    color: #9b0000;
}

.edit-profile-btn[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 11px 18px;
    border: 0;
    border-radius: 999px;
    /* ปรับจากแดงสด ให้เป็นโทนเลือดหมูเหมือนหน้า Register */
    background: linear-gradient( 135deg, #8f0001 0%, #bb0009 100% );
    color: #fff;
    font-family: inherit;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 12px 26px rgba(143, 0, 1, .20);
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

    .edit-profile-btn:hover[b-ibm8tlhep0] {
        background: linear-gradient( 135deg, #760001 0%, #a30007 100% );
        color: #fff;
        text-decoration: none;
        transform: translateY(-1px);
        box-shadow: 0 15px 30px rgba(143, 0, 1, .27);
    }

    .edit-profile-btn:active[b-ibm8tlhep0] {
        transform: translateY(0);
        box-shadow: 0 8px 18px rgba(143, 0, 1, .20);
    }

    .edit-profile-btn:focus-visible[b-ibm8tlhep0] {
        outline: 3px solid rgba(143, 0, 1, .18);
        outline-offset: 3px;
    }

.profile-card[b-ibm8tlhep0] {
    padding: 26px;
    border: 1px solid #e8ebf0;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 16px 44px rgba(23, 32, 51, .06);
}

.profile-card + .profile-card[b-ibm8tlhep0] {
    margin-top: 20px;
}

.profile-card-title[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 20px;
    color: #172033;
    font-size: 1.3rem;
    font-weight: 900;
}

.profile-card-title i[b-ibm8tlhep0] {
    display: grid;
    place-items: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #fff0f1;
    color: #a90008;
}

.profile-info-grid[b-ibm8tlhep0] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 22px;
}

.info-item[b-ibm8tlhep0] {
    min-width: 0;
    padding: 14px 16px;
    border-radius: 16px;
    background: #f8fafc;
}

.info-item small[b-ibm8tlhep0] {
    display: block;
    margin-bottom: 5px;
    color: #94a3b8;
    font-weight: 800;
}

.info-item strong[b-ibm8tlhep0],
.info-item span[b-ibm8tlhep0] {
    display: block;
    color: #334155;
    font-weight: 800;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

.profile-section[b-ibm8tlhep0] {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid #eef1f5;
}

.profile-section h3[b-ibm8tlhep0] {
    display: inline-block;
    margin: 0 0 12px;
    padding-bottom: 5px;
    border-bottom: 3px solid #8f0001;
    color: #8f0001;
    font-size: 1rem;
    font-weight: 900;
}

.skill-list[b-ibm8tlhep0] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.skill-list span[b-ibm8tlhep0] {
    padding: 9px 13px;
    border-radius: 999px;
    background: #fff0f1;
    color: #8f0001;
    font-weight: 900;
}

.timeline[b-ibm8tlhep0] {
    display: grid;
    gap: 14px;
}

.timeline-item[b-ibm8tlhep0] {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
}

.timeline-icon[b-ibm8tlhep0] {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: #f1f5f9;
    color: #8f0001;
}

.timeline-content[b-ibm8tlhep0] {
    min-width: 0;
    padding: 14px 16px;
    border-radius: 16px;
    background: #f8fafc;
}

.timeline-content strong[b-ibm8tlhep0] {
    display: block;
    color: #172033;
    font-weight: 900;
}

.timeline-content span[b-ibm8tlhep0] {
    display: block;
    margin-top: 3px;
    color: #64748b;
    line-height: 1.6;
}

.empty-note[b-ibm8tlhep0] {
    padding: 14px 0;
    color: #94a3b8;
    font-weight: 700;
}

/* =========================================================
   Not authorized
   ========================================================= */

.profile-page-unauthorized[b-ibm8tlhep0] {
    display: flex;
    align-items: flex-start;
}

.profile-auth-card[b-ibm8tlhep0] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
    padding: 26px;
    border: 1px solid #e8ebf0;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 16px 44px rgba(23, 32, 51, .08);
}

.profile-auth-icon[b-ibm8tlhep0] {
    display: grid;
    place-items: center;
    width: 56px;
    height: 56px;
    border-radius: 18px;
    background: #fff0f1;
    color: #8f0001;
    font-size: 1.5rem;
}

.profile-auth-card h1[b-ibm8tlhep0] {
    margin: 0 0 4px;
    color: #172033;
    font-size: 1.35rem;
    font-weight: 900;
}

.profile-auth-card p[b-ibm8tlhep0] {
    margin: 0;
    color: #64748b;
    line-height: 1.65;
}

.profile-login-link[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 18px;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-weight: 900;
    white-space: nowrap;
}

.profile-login-link:hover[b-ibm8tlhep0] {
    background: #6d0001;
    color: #fff;
}

.profile-tab[b-ibm8tlhep0] {
    text-decoration: none;
}

    .profile-tab:hover[b-ibm8tlhep0] {
        text-decoration: none;
    }

.blogger-profile-card[b-ibm8tlhep0] {
    overflow: hidden;
}

.blogger-profile-header[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
}

.blogger-profile-title[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    gap: 13px;
}

.blogger-title-icon[b-ibm8tlhep0] {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: #fff0f1;
    color: #9b0000;
    font-size: 1.08rem;
}

.blogger-profile-title h2[b-ibm8tlhep0] {
    margin: 0;
    color: #172033;
    font-size: 1.28rem;
    font-weight: 900;
}

.blogger-profile-title p[b-ibm8tlhep0] {
    margin: 3px 0 0;
    color: #778190;
    font-size: .88rem;
}

.blogger-create-button[b-ibm8tlhep0] {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 17px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, #8f0001, #b40008);
    color: #fff;
    font-family: inherit;
    font-weight: 900;
    white-space: nowrap;
    box-shadow: 0 10px 22px rgba(143, 0, 1, .18);
    transition: transform .16s ease, box-shadow .16s ease;
}

    .blogger-create-button:hover[b-ibm8tlhep0] {
        transform: translateY(-1px);
        box-shadow: 0 14px 28px rgba(143, 0, 1, .25);
    }

.blogger-table-wrapper[b-ibm8tlhep0] {
    overflow-x: auto;
    border: 1px solid #e8ebf0;
    border-radius: 18px;
}

.blogger-table[b-ibm8tlhep0] {
    width: 100%;
    min-width: 720px;
    border-collapse: collapse;
    background: #fff;
}

    .blogger-table th[b-ibm8tlhep0] {
        padding: 14px 16px;
        background: #8f0001;
        color: #fff;
        font-size: .86rem;
        font-weight: 900;
        text-align: left;
    }

    .blogger-table td[b-ibm8tlhep0] {
        padding: 15px 16px;
        border-top: 1px solid #edf0f4;
        color: #536071;
        font-size: .88rem;
        vertical-align: middle;
    }

.blogger-sequence-column[b-ibm8tlhep0] {
    width: 90px;
}

.blogger-post-title[b-ibm8tlhep0] {
    color: #263142;
    font-weight: 900;
}

.blogger-status[b-ibm8tlhep0] {
    display: inline-flex;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 900;
}

.blogger-status-draft[b-ibm8tlhep0] {
    background: #f1f5f9;
    color: #64748b;
}

.blogger-status-published[b-ibm8tlhep0] {
    background: #e9f8ef;
    color: #168447;
}

.blogger-empty-state[b-ibm8tlhep0] {
    min-height: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 30px;
    color: #89929f;
    text-align: center;
}

.blogger-empty-icon[b-ibm8tlhep0] {
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 3px;
    border-radius: 17px;
    background: #fff0f1;
    color: #8f0001;
    font-size: 1.35rem;
}

.blogger-empty-state strong[b-ibm8tlhep0] {
    color: #334155;
    font-size: 1rem;
    font-weight: 900;
}

.blogger-empty-state > span:last-child[b-ibm8tlhep0] {
    font-size: .84rem;
}

.profile-cv-placeholder[b-ibm8tlhep0] {
    min-height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    text-align: left;
}

.profile-placeholder-icon[b-ibm8tlhep0] {
    width: 64px;
    height: 64px;
    flex: 0 0 64px;
    display: grid;
    place-items: center;
    border-radius: 20px;
    background: #fff0f1;
    color: #8f0001;
    font-size: 1.6rem;
}

.profile-cv-placeholder h2[b-ibm8tlhep0] {
    margin: 0 0 5px;
    color: #172033;
    font-size: 1.35rem;
    font-weight: 900;
}

.profile-cv-placeholder p[b-ibm8tlhep0] {
    max-width: 520px;
    margin: 0;
    color: #64748b;
    line-height: 1.7;
}

.blogger-create-button[b-ibm8tlhep0] {
    text-decoration: none;
}

    .blogger-create-button:hover[b-ibm8tlhep0] {
        color: #fff;
        text-decoration: none;
    }

@media (max-width: 575.98px) {
    .blogger-profile-header[b-ibm8tlhep0] {
        align-items: stretch;
        flex-direction: column;
    }

    .blogger-create-button[b-ibm8tlhep0] {
        width: 100%;
    }

    .profile-cv-placeholder[b-ibm8tlhep0] {
        flex-direction: column;
        text-align: center;
    }
}

/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 1199.98px) {
    .profile-shell[b-ibm8tlhep0] {
        grid-template-columns: 280px minmax(0, 1fr);
        gap: 22px;
    }

    .profile-sidebar-body[b-ibm8tlhep0] {
        padding-right: 20px;
        padding-left: 20px;
    }
}

@media (max-width: 991.98px) {
    .profile-page[b-ibm8tlhep0] {
        padding-top: 32px;
    }

    .profile-shell[b-ibm8tlhep0] {
        grid-template-columns: 1fr;
    }

    .profile-sidebar[b-ibm8tlhep0] {
        position: relative;
        top: auto;
    }

    .profile-info-grid[b-ibm8tlhep0] {
        grid-template-columns: 1fr;
    }

    .profile-auth-card[b-ibm8tlhep0] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .profile-login-link[b-ibm8tlhep0] {
        grid-column: 1 / -1;
        justify-content: center;
    }
}

@media (max-width: 575.98px) {
    .profile-page[b-ibm8tlhep0] {
        padding: 24px 0 52px;
    }

    .profile-sidebar[b-ibm8tlhep0],
    .profile-topbar[b-ibm8tlhep0],
    .profile-card[b-ibm8tlhep0],
    .profile-auth-card[b-ibm8tlhep0] {
        border-radius: 22px;
    }

    .profile-topbar[b-ibm8tlhep0] {
        align-items: stretch;
        flex-direction: column;
    }

    .profile-tabs[b-ibm8tlhep0] {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .profile-tab[b-ibm8tlhep0] {
        justify-content: center;
        padding: 10px 8px;
        font-size: .88rem;
    }

    .profile-tab i[b-ibm8tlhep0] {
        display: none;
    }

    .edit-profile-btn[b-ibm8tlhep0] {
        justify-content: center;
    }

    .profile-card[b-ibm8tlhep0] {
        padding: 20px;
    }

    .profile-card-title[b-ibm8tlhep0] {
        align-items: flex-start;
        font-size: 1.16rem;
    }

    .timeline-item[b-ibm8tlhep0] {
        grid-template-columns: 38px minmax(0, 1fr);
    }

    .timeline-icon[b-ibm8tlhep0] {
        width: 38px;
        height: 38px;
        border-radius: 12px;
    }

    .profile-auth-card[b-ibm8tlhep0] {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .profile-auth-icon[b-ibm8tlhep0] {
        margin: 0 auto;
    }
}

/* =========================================================
   Profile - CV tab
   ========================================================= */

.profile-cv-card[b-ibm8tlhep0] {
    overflow: hidden;
}

.profile-cv-header[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
}

.profile-cv-heading[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    gap: 13px;
}

.profile-cv-heading-icon[b-ibm8tlhep0] {
    display: grid;
    place-items: center;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    border-radius: 16px;
    background: #fff0f1;
    color: #9b0000;
    font-size: 1.2rem;
}

.profile-cv-heading h2[b-ibm8tlhep0] {
    margin: 0;
    color: #172033;
    font-size: 1.3rem;
    font-weight: 900;
}

.profile-cv-heading p[b-ibm8tlhep0] {
    margin: 4px 0 0;
    color: #778190;
    font-size: .9rem;
}

.profile-cv-edit-link[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 10px 17px;
    border-radius: 999px;
    background: linear-gradient(135deg, #8f0001, #b40008);
    color: #fff;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 10px 22px rgba(143, 0, 1, .18);
}

    .profile-cv-edit-link:hover[b-ibm8tlhep0] {
        color: #fff;
        transform: translateY(-1px);
    }

.profile-cv-state[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 18px;
    border: 1px solid #e8ebf0;
    border-radius: 18px;
    background: #f8fafc;
    color: #64748b;
    font-weight: 800;
}

.profile-cv-state-error[b-ibm8tlhep0] {
    border-color: #efc9cc;
    background: #fff0f1;
    color: #8f0001;
}

.profile-cv-empty[b-ibm8tlhep0] {
    min-height: 260px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 32px;
    border: 1px dashed #d8dee6;
    border-radius: 20px;
    background: #fafbfc;
    color: #7b8796;
    text-align: center;
}

.profile-cv-empty-icon[b-ibm8tlhep0] {
    display: grid;
    place-items: center;
    width: 60px;
    height: 60px;
    margin-bottom: 4px;
    border-radius: 19px;
    background: #fff0f1;
    color: #8f0001;
    font-size: 1.45rem;
}

.profile-cv-empty strong[b-ibm8tlhep0] {
    color: #334155;
    font-size: 1.08rem;
    font-weight: 900;
}

.profile-cv-empty a[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 8px;
    padding: 9px 15px;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-weight: 900;
    text-decoration: none;
}

.profile-cv-section + .profile-cv-section[b-ibm8tlhep0] {
    margin-top: 22px;
    padding-top: 22px;
    border-top: 1px solid #eef1f5;
}

.profile-cv-section-head[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 13px;
}

    .profile-cv-section-head > div[b-ibm8tlhep0] {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .profile-cv-section-head i[b-ibm8tlhep0] {
        display: grid;
        place-items: center;
        width: 36px;
        height: 36px;
        border-radius: 12px;
        background: #fff0f1;
        color: #8f0001;
    }

    .profile-cv-section-head h3[b-ibm8tlhep0] {
        margin: 0;
        color: #172033;
        font-size: 1.06rem;
        font-weight: 900;
    }

    .profile-cv-section-head > span[b-ibm8tlhep0] {
        padding: 6px 10px;
        border-radius: 999px;
        background: #f1f5f9;
        color: #64748b;
        font-size: .78rem;
        font-weight: 900;
    }

.profile-cv-list[b-ibm8tlhep0] {
    display: grid;
    gap: 11px;
}

.profile-cv-item[b-ibm8tlhep0] {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 14px;
    align-items: stretch;
    padding: 14px;
    border: 1px solid #edf0f4;
    border-radius: 17px;
    background: #f8fafc;
}

.profile-cv-year[b-ibm8tlhep0] {
    display: grid;
    place-items: center;
    min-height: 64px;
    border-radius: 14px;
    background: linear-gradient(135deg, #8f0001, #b40008);
    color: #fff;
    font-size: 1rem;
    font-weight: 900;
}

.profile-cv-item-body[b-ibm8tlhep0] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

    .profile-cv-item-body strong[b-ibm8tlhep0] {
        color: #263142;
        font-weight: 900;
        line-height: 1.55;
        overflow-wrap: anywhere;
    }

    .profile-cv-item-body span[b-ibm8tlhep0],
    .profile-cv-item-body small[b-ibm8tlhep0] {
        margin-top: 3px;
        color: #64748b;
        line-height: 1.55;
    }

    .profile-cv-item-body small[b-ibm8tlhep0] {
        font-weight: 800;
    }

.profile-cv-section-empty[b-ibm8tlhep0] {
    padding: 17px;
    border: 1px dashed #d9dfe6;
    border-radius: 16px;
    background: #fafbfc;
    color: #94a3b8;
    text-align: center;
    font-weight: 700;
}

@media (max-width: 575.98px) {
    .profile-cv-header[b-ibm8tlhep0] {
        align-items: stretch;
        flex-direction: column;
    }

    .profile-cv-edit-link[b-ibm8tlhep0] {
        width: 100%;
    }

    .profile-cv-item[b-ibm8tlhep0] {
        grid-template-columns: 72px minmax(0, 1fr);
    }

    .profile-cv-section-head[b-ibm8tlhep0] {
        align-items: flex-start;
    }
}


/* =========================================================
   Profile - Blogger actions and delete confirmation
   ========================================================= */

.blogger-actions-column[b-ibm8tlhep0] {
    width: 116px;
    text-align: center !important;
}

.blogger-actions-cell[b-ibm8tlhep0] {
    text-align: center;
}

.blogger-row-actions[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.blogger-action-button[b-ibm8tlhep0] {
    display: inline-grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid transparent;
    border-radius: 12px;
    font-family: inherit;
    text-decoration: none;
    cursor: pointer;
    transition:
        transform .16s ease,
        border-color .16s ease,
        background-color .16s ease,
        color .16s ease;
}

.blogger-action-button:hover:not(:disabled)[b-ibm8tlhep0] {
    transform: translateY(-1px);
    text-decoration: none;
}

.blogger-action-edit[b-ibm8tlhep0] {
    border-color: #d8e3f0;
    background: #f2f7fc;
    color: #245a91;
}

.blogger-action-edit:hover[b-ibm8tlhep0] {
    border-color: #245a91;
    background: #245a91;
    color: #fff;
}

.blogger-action-delete[b-ibm8tlhep0] {
    border-color: #efd5d7;
    background: #fff3f4;
    color: #a90008;
}

.blogger-action-delete:hover:not(:disabled)[b-ibm8tlhep0] {
    border-color: #a90008;
    background: #a90008;
    color: #fff;
}

.blogger-action-button:disabled[b-ibm8tlhep0] {
    opacity: .55;
    cursor: not-allowed;
}

.blog-delete-modal-backdrop[b-ibm8tlhep0] {
    position: fixed;
    z-index: 3200;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(15, 23, 42, .64);
}

.blog-delete-modal[b-ibm8tlhep0] {
    width: min(480px, 100%);
    padding: 28px;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 30px 90px rgba(15, 23, 42, .32);
    text-align: center;
}

.blog-delete-modal-icon[b-ibm8tlhep0] {
    display: grid;
    width: 64px;
    height: 64px;
    margin: 0 auto 16px;
    place-items: center;
    border-radius: 20px;
    background: #fff0f1;
    color: #a90008;
    font-size: 1.55rem;
}

.blog-delete-modal-content h2[b-ibm8tlhep0] {
    margin: 0;
    color: #172033;
    font-size: 1.35rem;
    font-weight: 900;
}

.blog-delete-modal-content p[b-ibm8tlhep0] {
    margin: 12px 0 0;
    color: #526071;
    line-height: 1.7;
}

.blog-delete-modal-content p strong[b-ibm8tlhep0] {
    color: #8f0001;
    overflow-wrap: anywhere;
}

.blog-delete-modal-content small[b-ibm8tlhep0] {
    display: block;
    margin-top: 7px;
    color: #8b95a3;
    line-height: 1.55;
}

.blog-delete-modal-actions[b-ibm8tlhep0] {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 24px;
}

.blog-delete-cancel-button[b-ibm8tlhep0],
.blog-delete-confirm-button[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 10px 18px;
    border-radius: 999px;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
}

.blog-delete-cancel-button[b-ibm8tlhep0] {
    border: 1px solid #d9dfe6;
    background: #fff;
    color: #526071;
}

.blog-delete-confirm-button[b-ibm8tlhep0] {
    border: 0;
    background: linear-gradient(135deg, #8f0001, #b40008);
    color: #fff;
    box-shadow: 0 10px 22px rgba(143, 0, 1, .18);
}

.blog-delete-cancel-button:disabled[b-ibm8tlhep0],
.blog-delete-confirm-button:disabled[b-ibm8tlhep0] {
    opacity: .6;
    cursor: not-allowed;
}

@media (max-width: 575.98px) {
    .blog-delete-modal[b-ibm8tlhep0] {
        padding: 22px;
        border-radius: 22px;
    }

    .blog-delete-modal-actions[b-ibm8tlhep0] {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .blog-delete-cancel-button[b-ibm8tlhep0],
    .blog-delete-confirm-button[b-ibm8tlhep0] {
        width: 100%;
    }
}

/* =========================================================
   Profile - External accounts / LINE
   ========================================================= */

.profile-external-account-card[b-ibm8tlhep0] {
    overflow: hidden;
}

.profile-external-account-header[b-ibm8tlhep0] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.profile-external-account-title[b-ibm8tlhep0] {
    margin-bottom: 4px;
}

.profile-external-account-header p[b-ibm8tlhep0] {
    margin: 0;
    color: #7b8796;
    font-size: .88rem;
    font-weight: 650;
    line-height: 1.55;
}

.profile-line-result-message[b-ibm8tlhep0] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-bottom: 14px;
    padding: 11px 13px;
    border-radius: 13px;
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.55;
}

.profile-line-result-success[b-ibm8tlhep0] {
    border: 1px solid #b8e3c9;
    background: #f1fbf5;
    color: #187744;
}

.profile-line-result-error[b-ibm8tlhep0] {
    border: 1px solid #efc9cc;
    background: #fff3f4;
    color: #9f0712;
}

.profile-line-account-state[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 84px;
    padding: 16px;
    border: 1px solid #e5e9ee;
    border-radius: 18px;
    background: #f8fafc;
    color: #64748b;
    font-weight: 800;
}

.profile-line-account-state-error[b-ibm8tlhep0] {
    border-color: #efc9cc;
    background: #fff3f4;
    color: #9f0712;
}

.profile-line-account-row[b-ibm8tlhep0] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 15px;
    align-items: center;
    padding: 17px;
    border: 1px solid #dfe6e2;
    border-radius: 19px;
    background: #fbfdfb;
}

.profile-line-account-row.is-connected[b-ibm8tlhep0] {
    border-color: #b9dfc8;
    background: linear-gradient(135deg, #f5fcf7 0%, #fbfefc 100%);
}

.profile-line-account-row.is-disabled[b-ibm8tlhep0] {
    border-color: #e1e5ea;
    background: #f8fafc;
}

.profile-line-account-row.not-connected[b-ibm8tlhep0] {
    border-color: #e2e7eb;
    background: #fafbfc;
}

.profile-line-account-avatar[b-ibm8tlhep0] {
    display: grid;
    place-items: center;
    width: 56px;
    height: 56px;
    overflow: hidden;
    border-radius: 16px;
    background: #06c755;
    color: #fff;
    font-size: .74rem;
    font-weight: 950;
}

.profile-line-account-avatar img[b-ibm8tlhep0] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-line-account-avatar.line-brand[b-ibm8tlhep0] {
    box-shadow: 0 8px 18px rgba(6, 199, 85, .14);
}

.profile-line-account-content[b-ibm8tlhep0] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

.profile-line-account-brand-row[b-ibm8tlhep0] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
}

.profile-line-account-brand-row > strong[b-ibm8tlhep0] {
    color: #172033;
    font-size: 1rem;
    font-weight: 900;
}

.profile-line-account-badge[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 900;
}

.profile-line-account-badge.connected[b-ibm8tlhep0] {
    background: #e9f8ef;
    color: #168447;
}

.profile-line-account-badge.not-connected[b-ibm8tlhep0] {
    background: #eef2f6;
    color: #64748b;
}

.profile-line-account-badge.disabled[b-ibm8tlhep0] {
    background: #fff1f2;
    color: #a31420;
}

.profile-line-account-display-name[b-ibm8tlhep0] {
    color: #405063;
    font-size: .9rem;
    font-weight: 850;
}

.profile-line-account-content small[b-ibm8tlhep0] {
    max-width: 100%;
    overflow: hidden;
    color: #758091;
    font-size: .78rem;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-line-account-linked-date[b-ibm8tlhep0] {
    color: #8b95a3 !important;
}

.profile-line-account-description[b-ibm8tlhep0] {
    max-width: 620px;
    color: #687587;
    font-size: .84rem;
    font-weight: 650;
    line-height: 1.55;
}

.profile-line-account-confirmed[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 9px 12px;
    border-radius: 12px;
    background: #eaf8ef;
    color: #187744;
    font-size: .78rem;
    font-weight: 900;
    white-space: nowrap;
}

.profile-line-account-disabled-note[b-ibm8tlhep0] {
    max-width: 240px;
    color: #8b6670;
    font-size: .78rem;
    font-weight: 750;
    line-height: 1.45;
    text-align: right;
}

.profile-line-connect-button[b-ibm8tlhep0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 42px;
    padding: 10px 16px;
    border: 0;
    border-radius: 12px;
    background: #06c755;
    color: #fff;
    font-family: inherit;
    font-size: .84rem;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(6, 199, 85, .18);
    transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}

.profile-line-connect-button:hover[b-ibm8tlhep0] {
    transform: translateY(-1px);
    background: #05b84d;
    box-shadow: 0 11px 24px rgba(6, 199, 85, .23);
}

/* LINE link consent modal */
.profile-line-consent-backdrop[b-ibm8tlhep0] {
    position: fixed;
    z-index: 3250;
    inset: 0;
    display: grid;
    place-items: center;
    overflow-y: auto;
    padding: 24px;
    background: rgba(10, 12, 18, .68);
    backdrop-filter: blur(3px);
}

.profile-line-consent-dialog[b-ibm8tlhep0] {
    position: relative;
    width: min(100%, 560px);
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    padding: 28px;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
}

.profile-line-consent-close[b-ibm8tlhep0] {
    position: absolute;
    z-index: 2;
    top: 14px;
    right: 14px;
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #f5f6f8;
    color: #4a5565;
    cursor: pointer;
}

.profile-line-consent-close:hover[b-ibm8tlhep0] {
    background: #eceff3;
    color: #8f0001;
}

.profile-line-consent-header[b-ibm8tlhep0] {
    padding: 4px 30px 20px;
    text-align: center;
}

.profile-line-consent-brand-row[b-ibm8tlhep0] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 15px;
}

.profile-line-consent-line-logo[b-ibm8tlhep0],
.profile-line-consent-cmueaa-logo[b-ibm8tlhep0] {
    display: grid;
    place-items: center;
    width: 56px;
    height: 56px;
    border-radius: 15px;
}

.profile-line-consent-line-logo[b-ibm8tlhep0] {
    background: #06c755;
    color: #fff;
    font-size: .78rem;
    font-weight: 950;
}

.profile-line-consent-cmueaa-logo[b-ibm8tlhep0] {
    border: 1px solid #eedfe1;
    background: #fff;
}

.profile-line-consent-cmueaa-logo img[b-ibm8tlhep0] {
    width: 44px;
    height: 44px;
    object-fit: contain;
}

.profile-line-consent-brand-row > i[b-ibm8tlhep0] {
    color: #9aa3b0;
    font-size: 1.05rem;
}

.profile-line-consent-header h2[b-ibm8tlhep0] {
    margin: 0 0 6px;
    color: #172033;
    font-size: 1.35rem;
    font-weight: 900;
}

.profile-line-consent-header p[b-ibm8tlhep0] {
    margin: 0;
    color: #667386;
    font-size: .84rem;
    font-weight: 600;
    line-height: 1.6;
}

.profile-line-consent-data-list[b-ibm8tlhep0] {
    display: grid;
    gap: 9px;
}

.profile-line-consent-data-list > div[b-ibm8tlhep0] {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 13px 14px;
    border-radius: 13px;
    background: #f5fbf7;
}

.profile-line-consent-data-list i[b-ibm8tlhep0] {
    display: grid;
    place-items: center;
    flex: 0 0 31px;
    width: 31px;
    height: 31px;
    border: 1px solid #cfe9d8;
    border-radius: 9px;
    background: #fff;
    color: #138447;
}

.profile-line-consent-data-list span[b-ibm8tlhep0] {
    display: flex;
    flex-direction: column;
    color: #6a7380;
    font-size: .79rem;
    font-weight: 600;
    line-height: 1.5;
}

.profile-line-consent-data-list strong[b-ibm8tlhep0] {
    color: #273449;
    font-size: .87rem;
    font-weight: 900;
}

.profile-line-consent-purpose[b-ibm8tlhep0] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 12px;
    padding: 13px 14px;
    border-radius: 13px;
    background: #f6f7f9;
}

.profile-line-consent-purpose strong[b-ibm8tlhep0] {
    color: #4b5563;
    font-size: .83rem;
    font-weight: 900;
}

.profile-line-consent-purpose span[b-ibm8tlhep0] {
    color: #717b89;
    font-size: .78rem;
    font-weight: 600;
    line-height: 1.55;
}

.profile-line-consent-check[b-ibm8tlhep0] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 14px;
    padding: 13px;
    border: 1px solid #dfe4ea;
    border-radius: 13px;
    color: #404b5c;
    font-size: .8rem;
    font-weight: 650;
    line-height: 1.6;
    cursor: pointer;
}

.profile-line-consent-check input[b-ibm8tlhep0] {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 3px;
    accent-color: #06c755;
}

.profile-line-consent-check strong[b-ibm8tlhep0] {
    color: #a40004;
}

.profile-line-consent-submit[b-ibm8tlhep0],
.profile-line-consent-cancel[b-ibm8tlhep0] {
    width: 100%;
    min-height: 48px;
    margin-top: 14px;
    border: 0;
    border-radius: 13px;
    font: inherit;
    font-size: .92rem;
    font-weight: 900;
    cursor: pointer;
}

.profile-line-consent-submit[b-ibm8tlhep0] {
    background: #06c755;
    color: #fff;
}

.profile-line-consent-submit:hover:not(:disabled)[b-ibm8tlhep0] {
    background: #05b84d;
}

.profile-line-consent-submit:disabled[b-ibm8tlhep0] {
    background: #dfe4e9;
    color: #a5adb7;
    cursor: not-allowed;
}

.profile-line-consent-cancel[b-ibm8tlhep0] {
    margin-top: 7px;
    background: transparent;
    color: #8f0001;
}

.profile-line-consent-cancel:hover[b-ibm8tlhep0] {
    background: #fff3f4;
}

@media (max-width: 767.98px) {
    .profile-line-account-row[b-ibm8tlhep0] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .profile-line-connect-button[b-ibm8tlhep0],
    .profile-line-account-confirmed[b-ibm8tlhep0],
    .profile-line-account-disabled-note[b-ibm8tlhep0] {
        grid-column: 1 / -1;
        width: 100%;
        justify-content: center;
        text-align: center;
    }
}

@media (max-width: 575.98px) {
    .profile-line-consent-backdrop[b-ibm8tlhep0] {
        padding: 10px;
    }

    .profile-line-consent-dialog[b-ibm8tlhep0] {
        max-height: calc(100vh - 20px);
        padding: 22px;
        border-radius: 20px;
    }

    .profile-line-consent-header[b-ibm8tlhep0] {
        padding-right: 20px;
        padding-left: 20px;
    }
}
/* /Components/Pages/ProfileCvEdit.razor.rz.scp.css */
.cv-edit-page[b-gjuz0dcbgt] {
    min-height: calc(100vh - 74px);
    padding: 44px 0 76px;
    background: #f4f6f8;
    color: #172033;
}

.cv-edit-header[b-gjuz0dcbgt] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 22px;
}

.cv-edit-eyebrow[b-gjuz0dcbgt] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 7px;
    color: #8f0001;
    font-size: .82rem;
    font-weight: 900;
    letter-spacing: .08em;
}

.cv-edit-header h1[b-gjuz0dcbgt] {
    margin: 0;
    color: #172033;
    font-size: clamp(1.8rem, 3vw, 2.45rem);
    font-weight: 900;
}

.cv-edit-header p[b-gjuz0dcbgt] {
    margin: 7px 0 0;
    color: #64748b;
    line-height: 1.7;
}

.cv-back-link[b-gjuz0dcbgt],
.cv-cancel-button[b-gjuz0dcbgt],
.cv-add-button[b-gjuz0dcbgt],
.cv-save-button[b-gjuz0dcbgt] {
    text-decoration: none;
}

.cv-back-link[b-gjuz0dcbgt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 10px 16px;
    border: 1px solid #dfe4ea;
    border-radius: 999px;
    background: #fff;
    color: #475569;
    font-weight: 900;
    white-space: nowrap;
}

.cv-back-link:hover[b-gjuz0dcbgt] {
    border-color: rgba(143, 0, 1, .28);
    color: #8f0001;
}

.cv-alert[b-gjuz0dcbgt],
.cv-state-card[b-gjuz0dcbgt] {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-bottom: 18px;
    padding: 15px 17px;
    border-radius: 18px;
    font-weight: 800;
}

.cv-alert-error[b-gjuz0dcbgt] {
    border: 1px solid #efc9cc;
    background: #fff0f1;
    color: #8f0001;
}

.cv-alert-success[b-gjuz0dcbgt] {
    border: 1px solid #bae4ca;
    background: #eaf8ef;
    color: #15733e;
}

.cv-state-card[b-gjuz0dcbgt] {
    border: 1px solid #e8ebf0;
    background: #fff;
    box-shadow: 0 14px 38px rgba(23, 32, 51, .06);
}

.cv-state-card p[b-gjuz0dcbgt] {
    margin: 2px 0 0;
    color: #64748b;
    font-weight: 500;
}

.cv-state-card .cv-back-link[b-gjuz0dcbgt] {
    margin-left: auto;
}

.cv-editor-stack[b-gjuz0dcbgt] {
    display: grid;
    gap: 20px;
}

.cv-editor-card[b-gjuz0dcbgt] {
    overflow: hidden;
    border: 1px solid #e8ebf0;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 16px 44px rgba(23, 32, 51, .06);
}

.cv-editor-card-head[b-gjuz0dcbgt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px;
    border-bottom: 1px solid #eef1f5;
}

.cv-editor-card-title[b-gjuz0dcbgt] {
    display: flex;
    align-items: center;
    gap: 13px;
}

.cv-editor-icon[b-gjuz0dcbgt] {
    display: grid;
    place-items: center;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    border-radius: 15px;
    background: #fff0f1;
    color: #9b0000;
    font-size: 1.15rem;
}

.cv-editor-card-title h2[b-gjuz0dcbgt] {
    margin: 0;
    color: #172033;
    font-size: 1.23rem;
    font-weight: 900;
}

.cv-editor-card-title p[b-gjuz0dcbgt] {
    margin: 3px 0 0;
    color: #7b8796;
    font-size: .88rem;
}

.cv-add-button[b-gjuz0dcbgt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 15px;
    border: 1px solid rgba(143, 0, 1, .18);
    border-radius: 999px;
    background: #fff0f1;
    color: #8f0001;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
}

.cv-add-button:hover:not(:disabled)[b-gjuz0dcbgt] {
    border-color: #8f0001;
    background: #8f0001;
    color: #fff;
}

.cv-edit-list[b-gjuz0dcbgt] {
    display: grid;
    gap: 14px;
    padding: 20px 24px 24px;
}

.cv-edit-row[b-gjuz0dcbgt] {
    display: grid;
    grid-template-columns: 44px 120px minmax(180px, 1fr) minmax(250px, 1.5fr) 130px 46px;
    gap: 16px;
    align-items: end;
    padding: 18px;
    border: 1px solid #e5e9ef;
    border-radius: 18px;
    background: linear-gradient( 135deg, #fbfcfd 0%, #f7f9fb 100% );
    transition: border-color .18s ease, box-shadow .18s ease;
}

    .cv-edit-row:hover[b-gjuz0dcbgt] {
        border-color: rgba(143, 0, 1, .16);
        box-shadow: 0 8px 22px rgba(23, 32, 51, .045);
    }

.cv-edit-row-project[b-gjuz0dcbgt] {
    grid-template-columns: 44px 120px minmax(0, 1fr) 46px;
}

.cv-edit-row-work[b-gjuz0dcbgt] {
    grid-template-columns: 44px 120px minmax(260px, 1.4fr) minmax(220px, 1fr) 46px;
}

.cv-row-number[b-gjuz0dcbgt] {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    margin-bottom: 3px;
    border-radius: 13px;
    background: #fff0f1;
    color: #8f0001;
    font-weight: 900;
}

.cv-field[b-gjuz0dcbgt] {
    min-width: 0;
}

    .cv-field label[b-gjuz0dcbgt] {
        display: flex;
        align-items: center;
        gap: 4px;
        min-height: 20px;
        margin: 0 0 8px;
        color: #334155;
        font-size: .88rem;
        font-weight: 800;
        line-height: 1.35;
    }

        .cv-field label span[b-gjuz0dcbgt] {
            color: #a90008;
            font-size: .95rem;
        }

/* =========================================================
   Blazor InputText / InputNumber
   ต้องใช้ ::deep เพราะเป็น Child Component
   ========================================================= */

.cv-edit-page[b-gjuz0dcbgt]  .cv-input {
    display: block;
    width: 100%;
    min-width: 0;
    height: 48px;
    padding: 0 15px;
    border: 1px solid #d8dee7;
    border-radius: 14px;
    background-color: #ffffff;
    color: #253047;
    font-family: inherit;
    font-size: .96rem;
    font-weight: 600;
    line-height: 1.5;
    box-sizing: border-box;
    outline: none;
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

    .cv-edit-page[b-gjuz0dcbgt]  .cv-input:hover:not(:disabled) {
        border-color: #c1c9d4;
        background-color: #fff;
    }

    .cv-edit-page[b-gjuz0dcbgt]  .cv-input:focus {
        border-color: #8f0001;
        background-color: #ffffff;
        box-shadow: 0 0 0 4px rgba(143, 0, 1, .09);
    }

    .cv-edit-page[b-gjuz0dcbgt]  .cv-input::placeholder {
        color: #a0a9b7;
        font-weight: 500;
        opacity: 1;
    }

    .cv-edit-page[b-gjuz0dcbgt]  .cv-input:disabled {
        border-color: #e2e7ed;
        background-color: #f1f4f7;
        color: #7b8796;
        cursor: not-allowed;
        opacity: 1;
    }

    /* Browser validation state */
    .cv-edit-page[b-gjuz0dcbgt]  .cv-input.invalid {
        border-color: #b40008;
        background-color: #fff8f8;
        box-shadow: 0 0 0 3px rgba(180, 0, 8, .07);
    }

    .cv-edit-page[b-gjuz0dcbgt]  .cv-input.valid:not(:focus) {
        border-color: #d8dee7;
    }

/* InputNumber */
.cv-edit-page[b-gjuz0dcbgt]  input[type="number"].cv-input {
    appearance: textfield;
    -moz-appearance: textfield;
}

    .cv-edit-page[b-gjuz0dcbgt]  input[type="number"].cv-input::-webkit-inner-spin-button,
    .cv-edit-page[b-gjuz0dcbgt]  input[type="number"].cv-input::-webkit-outer-spin-button {
        margin: 0;
        opacity: .55;
    }

.cv-remove-button[b-gjuz0dcbgt] {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    margin-bottom: 2px;
    border: 1px solid #efd5d7;
    border-radius: 13px;
    background: #ffffff;
    color: #a90008;
    font-family: inherit;
    font-size: .96rem;
    cursor: pointer;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

    .cv-remove-button:hover:not(:disabled)[b-gjuz0dcbgt] {
        border-color: #a90008;
        background: #a90008;
        color: #ffffff;
        transform: translateY(-1px);
    }

    .cv-remove-button:active:not(:disabled)[b-gjuz0dcbgt] {
        transform: translateY(0);
    }

.cv-editor-empty[b-gjuz0dcbgt] {
    margin: 20px 24px 24px;
    padding: 22px;
    border: 1px dashed #d9dfe6;
    border-radius: 18px;
    background: #fafbfc;
    color: #7b8796;
    text-align: center;
    font-weight: 700;
}

.cv-edit-actions[b-gjuz0dcbgt] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 22px;
    padding: 18px 0 0;
}

.cv-cancel-button[b-gjuz0dcbgt],
.cv-save-button[b-gjuz0dcbgt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 11px 20px;
    border-radius: 999px;
    font-family: inherit;
    font-weight: 900;
}

.cv-cancel-button[b-gjuz0dcbgt] {
    border: 1px solid #dce2e9;
    background: #fff;
    color: #475569;
}

.cv-save-button[b-gjuz0dcbgt] {
    border: 0;
    background: linear-gradient(135deg, #8f0001, #b40008);
    color: #fff;
    box-shadow: 0 12px 26px rgba(143, 0, 1, .20);
    cursor: pointer;
}

.cv-save-button:hover:not(:disabled)[b-gjuz0dcbgt] {
    background: linear-gradient(135deg, #760001, #a30007);
    color: #fff;
}

.cv-add-button:disabled[b-gjuz0dcbgt],
.cv-remove-button:disabled[b-gjuz0dcbgt],
.cv-save-button:disabled[b-gjuz0dcbgt] {
    opacity: .58;
    cursor: not-allowed;
}

@media (max-width: 1199.98px) {
    .cv-edit-row[b-gjuz0dcbgt] {
        grid-template-columns: 44px 110px minmax(160px, 1fr) minmax(210px, 1.3fr) 115px 44px;
        gap: 12px;
    }

    .cv-edit-row-project[b-gjuz0dcbgt] {
        grid-template-columns: 44px 110px minmax(0, 1fr) 44px;
    }

    .cv-edit-row-work[b-gjuz0dcbgt] {
        grid-template-columns: 44px 110px minmax(200px, 1.25fr) minmax(180px, 1fr) 44px;
    }
}

@media (max-width: 991.98px) {
    .cv-edit-page[b-gjuz0dcbgt] {
        padding-top: 32px;
    }

    .cv-edit-row[b-gjuz0dcbgt],
    .cv-edit-row-project[b-gjuz0dcbgt],
    .cv-edit-row-work[b-gjuz0dcbgt] {
        grid-template-columns: 42px repeat(2, minmax(0, 1fr));
        align-items: end;
    }

    .cv-row-number[b-gjuz0dcbgt] {
        grid-row: 1;
    }

    .cv-field-wide[b-gjuz0dcbgt] {
        grid-column: span 2;
    }

    .cv-remove-button[b-gjuz0dcbgt] {
        grid-column: 3;
        justify-self: end;
    }
}

@media (max-width: 575.98px) {
    .cv-edit-page[b-gjuz0dcbgt] {
        padding: 24px 0 54px;
    }

    .cv-edit-header[b-gjuz0dcbgt],
    .cv-editor-card-head[b-gjuz0dcbgt] {
        align-items: stretch;
        flex-direction: column;
    }

    .cv-back-link[b-gjuz0dcbgt],
    .cv-add-button[b-gjuz0dcbgt] {
        width: 100%;
    }

    .cv-editor-card[b-gjuz0dcbgt] {
        border-radius: 22px;
    }

    .cv-editor-card-head[b-gjuz0dcbgt],
    .cv-edit-list[b-gjuz0dcbgt] {
        padding-right: 18px;
        padding-left: 18px;
    }

    .cv-edit-row[b-gjuz0dcbgt],
    .cv-edit-row-project[b-gjuz0dcbgt],
    .cv-edit-row-work[b-gjuz0dcbgt] {
        grid-template-columns: 1fr;
    }

    .cv-row-number[b-gjuz0dcbgt],
    .cv-field-wide[b-gjuz0dcbgt],
    .cv-remove-button[b-gjuz0dcbgt] {
        grid-column: auto;
    }

    .cv-remove-button[b-gjuz0dcbgt] {
        width: 100%;
    }

    .cv-edit-actions[b-gjuz0dcbgt] {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .cv-cancel-button[b-gjuz0dcbgt],
    .cv-save-button[b-gjuz0dcbgt] {
        width: 100%;
    }
}
/* /Components/Pages/ProfileEdit.razor.rz.scp.css */
.profile-edit-page[b-m9wjyf8dpa] {
    min-height: calc(100vh - 74px);
    padding: 42px 0 84px;
    background: #f4f6f8;
    color: #172033;
}

.edit-header[b-m9wjyf8dpa] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
    padding-bottom: 14px;
    border-bottom: 3px solid #8f0001;
}

.edit-header-title[b-m9wjyf8dpa] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.edit-header-title i[b-m9wjyf8dpa] {
    color: #8f0001;
    font-size: 1.3rem;
}

.edit-header-title h1[b-m9wjyf8dpa] {
    margin: 0;
    color: #8f0001;
    font-size: 1.35rem;
    font-weight: 900;
}

.back-link[b-m9wjyf8dpa] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #475569;
    font-weight: 900;
    text-decoration: none;
}

.back-link:hover[b-m9wjyf8dpa] {
    color: #8f0001;
}

.edit-page-message[b-m9wjyf8dpa] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    padding: 14px 16px;
    border-radius: 15px;
    font-size: .96rem;
    font-weight: 800;
}

.edit-page-message-success[b-m9wjyf8dpa] {
    border: 1px solid #b7dfc2;
    background: #f0fff4;
    color: #16723a;
}

.edit-page-message-error[b-m9wjyf8dpa] {
    border: 1px solid #efc0c4;
    background: #fff1f2;
    color: #9f0712;
}

.profile-edit-loading-card[b-m9wjyf8dpa],
.profile-edit-auth-card[b-m9wjyf8dpa] {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 30px;
    border: 1px solid #e5e7eb;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(23, 32, 51, .08);
}

.profile-edit-loading-card .spinner-border[b-m9wjyf8dpa] {
    color: #8f0001;
}

.profile-edit-loading-card p[b-m9wjyf8dpa],
.profile-edit-auth-card p[b-m9wjyf8dpa] {
    margin: 4px 0 0;
    color: #64748b;
}

.profile-edit-auth-icon[b-m9wjyf8dpa] {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 16px;
    background: #fff0f1;
    color: #8f0001;
    font-size: 1.35rem;
}

.profile-edit-login-link[b-m9wjyf8dpa] {
    margin-left: auto;
    padding: 11px 18px;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-weight: 900;
    text-decoration: none;
}

.edit-shell[b-m9wjyf8dpa] {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 26px;
    align-items: start;
}

.edit-sidebar[b-m9wjyf8dpa] {
    position: sticky;
    top: 96px;
    padding: 24px;
    border: 1px solid #e8ebf0;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 16px 44px rgba(23, 32, 51, .06);
    text-align: center;
}

.edit-avatar[b-m9wjyf8dpa] {
    width: 170px;
    height: 170px;
    margin: 0 auto 16px;
    overflow: hidden;
    border: 5px solid #fff;
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(143, 0, 1, .16);
}

.edit-avatar img[b-m9wjyf8dpa] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 18%;
}

.upload-note[b-m9wjyf8dpa] {
    margin-bottom: 14px;
    color: #64748b;
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.6;
}

.upload-btn[b-m9wjyf8dpa] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 16px;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}

.upload-btn:hover[b-m9wjyf8dpa] {
    background: #6d0001;
}

[b-m9wjyf8dpa] .profile-image-input {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

.image-error-message[b-m9wjyf8dpa],
.image-info-message[b-m9wjyf8dpa] {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 7px;
    margin-top: 12px;
    padding: 10px;
    border-radius: 12px;
    font-size: .8rem;
    font-weight: 800;
    line-height: 1.45;
}

.image-error-message[b-m9wjyf8dpa] {
    background: #fff1f2;
    color: #b4232c;
}

.image-info-message[b-m9wjyf8dpa] {
    background: #fff8e8;
    color: #855c00;
}

.edit-main[b-m9wjyf8dpa] {
    min-width: 0;
}

.form-card[b-m9wjyf8dpa] {
    padding: 28px;
    border: 1px solid #e8ebf0;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 16px 44px rgba(23, 32, 51, .06);
}

.form-card + .form-card[b-m9wjyf8dpa] {
    margin-top: 20px;
}

.form-card > h2[b-m9wjyf8dpa],
.inline-card-title[b-m9wjyf8dpa] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 22px;
    color: #172033;
    font-size: 1.28rem;
    font-weight: 900;
}

.form-card h2 i[b-m9wjyf8dpa],
.inline-card-title i[b-m9wjyf8dpa] {
    color: #a90008;
}

.form-grid[b-m9wjyf8dpa],
.office-form-grid[b-m9wjyf8dpa] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 20px;
}

.form-group[b-m9wjyf8dpa] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 8px;
}

.form-group.full[b-m9wjyf8dpa] {
    grid-column: 1 / -1;
}

.form-group > label:first-child[b-m9wjyf8dpa] {
    color: #273449;
    font-size: .96rem;
    font-weight: 900;
}

.form-group small[b-m9wjyf8dpa] {
    color: #94a3b8;
    font-size: .78rem;
    font-weight: 700;
}

.required-mark[b-m9wjyf8dpa] {
    color: #a90008;
}

.profile-edit-control[b-m9wjyf8dpa] {
    width: 100%;
    min-height: 50px;
    padding: 11px 14px;
    border: 1px solid #d8dee7;
    border-radius: 15px;
    outline: 0;
    background: #fff;
    color: #172033;
    font: inherit;
    font-size: .96rem;
    font-weight: 650;
    transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

[b-m9wjyf8dpa] .profile-edit-control {
    width: 100%;
    min-height: 50px;
    padding: 11px 14px;
    border: 1px solid #d8dee7;
    border-radius: 15px;
    outline: 0;
    background: #fff;
    color: #172033;
    font: inherit;
    font-size: .96rem;
    font-weight: 650;
    transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.profile-edit-control:focus[b-m9wjyf8dpa],
[b-m9wjyf8dpa] .profile-edit-control:focus {
    border-color: #a90008;
    box-shadow: 0 0 0 4px rgba(169, 0, 8, .08);
}

.profile-edit-control:disabled[b-m9wjyf8dpa],
[b-m9wjyf8dpa] .profile-edit-control:disabled,
.readonly-control[b-m9wjyf8dpa],
[b-m9wjyf8dpa] .readonly-control {
    background: #f1f4f7;
    color: #64748b;
    cursor: not-allowed;
}

.profile-edit-textarea[b-m9wjyf8dpa],
[b-m9wjyf8dpa] .profile-edit-textarea {
    min-height: 150px;
    resize: vertical;
}

.compact-textarea[b-m9wjyf8dpa],
[b-m9wjyf8dpa] .compact-textarea {
    min-height: 96px;
    resize: vertical;
}

.inline-fields[b-m9wjyf8dpa] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.readonly-check[b-m9wjyf8dpa] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    color: #64748b;
    font-size: .84rem;
    font-weight: 800;
}

[b-m9wjyf8dpa] .readonly-check input {
    width: 17px;
    height: 17px;
    accent-color: #8f0001;
}

[b-m9wjyf8dpa] .validation-message {
    color: #b4232c;
    font-size: .8rem;
    font-weight: 800;
}

.subsection-header[b-m9wjyf8dpa] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid #edf0f4;
}

.subsection-header.no-top-margin[b-m9wjyf8dpa] {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.subsection-header h2[b-m9wjyf8dpa],
.subsection-header h3[b-m9wjyf8dpa] {
    margin: 0;
    color: #172033;
    font-size: 1.12rem;
    font-weight: 900;
}

.subsection-header .inline-card-title[b-m9wjyf8dpa] {
    margin: 0;
    font-size: 1.28rem;
}

.subsection-header p[b-m9wjyf8dpa] {
    margin: 4px 0 0;
    color: #7b8798;
    font-size: .84rem;
}

.btn-outline-maroon[b-m9wjyf8dpa],
.btn-check-license[b-m9wjyf8dpa],
.btn-save-profile[b-m9wjyf8dpa],
.btn-cancel-profile[b-m9wjyf8dpa],
.btn-icon-edit[b-m9wjyf8dpa],
.btn-icon-danger[b-m9wjyf8dpa],
.modal-close-button[b-m9wjyf8dpa] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 0;
    font-family: inherit;
    font-weight: 900;
    cursor: pointer;
}

.btn-outline-maroon[b-m9wjyf8dpa] {
    min-height: 42px;
    padding: 9px 15px;
    border: 1px solid #e4babc;
    border-radius: 999px;
    background: #fff5f5;
    color: #8f0001;
}

.btn-outline-maroon:hover[b-m9wjyf8dpa] {
    background: #8f0001;
    color: #fff;
}


.empty-inline-state[b-m9wjyf8dpa],
.empty-office-state[b-m9wjyf8dpa] {
    margin-top: 14px;
    padding: 22px;
    border: 1px dashed #d8dee7;
    border-radius: 18px;
    background: #fafbfc;
    color: #64748b;
    text-align: center;
    font-weight: 750;
}

.certificate-list[b-m9wjyf8dpa] {
    display: grid;
    gap: 12px;
    margin-top: 14px;
}

.certificate-row[b-m9wjyf8dpa] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 10px;
    align-items: center;
    padding: 14px;
    border: 1px solid #e8ebf0;
    border-radius: 18px;
    background: #f9fafb;
}

.btn-check-license[b-m9wjyf8dpa] {
    min-height: 46px;
    padding: 10px 16px;
    border-radius: 13px;
    background: #173f72;
    color: #fff;
}

.btn-icon-edit[b-m9wjyf8dpa],
.btn-icon-danger[b-m9wjyf8dpa],
.modal-close-button[b-m9wjyf8dpa] {
    width: 42px;
    height: 42px;
    border-radius: 13px;
}

.btn-icon-edit[b-m9wjyf8dpa] {
    background: #fff5e5;
    color: #9b6200;
}

.btn-icon-danger[b-m9wjyf8dpa] {
    background: #fff0f1;
    color: #a90008;
}

.certificate-message[b-m9wjyf8dpa] {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: .8rem;
    font-weight: 800;
}

.certificate-message.success[b-m9wjyf8dpa] {
    color: #16723a;
}

.certificate-message.error[b-m9wjyf8dpa] {
    color: #b4232c;
}

.note-grid[b-m9wjyf8dpa] {
    margin-top: 22px;
}

.office-list[b-m9wjyf8dpa] {
    display: grid;
    gap: 14px;
    margin-top: 20px;
}

.office-card[b-m9wjyf8dpa] {
    padding: 18px;
    border: 1px solid #e6e9ee;
    border-radius: 20px;
    background: linear-gradient(180deg, #fff, #fbfbfc);
}

.office-card-head[b-m9wjyf8dpa] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.office-card-head h3[b-m9wjyf8dpa] {
    margin: 8px 0 3px;
    color: #172033;
    font-size: 1.05rem;
    font-weight: 900;
}

.office-card-head p[b-m9wjyf8dpa] {
    margin: 0;
    color: #64748b;
    font-size: .86rem;
}

.office-type-badge[b-m9wjyf8dpa] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    font-size: .74rem;
    font-weight: 900;
}

.office-type-badge[b-m9wjyf8dpa] {
    padding: 5px 9px;
    background: #fff0f1;
    color: #8f0001;
}

.office-card-actions[b-m9wjyf8dpa] {
    display: flex;
    gap: 8px;
}

.office-summary-grid[b-m9wjyf8dpa] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 16px;
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid #edf0f4;
}

.office-summary-grid span[b-m9wjyf8dpa] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: #526071;
    font-size: .84rem;
    line-height: 1.5;
}

.office-summary-grid i[b-m9wjyf8dpa] {
    margin-top: 2px;
    color: #8f0001;
}


.empty-office-state[b-m9wjyf8dpa] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}

.empty-office-state i[b-m9wjyf8dpa] {
    color: #8f0001;
    font-size: 1.6rem;
}

.preference-grid[b-m9wjyf8dpa] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.preference-panel[b-m9wjyf8dpa] {
    padding: 20px;
    border: 1px solid #ead4d5;
    border-radius: 20px;
    background: #fff7f7;
}

.preference-panel h3[b-m9wjyf8dpa] {
    margin: 0 0 14px;
    color: #8f0001;
    font-size: 1rem;
    font-weight: 900;
}

[b-m9wjyf8dpa] .preference-panel .input-radio-group,
.preference-panel > div[b-m9wjyf8dpa] {
    display: grid;
    gap: 10px;
}

[b-m9wjyf8dpa] .preference-panel label {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #334155;
    font-weight: 750;
}

[b-m9wjyf8dpa] .preference-panel input[type="radio"] {
    width: 18px;
    height: 18px;
    accent-color: #8f0001;
}

.form-actions[b-m9wjyf8dpa] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 26px;
    padding-top: 22px;
    border-top: 1px solid #edf0f4;
}

.btn-cancel-profile[b-m9wjyf8dpa],
.btn-save-profile[b-m9wjyf8dpa] {
    min-height: 48px;
    padding: 11px 21px;
    border-radius: 999px;
    text-decoration: none;
}

.btn-cancel-profile[b-m9wjyf8dpa] {
    border: 1px solid #d9dee6;
    background: #fff;
    color: #526071;
}

.btn-save-profile[b-m9wjyf8dpa] {
    background: linear-gradient(135deg, #8f0001, #b6000a);
    color: #fff;
    box-shadow: 0 10px 24px rgba(143, 0, 1, .18);
}

.btn-save-profile:disabled[b-m9wjyf8dpa] {
    opacity: .65;
    cursor: not-allowed;
}

.profile-office-modal-backdrop[b-m9wjyf8dpa] {
    position: fixed;
    z-index: 3000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 24px;
    background: rgba(15, 23, 42, .64);
    overflow-y: auto;
}

.profile-office-modal[b-m9wjyf8dpa] {
    width: min(920px, 100%);
    max-height: calc(100vh - 48px);
    overflow: hidden;
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 30px 90px rgba(15, 23, 42, .30);
}

.profile-office-modal-header[b-m9wjyf8dpa],
.profile-office-modal-footer[b-m9wjyf8dpa] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 24px;
}

.profile-office-modal-header[b-m9wjyf8dpa] {
    border-bottom: 1px solid #edf0f4;
    background: linear-gradient(135deg, #8f0001, #5f0001);
    color: #fff;
}

.profile-office-modal-header span[b-m9wjyf8dpa] {
    color: #f0c8c9;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .12em;
}

.profile-office-modal-header h2[b-m9wjyf8dpa] {
    margin: 3px 0 0;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 900;
}

.modal-close-button[b-m9wjyf8dpa] {
    background: rgba(255, 255, 255, .14);
    color: #fff;
}

.profile-office-modal-body[b-m9wjyf8dpa] {
    max-height: calc(100vh - 220px);
    padding: 24px;
    overflow-y: auto;
}

.profile-office-modal-footer[b-m9wjyf8dpa] {
    justify-content: flex-end;
    border-top: 1px solid #edf0f4;
    background: #fafbfc;
}

.office-modal-message[b-m9wjyf8dpa] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    padding: 12px 14px;
    border: 1px solid #efc0c4;
    border-radius: 13px;
    background: #fff1f2;
    color: #9f0712;
    font-weight: 800;
}

/* =========================================================
   Gender selector
   ========================================================= */

.profile-gender-options[b-m9wjyf8dpa] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
}

.profile-gender-option[b-m9wjyf8dpa],
[b-m9wjyf8dpa] .profile-gender-option {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 52px;
    padding: 10px 14px;
    border: 1px solid #d8dee7;
    border-radius: 15px;
    background: #fff;
    color: #334155;
    font-weight: 800;
    cursor: pointer;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

    .profile-gender-option:hover[b-m9wjyf8dpa],
    [b-m9wjyf8dpa] .profile-gender-option:hover {
        border-color: #c88b8e;
        background: #fff8f8;
    }

    .profile-gender-option:has(input:checked)[b-m9wjyf8dpa] {
        border-color: #a90008;
        background: #fff1f2;
        color: #8f0001;
        box-shadow: 0 0 0 1px rgba(169, 0, 8, .02);
    }

        .profile-gender-option:has(input:checked) i[b-m9wjyf8dpa] {
            color: #8f0001;
        }

    [b-m9wjyf8dpa] .profile-gender-option input[type="radio"] {
        width: 18px;
        height: 18px;
        accent-color: #8f0001;
    }

    .profile-gender-option i[b-m9wjyf8dpa],
    [b-m9wjyf8dpa] .profile-gender-option i {
        color: #64748b;
        font-size: 1rem;
    }

@media (max-width: 575.98px) {
    .profile-gender-options[b-m9wjyf8dpa] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991.98px) {
    .edit-shell[b-m9wjyf8dpa] {
        grid-template-columns: 1fr;
    }

    .edit-sidebar[b-m9wjyf8dpa] {
        position: static;
    }

    .form-grid[b-m9wjyf8dpa],
    .office-form-grid[b-m9wjyf8dpa],
    .preference-grid[b-m9wjyf8dpa] {
        grid-template-columns: 1fr;
    }

    .office-summary-grid[b-m9wjyf8dpa] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .profile-edit-page[b-m9wjyf8dpa] {
        padding: 26px 0 64px;
    }

    .edit-header[b-m9wjyf8dpa],
    .subsection-header[b-m9wjyf8dpa],
    .office-card-head[b-m9wjyf8dpa] {
        align-items: stretch;
        flex-direction: column;
    }

    .form-card[b-m9wjyf8dpa] {
        padding: 20px;
        border-radius: 22px;
    }

    .inline-fields[b-m9wjyf8dpa] {
        grid-template-columns: 1fr;
    }

    .certificate-row[b-m9wjyf8dpa] {
        grid-template-columns: 1fr auto;
    }

    .certificate-row > .profile-edit-control[b-m9wjyf8dpa] {
        grid-column: 1 / -1;
    }

    [b-m9wjyf8dpa] .certificate-row .profile-edit-control {
        grid-column: 1 / -1;
    }

    .form-actions[b-m9wjyf8dpa] {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .profile-main-actions[b-m9wjyf8dpa] {
        margin-top: 20px;
        padding: 18px 22px;
        border: 1px solid #e8ebf0;
        border-radius: 22px;
        background: #fff;
        box-shadow: 0 12px 34px rgba(23, 32, 51, .06);
    }

    .btn-cancel-profile[b-m9wjyf8dpa],
    .btn-save-profile[b-m9wjyf8dpa],
    .btn-outline-maroon[b-m9wjyf8dpa] {
        width: 100%;
    }

    .profile-office-modal-backdrop[b-m9wjyf8dpa] {
        padding: 10px;
    }

    .profile-office-modal[b-m9wjyf8dpa] {
        max-height: calc(100vh - 20px);
        border-radius: 20px;
    }
}

.cancel-image-change[b-m9wjyf8dpa] {
    width: 100%;
    margin-top: 0.75rem;
    justify-content: center;
}

.birth-date-fields[b-m9wjyf8dpa] {
    display: grid;
    grid-template-columns: 150px minmax(220px, 1fr) 180px;
    gap: 14px;
}

.birth-date-field[b-m9wjyf8dpa] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 7px;
}

    .birth-date-field > span[b-m9wjyf8dpa] {
        color: #64748b;
        font-size: .82rem;
        font-weight: 800;
    }

    .birth-date-field .profile-edit-control[b-m9wjyf8dpa],
    .birth-date-field[b-m9wjyf8dpa]  .profile-edit-control {
        min-height: 56px;
        font-size: 1rem;
        cursor: pointer;
    }

@media (max-width: 767.98px) {
    .birth-date-fields[b-m9wjyf8dpa] {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Profile: ภาควิชา 40% + วันเดือนปีเกิด 60%
   ========================================================= */

.profile-major-birth-row[b-m9wjyf8dpa] {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(260px, 2fr) minmax(0, 3fr);
    gap: 20px;
    align-items: start;
}

.birth-date-group[b-m9wjyf8dpa] {
    min-width: 0;
}

.birth-date-fields[b-m9wjyf8dpa] {
    grid-template-columns:
        minmax(88px, .75fr)
        minmax(150px, 1.55fr)
        minmax(120px, .95fr);
}

/* หมายเหตุและรายละเอียดเพิ่มเติมสูงเท่ากัน */
.note-grid[b-m9wjyf8dpa] {
    align-items: stretch;
}

.note-grid .form-group[b-m9wjyf8dpa] {
    height: 100%;
}

.note-grid[b-m9wjyf8dpa]  textarea.profile-edit-control,
.note-grid textarea.profile-edit-control[b-m9wjyf8dpa] {
    height: 100%;
    min-height: 96px;
}

/* =========================================================
   Native / Blazor InputSelect arrow
   เว้นระยะลูกศรจากขอบขวาให้สมส่วน
   ========================================================= */

select.profile-edit-control[b-m9wjyf8dpa],
[b-m9wjyf8dpa] select.profile-edit-control {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 50px;
    background-color: #fff;
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6L8 10L12 6' stroke='%2364758B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 17px center;
    background-size: 16px 16px;
}

select.profile-edit-control:disabled[b-m9wjyf8dpa],
[b-m9wjyf8dpa] select.profile-edit-control:disabled {
    background-color: #f1f4f7;
}

@media (max-width: 991.98px) {
    .profile-major-birth-row[b-m9wjyf8dpa] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) {
    .birth-date-fields[b-m9wjyf8dpa] {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   First Profile Setup
   ========================================================= */

.first-profile-setup-status[b-m9wjyf8dpa] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 15px;
    border: 1px solid #ead7a6;
    border-radius: 999px;
    background: #fff9e8;
    color: #8a6100;
    font-size: .86rem;
    font-weight: 900;
    white-space: nowrap;
}

    .first-profile-setup-status i[b-m9wjyf8dpa] {
        font-size: 1rem;
    }

.first-profile-setup-notice[b-m9wjyf8dpa] {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 18px;
    align-items: start;
    margin-bottom: 22px;
    padding: 22px 24px;
    border: 1px solid #ead7a6;
    border-left: 5px solid #a87400;
    border-radius: 22px;
    background: linear-gradient( 135deg, #fffdf6 0%, #fff8e7 100% );
    box-shadow: 0 12px 30px rgba(138, 97, 0, .06);
}

.first-profile-setup-icon[b-m9wjyf8dpa] {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: #8f0001;
    color: #fff;
    font-size: 1.45rem;
    box-shadow: 0 10px 24px rgba(143, 0, 1, .18);
}

.first-profile-setup-content[b-m9wjyf8dpa] {
    min-width: 0;
}

.first-profile-setup-kicker[b-m9wjyf8dpa] {
    display: block;
    margin-bottom: 4px;
    color: #9a6c00;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .08em;
}

.first-profile-setup-content h2[b-m9wjyf8dpa] {
    margin: 0;
    color: #172033;
    font-size: 1.2rem;
    font-weight: 900;
    line-height: 1.45;
}

.first-profile-setup-content > p[b-m9wjyf8dpa] {
    max-width: 900px;
    margin: 7px 0 0;
    color: #64748b;
    font-size: .92rem;
    font-weight: 650;
    line-height: 1.7;
}

.first-profile-setup-hint[b-m9wjyf8dpa] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 13px;
    padding: 11px 13px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .76);
    color: #6e5722;
    font-size: .84rem;
    line-height: 1.6;
}

    .first-profile-setup-hint i[b-m9wjyf8dpa] {
        flex: 0 0 auto;
        margin-top: 2px;
        color: #a87400;
    }

    .first-profile-setup-hint strong[b-m9wjyf8dpa] {
        color: #8f0001;
        font-weight: 900;
    }

.first-profile-setup-save[b-m9wjyf8dpa] {
    min-width: 270px;
}

@media (max-width: 767.98px) {
    .first-profile-setup-status[b-m9wjyf8dpa] {
        align-self: flex-start;
    }

    .first-profile-setup-notice[b-m9wjyf8dpa] {
        grid-template-columns: 1fr;
        padding: 18px;
    }

    .first-profile-setup-icon[b-m9wjyf8dpa] {
        width: 52px;
        height: 52px;
    }

    .first-profile-setup-save[b-m9wjyf8dpa] {
        width: 100%;
        min-width: 0;
    }
}

.profile-optional[b-m9wjyf8dpa] {
    color: #8a94a6;
    font-size: .82rem;
    font-weight: 600;
}
/* /Components/Pages/Register.razor.rz.scp.css */
.register-page[b-12txd35q4s] {
    min-height: 720px;
    padding: 42px 0 80px;
    background: #f4f6f8;
    color: #172033;
}

.register-header[b-12txd35q4s] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
    padding-bottom: 14px;
    border-bottom: 3px solid #8f0001;
}

.register-header-title[b-12txd35q4s] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.register-header-title i[b-12txd35q4s] {
    color: #8f0001;
    font-size: 1.35rem;
}

.register-header-title h1[b-12txd35q4s] {
    margin: 0;
    color: #8f0001;
    font-size: 1.35rem;
    font-weight: 900;
    letter-spacing: -.02em;
}

.register-breadcrumb[b-12txd35q4s] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    color: #64748b;
    font-size: .96rem;
    font-weight: 700;
}

.register-breadcrumb a[b-12txd35q4s] {
    color: #64748b;
    text-decoration: none;
}

.register-breadcrumb a:hover[b-12txd35q4s] {
    color: #8f0001;
}

.register-breadcrumb i[b-12txd35q4s] {
    color: #c3c9d2;
    font-size: .72rem;
}

.register-breadcrumb strong[b-12txd35q4s] {
    color: #172033;
    font-weight: 900;
}

.register-shell[b-12txd35q4s] {
    display: grid;
    grid-template-columns: minmax(360px, .86fr) minmax(0, 1.14fr);
    width: 100%;
    overflow: hidden;
    border: 1px solid rgba(23, 32, 51, .07);
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 20px 60px rgba(23, 32, 51, .10);
}

.register-aside[b-12txd35q4s] {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 780px;
    overflow: hidden;
    padding: 48px 42px 38px;
    color: #fff;
    background:
        radial-gradient(circle at 88% 4%, rgba(255, 255, 255, .08), transparent 30%),
        linear-gradient(155deg, #a40004 0%, #7b0001 58%, #4a0001 100%);
}

.register-aside[b-12txd35q4s]::before,
.register-aside[b-12txd35q4s]::after {
    position: absolute;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.register-aside[b-12txd35q4s]::before {
    top: -125px;
    right: -145px;
    width: 355px;
    height: 355px;
}

.register-aside[b-12txd35q4s]::after {
    bottom: -100px;
    left: -75px;
    width: 235px;
    height: 235px;
}

.register-aside-top[b-12txd35q4s],
.register-aside-login[b-12txd35q4s] {
    position: relative;
    z-index: 1;
}

.register-logo-wrap[b-12txd35q4s] {
    display: flex;
    justify-content: center;
    margin: 0 0 30px;
}

.register-logo-box[b-12txd35q4s] {
    display: grid;
    place-items: center;
    width: 132px;
    height: 132px;
    overflow: hidden;
    border: 6px solid rgba(255, 255, 255, .92);
    border-radius: 30px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .20);
}

.register-logo-box img[b-12txd35q4s] {
    display: block;
    width: 82%;
    height: 82%;
    object-fit: contain;
}

.register-aside h2[b-12txd35q4s] {
    margin: 0 0 16px;
    color: #fff;
    font-size: 1.9rem;
    font-weight: 900;
    line-height: 1.35;
    letter-spacing: -.025em;
}

.register-aside-description[b-12txd35q4s] {
    max-width: 390px;
    margin: 0 0 32px;
    color: rgba(255, 255, 255, .82);
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.85;
}

.register-benefits[b-12txd35q4s] {
    display: grid;
    gap: 17px;
}

.register-benefit-item[b-12txd35q4s] {
    display: flex;
    align-items: center;
    gap: 13px;
    color: rgba(255, 255, 255, .94);
    font-size: .97rem;
    font-weight: 700;
    line-height: 1.55;
}

.register-benefit-icon[b-12txd35q4s] {
    display: grid;
    place-items: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: rgba(255, 255, 255, .14);
    font-size: 1rem;
}

.register-aside-login[b-12txd35q4s] {
    margin-top: 40px;
    color: rgba(255, 255, 255, .70);
    font-size: .94rem;
    font-weight: 600;
}

.register-aside-login a[b-12txd35q4s] {
    margin-left: 4px;
    color: #fff;
    font-weight: 900;
    text-decoration: none;
}

.register-aside-login a:hover[b-12txd35q4s] {
    text-decoration: underline;
}

.register-form-panel[b-12txd35q4s] {
    min-width: 0;
    padding: 44px 46px 38px;
}

.register-form-heading[b-12txd35q4s] {
    margin-bottom: 28px;
}

.register-form-heading h2[b-12txd35q4s] {
    margin: 0 0 6px;
    color: #172033;
    font-size: 1.55rem;
    font-weight: 900;
    letter-spacing: -.025em;
}

.register-form-heading p[b-12txd35q4s] {
    margin: 0;
    color: #64748b;
    font-size: .96rem;
    font-weight: 600;
}

.register-system-message[b-12txd35q4s],
.register-server-message[b-12txd35q4s] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 12px 14px;
    border: 1px solid #efc0c4;
    border-radius: 13px;
    background: #fff3f4;
    color: #a31420;
    font-size: .86rem;
    font-weight: 750;
    line-height: 1.55;
}

.register-system-message[b-12txd35q4s] {
    margin-bottom: 22px;
}

.register-server-message[b-12txd35q4s] {
    margin-top: 22px;
}

.register-form-section[b-12txd35q4s] {
    padding-bottom: 28px;
}

.register-form-section + .register-form-section[b-12txd35q4s] {
    padding-top: 28px;
    border-top: 1px solid #edf0f3;
}

.register-form-section-last[b-12txd35q4s] {
    padding-bottom: 0;
}

.register-section-heading[b-12txd35q4s] {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-bottom: 20px;
}

.register-section-number[b-12txd35q4s] {
    display: grid;
    place-items: center;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #9c0003, #670001);
    color: #fff;
    font-size: .82rem;
    font-weight: 900;
    box-shadow: 0 5px 12px rgba(143, 0, 1, .18);
}

.register-section-heading h3[b-12txd35q4s] {
    margin: 1px 0 2px;
    color: #172033;
    font-size: 1.06rem;
    font-weight: 900;
}

.register-section-heading p[b-12txd35q4s] {
    margin: 0;
    color: #8a94a3;
    font-size: .8rem;
    font-weight: 600;
    line-height: 1.45;
}

.register-fields[b-12txd35q4s] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 20px;
}

.register-field-group[b-12txd35q4s] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 7px;
}

.register-field-full[b-12txd35q4s] {
    grid-column: 1 / -1;
}

.register-field-group > label[b-12txd35q4s] {
    padding-left: 1px;
    color: #273449;
    font-size: .92rem;
    font-weight: 900;
}

.required-mark[b-12txd35q4s] {
    color: #a40004;
}

.register-control-wrap[b-12txd35q4s] {
    position: relative;
    min-width: 0;
}

.register-control-icon[b-12txd35q4s] {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 16px;
    transform: translateY(-50%);
    color: #98a1af;
    font-size: .96rem;
    pointer-events: none;
}

.register-control-wrap:focus-within .register-control-icon[b-12txd35q4s] {
    color: #9f0003;
}

[b-12txd35q4s] .register-control {
    width: 100%;
    min-height: 52px;
    padding: 12px 15px;
    border: 1px solid #dfe4ea;
    border-radius: 13px;
    outline: 0;
    background: #fff;
    color: #172033;
    font: inherit;
    font-size: .96rem;
    font-weight: 550;
    transition:
        border-color .15s ease,
        box-shadow .15s ease,
        background .15s ease;
}

[b-12txd35q4s] .register-control-with-icon {
    padding-left: 45px;
}

[b-12txd35q4s] .register-control-with-action {
    padding-right: 50px;
}

[b-12txd35q4s] .register-control::placeholder {
    color: #aeb5c0;
    opacity: 1;
}

[b-12txd35q4s] .register-control:focus {
    border-color: #9f0003;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(159, 0, 3, .08);
}

[b-12txd35q4s] .register-control.invalid {
    border-color: #d2565e;
    background: #fff5f5;
    box-shadow: 0 0 0 2px rgba(194, 13, 25, .035);
}

[b-12txd35q4s] .register-control.valid.modified {
    border-color: #86c49a;
    background: #fbfffc;
}

[b-12txd35q4s] select.register-control {
    appearance: none;
    -webkit-appearance: none;
    padding-right: 46px;
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6L8 10L12 6' stroke='%2364758B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 16px 16px;
}

.register-input-action[b-12txd35q4s] {
    position: absolute;
    z-index: 3;
    top: 50%;
    right: 8px;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    padding: 0;
    transform: translateY(-50%);
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #8b95a4;
    font-size: 1rem;
    cursor: pointer;
}

.register-input-action:hover[b-12txd35q4s],
.register-input-action:focus-visible[b-12txd35q4s] {
    outline: 0;
    background: #fff0f1;
    color: #8f0001;
}

.register-field-hint[b-12txd35q4s] {
    color: #8a94a3;
    font-size: .76rem;
    font-weight: 600;
    line-height: 1.45;
}

[b-12txd35q4s] .validation-message {
    margin-top: 0;
    color: #b4232c;
    font-size: .8rem;
    font-weight: 750;
    line-height: 1.4;
}

.register-gender-options[b-12txd35q4s] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
}

.register-gender-option[b-12txd35q4s] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 9px 12px;
    border: 1px solid #dfe4ea;
    border-radius: 13px;
    background: #fff;
    color: #475569;
    font-size: .91rem;
    font-weight: 750;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, color .15s ease;
}

.register-gender-option:hover[b-12txd35q4s] {
    border-color: #d5a5a8;
    background: #fffafa;
}

.register-gender-option:has(input:checked)[b-12txd35q4s] {
    border-color: #a90008;
    background: #fff1f2;
    color: #8f0001;
}

[b-12txd35q4s] .register-gender-option input {
    width: 17px;
    height: 17px;
    accent-color: #8f0001;
}

.password-strength[b-12txd35q4s] {
    min-height: 25px;
    padding: 1px 2px 0;
}

.password-strength-track[b-12txd35q4s] {
    height: 5px;
    overflow: hidden;
    border-radius: 999px;
    background: #e9edf2;
}

.password-strength-fill[b-12txd35q4s] {
    height: 100%;
    border-radius: inherit;
    transition: width .22s ease, background-color .22s ease;
}

.password-strength-text[b-12txd35q4s] {
    display: block;
    margin-top: 6px;
    font-size: .8rem;
    font-weight: 800;
}

.strength-very-weak[b-12txd35q4s] {
    color: #dc2626;
    background-color: #dc2626;
}

.strength-weak[b-12txd35q4s] {
    color: #ea580c;
    background-color: #ea580c;
}

.strength-medium[b-12txd35q4s] {
    color: #b77900;
    background-color: #d3a400;
}

.strength-strong[b-12txd35q4s] {
    color: #15803d;
    background-color: #16a34a;
}

.register-pdpa-card[b-12txd35q4s] {
    padding: 20px;
    border: 1px solid #e6d8da;
    border-radius: 18px;
    background: #fffafa;
}

.register-pdpa-title[b-12txd35q4s] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.register-pdpa-title > i[b-12txd35q4s] {
    display: grid;
    place-items: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 13px;
    background: #fff0f1;
    color: #8f0001;
    font-size: 1.1rem;
}

.register-pdpa-title div[b-12txd35q4s] {
    display: grid;
    gap: 2px;
}

.register-pdpa-title strong[b-12txd35q4s] {
    color: #172033;
    font-size: .93rem;
    font-weight: 900;
}

.register-pdpa-title span[b-12txd35q4s] {
    color: #7b8798;
    font-size: .78rem;
    font-weight: 600;
}

.register-pdpa-card > p[b-12txd35q4s] {
    margin: 0 0 15px;
    color: #5c6675;
    font-size: .84rem;
    line-height: 1.75;
}

.register-consent-check[b-12txd35q4s] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #384354;
    font-size: .84rem;
    font-weight: 650;
    line-height: 1.65;
    cursor: pointer;
}

[b-12txd35q4s] .register-consent-check input {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 3px;
    accent-color: #8f0001;
}

.register-consent-check a[b-12txd35q4s] {
    color: #8f0001;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.register-consent-check strong[b-12txd35q4s] {
    color: #a40004;
}

.register-actions[b-12txd35q4s] {
    padding-top: 26px;
}

.register-submit-button[b-12txd35q4s] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 52px;
    padding: 13px 24px;
    border: 0;
    border-radius: 14px;
    background: linear-gradient(135deg, #8f0001 0%, #bb0009 100%);
    color: #fff;
    font-family: inherit;
    font-size: 1.03rem;
    font-weight: 900;
    box-shadow: 0 13px 28px rgba(143, 0, 1, .20);
    cursor: pointer;
    transition: transform .15s, box-shadow .15s, background .15s;
}

.register-submit-button:hover:not(:disabled)[b-12txd35q4s] {
    transform: translateY(-1px);
    background: linear-gradient(135deg, #760001 0%, #a30007 100%);
    box-shadow: 0 16px 32px rgba(143, 0, 1, .26);
}

.register-submit-button:disabled[b-12txd35q4s] {
    cursor: not-allowed;
    opacity: .62;
}

.register-links[b-12txd35q4s] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    padding-top: 20px;
    color: #64748b;
    font-size: .92rem;
    font-weight: 700;
}

.register-links a[b-12txd35q4s] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #8f0001;
    font-weight: 900;
    text-decoration: none;
}

.register-links a:hover[b-12txd35q4s] {
    text-decoration: underline;
}

.register-links > span[b-12txd35q4s] {
    width: 1px;
    height: 18px;
    background: #d5dae1;
}

/* LINE registration ------------------------------------------------------ */
.register-line-connect-card[b-12txd35q4s],
.register-line-connected-card[b-12txd35q4s] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    margin: 0 0 24px;
    padding: 16px;
    border-radius: 17px;
}

.register-line-connect-card[b-12txd35q4s] {
    border: 1px solid #42bf76;
    background: #effbf4;
}

.register-line-connected-card[b-12txd35q4s] {
    border: 1px solid #8bd7aa;
    background: #f3fcf6;
}

.register-line-icon[b-12txd35q4s] {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    border-radius: 13px;
    background: #06c755;
    color: #fff;
    font-size: .72rem;
    font-weight: 950;
    letter-spacing: -.02em;
}

.register-line-profile-image[b-12txd35q4s] {
    width: 50px;
    height: 50px;
    border: 2px solid rgba(6, 199, 85, .18);
    border-radius: 15px;
    object-fit: cover;
}

.register-line-connect-content[b-12txd35q4s] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.register-line-connect-content strong[b-12txd35q4s] {
    color: #173f29;
    font-size: .93rem;
    font-weight: 900;
}

.register-line-connect-content span[b-12txd35q4s] {
    color: #557062;
    font-size: .8rem;
    font-weight: 600;
    line-height: 1.45;
}

.register-line-connect-content small[b-12txd35q4s] {
    overflow: hidden;
    color: #728379;
    font-size: .76rem;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.register-line-connected-title[b-12txd35q4s] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.register-line-connected-title i[b-12txd35q4s] {
    color: #09994a;
}

.register-line-connect-button[b-12txd35q4s],
.register-line-reconnect-button[b-12txd35q4s] {
    min-height: 42px;
    padding: 10px 17px;
    border: 0;
    border-radius: 12px;
    font: inherit;
    font-size: .86rem;
    font-weight: 900;
    cursor: pointer;
}

.register-line-connect-button[b-12txd35q4s] {
    background: #06c755;
    color: #fff;
    box-shadow: 0 8px 20px rgba(6, 199, 85, .18);
}

.register-line-connect-button:hover[b-12txd35q4s] {
    background: #05b84d;
}

.register-line-reconnect-button[b-12txd35q4s] {
    border: 1px solid #b9dfc8;
    background: #fff;
    color: #148145;
}

.register-line-reconnect-button:hover[b-12txd35q4s] {
    background: #edf9f1;
}

.register-line-message[b-12txd35q4s] {
    margin-top: -8px;
    margin-bottom: 20px;
}

.register-line-fieldset[b-12txd35q4s] {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.register-line-fieldset:disabled[b-12txd35q4s] {
    opacity: .50;
}

.line-consent-backdrop[b-12txd35q4s] {
    position: fixed;
    z-index: 2100;
    inset: 0;
    display: grid;
    place-items: center;
    overflow-y: auto;
    padding: 24px;
    background: rgba(10, 12, 18, .68);
    backdrop-filter: blur(3px);
}

.line-consent-dialog[b-12txd35q4s] {
    position: relative;
    width: min(100%, 560px);
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    padding: 28px;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
}

.line-consent-close[b-12txd35q4s] {
    position: absolute;
    z-index: 2;
    top: 14px;
    right: 14px;
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #f5f6f8;
    color: #4a5565;
    cursor: pointer;
}

.line-consent-close:hover[b-12txd35q4s] {
    background: #eceff3;
    color: #8f0001;
}

.line-consent-header[b-12txd35q4s] {
    padding: 4px 30px 20px;
    text-align: center;
}

.line-consent-brand-row[b-12txd35q4s] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 15px;
}

.line-consent-logo[b-12txd35q4s],
.line-consent-cmueaa-logo[b-12txd35q4s] {
    display: grid;
    place-items: center;
    width: 56px;
    height: 56px;
    border-radius: 15px;
}

.line-consent-logo[b-12txd35q4s] {
    background: #06c755;
    color: #fff;
    font-size: .78rem;
    font-weight: 950;
}

.line-consent-cmueaa-logo[b-12txd35q4s] {
    border: 1px solid #eedfe1;
    background: #fff;
}

.line-consent-cmueaa-logo img[b-12txd35q4s] {
    width: 44px;
    height: 44px;
    object-fit: contain;
}

.line-consent-brand-row > i[b-12txd35q4s] {
    color: #9aa3b0;
    font-size: 1.05rem;
}

.line-consent-header h3[b-12txd35q4s] {
    margin: 0 0 6px;
    color: #172033;
    font-size: 1.35rem;
    font-weight: 900;
}

.line-consent-header p[b-12txd35q4s] {
    margin: 0;
    color: #667386;
    font-size: .84rem;
    font-weight: 600;
    line-height: 1.6;
}

.line-consent-section-title[b-12txd35q4s] {
    margin-bottom: 10px;
    color: #8f0001;
    font-size: .84rem;
    font-weight: 900;
}

.line-consent-data-list[b-12txd35q4s] {
    display: grid;
    gap: 9px;
}

.line-consent-data-list > div[b-12txd35q4s] {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    padding: 13px 14px;
    border-radius: 13px;
    background: #fff5f5;
}

.line-consent-data-list i[b-12txd35q4s] {
    display: grid;
    place-items: center;
    flex: 0 0 31px;
    width: 31px;
    height: 31px;
    border: 1px solid #ebd1d4;
    border-radius: 9px;
    background: #fff;
    color: #8f0001;
}

.line-consent-data-list span[b-12txd35q4s] {
    display: flex;
    flex-direction: column;
    color: #6a7380;
    font-size: .79rem;
    font-weight: 600;
    line-height: 1.5;
}

.line-consent-data-list strong[b-12txd35q4s] {
    color: #273449;
    font-size: .87rem;
    font-weight: 900;
}

.line-consent-purpose[b-12txd35q4s] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 12px;
    padding: 13px 14px;
    border-radius: 13px;
    background: #f6f7f9;
}

.line-consent-purpose strong[b-12txd35q4s] {
    color: #4b5563;
    font-size: .83rem;
    font-weight: 900;
}

.line-consent-purpose span[b-12txd35q4s] {
    color: #717b89;
    font-size: .78rem;
    font-weight: 600;
    line-height: 1.55;
}

.line-consent-policy-copy[b-12txd35q4s] {
    margin: 14px 0;
    color: #737d8b;
    font-size: .77rem;
    font-weight: 600;
    line-height: 1.6;
}

.line-consent-check[b-12txd35q4s] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 13px;
    border: 1px solid #dfe4ea;
    border-radius: 13px;
    color: #404b5c;
    font-size: .8rem;
    font-weight: 650;
    line-height: 1.6;
    cursor: pointer;
}

.line-consent-check input[b-12txd35q4s] {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 3px;
    accent-color: #06c755;
}

.line-consent-check strong[b-12txd35q4s] {
    color: #a40004;
}

.line-consent-submit[b-12txd35q4s],
.line-consent-skip[b-12txd35q4s] {
    width: 100%;
    min-height: 48px;
    margin-top: 14px;
    border: 0;
    border-radius: 13px;
    font: inherit;
    font-size: .92rem;
    font-weight: 900;
    cursor: pointer;
}

.line-consent-submit[b-12txd35q4s] {
    background: #06c755;
    color: #fff;
}

.line-consent-submit:hover:not(:disabled)[b-12txd35q4s] {
    background: #05b84d;
}

.line-consent-submit:disabled[b-12txd35q4s] {
    background: #dfe4e9;
    color: #a5adb7;
    cursor: not-allowed;
}

.line-consent-skip[b-12txd35q4s] {
    margin-top: 7px;
    background: transparent;
    color: #8f0001;
}

.line-consent-skip:hover[b-12txd35q4s] {
    background: #fff3f4;
}

.registration-line-linked-status[b-12txd35q4s] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: -7px auto 20px;
    padding: 9px 14px;
    border: 1px solid #b7e4c8;
    border-radius: 999px;
    background: #f0fbf4;
    color: #187744;
    font-size: .84rem;
    font-weight: 850;
}

.registration-success[b-12txd35q4s] {
    width: 100%;
    padding: 68px 36px;
    border: 1px solid rgba(23, 32, 51, .07);
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 20px 60px rgba(23, 32, 51, .10);
    text-align: center;
}

.registration-success-icon[b-12txd35q4s] {
    display: grid;
    place-items: center;
    width: 82px;
    height: 82px;
    margin: 0 auto 24px;
    border-radius: 50%;
    background: linear-gradient(135deg, #8f0001, #5b0001);
    color: #fff;
    font-size: 2.1rem;
    box-shadow: 0 12px 30px rgba(143, 0, 1, .24);
}

.registration-success h2[b-12txd35q4s] {
    margin: 0 0 10px;
    color: #172033;
    font-size: 1.75rem;
    font-weight: 900;
}

.registration-success p[b-12txd35q4s] {
    max-width: 580px;
    margin: 0 auto 28px;
    color: #64748b;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.8;
}

.registration-pending-status[b-12txd35q4s] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    max-width: 560px;
    margin: 0 auto 26px;
    padding: 15px 18px;
    border: 1px solid #f0d8a8;
    border-radius: 14px;
    background: #fffaf0;
    color: #7a5600;
    text-align: left;
}

.registration-pending-status > i[b-12txd35q4s] {
    flex: 0 0 auto;
    margin-top: 2px;
    color: #a66f00;
    font-size: 1.15rem;
}

.registration-pending-status > div[b-12txd35q4s] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.registration-pending-status strong[b-12txd35q4s] {
    color: #765000;
    font-size: .94rem;
    font-weight: 900;
}

.registration-pending-status span[b-12txd35q4s] {
    color: #8a6b28;
    font-size: .84rem;
    font-weight: 600;
    line-height: 1.55;
}

.registration-login-button[b-12txd35q4s] {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 12px 28px;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-size: 1rem;
    font-weight: 900;
    text-decoration: none;
}

.registration-login-button:hover[b-12txd35q4s] {
    background: #6d0001;
    color: #fff;
}

@media (max-width: 991.98px) {
    .register-shell[b-12txd35q4s] {
        grid-template-columns: 1fr;
    }

    .register-aside[b-12txd35q4s] {
        min-height: auto;
        padding: 38px 32px;
    }

    .register-logo-wrap[b-12txd35q4s] {
        justify-content: flex-start;
        margin-bottom: 22px;
    }

    .register-aside-description[b-12txd35q4s] {
        max-width: 680px;
        margin-bottom: 24px;
    }

    .register-benefits[b-12txd35q4s] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    .register-benefit-item[b-12txd35q4s] {
        align-items: flex-start;
        font-size: .9rem;
    }

    .register-aside-login[b-12txd35q4s] {
        margin-top: 28px;
    }

    .register-form-panel[b-12txd35q4s] {
        padding: 38px 32px 34px;
    }
}

@media (max-width: 767.98px) {
    .register-page[b-12txd35q4s] {
        padding: 30px 0 60px;
    }

    .register-benefits[b-12txd35q4s],
    .register-fields[b-12txd35q4s] {
        grid-template-columns: 1fr;
    }

    .register-field-full[b-12txd35q4s] {
        grid-column: auto;
    }

    .register-line-connect-card[b-12txd35q4s],
    .register-line-connected-card[b-12txd35q4s] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .register-line-connect-button[b-12txd35q4s],
    .register-line-reconnect-button[b-12txd35q4s] {
        grid-column: 1 / -1;
        width: 100%;
    }
}

@media (max-width: 575.98px) {
    .register-page[b-12txd35q4s] {
        padding: 24px 0 48px;
    }

    .register-header-title h1[b-12txd35q4s] {
        font-size: 1.2rem;
    }

    .register-breadcrumb[b-12txd35q4s] {
        font-size: .88rem;
    }

    .register-shell[b-12txd35q4s],
    .registration-success[b-12txd35q4s] {
        border-radius: 22px;
    }

    .register-aside[b-12txd35q4s] {
        padding: 30px 24px;
    }

    .register-logo-box[b-12txd35q4s] {
        width: 112px;
        height: 112px;
        border-radius: 25px;
    }

    .register-aside h2[b-12txd35q4s] {
        font-size: 1.6rem;
    }

    .register-aside-description[b-12txd35q4s] {
        font-size: .94rem;
    }

    .register-form-panel[b-12txd35q4s] {
        padding: 30px 22px 28px;
    }

    .register-form-heading h2[b-12txd35q4s] {
        font-size: 1.35rem;
    }

    .register-gender-options[b-12txd35q4s] {
        grid-template-columns: 1fr;
    }

    .register-pdpa-card[b-12txd35q4s] {
        padding: 16px;
    }

    .register-links[b-12txd35q4s] {
        flex-wrap: wrap;
    }

    .registration-success[b-12txd35q4s] {
        padding: 48px 22px;
    }

    .line-consent-backdrop[b-12txd35q4s] {
        align-items: end;
        padding: 0;
    }

    .line-consent-dialog[b-12txd35q4s] {
        width: 100%;
        max-height: 92vh;
        padding: 25px 18px 20px;
        border-radius: 24px 24px 0 0;
    }

    .line-consent-header[b-12txd35q4s] {
        padding-right: 25px;
        padding-left: 25px;
    }
}

/* =========================================================
   Existing member check
   ========================================================= */

.register-member-checking[b-12txd35q4s] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 2px;
    color: #7a8492;
    font-size: .82rem;
    font-weight: 700;
}

    .register-member-checking .spinner-border[b-12txd35q4s] {
        width: .9rem;
        height: .9rem;
        border-width: .12em;
    }

.register-existing-member[b-12txd35q4s] {
    margin-top: 5px;
    padding: 16px;
    border: 1px solid #ead0a1;
    border-radius: 16px;
    background: linear-gradient( 135deg, #fffaf0 0%, #fffdf8 100%);
    box-shadow: 0 8px 22px rgba(120, 82, 10, .07);
}

.register-existing-member-heading[b-12txd35q4s] {
    display: flex;
    align-items: center;
    gap: 11px;
}

.register-existing-member-icon[b-12txd35q4s] {
    display: grid;
    place-items: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: #fff0cf;
    color: #9a6500;
    font-size: 1.05rem;
}

.register-existing-member-heading > div[b-12txd35q4s] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.register-existing-member-heading strong[b-12txd35q4s] {
    color: #795000;
    font-size: .92rem;
    font-weight: 900;
}

.register-existing-member-heading span[b-12txd35q4s] {
    color: #9a7837;
    font-size: .78rem;
    font-weight: 650;
}

.register-existing-member-message[b-12txd35q4s] {
    margin-top: 12px;
    color: #66532f;
    font-size: .88rem;
    font-weight: 650;
    line-height: 1.65;
}

    .register-existing-member-message strong[b-12txd35q4s] {
        color: #7c5100;
        font-weight: 900;
    }

.register-existing-member-actions[b-12txd35q4s] {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 14px;
}

.register-existing-login-button[b-12txd35q4s],
.register-existing-new-button[b-12txd35q4s] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 11px;
    font-size: .82rem;
    font-weight: 850;
    line-height: 1.35;
    cursor: pointer;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.register-existing-login-button[b-12txd35q4s] {
    border: 1px solid #8f0001;
    background: linear-gradient( 135deg, #a40004, #780001);
    color: #fff;
    box-shadow: 0 5px 12px rgba(143, 0, 1, .15);
}

    .register-existing-login-button:hover[b-12txd35q4s] {
        transform: translateY(-1px);
        color: #fff;
        box-shadow: 0 7px 16px rgba(143, 0, 1, .22);
    }

.register-existing-new-button[b-12txd35q4s] {
    border: 1px solid #d8dde4;
    background: #fff;
    color: #4f5b6b;
}

    .register-existing-new-button:hover[b-12txd35q4s] {
        border-color: #b9c0ca;
        background: #f7f8fa;
        color: #273449;
    }

@media (max-width: 575.98px) {
    .register-existing-member-actions[b-12txd35q4s] {
        flex-direction: column;
    }

    .register-existing-login-button[b-12txd35q4s],
    .register-existing-new-button[b-12txd35q4s] {
        width: 100%;
    }
}

.register-optional[b-12txd35q4s] {
    color: #8a94a6;
    font-size: .82rem;
    font-weight: 600;
}

/* =========================================================
   Display name preview
   ========================================================= */

.register-name-preview-wrap[b-12txd35q4s] {
    grid-column: 1 / -1;
}

.register-name-preview[b-12txd35q4s] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ead3d5;
    border-radius: 13px;
    background: #fff8f8;
}

.register-name-preview-icon[b-12txd35q4s] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: #fbeaec;
    color: #9d0007;
    font-size: 1rem;
}

.register-name-preview-content[b-12txd35q4s] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

    .register-name-preview-content > span[b-12txd35q4s] {
        color: #7b8794;
        font-size: .78rem;
        font-weight: 700;
    }

    .register-name-preview-content > strong[b-12txd35q4s] {
        color: #8f0001;
        font-size: 1rem;
        font-weight: 800;
        line-height: 1.45;
        overflow-wrap: anywhere;
    }
/* /Components/Pages/RegisterSoul.razor.rz.scp.css */
.register-page[b-9y4wx4w68l] {
    min-height: 720px;
    padding: 42px 0 80px;
    background: #f4f6f8;
    color: #172033;
}

.register-header[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
    padding-bottom: 14px;
    border-bottom: 3px solid #8f0001;
}

.register-header-title[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    gap: 10px;
}

    .register-header-title i[b-9y4wx4w68l] {
        color: #8f0001;
        font-size: 1.35rem;
    }

    .register-header-title h1[b-9y4wx4w68l] {
        margin: 0;
        color: #8f0001;
        font-size: 1.35rem;
        font-weight: 900;
        letter-spacing: -.02em;
    }

.register-breadcrumb[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    color: #64748b;
    font-size: .96rem;
    font-weight: 700;
}

    .register-breadcrumb a[b-9y4wx4w68l] {
        color: #64748b;
        text-decoration: none;
    }

        .register-breadcrumb a:hover[b-9y4wx4w68l] {
            color: #8f0001;
        }

    .register-breadcrumb i[b-9y4wx4w68l] {
        color: #c3c9d2;
        font-size: .72rem;
    }

    .register-breadcrumb strong[b-9y4wx4w68l] {
        color: #172033;
        font-weight: 900;
    }

.register-shell[b-9y4wx4w68l] {
    display: grid;
    grid-template-columns: minmax(360px, .86fr) minmax(0, 1.14fr);
    width: 100%;
    overflow: hidden;
    border: 1px solid rgba(23, 32, 51, .07);
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 20px 60px rgba(23, 32, 51, .10);
}

.register-aside[b-9y4wx4w68l] {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 780px;
    overflow: hidden;
    padding: 48px 42px 38px;
    color: #fff;
    background: radial-gradient(circle at 88% 4%, rgba(255, 255, 255, .08), transparent 30%), linear-gradient(155deg, #a40004 0%, #7b0001 58%, #4a0001 100%);
}

    .register-aside[b-9y4wx4w68l]::before,
    .register-aside[b-9y4wx4w68l]::after {
        position: absolute;
        border: 1px solid rgba(255, 255, 255, .13);
        border-radius: 50%;
        content: "";
        pointer-events: none;
    }

    .register-aside[b-9y4wx4w68l]::before {
        top: -125px;
        right: -145px;
        width: 355px;
        height: 355px;
    }

    .register-aside[b-9y4wx4w68l]::after {
        bottom: -100px;
        left: -75px;
        width: 235px;
        height: 235px;
    }

.register-aside-top[b-9y4wx4w68l],
.register-aside-login[b-9y4wx4w68l] {
    position: relative;
    z-index: 1;
}

.register-logo-wrap[b-9y4wx4w68l] {
    display: flex;
    justify-content: center;
    margin: 0 0 30px;
}

.register-logo-box[b-9y4wx4w68l] {
    display: grid;
    place-items: center;
    width: 132px;
    height: 132px;
    overflow: hidden;
    border: 6px solid rgba(255, 255, 255, .92);
    border-radius: 30px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .20);
}

    .register-logo-box img[b-9y4wx4w68l] {
        display: block;
        width: 82%;
        height: 82%;
        object-fit: contain;
    }

.register-aside h2[b-9y4wx4w68l] {
    margin: 0 0 16px;
    color: #fff;
    font-size: 1.9rem;
    font-weight: 900;
    line-height: 1.35;
    letter-spacing: -.025em;
}

.register-aside-description[b-9y4wx4w68l] {
    max-width: 390px;
    margin: 0 0 32px;
    color: rgba(255, 255, 255, .82);
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.85;
}

.register-benefits[b-9y4wx4w68l] {
    display: grid;
    gap: 17px;
}

.register-benefit-item[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    gap: 13px;
    color: rgba(255, 255, 255, .94);
    font-size: .97rem;
    font-weight: 700;
    line-height: 1.55;
}

.register-benefit-icon[b-9y4wx4w68l] {
    display: grid;
    place-items: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: rgba(255, 255, 255, .14);
    font-size: 1rem;
}

.register-aside-login[b-9y4wx4w68l] {
    margin-top: 40px;
    color: rgba(255, 255, 255, .70);
    font-size: .94rem;
    font-weight: 600;
}

    .register-aside-login a[b-9y4wx4w68l] {
        margin-left: 4px;
        color: #fff;
        font-weight: 900;
        text-decoration: none;
    }

        .register-aside-login a:hover[b-9y4wx4w68l] {
            text-decoration: underline;
        }

.register-form-panel[b-9y4wx4w68l] {
    min-width: 0;
    padding: 44px 46px 38px;
}

.register-form-heading[b-9y4wx4w68l] {
    margin-bottom: 28px;
}

    .register-form-heading h2[b-9y4wx4w68l] {
        margin: 0 0 6px;
        color: #172033;
        font-size: 1.55rem;
        font-weight: 900;
        letter-spacing: -.025em;
    }

    .register-form-heading p[b-9y4wx4w68l] {
        margin: 0;
        color: #64748b;
        font-size: .96rem;
        font-weight: 600;
    }

.register-system-message[b-9y4wx4w68l],
.register-server-message[b-9y4wx4w68l] {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    padding: 12px 14px;
    border: 1px solid #efc0c4;
    border-radius: 13px;
    background: #fff3f4;
    color: #a31420;
    font-size: .86rem;
    font-weight: 750;
    line-height: 1.55;
}

.register-system-message[b-9y4wx4w68l] {
    margin-bottom: 22px;
}

.register-server-message[b-9y4wx4w68l] {
    margin-top: 22px;
}

.register-form-section[b-9y4wx4w68l] {
    padding-bottom: 28px;
}

    .register-form-section + .register-form-section[b-9y4wx4w68l] {
        padding-top: 28px;
        border-top: 1px solid #edf0f3;
    }

.register-form-section-last[b-9y4wx4w68l] {
    padding-bottom: 0;
}

.register-section-heading[b-9y4wx4w68l] {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-bottom: 20px;
}

.register-section-number[b-9y4wx4w68l] {
    display: grid;
    place-items: center;
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, #9c0003, #670001);
    color: #fff;
    font-size: .82rem;
    font-weight: 900;
    box-shadow: 0 5px 12px rgba(143, 0, 1, .18);
}

.register-section-heading h3[b-9y4wx4w68l] {
    margin: 1px 0 2px;
    color: #172033;
    font-size: 1.06rem;
    font-weight: 900;
}

.register-section-heading p[b-9y4wx4w68l] {
    margin: 0;
    color: #8a94a3;
    font-size: .8rem;
    font-weight: 600;
    line-height: 1.45;
}

.register-fields[b-9y4wx4w68l] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 20px;
}

.register-field-group[b-9y4wx4w68l] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 7px;
}

.register-field-full[b-9y4wx4w68l] {
    grid-column: 1 / -1;
}

.register-field-group > label[b-9y4wx4w68l] {
    padding-left: 1px;
    color: #273449;
    font-size: .92rem;
    font-weight: 900;
}

.required-mark[b-9y4wx4w68l] {
    color: #a40004;
}

.register-control-wrap[b-9y4wx4w68l] {
    position: relative;
    min-width: 0;
}

.register-control-icon[b-9y4wx4w68l] {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 16px;
    transform: translateY(-50%);
    color: #98a1af;
    font-size: .96rem;
    pointer-events: none;
}

.register-control-wrap:focus-within .register-control-icon[b-9y4wx4w68l] {
    color: #9f0003;
}

[b-9y4wx4w68l] .register-control {
    width: 100%;
    min-height: 52px;
    padding: 12px 15px;
    border: 1px solid #dfe4ea;
    border-radius: 13px;
    outline: 0;
    background: #fff;
    color: #172033;
    font: inherit;
    font-size: .96rem;
    font-weight: 550;
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

[b-9y4wx4w68l] .register-control-with-icon {
    padding-left: 45px;
}

[b-9y4wx4w68l] .register-control-with-action {
    padding-right: 50px;
}

[b-9y4wx4w68l] .register-control::placeholder {
    color: #aeb5c0;
    opacity: 1;
}

[b-9y4wx4w68l] .register-control:focus {
    border-color: #9f0003;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(159, 0, 3, .08);
}

[b-9y4wx4w68l] .register-control.invalid {
    border-color: #d2565e;
    background: #fff5f5;
    box-shadow: 0 0 0 2px rgba(194, 13, 25, .035);
}

[b-9y4wx4w68l] .register-control.valid.modified {
    border-color: #86c49a;
    background: #fbfffc;
}

[b-9y4wx4w68l] select.register-control {
    appearance: none;
    -webkit-appearance: none;
    padding-right: 46px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 6L8 10L12 6' stroke='%2364758B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 16px 16px;
}

.register-input-action[b-9y4wx4w68l] {
    position: absolute;
    z-index: 3;
    top: 50%;
    right: 8px;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    padding: 0;
    transform: translateY(-50%);
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #8b95a4;
    font-size: 1rem;
    cursor: pointer;
}

    .register-input-action:hover[b-9y4wx4w68l],
    .register-input-action:focus-visible[b-9y4wx4w68l] {
        outline: 0;
        background: #fff0f1;
        color: #8f0001;
    }

.register-field-hint[b-9y4wx4w68l] {
    color: #8a94a3;
    font-size: .76rem;
    font-weight: 600;
    line-height: 1.45;
}

[b-9y4wx4w68l] .validation-message {
    margin-top: 0;
    color: #b4232c;
    font-size: .8rem;
    font-weight: 750;
    line-height: 1.4;
}

.register-gender-options[b-9y4wx4w68l] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    width: 100%;
}

.register-gender-option[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 9px 12px;
    border: 1px solid #dfe4ea;
    border-radius: 13px;
    background: #fff;
    color: #475569;
    font-size: .91rem;
    font-weight: 750;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, color .15s ease;
}

    .register-gender-option:hover[b-9y4wx4w68l] {
        border-color: #d5a5a8;
        background: #fffafa;
    }

    .register-gender-option:has(input:checked)[b-9y4wx4w68l] {
        border-color: #a90008;
        background: #fff1f2;
        color: #8f0001;
    }

[b-9y4wx4w68l] .register-gender-option input {
    width: 17px;
    height: 17px;
    accent-color: #8f0001;
}

.password-strength[b-9y4wx4w68l] {
    min-height: 25px;
    padding: 1px 2px 0;
}

.password-strength-track[b-9y4wx4w68l] {
    height: 5px;
    overflow: hidden;
    border-radius: 999px;
    background: #e9edf2;
}

.password-strength-fill[b-9y4wx4w68l] {
    height: 100%;
    border-radius: inherit;
    transition: width .22s ease, background-color .22s ease;
}

.password-strength-text[b-9y4wx4w68l] {
    display: block;
    margin-top: 6px;
    font-size: .8rem;
    font-weight: 800;
}

.strength-very-weak[b-9y4wx4w68l] {
    color: #dc2626;
    background-color: #dc2626;
}

.strength-weak[b-9y4wx4w68l] {
    color: #ea580c;
    background-color: #ea580c;
}

.strength-medium[b-9y4wx4w68l] {
    color: #b77900;
    background-color: #d3a400;
}

.strength-strong[b-9y4wx4w68l] {
    color: #15803d;
    background-color: #16a34a;
}

.register-pdpa-card[b-9y4wx4w68l] {
    padding: 20px;
    border: 1px solid #e6d8da;
    border-radius: 18px;
    background: #fffafa;
}

.register-pdpa-title[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

    .register-pdpa-title > i[b-9y4wx4w68l] {
        display: grid;
        place-items: center;
        flex: 0 0 42px;
        width: 42px;
        height: 42px;
        border-radius: 13px;
        background: #fff0f1;
        color: #8f0001;
        font-size: 1.1rem;
    }

    .register-pdpa-title div[b-9y4wx4w68l] {
        display: grid;
        gap: 2px;
    }

    .register-pdpa-title strong[b-9y4wx4w68l] {
        color: #172033;
        font-size: .93rem;
        font-weight: 900;
    }

    .register-pdpa-title span[b-9y4wx4w68l] {
        color: #7b8798;
        font-size: .78rem;
        font-weight: 600;
    }

.register-pdpa-card > p[b-9y4wx4w68l] {
    margin: 0 0 15px;
    color: #5c6675;
    font-size: .84rem;
    line-height: 1.75;
}

.register-consent-check[b-9y4wx4w68l] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    color: #384354;
    font-size: .84rem;
    font-weight: 650;
    line-height: 1.65;
    cursor: pointer;
}

[b-9y4wx4w68l] .register-consent-check input {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 3px;
    accent-color: #8f0001;
}

.register-consent-check a[b-9y4wx4w68l] {
    color: #8f0001;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.register-consent-check strong[b-9y4wx4w68l] {
    color: #a40004;
}

.register-actions[b-9y4wx4w68l] {
    padding-top: 26px;
}

.register-submit-button[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 52px;
    padding: 13px 24px;
    border: 0;
    border-radius: 14px;
    background: linear-gradient(135deg, #8f0001 0%, #bb0009 100%);
    color: #fff;
    font-family: inherit;
    font-size: 1.03rem;
    font-weight: 900;
    box-shadow: 0 13px 28px rgba(143, 0, 1, .20);
    cursor: pointer;
    transition: transform .15s, box-shadow .15s, background .15s;
}

    .register-submit-button:hover:not(:disabled)[b-9y4wx4w68l] {
        transform: translateY(-1px);
        background: linear-gradient(135deg, #760001 0%, #a30007 100%);
        box-shadow: 0 16px 32px rgba(143, 0, 1, .26);
    }

    .register-submit-button:disabled[b-9y4wx4w68l] {
        cursor: not-allowed;
        opacity: .62;
    }

.register-links[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    padding-top: 20px;
    color: #64748b;
    font-size: .92rem;
    font-weight: 700;
}

    .register-links a[b-9y4wx4w68l] {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        color: #8f0001;
        font-weight: 900;
        text-decoration: none;
    }

        .register-links a:hover[b-9y4wx4w68l] {
            text-decoration: underline;
        }

    .register-links > span[b-9y4wx4w68l] {
        width: 1px;
        height: 18px;
        background: #d5dae1;
    }

/* LINE registration ------------------------------------------------------ */
.register-line-connect-card[b-9y4wx4w68l],
.register-line-connected-card[b-9y4wx4w68l] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    margin: 0 0 24px;
    padding: 16px;
    border-radius: 17px;
}

.register-line-connect-card[b-9y4wx4w68l] {
    border: 1px solid #42bf76;
    background: #effbf4;
}

.register-line-connected-card[b-9y4wx4w68l] {
    border: 1px solid #8bd7aa;
    background: #f3fcf6;
}

.register-line-icon[b-9y4wx4w68l] {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    border-radius: 13px;
    background: #06c755;
    color: #fff;
    font-size: .72rem;
    font-weight: 950;
    letter-spacing: -.02em;
}

.register-line-profile-image[b-9y4wx4w68l] {
    width: 50px;
    height: 50px;
    border: 2px solid rgba(6, 199, 85, .18);
    border-radius: 15px;
    object-fit: cover;
}

.register-line-connect-content[b-9y4wx4w68l] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

    .register-line-connect-content strong[b-9y4wx4w68l] {
        color: #173f29;
        font-size: .93rem;
        font-weight: 900;
    }

    .register-line-connect-content span[b-9y4wx4w68l] {
        color: #557062;
        font-size: .8rem;
        font-weight: 600;
        line-height: 1.45;
    }

    .register-line-connect-content small[b-9y4wx4w68l] {
        overflow: hidden;
        color: #728379;
        font-size: .76rem;
        font-weight: 650;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

.register-line-connected-title[b-9y4wx4w68l] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

    .register-line-connected-title i[b-9y4wx4w68l] {
        color: #09994a;
    }

.register-line-connect-button[b-9y4wx4w68l],
.register-line-reconnect-button[b-9y4wx4w68l] {
    min-height: 42px;
    padding: 10px 17px;
    border: 0;
    border-radius: 12px;
    font: inherit;
    font-size: .86rem;
    font-weight: 900;
    cursor: pointer;
}

.register-line-connect-button[b-9y4wx4w68l] {
    background: #06c755;
    color: #fff;
    box-shadow: 0 8px 20px rgba(6, 199, 85, .18);
}

    .register-line-connect-button:hover[b-9y4wx4w68l] {
        background: #05b84d;
    }

.register-line-reconnect-button[b-9y4wx4w68l] {
    border: 1px solid #b9dfc8;
    background: #fff;
    color: #148145;
}

    .register-line-reconnect-button:hover[b-9y4wx4w68l] {
        background: #edf9f1;
    }

.register-line-message[b-9y4wx4w68l] {
    margin-top: -8px;
    margin-bottom: 20px;
}

.register-line-fieldset[b-9y4wx4w68l] {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

    .register-line-fieldset:disabled[b-9y4wx4w68l] {
        opacity: .50;
    }

.line-consent-backdrop[b-9y4wx4w68l] {
    position: fixed;
    z-index: 2100;
    inset: 0;
    display: grid;
    place-items: center;
    overflow-y: auto;
    padding: 24px;
    background: rgba(10, 12, 18, .68);
    backdrop-filter: blur(3px);
}

.line-consent-dialog[b-9y4wx4w68l] {
    position: relative;
    width: min(100%, 560px);
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    padding: 28px;
    border: 1px solid rgba(23, 32, 51, .08);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
}

.line-consent-close[b-9y4wx4w68l] {
    position: absolute;
    z-index: 2;
    top: 14px;
    right: 14px;
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #f5f6f8;
    color: #4a5565;
    cursor: pointer;
}

    .line-consent-close:hover[b-9y4wx4w68l] {
        background: #eceff3;
        color: #8f0001;
    }

.line-consent-header[b-9y4wx4w68l] {
    padding: 4px 30px 20px;
    text-align: center;
}

.line-consent-brand-row[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 15px;
}

.line-consent-logo[b-9y4wx4w68l],
.line-consent-cmueaa-logo[b-9y4wx4w68l] {
    display: grid;
    place-items: center;
    width: 56px;
    height: 56px;
    border-radius: 15px;
}

.line-consent-logo[b-9y4wx4w68l] {
    background: #06c755;
    color: #fff;
    font-size: .78rem;
    font-weight: 950;
}

.line-consent-cmueaa-logo[b-9y4wx4w68l] {
    border: 1px solid #eedfe1;
    background: #fff;
}

    .line-consent-cmueaa-logo img[b-9y4wx4w68l] {
        width: 44px;
        height: 44px;
        object-fit: contain;
    }

.line-consent-brand-row > i[b-9y4wx4w68l] {
    color: #9aa3b0;
    font-size: 1.05rem;
}

.line-consent-header h3[b-9y4wx4w68l] {
    margin: 0 0 6px;
    color: #172033;
    font-size: 1.35rem;
    font-weight: 900;
}

.line-consent-header p[b-9y4wx4w68l] {
    margin: 0;
    color: #667386;
    font-size: .84rem;
    font-weight: 600;
    line-height: 1.6;
}

.line-consent-section-title[b-9y4wx4w68l] {
    margin-bottom: 10px;
    color: #8f0001;
    font-size: .84rem;
    font-weight: 900;
}

.line-consent-data-list[b-9y4wx4w68l] {
    display: grid;
    gap: 9px;
}

    .line-consent-data-list > div[b-9y4wx4w68l] {
        display: flex;
        align-items: flex-start;
        gap: 11px;
        padding: 13px 14px;
        border-radius: 13px;
        background: #fff5f5;
    }

    .line-consent-data-list i[b-9y4wx4w68l] {
        display: grid;
        place-items: center;
        flex: 0 0 31px;
        width: 31px;
        height: 31px;
        border: 1px solid #ebd1d4;
        border-radius: 9px;
        background: #fff;
        color: #8f0001;
    }

    .line-consent-data-list span[b-9y4wx4w68l] {
        display: flex;
        flex-direction: column;
        color: #6a7380;
        font-size: .79rem;
        font-weight: 600;
        line-height: 1.5;
    }

    .line-consent-data-list strong[b-9y4wx4w68l] {
        color: #273449;
        font-size: .87rem;
        font-weight: 900;
    }

.line-consent-purpose[b-9y4wx4w68l] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 12px;
    padding: 13px 14px;
    border-radius: 13px;
    background: #f6f7f9;
}

    .line-consent-purpose strong[b-9y4wx4w68l] {
        color: #4b5563;
        font-size: .83rem;
        font-weight: 900;
    }

    .line-consent-purpose span[b-9y4wx4w68l] {
        color: #717b89;
        font-size: .78rem;
        font-weight: 600;
        line-height: 1.55;
    }

.line-consent-policy-copy[b-9y4wx4w68l] {
    margin: 14px 0;
    color: #737d8b;
    font-size: .77rem;
    font-weight: 600;
    line-height: 1.6;
}

.line-consent-check[b-9y4wx4w68l] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 13px;
    border: 1px solid #dfe4ea;
    border-radius: 13px;
    color: #404b5c;
    font-size: .8rem;
    font-weight: 650;
    line-height: 1.6;
    cursor: pointer;
}

    .line-consent-check input[b-9y4wx4w68l] {
        flex: 0 0 auto;
        width: 18px;
        height: 18px;
        margin-top: 3px;
        accent-color: #06c755;
    }

    .line-consent-check strong[b-9y4wx4w68l] {
        color: #a40004;
    }

.line-consent-submit[b-9y4wx4w68l],
.line-consent-skip[b-9y4wx4w68l] {
    width: 100%;
    min-height: 48px;
    margin-top: 14px;
    border: 0;
    border-radius: 13px;
    font: inherit;
    font-size: .92rem;
    font-weight: 900;
    cursor: pointer;
}

.line-consent-submit[b-9y4wx4w68l] {
    background: #06c755;
    color: #fff;
}

    .line-consent-submit:hover:not(:disabled)[b-9y4wx4w68l] {
        background: #05b84d;
    }

    .line-consent-submit:disabled[b-9y4wx4w68l] {
        background: #dfe4e9;
        color: #a5adb7;
        cursor: not-allowed;
    }

.line-consent-skip[b-9y4wx4w68l] {
    margin-top: 7px;
    background: transparent;
    color: #8f0001;
}

    .line-consent-skip:hover[b-9y4wx4w68l] {
        background: #fff3f4;
    }

.registration-line-linked-status[b-9y4wx4w68l] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: -7px auto 20px;
    padding: 9px 14px;
    border: 1px solid #b7e4c8;
    border-radius: 999px;
    background: #f0fbf4;
    color: #187744;
    font-size: .84rem;
    font-weight: 850;
}

.registration-success[b-9y4wx4w68l] {
    width: 100%;
    padding: 68px 36px;
    border: 1px solid rgba(23, 32, 51, .07);
    border-radius: 28px;
    background: #fff;
    box-shadow: 0 20px 60px rgba(23, 32, 51, .10);
    text-align: center;
}

.registration-success-icon[b-9y4wx4w68l] {
    display: grid;
    place-items: center;
    width: 82px;
    height: 82px;
    margin: 0 auto 24px;
    border-radius: 50%;
    background: linear-gradient(135deg, #8f0001, #5b0001);
    color: #fff;
    font-size: 2.1rem;
    box-shadow: 0 12px 30px rgba(143, 0, 1, .24);
}

.registration-success h2[b-9y4wx4w68l] {
    margin: 0 0 10px;
    color: #172033;
    font-size: 1.75rem;
    font-weight: 900;
}

.registration-success p[b-9y4wx4w68l] {
    max-width: 580px;
    margin: 0 auto 28px;
    color: #64748b;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.8;
}

.registration-pending-status[b-9y4wx4w68l] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    max-width: 560px;
    margin: 0 auto 26px;
    padding: 15px 18px;
    border: 1px solid #f0d8a8;
    border-radius: 14px;
    background: #fffaf0;
    color: #7a5600;
    text-align: left;
}

    .registration-pending-status > i[b-9y4wx4w68l] {
        flex: 0 0 auto;
        margin-top: 2px;
        color: #a66f00;
        font-size: 1.15rem;
    }

    .registration-pending-status > div[b-9y4wx4w68l] {
        display: flex;
        flex-direction: column;
        gap: 3px;
    }

    .registration-pending-status strong[b-9y4wx4w68l] {
        color: #765000;
        font-size: .94rem;
        font-weight: 900;
    }

    .registration-pending-status span[b-9y4wx4w68l] {
        color: #8a6b28;
        font-size: .84rem;
        font-weight: 600;
        line-height: 1.55;
    }

.registration-login-button[b-9y4wx4w68l] {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 12px 28px;
    border-radius: 999px;
    background: #8f0001;
    color: #fff;
    font-size: 1rem;
    font-weight: 900;
    text-decoration: none;
}

    .registration-login-button:hover[b-9y4wx4w68l] {
        background: #6d0001;
        color: #fff;
    }

@media (max-width: 991.98px) {
    .register-shell[b-9y4wx4w68l] {
        grid-template-columns: 1fr;
    }

    .register-aside[b-9y4wx4w68l] {
        min-height: auto;
        padding: 38px 32px;
    }

    .register-logo-wrap[b-9y4wx4w68l] {
        justify-content: flex-start;
        margin-bottom: 22px;
    }

    .register-aside-description[b-9y4wx4w68l] {
        max-width: 680px;
        margin-bottom: 24px;
    }

    .register-benefits[b-9y4wx4w68l] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    .register-benefit-item[b-9y4wx4w68l] {
        align-items: flex-start;
        font-size: .9rem;
    }

    .register-aside-login[b-9y4wx4w68l] {
        margin-top: 28px;
    }

    .register-form-panel[b-9y4wx4w68l] {
        padding: 38px 32px 34px;
    }
}

@media (max-width: 767.98px) {
    .register-page[b-9y4wx4w68l] {
        padding: 30px 0 60px;
    }

    .register-benefits[b-9y4wx4w68l],
    .register-fields[b-9y4wx4w68l] {
        grid-template-columns: 1fr;
    }

    .register-field-full[b-9y4wx4w68l] {
        grid-column: auto;
    }

    .register-line-connect-card[b-9y4wx4w68l],
    .register-line-connected-card[b-9y4wx4w68l] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .register-line-connect-button[b-9y4wx4w68l],
    .register-line-reconnect-button[b-9y4wx4w68l] {
        grid-column: 1 / -1;
        width: 100%;
    }
}

@media (max-width: 575.98px) {
    .register-page[b-9y4wx4w68l] {
        padding: 24px 0 48px;
    }

    .register-header-title h1[b-9y4wx4w68l] {
        font-size: 1.2rem;
    }

    .register-breadcrumb[b-9y4wx4w68l] {
        font-size: .88rem;
    }

    .register-shell[b-9y4wx4w68l],
    .registration-success[b-9y4wx4w68l] {
        border-radius: 22px;
    }

    .register-aside[b-9y4wx4w68l] {
        padding: 30px 24px;
    }

    .register-logo-box[b-9y4wx4w68l] {
        width: 112px;
        height: 112px;
        border-radius: 25px;
    }

    .register-aside h2[b-9y4wx4w68l] {
        font-size: 1.6rem;
    }

    .register-aside-description[b-9y4wx4w68l] {
        font-size: .94rem;
    }

    .register-form-panel[b-9y4wx4w68l] {
        padding: 30px 22px 28px;
    }

    .register-form-heading h2[b-9y4wx4w68l] {
        font-size: 1.35rem;
    }

    .register-gender-options[b-9y4wx4w68l] {
        grid-template-columns: 1fr;
    }

    .register-pdpa-card[b-9y4wx4w68l] {
        padding: 16px;
    }

    .register-links[b-9y4wx4w68l] {
        flex-wrap: wrap;
    }

    .registration-success[b-9y4wx4w68l] {
        padding: 48px 22px;
    }

    .line-consent-backdrop[b-9y4wx4w68l] {
        align-items: end;
        padding: 0;
    }

    .line-consent-dialog[b-9y4wx4w68l] {
        width: 100%;
        max-height: 92vh;
        padding: 25px 18px 20px;
        border-radius: 24px 24px 0 0;
    }

    .line-consent-header[b-9y4wx4w68l] {
        padding-right: 25px;
        padding-left: 25px;
    }
}

/* =========================================================
   Existing member check
   ========================================================= */

.register-member-checking[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 2px;
    color: #7a8492;
    font-size: .82rem;
    font-weight: 700;
}

    .register-member-checking .spinner-border[b-9y4wx4w68l] {
        width: .9rem;
        height: .9rem;
        border-width: .12em;
    }

.register-existing-member[b-9y4wx4w68l] {
    margin-top: 5px;
    padding: 16px;
    border: 1px solid #ead0a1;
    border-radius: 16px;
    background: linear-gradient( 135deg, #fffaf0 0%, #fffdf8 100%);
    box-shadow: 0 8px 22px rgba(120, 82, 10, .07);
}

.register-existing-member-heading[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    gap: 11px;
}

.register-existing-member-icon[b-9y4wx4w68l] {
    display: grid;
    place-items: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: #fff0cf;
    color: #9a6500;
    font-size: 1.05rem;
}

.register-existing-member-heading > div[b-9y4wx4w68l] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 1px;
}

.register-existing-member-heading strong[b-9y4wx4w68l] {
    color: #795000;
    font-size: .92rem;
    font-weight: 900;
}

.register-existing-member-heading span[b-9y4wx4w68l] {
    color: #9a7837;
    font-size: .78rem;
    font-weight: 650;
}

.register-existing-member-message[b-9y4wx4w68l] {
    margin-top: 12px;
    color: #66532f;
    font-size: .88rem;
    font-weight: 650;
    line-height: 1.65;
}

    .register-existing-member-message strong[b-9y4wx4w68l] {
        color: #7c5100;
        font-weight: 900;
    }

.register-existing-member-actions[b-9y4wx4w68l] {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 14px;
}

.register-existing-login-button[b-9y4wx4w68l],
.register-existing-new-button[b-9y4wx4w68l] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 11px;
    font-size: .82rem;
    font-weight: 850;
    line-height: 1.35;
    cursor: pointer;
    transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.register-existing-login-button[b-9y4wx4w68l] {
    border: 1px solid #8f0001;
    background: linear-gradient( 135deg, #a40004, #780001);
    color: #fff;
    box-shadow: 0 5px 12px rgba(143, 0, 1, .15);
}

    .register-existing-login-button:hover[b-9y4wx4w68l] {
        transform: translateY(-1px);
        color: #fff;
        box-shadow: 0 7px 16px rgba(143, 0, 1, .22);
    }

.register-existing-new-button[b-9y4wx4w68l] {
    border: 1px solid #d8dde4;
    background: #fff;
    color: #4f5b6b;
}

    .register-existing-new-button:hover[b-9y4wx4w68l] {
        border-color: #b9c0ca;
        background: #f7f8fa;
        color: #273449;
    }

@media (max-width: 575.98px) {
    .register-existing-member-actions[b-9y4wx4w68l] {
        flex-direction: column;
    }

    .register-existing-login-button[b-9y4wx4w68l],
    .register-existing-new-button[b-9y4wx4w68l] {
        width: 100%;
    }
}

.register-optional[b-9y4wx4w68l] {
    color: #8a94a6;
    font-size: .82rem;
    font-weight: 600;
}

/* =========================================================
   Display name preview
   ========================================================= */

.register-name-preview-wrap[b-9y4wx4w68l] {
    grid-column: 1 / -1;
}

.register-name-preview[b-9y4wx4w68l] {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ead3d5;
    border-radius: 13px;
    background: #fff8f8;
}

.register-name-preview-icon[b-9y4wx4w68l] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: #fbeaec;
    color: #9d0007;
    font-size: 1rem;
}

.register-name-preview-content[b-9y4wx4w68l] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

    .register-name-preview-content > span[b-9y4wx4w68l] {
        color: #7b8794;
        font-size: .78rem;
        font-weight: 700;
    }

    .register-name-preview-content > strong[b-9y4wx4w68l] {
        color: #8f0001;
        font-size: 1rem;
        font-weight: 800;
        line-height: 1.45;
        overflow-wrap: anywhere;
    }
/* /Components/Pages/WebLink.razor.rz.scp.css */
.weblink-page[b-tgty36yig6] {
    min-height: 100vh;
    background: #f5f6f8;
    color: #172033;
}

.weblink-page-hero[b-tgty36yig6] {
    padding: 38px 0 0;
    background: #fff;
}

.weblink-page-title[b-tgty36yig6] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px;
    color: #8f0001;
    font-size: 1.45rem;
    font-weight: 900;
    line-height: 1.2;
}

.weblink-page-title i[b-tgty36yig6] {
    font-size: 1.1rem;
}

.weblink-page-divider[b-tgty36yig6] {
    height: 2px;
    margin-top: 18px;
    border-radius: 999px;
    background: #8f0001;
}

.weblink-section[b-tgty36yig6] {
    padding: 48px 0 72px;
}

.weblink-category-block[b-tgty36yig6] {
    margin-bottom: 52px;
}

.weblink-category-head[b-tgty36yig6] {
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid #f0f0f0;
}

.weblink-label[b-tgty36yig6] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #8f0001;
    font-size: .85rem;
    font-weight: 900;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.weblink-category-head h2[b-tgty36yig6] {
    margin: 6px 0 0;
    color: #172033;
    font-size: clamp(1.3rem, 2.5vw, 1.6rem);
    font-weight: 900;
}

.education-link-card[b-tgty36yig6] {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid #e7eaf0;
    border-radius: 18px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    box-shadow: 0 4px 20px rgba(23, 32, 51, .08);
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.education-link-card:hover[b-tgty36yig6] {
    border-color: rgba(143, 0, 1, .22);
    color: inherit;
    transform: translateY(-5px);
    box-shadow: 0 16px 40px rgba(23, 32, 51, .14);
}

.education-link-card:focus-visible[b-tgty36yig6] {
    outline: 3px solid rgba(143, 0, 1, .22);
    outline-offset: 3px;
}

.education-link-image[b-tgty36yig6] {
    position: relative;
    height: 180px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.education-link-overlay[b-tgty36yig6] {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            160deg,
            rgba(0, 0, 0, .08) 0%,
            rgba(0, 0, 0, .38) 100%);
}

.education-link-logo[b-tgty36yig6] {
    position: absolute;
    bottom: -24px;
    left: 20px;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    overflow: hidden;
    padding: 5px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .18);
}

.education-link-logo img[b-tgty36yig6] {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: contain;
}

.education-link-body[b-tgty36yig6] {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 36px 20px 20px;
}

.education-link-tag[b-tgty36yig6] {
    margin-bottom: 6px;
    color: #8f0001;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.education-link-body h3[b-tgty36yig6] {
    margin: 0 0 3px;
    color: #172033;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.35;
}

.education-link-body p[b-tgty36yig6] {
    margin: 0 0 14px;
    color: #64748b;
    font-size: .83rem;
}

.education-link-url[b-tgty36yig6] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid #f0f0f0;
    color: #8f0001;
    font-size: .8rem;
    font-weight: 700;
}

.education-link-arrow[b-tgty36yig6] {
    margin-left: auto;
    transition: transform .2s ease;
}

.education-link-card:hover .education-link-arrow[b-tgty36yig6] {
    transform: translate(3px, -2px);
}

@media (max-width: 767.98px) {
    .weblink-page-hero[b-tgty36yig6] {
        padding-top: 30px;
    }

    .weblink-section[b-tgty36yig6] {
        padding: 38px 0 56px;
    }

    .education-link-image[b-tgty36yig6] {
        height: 200px;
    }
}

@media (max-width: 575.98px) {
    .education-link-image[b-tgty36yig6] {
        height: 180px;
    }
}
