/* 모바일 전용 스타일 */

/* 모바일 html,body 스크롤 방지 */
html.mobile-layout,
html.mobile-layout body {
  margin: 0;
  padding: 0;
  height: 100%;
  overflow: hidden;
}

/* 모바일 레이아웃 컨테이너 */
.mobile-layout-container {
  display: flex;
  flex-direction: column;
  height: 100dvh;
  overflow: hidden;
}

/* 모바일 툴바 (기본 56px) */
.mobile-toolbar {
  flex-shrink: 0;
  background-color: #ffffff;
}

/* 일정 페이지 툴바 (헤더 + 날짜 선택기) */
.mobile-toolbar-schedule {
  flex-shrink: 0;
  background-color: #ffffff;
}

/* 하단 네비게이션 */
.mobile-bottom-nav {
  flex-shrink: 0;
}

/* 컨텐츠 영역 - 스크롤 가능, 스크롤바 숨김 */
.mobile-content {
  flex: 1;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE/Edge */
}

.mobile-content::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera */
}

/* 모바일 safe-area 지원 (노치, 홈 인디케이터) */
.safe-area-bottom {
  padding-bottom: env(safe-area-inset-bottom, 0);
}

.safe-area-top {
  padding-top: env(safe-area-inset-top, 0);
}

/* 모바일 달력 스타일 */
.mobile-calendar-wrapper .react-calendar__navigation button:hover {
  background-color: #f3f4f6;
  border-radius: 0.5rem;
}

.mobile-calendar-wrapper .react-calendar__navigation__label {
  font-weight: 600;
  font-size: 0.875rem;
  color: #374151;
}

.mobile-calendar-wrapper .react-calendar__month-view__weekdays {
  text-align: center;
  font-size: 0.75rem;
  font-weight: 500;
  color: #6b7280;
}

.mobile-calendar-wrapper .react-calendar__month-view__weekdays__weekday {
  padding: 0.5rem 0;
}

.mobile-calendar-wrapper .react-calendar__month-view__weekdays__weekday abbr {
  text-decoration: none;
}

/* 일요일 (빨간색) */
.mobile-calendar-wrapper
  .react-calendar__month-view__weekdays__weekday:first-child {
  color: #f87171;
}

/* 토요일 (파란색) */
.mobile-calendar-wrapper
  .react-calendar__month-view__weekdays__weekday:last-child {
  color: #60a5fa;
}

.mobile-calendar-wrapper .react-calendar__tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0.25rem;
  background: none;
  border: none;
  font-size: 0.75rem;
  color: #374151;
}

.mobile-calendar-wrapper .react-calendar__tile:hover {
  background-color: #f3f4f6;
  border-radius: 9999px;
}

.mobile-calendar-wrapper .react-calendar__tile abbr {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 9999px;
}

/* 이웃 달 날짜 (흐리게) */
.mobile-calendar-wrapper
  .react-calendar__month-view__days__day--neighboringMonth {
  color: #d1d5db;
}

/* 일요일 */
.mobile-calendar-wrapper .react-calendar__tile.sunday abbr {
  color: #ef4444;
}

/* 토요일 */
.mobile-calendar-wrapper .react-calendar__tile.saturday abbr {
  color: #3b82f6;
}

/* 오늘 */
.mobile-calendar-wrapper .react-calendar__tile--now abbr {
  background-color: #548360;
  color: white;
  font-weight: 700;
}

/* 선택된 날짜 */
.mobile-calendar-wrapper .react-calendar__tile--active abbr {
  background-color: #548360;
  color: white;
}

.mobile-calendar-wrapper .react-calendar__tile--active:enabled:hover abbr,
.mobile-calendar-wrapper .react-calendar__tile--active:enabled:focus abbr {
  background-color: #456e50;
}
