@charset "utf-8";

/*
    사이드바 네비게이션 CSS
    - .sideNav 하위 및 .aside_util 일부 오버라이드 포함
    - sidebar.html > aside_nav > side_navigation.html 전용
*/

/* 인라인 검색 폼 */
.aside_util .aside_util__searchForm {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 14px;
    padding: 0 12px;
    height: 40px;
    background: var(--mono-5-f6);
    border-radius: var(--radius-12);
    box-sizing: border-box;
}

.aside_util .aside_util__searchInput {
    flex: 1;
    height: 100%;
    border: none;
    background: transparent;
    font-size: 14px;
    color: var(--font-color-base);
    outline: none;
}

.aside_util .aside_util__searchInput::placeholder {
    color: var(--mono-3-c9);
}

.aside_util .aside_util__searchSubmit {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
}

.aside_util .aside_util__searchSubmit img {
    width: 18px;
    height: 18px;
}

.sideNav {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* 항목 간 구분선 전부 제거 */
.sideNav__item {
    border-bottom: none;
}

.sideNav__link {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 14px 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--font-color-base);
    text-decoration: none;
    box-sizing: border-box;
}

.aside_util .aside_util__branchLabel {
    margin: 30px 0 8px;
    font-size: 16px;
    font-weight: 600;
    color: var(--font-color-base);
}

/* 지점 그리드 — slideMenu.css의 .aside_util ul/li 스타일을 덮어씀 */
.aside_util .sideNav__branchGrid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    align-items: unset;
    gap: unset;
    list-style: none;
    width: 100%;
    margin: 16px 2px;
    padding: 8px;
    background: var(--mono-5-f6);
    border-radius: var(--radius-12);
    box-sizing: border-box;
}

.aside_util .sideNav__branchGrid li {
    display: block;
    width: auto;
    height: auto;
    line-height: normal;
    border-radius: 0;
    border: none;
    text-align: center;
}

.aside_util .sideNav__branchGrid li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 38px;
    padding: 20px 2px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    color: #000;
    text-decoration: none;
    text-align: center;
    word-break: keep-all;
    box-sizing: border-box;
    transition: color 0.2s, background 0.15s;
    -webkit-tap-highlight-color: transparent;
}

@media (max-width: 1024px) {
    .aside_util .sideNav__branchGrid li a:hover,
    .aside_util .sideNav__branchGrid li a:active {
        color: inherit;
        background: transparent;
    }

    .aside_util .sideNav__branchGrid .sideNav__branchItem--active a:hover,
    .aside_util .sideNav__branchGrid .sideNav__branchItem--active a:active {
        color: var(--point-color-primary);
    }
}

/* PC의 마우스 환경에서만 hover/press 효과를 사용합니다. */
@media (min-width: 1025px) and (hover: hover) and (pointer: fine) {
    .sideNav__link:hover,
    .aside_util .sideNav__branchGrid li a:hover {
        color: var(--point-color-primary);
    }

    .aside_util .sideNav__branchGrid li a:active {
        background: rgba(0,0,0,0.06);
    }

    .aside_util .sideNav__bookingBtn:active {
        opacity: 0.85;
    }
}

.aside_util .sideNav__branchGrid .sideNav__branchItem--active a {
    color: var(--point-color-primary);
    font-weight: 700;
}

/* 지점 페이지 접속 시 사이드바에 자동 주입되는 예약 버튼 */
.aside_util .sideNav__bookingBtn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 0 12px;
    border-radius: var(--radius-12);
    background: var(--point-color-primary);
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    box-sizing: border-box;
    transition: opacity 0.2s;
}

/* 번역 시 3열 전환 + font-size 축소 */
html.translated-ltr .aside_util .sideNav__branchGrid,
html.translated-rtl .aside_util .sideNav__branchGrid {
    grid-template-columns: repeat(3, 1fr);
}


/* 오픈 예정 */
.sideNav__branchItem--soon span {
    display: block;
    padding: 17px 2px;
    font-size: 14px;
    font-weight: 500;
    color: var(--mono-2-95);
    text-align: center;
}

/*
    아직 안 연 지점은 흐린 글씨로 둡니다. 다른 지점과 같은 검정이면
    눌러서 갈 수 있는 곳으로 오해하게 됩니다.

    위 규칙은 span 만 겨냥하는데 실제 마크업은 <a href="/coming-soon/"> 라서
    글자색이 걸리지 않고 검정으로 나오고 있었습니다.
    바로 위 .sideNav__branchGrid li a 의 검정보다 셈이 세야 이겨서,
    선택자를 그쪽과 같은 자리(그리드 안)로 맞춰 적습니다.
*/
.aside_util .sideNav__branchGrid .sideNav__branchItem--soon a,
.aside_util .sideNav__branchGrid .sideNav__branchItem--soon span {
    color: var(--mono-2-95);
}
