/* === Bottom Nav (모바일 480px 기준) === */
.bottom-nav {
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  bottom: max(12px, env(safe-area-inset-bottom, 12px));
  width: min(480px, 94vw);
  padding: 8px 6px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 12px 30px rgba(0,0,0,.12);
  display: flex;
  justify-content: space-around;
  align-items: center;
  z-index: 9999;
}

/* 메인 아이템 */
.bn-item {
  position: relative;
  min-width: 56px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  color: #333;
  font-size: 12px;
  text-decoration: none;
}
.bn-item i { font-size: 20px; }

/* 버튼형 (밥상연구/케어일지) */
.menu-btn {
  all: unset;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  color: #333;
  font-size: 12px;
}

/* 드롭다운 */
.has-menu { position: relative; }
.menu {
  position: absolute;
  bottom: 48px;
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  background: #fff;
  border: 1px solid #e6e6e6;
  box-shadow: 0 12px 24px rgba(0,0,0,.12);
  border-radius: 12px;
  padding: 8px 10px;
  min-width: 140px;
  display: none;
  z-index: 10000;
}
.has-menu.open .menu { display: block; }

/* 드롭다운 항목 */
.menu li { list-style: none; }
.menu a {
  display: block;
  padding: 8px 10px;
  font-size: 14px;
  color: #333;
  text-decoration: none;
  border-radius: 8px;
}
.menu a:hover { background: #f5f5f7; color: #333; }

/* 호버 지원 환경에서만 hover로 열림 */
@media (hover:hover) {
  .has-menu:hover .menu { display: block; }
}

/* 드롭다운 있음 표시 */
.bottom-nav .has-menu .menu-btn span {
  position: relative;
  padding-right: 12px;
}
.bottom-nav .has-menu .menu-btn span::after {
  content: '▾';
  position: absolute;
  right: -2px;
  top: -1px;
  font-size: 15px;
  opacity: .45;
}
.bottom-nav .has-menu.open .menu-btn span::after {
  content: '▴';
  opacity: .85;
}

/* 터치 하이라이트 제거 */
.bottom-nav,
.bottom-nav * {
  -webkit-tap-highlight-color: transparent;
  user-select: none;
}

/* ▼ bottom-nav 안의 모든 링크/버튼 hover 색상 고정 */
.bottom-nav a,
.bottom-nav a:link,
.bottom-nav a:visited,
.bottom-nav a:hover,
.bottom-nav a:active,
.bottom-nav .bn-item,
.bottom-nav .bn-item:hover,
.bottom-nav .bn-item:active,
.bottom-nav .bn-item:focus,
.bottom-nav .menu-btn,
.bottom-nav .menu-btn:hover,
.bottom-nav .menu-btn:active,
.bottom-nav .menu-btn:focus,
.bottom-nav .menu-btn:focus-visible {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: #333 !important;
  text-decoration: none !important;
  outline: none !important;
}

/* 아이콘 색상 상속 */
.bottom-nav i { color: inherit !important; }
.bottom-nav svg { fill: currentColor !important; }

/* 🐾 floating_nav.css 맨 아래 추가 */

/* PC 화면(768px 이상)에서는 하단 플로팅 바 숨김 */
@media (min-width: 768px) {
  .bottom-nav {
    display: none !important;
  }
}