
@font-face { font-family: 'SDSwagger'; src: url(/assets/fonts/SDSwagger.otf) format("opentype"); font-weight: 800; font-style: normal; }
@font-face { font-family: 'Noto Sans SC'; src: url(/assets/fonts/NotoSansSC-Light.ttf) format("truetype"); font-weight: 300; font-style: normal; }
@font-face { font-family: 'Noto Sans SC'; src: url(/assets/fonts/NotoSansSC-Regular.ttf) format("truetype"); font-weight: 400; font-style: normal; }
@font-face { font-family: 'Noto Sans SC'; src: url(/assets/fonts/NotoSansSC-Medium.ttf) format("truetype"); font-weight: 500; font-style: normal; }
@font-face { font-family: 'Noto Sans SC'; src: url(/assets/fonts/NotoSansSC-SemiBold.ttf) format("truetype"); font-weight: 600; font-style: normal; }
@font-face { font-family: 'Noto Sans SC'; src: url(/assets/fonts/NotoSansSC-Bold.ttf) format("truetype"); font-weight: 700; font-style: normal; }

/* 전체 공통 */
:root{
  --bs-body-font-family: 'Noto Sans SC';
  --bs-body-font-size: 14px;
}

.fw-bolder{ font-weight: 800 !important;}

.container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {padding-left: 3rem !important; padding-right: 3rem !important;}



@media (max-width: 991.98px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {padding-left: 1.5rem !important; padding-right: 1.5rem !important;}
  /* .modal-dialog {padding: 1.25rem; margin: 0;} */
}

/* // `md`*/
@media (max-width: 767.98px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {padding-left: 1.25rem !important; padding-right: 1.25rem !important;}

}






/* // `md`*/
@media (max-width: 767.98px) {

}


/* // `sm` */
@media (max-width: 575.98px) {

}


.table-rounded tr:last-child td { border-bottom: none;}
/* // `sm` */


/*------------------------- 서브페이지 ---------------------------*/
.sub-page-title {padding-top: 5rem; padding-bottom: 5rem; }
.subpage-section {padding-top: 6rem; padding-bottom: 6rem;}
.subpage-section:last-child {padding-bottom: 8rem;}
.subpage-section.wide {padding-top: 12rem; padding-bottom: 12rem;}
.subpage-section .wide {padding-top: 12rem; padding-bottom: 12rem;}


/* skicky sub menu */
.sub-sticky-top {padding-top: 60px; margin-top: -5rem}
.sub-sticky-top .list-group {border-radius: 0; overflow: hidden; margin: 0 auto; word-break: keep-all; align-items: flex-end; justify-content: center}
.sub-sticky-top .list-group-item {font-size: 1rem;  border: none; border-radius: 0; text-align: center; padding: 1rem 1rem; width: auto;}
.sub-sticky-top .list-group-item.active {color: var(--bs-primary); font-weight: bold;}
.sub-sticky-top .list-group-item .select-underbar {visibility: hidden; position: absolute; left: 0; bottom: 0; width: 100%; height: 5px; background: var(--bs-primary);}
.sub-sticky-top .list-group-item.active .select-underbar {visibility: visible;}
.sub-sticky-top .lst .depth{visibility: hidden; opacity: 0; transition: all 0.3s;}
.sub-sticky-top .lst:hover .depth{visibility: visible; opacity: 1;}
.sub-sticky-top .lst > a::after { content: ''; display: inline-block; transform: translateY(-55%) rotate(45deg); width: 8px; height: 8px; border-right: 2px solid var(--bs-gray-600); border-bottom: 2px solid var(--bs-gray-600); margin-left: 0.5rem; }
.sub-sticky-top .depth .list-group-item {font-size: 1rem;}
.sub-sticky-top .depth .list-group-item:hover {background-color: var(--bs-gray-100); color: var(--bs-primary);}
.sub-sticky-top-wrap .sub-sticky-top {border-bottom: 1px solid #e5e9ee00 }
.sub-sticky-top-wrap.on .sub-sticky-top {border-bottom: 1px solid var(--bs-gray-200); background-color: white;}

/* list group */
.list-group-row {display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; justify-content: center; gap: 1rem; }
.list-group-row .list-group-item {position:relative; width: auto; transition: all 0.3s; border-radius: 0.5rem; border: none; color: var(--bs-primary); background-color: var(--bs-primary-bg-subtle)!important; text-align: center; padding-right: 3rem; padding-left: 3rem;}
.list-group-row .list-group-item:hover { background-color: rgba(var(--bs-primary-rgb),0.3)!important;}
.list-group-row .list-group-item.active {border: 1px solid var(--bs-primary); background: var(--bs-primary) !important; color: white;}
.list-group-row .list-group-item.active:hover {background-color: rgba(var(--bs-primary-rgb),0.85)!important;}
.sub-sticky-top > div {overflow-x: scroll;  -ms-overflow-style: none; scrollbar-width: none; }
.sub-sticky-top > div::-webkit-scrollbar  { display: none; }



.img-group { width: 100%; aspect-ratio: 1/1; overflow: hidden; border-radius: var(--bs-border-radius); position: relative; }
.img-group img { width: 100%; height: 100%; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); object-fit: cover; }
.aspect-1-1 { aspect-ratio: 1/1; }
.aspect-1-08 { aspect-ratio: 1/0.8; }


