/* ===== CSS 变量（完整版，覆盖内联） ===== */
:root {
  --primary: #2ED573; --primary-dark: #26b862; --primary-light: #a8f0c6;
  --bg: #f8f9fb; --bg-card: #fff; --text: #1a1a2e;
  --text-secondary: #6b7280; --text-muted: #9ca3af; --border: #e5e7eb;
  --shadow: 0 4px 16px rgba(0,0,0,.1); --shadow-hover: 0 8px 32px rgba(46,213,115,.2);
  --radius: 12px; --spacing: 24px; --max-width: 1400px;
}
[data-theme="dark"] {
  --bg: #0f172a; --bg-card: #1e293b; --text: #e2e8f0;
  --text-secondary: #94a3b8; --text-muted: #64748b; --border: #334155;
  --shadow: 0 4px 16px rgba(0,0,0,.3); --shadow-hover: 0 8px 32px rgba(46,213,115,.35);
}

/* ===== 重置 ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Noto Sans SC",-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--text);line-height:1.7;transition:background .3s,color .3s}
a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}
ul,ol{list-style:none}button{cursor:pointer;border:none;background:0 0;font:inherit;color:inherit}input{font:inherit}
.page-wrapper{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing)}
@media(max-width:1400px){:root{--max-width:100%}}
@media(max-width:768px){:root{--spacing:16px}}
@media(max-width:480px){:root{--spacing:12px}}

.section-title{font-size:1.4rem;font-weight:700;margin-bottom:var(--spacing);padding-left:14px;border-left:4px solid var(--primary);display:flex;align-items:center;justify-content:space-between}

/* ===== Header ===== */
.site-header{background:var(--bg-card);border-bottom:1px solid var(--border)}
.site-header .header-inner{max-width:var(--max-width);margin:0 auto;padding:16px var(--spacing);display:flex;align-items:center;justify-content:space-between}
.site-logo{font-size:1.8rem;font-weight:800;color:var(--primary);letter-spacing:2px;white-space:nowrap}
.site-logo span{color:var(--text-secondary);font-weight:400;font-size:.78rem;margin-left:10px}
.header-nav{display:flex;gap:28px}
.header-nav a{font-size:.95rem;color:var(--text-secondary);padding:4px 0;border-bottom:2px solid transparent;transition:color .2s}
.header-nav a:hover,.header-nav a.active{color:var(--primary);border-bottom-color:var(--primary)}
.header-search{display:flex;align-items:center;background:var(--bg);border:1px solid var(--border);border-radius:24px;padding:8px 18px;transition:border-color .3s,box-shadow .3s}
.header-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(46,213,115,.12)}
.header-search input{border:none;background:0 0;outline:0;width:200px;font-size:.9rem;color:var(--text)}
.header-search input::placeholder{color:var(--text-muted)}
.header-search button{font-size:.9rem;color:var(--primary);font-weight:600;padding:4px 8px}
@media(max-width:768px){.header-nav{display:none}.header-search input{width:140px}}

/* ===== Hero ===== */
.hero-banner{max-width:var(--max-width);margin:var(--spacing) auto 0;position:relative;border-radius:var(--radius);overflow:hidden;height:400px;background:var(--primary-dark)}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease}
.hero-slide.active{opacity:1}
.hero-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 20%}
.hero-info{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.85));padding:56px 32px 32px;color:#fff;z-index:1}
.hero-info h1{font-size:2rem;margin-bottom:12px;font-weight:800}
.hero-info p{font-size:.95rem;opacity:.88;margin-bottom:12px;max-width:650px}
.hero-info .hero-meta{font-size:.85rem;opacity:.7}
.hero-dots{position:absolute;bottom:20px;right:28px;display:flex;gap:10px;z-index:2}
.hero-dots button{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.35);transition:background .3s,transform .3s}
.hero-dots button.active{background:#fff;transform:scale(1.3)}
@media(max-width:768px){.hero-banner{height:260px;border-radius:0}.hero-info{padding:36px 20px 20px}.hero-info h1{font-size:1.4rem}.hero-info p{font-size:.85rem}}

/* ===== Stats ===== */
.stats-section{max-width:var(--max-width);margin:0 auto;padding:var(--spacing)}
.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--spacing)}
.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px 16px;text-align:center;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}
.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.stat-icon{width:44px;height:44px;margin:0 auto 10px;border-radius:50%;background:var(--primary-light);position:relative}
.stat-icon::after{content:'';position:absolute;inset:10px;border-radius:2px;background:var(--primary)}
.stat-icon-books::after{border-radius:3px 3px 0 0;inset:8px 10px 12px}
.stat-icon-views::after{border-radius:50%;inset:8px}
.stat-icon-comments::after{inset:8px 10px;clip-path:polygon(50% 0,100% 38%,82% 100%,18% 100%,0 38%)}
.stat-icon-today::after{inset:8px 10px}
.stat-icon-week::after{inset:8px;background:linear-gradient(var(--primary) 0,var(--primary) 40%,transparent 40%,transparent 60%,var(--primary) 60%,var(--primary) 100%)}
.stat-icon-month::after{border-radius:50%;inset:6px;background:conic-gradient(var(--primary) 70%,transparent 70%)}
.stat-value{font-size:1.6rem;font-weight:800;color:var(--primary);margin-bottom:6px}
.stat-label{font-size:.82rem;color:var(--text-muted)}
@media(max-width:992px){.stats-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:480px){.stats-grid{grid-template-columns:repeat(2,1fr)}}

