
/* 로그인 */
.login_wrap .login_section { position: relative; width: 100%;  height: 100vh;  background: url(../img/login_bg.jpg) no-repeat center / cover; display: flex; align-items: center;  justify-content: center; padding: 6.25rem;}
.login_wrap .login_section .login_box { position: relative; display: flex; width: 100%; max-width: 1280px; height: 100%; background: var(--basic-white); border-radius: 2.5rem; overflow: hidden;}
.login_wrap .login_section .leftbox { position: relative; width: 50%; display: flex;  flex-direction: column; align-items: center; justify-content: center;  gap: 2.5rem;  padding: 4rem;  background: var(--basic-white);}
.login_wrap .login_section .leftbox .titbox{width: 100%; max-width: 450px; display: flex; flex-direction: column; gap: 0.75rem;}
.login_wrap .login_section .leftbox .titbox .tit{font:var(--36_title_sb); line-height: 122%; letter-spacing: -0.02em; color: var(--basic-black)}
.login_wrap .login_section .leftbox .titbox .desc{font:var(--16_body_normal_r);line-height: 150%; color: var(--basic-darkgray)}
.login_wrap .login_section .leftbox .form{width: 100%; max-width: 450px; display: flex; flex-direction: column; gap: 1.5rem;}
.login_wrap .login_section .leftbox .form .input_wrap{ display: flex; flex-direction: column ; gap: 1rem;}
.login_wrap .login_section .leftbox .form .input_box{gap: 0.5rem;}
.login_wrap .login_section .leftbox .form .button_box .button {height: 3.75rem;}
.login_wrap .login_section .rightbox { position: relative; width: 50%; display: flex;  flex-direction: column;  justify-content: space-between;  padding: 4rem; background: linear-gradient(to top, var(--primary-primary500), var(--brand-primary));}
.login_wrap .login_section .rightbox .logobox { width: 12rem; display: flex; align-items: center; justify-content: center; margin-left: auto;}
.login_wrap .login_section .rightbox .txtbox {  display: flex;  flex-direction: column;  gap: 1rem;}
.login_wrap .login_section .rightbox .txtbox .img { width: 14rem; margin-bottom: -1.5rem;  margin-left: -1.5rem;}
.login_wrap .login_section .rightbox .txtbox .tit { font: var(--36_title_sb);  line-height: 1;   letter-spacing: 0.1em; color: var(--basic-white);}
.login_wrap .login_section .rightbox .txtbox .desc {  font: var(--14_label_read_r); line-height: 1.5;  font-weight: 300;  color: var(--basic-white);}


/* 로그인 인증 모달 */
#certification_modal .modal_box {width: 31.25rem;}
#certification_modal .form_box .w160 { flex: unset; width: 10rem;}
#certification_modal .form_box #user_emailPw {display: none;}
#certification_modal .form_box #user_emailPw.show {display: block;}


/* HOME */
.home_wrap .page_section { flex: 1; display: flex; flex-direction: column;}
.home_wrap .page_section .home_cont { flex: 1; display: flex; align-items: center;  justify-content: center;}
.home_wrap .page_section .home_cont .logo_box { width: 25rem; display: flex; align-items: center; justify-content: center;}


