/* ==========================================================================
   【是什么】shishen.me — site.css
   纸白 · 墨字 · 朱砂印章 · 赭金细节 —— 提问词百科
   ========================================================================== */

:root{
  --paper:#f6f3ec;
  --card:#fffefb;
  --ink:#221f19;
  --ink2:#7d7666;
  --ink3:#a49a80;
  --line:#e7dfcd;
  --red:#b5432a;
  --red-d:#933421;
  --red-soft:#f7e9e3;
  --gold:#a8823f;
  --gold-soft:#f3ecdc;
  --dark:#211d16;
  --serif:'Noto Serif SC','Source Han Serif SC','Songti SC','STSong','SimSun',serif;
  --sans:'PingFang SC','Microsoft YaHei','Hiragino Sans GB','Helvetica Neue',Arial,sans-serif;
  --shadow:0 10px 30px rgba(70,54,24,.08);
}

*{margin:0;padding:0;box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  font-family:var(--sans);
  color:var(--ink);
  background:var(--paper);
  min-height:100vh;
  display:flex;
  flex-direction:column;
  -webkit-font-smoothing:antialiased;
}
::selection{background:var(--red-soft);color:var(--red-d);}
a{color:inherit;text-decoration:none;}
ul,ol{list-style:none;}
img{display:block;}
button{font-family:var(--sans);cursor:pointer;}

.wrap{max-width:1120px;margin:0 auto;padding:0 22px;}

