/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 페이지 레이아웃 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.bodyWrap {
    display: flex;
    flex-direction: column;
    height: 100vh;
    width: 900px;
    margin: 0 auto;
    box-sizing: border-box;
    letter-spacing: -0.04em;
    background-color: white;
}

main {
    padding: 0 15px;
    flex: 1;
    display: flex;
    flex-direction: column;
    box-shadow: 5px 5px 30px rgb(0 0 0 / 20%);
    margin-top: -20px;
}

.mainWrap {
    flex: 1;
    padding: 40px 0;
    margin-bottom: 50px !important;
}





/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 페이지 헤더로고 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.pageTopWrap {
    position: relative;
    max-width: 900px;
    width: 100%;
    z-index: 1;
    box-sizing: border-box;
    box-shadow: rgb(0 0 0 / 15%) 0px 2px 16px 1px;
    background-color: rgb(255, 255, 255);
    border-radius: 0 0 10px 10px;
    -webkit-border-radius: 0 0 10px 10px;
    -moz-border-radius: 0 0 10px 10px;
    -ms-border-radius: 0 0 10px 10px;
    -o-border-radius: 0 0 10px 10px;
}

.pageTopWrap h1 {
    display: flex;
    justify-content: center;
}

/* .topLogo {
    padding-top: 10px;
    width: 160px;
} */


/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* Marquee (페이지 헤더 경고문구)*/
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

/* 텍스트 marquee */
.marquee-container {
    position: relative;
    overflow: hidden;
    height: 30px;
}

.marquee {
    position: absolute;
    width: auto;
    right: 0;
    top: 0;
    text-align: right;
}

.marquee-text {
    padding: 10px;
    display: inline-block;
    position: relative;
    width: auto;
    white-space: nowrap;
    color: rgb(72, 74, 93);
    letter-spacing: 1px;
    font-size: 13px;
}









/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 페이지 타이틀 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

/* .pageDescriptionHighLight {
    color: #0e8962;
} */

.pageDescription {
    font-size: 22px;
    margin-top: 10px;
}

.pageDescription:nth-child(2) {
    margin-bottom: 40px;
}


/* 추가 설명 박스 (회색) */
.pageTopCommnet {
    line-height: 25px;
    background-color: rgb(249, 249, 249);
    padding: 10px 8px;
    margin-bottom: 10px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
}





/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 채널톡 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.Launcherstyled__Wrapper-oef45p-0 {
    margin-right: 10px;
    margin-bottom: 60px;
}

.ivXZTh {
    position: fixed !important;
    z-index: 10000000 !important;
    display: block !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    overflow: visible !important;
    font-family: NotoSansKR, NotoSansJP, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "맑은 고딕", "Yu Gothic", "Segoe UI", Roboto, system-ui, sans-serif !important;
    background: transparent !important;
    bottom: calc(24px + env(safe-area-inset-bottom)) !important;
    right: 24px !important;
}





/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 입력항목 타이틀 로고 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.titleNameWrap {
    margin-bottom: 5px;
    width: 100%;
}

.trafficLightWrap {
    display: flex;
    padding-bottom: 10px;
}

