@charset "utf-8";

html {
  scroll-behavior: smooth;
  font-size: 16px;
}

@media (max-width: 576px) {
  html {
    font-size: 15px;
  }
}

@media (min-width: 768px) {
  html {
    font-size: 17px;
  }
}

@media (min-width: 1200px) {
  html {
    font-size: 18px;
  }
}

/* 그누보드 */
.msg_sound_only, .sound_only {display:inline-block !important;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important}
.btn_admin { display: none; }

/* 캡챠 자동등록(입력)방지 기본 -pc */
#captcha {display:inline-block;position:relative;max-width:none;background:none;text-align:left;}
#captcha legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden;}
#captcha #captcha_img {height:40px;border:1px solid #ccc;vertical-align:top;padding:0;margin:0;border-radius:3px}
#captcha #captcha_mp3 {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat;text-indent:-999px;border-radius:3px}
#captcha #captcha_reload {margin:0;padding:0;width:40px;height:40px;border:0;background:transparent;vertical-align:middle;overflow:hidden;cursor:pointer;background:url('../../../img/captcha2.png') no-repeat  0 -40px;text-indent:-999px;border-radius:3px}
#captcha #captcha_key {margin:0 0 0 3px;padding:0 5px;width:90px;height:40px;border:1px solid #ccc;background:#fff;font-size:1.333em;font-weight:bold;text-align:center;border-radius:3px;vertical-align:top}
#captcha #captcha_info {display:block;margin:5px 0 0;font-size:80%;color:#ff0000;letter-spacing:-0.1em}
@media (max-width: 575px) {	#captcha_audio {display:none !important;} }

/* 커스텀 */
a { text-decoration: none; }
select { font-size: 14px; }

#footer .logo img {	filter: grayscale(1); top: 0px; }

#latest h4 a { color: #000; }
#latest h4 a:hover { text-decoration: none; }
#latest li a { color: #777; }

.pagination { margin-top: 0rem; margin-bottom: 0rem; }

.ck.ck-editor__editable { min-height: 200px !important; }

/*
.dropdown-item { font-size: 1rem; }
.title { white-space: nowrap; text-overflow: ellipsis; overflow: hidden; width: 100%; }
*/

body{padding-bottom:0px;font-family: "Noto Sans KR", sans-serif; font-optical-sizing: auto;font-size: 1rem; background:#FFFFFF;}
/*body{padding-bottom:0px;font-family: 'Roboto', sans-serif;font-size: 0.85rem; background:#FFFFFF;}*/

/* 모바일 전용 표시 */
@media (max-width: 768px) { 
  .bottom-nav {
    display: flex;
  }
  body{  padding-bottom: calc(60px + env(safe-area-inset-bottom)); } 
  
   .container-fluid {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

.bg-purple {background-color: #6f42c1 !important; /* Bootstrap purple */ color: #fff;}
.bg-orange {background-color: #fd7e14 !important; /* Bootstrap orange */ color: #fff;}

/*.icon-small {width: 16px;height: 16px;} */

.bottom-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60px;
  display: flex;
  background: #fff;
  border-top: 1px solid #ddd;
  z-index: 999;
}

.nav-item {
  flex: 0 0 25%; /*flex: 0 0 18%;*/
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.nav-item.empty-slot {
  pointer-events: none; /* 클릭 방지 */
  background: transparent;
  flex: 0 0 28%;
}

.nav-link {
  text-decoration: none;
  color: #909090;
  font-size: 12px;
}

.nav-link.active {
  text-decoration: none;
  color: #000;
  font-size: 12px;
}

.nav-link i {
  width: 20px;
  height: 20px;
}

/* 가운데 버튼 */
.center-item {
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
}

.center-item .special {
  width: 70px;
  height: 70px;
  background: #ff6600;
  border-radius: 50%;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.center-item .special i {
  font-size: 30px;
  line-height: 1;              /* ✅ 추가 */
  vertical-align: top;      /* ✅ 추가 */
}

#bizInfo li {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 4px;
}

#bizInfo li strong {
  width: 90px;
  font-weight:noraml;
  flex-shrink: 0;
}

.container-fluid{background:#f8f8f8;padding-right:0px;padding-left:0px;margin:0px;}

.hide-scrollbar {
  overflow-x: auto;
  -ms-overflow-style: none;     /* IE/Edge */
  scrollbar-width: none;        /* Firefox */
}
.hide-scrollbar::-webkit-scrollbar {
  display: none;                /* Chrome/Safari */
}

.bg-gradient-box {
  background: linear-gradient(to bottom, #ffffff 0%, #f8f8f8 100%);
}

.bg-grey{
  background-color:#e5e5e5;
}


.badge-premium {
  background-color: #4a90e2; /* 밝은 블루톤 */
  color: #fff;
}

.badge-gold {
  background-color: #f7c948; /* 밝고 부드러운 골드 */
  color: #000;
}

.badge-basic {
  background-color: #ced4da; /* 밝은 회색톤 */
  color: #000;
}

.badge-soft {
	border-radius: 4px; /* 원하는 라운드 값 */
	padding: 0.35em 0.6em;
	font-size: 0.75rem;
}

.page-transition {
    transition: transform 0.4s ease;
    transform: translateX(0);
}

.page-transition.slide-out-left {
    transform: translateX(-100%);
}
.page-transition.slide-out-right {
    transform: translateX(100%);
}

.bottom-modal {
    position: fixed;
    bottom: 0;
    margin: 0;
    width: 100%;
    max-width: 100%;
    height: auto;
    transform: none;
}

.bottom-modal .modal-content {
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
}

.tiny{ font-size: 0.7rem;}

.topbar-hidden {
  opacity: 0;
  pointer-events: none;
  /*transition: opacity 0.3s ease;*/
}

.topbar-visible {
  opacity: 1;
  pointer-events: auto;
  /*transition: opacity 0.3s ease;*/
}

.scroll-menu {
    display: flex;
    overflow-x: auto;
    white-space: nowrap;
    -ms-overflow-style: none;  /* IE, Edge */
    scrollbar-width: none;     /* Firefox */
}
.scroll-menu::-webkit-scrollbar {
    display: none; /* Chrome, Safari */
}

.menu-item {
    flex: 0 0 auto;
    padding: 0.5rem 1rem;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: border-color 0.3s;
}
.menu-item.active {
    border-color: #000;
}

.product-overlay {
    position: absolute;
    top: 0; left: 0; 
    width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    display: none;  /* 초기 숨김 */
}

* {
    -webkit-tap-highlight-color: transparent;
}