/* 버스좌석관리 */
.menu110_wrap .sub1_cont .sub_title { font: var(--18_headline_sb);  color: var(--basic-darkgray);  margin: 3rem 0; display: flex; align-items: flex-start; gap: 0.625rem;}
.menu110_wrap .sub1_cont .sub_title .icon { color: var(--brand-primary);  display: inline-block; line-height: 1.625rem; font-size: 1.375rem;}
.menu110_wrap .sub1_cont .sub_title .txt {flex: 1;}
.menu110_wrap .sub1_cont .sub_title .txt .date { font-size: 0.9em;  color: var(--basic-middlegray); font-weight: 500;}
.menu110_wrap .sub1_cont .sub1_layout {position: relative; display: flex; align-items: flex-start; gap: 2.5rem;}
.menu110_wrap .sub1_cont .sub1_layout + .sub1_layout {margin-top: 5rem;}
.menu110_wrap .sub1_cont .seat_area { position: sticky; top: 1.25rem; display: flex; flex-direction: column; align-items: center; gap: 1.25rem; min-width: 22.25rem;}
.menu110_wrap .sub1_cont .seat_area .seat_label { display: flex;  align-items: center;   justify-content: center;  gap: 0.75rem;  padding: 0.875rem 1rem;  background: var(--basic-pale); border-radius: 0.625rem;}
.menu110_wrap .sub1_cont .seat_area .seat_label > .item{display: flex; align-items: center; gap: 0.25rem;}
.menu110_wrap .sub1_cont .seat_area .seat_label > .item .color {  border-radius: 0.25rem; width: 0.875rem; aspect-ratio: 1 / 1;}
.menu110_wrap .sub1_cont .seat_area .seat_label > .item .color1{background: #fff; border: 2px solid #c4c4c4;}
.menu110_wrap .sub1_cont .seat_area .seat_label > .item .color2{background: #ccc; border: 2px solid #7b7b7b;}
.menu110_wrap .sub1_cont .seat_area .seat_label > .item .color3 { background: #ffd7e1; border: 2px solid #EF7898;}
.menu110_wrap .sub1_cont .seat_area .seat_label > .item .color4{background: #d8e6ff; border: 2px solid #9ec2ff;}
.menu110_wrap .sub1_cont .seat_area .seat_label > .item .txt { text-align: center;   font: var(--12_caption_m); color: var(--basic-darkgray);}
.menu110_wrap .sub1_cont .seat_area .seat_tit { font: var(--20_heading_sb);  color: var(--basic-darkgray); text-align: center; display: flex; align-items: center; justify-content: center; gap: 0.5rem;}
.menu110_wrap .sub1_cont .seat_area .seat_pic { border-radius: 3.5rem 3.5rem 1.5rem 1.5rem;  padding: 2rem 1.5rem 1.5rem; background: var(--basic-white);  border: 2px solid var(--basic-border); display: flex; flex-direction: column; gap: 0.5rem;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .top_row { display: flex;justify-content: space-between;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .top_row .driver {  border-radius: 1.25rem 0.375rem 0.375rem 0.375rem;  width: 7.25rem;  height: 2.75rem;  background: var(--basic-pale);   padding: 0.375rem 0;  display: flex; align-items: center;  justify-content: center;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .top_row .driver::before{content: ""; background: url(../img/seat_wheel.png) no-repeat center/contain; width: 1.75rem; aspect-ratio: 1/1;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .top_row .exit { border-radius: 0.375rem 1.25rem 0.375rem 0.375rem;  padding: 0.375rem 0; width: 3.375rem;  height: 2.75rem;   background: var(--basic-pale); display: flex;  align-items: center; justify-content: center;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .top_row .exit::before{content: ""; background: url(../img/seat_exit.png) no-repeat center/contain; width: 1.5rem; aspect-ratio: 1/1;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .top_txt {display: flex;padding: 0.25rem 0;} 
.menu110_wrap .sub1_cont .seat_area .seat_pic .top_txt .txt { flex: 1;  text-align: center;  font: var(--15_body_normal_sb); color: var(--basic-darkgray);}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row{display: flex;gap: 0.5rem;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item { position: relative;   width: 3.375rem; aspect-ratio: 1 / 1; padding: 0.25rem; cursor: pointer; --seat-bg : var(--basic-white); --seat-border : var(--basic-border)}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat { padding: 0 0.375rem;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat::before, 
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat::after { content: "";   z-index: 1;  position: absolute; top: 50%; transform: translateY(-50%); display: block; width: 0.675rem;  aspect-ratio: 1 / 3.5;  border: 2px solid var(--seat-border); background-color: var(--seat-bg);  border-radius: 6.25rem; pointer-events: none; transition: var(--transition);box-sizing: border-box;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat::before {left: 0;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat::after {right: 0;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat .seat_base { display: flex; align-items: center; justify-content: center; width: 100%;  height: 100%;  margin-inline: auto;  border: 2px solid var(--seat-border); border-radius: 0.625rem; padding-bottom: 0.675rem; background-color: var(--seat-bg); transition: var(--transition);}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat .seat_base::before {  content: "";  z-index: 2;  position: absolute;  left: 50%;  bottom: 0;  transform: translateX(-50%);  width: 100%; height: 1.013rem; border: 2px solid var(--seat-border);   background-color: var(--seat-bg); pointer-events: none;  border-radius: 0.375rem 0.375rem 0.75rem 0.75rem; transition: var(--transition); box-sizing: border-box;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat .seat_base .num { position: relative;  text-align: center;  font: var(--16_body_normal_sb);  line-height: 100%;  color: var(--basic-darkgray); width: 100%;  aspect-ratio: 1 / 1; display: flex; align-items: center;  justify-content: center; transition: var(--transition);}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat:hover {--seat-bg:var(--basic-bg2); --seat-border:var(--primary-primary300)}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat:hover .num { color: var(--brand-primary);}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat.guide {--seat-bg:#d8e6ff; --seat-border:#9ec2ff; pointer-events: none;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat.guide .num { color: #5e88cf; font-weight: 700;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat.guide .num::after {  content: "G"; font-size: 1rem; position: absolute; left: 50%;  top: 50%;  transform: translate(-50%, -50%); background: var(--seat-bg);}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat.selected {--seat-bg:var(--primary-primary200); --seat-border:var(--primary-primary500);}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat.selected .num {color: var(--brand-primary); font-weight: 700;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat.disabled { --seat-bg: #e0e0e0; --seat-border: #bdbdbd; }
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat.fixed { --seat-bg: #ffff00; --seat-border: #bdbdbd; }
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat.disabled .num::after {  content: ""; background: url(../img/seat_disabled.png) no-repeat center / contain var(--seat-bg);  width: 1.25rem; aspect-ratio: 1 / 1; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.arrow{position: relative;}
.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.seat.fixed .num::after {  content: ""; background: url(../img/seat_disabled.png) no-repeat center / contain var(--seat-bg);  width: 1.25rem; aspect-ratio: 1 / 1; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); }

.menu110_wrap .sub1_cont .seat_area .seat_pic .row .item.arrow::before{content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); background: url(../img/seat_arrow.png) no-repeat center/contain; width: 1.5rem; aspect-ratio: 1/1;}
.menu110_wrap .sub1_cont .frm { flex: 1;}


/* 고객관리 팝업 */
#memberInfo_modal .modal_body {padding-top: 0; padding-bottom: 3rem;}
#memberInfo_modal .tab_wrap .tab_navbox.sticky_ver { position: sticky;  top: 0;  z-index: 10;  padding: 1.875rem 0 0;}
#memberInfo_modal .tab_wrap .top_code { margin-bottom: 1.25rem;  background: var(--basic-bg); padding: 1.5rem 1.25rem;  border-radius: 0.5rem;}
#memberInfo_modal .tab_cont .tab_wrap {gap: 1.25rem;}
#memberInfo_modal .tab_cont .tab_wrap .top_code .input_txt.bold{font-weight: 600;}
#memberInfo_modal .tbl_box.mb {margin-bottom: 2.5rem;}


/* 고객관리 - 단체고객현황 */
.menu020_wrap .sub2-1_cont {display: flex; align-items: flex-start; gap: 2.5rem;}
.menu020_wrap .sub2-1_cont .left_frm {width: 40%;}
.menu020_wrap .sub2-1_cont .right_frm {width: 60%;}
.menu020_wrap .sub2-1_cont .tbl_box.mb {margin-bottom: 1rem;}


/* 예약관리 - 예약조회 팝업 */
#resvView_modal .modal_box .modal_body {gap: 3rem;}
#resvView_modal .tbl_wrap {gap: 1rem;}
#resvView_modal .tbl_title.flex { color: var(--basic-darkgray);  padding: 0.875rem 1rem;  background: var(--basic-bg);  border-radius: 0.625rem; font: var(--14_label_normal_sb);}
#resvView_modal .tbl_bottom {width: 100%; justify-content: space-between; margin-top: 0;}
#resvView_modal .tbl_bottom .point_desc {color: var(--brand-primary); font:var(--14_label_read_sb)}


/* 예약관리 - 탑승정보 팝업 */
#boarding_modal .tbl_title {width: 100%; margin-bottom: 1rem;}


/* 예약관리 - 출발일자별 예약현황 */
.menu040_wrap .sub4-3_cont .total_box {display: flex; align-items: center;  justify-content: space-between; border-top: 1px solid var(--basic-border);  margin-top: 2.5rem; padding-top: 1.25rem;}
.menu040_wrap .sub4-3_cont .total_box .tit { font: var(--20_heading_sb); color: var(--basic-darkgray);}
.menu040_wrap .sub4-3_cont .total_box .descbox { display: flex; align-items: center;   gap: 0.75rem; font: var(--20_heading_m); color: var(--basic-darkgray);}
.menu040_wrap .sub4-3_cont .total_box .descbox .bar{width: 1px; height: 0.75rem; background: var(--basic-border);}
.menu040_wrap .sub4-3_cont .total_box .descbox .num{color: var(--brand-primary); font-weight: 700;}


/* 예약관리 - 단체예약견적관리 */
.menu040_wrap .sub4-2_cont .tbl tbody tr td.td_state.state_wait { background: var(--badge-gr-bg);
color: var(--badge-gr-color);}
.menu040_wrap .sub4-2_cont .tbl tbody tr td.td_state.state_confirmed {background: var(--badge-nv-bg);    color: var(--badge-nv-color);}
.menu040_wrap .sub4-2_cont .tbl tbody tr td.td_state.state_invoice { background: var(--badge-pp-bg);
color: var(--badge-pp-color);}
.menu040_wrap .sub4-2_cont .tbl tbody tr td.td_state.state_voucher {background: var(--badge-or-bg);
color: var(--badge-or-color);}
.menu040_wrap .sub4-2_cont .tbl tbody tr td.td_state.state_event_done { background: var(--badge-ye-bg);
color: var(--badge-ye-color);}
.menu040_wrap .sub4-2_cont .tbl tbody tr td.td_state.state_cancel { background: var(--badge-re-bg);
color: var(--badge-re-color);}


/* 홈페이지업무 - 게시판관리 */
.page_sidenav .accordion .menuitem .acc_cont > li > a { display: block; padding: 0.5rem 1rem;}


/* 경영관리시스템 - 수익관리시스템 */
.menu120_wrap .page_section .revenueMgnt_cont {}
.menu120_wrap .page_section .revenueMgnt_cont .tbl_box{max-height: 40rem;}
.menu120_wrap .page_section .revenueMgnt_cont .tbl_box .tbl thead {position: sticky; top: 0; z-index: 10;}
.menu120_wrap .page_section .revenueMgnt_cont .tbl_box .tbl tbody tr.total {position: sticky; bottom: 0; z-index: 10;}


/* 기초환경설정 - 상품카테고리 */
.menu100_wrap .categori_cont .tbl .catelist { display: flex; flex-direction: column;}
.menu100_wrap .categori_cont .tbl .catelist .item { padding: 0.5rem 1rem;   border-bottom: 1px solid var(--basic-border);}
.menu100_wrap .categori_cont .tbl .catelist .item.last { border-bottom: 0;  display: flex
; justify-content: center;}

.descobx * { color: var(--basic-darkgray); }
.badge { position: relative; top: 3px; }
.descobx i { position: relative; top: 3px; }

.pop_list { position: absolute; z-index: 9; border: 1px solid #ccc; }
.pop_list img { max-width: 100%; }
.pop_list .pop_close { margin-top: 10px; background: #eee; padding: 10px; text-align: right;}