/* ---------- 页头 ---------- */
.site-head{
  position:sticky;top:0;z-index:50;
  background:rgba(248,245,238,.92);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.head-in{display:flex;align-items:center;gap:30px;height:66px;}
.logo{display:flex;align-items:center;gap:11px;flex-shrink:0;}
.seal{
  width:38px;height:38px;border-radius:9px;
  background:linear-gradient(145deg,#c14a30,#963520);
  color:#fff;font-family:var(--serif);font-size:21px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 3px 10px rgba(154,54,32,.28);
}
.logo-text{font-family:var(--serif);font-size:21px;font-weight:700;color:var(--ink);line-height:1;}
.logo-text small{display:block;font-family:var(--sans);font-size:10px;font-weight:400;color:var(--ink3);letter-spacing:.32em;margin-top:5px;}
.head-nav{display:flex;gap:24px;}
.head-nav a{font-size:14px;color:#6b6454;transition:color .2s;}
.head-nav a:hover{color:var(--red);}
.head-search{
  margin-left:auto;display:flex;align-items:center;
  background:var(--card);border:1px solid var(--line);border-radius:999px;
  padding:4px 5px 4px 16px;width:260px;transition:border-color .2s, box-shadow .2s;
}
.head-search:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(168,130,63,.12);}
.head-search input{border:0;outline:0;background:transparent;flex:1;font-size:13.5px;color:var(--ink);min-width:0;}
.head-search input::placeholder{color:#b9b09a;}
.head-search button{
  width:30px;height:30px;border-radius:999px;border:0;flex-shrink:0;
  background:var(--red);color:#fff;font-size:12px;transition:background .2s;
}
.head-search button:hover{background:var(--red-d);}

/* ---------- 首页 Hero ---------- */
.hero{position:relative;overflow:hidden;padding:86px 0 66px;text-align:center;}
.hero::before{
  content:"是";
  position:absolute;right:2%;top:-70px;
  font-family:var(--serif);font-size:330px;font-weight:700;line-height:1;
  color:rgba(181,67,42,.05);
  pointer-events:none;user-select:none;
}
.hero::after{
  content:"问";
  position:absolute;left:1%;bottom:-90px;
  font-family:var(--serif);font-size:260px;font-weight:700;line-height:1;
  color:rgba(168,130,63,.06);
  pointer-events:none;user-select:none;
}
.hero .wrap{position:relative;z-index:1;}
.eyebrow{
  display:inline-flex;align-items:center;gap:14px;
  font-size:12px;letter-spacing:.4em;color:var(--gold);text-indent:.4em;
}
.eyebrow::before,.eyebrow::after{content:"";width:42px;height:1px;background:linear-gradient(90deg,transparent,var(--gold));}
.eyebrow::after{background:linear-gradient(90deg,var(--gold),transparent);}
.hero-title{
  margin-top:26px;
  font-family:var(--serif);font-weight:700;
  font-size:clamp(30px,4.6vw,46px);line-height:1.42;letter-spacing:.04em;
}
.hero-title::after{
  content:"";
  display:block;width:56px;height:3px;margin:26px auto 0;
  background:linear-gradient(90deg,var(--red),var(--gold));
  border-radius:2px;
}
.hero-sub{margin-top:22px;font-size:15.5px;line-height:2;color:var(--ink2);}
.hero-search{
  margin:34px auto 0;max-width:560px;
  display:flex;align-items:center;gap:10px;
  background:var(--card);border:1px solid var(--line);border-radius:999px;
  padding:7px 8px 7px 24px;
  box-shadow:var(--shadow);
  transition:border-color .2s, box-shadow .2s;
}
.hero-search:focus-within{border-color:var(--gold);box-shadow:0 12px 34px rgba(70,54,24,.12);}
.hero-search input{flex:1;border:0;outline:0;background:transparent;font-size:15px;color:var(--ink);min-width:0;}
.hero-search input::placeholder{color:#b9b09a;}
.hero-search button{
  border:0;border-radius:999px;padding:12px 30px;
  background:linear-gradient(145deg,#c14a30,#963520);color:#fff;
  font-size:14.5px;letter-spacing:.15em;text-indent:.15em;
  transition:transform .15s, box-shadow .2s;
}
.hero-search button:hover{box-shadow:0 6px 16px rgba(154,54,32,.35);transform:translateY(-1px);}
.hero-stats{
  margin-top:44px;
  display:flex;justify-content:center;align-items:center;gap:0;
}
.hero-stats li{padding:0 38px;display:flex;flex-direction:column;gap:6px;}
.hero-stats li + li{border-left:1px solid var(--line);}
.hero-stats b{font-family:var(--serif);font-size:26px;font-weight:700;color:var(--ink);}
.hero-stats span{font-size:12px;letter-spacing:.2em;color:var(--ink3);}

/* ---------- 主体两栏 ---------- */
.layout{
  display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px;
  padding-top:48px;padding-bottom:80px;
}

.sec-title{
  display:flex;align-items:baseline;gap:10px;
  font-family:var(--serif);font-size:23px;font-weight:700;color:var(--ink);
}
.sec-title i{
  font-family:var(--sans);font-style:normal;font-weight:400;
  font-size:11px;letter-spacing:.24em;color:var(--ink3);
}

/* 分类筛选 chips */
.feed-head{display:flex;flex-direction:column;gap:16px;margin-bottom:22px;}
.chips{display:flex;flex-wrap:wrap;gap:9px;}
.chip{
  padding:7px 15px;border:1px solid var(--line);border-radius:999px;
  background:var(--card);font-size:13px;color:#6b6454;
  transition:all .2s;
}
.chip b{font-size:11px;color:var(--ink3);margin-left:4px;font-weight:400;}
.chip:hover{border-color:var(--gold);color:var(--ink);}
.chip.on{background:var(--red);border-color:var(--red);color:#fff;}
.chip.on b{color:rgba(255,255,255,.75);}

/* ---------- 词条列表 ---------- */
.entry-list{display:flex;flex-direction:column;gap:14px;}
.entry{
  display:grid;grid-template-columns:40px 76px minmax(0,1fr) auto;gap:18px;align-items:center;
  padding:19px 22px;
  background:var(--card);border:1px solid var(--line);border-radius:16px;
  transition:transform .18s, box-shadow .2s, border-color .2s;
}
.entry:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#d9c9a8;}
.entry-idx{
  font-family:var(--serif);font-size:15px;font-weight:700;color:#c9bda2;
  text-align:center;
}
.entry-logo{
  position:relative;width:76px;height:76px;border-radius:14px;overflow:hidden;
  border:1px solid var(--line);background:#fff;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  box-shadow:0 3px 10px rgba(70,54,24,.07);
}
.entry-logo img,.rc-logo img,.art-logo img{
  width:100%;height:100%;object-fit:contain;background:#fff;
}
.ph{font-family:var(--serif);font-size:22px;font-weight:700;color:var(--red);}
.entry-main{min-width:0;}
.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:8px;}
.tag{font-size:11.5px;line-height:1;padding:4px 10px;border-radius:999px;font-style:normal;}
.tag-cat{background:var(--red-soft);color:var(--red);}
.tag-brand{border:1px solid var(--line);color:#8a6f46;background:#fbf7ee;}
.tag-area{background:#edefe9;color:#5c6b58;}
.entry-title{
  display:block;font-family:var(--serif);font-size:19px;font-weight:700;
  color:var(--ink);line-height:1.5;margin-bottom:7px;
  transition:color .2s;
}
.entry:hover .entry-title{color:var(--red-d);}
.stamp{
  display:inline-block;vertical-align:2px;
  margin-left:10px;padding:2px 9px;
  border:1px solid rgba(181,67,42,.45);border-radius:6px;
  background:rgba(181,67,42,.05);
  font-family:var(--sans);font-style:normal;font-weight:600;
  font-size:11px;letter-spacing:.14em;color:var(--red);
  white-space:nowrap;
}
.entry-excerpt{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  font-size:13.5px;line-height:1.8;color:var(--ink2);
}
.entry-date{
  align-self:stretch;display:flex;align-items:center;
  padding-left:18px;margin-left:2px;
  border-left:1px dashed var(--line);
  font-size:12px;color:var(--ink3);white-space:nowrap;
}

/* 空状态 */
.empty-box{
  text-align:center;padding:64px 20px;
  background:var(--card);border:1px dashed var(--line);border-radius:16px;
}
.empty-box b{font-family:var(--serif);font-size:19px;display:block;margin-bottom:10px;}
.empty-box p{font-size:13.5px;color:var(--ink2);margin-bottom:20px;}

/* 分页 */
.pager{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:30px;}
.pg{
  min-width:36px;height:36px;line-height:34px;padding:0 13px;
  border:1px solid var(--line);border-radius:10px;background:var(--card);
  font-size:14px;color:#6b6454;text-align:center;transition:all .2s;
}
.pg:hover{border-color:var(--gold);color:var(--ink);}
.pg.on{background:var(--red);border-color:var(--red);color:#fff;font-weight:600;}
.pg-dots{line-height:36px;color:var(--ink3);padding:0 2px;}

/* ---------- 侧栏 ---------- */
.side{min-width:0;}
.side-card{
  background:var(--card);border:1px solid var(--line);border-radius:16px;
  padding:22px 22px 18px;margin-bottom:22px;
}
.side-card h3{
  display:flex;align-items:baseline;gap:8px;
  font-family:var(--serif);font-size:16.5px;font-weight:700;
  padding-bottom:12px;margin-bottom:8px;border-bottom:1px solid var(--line);
}
.side-card h3 i{
  margin-left:auto;font-family:var(--sans);font-style:normal;font-weight:400;
  font-size:10px;letter-spacing:.26em;color:#c3b692;
}
.rank{counter-reset:rk;}
.rank li{counter-increment:rk;}
.rank li a{
  display:flex;align-items:center;gap:10px;
  padding:10px 0;border-bottom:1px dashed var(--line);
  font-size:13.5px;color:#4d4739;transition:color .2s;
}
.rank li:last-child a{border-bottom:0;}
.rank li a::before{
  content:counter(rk,decimal-leading-zero);
  font-family:var(--serif);font-size:13px;font-weight:700;color:#c9b57f;
  flex-shrink:0;
}
.rank .no{
  flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.rank li a:hover{color:var(--red);}
.rank time{font-size:11.5px;color:var(--ink3);white-space:nowrap;}
.plain-list li a{
  display:block;padding:9px 0;font-size:13.5px;color:#4d4739;
  border-bottom:1px dashed var(--line);transition:color .2s;
}
.plain-list li:last-child a{border-bottom:0;}
.plain-list li a::before{content:"·";color:var(--red);margin-right:8px;font-weight:700;}
.plain-list li a:hover{color:var(--red);}
.brand-list li a{
  display:flex;align-items:center;justify-content:space-between;
  padding:9px 12px;border-radius:10px;font-size:14px;color:#4d4739;
  transition:background .2s, color .2s;
}
.brand-list li a b{
  background:var(--gold-soft);color:#8a6f46;border-radius:999px;
  font-size:11.5px;font-weight:400;padding:3px 10px;
}
.brand-list li a:hover{background:#f8f3e8;}
.brand-list li a.on{background:var(--red-soft);color:var(--red-d);}
.brand-list li a.on b{background:#fff;color:var(--red);}
.side-card.about p{font-size:13.5px;line-height:2.1;color:var(--ink2);}

/* ---------- 详情页 ---------- */
.mode-detail .layout{padding-top:34px;}
.crumbs{font-size:13px;color:var(--ink3);margin-bottom:22px;}
.crumbs a{color:var(--ink2);transition:color .2s;}
.crumbs a:hover{color:var(--red);}
.crumbs i{margin:0 8px;color:#c9bda2;font-style:normal;}
.article{min-width:0;}
.art-head{padding:6px 0 4px;}
.art-title{
  font-family:var(--serif);font-weight:700;
  font-size:clamp(26px,3.6vw,36px);line-height:1.45;letter-spacing:.02em;
}
.art-title .stamp{
  font-size:15px;padding:4px 14px;vertical-align:middle;margin-left:14px;
  letter-spacing:.1em;
}
.art-titlerow{
  display:flex;align-items:flex-start;justify-content:space-between;gap:24px;
  margin-top:16px;
}
.art-logo{
  position:relative;width:92px;height:92px;border-radius:16px;overflow:hidden;flex-shrink:0;
  border:1px solid var(--line);background:#fff;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 12px rgba(70,54,24,.08);
}
.art-logo img{width:100%;height:100%;object-fit:contain;}
.art-logo .ph{font-size:34px;}
.art-meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;
  margin-top:20px;padding:14px 0;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  font-size:13px;color:var(--ink2);
}
.art-meta .m b{color:var(--ink);font-weight:600;margin-left:3px;}
.art-lead{
  margin-top:22px;
  background:var(--gold-soft);border-left:3px solid var(--gold);
  border-radius:0 12px 12px 0;
  padding:16px 22px 18px;
}
.art-lead b{
  display:block;font-size:11px;letter-spacing:.32em;color:var(--gold);
  margin-bottom:8px;font-weight:600;
}
.art-lead p{font-size:15px;line-height:2;color:#4d4739;}

.art-body{margin-top:32px;}
.art-body p{
  font-size:16.5px;line-height:2.15;color:#332f26;
  margin-bottom:20px;text-align:justify;
}
.art-body strong,.art-body b{color:var(--red-d);}
.art-body h2,.art-body h3,.art-body h4{
  font-family:var(--serif);font-weight:700;color:var(--ink);
  margin:34px 0 16px;font-size:20px;
}
.art-body h3{font-size:18px;}
.art-body h4{font-size:16.5px;}
.art-body ul,.art-body ol{margin:0 0 20px;padding-left:24px;list-style:disc;}
.art-body ol{list-style:decimal;}
.art-body li{font-size:16px;line-height:2;color:#332f26;margin-bottom:6px;}
.art-body blockquote{
  margin:0 0 20px;padding:14px 20px;
  border-left:3px solid var(--red);background:var(--red-soft);
  border-radius:0 10px 10px 0;color:#5a4438;
}
.art-body img{max-width:100%;height:auto;border-radius:12px;margin:10px 0 20px;}
.art-empty p{color:var(--ink2);}

/* 上一篇 / 下一篇 */
.art-neighbor{
  display:grid;grid-template-columns:1fr 1fr;gap:14px;
  margin-top:40px;padding-top:30px;border-top:1px solid var(--line);
}
.nb{
  display:block;border:1px solid var(--line);border-radius:14px;
  background:var(--card);padding:16px 20px;transition:border-color .2s, box-shadow .2s;
}
.nb:hover{border-color:#d9c9a8;box-shadow:var(--shadow);}
.nb span{font-size:11px;letter-spacing:.2em;color:var(--ink3);}
.nb b{
  display:block;margin-top:7px;
  font-family:var(--serif);font-size:15px;font-weight:700;color:var(--ink);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  transition:color .2s;
}
.nb:hover b{color:var(--red);}
.nb.next{text-align:right;}

/* 相关提问 */
.rel{margin-top:46px;}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px;}
.rel-card{
  display:flex;gap:13px;align-items:center;
  border:1px solid var(--line);border-radius:13px;background:var(--card);
  padding:15px 16px;transition:transform .18s, box-shadow .2s, border-color .2s;
}
.rel-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#d9c9a8;}
.rc-logo{
  position:relative;width:60px;height:60px;border-radius:12px;overflow:hidden;flex-shrink:0;
  border:1px solid var(--line);background:#fff;
  display:flex;align-items:center;justify-content:center;
}
.rc-logo img{width:100%;height:100%;object-fit:contain;}
.rc-logo .ph{font-size:20px;}
.rc-main{min-width:0;}
.rc-title{
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  font-family:var(--serif);font-size:14.5px;font-weight:700;line-height:1.55;
  color:var(--ink);transition:color .2s;
}
.rel-card:hover .rc-title{color:var(--red);}
.rc-sub{display:block;margin-top:5px;font-size:12px;color:var(--ink3);}

/* ---------- 状态页 ---------- */
.page-state{padding:100px 22px;text-align:center;}
.state-card{
  max-width:460px;margin:0 auto;
  background:var(--card);border:1px solid var(--line);border-radius:20px;
  padding:56px 40px;box-shadow:var(--shadow);
}
.state-seal{
  width:64px;height:64px;border-radius:14px;margin:0 auto;
  background:linear-gradient(145deg,#c14a30,#963520);color:#fff;
  font-family:var(--serif);font-size:32px;font-weight:700;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 16px rgba(154,54,32,.3);
}
.state-card h1{font-family:var(--serif);font-size:22px;margin-top:22px;}
.state-card p{font-size:14px;line-height:2;color:var(--ink2);margin:12px 0 24px;}
.btn-main{
  display:inline-block;padding:11px 32px;border-radius:999px;
  background:var(--red);color:#fff;font-size:14px;letter-spacing:.1em;
  transition:background .2s, transform .15s;
}
.btn-main:hover{background:var(--red-d);transform:translateY(-1px);}

/* ---------- 页脚 ---------- */
.site-foot{margin-top:auto;background:var(--dark);color:#cfc4ac;}
.foot-in{
  display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:44px;
  padding-top:54px;padding-bottom:44px;
}
.foot-brand .seal{width:34px;height:34px;font-size:18px;display:inline-flex;vertical-align:middle;}
.foot-brand b{
  font-family:var(--serif);font-size:19px;color:#f2ead8;margin-left:12px;
  vertical-align:middle;
}
.foot-brand p{margin-top:16px;font-size:13px;line-height:2.1;color:#9a9078;}
.foot-nav b{
  display:block;font-size:12px;letter-spacing:.28em;color:#7a715c;
  margin-bottom:14px;font-weight:600;
}
.foot-nav a{display:block;padding:4.5px 0;font-size:13.5px;color:#cfc4ac;transition:color .2s;}
.foot-nav a:hover{color:#fff;}
.foot-line{
  border-top:1px solid rgba(255,255,255,.08);
  padding-top:18px;padding-bottom:22px;
  text-align:center;font-size:12px;letter-spacing:.08em;color:#877d64;
}

/* ---------- 返回顶部 ---------- */
.backtop{
  position:fixed;right:26px;bottom:34px;z-index:60;
  width:44px;height:44px;border-radius:50%;border:0;
  background:var(--red);color:#fff;font-family:var(--serif);font-size:15px;
  box-shadow:0 8px 20px rgba(154,54,32,.35);
  opacity:0;visibility:hidden;transform:translateY(10px);
  transition:all .25s;
}
.backtop.show{opacity:1;visibility:visible;transform:translateY(0);}
.backtop:hover{background:var(--red-d);}

/* ---------- 响应式 ---------- */
@media (max-width:1020px){
  .layout{grid-template-columns:1fr;}
  .side{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:20px;
  }
  .side-card{margin-bottom:0;}
}
@media (max-width:760px){
  .head-nav{display:none;}
  .head-search{width:auto;flex:1;}
  .hero{padding:60px 0 46px;}
  .hero::before{font-size:220px;}
  .hero-stats li{padding:0 20px;}
  .hero-stats b{font-size:21px;}
  .entry{grid-template-columns:60px minmax(0,1fr);gap:14px;padding:16px 16px;}
  .entry-idx,.entry-date{display:none;}
  .entry-logo{width:60px;height:60px;}
  .entry-title{font-size:17px;}
  .art-neighbor{grid-template-columns:1fr;}
  .nb.next{text-align:left;}
  .art-logo{width:64px;height:64px;border-radius:12px;}
  .art-logo .ph{font-size:26px;}
  .rel-grid{grid-template-columns:1fr;}
  .foot-in{grid-template-columns:1fr;gap:32px;padding-top:44px;}
  .backtop{right:16px;bottom:20px;}
  .side{grid-template-columns:1fr;}
}
