@charset "utf-8";

/* =========================================================
   ILB ITINERARY CSS
   - 자유일정 / 패키지 일정표 공용
   - 사용 구조:
     <div class="itinerary">
       <div class="schedule_table">...</div>
     </div>
========================================================= */

.itinerary,
.itinerary *{
  box-sizing:border-box;
}

.itinerary{
  width:100%;
  margin:0;
  padding:0;
  color:#151515;
  word-break:keep-all;
}

.itinerary table{
  width:100% !important;
  max-width:100%;
  border-collapse:separate !important;
  border-spacing:0 !important;
}

.itinerary .schedule_table{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  background:#ffffff !important;
  color:#555555 !important;
  font-size:14px !important;
  line-height:1.75 !important;
  letter-spacing:-0.3px;
  overflow:visible !important;
}

/* 바깥 일정표 카드만 잡기 */
.itinerary .schedule_table > table{
  width:100% !important;
  margin:0 0 14px !important;
  border:1px solid #e3e5e8 !important;
  border-radius:18px !important;
  background:#ffffff !important;
  overflow:hidden !important;
  box-shadow:none !important;
}

/* 중첩 테이블은 표처럼 보이지 않도록 제거 */
.itinerary .schedule_table table table{
  width:100% !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.itinerary .schedule_table td{
  padding:14px 16px !important;
  border-right:0 !important;
  border-bottom:1px solid #eef0f3 !important;
  color:#555555 !important;
  font-size:14px !important;
  line-height:1.75 !important;
  vertical-align:top !important;
  word-break:keep-all !important;
}

.itinerary .schedule_table table table td{
  border:0 !important;
  padding:0 !important;
  background:transparent !important;
}

.itinerary .schedule_table tr:last-child td{
  border-bottom:0 !important;
}

.itinerary .rtop,
.itinerary .rbottom,
.itinerary .rtop *,
.itinerary .rbottom *{
  display:none !important;
}

.itinerary .box,
.itinerary .schedule{
  width:100% !important;
  background:#ffffff !important;
  color:#555555 !important;
}

.itinerary .day_form_title{
  background:#f8f9fb !important;
  color:#151515 !important;
  font-weight:700 !important;
}

.itinerary .day_form_title td{
  background:#f8f9fb !important;
  color:#555555 !important;
  text-align:center !important;
  font-weight:700 !important;
  border-bottom:1px solid #e3e5e8 !important;
}

.itinerary .day_view{
  background:#ffffff !important;
  color:#151515 !important;
}

.itinerary .day_view img{
  max-width:100%;
  height:auto;
}

.itinerary .day_view ul,
.itinerary .day_view ol{
  margin:0 !important;
  padding-left:18px !important;
}

.itinerary .day_view ul li,
.itinerary .day_view ol li{
  float:none !important;
  list-style-position:outside !important;
  margin:0 0 6px !important;
}

.itinerary .order_1,
.itinerary .order_2,
.itinerary .order_3,
.itinerary .order_4,
.itinerary .order_5{
  color:#555555 !important;
  border-color:#eef0f3 !important;
  list-style-type:none;
  background:#ffffff !important;
}

.itinerary .order_1,
.itinerary .order_2{
  text-align:center !important;
  font-weight:700 !important;
  color:#333333 !important;
}

.itinerary .order_4{
  line-height:1.8 !important;
  padding-left:22px !important;
}

.itinerary .order_5{
  line-height:1.8 !important;
}

.itinerary .order_5 span,
.itinerary .order_5 b,
.itinerary .order_5 strong{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:#f8f9fb;
  color:#1f2328;
  font-size:13px;
  font-weight:700;
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width:768px){

  .itinerary,
  .itinerary .schedule_table{
    overflow:visible !important;
  }

  .itinerary .schedule_table > table,
  .itinerary .schedule_table > table > tbody,
  .itinerary .schedule_table > table > tbody > tr,
  .itinerary .schedule_table > table > tbody > tr > td{
    display:block !important;
    width:100% !important;
    box-sizing:border-box !important;
  }

  .itinerary .schedule_table > table{
    margin:0 0 14px !important;
    border:1px solid #e3e5e8 !important;
    border-radius:16px !important;
    overflow:hidden !important;
    background:#ffffff !important;
  }

  .itinerary .schedule_table > table > tbody > tr > td{
    border-right:0 !important;
    border-bottom:1px solid #eef0f3 !important;
    padding:10px 16px !important;
    font-size:14px !important;
    line-height:1.7 !important;
    text-align:left !important;
  }

  .itinerary .schedule_table > table > tbody > tr:last-child > td:last-child{
    border-bottom:0 !important;
  }

  .itinerary .day_form_title{
    display:none !important;
  }

  .itinerary .day_view td{
    padding:14px 16px 10px !important;
    background:#ffffff !important;
    border-bottom:1px solid #eef0f3 !important;
  }

  .itinerary .day_view img{
    display:none !important;
  }

  .itinerary .day_view td:before{
    content:"DAY";
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:32px;
    min-width:68px;
    padding:0 13px;
    border-radius:999px;
    background:#1f2328;
    color:#ffffff;
    font-size:12px;
    line-height:1;
    font-weight:800;
    letter-spacing:.04em;
  }

  .itinerary .order_1:before{
    content:"지역";
    display:block;
    margin-bottom:4px;
    color:#9a9a9a;
    font-size:12px;
    font-weight:700;
  }

  .itinerary .order_2:before{
    content:"교통편";
    display:block;
    margin-bottom:4px;
    color:#9a9a9a;
    font-size:12px;
    font-weight:700;
  }

  .itinerary .order_4:before{
    content:"상세 일정";
    display:block;
    margin-bottom:6px;
    color:#9a9a9a;
    font-size:12px;
    font-weight:700;
  }

  .itinerary .order_5:before{
    content:"식사";
    display:block;
    margin-bottom:4px;
    color:#9a9a9a;
    font-size:12px;
    font-weight:700;
  }

  .itinerary .order_1,
  .itinerary .order_2,
  .itinerary .order_5{
    background:#f8f9fb !important;
    color:#555555 !important;
    font-weight:600 !important;
  }

  .itinerary .order_4{
    background:#ffffff !important;
    color:#333333 !important;
    padding-left:16px !important;
  }

  .itinerary .schedule_table br{
    line-height:1.6;
  }
}

@media (max-width:480px){

  .itinerary .schedule_table > table{
    border-radius:14px !important;
  }

  .itinerary .schedule_table > table > tbody > tr > td{
    padding:9px 14px !important;
    font-size:13.5px !important;
  }
}

/* =========================================================
   FREE VIEW CALENDAR IFRAME SAFETY
   - free_view_d.php calendar clipping fix
========================================================= */
#step2 #div_iframe{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
}

#step2 #IframeId{
  display:block !important;
  width:100% !important;
  min-height:560px !important;
  border:0 !important;
  overflow:hidden !important;
}

@media (max-width:768px){
  #step2 #IframeId{
    min-height:760px !important;
  }
}


/* =========================================================
   ITINERARY SECTION WRAP
   - 일정표 바깥 카드/테두리 제거용 공용 섹션
========================================================= */
.itinerary-section{
  margin-top:34px;
  padding:0;
  border:0;
  background:transparent;
}

@media (max-width:768px){
  .itinerary-section{
    margin-top:24px;
  }
}
