* { box-sizing: border-box; margin: 0; padding: 0; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; }
body { background-color: #0f0f13; color: #fff; overflow-x: hidden; }

/* 星空画布 */
#star-canvas { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: -1; background: radial-gradient(circle at center, #1a1a24 0%, #0f0f13 100%); }

/* 悬浮齿轮按钮 */
#toggle-btn { position: fixed; top: 20px; right: 20px; z-index: 100; width: 45px; height: 45px; border-radius: 50%; border: none; background: rgba(255,255,255,0.1); color: white; font-size: 20px; cursor: pointer; backdrop-filter: blur(10px); transition: 0.3s; }
#toggle-btn:hover { background: rgba(255,255,255,0.2); transform: rotate(90deg); }

/* 轮播图容器 */
.swiper { width: 100%; height: 65vh; margin-bottom: 20px; }
.swiper-slide { display: flex; justify-content: center; align-items: center; border-radius: 15px; overflow: hidden; box-shadow: 0 15px 35px rgba(0,0,0,0.5); }
.swiper-slide img { width: 100%; height: 100%; object-fit: cover; }

/* 控制面板 */
.controls {
    display: flex; justify-content: center; gap: 15px; margin: 20px auto; padding: 15px;
    background: rgba(255,255,255,0.05); border-radius: 12px; max-width: 850px; backdrop-filter: blur(15px);
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s;
    border: 1px solid rgba(255,255,255,0.1);
}
.controls.hidden { transform: translateY(-150%); opacity: 0; pointer-events: none; position: absolute; }
select, button, .upload-btn {
    padding: 10px 20px; border: none; border-radius: 8px; background: rgba(42, 42, 53, 0.8); color: white; cursor: pointer; transition: 0.3s; font-size: 14px;
}
select:focus { outline: none; border-color: #ff4757; }
button:hover, .upload-btn:hover { background: #3f3f4e; box-shadow: 0 0 10px rgba(255,255,255,0.2); }
#login-btn { background: linear-gradient(45deg, #ff4757, #ff6b81); }
#login-btn:hover { box-shadow: 0 0 15px rgba(255, 71, 87, 0.5); }

/* 照片墙 */
.photo-wall { column-count: 4; column-gap: 15px; padding: 20px; max-width: 1400px; margin: 0 auto; }
.photo-item { break-inside: avoid; margin-bottom: 15px; position: relative; border-radius: 10px; overflow: hidden; cursor: pointer; transition: transform 0.3s, box-shadow 0.3s; }
.photo-item img { width: 100%; display: block; border-radius: 10px; }
.photo-item:hover { transform: translateY(-5px); box-shadow: 0 15px 25px rgba(0,0,0,0.6); }
.delete-btn { position: absolute; top: 10px; right: 10px; background: rgba(255, 71, 87, 0.8); color: white; border: none; border-radius: 50%; width: 30px; height: 30px; cursor: pointer; display: none; backdrop-filter: blur(5px); align-items: center; justify-content: center; font-size: 18px; }
.photo-item:hover .delete-btn.admin-mode { display: flex; }

/* 上传进度提示 */
#upload-status { position: fixed; bottom: 30px; left: 50%; transform: translateX(-50%); background: rgba(0,0,0,0.8); padding: 15px 30px; border-radius: 30px; display: none; z-index: 1000; }
