:root {
    --glass: rgba(255, 255, 255, 0.12);
    --glass-heavy: rgba(255, 255, 255, 0.25);
    --border: 1px solid rgba(255, 255, 255, 0.2);
}

body {
    margin: 0; background: #000; color: #fff;
    font-family: "SF Pro Display", -apple-system, sans-serif;
    overflow: hidden; height: 100vh;
}

/* 弥散渐变背景：这才是高级感的来源 */
.bg-canvas {
    position: fixed; width: 100vw; height: 100vh; z-index: -1;
    background: radial-gradient(at 0% 0%, #4f46e5 0px, transparent 50%),
                radial-gradient(at 100% 0%, #7c3aed 0px, transparent 50%),
                radial-gradient(at 50% 100%, #db2777 0px, transparent 50%);
    filter: blur(80px); opacity: 0.6;
}

#app {
    height: 100%; display: flex; align-items: center; justify-content: center;
}

/* 视图切换动画 */
.view {
    position: absolute; width: 90%; max-width: 1000px;
    opacity: 0; transform: scale(0.9) translateY(30px);
    pointer-events: none; transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.view.active {
    opacity: 1; transform: scale(1) translateY(0); pointer-events: auto;
}

.main-title {
    font-size: 3.5rem; text-align: center; margin-bottom: 50px;
    background: linear-gradient(to bottom, #fff, #aaa);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}

/* 玻璃卡片 */
.menu-grid { display: flex; gap: 30px; justify-content: center; }

.glass-card {
    background: var(--glass); backdrop-filter: blur(20px);
    border: var(--border); border-radius: 32px;
    padding: 50px; width: 220px; text-align: center; cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* 点击时的“果冻”回弹效果 */
.glass-card:active { transform: scale(0.92); background: var(--glass-heavy); }

.glass-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.3);
    border: 1px solid rgba(255, 255, 255, 0.4);
}

.icon-wrap { font-size: 60px; margin-bottom: 20px; }

/* 二级列表样式 */
.nav-header { display: flex; align-items: center; margin-bottom: 30px; }
.btn-back {
    background: var(--glass); border: var(--border); color: #fff;
    padding: 10px 20px; border-radius: 12px; cursor: pointer; margin-right: 20px;
}

.file-grid {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 20px; max-height: 60vh; overflow-y: auto; padding: 10px;
}

.file-item {
    background: var(--glass); border-radius: 20px; padding: 20px;
    text-align: center; text-decoration: none; color: #fff; border: var(--border);
    transition: 0.3s;
}

.file-item:hover { background: var(--glass-heavy); transform: scale(1.05); }
.file-item img, .file-item video { width: 100%; border-radius: 12px; margin-bottom: 10px; }