.trafficLightA {
    background-color: #0070C0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}

.trafficLightB {
    background-color: #00B050;
    width: 7px;
    height: 7px;
    margin-right: 3px;
    margin-left: 3px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}

.trafficLightC {
    background-color: #FFC000;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}





/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 페이지 첫 로고 Fade-in/out */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

/* 첫페이지 원터치 서비스 로고 */
.fadeInOut {
    background-color: #ffffff;
    position: absolute;
    z-index: 9999;
    height: 100vh;
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    opacity: 0;
    animation: fadeIn ease-in 2s;
    animation-fill-mode: forwards;
    animation-duration: 1s;
    pointer-events: none;
    -webkit-animation: fadeIn ease-in 2s;
    background-image: url("/image/Hospital_Logo/fadeInLogo/fadein.png");
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: 50% 40%;
}


/* 첫페이지 원터치 서비스 로고 */
/* .fadeIn div {
    width: 300px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -150px;
    margin-top: -200px;
    background-image: url("../img/fadein.png");
    
} */


/* 첫페이지 원터치 서비스 로고 */
@keyframes fadeIn {
    from {
        opacity: 1;
    }

    25% {
        opacity: 1;
    }

    75% {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}


/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 로딩바 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.loadingBarBGC {
    position: fixed;
    background: rgba(0, 0, 0, .2);
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 102;
    display: none;
}

.loaderBar,
.loaderBar:before,
.loaderBar:after {
    background: #0a98f0;
    -webkit-animation: load1 1s infinite ease-in-out;
    animation: load1 1s infinite ease-in-out;
    width: 1em;
    height: 4em;
}

.loaderBar {
    color: #0a98f0;
    text-indent: -9999em;
    left: 50%;
    top: 50%;
    right: 50%;
    bottom: 50%;
    position: fixed;
    font-size: 11px;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation-delay: -0.16s;
    animation-delay: -0.16s;
    display: none;
    z-index: 1002;
}

.loaderBar:before,
.loaderBar:after {
    position: absolute;
    top: 0;
    content: '';
}

.loaderBar:before {
    left: -1.5em;
    -webkit-animation-delay: -0.32s;
    animation-delay: -0.32s;
}

.loaderBar:after {
    left: 1.5em;
}

@-webkit-keyframes load1 {

    0%,
    80%,
    100% {
        box-shadow: 0 0;
        height: 4em;
    }

    40% {
        box-shadow: 0 -2em;
        height: 5em;
    }
}

@keyframes load1 {

    0%,
    80%,
    100% {
        box-shadow: 0 0;
        height: 4em;
    }

    40% {
        box-shadow: 0 -2em;
        height: 5em;
    }
}


































/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 팝업 스타일 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */




/* 팝업 상단 타이틀 */

.overlayWrap h2 {
    font-size: 27px;
    /* color: #00563B; */
    /* border-bottom: 1px solid #00563B; */
    padding-bottom: 20px;
    margin-bottom: 20px;
    text-align: center;
}



/* 팝업 배경 */
.overlay_home, /* 2025.05.26 (수정) */ 
.overlay_loginOut,  /* 2025.05.26 (수정) */ 
.overlayUpload,
.overlay_A,
.overlay_B,
.overlay_C,
.overlay_D,
.overlay_E,
.overlay_F,
.overlay_G,
.overlay_H,
.overlay_I,
.overlay_J,
.overlay_K,
.overlay_L,
.overlay_M,
.overlay_N,
.overlay_O,
.overlay_P,
.overlay_Q{
    position: fixed;
    background: rgba(0, 0, 0, .87);
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 200;
    display: none;
}



/* 팝업 배경위에 팝업 */
.overlayOver_A,
.overlayOver_B,
.overlayOver_C {
    position: fixed;
    background: rgba(0, 0, 0, .87);
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 20000;
    display: none;
}




/*  팝업 버튼 랩핑 */
.overlayButtonWrap {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 62px;
}



/* 이미지 업로드 */
.overlayUploadWrap {
    background: rgba(255, 255, 255);
    box-shadow: 5px 5px 30px rgb(0 0 0 / 20%);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    padding: 22px 15px 0px;
    box-sizing: border-box;
    border-radius: 13px;
    overflow: hidden;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}



.overlayFullWrapForm {
    overflow: auto;
    background: #fff;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    max-height: 94%;
    padding: 22px 15px 20px 15px;
    box-sizing: border-box;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
}


.overlayWrap {
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 700px;
    max-height: 80%;
    padding: 22px 15px 70px;
    box-sizing: border-box;
    overflow: hidden;
    border-radius: 13px;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);

    /* -webkit-overflow-scrolling: auto;  */
}

.overlayWrapper {
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 700px;
    max-height: 80%;
    padding: 22px 15px 70px;
    box-sizing: border-box;
    overflow: hidden;
    border-radius: 13px;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);

    /* -webkit-overflow-scrolling: auto;  */
}

/* 추가 2025.03.17 */
.overlayFullWrapFormA {

    overflow: auto;
    background: #fff;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 22px 15px 20px 15px;
    width: 900px;
    height: 100vh;
    max-height: 100%;
    top: 50%;
    margin: 0 auto;
    box-sizing: border-box;
    z-index: 10000;

}


/*  타이틀  */
.overlayFullWrapFormA h2,
.overlayUploadWrap h2,
.overlayWrapBarcode h2,
.overlayFullWrapForm h2,
.overlayWrap h2 {
    font-size: 27px;
    /* color: #00563B; */
    /* border-bottom: 1px solid #00563B; */
    padding-bottom: 20px;
    margin-bottom: 20px;
    text-align: center;
}














/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 페이지 하단 버튼 랩핑 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */




/* 페이지 버튼 랩핑*/
.bottomButtonWrap {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    max-width: 900px;
    margin: 0 auto;
    height: 62px;
    z-index: 100;
}






/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 페이지, 팝업 버튼 스타일 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */


/*  페이지 (100% FullButton) */
.pgFullBtn_A,
.pgFullBtn_B{
    position: fixed;
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
    left: 0;
    right: 0;
    bottom: 0;
    /* background: #00563B; */
    text-align: center;
    height: 67px;
    line-height: 60px;
    font-size: 24px;
    border: none;
    color: #fff;
    cursor: pointer;
    z-index: 90;
    height: 62px;
    font-weight: bolder;
}



/*  페이지 (100% FullButton / disabled) */
.pgFullBtn_A:disabled {
    background-color: #ccc;
    cursor: pointer;
}



/*  팝업 (100% FullButton) */
.popupFullBtn_Home, /* 2025.05.26 (수정) */  
.popupFullBtn_A,
.popupFullBtn_B,
.popupFullBtn_C,
.popupFullBtn_D,
.popupFullBtn_E,
.popupFullBtn_F {
    width: 100%;
    height: 62px;
    border: none;
    box-sizing: border-box;
    font-size: 24px;
    color: white;
    -webkit-border-radius: 0 0 13px 13px;
    -moz-border-radius: 0 0 13px 13px;
    -ms-border-radius: 0 0 13px 13px;
    -o-border-radius: 0 0 13px 13px;
}



/* 페이지, 팝업 */
/*  50% - 좌측/HalfButton */
.popupLeftBtn_Home,  /* 2025.05.26 (수정) */  
.popupLoginLeftBtn,  /* 2025.05.26 (수정) */ 
.pgHalfLeftBtn_A,
.pgHalfLeftBtn_B,
.popupLeftBtn_A,
.popupLeftBtn_B,
.popupLeftBtn_C,
.popupLeftBtn_D,
.popupLeftBtn_E,
.popupLeftBtn_F,
.popupLeftBtn_G,
.popupLeftBtn_H,
.popupLeftBtn_I,
.popupLeftBtn_J,
.popupLeftBtn_K,
.popupLeftBtn_L,
.popupLeftBtn_M,
.popupLeftBtn_N,
.popupLeftBtn_O,
.popupLeftBtn_P,
.popupLeftBtn_Q {
    width: 50%;
    height: 62px;
    border: none;
    background: white;
    border: 1px solid #e7e7e7;
    box-sizing: border-box;
    font-size: 24px;
    /* color: #00563B; */
    font-weight: bolder;
    color: black;
}

/* 페이지, 팝업 */
/*  50% - 우측/HalfButton */
.popupRightBtn_Home,  /* 2025.05.26 (수정) */ 
.popupLoginRightBtn,  /* 2025.05.26 (수정) */ 
.pgHalfRightBtn_A,
.pgHalfRightBtn_B,
.popupRightBtn_A,
.popupRightBtn_B,
.popupRightBtn_C,
.popupRightBtn_D,
.popupRightBtn_E,
.popupRightBtn_F,
.popupRightBtn_G,
.popupRightBtn_H,
.popupRightBtn_I,
.popupRightBtn_J,
.popupRightBtn_K,
.popupRightBtn_L,
.popupRightBtn_M,
.popupRightBtn_N,
.popupRightBtn_O,
.popupRightBtn_P,
.popupRightBtn_Q {
    width: 50%;
    height: 62px;
    border: none;
    /* background-color: #00563B; */
    font-size: 24px;
    color: white;
    font-weight: bolder;
}

/* 페이지, 팝업 */
/*  50% - 우측/HalfButton/Disabled */
.pgHalfRightBtn_A:disabled,
.pgHalfRightBtn_B:disabled,
.popupRightBtn_A:disabled,
.popupRightBtn_B:disabled {
    background-color: #ccc;
    cursor: pointer;
}

















/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 클리어 버튼 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.clear-btn {
    position: absolute;
    top: 14px;
    right: 5px;
    font-size: 20px;
    color: rgb(222, 223, 224);
}


.authNumberClearButton {
    position: absolute;
    top: 14px;
    right: 40%;
    font-size: 20px;
    color: rgb(222, 223, 224);
}


.authPhoneClearButton {
    position: absolute;
    top: 14px;
    right: 5px;
    font-size: 20px;
    color: rgb(222, 223, 224);
}



/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 주민등록번호 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.birthSixDigits {
    border: none;
    font-size: 20px;
    outline: 0;
    width: 100%;
    box-sizing: border-box;
    height: 50px;
    text-align: center;
    background: none;
}

.juminFront {
    border: none;
    font-size: 20px;
    outline: 0;
    width: 45%;
    box-sizing: border-box;
    height: 50px;
    text-align: center;
    background: none;
}

.juminBack {
    border: none;
    font-size: 20px;
    outline: 0;
    width: 50%;
    box-sizing: border-box;
    height: 50px;
    text-align: left;
    background: none;
}

.hyphen {
    width: 5%;
    box-sizing: border-box;
    text-align: center;
    display: inline-block;
    padding-top: 15px;
}

.hyphenA {
    width: 5%;
    box-sizing: border-box;
    text-align: center;
    display: inline-block;
    padding-top: 15px;
}

.maskingSee {
    position: absolute;
    top: 65px;
    right: 1%;
    font-size: 16px;
    /* color: #00563B;
    border: 1px solid #00563B; */
    padding: 5px 8px;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    -o-border-radius: 20px;
}








/* 팝업 안내 글 */
.textGuide {
    line-height: 25px;
    margin-bottom: 20px;
    text-align: center;
}

/* 추가 설명 박스 (회색) */
.commentBox {
    font-size: 14px;
    line-height: 20px;
    margin: 0 auto;
    margin-top: -10px;
    background-color: rgb(249, 249, 249);
    padding: 10px 8px;
    margin-top: 10px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
}

/* 추가 설명 박스 (회색) */
.commentBoxLoginInfoA,
.commentBoxLoginInfoB {
    text-align: center;
    margin-top: -10px;
    background-color: rgb(249, 249, 249);
    padding: 10px 8px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
}

/* 추가 설명 박스 (회색) */
.commentBoxLoginInfo {
    text-align: center;
    margin-top: 10px;
    background-color: rgb(249, 249, 249);
    padding: 10px 0px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
}


/* 입력폼 클리어 버튼*/
.inputForm {
    position: relative;
    display: flex;
}

/* 입력폼 클리어 버튼*/
.inputFormWrap {
    border-bottom: 1px solid #cccbcb;
    margin-bottom: 25px;
    display: flex;
    justify-content: space-between;
    position: relative;
    display: flex;
}

/* index페이지에만 스타일 적용 */
.titleNameWrapIndex {
    margin-bottom: 5px;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 5px;
}

/* index페이지에 외 스타일 적용 */
/* .titleNameWrap{
    margin-bottom: 5px;
} */

.FullInputStyle {
    width: 100%;
    height: 50px;
    background: none;
    border: none;
    font-size: 20px;
    color: #222;
    text-align: center;
    -webkit-appearance: none;
    position: relative;
    background-size: auto 0.333rem;
    outline: 0;
    box-sizing: border-box;
}

.HalfInputStyle {
    border: none;
    font-size: 20px;
    outline: 0;
    width: 50%;
    box-sizing: border-box;
    height: 50px;
    text-align: center;
    background: none;
}







/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* placeholder */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

input::placeholder {
    color: #c7c7c7;
}

input {
    -webkit-appearance: none;
}

li {
    list-style: none;
}

/* .relationship, */
select {
    width: 100%;
    height: 50px;
    background: none;
    border: none;
    font-size: 20px;
    color: #222;
    text-align: center;
    -webkit-appearance: none;
    position: relative;
    padding-right: 1rem;
    background: #fff url(/commonSrc/image/Common_Img/icon_select.png) no-repeat 100% center;
    background-size: auto 0.333rem;
    outline: 0;
}
















/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 모든 페이지 상단 환자 바코드 팝업 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

/* 리스트 박스 */
.overlayWrapBarcode>li {
    border: 1px solid #e7e7e7;
    margin-bottom: 30px;
    border-top-left-radius: 11px;
    border-bottom-left-radius: 11px;
    overflow: hidden;
    position: relative;
    background-color: #fff;
    list-style: none;
    padding-top: 10px;
    padding-right: 10px;
}

/* 리스트 앞 파란색 바 */
.overlayWrapBarcode>li:before {
    content: '';
    width: 7px;
    height: 100%;
    top: 0;
    position: absolute;
    left: 0;
    background: #ccc;
    z-index: 1;
    border-top-left-radius: 11px;
    border-bottom-left-radius: 11px;
}

/* 리스트 선택 시 좌측 바 파란색으로 변경 */
.overlayWrapBarcode>li.active:before {
    /* background: #0e8962; */
}


/* 리스트 좌측패딩 */
.mainWrapLeftPadding {
    padding-left: 20px;
}

.barcode-record li {
    border: 1px solid #e7e7e7;
    margin: 10px 0;
    margin-bottom: 30px;
    border-top-left-radius: 11px;
    border-bottom-left-radius: 11px;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.barcode-record li:before {
    content: '';
    width: 7px;
    height: 100%;
    top: 0;
    position: absolute;
    left: 0;
    background: #cccccc;
    z-index: 1;
    /* background: #0e8962; */
}

.barcode-record li {
    /* box-shadow: 0 4px 0 rgba(0, 0, 0, .06); */
    box-shadow: 0 6px 5px 0px rgba(89, 89, 89, 0.3);

}

.barcode-record li.active .toggle_btn {
    transform: translateY(-50%) rotate(180deg);
    -webkit-transform: translateY(-50%) rotate(180deg);
    -moz-transform: translateY(-50%) rotate(180deg);
    -ms-transform: translateY(-50%) rotate(180deg);
    -o-transform: translateY(-50%) rotate(180deg);
}


.barcode-record .header {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 170px;
    background: #f8f8f8;
    position: relative;
}

.barcode-record .userImage {
    margin-bottom: 10px;
    background-image: url(/image/Hospital_Logo/mainUserLogo/userLogo.png);
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background-repeat: repeat;
    background-size: cover;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
}

.barcode-record .header .align {
    padding-left: 22px;
    margin: 5px 0;
    height: 25%;

}

.barcode-record .header .left-division {
    width: 30%;
    border-right: 1px solid #b1b1b1;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    font-weight: 300;
}

.barcode-record .header .left-division .align {
    color: #5a5a5c;
}

.barcode-record .header .right-division {
    width: 70%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.barcode-record .header .highlightColor {
    color: #556fff;
}

.barcode-record .header .highlightColorCancle {
    color: #d34078;
}

.barcode-record .header h3 {
    color: #222222;
    margin-bottom: 10px;
}

.barcode-record .header h4 {
    color: #7d7d7d;
}

.barcode-record .header .toggle_btn {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}


.barcode-record .issueType {
    display: flex;
    /* align-items: center; */
    justify-content: center;
    /* background-color: rgb(247, 247, 247); */
    padding: 15px 0px;
    /* height: 50px; */
}

.barcode-record .issueType .userBarcode {
    background-image: url(/image/barcode.png);
    width: 68%;
    height: 50px;
    /* background-repeat: repeat; */
    background-size: cover;
}

.barcode-record .issueType .issueButton {
    font-family: 'GmarketSansMedium';
    border: 1px solid #556fff;
    width: 40%;
    height: 50px;
    line-height: 40px;
    text-align: center;
    box-sizing: border-box;
    padding: 5px;
    font-size: 17px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    background-color: #556fff;
    color: #FFF;
    z-index: 1;
}






/* CSS 스타일 */
#overlayWrapBarcode {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .87);
    z-index: 9998;
}

#barcodeWrap {
    display: none;
    box-sizing: border-box;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 380px;
    background-color: #ffffff;
    border-radius: 13px 13px 0 0;
    transition: transform 0.3s ease-in-out;
    z-index: 9999;
    transform: translateY(100%);
    -webkit-transition: transform 0.3s ease-in-out;
    -moz-transition: transform 0.3s ease-in-out;
    -ms-transition: transform 0.3s ease-in-out;
    -o-transition: transform 0.3s ease-in-out;
    padding: 25px;
    -webkit-border-radius: 13px 13px 0 0;
    -moz-border-radius: 13px 13px 0 0;
    -ms-border-radius: 13px 13px 0 0;
    -o-border-radius: 13px 13px 0 0;
}

#popupcontent {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}


.overlayWrapBarcode {
    z-index: 100 !important;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 700px;
    max-height: 80%;
    padding: 22px 15px 70px;
    box-sizing: border-box;
    overflow: hidden;
    border-radius: 13px;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);

    /* -webkit-overflow-scrolling: auto;  */
}


