/* 공통 로딩 마스크 */
#ajax-mask{
    position: fixed;
    inset: 0;
    z-index: 2000;

    display: none;           /* 기본 숨김 */
    align-items: center;
    justify-content: center;

    background:rgba(255,255,255,0.55); /* 어둡게 마스크 */
    backdrop-filter: blur(6px);       /* 블러 */
    -webkit-backdrop-filter: blur(6px);

    /* 클릭/터치 막기 */
    pointer-events: auto;
}

#ajax-mask.show{
    display: flex;
}pulse-green

.ajax-mask__panel{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;

    padding: 14px 16px;
    border-radius: 14px;

    background: rgba(255,255,255,0.92);
    border: 1px solid rgba(226,232,240,0.9);
    box-shadow: 0 18px 36px rgba(15,23,42,0.18);

    min-width: 140px;
}

.ajax-mask__text{
    font-size: 13px;
    color: rgba(15,23,42,0.75);
    font-weight: 600;
}

/* 스피너 */
.ajax-mask__spinner{
    width: 28px;
    height: 28px;
    border-radius: 50%;

    border: 3px solid rgba(148,163,184,0.35);
    border-top-color: rgba(46,125,246,0.95);

    animation: ajaxspin 0.9s linear infinite;
}

@keyframes ajaxspin{
    from{ transform: rotate(0deg); }
    to{ transform: rotate(360deg); }
}