/* ===== Service Guarantees (M-O24) ===== */
.guarantee-section{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing);margin-bottom:calc(var(--spacing)*1.5)}
.guarantee-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing)}
.guarantee-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:28px 18px 22px;text-align:center;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}
.guarantee-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}
.guarantee-icon{width:52px;height:52px;margin:0 auto 14px;border-radius:50%;position:relative}
.guarantee-icon-auth{background:#ede9fe}
.guarantee-icon-auth::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:24px;border:3px solid var(--primary);border-radius:4px 4px 2px 2px;border-top:none}
.guarantee-icon-auth::before{content:'';position:absolute;top:14px;left:50%;width:12px;height:8px;border-left:3px solid var(--primary);border-bottom:3px solid var(--primary);transform:translate(-50%,0) rotate(-45deg);z-index:1}
.guarantee-icon-speed{background:#fef3c7}
.guarantee-icon-speed::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-left:14px solid var(--primary);border-top:10px solid transparent;border-bottom:10px solid transparent}
.guarantee-icon-quality{background:#dbeafe}
.guarantee-icon-quality::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:22px;height:22px;border:3px solid var(--primary);border-radius:50%}
.guarantee-icon-quality::before{content:'';position:absolute;top:50%;left:32%;width:4px;height:4px;border-radius:50%;background:var(--primary);z-index:1}
.guarantee-icon-service{background:#d1fae5}
.guarantee-icon-service::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:14px;border:3px solid var(--primary);border-radius:3px}
.guarantee-item h4{font-size:1rem;font-weight:700;margin-bottom:8px}
.guarantee-item p{font-size:.82rem;color:var(--text-muted);line-height:1.7}
@media(max-width:992px){.guarantee-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.guarantee-grid{grid-template-columns:1fr}}

/* ===== Category Tags ===== */
.category-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:calc(var(--spacing)*1.5);padding:8px 0}
.category-tags .tag-btn{padding:8px 22px;border-radius:24px;border:1px solid var(--border);font-size:.9rem;color:var(--text-secondary);background:var(--bg-card);transition:all .25s}
.category-tags .tag-btn:hover,.category-tags .tag-btn.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 2px 8px rgba(46,213,115,.3)}