/*  팝업 (100% FullButton) 진료카드 팝업 */
.popupFullBtn_Barcode {
    width: 100%;
    height: 62px;
    border: none;
    /* background-color: #00563B; */
    /* border: 1px solid #00563B; */
    box-sizing: border-box;
    font-size: 24px;
    color: white;
}


















/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* Footer (서비스이용약관,개인정보처리방침)*/
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.pageFooter {
    width: 100%;
    text-align: center;
    line-height: 25px;
    padding-top: 40px;
    padding-bottom: 100px;
    font-size: 14px;
    background: #303740;
    color: rgb(194, 194, 194);
    letter-spacing: 0.1px;
}

/* 메인푸터 변경(추가) */
.pageFooterMain {
    width: 100%;
    text-align: center;
    line-height: 25px;
    padding: 40px 0;
    font-size: 14px;
    color: #5c5c5c;
    letter-spacing: 0.1px;
}

.policy {
    padding: 7px 0;
}

.policy a {
    text-decoration: none;
    margin: 0px 5px;
    font-size: 14px;
    color: rgb(255, 255, 255);
}

/* 메인푸터 변경(추가) */
.pageFooterMain .policy a {
    text-decoration: none;
    margin: 0px 5px;
    font-size: 14px;
    color: rgb(118, 118, 118);
}


