/*
 * Z-INDEX 통합 관리 시스템 - 단순화 버전
 * 명확하고 간단한 계층 구조
 */

/* ===== 기본 리셋 ===== */
* {
    box-sizing: border-box;
}

/* ===== 배경 영역 (가장 뒤) ===== */
.visual,
.visual-area,
.main-visual,
section.visual,
div.visual,
.content,
.subPage .visual {
    position: relative;
    z-index: 1;
}

/* ===== 헤더 (중간) ===== */
header,
#header {
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* ===== PC 메뉴 (높음) ===== */
.mainMenu {
    position: relative;
    z-index: 110;
}

.mainMenu .dropdown {
    position: relative;
}

.mainMenu .dropdown-content {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: white;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15);
    min-width: 200px;
    padding: 8px 0;
    visibility: hidden;
    opacity: 0;
    z-index: 120;
    transition: all 0.3s ease;
}

.mainMenu .dropdown:hover .dropdown-content,
.mainMenu .dropdown.active .dropdown-content {
    visibility: visible;
    opacity: 1;
}

/* ===== 모바일 메뉴 (가장 높음) ===== */
.moMenu {
    position: fixed;
    top: 0;
    right: -100%;
    width: 280px;
    height: 100vh;
    background: white;
    z-index: 200;
    padding-top: 100px;
    transition: right 0.3s ease;
    overflow-y: auto;
}

.moMenu.on {
    right: 0;
}

.moMenu .dropdown-content {
    position: relative;
    background: #f8f9fa;
    border-left: 3px solid #007bff;
    margin-left: 20px;
    padding: 10px 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.moMenu .dropdown.active .dropdown-content {
    max-height: 200px;
}

/* ===== 햄버거 메뉴 ===== */
.hamburger {
    position: relative;
    z-index: 210;
    cursor: pointer;
}

/* ===== 오버레이 ===== */
.dim {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.5);
    z-index: 150;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease;
}

.dim.on {
    visibility: visible;
    opacity: 1;
}

/* ===== 모달 (최상위) ===== */
.member-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.5);
    z-index: 1000;
    display: none;
    justify-content: center;
    align-items: center;
}

.member-modal.show {
    display: flex;
}

/* ===== 사용자 메뉴 ===== */
.userMenu {
    position: relative;
    z-index: 110;
} 