
/* 全站列表/首页 — 暖纸皮(与详情页默认主题统一) */
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Work Sans','Noto Sans SC',-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
  background:#F3EFE1;color:#2B2419;line-height:1.7;padding:0 0 60px}
.wrap{max-width:1040px;margin:0 auto;padding:0 18px}
.site-header{background:linear-gradient(150deg,#37301f,#2b2419);color:#F3EFE1;padding:30px 0 24px;position:relative;overflow:hidden}
.site-header:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 130% at 88% -20%,rgba(176,96,63,.5),transparent 55%),radial-gradient(90% 90% at -5% 120%,rgba(183,199,168,.3),transparent 55%)}
.site-header .wrap{position:relative}
.site-header h1{font-family:'Cormorant Garamond','Noto Serif SC',serif;font-size:30px;font-weight:600}
.site-header .sub{font-size:13.5px;opacity:.9;margin-top:5px;color:#e6dcc6}
.crumb{font-size:13px;color:#5A4F3C;margin:16px 0 4px}
.crumb a{color:#B0603F;text-decoration:none}
.crumb a:hover{text-decoration:underline}
.type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-top:24px}
.type-card{background:#FBF9F1;border-radius:14px;padding:22px 20px;box-shadow:0 2px 12px rgba(43,36,25,.06);text-decoration:none;color:inherit;display:block;transition:.15s;border:1px solid rgba(60,50,35,.1)}
.type-card.live:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(176,96,63,.16);border-color:#E4C4A6}
.type-card.soon{opacity:.6;cursor:default}
.type-card .ico{font-size:30px}
.type-card .tname{font-family:'Cormorant Garamond','Noto Serif SC',serif;font-size:19px;font-weight:600;margin-top:10px}
.type-card .tdesc{font-size:12.5px;color:#5A4F3C;margin-top:4px;min-height:34px}
.type-card .tstat{font-size:12px;margin-top:10px;font-weight:600}
.type-card.live .tstat{color:#4f7343}
.type-card.soon .tstat{color:#9a8f78}
.filters{background:#FBF9F1;border-radius:12px;padding:14px 16px;margin-top:18px;box-shadow:0 2px 10px rgba(43,36,25,.05);border:1px solid rgba(60,50,35,.1)}
.filters .search{width:100%;border:1px solid #d9cfb6;border-radius:8px;padding:9px 12px;font-size:14px;outline:none;margin-bottom:10px;background:#fff}
.filters .search:focus{border-color:#B0603F}
.frow{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0}
.frow .flabel{font-size:12px;color:#9a8f78;min-width:48px}
.chip{font-size:12.5px;padding:4px 12px;border-radius:16px;border:1px solid #d9cfb6;background:#fff;color:#5A4F3C;cursor:pointer;user-select:none}
.chip.on{background:#B0603F;color:#fff;border-color:#B0603F}
.count-line{font-size:13px;color:#5A4F3C;margin:16px 2px 8px}
.q-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.q-card{background:#FBF9F1;border-radius:12px;padding:16px 18px;box-shadow:0 2px 10px rgba(43,36,25,.05);text-decoration:none;color:inherit;transition:.15s;border:1px solid rgba(60,50,35,.1)}
.q-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(176,96,63,.14);border-color:#E4C4A6}
.q-card .qmeta{font-size:12.5px;color:#5A4F3C}
.q-card .qtitle{font-family:'Cormorant Garamond','Noto Serif SC',serif;font-size:17px;font-weight:600;margin:6px 0 4px;color:#2B2419}
.q-card .qsrc{font-size:11.5px;color:#8f4a2e;margin:0 0 10px;min-height:16px}
.q-card .qtags{display:flex;flex-wrap:wrap;gap:6px}
.qtag{font-size:11.5px;padding:2px 9px;border-radius:12px;background:#EAE4D2;color:#8f4a2e}
.qtag.d-易{background:#dbe6cf;color:#3c5330}
.qtag.d-中{background:#f3e2c6;color:#7a5320}
.qtag.d-难{background:#f0d4cb;color:#8a3423}
/* ⭐四维标签 badge:难度档(篇位内相对难度)/文体 各一色,与「学段难度」d-* 视觉区分 */
.qtag.dg{background:#e3e7f0;color:#3b4a6b}
.qtag.wt{background:#e8e0ee;color:#5b3f6e}
/* 四维筛选:36 子主题用下拉(chips 会铺满整屏);.fgrp 分隔「来源·溯源」组 */
.fsel{font-size:12.5px;padding:4px 8px;border-radius:8px;border:1px solid #d9cfb6;background:#fff;color:#5A4F3C;max-width:280px;cursor:pointer;outline:none}
.fsel:focus{border-color:#B0603F}
.fgrp{font-size:11.5px;color:#b0a48c;margin:10px 0 2px;padding-top:8px;border-top:1px dashed #e0d6bf}
.fnote,.recbar,.recinfo{display:none!important} /* 对外隐藏筛选说明与推荐定档栏 */
/* ⭐双轴推荐条:学生按自己两轴水平取题 */
.recbar{margin-top:10px;padding-top:10px;border-top:1px dashed #e0d6bf;gap:8px}
.recbtn{font-size:12.5px;padding:6px 14px;border-radius:16px;border:none;background:#B0603F;color:#fff;cursor:pointer;font-weight:700;font-family:inherit}
.recbtn.sec{background:#fff;color:#8a6a52;border:1px solid #d9cfb6;font-weight:600}
.recbtn:hover{opacity:.9}
.recinfo{font-size:12px;color:#8a6a52;line-height:1.6}
.recinfo b{color:#B0603F}
.rectype{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:10px;background:#EAE4D2;color:#7a5320;font-size:11px}
.recwhy{margin:6px 0 2px;font-size:11.5px;color:#6b8e5a;font-weight:600}
.recnote{margin-top:6px;padding:7px 11px;background:#eef6ee;border-left:3px solid #6b9e6b;border-radius:6px;font-size:11.5px;color:#3c5330;line-height:1.6}
.recwarn{margin-top:6px;padding:7px 11px;background:#fdf3e7;border-left:3px solid #d99a4e;border-radius:6px;font-size:11.5px;color:#7a5320;line-height:1.6}
.qtag.tx{background:#e3e7f0;color:#3b4a6b}
.qtag.di{background:#f0e3e3;color:#6b3b3b}
.empty{text-align:center;color:#9a8f78;padding:50px 0;font-size:14px}
.foot{text-align:center;color:#9a8f78;font-size:12px;margin-top:30px}
.seal{display:inline-block;font-size:11px;font-weight:700;padding:1px 6px;border-radius:4px;letter-spacing:1px;margin-right:6px;vertical-align:middle}
.seal.zt{background:#B0603F;color:#fff}
.seal.mo{background:#EAE4D2;color:#8a7f68}
.seal.wk{background:#8f4a2e;color:#fff}
.q-card.is-zt{border-color:#e4c4a6;box-shadow:0 0 0 1px #efd9c8 inset}
.zhenti-entry{display:flex;align-items:center;gap:8px;background:linear-gradient(90deg,#f5e6dc,#FBF9F1);border:1px solid #e4c4a6;border-left:5px solid #B0603F;border-radius:10px;padding:13px 16px;margin:4px 0 18px;text-decoration:none;color:#7a3a26;font-size:15px}
.zhenti-entry b{color:#B0603F}
.zhenti-entry .arr{margin-left:auto;font-size:18px;color:#B0603F}
.zhenti-entry:hover{box-shadow:0 2px 8px rgba(176,96,63,.14)}
.axis-label{font-size:13px;color:#8a7f68;margin:6px 2px;font-weight:600}
.prof-link{font-size:11px;color:#B0603F;border:1px solid #e4c4a6;border-radius:4px;padding:0 6px;margin-left:8px;cursor:pointer}
.prof-link:hover{background:#f5e6dc}
.assemble-entry{display:flex;align-items:center;gap:8px;background:linear-gradient(90deg,#e6efe0,#FBF9F1);border:1px solid #bcd3ac;border-left:5px solid #4f7343;border-radius:10px;padding:13px 16px;margin:4px 0 10px;text-decoration:none;color:#3c5330;font-size:15px}
.assemble-entry b{color:#4f7343}
.assemble-entry .arr{margin-left:auto;font-size:18px;color:#4f7343}
.assemble-entry:hover{box-shadow:0 2px 8px rgba(79,115,67,.16)}
.entry-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:6px 0 18px}
.entry-row>a,.entry-row>div{margin:0!important}
.entry-row .arr{margin-left:auto}
.waikan-entry{display:flex;align-items:center;gap:8px;background:linear-gradient(90deg,#e9e6f5,#FBF9F1);border:1px solid #c8bfe4;border-left:5px solid #6a5acd;border-radius:10px;padding:13px 16px;text-decoration:none;color:#443a6b;font-size:15px}
.waikan-entry b{color:#5a4ba8}
.waikan-entry.soon{opacity:.72;cursor:default}
.waikan-entry .soon-tag{margin-left:auto;font-size:12px;background:#efeaf7;color:#6a5acd;border-radius:6px;padding:2px 9px;white-space:nowrap}
@media(max-width:680px){.entry-row{grid-template-columns:1fr}}
.fav{font-size:11px;color:#8a6a1f;border:1px solid #e3d3a3;border-radius:4px;padding:0 7px;margin-left:8px;cursor:pointer}
.fav.on{background:#f7edcf;color:#7a5a12;border-color:#d9bd63}
/* 登录/我的 入口(固定右上,品牌色,任意背景可见) */
.myentry{position:fixed;top:12px;right:14px;z-index:60;background:#B0603F;color:#fff;border-radius:20px;
  padding:7px 15px;font-size:13.5px;font-weight:700;text-decoration:none;box-shadow:0 3px 12px rgba(176,96,63,.35)}
.myentry:hover{background:#8f4a2e;color:#fff}
.site-footer{margin:56px 0 0;padding:22px 16px 30px;border-top:1px solid rgba(0,0,0,.08);text-align:center;font-size:12px;line-height:2;color:#8a8a8a}.site-footer a{color:#8a8a8a;text-decoration:none}.site-footer a:hover{color:#555;text-decoration:underline}.site-footer .sep{margin:0 8px;opacity:.45}