:root {
    --bg: #0d0d12;
    --bg-2: #15151d;
    --bg-3: #1c1c28;
    --bg-card: #1a1a26;
    --border: #25253a;
    --border-light: #2e2e44;
    --text: #e4e4ec;
    --text-2: #9696b0;
    --text-3: #5c5c78;
    --red: #e63946;
    --red-dark: #c1121f;
    --gold: #ffb703;
    --teal: #06d6a0;
    --purple: #7b2cbf;
    --pink: #ff006e;
    --radius: 6px;
    --radius-lg: 12px;
    --transition: all 0.25s ease;
    --font: 'Segoe UI', -apple-system, BlinkMacSystemFont, Roboto, Oxygen, sans-serif;
}
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:var(--font); background:var(--bg); color:var(--text); line-height:1.6; min-height:100vh; }
a { text-decoration:none; color:inherit; }
img { display:block; max-width:100%; }
::-webkit-scrollbar { width:8px; }
::-webkit-scrollbar-track { background:var(--bg); }
::-webkit-scrollbar-thumb { background:var(--border-light); border-radius:4px; }
::-webkit-scrollbar-thumb:hover { background:var(--red); }

/* Header */
header { background:var(--bg-2); border-bottom:3px solid var(--red); position:sticky; top:0; z-index:100; }
.header-inner { max-width:1280px; margin:0 auto; padding:0 24px; height:64px; display:flex; align-items:center; justify-content:space-between; }
.logo { display:flex; align-items:center; gap:10px; font-size:1.3rem; font-weight:900; letter-spacing:-1px; }
.logo-mark { background:var(--red); color:white; width:38px; height:38px; border-radius:var(--radius); display:flex; align-items:center; justify-content:center; font-size:1.2rem; font-weight:900; }
.logo-text { color:var(--text); } .logo-text .accent { color:var(--red); }
.nav-menu { display:flex; gap:4px; list-style:none; }
.nav-menu a { padding:8px 14px; font-size:0.82rem; font-weight:700; text-transform:uppercase; letter-spacing:0.5px; color:var(--text-2); border-radius:var(--radius); transition:var(--transition); cursor:pointer; }
.nav-menu a:hover,.nav-menu a.active { color:var(--red); background:rgba(230,57,70,0.08); }
.header-right { display:flex; align-items:center; gap:12px; }
.search-toggle { background:var(--bg-3); border:1px solid var(--border); color:var(--text-2); width:38px; height:38px; border-radius:var(--radius); cursor:pointer; font-size:1rem; display:flex; align-items:center; justify-content:center; }
.search-toggle:hover { border-color:var(--red); color:var(--red); }
.btn-subscribe { background:var(--red); color:white; border:none; padding:9px 20px; border-radius:var(--radius); font-size:0.8rem; font-weight:700; text-transform:uppercase; letter-spacing:0.5px; cursor:pointer; transition:var(--transition); }
.btn-subscribe:hover { background:var(--red-dark); }

/* Container */
.container { max-width:1280px; margin:0 auto; padding:0 24px; }

/* Footer */
footer { border-top:1px solid var(--border); padding:40px 0 24px; margin-top:60px; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; margin-bottom:32px; }
.footer-brand p { font-size:0.82rem; color:var(--text-3); line-height:1.7; margin-top:12px; max-width:300px; }
.footer-col h5 { font-size:0.8rem; font-weight:800; text-transform:uppercase; letter-spacing:1px; margin-bottom:16px; color:var(--text); }
.footer-col a { display:block; font-size:0.82rem; color:var(--text-3); padding:5px 0; transition:var(--transition); }
.footer-col a:hover { color:var(--red); padding-left:4px; }
.footer-bottom { border-top:1px solid var(--border); padding-top:20px; display:flex; justify-content:space-between; align-items:center; font-size:0.78rem; color:var(--text-3); flex-wrap:wrap; gap:12px; }
.footer-social { display:flex; gap:10px; }
.footer-social a { width:34px; height:34px; border-radius:50%; background:var(--bg-3); display:flex; align-items:center; justify-content:center; font-size:0.9rem; transition:var(--transition); }
.footer-social a:hover { background:var(--red); }

