:root {
            --purple: #a56cc1;
            --lavender: #a6acec;
            --cyan: #ace7ef;
            --mint: #cefff1;
            --dark: #2d2040;
            --darker: #1a1228;
            --text: #333;
            --text-light: #666;
            --white: #fff;
            --border: #e8e8e8;
            --shadow: 0 4px 20px rgba(165, 108, 193, 0.12);
            --shadow-lg: 0 8px 40px rgba(165, 108, 193, 0.18);
            --radius: 14px;
            --radius-sm: 10px;
            --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        * { margin: 0; padding: 0; box-sizing: border-box; }
        html { scroll-behavior: smooth; scroll-padding-top: 80px; }
        body {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', 'Helvetica Neue', sans-serif;
            background: #faf8fc;
            color: var(--text);
            line-height: 1.7;
            min-width: 320px;
        }
        .top-nav { width:100%; background:var(--white); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:1000; box-shadow:0 2px 16px rgba(0,0,0,0.06); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); }
        .top-nav-inner { max-width:1400px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:0 24px; height:64px; gap:16px; flex-wrap:wrap; }
        .top-nav .site-title h1 { font-size:1.55rem; font-weight:700; background:linear-gradient(135deg, #a56cc1, #a6acec); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; letter-spacing:1px; white-space:nowrap; }
        .nav-links { display:flex; list-style:none; gap:6px; flex-wrap:wrap; align-items:center; }
        .nav-links li a { display:inline-block; padding:8px 14px; text-decoration:none; color:var(--text); font-size:0.9rem; font-weight:500; border-radius:20px; transition:var(--transition); white-space:nowrap; }
        .nav-links li a:hover { background:#f3edf8; color:#a56cc1; }
        .user-status { flex-shrink:0; display:flex; align-items:center; gap:10px; }
        .user-avatar { width:38px; height:38px; border-radius:50%; background:linear-gradient(135deg, #a56cc1, #a6acec); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:700; font-size:1rem; cursor:pointer; transition:var(--transition); flex-shrink:0; }
        .login-text { font-size:0.88rem; color:var(--text-light); cursor:pointer; font-weight:500; white-space:nowrap; transition:var(--transition); }
        .main-container { max-width:1400px; margin:0 auto; display:flex; gap:28px; padding:24px; min-height:100vh; }
        .content-area { flex:1; min-width:0; display:flex; flex-direction:column; gap:36px; }
        .sidebar { width:340px; flex-shrink:0; display:flex; flex-direction:column; gap:24px; position:sticky; top:88px; align-self:flex-start; max-height:calc(100vh - 100px); overflow-y:auto; }
        .sidebar::-webkit-scrollbar { width:4px; }
        .section-block { background:var(--white); border-radius:var(--radius); padding:28px 24px; box-shadow:var(--shadow); transition:var(--transition); border:1px solid transparent; }
        .section-block:hover { box-shadow:var(--shadow-lg); border-color:#e8ddf5; }
        .section-title { font-size:1.35rem; font-weight:700; margin-bottom:20px; padding-left:16px; border-left:4px solid #a56cc1; color:#2d2040; letter-spacing:0.5px; display:flex; align-items:center; gap:10px; }
        .section-title .title-icon { width:28px; height:28px; border-radius:6px; background:linear-gradient(135deg, #a56cc1, #a6acec); flex-shrink:0; }
        .section-subtitle { font-size:0.85rem; color:#999; margin-top:-10px; margin-bottom:18px; padding-left:16px; letter-spacing:0.5px; }
        .banner-area { border-radius:var(--radius); overflow:hidden; position:relative; box-shadow:var(--shadow-lg); background:linear-gradient(135deg, #2d2040, #1a1228); aspect-ratio:2.8/1; min-height:200px; max-height:420px; display:flex; align-items:center; justify-content:center; }
        .banner-area img { width:100%; height:100%; object-fit:cover; display:block; opacity:0.75; }
        .banner-overlay { position:absolute; inset:0; background:linear-gradient(135deg, rgba(165,108,193,0.55), rgba(166,172,236,0.4), rgba(206,255,241,0.2)); display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:24px; }
        .banner-overlay h2 { font-size:2.4rem; color:#fff; font-weight:800; letter-spacing:2px; text-shadow:0 3px 18px rgba(0,0,0,0.4); margin-bottom:8px; }
        .banner-overlay p { font-size:1.1rem; color:rgba(255,255,255,0.9); max-width:500px; text-shadow:0 2px 8px rgba(0,0,0,0.3); }
        .banner-badge { display:inline-block; background:rgba(255,255,255,0.2); border:1.5px solid rgba(255,255,255,0.5); color:#fff; padding:8px 22px; border-radius:30px; font-size:0.9rem; font-weight:600; letter-spacing:1px; backdrop-filter:blur(6px); margin-top:14px; transition:var(--transition); }
        .movie-grid { display:grid; grid-template-columns:repeat(6, 1fr); gap:14px; }
        .movie-card { position:relative; background:var(--white); border-radius:var(--radius-sm); overflow:hidden; box-shadow:0 2px 12px rgba(0,0,0,0.06); transition:var(--transition); cursor:pointer; border:1px solid #f0ecf5; display:flex; flex-direction:column; }
        .movie-card:hover { transform:translateY(-8px); box-shadow:0 16px 36px rgba(165,108,193,0.22); border-color:#cbb5e8; z-index:5; }
        .movie-card-img-wrap { position:relative; width:100%; aspect-ratio:3/4; overflow:hidden; background:#e8e0f0; flex-shrink:0; }
        .movie-card-img-wrap img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.5s ease; }
        .movie-card:hover .movie-card-img-wrap img { transform:scale(1.08); }
        .movie-card-img-wrap::after { content:''; position:absolute; bottom:0; left:0; right:0; height:40%; background:linear-gradient(to top, rgba(0,0,0,0.55), transparent); pointer-events:none; z-index:2; }
        .movie-type-badge { position:absolute; top:10px; left:10px; z-index:3; display:inline-block; background:linear-gradient(135deg, #a56cc1, #a6acec); color:#fff; padding:4px 11px; border-radius:14px; font-size:0.7rem; font-weight:700; letter-spacing:0.8px; box-shadow:0 3px 10px rgba(165,108,193,0.4); text-transform:uppercase; }
        .movie-card-info { padding:12px 14px 16px; flex:1; display:flex; flex-direction:column; gap:6px; position:relative; z-index:1; background:#fff; }
        .movie-card-info h4 { font-size:0.9rem; font-weight:700; color:#2d2040; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; letter-spacing:0.3px; }
        .movie-card-info .meta-line { font-size:0.68rem; color:#888; display:flex; flex-wrap:wrap; gap:4px 8px; line-height:1.5; }
        .movie-card-info .meta-line span { background:#f5f0fa; padding:3px 9px; border-radius:10px; white-space:nowrap; font-size:0.66rem; color:#5a4a6a; font-weight:500; }
        .movie-rating-mini { display:inline-flex; align-items:center; gap:3px; font-size:0.7rem; font-weight:700; color:#f5a623; margin-top:2px; }
        .ranking-wrapper { display:flex; flex-direction:column; gap:20px; }
        .ranking-top3 { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; }
        .rank-top-card { position:relative; background:var(--white); border-radius:var(--radius-sm); overflow:hidden; box-shadow:0 4px 18px rgba(0,0,0,0.07); cursor:pointer; transition:var(--transition); border:2px solid transparent; display:flex; flex-direction:column; }
        .rank-top-card:hover { transform:translateY(-6px); box-shadow:0 14px 34px rgba(165,108,193,0.2); }
        .rank-top-card.rank-gold { border-color:#f0d78c; background:linear-gradient(180deg, #fffdf5 0%, #fff 40%); }
        .rank-top-card.rank-silver { border-color:#d5dce8; background:linear-gradient(180deg, #fafbfd 0%, #fff 40%); }
        .rank-top-card.rank-bronze { border-color:#e8d5c4; background:linear-gradient(180deg, #fdfaf7 0%, #fff 40%); }
        .rank-top-card .rank-img-wrap { position:relative; width:100%; aspect-ratio:16/10; overflow:hidden; background:#e8e0f0; flex-shrink:0; }
        .rank-top-card .rank-img-wrap img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.5s ease; }
        .rank-top-card:hover .rank-img-wrap img { transform:scale(1.06); }
        .rank-big-number { position:absolute; bottom:-8px; right:8px; font-size:3.5rem; font-weight:900; color:rgba(255,255,255,0.85); z-index:2; pointer-events:none; text-shadow:0 2px 12px rgba(0,0,0,0.3); line-height:1; letter-spacing:-2px; }
        .rank-top-card.rank-gold .rank-big-number { color:rgba(255,215,0,0.7); text-shadow:0 2px 16px rgba(200,150,0,0.5); }
        .rank-top-card.rank-silver .rank-big-number { color:rgba(180,195,215,0.75); text-shadow:0 2px 14px rgba(120,140,170,0.45); }
        .rank-top-card.rank-bronze .rank-big-number { color:rgba(210,160,120,0.7); text-shadow:0 2px 14px rgba(180,120,70,0.45); }
        .rank-top-card .rank-info { padding:14px 16px 16px; flex:1; display:flex; flex-direction:column; gap:4px; position:relative; z-index:1; }
        .rank-top-card .rank-info h4 { font-size:0.95rem; font-weight:700; color:#2d2040; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
        .rank-top-card .rank-info .rank-meta { font-size:0.72rem; color:#999; }
        .rank-top-card .rank-info .rank-hot-bar { display:flex; align-items:center; gap:8px; margin-top:4px; }
        .rank-top-card .rank-info .hot-fill { height:6px; border-radius:3px; flex:1; background:#f0ecf5; overflow:hidden; }
        .rank-top-card .rank-info .hot-fill-inner { height:100%; border-radius:3px; transition:width 0.6s ease; }
        .rank-gold .hot-fill-inner { background:linear-gradient(90deg, #f5a623, #f7c948); width:92%; }
        .rank-silver .hot-fill-inner { background:linear-gradient(90deg, #a6acec, #c4c9f7); width:78%; }
        .rank-bronze .hot-fill-inner { background:linear-gradient(90deg, #a56cc1, #c9a0e0); width:65%; }
        .rank-top-card .rank-info .hot-num { font-size:0.72rem; font-weight:700; color:#f5a623; white-space:nowrap; }
        .ranking-rest { display:flex; flex-direction:column; gap:8px; background:#fdfbff; border-radius:var(--radius-sm); padding:14px 16px; border:1px solid #f0ecf5; }
        .ranking-rest .rest-item { display:flex; align-items:center; gap:12px; padding:10px 12px; border-radius:8px; transition:var(--transition); cursor:pointer; background:transparent; }
        .ranking-rest .rest-item:hover { background:#fff; box-shadow:0 2px 10px rgba(165,108,193,0.08); }
        .ranking-rest .rest-rank-num { width:32px; height:32px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:800; font-size:0.85rem; flex-shrink:0; color:#fff; background:#c5c0d0; }
        .ranking-rest .rest-item img { width:44px; height:58px; object-fit:cover; border-radius:4px; flex-shrink:0; background:#e8e0f0; }
        .ranking-rest .rest-info { flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
        .ranking-rest .rest-info h5 { font-size:0.85rem; color:#2d2040; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
        .ranking-rest .rest-info .rest-meta { font-size:0.7rem; color:#999; }
        .ranking-rest .rest-hot-tag { font-size:0.68rem; font-weight:600; color:#f5a623; white-space:nowrap; flex-shrink:0; }
        .stars-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:18px; }
        .star-card { text-align:center; background:var(--white); border-radius:var(--radius-sm); padding:20px 12px; box-shadow:0 2px 10px rgba(0,0,0,0.04); transition:var(--transition); border:1px solid #f0ecf5; cursor:pointer; }
        .star-card:hover { transform:translateY(-4px); box-shadow:0 10px 28px rgba(165,108,193,0.18); }
        .star-card img { width:100px; height:100px; object-fit:cover; border-radius:50%; margin:0 auto 12px; display:block; background:#e8e0f0; border:3px solid #e8ddf5; }
        .star-card h4 { font-size:0.95rem; color:#2d2040; font-weight:700; }
        .star-card .star-works { font-size:0.7rem; color:#999; margin-top:2px; }
        .detail-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:18px; }
        .detail-card { display:flex; gap:14px; background:#fdfbff; border-radius:var(--radius-sm); padding:16px; transition:var(--transition); border:1px solid #f0ecf5; cursor:pointer; align-items:flex-start; }
        .detail-card:hover { background:#fff; box-shadow:0 6px 20px rgba(165,108,193,0.12); border-color:#d5c4e8; }
        .detail-card img { width:110px; height:150px; object-fit:cover; border-radius:6px; flex-shrink:0; background:#e8e0f0; }
        .detail-card .detail-text h4 { font-size:0.95rem; color:#2d2040; font-weight:700; margin-bottom:4px; }
        .detail-card .detail-text p { font-size:0.78rem; color:#777; line-height:1.5; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
        .detail-card .detail-text .detail-meta { font-size:0.7rem; color:#a56cc1; font-weight:500; margin-top:4px; }
        .reviews-list { display:flex; flex-direction:column; gap:14px; }
        .review-item { background:#fdfbff; border-radius:var(--radius-sm); padding:18px 20px; border-left:3px solid #a6acec; transition:var(--transition); border:1px solid #f0ecf5; }
        .review-item:hover { background:#fff; box-shadow:0 4px 16px rgba(165,108,193,0.1); }
        .review-item .reviewer { font-weight:700; color:#2d2040; font-size:0.9rem; margin-bottom:6px; }
        .review-item .review-text { font-size:0.82rem; color:#666; line-height:1.7; }
        .review-item .review-date { font-size:0.7rem; color:#bbb; margin-top:6px; }
        .sidebar .stats-card { background:linear-gradient(135deg, #2d2040, #3d2a55); color:#fff; border-radius:var(--radius); padding:26px 20px; text-align:center; box-shadow:var(--shadow-lg); border:none; }
        .stats-card .big-number { font-size:3rem; font-weight:900; letter-spacing:2px; background:linear-gradient(135deg, #cefff1, #ace7ef); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
        .stats-card .stats-label { font-size:0.85rem; opacity:0.85; margin-top:2px; }
        .stats-card .update-time { font-size:0.7rem; opacity:0.6; margin-top:8px; letter-spacing:0.5px; }
        .stats-row { display:flex; gap:12px; margin-top:16px; }
        .stats-mini { flex:1; background:rgba(255,255,255,0.08); border-radius:10px; padding:14px 10px; text-align:center; }
        .stats-mini .mini-num { font-size:1.5rem; font-weight:800; color:#cefff1; }
        .sidebar .side-section { background:var(--white); border-radius:var(--radius); padding:20px 16px; box-shadow:var(--shadow); border:1px solid #f0ecf5; }
        .sidebar .side-section h4 { font-size:0.95rem; font-weight:700; color:#2d2040; margin-bottom:12px; padding-left:10px; border-left:3px solid #a56cc1; }
        .sidebar .side-list li { list-style:none; padding:8px 0; border-bottom:1px solid #f5f0fa; font-size:0.8rem; color:#666; cursor:pointer; transition:var(--transition); display:flex; align-items:center; gap:8px; }
        .sidebar .side-list li:hover { color:#a56cc1; padding-left:4px; }
        .sidebar .side-list li img { width:32px; height:42px; object-fit:cover; border-radius:3px; flex-shrink:0; background:#e8e0f0; }
        .download-grid { display:grid; grid-template-columns:repeat(4, 1fr); gap:14px; }
        .download-card { background:#fdfbff; border-radius:var(--radius-sm); padding:20px 14px; text-align:center; border:2px solid #f0ecf5; transition:var(--transition); cursor:pointer; text-decoration:none; color:inherit; display:flex; flex-direction:column; align-items:center; gap:8px; }
        .download-card:hover { border-color:#a56cc1; background:#fff; box-shadow:0 8px 24px rgba(165,108,193,0.15); transform:translateY(-3px); }
        .download-card .app-icon { width:44px; height:44px; object-fit:contain; }
        .download-card span { font-weight:600; font-size:0.85rem; color:#2d2040; }
        .bottom-nav { width:100%; background:#2d2040; color:#ccc; padding:32px 24px 20px; margin-top:40px; }
        .bottom-nav-inner { max-width:1400px; margin:0 auto; display:flex; flex-wrap:wrap; justify-content:space-between; gap:24px; }
        .bottom-nav .footer-col h4 { color:#fff; font-size:0.95rem; margin-bottom:10px; }
        .bottom-nav .footer-col a { display:block; color:#b0a0c8; text-decoration:none; font-size:0.8rem; padding:4px 0; transition:var(--transition); }
        .bottom-nav .footer-col a:hover { color:#cefff1; padding-left:4px; }
        .bottom-nav .footer-bottom { max-width:1400px; margin:20px auto 0; padding-top:16px; border-top:1px solid rgba(255,255,255,0.1); text-align:center; font-size:0.75rem; color:#888; }
        .bottom-nav .footer-bottom a { color:#ace7ef; text-decoration:none; font-weight:500; }
        .friend-links-area { background:var(--white); border-radius:var(--radius); padding:16px 20px; margin:20px auto; max-width:1400px; box-shadow:var(--shadow); display:flex; flex-wrap:wrap; gap:8px 20px; align-items:center; }
        .friend-links-area span { font-size:0.9rem; color:#2d2040; font-weight:600; }
        @media (max-width:1200px) { .movie-grid { grid-template-columns:repeat(4, 1fr); } .stars-grid { grid-template-columns:repeat(2, 1fr); } .download-grid { grid-template-columns:repeat(2, 1fr); } .sidebar { width:280px; } .ranking-top3 { grid-template-columns:repeat(3, 1fr); gap:10px; } .rank-big-number { font-size:2.5rem; } }
        @media (max-width:900px) { .main-container { flex-direction:column; padding:12px; gap:20px; } .sidebar { width:100%; position:static; max-height:none; flex-direction:row; flex-wrap:wrap; gap:14px; } .sidebar>* { flex:1 1 45%; min-width:200px; } .movie-grid { grid-template-columns:repeat(3, 1fr); gap:10px; } .ranking-top3 { grid-template-columns:repeat(3, 1fr); gap:8px; } .rank-big-number { font-size:2rem; } .detail-grid { grid-template-columns:1fr; } .banner-overlay h2 { font-size:1.4rem; } .banner-area { aspect-ratio:2/1; min-height:160px; max-height:260px; } .download-grid { grid-template-columns:repeat(2, 1fr); gap:10px; } }
        @media (max-width:600px) { .movie-grid { grid-template-columns:repeat(2, 1fr); gap:8px; } .ranking-top3 { grid-template-columns:1fr; gap:10px; } .rank-big-number { font-size:2.8rem; } .stars-grid { grid-template-columns:repeat(2, 1fr); gap:10px; } .detail-grid { grid-template-columns:1fr; } .download-grid { grid-template-columns:repeat(2, 1fr); gap:8px; } .sidebar>* { flex:1 1 100%; min-width:100%; } .sidebar { flex-direction:column; } .section-title { font-size:1.1rem; } .banner-overlay h2 { font-size:1.1rem; } .banner-area { aspect-ratio:1.6/1; min-height:140px; max-height:200px; } .ranking-rest .rest-item img { width:36px; height:48px; } }