.company_law {
    background-color: dodgerblue;
    height: 50px;
    line-height: 50px;
    text-align: center;
    font-size: 23px;
    color: white;
}

.Policy_align {
    white-space: pre-wrap;
    word-wrap: break-word;
    text-align: justify;
    padding: 0 10px;
    line-height: 30px;
}

.Policy_highlight {
    font-weight: bold;
    border-bottom: 1px solid rgb(194, 192, 192);
    padding-bottom: 5px;
    color: dodgerblue;
    font-size: 18px;
}


.divTable {
    display: table;
    width: 100%;
    text-align: center;
}

.divTableRow {
    display: table-row;
}

.divTableHeading {
    background-color: #EEE;
    display: table-header-group;
}

.divTableCell,
.divTableHead {
    border: 1px solid #999999;
    display: table-cell;
    padding: 3px 10px;
}

.divTableHeading {
    background-color: #EEE;
    display: table-header-group;
    font-weight: bold;
}

.divTableFoot {
    background-color: #EEE;
    display: table-footer-group;
    font-weight: bold;
}

.divTableBody {
    display: table-row-group;
}

.bgc {
    background-color: rgb(243, 243, 243);
}






/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 모바일 프레임 BODY 사이즈 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

@media screen and (max-width: 900px) {

    .bodyWrap {
        width: 100%;
        margin: 0 auto;
        box-sizing: border-box;
    }

    .overlayWrap {
        background: #fff;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 85%;
        padding: 22px 15px 70px;
        box-sizing: border-box;
        border-radius: 13px;
        overflow: hidden;
        /* 아이폰 overflow 시 아래 적용 */
        -webkit-mask-image: -webkit-radial-gradient(white, black);
    }

    .overlayWrapper {
        background: #fff;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 85%;
        padding: 22px 15px 70px;
        box-sizing: border-box;
        border-radius: 13px;
        overflow: hidden;
        /* 아이폰 overflow 시 아래 적용 */
        -webkit-mask-image: -webkit-radial-gradient(white, black);
    }

    .overlayWrapBarcode {
        z-index: 100;
        background: #fff;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 85%;
        padding: 22px 15px 70px;
        box-sizing: border-box;
        border-radius: 13px;
        overflow: hidden;
        /* 아이폰 overflow 시 아래 적용 */
        -webkit-mask-image: -webkit-radial-gradient(white, black);
    }

    .overlayFullWrapForm {
        top: 47%;
        width: 100%;
        overflow: auto;
    }

    /* .overlayFullWrapForm {
        background: #fff;
        position: relative;
        top: 45%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 90%;
        height: 75%;
        padding: 22px 15px 20px;
        box-sizing: border-box;
        border-radius: 13px;
        overflow: hidden;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
    } */

    .doctorInforList {
        position: relative;
        overflow-y: scroll;
        max-height: 300px;
        width: 100%;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
    }

    /* 추가 2025.03.17 */
    .overlayFullWrapFormA {
        width: 100%;
        overflow: auto;
    }

}








