/* grid Theme - 现代卡片网格 */
:root {
  --bg: #f5f5f5;
  --bg2: #eee;
  --text: #1a1a1a;
  --text2: #666;
  --accent: #ff6b35;
  --accent-hover: #e05520;
  --accent-light: rgba(255,107,53,.06);
  --border: #e0e0e0;
  --card-bg: #fff;
  --header-bg: #1a1a1a;
  --header-text: #fff;
  --font-family: 'PingFang SC','Microsoft YaHei',sans-serif;
  --font-size: 17px;
  --line-height: 1.9;
  --radius: 10px;
  --shadow: 0 4px 16px rgba(0,0,0,.08);
  --transition: .2s ease;
  --max-width: 1100px;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--font-family);font-size:16px;line-height:1.7}
a{color:var(--accent);text-decoration:none;transition:color var(--transition)}
a:hover{color:var(--accent-hover)}
img{max-width:100%;height:auto;display:block}
ul{list-style:none;padding:0;margin:0}

#progress-bar{position:fixed;top:0;left:0;height:3px;width:0;background:var(--accent);z-index:9999;transition:width .1s}

header{background:var(--header-bg);color:var(--header-text);position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.header-inner{max-width:var(--max-width);margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:16px;height:58px}
.logo{font-size:1.3rem;font-weight:800;color:#fff}
.logo em{font-style:normal}
.logo span{font-size:.72rem;color:rgba(255,255,255,.45);margin-left:6px}
.menu-btn{display:none;background:none;border:none;color:#fff;font-size:1.4rem;cursor:pointer}
.search-box{display:flex;flex:1;max-width:320px}
.search-box input{flex:1;padding:7px 12px;border:none;border-radius:var(--radius) 0 0 var(--radius);background:rgba(255,255,255,.1);color:#fff;font-size:.88rem}
.search-box input::placeholder{color:rgba(255,255,255,.35)}
.search-box button{padding:7px 16px;background:var(--accent);color:#fff;border:none;border-radius:0 var(--radius) var(--radius) 0;cursor:pointer;font-size:.88rem;font-weight:600}
.search-box button:hover{background:var(--accent-hover)}

nav{background:var(--card-bg);border-bottom:1px solid var(--border);box-shadow:0 2px 4px rgba(0,0,0,.04)}
.nav-inner{max-width:var(--max-width);margin:0 auto;padding:0 20px;display:flex;gap:0;overflow-x:auto;scrollbar-width:none}
.nav-inner::-webkit-scrollbar{display:none}
.nav-inner a{flex-shrink:0;padding:10px 16px;font-size:.9rem;color:var(--text2);border-bottom:2px solid transparent;transition:all var(--transition);font-weight:500}
.nav-inner a:hover,.nav-inner a.active{color:var(--accent);border-bottom-color:var(--accent)}

.container{max-width:var(--max-width);margin:0 auto;padding:0 20px}
main{padding:24px 0 48px}

.breadcrumb{padding:10px 0;font-size:.82rem;color:var(--text2)}
.breadcrumb a{color:var(--accent)}
.breadcrumb span{margin:0 6px}

.card{background:var(--card-bg);border-radius:var(--radius);padding:16px;margin-bottom:16px;box-shadow:var(--shadow)}
.card-title{font-size:1.1rem;font-weight:700;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.card-title::after{content:'';flex:1;height:2px;background:linear-gradient(to right,var(--accent),transparent)}

.commend-grid{display:grid;gap:12px}
.commend-item{display:flex;gap:12px;padding:8px 0}
.commend-item img{width:65px;height:88px;object-fit:cover;border-radius:var(--radius)}
.commend-item-info{flex:1;min-width:0}
.commend-item-info h3{font-size:.95rem;font-weight:600;margin-bottom:3px}
.commend-item-info h3 a{color:var(--text)}
.commend-item-info h3 a:hover{color:var(--accent)}
.commend-item-info .author{font-size:.78rem;color:var(--text2)}
.commend-item-info .intro{font-size:.82rem;color:var(--text2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:3px}

.hot-list{display:flex;flex-direction:column;gap:6px}
.hot-item{display:flex;justify-content:space-between;padding:5px 0;font-size:.88rem;border-bottom:1px solid var(--border)}
.hot-item:last-child{border-bottom:none}
.hot-item a{color:var(--text)}
.hot-item a:hover{color:var(--accent)}
.hot-item .author{color:var(--text2);font-size:.8rem;white-space:nowrap}

.sort-sections{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:640px){.sort-sections{grid-template-columns:1fr}}
.sort-item-main{display:flex;gap:10px;margin-bottom:10px}
.sort-item-main img{width:48px;height:64px;object-fit:cover;border-radius:6px}
.sort-item-main h4{font-size:.9rem;font-weight:600;margin-bottom:2px}
.sort-item-main h4 a{color:var(--text)}
.sort-item-main p{font-size:.78rem;color:var(--text2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sort-list-more{display:flex;flex-wrap:wrap;gap:4px 10px}
.sort-list-more a{font-size:.82rem;color:var(--text2)}
.sort-list-more a:hover{color:var(--accent)}

.bottom-sections{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:640px){.bottom-sections{grid-template-columns:1fr}}
.update-item{display:flex;justify-content:space-between;padding:6px 0;font-size:.85rem;border-bottom:1px solid var(--border)}
.update-item:last-child{border-bottom:none}
.update-item .meta{color:var(--text2);font-size:.78rem;white-space:nowrap;margin-left:10px}

.info-box{background:var(--card-bg);border-radius:var(--radius);padding:20px;margin-bottom:16px;box-shadow:var(--shadow)}
.info-main{display:flex;gap:20px}
.info-main img{width:110px;height:148px;object-fit:cover;border-radius:var(--radius)}
.info-detail{flex:1;min-width:0}
.info-detail h1{font-size:1.5rem;font-weight:700;margin-bottom:10px}
.info-detail p{margin-bottom:5px;font-size:.9rem;color:var(--text2)}
.info-detail p a{color:var(--accent)}
.info-btn{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.btn{display:inline-block;padding:8px 20px;border-radius:var(--radius);font-size:.88rem;cursor:pointer;border:none;transition:all var(--transition);font-weight:600}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-hover);color:#fff;transform:translateY(-1px)}
.btn-secondary{background:transparent;border:2px solid var(--accent);color:var(--accent)}
.btn-secondary:hover{background:var(--accent);color:#fff}
.info-intro{margin-top:12px;font-size:.9rem;color:var(--text2);line-height:1.8}
.info-commend{margin-top:8px;font-size:.82rem;color:var(--text2)}
.info-commend a{color:var(--accent);margin-right:6px}

.chapter-box{background:var(--card-bg);border-radius:var(--radius);padding:16px;margin-bottom:16px;box-shadow:var(--shadow)}
.chapter-title{font-size:1.05rem;font-weight:700;margin-bottom:12px}
.chapter-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px}
.chapter-list a{display:block;padding:7px 10px;font-size:.86rem;color:var(--text);background:var(--bg);border-radius:var(--radius);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:all var(--transition)}
.chapter-list a:hover{background:var(--accent);color:#fff}

.reader-wrap{max-width:800px;margin:0 auto;padding:0 14px}
.reader-header{text-align:center;margin-bottom:16px}
.reader-header h1{font-size:1.3rem;font-weight:700;margin-bottom:4px}
.chapter-meta{font-size:.82rem;color:var(--text2)}
.read-nav{display:flex;justify-content:center;gap:8px;padding:10px 0;background:var(--bg);border-radius:var(--radius);margin-bottom:12px;box-shadow:0 1px 4px rgba(0,0,0,.06)}
.read-nav a{padding:7px 18px;background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);font-size:.88rem;color:var(--text);transition:all var(--transition);font-weight:500}
.read-nav a:hover{border-color:var(--accent);color:var(--accent)}
.read-nav a.disabled{color:var(--text2);pointer-events:none}
.article-content{font-size:var(--font-size);line-height:var(--line-height);padding:16px 0}
.article-content p{text-indent:2em;margin-bottom:.8em}
.commend-row{padding:8px 0;font-size:.82rem;color:var(--text2);display:flex;flex-wrap:wrap;gap:4px 10px}
.commend-row a{color:var(--text2)}
.commend-row a:hover{color:var(--accent)}

.search-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.search-item{background:var(--card-bg);border-radius:var(--radius);padding:14px;display:flex;gap:12px;box-shadow:var(--shadow)}
.search-item img{width:60px;height:80px;object-fit:cover;border-radius:6px;flex-shrink:0}
.search-item h3{font-size:.95rem;font-weight:600;margin-bottom:4px}
.search-item h3 a{color:var(--text)}
.search-item h3 a:hover{color:var(--accent)}
.search-item .author{font-size:.78rem;color:var(--text2);margin-bottom:3px}
.search-item .intro{font-size:.82rem;color:var(--text2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.category-item{background:var(--card-bg);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}
.category-item img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:8px;margin-bottom:8px}
.category-item h3{font-size:.95rem;font-weight:600;margin-bottom:4px}
.category-item h3 a{color:var(--text)}
.category-item h3 a:hover{color:var(--accent)}
.category-item .meta{font-size:.8rem;color:var(--text2)}

.rank-list{display:flex;flex-direction:column;gap:10px}
.rank-item{display:flex;gap:12px;padding:12px;background:var(--card-bg);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center}
.rank-item img{width:50px;height:68px;object-fit:cover;border-radius:6px;flex-shrink:0}
.rank-no{width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;border-radius:50%;background:var(--border);color:var(--text);flex-shrink:0}
.rank-no.top1{background:var(--accent);color:#fff}
.rank-no.top2{background:#ffa502;color:#fff}
.rank-no.top3{background:#2ed573;color:#fff}
.rank-item-info{flex:1;min-width:0}
.rank-item-info h3{font-size:.92rem;font-weight:600}
.rank-item-info h3 a{color:var(--text)}
.rank-item-info h3 a:hover{color:var(--accent)}
.rank-item-info .meta{font-size:.78rem;color:var(--text2)}

.link-box{margin-top:16px;padding:10px 0;font-size:.82rem;color:var(--text2);border-top:1px solid var(--border)}

footer{background:var(--header-bg);color:#888;text-align:center;padding:22px 20px;font-size:.82rem;margin-top:40px}
footer a{color:#aaa}
footer a:hover{color:var(--accent)}

.gotop-btn{position:fixed;bottom:30px;right:22px;width:42px;height:42px;background:var(--accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px rgba(255,107,53,.35);font-size:1rem;opacity:0;pointer-events:none;transition:all .3s;z-index:99;border:none}
.gotop-btn.show{opacity:1;pointer-events:auto}

.reader-settings{display:none;position:fixed;bottom:60px;right:18px;background:var(--card-bg);border-radius:12px;padding:16px;box-shadow:0 8px 28px rgba(0,0,0,.15);z-index:200;min-width:180px}
.reader-settings.show{display:block}
.settings-row{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text2)}
.font-size-btns{display:flex;gap:4px;margin-left:auto}
.font-size-btns button{padding:5px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;font-size:.82rem}
.font-size-btns button:hover{border-color:var(--accent);color:var(--accent)}
.reader-toolbar{position:fixed;bottom:80px;right:22px;z-index:200}
.toolbar-btn{width:38px;height:38px;border-radius:50%;background:var(--accent);color:#fff;border:none;cursor:pointer;box-shadow:0 4px 14px rgba(255,107,53,.35);font-size:.9rem}

@media(max-width:640px){
  .menu-btn{display:block}
  nav{display:none}
  nav.show{display:block}
  .info-main{flex-direction:column;align-items:center;text-align:center}
  .info-btn{justify-content:center}
  .sort-sections{grid-template-columns:1fr}
  .bottom-sections{grid-template-columns:1fr}
  .search-results{grid-template-columns:1fr}
}


/* ===== 首页封推区 ===== */
.fengtui-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;}
.fengtui-item{display:flex;gap:12px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:12px;}
.fengtui-item img{width:80px;height:110px;object-fit:cover;border-radius:4px;flex-shrink:0;background:var(--bg3);}
.fengtui-info h3{font-size:14px;color:var(--text);margin-bottom:4px;}
.fengtui-info .author{font-size:12px;color:var(--accent);margin-bottom:6px;}
.fengtui-info .intro{font-size:12px;color:var(--text2);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}

/* ===== 更新列表链接 ===== */
.update-item .meta a{color:var(--text2);}
.update-item .meta a:hover{color:var(--accent);}

/* ===== 分类页封推 ===== */
.category-fengtui{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px;}
.category-fengtui-item{display:flex;gap:12px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:12px;}
.category-fengtui-item img{width:80px;height:110px;object-fit:cover;border-radius:4px;flex-shrink:0;background:var(--bg3);}
.category-fengtui-item h3{font-size:14px;color:var(--text);margin-bottom:4px;}
.category-fengtui-item .author{font-size:12px;color:var(--accent);margin-bottom:6px;}
.category-fengtui-item .intro{font-size:12px;color:var(--text2);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}

/* ===== 分类页列表 ===== */
.category-list{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:12px;}
.category-list-header{display:grid;grid-template-columns:2fr 2fr 1fr 1fr 1fr;gap:8px;padding:8px 12px;background:var(--bg3);border-radius:var(--radius);font-size:13px;font-weight:600;color:var(--text);margin-bottom:8px;}
.category-list-row{display:grid;grid-template-columns:2fr 2fr 1fr 1fr 1fr;gap:8px;padding:8px 12px;border-bottom:1px dashed var(--border);align-items:center;}
.category-list-row:last-child{border-bottom:none;}
.category-list-row a{color:var(--text);font-size:13px;}
.category-list-row a:hover{color:var(--accent);}
.category-list-row .name a{font-weight:500;}
.category-list-row .latest a{color:var(--text2);font-size:12px;}
.category-list-row .meta{font-size:12px;color:var(--text2);}

/* ===== 分页 ===== */
.pages{text-align:center;padding:12px 0;font-size:13px;}
.pages a,.pages strong,.pages span{display:inline-block;padding:4px 10px;margin:0 3px;border:1px solid var(--border);border-radius:4px;background:var(--bg2);color:var(--text2);}
.pages a:hover{background:var(--accent);color:#fff;border-color:var(--accent);}
.pages strong{background:var(--accent);color:#fff;border-color:var(--accent);}
.pages span{color:var(--text2);}