/* ===== Featured Comics ===== */
.featured-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing);margin-bottom:calc(var(--spacing)*2)}
.featured-card{background:var(--bg-card);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .35s,box-shadow .35s}
.featured-card:hover{transform:scale(1.03);box-shadow:var(--shadow-hover)}
.featured-card .cover-wrap{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--border)}
.featured-card .cover-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.featured-card:hover .cover-wrap img{transform:scale(1.08)}
.cover-overlay{position:absolute;bottom:0;left:0;right:0;padding:36px 12px 10px;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.cover-overlay .overlay-title{color:#fff;font-size:.92rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cover-overlay .overlay-meta{color:rgba(255,255,255,.75);font-size:.7rem;margin-top:2px}
.featured-card .card-body{padding:14px}
.featured-card .comic-name{font-size:1rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.featured-card .comic-author{font-size:.8rem;color:var(--text-muted);margin-bottom:6px}
.featured-card .comic-desc{font-size:.8rem;color:var(--text-secondary);line-height:1.5;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.featured-card .comic-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:.78rem;color:var(--text-secondary);align-items:center}
.comic-rating{color:#f59e0b;font-weight:600}
.comic-heat{color:var(--primary)}
.status-tag{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.72rem;font-weight:600}
.status-ongoing{background:#f3e8ff;color:#7c3aed}
.status-completed{background:#d1fae5;color:#059669}
[data-theme="dark"] .status-ongoing{background:#4c1d95;color:#c4b5fd}
[data-theme="dark"] .status-completed{background:#064e3b;color:#34d399}
@media(max-width:1200px){.featured-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:768px){.featured-grid{grid-template-columns:repeat(2,1fr)}}

/* ===== Top 5 Ranking ===== */
.top5-grid{display:flex;gap:var(--spacing);margin-bottom:calc(var(--spacing)*2);overflow-x:auto;padding-bottom:8px}
.top5-card{flex:1;min-width:220px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;text-align:center;box-shadow:var(--shadow);transition:transform .35s,box-shadow .35s}
.top5-card:hover{transform:scale(1.03);box-shadow:var(--shadow-hover)}
.top5-rank{font-size:1.6rem;font-weight:800;margin-bottom:10px}
.rank-1st{color:#f59e0b;font-size:2rem}
.rank-2nd{color:#94a3b8;font-size:1.8rem}
.rank-3rd{color:#d97706;font-size:1.6rem}
.top5-card .top5-rank:not(.rank-1st):not(.rank-2nd):not(.rank-3rd){color:var(--text-muted)}
.top5-cover{width:120px;height:160px;border-radius:8px;object-fit:cover;margin:0 auto 12px}
.top5-title{font-size:1rem;font-weight:700;display:block;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.top5-meta{font-size:.8rem;color:var(--text-muted);margin-bottom:4px}
.top5-heat{font-size:.85rem;color:var(--primary);font-weight:600}
@media(max-width:992px){.top5-grid{flex-wrap:wrap}.top5-card{min-width:160px;flex:1 1 160px}}

/* ===== Partners (M-O22) ===== */
.partners-section{margin-bottom:calc(var(--spacing)*2)}
.partners-grid{display:flex;flex-wrap:wrap;gap:var(--spacing);justify-content:center}
.partner-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 28px;text-align:center;min-width:160px;box-shadow:var(--shadow);transition:transform .3s}
.partner-item:hover{transform:translateY(-3px)}
.partner-logo{width:64px;height:64px;margin:0 auto 10px;border-radius:12px}
.partner-logo-1{background:linear-gradient(135deg,#a855f7,#7c3aed)}
.partner-logo-2{background:linear-gradient(135deg,#06b6d4,#0891b2)}
.partner-logo-3{background:linear-gradient(135deg,#f59e0b,#d97706)}
.partner-logo-4{background:linear-gradient(135deg,#10b981,#059669)}
.partner-logo-5{background:linear-gradient(135deg,#ec4899,#db2777)}
.partner-logo-6{background:linear-gradient(135deg,#6366f1,#4f46e5)}
.partner-item span{font-size:.95rem;font-weight:600}
.partner-item p{font-size:.78rem;color:var(--text-muted);margin-top:4px}

/* ===== Reviews (M-O21) ===== */
.reviews-section{margin-bottom:calc(var(--spacing)*2)}
.reviews-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing)}
.review-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px 22px;box-shadow:var(--shadow);border-left:4px solid var(--primary)}
.review-text{font-size:.9rem;color:var(--text-secondary);line-height:1.8;font-style:italic;margin-bottom:10px}
.review-author{font-size:.8rem;color:var(--primary);font-weight:600;font-style:normal}
@media(max-width:768px){.reviews-grid{grid-template-columns:1fr}}

/* ===== Completed ===== */
.completed-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing);margin-bottom:calc(var(--spacing)*2)}
.completed-card{background:var(--bg-card);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .35s,box-shadow .35s}
.completed-card:hover{transform:scale(1.03);box-shadow:var(--shadow-hover)}
.completed-card .cover-wrap{position:relative;aspect-ratio:3/4;overflow:hidden}
.completed-card .cover-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.completed-card:hover .cover-wrap img{transform:scale(1.08)}
.badge-completed{position:absolute;top:10px;right:10px;background:#059669;color:#fff;font-size:.7rem;font-weight:700;padding:3px 10px;border-radius:4px}
.completed-card .card-info{padding:12px 14px}
.completed-card .comic-name{font-size:.92rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}
.comic-meta-sm{font-size:.75rem;color:var(--text-muted);margin-top:6px}
@media(max-width:992px){.completed-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:480px){.completed-grid{grid-template-columns:repeat(2,1fr)}}

/* ===== FAQ ===== */
.faq-section{margin-bottom:calc(var(--spacing)*2)}
.faq-list{display:flex;flex-direction:column;gap:14px}
.faq-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color .3s}
.faq-item[open]{border-color:var(--primary)}
.faq-question{padding:18px 22px;font-weight:600;font-size:.95rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;user-select:none;color:var(--text)}
.faq-question::-webkit-details-marker{display:none}
.faq-question::after{content:'+';font-size:1.3rem;color:var(--text-muted);transition:transform .3s;flex-shrink:0;margin-left:14px;font-weight:300}
.faq-item[open] .faq-question::after{content:'\2212';color:var(--primary);transform:rotate(180deg)}
.faq-question:hover{color:var(--primary)}
.faq-answer{padding:0 22px 18px;font-size:.88rem;color:var(--text-secondary);line-height:1.9}

/* ===== About (M-B5) ===== */
.about-section{margin-bottom:calc(var(--spacing)*2)}
.about-intro{font-size:.92rem;color:var(--text-secondary);line-height:2;margin-bottom:calc(var(--spacing)*2)}
.about-intro p{margin-bottom:var(--spacing)}
.about-features{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing);margin-bottom:calc(var(--spacing)*2)}
.feature-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px 18px;text-align:center;box-shadow:var(--shadow)}
.feature-icon{width:56px;height:56px;margin:0 auto 12px;border-radius:50%;position:relative}
.feature-icon-resources{background:#ede9fe}
.feature-icon-resources::after{content:'';position:absolute;inset:10px;border:2px solid var(--primary);border-radius:3px 3px 6px 6px;border-top:3px solid var(--primary)}
.feature-icon-hd{background:#dbeafe}
.feature-icon-hd::after{content:'';position:absolute;inset:10px;border:2px solid var(--primary);border-radius:50%}
.feature-icon-smooth{background:#d1fae5}
.feature-icon-smooth::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:22px;border-top:2px solid var(--primary);box-shadow:0 6px 0 var(--primary),0 12px 0 var(--primary)}
.feature-icon-free{background:#fef3c7}
.feature-icon-free::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:22px;border:2px solid var(--primary);border-radius:50%;border-bottom:3px solid var(--primary);border-bottom-left-radius:3px;border-bottom-right-radius:3px}
.feature-item h4{font-size:1rem;font-weight:700;margin-bottom:8px}
.feature-item p{font-size:.82rem;color:var(--text-muted);line-height:1.6}
.about-commitment{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:var(--spacing)}
.about-commitment h3{font-size:1.1rem;font-weight:700;margin-bottom:16px}
.about-commitment li{padding:8px 0;font-size:.9rem;color:var(--text-secondary);border-bottom:1px dashed var(--border)}
.about-commitment li:last-child{border-bottom:none}
.about-contact{font-size:.9rem;color:var(--text-secondary);padding:20px;background:var(--bg);border-radius:var(--radius);line-height:1.8}
.about-contact p{margin-bottom:6px}.about-contact p:last-child{margin-bottom:0}
@media(max-width:992px){.about-features{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.about-features{grid-template-columns:1fr}}

/* ===== Disclaimer (M-O23) ===== */
.disclaimer-section{margin-bottom:calc(var(--spacing)*2)}
.disclaimer-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;font-size:.88rem;color:var(--text-secondary);line-height:2}
.disclaimer-content p{margin-bottom:12px}.disclaimer-content p:last-child{margin-bottom:0}

/* ===== Footer ===== */
.site-footer{background:var(--bg-card);border-top:1px solid var(--border);padding:32px 0;text-align:center;font-size:.85rem;color:var(--text-secondary)}
.site-footer .footer-inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing)}
.site-footer p{margin-bottom:6px}

/* ===== Theme Toggle ===== */
.theme-toggle{position:fixed;bottom:88px;right:24px;width:44px;height:44px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;z-index:99;transition:transform .3s,box-shadow .3s}
.theme-toggle:hover{transform:scale(1.1);box-shadow:var(--shadow-hover)}
.toggle-icon{width:20px;height:20px;border-radius:50%;background:var(--text-secondary);position:relative;transition:background .3s,box-shadow .3s}
.toggle-icon::after{content:'';position:absolute;top:-3px;left:6px;width:8px;height:8px;border-radius:50%;background:var(--bg-card)}
[data-theme="dark"] .toggle-icon{background:#f59e0b;box-shadow:0 0 4px rgba(245,158,11,.5)}
[data-theme="dark"] .toggle-icon::after{top:4px;left:2px;width:6px;height:6px}
.back-to-top{position:fixed;bottom:28px;right:24px;width:44px;height:44px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);z-index:99;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s,transform .3s}
.back-to-top.visible{opacity:1;visibility:visible}
.back-to-top:hover{transform:scale(1.1)}
.top-arrow{font-size:1.2rem;line-height:1;font-weight:700}