/* 2025.05.26 (수정) */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 탭 메뉴 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */


.tabContainer {
    position: relative;
    display: flex;
    width: 100%;
    height: 50px;
    background-color: #f2f5ff;
    border-radius: 10px;
    padding: 4px;
    box-shadow: 0px 8px 10px 0px #c7c7c7;
    overflow: hidden;
    margin-bottom: 25px;
    box-sizing: border-box;
}

.tabButton {
    flex: 1;
    border: none;
    background-color: transparent;
    font-size: 18px;
    cursor: pointer;
    border-radius: 9px;
    transition: 0.3s ease-out all;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;

}

.tabButton.active {
    color: #fff;
}

.tabIndicator {
    position: absolute;
    top: 4px;
    bottom: 4px;
    left: 4px;
    width: calc(50% - 8px);
    /* 4px 좌우 여백 */
    background-color: #1E3A8A;
    transition: 0.3s ease-out all;
    z-index: 0;
    border-radius: 10px;
    transform: translateX(0%);
}


.tabButton i {
    padding-right: 5px;
}



/* 2025.05.26 (수정) */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 전화하기 UI */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */


.telWrap {
    /* display: flex;
    justify-content: center;
    align-items: center; */
    margin-bottom: 30px;
}

.telButtonWrap {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 10px;
    background: white;
    border-radius: 12px;
    text-decoration: none;
    transition: 0.3s;
    box-shadow: 0px 8px 10px 0px #a9a9a9;
}

