:root{--bg:#fff5f8;--card-bg:#ffffff;--text:#333;--text-light:#666;--accent:#ff69b4;--accent-dark:#d6408f;--border:#ffd1e8;--header-bg:#ff69b4;--header-text:#fff;}body.dark{--bg:#1a0d12;--card-bg:#2a1a22;--text:#f0e0e8;--text-light:#c0a0b0;--accent:#ff8ac4;--accent-dark:#e04a9a;--border:#4a2a3a;--header-bg:#c03a7a;--header-text:#ffe6f0;}*{margin:0;padding:0;box-sizing:border-box;}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;}header{background:var(--header-bg);color:var(--header-text);padding:0.8rem 1rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;}.site-title{font-size:1.5rem;font-weight:bold;color:white;text-decoration:none;}nav a{color:white;margin:0 0.9rem;text-decoration:none;font-weight:500;}.theme-toggle{background:rgba(255,255,255,0.25);border:none;color:white;padding:0.5rem 0.9rem;border-radius:999px;cursor:pointer;}.container{max-width:1100px;margin:1.5rem auto;padding:0 1rem;}.page-title{font-size:1.6rem;color:var(--accent);margin-bottom:1.2rem;font-weight:600;}.top-list{display:flex;flex-direction:column;gap:1rem;}.top-item{display:grid;grid-template-columns:70px 120px 1fr;gap:1rem;background:var(--card-bg);border:1px solid var(--border);border-radius:10px;padding:0.8rem;}.rank-num{font-size:1.6rem;font-weight:bold;color:var(--accent);display:flex;align-items:center;justify-content:center;}.top-cover{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:6px;}.top-info h3{font-size:1.05rem;margin-bottom:0.3rem;}.top-info h3 a{color:var(--accent);text-decoration:none;}.top-author{font-size:0.85rem;color:var(--text-light);margin-bottom:0.4rem;}.top-desc{font-size:0.9rem;color:var(--text);margin-bottom:0.4rem;}.top-tags{font-size:0.8rem;color:var(--text-light);}@media (max-width:600px){.top-item{grid-template-columns:1fr;}.rank-num{justify-content:flex-start;font-size:1.4rem;}.top-cover{max-width:140px;}}footer{text-align:center;padding:2rem 1rem;color:var(--text-light);font-size:0.9rem;border-top:1px solid var(--border);margin-top:3rem;}.age-modal{position:fixed;inset:0;background:rgba(0,0,0,0.85);z-index:999999;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);}.age-modal-content{background:var(--card-bg,#ffffff);color:var(--text,#333);max-width:480px;width:90%;padding:2.5rem 2rem;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,0.6);text-align:center;border:1px solid var(--border,#ffd1e8);}.age-modal-content h2{color:var(--accent,#ff69b4);margin-bottom:1.2rem;font-size:1.8rem;}.age-modal-content p{margin-bottom:1rem;line-height:1.6;font-size:1.05rem;}.age-modal-content ul{text-align:left;margin:1.2rem 0 1.8rem 1.5rem;font-size:1.05rem;}.age-modal-content ul li{margin-bottom:0.6rem;}.age-buttons{display:flex;flex-direction:column;gap:1rem;margin:2rem 0 1.5rem;}.btn-confirm,.btn-exit{padding:1rem 2rem;font-size:1.15rem;font-weight:bold;border:none;border-radius:8px;cursor:pointer;transition:all 0.2s;}.btn-confirm{background:var(--accent,#ff69b4);color:white;}.btn-confirm:hover{background:var(--accent-dark,#d6408f);transform:translateY(-2px);}.btn-exit{background:#555;color:white;text-decoration:none;display:inline-block;}.btn-exit:hover{background:#444;}.age-note{font-size:0.9rem;color:var(--text-light,#666);margin-top:1.5rem;line-height:1.5;}body.dark .age-modal-content{background:var(--card-bg,#2a1a22);color:var(--text,#f0e0e8);border-color:var(--border,#4a2a3a);}body.dark .age-modal-content h2{color:var(--accent,#ff8ac4);}body.dark .age-note{color:var(--text-light,#c0a0b0);}@media (max-width:480px){.age-modal-content{padding:2rem 1.5rem;}.age-modal-content h2{font-size:1.6rem;}.btn-confirm,.btn-exit{padding:0.9rem 1.5rem;font-size:1.05rem;}}.latest-meta a{text-decoration:none;color:var(--text-light);}a.tag-link{color:var(--accent);text-decoration:none;text-transform:uppercase;}.top-author a{color:var(--text-light);text-decoration:none;text-transform:uppercase;}nav a.active { background: rgba(255, 255, 255, 0.25); border: none; color: var(--header-text); padding: 0.5rem 0.9rem; border-radius: 999px; cursor: pointer; font-size: 0.9rem; }