
:root {
    --color-blue: #a6d0e4;
    --color-light: #f9ffea;
    --color-warm: #ffecda;
    --color-rose: #d4a5a5;
    --color-text: #2c3e50;
    --color-text-light: #5a6c7d;
    --color-white: #ffffff;
    --color-dark: #1a1a2e;
    --color-border: #e8ecf1;
    --color-shadow: rgba(0, 0, 0, 0.08);
    --color-shadow-hover: rgba(0, 0, 0, 0.16);
    --transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --radius-sm: 8px;
    --radius: 12px;
    --radius-lg: 16px;
    --max-width: 1320px;
    --sidebar-width: 340px;
}
*{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','Hiragino Sans GB','Microsoft YaHei','Noto Sans SC',sans-serif;background-color:#f7f8fa;color:var(--color-text);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;}
.top-nav{width:100%;background:var(--color-white);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:1000;box-shadow:0 2px 12px var(--color-shadow);backdrop-filter:blur(10px);}
.top-nav-inner{max-width:var(--max-width);margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:62px;gap:20px;}
.nav-brand h1{font-size:1.5rem;font-weight:700;color:var(--color-dark);letter-spacing:1px;white-space:nowrap;margin:0;line-height:1;background:linear-gradient(135deg,#3a5070,#5a7a9a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.nav-brand h1 span{color:var(--color-rose);-webkit-text-fill-color:#c98b8b;}
.nav-links{display:flex;align-items:center;gap:6px;list-style:none;flex-wrap:wrap;justify-content:center;}
.nav-links li a{display:inline-block;padding:8px 14px;text-decoration:none;color:var(--color-text-light);font-size:0.9rem;font-weight:500;border-radius:20px;transition:var(--transition);white-space:nowrap;position:relative;}
.nav-links li a:hover,.nav-links li a:focus{color:#3a5070;background-color:var(--color-blue);outline:none;}
.nav-links li a::after{content:'';position:absolute;bottom:2px;left:50%;transform:translateX(-50%) scaleX(0);width:60%;height:2px;background:var(--color-rose);border-radius:1px;transition:transform var(--transition);}
.nav-links li a:hover::after{transform:translateX(-50%) scaleX(1);}
.nav-user{display:flex;align-items:center;gap:10px;white-space:nowrap;flex-shrink:0;}
.user-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-blue);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:0.9rem;color:#3a5070;flex-shrink:0;}
.user-status{font-size:0.85rem;color:var(--color-text-light);cursor:pointer;transition:var(--transition);}
.user-status:hover{color:#3a5070;}
.login-dot{width:8px;height:8px;border-radius:50%;background:#4caf84;display:inline-block;margin-right:4px;animation:pulse-dot 2s infinite;}
@keyframes pulse-dot{0%,100%{opacity:1;}50%{opacity:0.4;}}
.mobile-menu-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;flex-shrink:0;}
.mobile-menu-btn span{display:block;width:24px;height:2.5px;background:var(--color-text);margin:5px 0;border-radius:2px;transition:var(--transition);}
.main-container{max-width:var(--max-width);margin:0 auto;padding:0 20px;}
.banner-section{width:100%;margin:20px auto 0;max-width:var(--max-width);padding:0 20px;position:relative;}
.banner-wrapper{border-radius:var(--radius-lg);overflow:hidden;position:relative;box-shadow:0 8px 32px var(--color-shadow);aspect-ratio:21/9;min-height:280px;background:linear-gradient(135deg,#e8eef3,#dce8f0);}
.banner-wrapper img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.6s ease;}
.banner-wrapper:hover img{transform:scale(1.03);}
.banner-overlay{position:absolute;bottom:0;left:0;right:0;padding:40px 32px 28px;background:linear-gradient(transparent,rgba(0,0,0,0.75));color:#fff;pointer-events:none;}
.banner-overlay h2{font-size:1.8rem;font-weight:700;margin-bottom:6px;text-shadow:0 2px 8px rgba(0,0,0,0.4);}
.banner-overlay p{font-size:0.95rem;opacity:0.9;max-width:600px;text-shadow:0 1px 4px rgba(0,0,0,0.3);}
.banner-tag{display:inline-block;background:var(--color-rose);color:#fff;padding:5px 14px;border-radius:20px;font-size:0.8rem;font-weight:600;margin-bottom:10px;pointer-events:auto;}
.content-layout{display:flex;gap:24px;margin-top:28px;align-items:flex-start;}
.content-main{flex:1;min-width:0;}
.content-sidebar{width:var(--sidebar-width);flex-shrink:0;position:sticky;top:90px;align-self:flex-start;}
.section-block{background:var(--color-white);border-radius:var(--radius-lg);padding:24px;margin-bottom:24px;box-shadow:0 2px 12px var(--color-shadow);border:1px solid var(--color-border);transition:var(--transition);}
.section-block:hover{box-shadow:0 4px 20px var(--color-shadow-hover);}
.section-title{font-size:1.25rem;font-weight:700;color:var(--color-dark);margin-bottom:18px;padding-bottom:12px;border-bottom:3px solid var(--color-blue);display:flex;align-items:center;gap:10px;letter-spacing:0.5px;}
.section-title .icon-dot{width:10px;height:10px;border-radius:50%;background:var(--color-rose);flex-shrink:0;}
.section-subtitle{font-size:0.85rem;color:var(--color-text-light);margin-top:-12px;margin-bottom:16px;font-weight:400;}
.platform-intro{background:linear-gradient(135deg,var(--color-warm),#fff8f0);border-radius:var(--radius-lg);padding:28px 24px;margin-bottom:24px;border-left:5px solid var(--color-rose);}
.platform-intro h2{font-size:1.3rem;font-weight:700;color:#5a3e3e;margin-bottom:8px;}
.platform-intro p{color:#6b5555;font-size:0.95rem;line-height:1.7;}
.movie-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.movie-card{background:var(--color-white);border-radius:var(--radius);overflow:hidden;border:1px solid var(--color-border);transition:var(--transition);cursor:pointer;display:flex;flex-direction:column;height:100%;}
.movie-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px var(--color-shadow-hover);border-color:var(--color-blue);}
.movie-card-img{aspect-ratio:2/3;overflow:hidden;background:#eef2f7;flex-shrink:0;position:relative;}
.movie-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s ease;}
.movie-card:hover .movie-card-img img{transform:scale(1.08);}
.movie-card-badge{position:absolute;top:8px;left:8px;background:var(--color-rose);color:#fff;font-size:0.7rem;font-weight:700;padding:3px 10px;border-radius:12px;z-index:2;letter-spacing:0.5px;}
.movie-card-info{padding:12px 14px;flex:1;display:flex;flex-direction:column;gap:4px;background:#fdfdfd;}
.movie-card-info h3{font-size:0.95rem;font-weight:700;color:var(--color-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0;}
.movie-card-info .meta-line{font-size:0.72rem;color:#7a8a9a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.movie-card-info .meta-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px;}
.movie-card-info .meta-tags span{font-size:0.65rem;background:var(--color-light);color:#5a7a5a;padding:2px 8px;border-radius:10px;font-weight:500;white-space:nowrap;}
.sidebar-card{background:var(--color-white);border-radius:var(--radius-lg);padding:20px;margin-bottom:20px;box-shadow:0 2px 12px var(--color-shadow);border:1px solid var(--color-border);}
.sidebar-card h3{font-size:1rem;font-weight:700;margin-bottom:14px;color:var(--color-dark);padding-bottom:10px;border-bottom:2px solid var(--color-warm);letter-spacing:0.5px;}
.total-reads-number{font-size:3rem;font-weight:800;color:#3a5070;line-height:1;margin:8px 0;letter-spacing:-1px;}
.total-reads-label{font-size:0.8rem;color:var(--color-text-light);}
.update-time{font-size:0.75rem;color:#999;margin-top:6px;}
.stat-row{display:flex;gap:12px;margin-top:10px;}
.stat-item{flex:1;background:var(--color-light);border-radius:var(--radius-sm);padding:14px 12px;text-align:center;}
.stat-item .stat-num{font-size:1.6rem;font-weight:700;color:#3a5070;line-height:1;}
.stat-item .stat-label{font-size:0.7rem;color:#7a8a9a;margin-top:4px;}
.rank-list{list-style:none;padding:0;}
.rank-list li{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #f0f3f6;transition:var(--transition);cursor:pointer;}
.rank-list li:hover{background:#fafbfc;border-radius:6px;padding-left:6px;}
.rank-list li:last-child{border-bottom:none;}
.rank-num{width:26px;height:26px;border-radius:50%;font-weight:700;font-size:0.8rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.rank-num.top1{background:#e8c170;color:#fff;}
.rank-num.top2{background:#c0c0c0;color:#fff;}
.rank-num.top3{background:#cda87c;color:#fff;}
.rank-num.normal{background:#eef2f7;color:#7a8a9a;}
.rank-info{flex:1;min-width:0;}
.rank-info .rank-title{font-size:0.85rem;font-weight:600;color:var(--color-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rank-info .rank-meta{font-size:0.7rem;color:#999;}
.rank-img{width:40px;height:54px;border-radius:4px;object-fit:cover;flex-shrink:0;background:#eef2f7;}
.stars-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.star-card{text-align:center;background:var(--color-white);border-radius:var(--radius);padding:18px 14px;border:1px solid var(--color-border);transition:var(--transition);cursor:pointer;}
.star-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px var(--color-shadow-hover);border-color:var(--color-warm);}
.star-card img{width:90px;height:90px;border-radius:50%;object-fit:cover;margin:0 auto 10px;display:block;background:#eef2f7;border:3px solid var(--color-blue);transition:var(--transition);}
.star-card:hover img{border-color:var(--color-rose);transform:scale(1.05);}
.star-card h4{font-size:0.9rem;font-weight:700;color:var(--color-dark);margin:0;}
.star-card .star-role{font-size:0.72rem;color:#999;margin-top:2px;}
.hot-stars-section{background:linear-gradient(135deg,#fefefe,#fdf8f5);border-radius:var(--radius-lg);padding:20px;margin-bottom:24px;border:1px dashed var(--color-rose);}
.hot-stars-section h3{font-size:1rem;font-weight:700;color:#5a3e3e;margin-bottom:12px;}
.hot-stars-row{display:flex;gap:12px;flex-wrap:wrap;}
.hot-star-tag{display:flex;align-items:center;gap:8px;background:var(--color-warm);padding:8px 14px;border-radius:24px;font-size:0.8rem;font-weight:600;color:#5a3e3e;cursor:pointer;transition:var(--transition);white-space:nowrap;}
.hot-star-tag:hover{background:var(--color-rose);color:#fff;}
.hot-star-tag img{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0;background:#eef2f7;}
.plot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.plot-card{background:var(--color-white);border-radius:var(--radius);overflow:hidden;border:1px solid var(--color-border);transition:var(--transition);cursor:pointer;display:flex;gap:14px;padding:14px;align-items:flex-start;}
.plot-card:hover{box-shadow:0 6px 18px var(--color-shadow-hover);border-color:var(--color-blue);}
.plot-card img{width:100px;height:70px;object-fit:cover;border-radius:6px;flex-shrink:0;background:#eef2f7;}
.plot-card-content h4{font-size:0.9rem;font-weight:700;color:var(--color-dark);margin:0 0 4px;}
.plot-card-content p{font-size:0.78rem;color:#7a8a9a;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0;}
.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.detail-card{background:var(--color-white);border-radius:var(--radius);overflow:hidden;border:1px solid var(--color-border);transition:var(--transition);display:flex;gap:14px;padding:16px;cursor:pointer;}
.detail-card:hover{box-shadow:0 6px 20px var(--color-shadow-hover);border-color:var(--color-rose);}
.detail-card img{width:110px;height:150px;object-fit:cover;border-radius:8px;flex-shrink:0;background:#eef2f7;}
.detail-info h4{font-size:0.95rem;font-weight:700;color:var(--color-dark);margin:0 0 6px;}
.detail-info .detail-meta{font-size:0.72rem;color:#7a8a9a;line-height:1.6;margin:0;}
.detail-info .detail-meta strong{color:#5a7a9a;font-weight:600;}
.review-list{display:flex;flex-direction:column;gap:14px;}
.review-item{background:#fafcfd;border-radius:var(--radius);padding:16px 18px;border-left:3px solid var(--color-blue);transition:var(--transition);cursor:default;}
.review-item:hover{background:#f5f8fa;border-left-color:var(--color-rose);}
.review-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.review-user{font-weight:600;font-size:0.85rem;color:var(--color-dark);}
.review-time{font-size:0.7rem;color:#bbb;margin-left:auto;white-space:nowrap;}
.review-text{font-size:0.85rem;color:#5a6c7d;line-height:1.7;margin:0;}
.app-download-section{background:linear-gradient(135deg,#2c3e50,#3a5070);border-radius:var(--radius-lg);padding:28px 24px;margin-bottom:24px;color:#fff;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;}
.app-download-section h3{color:#fff;font-size:1.2rem;font-weight:700;margin:0 0 4px;}
.app-download-section .app-subtitle{color:rgba(255,255,255,0.75);font-size:0.8rem;margin:0;}
.app-buttons{display:flex;flex-wrap:wrap;gap:10px;}
.app-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:24px;text-decoration:none;font-weight:600;font-size:0.85rem;transition:var(--transition);white-space:nowrap;cursor:pointer;border:2px solid transparent;}
.app-btn.android{background:#3ddc84;color:#1a3a1a;}
.app-btn.android:hover{background:#2cc573;transform:translateY(-2px);box-shadow:0 6px 16px rgba(61,220,132,0.4);}
.app-btn.ios{background:#fff;color:#1a1a2e;}
.app-btn.ios:hover{background:#f0f0f0;transform:translateY(-2px);box-shadow:0 6px 16px rgba(255,255,255,0.3);}
.app-btn.pc{background:#52616b;color:#fff;}
.app-btn.pc:hover{background:#3d4a52;transform:translateY(-2px);box-shadow:0 6px 16px rgba(82,97,107,0.5);}
.app-btn.mac{background:#e8ecf1;color:#1a1a2e;}
.app-btn.mac:hover{background:#d5dbe3;transform:translateY(-2px);box-shadow:0 6px 16px rgba(200,210,220,0.5);}
.app-icon{flex-shrink:0;}
.bottom-nav{width:100%;background:#1a1a2e;color:#ccc;padding:32px 20px 20px;margin-top:20px;border-top:4px solid var(--color-blue);}
.bottom-nav-inner{max-width:var(--max-width);margin:0 auto;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;}
.bottom-col h4{color:#fff;font-size:0.95rem;font-weight:700;margin-bottom:10px;letter-spacing:0.5px;}
.bottom-col ul{list-style:none;padding:0;}
.bottom-col ul li{margin-bottom:6px;}
.bottom-col ul li a{color:#aaa;text-decoration:none;font-size:0.8rem;transition:var(--transition);}
.bottom-col ul li a:hover{color:var(--color-blue);}
.bottom-copyright{text-align:center;width:100%;padding-top:16px;margin-top:16px;border-top:1px solid #2a2a3e;font-size:0.75rem;color:#777;}
.bottom-copyright a{color:var(--color-blue);text-decoration:none;font-weight:500;}
.bottom-copyright a:hover{text-decoration:underline;}
@media (max-width:1200px){.movie-grid{grid-template-columns:repeat(3,1fr);}.content-sidebar{width:300px;}:root{--sidebar-width:300px;}}
@media (max-width:992px){.content-layout{flex-direction:column;}.content-sidebar{width:100%;position:static;top:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}.content-sidebar .sidebar-card{margin-bottom:0;}.movie-grid{grid-template-columns:repeat(3,1fr);}.stars-grid{grid-template-columns:repeat(4,1fr);}.plot-grid{grid-template-columns:1fr 1fr;}.detail-grid{grid-template-columns:1fr 1fr;}.banner-overlay h2{font-size:1.4rem;}.banner-wrapper{aspect-ratio:16/7;min-height:220px;}}
@media (max-width:768px){.top-nav-inner{height:54px;padding:0 14px;gap:10px;}.nav-brand h1{font-size:1.2rem;}.nav-links{display:none;position:absolute;top:54px;left:0;right:0;background:#fff;flex-direction:column;padding:12px;box-shadow:0 8px 24px rgba(0,0,0,0.15);border-radius:0 0 12px 12px;z-index:999;gap:2px;}.nav-links.active{display:flex;}.nav-links li a{padding:10px 16px;width:100%;text-align:center;border-radius:8px;}.mobile-menu-btn{display:block;}.nav-user .user-status span:last-child{display:none;}.content-sidebar{grid-template-columns:1fr;}.movie-grid{grid-template-columns:repeat(2,1fr);gap:10px;}.movie-card-info{padding:8px 10px;}.movie-card-info h3{font-size:0.8rem;}.movie-card-info .meta-line{font-size:0.65rem;}.stars-grid{grid-template-columns:repeat(2,1fr);gap:10px;}.star-card img{width:64px;height:64px;}.plot-grid{grid-template-columns:1fr;gap:10px;}.detail-grid{grid-template-columns:1fr;gap:10px;}.banner-wrapper{aspect-ratio:16/9;min-height:180px;}.banner-overlay{padding:20px 16px 16px;}.banner-overlay h2{font-size:1.1rem;}.banner-overlay p{font-size:0.75rem;}.section-block{padding:16px;margin-bottom:14px;}.section-title{font-size:1.05rem;margin-bottom:12px;}.app-download-section{flex-direction:column;text-align:center;padding:20px 16px;}.app-buttons{justify-content:center;}.app-btn{padding:8px 14px;font-size:0.75rem;gap:6px;}.bottom-nav-inner{flex-direction:column;gap:16px;text-align:center;}.banner-section{padding:0 12px;margin-top:12px;}.main-container{padding:0 12px;}.platform-intro{padding:18px 14px;}.total-reads-number{font-size:2.2rem;}.hot-stars-row{gap:8px;}.hot-star-tag{padding:6px 10px;font-size:0.7rem;}}
@media (max-width:480px){.movie-grid{grid-template-columns:repeat(2,1fr);gap:8px;}.movie-card-info{padding:6px 8px;}.movie-card-info h3{font-size:0.75rem;}.movie-card-info .meta-line{font-size:0.6rem;}.movie-card-info .meta-tags span{font-size:0.6rem;padding:1px 6px;}.stars-grid{grid-template-columns:repeat(2,1fr);gap:8px;}.detail-card{flex-direction:column;align-items:center;text-align:center;}.detail-card img{width:80px;height:110px;}.plot-card{flex-direction:column;align-items:center;text-align:center;}.plot-card img{width:100%;height:120px;object-fit:cover;}.review-item{padding:12px 14px;}.review-text{font-size:0.78rem;}.banner-wrapper{min-height:150px;aspect-ratio:16/10;}.banner-overlay h2{font-size:0.95rem;}}