.telIcon {
    /* background: #01C853; */
    background: #192757;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 26px;
    color: white;
    flex-shrink: 0;
    animation: hoverWave 1.2s infinite linear, shake 1.2s infinite ease-in-out;
}

.telIcon i{
    color: white !important;
    font-size: 20px;
}
.telText {
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #222;
    line-height: 22px;
}


/* wave 효과 */
@keyframes hoverWave {
    0% {
        box-shadow: 0 4px 6px rgba(25, 39, 87, 0.3), 
                    0 0 0 0 rgba(25, 39, 87, 0.2), 
                    0 0 0 0 rgba(25, 39, 87, 0.2);
    }
    40% {
        box-shadow: 0 4px 6px rgba(25, 39, 87, 0.3), 
                    0 0 0 6px rgba(25, 39, 87, 0.2), 
                    0 0 0 0 rgba(25, 39, 87, 0.2);
    }
    80% {
        box-shadow: 0 4px 6px rgba(25, 39, 87, 0.3), 
                    0 0 0 12px rgba(25, 39, 87, 0), 
                    0 0 0 10px rgba(25, 39, 87, 0.067);
    }
    100% {
        box-shadow: 0 4px 6px rgba(25, 39, 87, 0.3), 
                    0 0 0 12px rgba(25, 39, 87, 0), 
                    0 0 0 14px rgba(25, 39, 87, 0);
    }
}