/* 스크롤바 */

::-webkit-scrollbar { -webkit-appearance: none; }
::-webkit-scrollbar:vertical { width: 8px; }
::-webkit-scrollbar:horizontal { height: 8px; }
::-webkit-scrollbar-thumb { border-radius: 5px; background-color: rgba(21, 24, 29, 0.3); } 
::-webkit-scrollbar-track { background-color: rgba(224, 226, 230, 0.5); border-radius: 5px; } 

.scrollbar-thin *::-webkit-scrollbar, .scrollbar-thin::-webkit-scrollbar { -webkit-appearance: none !important; }
.scrollbar-thin *::-webkit-scrollbar:vertical, .scrollbar-thin::-webkit-scrollbar:vertical { width: 5px !important; }
.scrollbar-thin *::-webkit-scrollbar:horizontal, .scrollbar-thin::-webkit-scrollbar:horizontal { height: 5px !important; }
.scrollbar-thin *::-webkit-scrollbar-thumb, .scrollbar-thin::-webkit-scrollbar-thumb { border-radius: 5px; background-color: rgba(21, 24, 29, 0.3) !important; }
.scrollbar-thin *::-webkit-scrollbar-track, .scrollbar-thin::-webkit-scrollbar-track { background-color: rgba(224, 226, 230, 0.5); border-radius: 8px !important; } 