/* Article Layout */
.article-hero { text-align:center; padding:48px 24px 32px; }
.article-hero .cat-badge { display:inline-block; background:var(--red); color:white; padding:4px 14px; border-radius:50px; font-size:0.7rem; font-weight:800; text-transform:uppercase; letter-spacing:1px; margin-bottom:16px; }
.article-hero h1 { font-size:2rem; font-weight:900; max-width:800px; margin:0 auto 12px; line-height:1.25; }
.article-hero .hero-meta { font-size:0.82rem; color:var(--text-3); display:flex; gap:16px; justify-content:center; flex-wrap:wrap; align-items:center; }
.article-hero .hero-meta .author-info { display:flex; align-items:center; gap:8px; }
.article-hero .hero-meta .avatar { width:28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:0.7rem; font-weight:700; color:white; }
.article-hero .hero-img { max-width:800px; margin:24px auto 0; border-radius:var(--radius-lg); overflow:hidden; }
.article-hero .hero-img img { width:100%; height:auto; }
.article-body { max-width:800px; margin:0 auto; padding:0 24px 48px; }
.article-body p { font-size:0.95rem; line-height:1.85; color:var(--text-2); margin-bottom:18px; }
.article-body h2 { font-size:1.3rem; font-weight:800; margin:36px 0 12px; color:var(--text); }
.article-body h3 { font-size:1rem; font-weight:700; margin:24px 0 8px; color:var(--red); }
.article-body blockquote { border-left:3px solid var(--red); padding:12px 20px; margin:24px 0; font-style:italic; color:var(--text); background:var(--bg-3); border-radius:0 var(--radius) var(--radius) 0; }
.article-body ul,.article-body ol { margin:0 0 18px 20px; }
.article-body li { font-size:0.9rem; line-height:1.85; color:var(--text-2); margin-bottom:6px; }
.rating-box { background:var(--bg-3); border-radius:var(--radius-lg); padding:20px; margin:24px 0; display:flex; align-items:center; gap:20px; }
.rating-box .big-score { font-size:2.5rem; font-weight:900; color:var(--gold); }
.rating-box .stars { color:var(--gold); font-size:1.2rem; }
.article-tags { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:28px 0; padding-top:20px; border-top:1px solid var(--border); }
.article-tags .tag { font-size:0.72rem; font-weight:600; padding:4px 12px; border-radius:50px; background:rgba(230,57,70,0.08); color:var(--red); border:1px solid rgba(230,57,70,0.15); }
.related-articles { margin:32px 0; padding-top:24px; border-top:2px solid var(--border); }
.related-articles h3 { font-size:0.9rem; font-weight:800; text-transform:uppercase; letter-spacing:1px; margin-bottom:16px; }
.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.related-item { background:var(--bg-card); border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; cursor:pointer; transition:var(--transition); }
.related-item:hover { border-color:var(--red); transform:translateY(-3px); }
.related-item img { width:100%; aspect-ratio:1/1; object-fit:cover; }
.related-item .r-info { padding:10px 12px; }
.related-item .r-cat { font-size:0.58rem; font-weight:800; text-transform:uppercase; letter-spacing:0.5px; color:var(--teal); margin-bottom:4px; }
.related-item h4 { font-size:0.76rem; font-weight:600; line-height:1.3; }
.related-item:hover h4 { color:var(--red); }
.related-date { font-size:0.65rem; color:var(--text-3); margin-top:4px; }

/* Breadcrumb */
.breadcrumb { font-size:0.75rem; color:var(--text-3); margin-bottom:20px; display:flex; gap:6px; align-items:center; }
.breadcrumb a { color:var(--red); }
.breadcrumb a:hover { text-decoration:underline; }

/* Reading Progress */
.reading-progress { position:fixed; top:0; left:0; height:3px; background:var(--red); z-index:300; width:0%; transition:width 0.1s ease; }