/* 흔들림 효과 */
@keyframes shake {
    0% { transform: rotateZ(0deg); }
    10% { transform: rotateZ(-30deg); }
    20% { transform: rotateZ(15deg); }
    30% { transform: rotateZ(-10deg); }
    40% { transform: rotateZ(7.5deg); }
    50% { transform: rotateZ(-6deg); }
    60% { transform: rotateZ(5deg); }
    70% { transform: rotateZ(-4.28571deg); }
    80% { transform: rotateZ(3.75deg); }
    90% { transform: rotateZ(-3.33333deg); }
    100% { transform: rotateZ(0deg); }
}




/* 2025.05.26 (수정) */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 로그인*/
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.loginOut{
    position: absolute;
    /* right: 0; */
    left: 0;
    top: 15px;
    /* border: 1px solid black; */
    color: white;
    /* background-color: black; */
    /* opacity: 60%; */
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    /* border-top-left-radius: 20px;
    border-bottom-left-radius: 20px; */
    padding-right: 9px;
    padding-top: 7px;
    padding-bottom: 9px;
    padding-left: 7px;
    /* padding-left: 15px;
    padding-top: 7px;
    padding-bottom: 9px;
    padding-right: 7px; */
    box-shadow: 0 19px 38px rgba(0,0,0,0.30), 0 15px 12px rgba(0,0,0,0.22);
}