/* 텍스트 가운데 선 */
.txt-middle-line {position: relative;}
.txt-middle-line strong {position: relative; display: inline-block; background-color: #fff; padding: 0 8px; color: var(--bs-gray-700);}
.txt-middle-line::before { position: absolute; top: calc(50% - 1px); left: 0; width: 100%; height: 1px; content: ""; display: block; background-color: var(--bs-gray-300);}

/* // `xl`*/
@media (max-width: 1399.98px) {
  .subpage-section {padding-top: 5rem; padding-bottom: 5rem;}
  .subpage-section.wide {padding-top: 10rem; padding-bottom: 10rem;}
  .subpage-section .wide {padding-top: 10rem; padding-bottom: 10rem;}
  
}

/* // `xl`*/
@media (max-width: 1199.98px) {
  
    .sub-page-title {padding: 4rem 0 4rem;}

    .subpage-section.wide {padding-top: 9rem; padding-bottom: 9rem;}


}

/* // `lg` */
@media (max-width: 991.98px) {
    .sub-page-title {padding: 3rem 0 3rem;}
    .subpage-section.wide {padding-top: 8rem; padding-bottom: 8rem;}

    
    .sub-sticky-top .list-group {width: max-content; }
    .sub-sticky-top .list-group-item {padding: 0.75rem; font-size: var(--bs-body-font-size)}
    .sub-sticky-top .depth .list-group-item {font-size: var(--bs-body-font-size)}

    .sub-sticky-top .list-group-item .select-underbar {height: 3px;}
}

/* // `md`*/
@media (max-width: 767.98px) {
  .subpage-section {padding-top: 4rem; padding-bottom: 4rem;}
  .subpage-section .wide {padding-top: 8rem; padding-bottom: 8rem;}
  .subpage-section.wide {padding-top: 8rem; padding-bottom: 8rem;}

  .sub-sticky-top .list-group-item {padding: 0.75rem 0.5rem;}
}


/* // `sm` */
@media (max-width: 575.98px) {
  .subpage-section {padding-top: 3rem; padding-bottom: 3rem;}
  .subpage-section .wide {padding-top: 6rem; padding-bottom: 6rem;}
  .subpage-section.wide {padding-top: 5rem; padding-bottom: 5rem;}

}

/*----------------------- 서브페이지 끝 --------------------------*/

.chevron-down {position: relative;}
.chevron-down::after {content: ''; display: inline-block; background: url('/assets/icons/arrow-chevron-down.svg') no-repeat; width: 1rem; height: 1rem; margin-left: 0.5rem;}








/* 스크롤 슬라이드업 이벤트 */
@keyframes slideUpEvent {
  0% {transform: translateY(4rem); opacity: 0;} 
  100% {transform: translateY(0); opacity: 1;} }

[data-scroll-event="scroll"], [data-scroll-event="scroll-delay"], [data-scroll-event="scroll"].scroll-slideup-train > * {transform: translateY(4rem); opacity: 0; }
.active[data-scroll-event="scroll"] {animation: slideUpEvent 0.6s ease-out 1 forwards;}
.active [data-scroll-event="scroll-delay"] {animation: slideUpEvent 0.6s ease-out 0.3s 1 forwards;}

[data-scroll-event="scroll"].scroll-slideup-train > *:first-child {animation: slideUpEvent 0.6s ease-out 0.3s 1 forwards;}
[data-scroll-event="scroll"].scroll-slideup-train > *:nth-child(2) {animation: slideUpEvent 0.6s ease-out 0.6s 1 forwards;}
[data-scroll-event="scroll"].scroll-slideup-train > *:nth-child(3) {animation: slideUpEvent 0.6s ease-out 0.9s 1 forwards;}
[data-scroll-event="scroll"].scroll-slideup-train > *:nth-child(4) {animation: slideUpEvent 0.6s ease-out 1.2s 1 forwards;}
[data-scroll-event="scroll"].scroll-slideup-train > *:nth-child(5) {animation: slideUpEvent 0.6s ease-out 1.5s 1 forwards;}
[data-scroll-event="scroll"].scroll-slideup-train > *:nth-child(6) {animation: slideUpEvent 0.6s ease-out 1.8s 1 forwards;}
[data-scroll-event="scroll"].scroll-slideup-train > *:nth-child(7) {animation: slideUpEvent 0.6s ease-out 2.1s 1 forwards;}
[data-scroll-event="scroll"].scroll-slideup-train > *:nth-child(8) {animation: slideUpEvent 0.6s ease-out 2.4s 1 forwards;}
[data-scroll-event="scroll"].scroll-slideup-train > *:nth-child(9) {animation: slideUpEvent 0.6s ease-out 2.7s 1 forwards;}
[data-scroll-event="scroll"].scroll-slideup-train > *:nth-child(10) {animation: slideUpEvent 0.6s ease-out 3s 1 forwards;}



/* 말줄임 */
.text-truncate-line-1 { white-space: normal; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.text-truncate-line-2 { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.text-truncate-line-3 { white-space: normal; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.text-truncate-line-4 { white-space: normal; display: -webkit-box; -webkit-line-clamp: 4; /* 텍스트를 자를 때 원하는 단위 ex) 3줄 */ -webkit-box-orient: vertical; overflow: hidden; }

hr { border-top: none; height: 1px; }

hr.vertical { position: absolute; background-color: transparent; height: 100%; right: 0; top: 0; width: 1px }

hr.vertical.light { background-image: linear-gradient(90deg,hsla(0,0%,100%,0),#fff,hsla(0,0%,100%,0)) }

hr.vertical.dark { background-image: linear-gradient(90deg,transparent,rgba(0,0,0,.4),transparent) }

hr.vertical.gray-light { background-image: linear-gradient(90deg,transparent,rgba(0,0,0,.1),transparent) }

hr.horizontal { background-color: transparent }

hr.horizontal.light { background-image: linear-gradient(90deg,hsla(0,0%,100%,0),#fff,hsla(0,0%,100%,0)) }

hr.horizontal.dark { background-image: linear-gradient(90deg,transparent,rgba(0,0,0,.4),transparent) }

hr.horizontal.gray-light { background-image: linear-gradient(90deg,transparent,rgba(0,0,0,.1),transparent) }



.yuan-input {position: relative;}
.yuan-input input {padding-right: 1.2rem;}
.yuan-input::after {content: '¥'; color: var(--bs-gray-400); position: absolute; right: 0.75rem; top: 50%; transform: translateY(-50%); z-index: 9;}
.usd-input {position:relative;}
.usd-input input {padding-left:1.5rem;}
.usd-input::after { color: var(--bs-gray-400); position: absolute; left: 0.55rem; top: 50%; transform: translateY(-50%); z-index: 9; }
.usd-input::after { content: '$';}
.won-input {position: relative;}
.won-input input {padding-left: 1.7rem;}
.won-input::after {content: '￦'; color: var(--bs-gray-400); position: absolute; left: 0.75rem; top: 50%; transform: translateY(-50%); z-index: 9;}

.cm-input {position: relative;}
.cm-input input {padding-right: 1.7rem;}
.cm-input::after {content: 'cm'; color: var(--bs-gray-400); position: absolute; right: 0.75rem; top: 50%; transform: translateY(-50%);}
span.excel {background: url("/assets/icons/excel.svg") 50% 50% no-repeat; background-size: auto 100%; width: 18px; height: 18px;}

.group-center-row {display: flex; align-items: center; justify-content: center;}
.group-center-col {display: flex; flex-direction: column; align-items: center; justify-content: center;}
.group-left-col {display: flex; flex-direction: column; align-items: flex-start; justify-content: center;}
.vr {min-height: 15px; margin: 0;}
.line-v {width: 1px; height: 75%; min-height: 17px; background-color: var(--bs-gray-300);}



/* ---------------------------------------------------------------------------------- */











/* -------------------- header ----------------------*/
#header {transition: all 0.3s; background: #fff; border-bottom: 1px solid var(--bs-gray-200); z-index: 99999;}
/* header.on {background: #fff; border-bottom: 1px solid var(--bs-gray-200);} */

#header .logo a {color: var(--bs-primary); background-image: url(/assets/logo/site-logo.png); background-position: 0 50%; background-repeat: no-repeat; background-size: auto 90%;}
#header .logo a span {padding-left: 43px; font-size: 31px; font-family: 'SDSwagger'; font-weight: 800; letter-spacing: 0.075rem; line-height: 1.25;}
#header a:not(button, .pc-gnb *, .list-group *):hover {color: var(--bs-link-hover-color) !important;}
#header ul {list-style: none; padding: 0;}
#header .nav .item > p {line-height: 60px;}
#header .nav .item .top a {position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%;}
#header .nav > li {margin: 0;}
#header.on .nav .item .top {font-weight: 500; position: relative; color: var(--bs-gray-800); transition: all 0.2s;}
#header.on .nav .item:hover .top {color: var(--bs-link-color);}
#header .nav .depth-wrap {position: absolute; left: 50%; top: 100%; transform: translateX(-50%); width: 100vw; visibility: hidden; opacity: 0; transition: all 0s;}
#header .nav > li.item.on .depth-wrap {visibility:visible; opacity: 1; transition: all 0.35s; transition-delay: 0.1s; }
#header .nav .depth {padding-top: 1.5rem; padding-bottom: calc(1.5rem + 50px); max-width: 960px; display: grid !important; grid-template-columns: 1fr max-content; align-items: start; gap:1rem; margin: 0 0 0 auto} 
#header .nav .depth ul.sub-menu {display:flex; flex-direction: column; max-width: 600px;}
#header .nav .depth ul.sub-menu > li {margin-bottom: 0 !important;}
#header .nav .depth .short-cut li {margin-bottom: 0 !important;}

#header .pc-gnb > a.btn {border: 1px solid #a9b7c7;}
#header .pc-gnb:hover > a.btn {background: #f4f6fb; color: #2e3947 !important;}
#header .pc-gnb .material-symbols-outlined {color: var(--bs-gray-800); font-weight: 300;}
#header .pc-gnb:hover .material-symbols-outlined {color: var(--bs-link-hover-color) !important}
#header .pc-gnb:hover .gnb {opacity: 1; height: auto; display: block;}
#header .gnb {width: max-content; right: 0; top: 100%; height: 0; display: none; opacity: 0; transition: all 0.2s; width: 100%;}
#header .gnb a {color: var(--bs-gray-700); transition: all 0.3s; position: relative;}
#header .pc-gnb .gnb li {margin: 0 !important;}
#header .gnb li:hover {background: var(--bs-gray-100);}

#header .nav-background {width: 100vw; height: 0px; position: absolute; left: 0; top: calc(100% + 1px); transition: 0.2s; opacity: 0;}
#header .nav-background > div:first-child {background: rgb(255 255 255 / 90%); backdrop-filter: blur(10px)}
#header .nav-underline {z-index: -1; position: absolute; bottom: 0; height: 3px; background: var(--bs-primary); transition: all 0.3s;}

/* header 하단 배너 */
#header .nav-banner {visibility: hidden;  overflow: hidden; opacity: 0;transition: all 0.1s;  background: linear-gradient(to right, rgba(78, 149, 255, 0.85), rgba(158, 232, 255, 0.85), rgba(120, 255, 226, 0.85));}
#header .nav-wrap:hover .nav-banner {visibility: visible; opacity: 1;transition-delay: 0.1s; transition: all 0.3s ease; }
.modal-open .modal-backdrop.show {z-index: 9999;}
/* modal popup오픈 시 header 스타일 */
.modal-open #header .modal.show {background-color: rgba(0, 0, 0, 0.5);}
#header .modal-address .list-group-item.active {background: var(--bs-gray-600);}
#header .modal-address .copy-success {position: fixed; left: 50%; bottom: 1rem; transform: translateX(-50%);}

/* 모바일 햄버거메뉴 */
#header #hamburger {display: none; width: 40px; height: 40px; position: relative; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer;}
#header #hamburger span { display: block; position: absolute; height: 3px; width: 90%; background: var(--bs-gray-800); border-radius: 9px; opacity: 1; left: 5%; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out;}
#header.on #hamburger span {background: var(--bs-gray-700);}
#header #hamburger span:nth-child(1) { top: 7px; }
#header #hamburger span:nth-child(2),#header #hamburger span:nth-child(3) { top: 19px; }
#header #hamburger span:nth-child(4) {top: 30px;}
#header #hamburger.open span:nth-child(1) { top: 18px; width: 0%; left: 50%; }
#header #hamburger.open span:nth-child(2) { -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
#header #hamburger.open span:nth-child(3) { -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); }  
#header #hamburger.open span:nth-child(4) { top: 18px; width: 0%; left: 50%; }

/* 모바일 메뉴 하단 */
#header .pc-gnb {position: relative; z-index: 99;;}
#header .pc-gnb .btn * {color: var(--bs-gray-800) !important;}
#header .pc-gnb .btn.btn-primary:hover {color: #0d6efd !important;}
#header .pc-gnb .btn:hover {background: white;}
.main #header .pc-gnb .btn * {color: white !important;}
.main #header.on .pc-gnb .btn * {color: var(--bs-gray-800) !important;}
.main #header.on .pc-gnb .btn:hover {background: white;}
#header .mobile-gnb a {width: 100%;}
#header .mobile-gnb .material-symbols-outlined {font-weight: 300;}

@media (max-width: 1399.98px) {
  #header .nav .depth {max-width: 855px;}
  
}

@media (max-width: 1199.98px) {
  #header .logo a span {font-size: 27px; line-height: 35px; padding-left: 35px;}
}

/* // `lg` */
@media (max-width: 991.98px) {
    #header {height: 60px;}
    header.on {box-shadow: 0 0.15rem 0.25rem rgba(0,0,0,.08);}
    #header .pc-gnb:hover .gnb {display: none;}
    .main #header .pc-gnb .btn * {color: var(--bs-gray-800) !important;}
    #header .nav-wrap {opacity: 0; position: absolute; left: 0; top: 60px; background: white; width: 100vw; height: calc(100vh - 60px); z-index: 99; display: flex; flex-direction: column; flex-wrap: nowrap;justify-content: flex-start; transform: translateX(100%); transition: all 0.3s;}
    #header .nav-scroll {overflow: scroll; -ms-overflow-style: none; scrollbar-width: none;}
    #header .nav-scroll::-webkit-scrollbar { display: none; }
    #header.mobile-open .nav-wrap {opacity: 1; background: white; transform: translateX(-1px); }
    #header .nav .short-cut {display: none;}
    #header .nav .item {width: 100%;}
    #header .nav .item.on .top {color: var(--bs-primary);}
    #header .nav .item .top {font-weight: bold !important; cursor: pointer; font-size: 1.2rem; position: relative}
    #header .nav .item > .top {line-height: 55px;}
    #header .nav .item .top::after {content: ''; position: absolute; right: 0; top: 50%; transform: translate(-50%,-50%) rotate(45deg); width: 10px; height: 10px; border-right: 2px solid var(--bs-gray-400); border-bottom: 2px solid var(--bs-gray-400);}
    #header .nav .item.on .top::after {transform: translate(-50%,-50%) rotate(-135deg);}
    #header .nav .item .top a {display: none;}
    /* header .nav > li.item:hover .depth-wrap {visibility:hidden} */
    #header .nav .item:not(.on) .depth-wrap {height: 0 !important;}
    #header .nav .depth-wrap { top: 0; opacity: 1; position: relative; background: var(--bs-gray-100); z-index: 99; width: 100%; height: 0; visibility: visible; transition: all 0.3s;}
    /* header .nav > li.item.on .depth-wrap {visibility:visible;} */
    #header .nav .depth {max-width: 100%; gap: 0; padding-top: 1rem; padding-bottom: 1rem;}
    #header .nav .depth .sub-menu {grid-template-columns: 1fr !important; justify-items: start; gap: 0.4rem;}

    #header .logo-wrap {width: 100%; height: 60px; justify-content: space-between; display: flex; flex-wrap: nowrap; align-items: center;}
    #header #hamburger {display: block; }
    #header .mobile-gnb .material-symbols-outlined {display: none;}
    

}

@media (max-width: 767.98px){
  #header .logo a {background-position: 0 0;}
  #header .logo a span {font-size: 30px; padding-top: 2px;}
}


/* --------------- header 끝 ---------------------*/



/* ------------------------------ footer -------------------------*/
footer {background: var(--bs-gray-800); padding: 5rem 0; position: relative; z-index: 99;;}
footer .company-info span:not(:last-child) { margin-right: 0.5rem; position: relative; vertical-align: middle;}
footer .company-info span:not(:last-child)::after {content: ''; display: inline-block; margin-left: 0.75rem; width: 2px; height: 13px; background: var(--bs-gray-700);}
footer .btn-outline-light {color: var(--bs-light);}



.request-date {position: relative; width: 100%; padding: 1rem 0}
.request-date .date {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 9; padding: 0 0.5rem;}
.request-date .line {width: 90%; height: 1px; background: var(--bs-gray-400); margin: 0 auto; max-width: 400px;}

.cursor-pointer {cursor: pointer;}


/* ------------------------- date picker  ------------------------- */
.ui-widget.ui-widget-content {border: none; background: var(--bs-gray-700); color: white; border-radius: 0.5rem;z-index: 99!important;}
.ui-datepicker .ui-datepicker-header {background: none; color: white; border: none;}
.ui-state-default, .ui-widget-content .ui-state-default {background: none; color: white; border: none; border-radius: 0.25rem; text-align: center;}
.ui-state-default:hover, .ui-widget-content .ui-state-default:hover {background: var(--bs-gray-800);}
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {border-radius: 0.5rem;}
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {background: none; cursor: pointer;}
.ui-datepicker .ui-datepicker-prev::before, .ui-datepicker .ui-datepicker-next::before {content: ''; position: absolute; left: 60%; top: 50%; width: 10px; height: 10px; border-left: 2px solid var(--bs-gray-300); border-bottom: 2px solid var(--bs-gray-300); transform: translate(-50%, -50%) rotate(45deg);}
.ui-datepicker .ui-datepicker-next::before {left: 40%; transform: translate(-50%, -50%) rotate(-135deg);}
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover {border: none; background-color: var(--bs-gray-800);}
.ui-datepicker .ui-datepicker-prev-hover {left: 2px; top: 2px;}
.ui-datepicker .ui-datepicker-next-hover {right: 2px; top: 2px;}
.ui-datepicker .ui-datepicker-title .ui-datepicker-month, .ui-datepicker .ui-datepicker-title .ui-datepicker-year {background: white; width: 65px; border-radius: 0.25rem; color: var(--bs-gray-700); padding: 0.1rem 0.25rem; margin-right: 0.25rem;}
.ui-datepicker th {opacity: 0.5;}
.datepicker-form {min-width: 115px;}
.form-group:has(.datepicker-form) {position: relative;}
.form-group:has(.datepicker-form) .ui-datepicker-trigger { position: absolute; right: 0.1rem; top: 50%; transform: translateY(-50%); width: 24px; cursor: pointer; padding: 0.2rem; opacity: 0.8;}

.flex-1 {flex: 1;}
.flex-auto {flex: auto;}

.text-hover-primary:hover {color: var(--bs-primary) !important; transition: all 0.3s;}
.text-hover-white:hover {color: white !important; transition: all 0.3s;}
.bg-hover-primary:hover {background-color: var(--bs-primary) !important; transition: all 0.3s;}

/* 텍스트 카피 */
.copytext-btn {display: none;}

@media (min-width: 992px){
  /* 텍스트 카피 */
  .copytext-btn {position: relative; display: block; width: 20px; height: 20px;}
  .copytext-btn.copy-success::before {
      content: '복사완료';
      position: absolute;
      left: 50%;
      top: calc(100% + 3px);
      transform: translateX(-50%);
      background: rgb(221 221 221 / 80%);
      width: 61px;
      padding: 0.25rem;
      font-size: 0.8rem !important;
      border-radius: 0.25rem;
      color: var(--phoenix-secondary-darker);
      font-weight: 700;
      z-index: 99;

  }
  .copytext-btn.copy-fail::before {
      content: '복사실패';
      color: var(--phoenix-danger-text-emphasis);
  }
}

.btn-secondary {
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-hover-color: var(--bs-dark);
  --bs-btn-active-color: var(--bs-dark);
  --bs-btn-disabled-color: var(--bs-gray-600);
}

.table-striped > tbody > tr:nth-of-type(odd) > *{
  --bs-table-color-type: var(--bs-table-color);
}