/* Card Grid (for homepage & category pages) */
.card-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.article-card { background:var(--bg-card); border:1px solid var(--border); border-radius:var(--radius-lg); overflow:hidden; transition:var(--transition); }
.article-card:hover { border-color:var(--border-light); transform:translateY(-3px); box-shadow:0 10px 30px rgba(0,0,0,0.3); }
.article-card .card-thumb { aspect-ratio:1/1; overflow:hidden; position:relative; }
.article-card .card-thumb img { width:100%; height:100%; object-fit:cover; transition:transform 0.4s ease; }
.article-card:hover .card-thumb img { transform:scale(1.06); }
.article-card .card-cat { position:absolute; top:12px; left:12px; background:var(--red); color:white; padding:3px 10px; font-size:0.65rem; font-weight:800; text-transform:uppercase; letter-spacing:0.5px; border-radius:var(--radius); }
.article-card .card-cat.review { background:var(--purple); }
.article-card .card-cat.news { background:var(--teal); color:var(--bg); }
.article-card .card-cat.interview { background:var(--pink); }
.article-card .card-cat.feature { background:var(--gold); color:var(--bg); }
.article-card .card-body { padding:18px; }
.article-card h3 { font-size:1rem; font-weight:700; line-height:1.4; margin-bottom:10px; }
.article-card:hover h3 { color:var(--red); }
.article-card .excerpt { font-size:0.82rem; color:var(--text-2); line-height:1.6; margin-bottom:14px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.article-card .card-meta { display:flex; align-items:center; justify-content:space-between; font-size:0.72rem; color:var(--text-3); }

/* Section title */
.section-title { font-size:1.3rem; font-weight:800; text-transform:uppercase; letter-spacing:1px; margin-bottom:24px; display:flex; align-items:center; gap:10px; }
.section-title::before { content:''; width:4px; height:20px; background:var(--red); border-radius:2px; }

/* Static Page */
.static-page { max-width:800px; margin:0 auto; padding:48px 24px 80px; }
.static-page h1 { font-size:2rem; font-weight:900; margin-bottom:8px; }
.static-page .last-updated { font-size:0.78rem; color:var(--text-3); margin-bottom:32px; font-style:italic; }
.static-page h2 { font-size:1.2rem; font-weight:800; margin:36px 0 12px; padding-bottom:8px; border-bottom:1px solid var(--border); }
.static-page h3 { font-size:1rem; font-weight:700; margin:24px 0 8px; color:var(--red); }
.static-page p { font-size:0.9rem; line-height:1.85; color:var(--text-2); margin-bottom:14px; }
.static-page ul { margin:0 0 16px 20px; }
.static-page li { font-size:0.9rem; line-height:1.85; color:var(--text-2); margin-bottom:6px; }
.static-page .info-box { background:var(--bg-card); border:1px solid var(--border); border-left:4px solid var(--red); border-radius:var(--radius); padding:20px 24px; margin:24px 0; }

/* Manga Strip */
.manga-strip { display:grid; grid-template-columns:repeat(6,1fr); gap:16px; }
.manga-tile { transition:var(--transition); }
.manga-tile:hover { transform:translateY(-4px); }
.manga-tile .cover { aspect-ratio:1/1; border-radius:var(--radius); overflow:hidden; margin-bottom:8px; position:relative; }
.manga-tile .cover img { width:100%; height:100%; object-fit:cover; }
.manga-tile .cover .score { position:absolute; bottom:8px; right:8px; background:rgba(0,0,0,0.8); color:var(--gold); padding:2px 8px; border-radius:var(--radius); font-size:0.7rem; font-weight:700; }
.manga-tile .name { font-size:0.78rem; font-weight:700; line-height:1.3; }
.manga-tile:hover .name { color:var(--red); }
.manga-tile .chapters { font-size:0.68rem; color:var(--text-3); }

/* Responsive */
@media (max-width:768px) {
    .nav-menu { display:none; }
    .card-grid { grid-template-columns:1fr; }
    .related-grid { grid-template-columns:1fr; }
    .footer-grid { grid-template-columns:1fr 1fr; }
    .manga-strip { grid-template-columns:repeat(3,1fr); }
    .article-hero h1 { font-size:1.5rem; }
}
@media (max-width:480px) {
    .footer-grid { grid-template-columns:1fr; }
    .manga-strip { grid-template-columns:repeat(2,1fr); }
}