.loginOut i{
    font-size: 13px;
}







/* 2025.05.26 (수정) */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 모든 페이지 우측 상단 메인으로 이동 홈 버튼  */ 
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.home-button {
    position: absolute;
    /* fixed로 바꿔도 OK */
    top: 100px;
    right: 20px;
    width: 48px;
    height: 48px;
    background-color: #a5299f;
    /* 파란 배경 */
    color: white;
    /* 아이콘 흰색 */
    border-radius: 50%;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    z-index: 9999;
    font-size: 20px;
}


.home-button:hover {
    background-color: #0056b3;
    /* hover 시 더 진한 파란색 */
}


/* 2025.05.26 (수정) */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 메인홈 메뉴 페이지별 우측상단 환자카드 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */

.mobileCardWrap {
    box-shadow: 5px 5px 30px rgb(0 0 0 / 15%);
    position: absolute;
    right: 15px;
    top: 15px;
    width: 15%;
    height: 20px;
    border: 1px solid white;
    background-color: white;
    padding: 5px;
    padding-bottom: 5px;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
}

.mobileCardImg {
    background-image: url("/commonSrc/image/barcode.png");
    background-repeat: no-repeat;
    background-size: 100%;
    height: 10px;
    margin-bottom: 2px;
}

.mobileCardText {
    font-size: 10px;
    text-align: center;
}




/* 2025.05.26 (수정) */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */
/* 홈버튼/메인이동 */
/* ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ */


/* 카운트다운 링 래퍼 */
.countdown-ring {
    position: relative;
    width: 100px; height: 100px;
    margin: 0px auto;
    margin-top: 10px;
    margin-bottom: 20px;
  }
  
  /* SVG 크기 맞춤 */
  .countdown-ring .ring-svg {
    width: 100%; height: 100%;
    transform: rotate(-90deg); /* 12시 방향부터 시작 */
  }
  
/* 배경 원: 흰색 */
.ring-bg {
    fill: none;
    stroke: #ffffff;    /* 흰색 */
    stroke-width: 10;
  }
  
  /* 전경 원: 남색 */
  .ring-fg {
    fill: none;
    stroke: #00563B;    /* 남색 (네이비) */
    stroke-width: 10;
    stroke-linecap: round;
    stroke-dasharray: 283;   /* 2πr = 2*π*45 ≈ 283 */
    stroke-dashoffset: 0;    /* JS에서 변경 */
    transition: stroke-dashoffset 1s linear;
  }
  
  
  /* 중앙 숫자 */
  .ring-number {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00563B;
    font-size: 40px;
    font-weight: bolder;
}

  /* 숫자 슬라이드 애니메이션 */
@keyframes slide-up-in {
    0% {
      transform: translateY(100%);
      opacity: 0;
    }
    100% {
      transform: translateY(0);
      opacity: 1;
    }
  }
  
  /* inline-block으로 만들어야 transform 먹음 */
  #popup-countdown {
    display: inline-block;
  }
  
  /* .slide 클래스 붙이면 슬라이드 애니메이션 */
  #popup-countdown.slide {
    animation: slide-up-in 0.5s ease-out forwards;
  }






  