.status-bar {
    height: 10px;
}

.view {
    height:1%;
}

.app-title {
    font-family: "Koulen";
    font-size: 50px;
    color: var(--main);
    text-align: center;
    font-weight: 400;
    margin: 10px;
}

/* 메인 콘텐츠 */
.main-content {
    flex: 1;
}

/* 검색 폼 - 헤더 안에 위치 */
.main-search-section {
    padding: 0px 16px 10px 16px;
    position: relative;
}

.main-search-container {
    display: flex;
    align-items: center;
    padding: 16px;
    background-color: var(--neutralwhitepure-white);
    border-radius: 100px;
    border: 1px solid var(--neutralslate-blackslate-black-50);
    box-shadow: 0px 6px 40px -10px rgba(64, 72, 82, 0.15);
    gap: 8px;
}

.main-search-input-wrapper {
    flex: 1;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.main-search-input-wrapper:hover {
    opacity: 0.8;
}

.main-search-input {
    width: 100%;
    border: none;
    background: transparent;
    font-size: 16px;
    color: var(--neutralslate-blackslate-black-100);
    font-family: "Satoshi", Helvetica;
    outline: none;
}

.main-search-input::placeholder {
    color: var(--neutralslate-blackslate-black-100);
}

.main-search-button {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}
.main-search-icon {
    width: 20px;
    height: 20px;
}

/* 추천 제품 롤링배너 영역 */
.featured-container {
    padding: 33px 37px;
    margin-bottom: 15px;
}

/* 롤링배너 컨테이너 */
.rolling-banner-container {
    position: relative;
    width: 100%;
    height: 390px;
    overflow: hidden;
    border-radius: 20px;
    background: linear-gradient(135deg, #f7f8fa 0%, #e8e9ea 100%);
    box-shadow: 0px 8px 32px rgba(0, 0, 0, 0.1);
}

/* 롤링배너 */
.rolling-banner {
    display: flex;
    transition: transform 0.5s ease-in-out;
    height: 100%;
}

/* 배너 아이템 */
.banner-item {
    flex: 0 0 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 20px;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.banner-item:hover {
    transform: scale(1.02);
}

/* 배너 이미지 */
.banner-image {
    width: 290px;
    height: 290px;
    object-fit: cover;
    border-radius: 15px;
    margin-bottom: 15px;
    box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
}

.banner-image.placeholder {
    background: linear-gradient(135deg, #e8e9ea 0%, #d1d3d4 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #666;
    font-size: 14px;
    font-weight: 500;
}

/* 배너 정보 */
.banner-info {
    text-align: center;
    color: #333;
}

.banner-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 8px;
    color: #2c3e50;
    line-height: 1.2;
}

.banner-subtitle {
    font-size: 16px;
    color: #666;
    font-weight: 500;
    line-height: 1.4;
}

/* 네비게이션 버튼 */
.banner-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.9);
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    font-size: 24px;
    font-weight: bold;
    color: #56AAB2;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.1);
    z-index: 10;
    opacity: 0;
    visibility: hidden;
}

.banner-nav:hover {
    background: rgba(255, 255, 255, 1);
    transform: translateY(-50%) scale(1.1);
    box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.15);
}

.banner-nav.prev {
    left: 20px;
}

.banner-nav.next {
    right: 20px;
}

/* 배너 아이템 호버 시 네비게이션 버튼 표시 */
.rolling-banner-container:hover .banner-nav {
    opacity: 1;
    visibility: visible;
}

/* 인디케이터 제거됨 */


.nav-icon {
    width: 24px;
    height: 24px;
    margin-bottom: 5px;
    fill: currentColor;
}

.nav-text {
    font-size: 12px;
    font-family: "Roboto", Helvetica, Arial, sans-serif;
    letter-spacing: 0.4px;
    line-height: 16px;
}

/* 아이콘 컨테이너와 알림 배지 */
.nav-icon-container {
    position: relative;
    display: inline-block;
    margin-bottom: 5px;
}

.notification-badge {
    position: absolute;
    top: -8px;
    right: -8px;
    background-color: #D2691E;
    color: white;
    border-radius: 50%;
    min-width: 18px;
    height: 18px;
    font-size: 10px;
    font-weight: 500;
    font-family: "Satoshi", Helvetica;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    padding: 2px 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

/* 홈 버튼 특별 스타일 */
.nav-item.home-item {
    position: relative;
}

.nav-item.home-item .home-link {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #000000;
    text-decoration: none;
    transition: all 0.3s ease;
}

.home-circle {
    position: relative;
    width: 74px;
    height: 74px;
    background-color: #ffffff;
    border-radius: 50%;
    border: 1px solid #f8f8f8;
    margin-bottom: 60px;
    box-shadow: 0px 4px 20px rgba(183, 180, 180, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    cursor: pointer;
}

.home-circle:hover {
    box-shadow: 0px 4px 20px rgba(183, 180, 180, 0.7);
    transform: translateY(-1px);
}

.home-circle:active {
    transform: translateY(0px);
    box-shadow: 0px 1px 8px rgba(183, 180, 180, 0.5);
}

.home-icon {
    width: 37px;
    height: 38px;
    fill: #56AAB2;
}

/* 다른 nav-item들의 기본 active 스타일 제거 (홈 버튼 제외) */
.nav-item.active:not(.home-item) {
    position: relative;
}

.nav-item.active:not(.home-item) .nav-link {
    position: relative;
    z-index: 2;
}

.nav-item.active:not(.home-item)::before {
    content: "";
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 54px;
    height: 57px;
    background-color: #ffffff;
    border-radius: 50%;
    border: 1px solid #f8f8f8;
    box-shadow: 0px 2px 14px rgba(183, 180, 180, 0.5);
    z-index: 1;
}

h2{
    font-family: "Satoshi", Helvetica;
    font-size: 20px;
    font-weight: 700;
    color: #2c3e50;
    line-height: 1.2;
    margin-bottom: 8px;
    text-align: center;
}

.username-highlight {
    color: var(--main);
    font-weight: 800;
}

.about-healthtant {
    padding: 32px 20px;
    text-align: center;
    margin: 20px;
    border-top: 1px solid #e0e0e0;
    padding-top: 40px;
  }
  
.about-title {
    font-size: 20px;
    font-weight: 700;
    color: #56AAB2;
    margin-bottom: 12px;
  }
  
.about-text {
    font-size: 14px;
    font-weight: 400;
    color: #444;
    line-height: 1.5;
    text-align: left;
  }