/**
 * 主页面样式
 */

/* 5层布局 */
.layer-wallpaper,
.layer-decoration,
.layer-background,
.layer-content,
.layer-interaction {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* 壁纸层 */
.layer-wallpaper {
    background-color: var(--wallpaper-default);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* 装饰层 */
.layer-decoration {
    pointer-events: none;
}

/* 背景框层 */
.layer-background {
    display: flex;
    flex-direction: column;
}

/* 内容层 */
.layer-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 60px 0 40px 0;
    overflow-y: auto;
    overflow-x: hidden;
    scroll-behavior: smooth;
}

/* 内容层内的元素默认宽度和内边距 */
.layer-content > * {
    width: 100%;
    max-width: 100%;
}

/* 需要左右内边距的元素 */
.search-box-container,
.navigation-grid-container {
    padding-left: 20px;
    padding-right: 20px;
}

/* 层级设置 */
.layer-wallpaper {
    z-index: 1;
}

.layer-decoration {
    z-index: 2;
}

.layer-background {
    z-index: 3;
}

.layer-content {
    z-index: 4;
}

.layer-interaction {
    z-index: 5;
}

/* 顶部导航在背景框层，与吸顶搜索框同级 */
.top-nav-bar {
    z-index: 100;
}

/* 搜索框容器 */
.search-box-container {
    z-index: 50;
}

/* 吸顶搜索框 - 与顶部导航栏同级 */
.search-box-container.sticky-mode {
    z-index: 100;
}

/* 腰部导航 */
.middle-navbar-container {
    z-index: 30;
}

/* 导航容器 */
.navigation-grid-container {
    z-index: 10;
}

/* 底部信息栏 */
.footer-bar-container {
    z-index: 10;
}

/* 搜索建议最高层级 */
.search-suggestions {
    z-index: 9999 !important;
}

/* 交互层 */
.layer-interaction {
    pointer-events: none;
}

.interaction-cursor {
    position: absolute;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: radial-gradient(circle, var(--hover-bg) 0%, transparent 70%);
    transform: translate(-50%, -50%);
    pointer-events: none;
    transition: all 0.1s ease;
    mix-blend-mode: difference;
    opacity: 0.5;
}

/* 响应式 */
@media (max-width: 768px) {
    .layer-content {
        padding: 50px 16px 30px 16px;
    }
}
