@charset "utf-8";
/* ==========================================================================
   《你不是矫情》· 站点设计系统
   参考 Oura "warm-paper wellness"：暖纸底 + 高对比编辑衬线 + 安静的 grotesque
   心理学调校：降低对比、放大留白、放慢节奏，让长文读起来不累
   ========================================================================== */

:root{
  /* 颜色：暖纸画布 + 白色抬升面 + 大地色带 + 单一行动蓝 */
  --canvas:      #f7f1e8;
  --canvas-deep: #f1e9dd;
  --surface:     #ffffff;
  --surface-alt: #fbf7f0;

  --ink:    #1c1b1a;
  --stone:  #4a4741;
  --ash:    #7d7a74;
  --mute:   #a8a5a0;
  --hair:   #e6e0d5;
  --hair-2: #d9d2c4;

  --clay:  #6b443d;   /* 案例 / 真实故事 */
  --clay-soft: #f3ebe6;
  --sage:  #5c6f5d;   /* 练习 / 方法 */
  --sage-soft: #eaefe7;
  --olive: #849671;
  --gold:  #af751b;
  --gold-soft: #f6eeda;
  --blue:  #2a72de;   /* 唯一主行动色，全站每屏最多一处 */
  --blue-soft: #e8f0fc;
  --red:   #c0392b;   /* 红灯 / 危机 */

  /* 字体：宋体做标题（出版感），黑体做正文（屏幕友好） */
  --serif: "Songti SC", "Source Han Serif SC", "Noto Serif CJK SC",
           "SimSun", "STSong", Georgia, serif;
  --sans:  -apple-system, BlinkMacSystemFont, "PingFang SC",
           "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans SC",
           "Helvetica Neue", Arial, sans-serif;
  --mono:  ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

  /* 圆角 */
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 20px;
  --r-xl: 28px;
  --r-full: 9999px;

  /* 间距：留白的骨架 */
  --s-1: 4px;  --s-2: 8px;  --s-3: 12px; --s-4: 16px;
  --s-5: 24px; --s-6: 32px; --s-7: 48px; --s-8: 64px;
  --s-9: 96px; --s-10: 128px;

  /* 阅读节奏 */
  --measure: 39em;          /* 行宽约 38 个汉字 */
  --lh-body: 1.9;

  --shadow-1: 0 1px 2px rgba(60,45,30,.04), 0 4px 16px rgba(60,45,30,.05);
  --shadow-2: 0 2px 6px rgba(60,45,30,.05), 0 12px 32px rgba(60,45,30,.07);
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--canvas);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:var(--lh-body);
  letter-spacing:.01em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;}
a{color:inherit;}

/* ── 版面骨架 ───────────────────────────────────────────────────────────── */
.wrap{max-width:1120px; margin:0 auto; padding:0 32px;}
.narrow{max-width:calc(var(--measure) + 96px); margin:0 auto; padding:0 32px;}

/* ── 顶部导航：安静，不抢戏 ────────────────────────────────────────────── */
.site-head{
  position:sticky; top:0; z-index:40;
  background:rgba(247,241,232,.86);
  backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid var(--hair);
}
.site-head .wrap{
  display:flex; align-items:center; gap:var(--s-5);
  height:68px;
}
.brand{
  font-family:var(--serif);
  font-size:19px; font-weight:400; letter-spacing:.06em;
  text-decoration:none; white-space:nowrap;
}
.brand .sm{font-size:11px; color:var(--mute); letter-spacing:.22em; display:block; margin-top:2px;}
.site-nav{display:flex; gap:var(--s-5); margin-left:auto; align-items:center;}
.site-nav a{
  font-size:14.5px; color:var(--stone); text-decoration:none;
  padding-bottom:2px; border-bottom:1px solid transparent;
  transition:color .25s ease, border-color .25s ease;
}
.site-nav a:hover{color:var(--ink); border-bottom-color:var(--hair-2);}
.site-nav a.on{color:var(--ink); border-bottom-color:var(--clay);}

/* 搜索按钮 */
.search-btn{
  font:inherit; font-size:14.5px; color:var(--stone);
  background:var(--surface); border:1px solid var(--hair-2);
  border-radius:var(--r-full); padding:7px 16px; cursor:pointer;
  display:inline-flex; align-items:center; gap:8px;
  transition:border-color .25s ease, color .25s ease;
}
.search-btn:hover{border-color:var(--stone); color:var(--ink);}
.search-btn kbd{
  font-family:var(--mono); font-size:11px; color:var(--mute);
  border:1px solid var(--hair-2); border-radius:4px; padding:1px 5px;
}
.nav-toggle{display:none;}

/* ── 搜索浮层 ───────────────────────────────────────────────────────────── */
.overlay{
  position:fixed; inset:0; z-index:80;
  background:rgba(30,25,20,.32);
  backdrop-filter:blur(3px);
  display:none;
  align-items:flex-start; justify-content:center;
  padding:13vh 24px 24px;
}
.overlay.open{display:flex;}
.search-box{
  width:100%; max-width:660px;
  background:var(--surface);
  border-radius:var(--r-xl);
  box-shadow:var(--shadow-2);
  overflow:hidden;
}
.search-box input{
  width:100%; border:0; outline:none;
  font:inherit; font-size:19px; color:var(--ink);
  padding:26px 28px;
  background:transparent;
}
.search-box input::placeholder{color:var(--mute);}
.search-hint{
  padding:0 28px 18px; font-size:13px; color:var(--mute);
  border-bottom:1px solid var(--hair);
}
.search-res{max-height:min(56vh,520px); overflow-y:auto;}
.search-res a{
  display:block; text-decoration:none;
  padding:16px 28px; border-bottom:1px solid var(--hair);
}
.search-res a:hover{background:var(--surface-alt);}
.search-res .r-t{font-size:16px; font-weight:600;}
.search-res .r-t em{font-style:normal; color:var(--clay);}
.search-res .r-m{font-size:12.5px; color:var(--mute); margin-top:3px;}
.search-res .r-x{font-size:13.5px; color:var(--ash); margin-top:6px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.search-empty{padding:30px 28px; color:var(--mute); font-size:14px;}

/* ── 首屏 ───────────────────────────────────────────────────────────────── */
.hero{padding:var(--s-10) 0 var(--s-9);}
.hero .eyebrow{
  font-size:11.5px; letter-spacing:.26em; color:var(--clay);
  text-transform:uppercase; margin:0 0 var(--s-5);
}
.hero h1{
  font-family:var(--serif); font-weight:400;
  font-size:clamp(38px, 6.4vw, 68px); line-height:1.18;
  letter-spacing:.02em; margin:0 0 var(--s-5);
}
.hero h1 span{display:block;}
.hero .lede{
  font-family:var(--serif); font-size:20px; line-height:1.75;
  color:var(--stone); max-width:30em; margin:0 0 var(--s-7);
}
.hero-actions{display:flex; flex-wrap:wrap; gap:var(--s-3); align-items:center;}
.btn{
  display:inline-flex; align-items:center; gap:8px;
  font-size:15.5px; font-weight:600; text-decoration:none;
  padding:13px 26px; border-radius:var(--r-full); border:1px solid transparent;
  transition:transform .2s ease, background .25s ease, border-color .25s ease;
}
.btn:active{transform:translateY(1px);}
.btn-primary{background:var(--blue); color:#fff;}
.btn-primary:hover{background:#1f5fc4;}
.btn-ghost{background:transparent; color:var(--stone); border-color:var(--hair-2);}
.btn-ghost:hover{border-color:var(--stone); color:var(--ink);}

/* 搜索条（首页大号） */
.bigsearch{
  background:var(--surface); border:1px solid var(--hair-2);
  border-radius:var(--r-xl); padding:8px 8px 8px 26px;
  display:flex; align-items:center; gap:var(--s-3);
  box-shadow:var(--shadow-1);
  max-width:640px;
}
.bigsearch input{
  flex:1; border:0; outline:none; background:transparent;
  font:inherit; font-size:18px; color:var(--ink); padding:16px 0;
}
.bigsearch input::placeholder{color:var(--mute);}
.bigsearch .go{
  border:0; cursor:pointer; font:inherit; font-size:15px; font-weight:600;
  background:var(--blue); color:#fff; border-radius:var(--r-full);
  padding:13px 26px;
}

/* ── 区块标题 ───────────────────────────────────────────────────────────── */
.sec{padding:var(--s-9) 0;}
.sec-t{
  font-family:var(--serif); font-weight:400; font-size:27px;
  letter-spacing:.04em; margin:0 0 var(--s-2);
}
.sec-s{color:var(--ash); font-size:14.5px; margin:0 0 var(--s-6);}
.sep{height:1px; background:var(--hair); border:0; margin:0;}

/* ── 感觉卡片 ──────────────────────────────────────────────────────────── */
.moods{display:grid; grid-template-columns:repeat(auto-fill,minmax(158px,1fr)); gap:14px;}
.mood{
  display:block; text-decoration:none;
  background:var(--surface); border:1px solid var(--hair);
  border-radius:var(--r-lg); padding:20px 18px;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.mood:hover{transform:translateY(-3px); box-shadow:var(--shadow-1); border-color:var(--hair-2);}
.mood .ch{font-family:var(--serif); font-size:31px; line-height:1; color:var(--clay); display:block;}
.mood .lb{font-size:14px; color:var(--stone); margin-top:10px; display:block;}
.mood .ct{font-size:12px; color:var(--mute); margin-top:4px; display:block; white-space:nowrap;}

/* ── 场景列表 ──────────────────────────────────────────────────────────── */
.scenes{display:grid; grid-template-columns:repeat(auto-fill,minmax(272px,1fr)); gap:12px;}
.scene{
  display:flex; align-items:baseline; justify-content:space-between; gap:14px;
  text-decoration:none; color:var(--stone);
  padding:17px 20px; background:var(--surface);
  border:1px solid var(--hair); border-radius:var(--r-md);
  transition:border-color .25s ease, color .25s ease, transform .25s ease;
}
.scene:hover{border-color:var(--hair-2); color:var(--ink); transform:translateY(-2px);}
.scene .go{color:var(--mute); font-size:12.5px; white-space:nowrap;}

/* ── 卡片：条目 ────────────────────────────────────────────────────────── */
.cards{display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:16px;}
.card-e{
  display:block; text-decoration:none; color:inherit;
  background:var(--surface); border:1px solid var(--hair);
  border-radius:var(--r-lg); padding:22px 24px;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.card-e:hover{transform:translateY(-3px); box-shadow:var(--shadow-1); border-color:var(--hair-2);}
.card-e .en{
  font-family:var(--mono); font-size:11.5px; letter-spacing:.14em; color:var(--mute);
}
.card-e .et{
  font-family:var(--serif); font-size:20px; font-weight:400;
  margin:7px 0 9px; letter-spacing:.02em;
}
.card-e .es{font-size:14px; color:var(--stone); line-height:1.7;}
.card-e .em{margin-top:12px; font-size:12.5px; color:var(--mute);}

/* ── 分组块 ─────────────────────────────────────────────────────────────── */
.grp{margin-bottom:var(--s-8);}
.grp-h{
  display:flex; align-items:baseline; gap:14px;
  padding-bottom:14px; margin-bottom:var(--s-5);
  border-bottom:1px solid var(--hair-2);
}
.grp-n{
  font-family:var(--serif); font-size:13px; letter-spacing:.2em; color:var(--clay);
}
.grp-t{font-family:var(--serif); font-size:24px; font-weight:400; letter-spacing:.03em;}
.grp-d{font-size:13.5px; color:var(--ash); margin-left:auto; text-align:right;}

/* ── 正文排版（长文阅读） ──────────────────────────────────────────────── */
.prose{max-width:var(--measure);}
.prose p{
  margin:0 0 1.05em; text-indent:2em; line-height:var(--lh-body);
}
.prose p:first-child{margin-top:0;}
.prose strong{font-weight:600; color:var(--ink);}
.prose h3{
  font-family:var(--serif); font-weight:400; font-size:22px;
  letter-spacing:.03em; margin:var(--s-8) 0 var(--s-4); text-indent:0;
}
.prose h4{
  font-weight:600; font-size:16px; margin:var(--s-6) 0 var(--s-3); text-indent:0;
}
.prose ul,.prose ol{margin:0 0 1.1em; padding-left:1.6em;}
.prose li{margin:0 0 .5em; line-height:1.8;}
.prose table{
  width:100%; border-collapse:collapse; font-size:14.5px;
  margin:var(--s-5) 0 var(--s-6); text-indent:0;
}
.prose th,.prose td{
  border:1px solid var(--hair); padding:11px 14px; text-align:left; vertical-align:top;
}
.prose th{background:var(--surface-alt); font-weight:600; font-size:13.5px;}
.prose blockquote{
  margin:var(--s-5) 0; padding:2px 0 2px 20px;
  border-left:2px solid var(--hair-2); color:var(--stone); text-indent:0;
}

/* 书稿原有板块，在网站里重新定样式 */
.blk{margin:0 0 var(--s-6);}
.blk-t{
  font-size:13px; font-weight:700; letter-spacing:.14em;
  color:var(--clay); margin:0 0 var(--s-3);
  padding-bottom:9px; border-bottom:1px solid var(--hair);
  text-indent:0;
}
.blk ul.check{list-style:none; padding-left:0; margin:0 0 1em;}
.blk ul.check li{
  position:relative; padding-left:22px; margin-bottom:.62em;
  line-height:1.78; font-size:16px; color:var(--stone);
}
.blk ul.check li::before{
  content:""; position:absolute; left:2px; top:.62em;
  width:7px; height:7px; border-radius:50%;
  background:var(--sage-soft); border:1px solid var(--olive);
}
.blk ol.steps{list-style:none; padding-left:0; counter-reset:st;}
.blk ol.steps li{
  counter-increment:st; position:relative;
  padding-left:34px; margin-bottom:.9em; line-height:1.82;
}
.blk ol.steps li::before{
  content:counter(st); position:absolute; left:0; top:.28em;
  width:23px; height:23px; border-radius:50%;
  background:var(--sage-soft); color:var(--sage);
  font-size:12.5px; font-weight:700;
  display:flex; align-items:center; justify-content:center;
}
.blk ol.steps.plain li::before{background:var(--gold-soft); color:var(--gold);}

/* 东西方两栏 */
.why{display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:0;}
.why .w,.why .e{
  background:var(--surface-alt); border-radius:var(--r-md);
  padding:16px 18px;
}
.why h5{
  font-size:12.5px; font-weight:700; letter-spacing:.1em;
  margin:0 0 8px; text-indent:0;
}
.why .w h5{color:var(--sage);}
.why .e h5{color:var(--clay);}
.why p{margin:0; font-size:15px; line-height:1.78; text-indent:0; color:var(--stone);}

/* 东方心法 */
.daofa{
  background:var(--surface-alt);
  border-left:2px solid var(--olive);
  border-radius:0 var(--r-md) var(--r-md) 0;
  padding:20px 22px; margin:0 0 var(--s-5);
}
.daofa .origin{
  font-family:var(--serif); font-size:19px; line-height:1.7;
  margin:0 0 6px; text-indent:0;
}
.daofa .src{font-size:12.5px; color:var(--mute); margin:0 0 12px; text-indent:0;}
.daofa .para{margin:0 0 10px; font-size:15.5px; line-height:1.82; text-indent:0; color:var(--stone);}
.daofa .use{margin:0; font-size:15px; line-height:1.8; text-indent:0; color:var(--stone);}

/* 真实案例 */
.case{
  background:var(--surface); border:1px solid var(--hair);
  border-radius:var(--r-lg); padding:22px 24px; margin:0 0 var(--s-5);
}
.case .case-h{
  font-size:13px; font-weight:700; letter-spacing:.14em;
  color:var(--clay); margin:0 0 14px; text-indent:0;
}
.case p{margin:0 0 10px; font-size:15.5px; line-height:1.82; text-indent:0; color:var(--stone);}
.case p:last-child{margin-bottom:0;}
.case b{color:var(--ink);}

/* 交叉引用 */
.xref{
  color:var(--clay); text-decoration:none;
  border-bottom:1px solid var(--hair-2);
  padding:0 1px;
  font-family:var(--mono); font-size:.9em;
  white-space:nowrap;
}
.xref:hover{background:var(--clay-soft); border-bottom-color:var(--clay);}

/* ── 章节 / 条目头 ─────────────────────────────────────────────────────── */
.crumb{font-size:13px; color:var(--mute); margin:0 0 var(--s-5);}
.crumb a{color:var(--ash); text-decoration:none;}
.crumb a:hover{color:var(--clay);}

/* ── 分享：浮动按钮 + 弹层 ─────────────────────────────────────────── */
.share-fab{
  position:fixed; right:22px; bottom:22px; z-index:80;
  display:inline-flex; align-items:center; gap:7px;
  font:inherit; font-size:13.5px; color:var(--clay);
  background:var(--surface); border:1px solid var(--hair-2);
  border-radius:var(--r-full); padding:10px 18px 10px 15px;
  box-shadow:var(--shadow-2); cursor:pointer;
  transition:color .25s ease, border-color .25s ease, transform .2s ease;
}
.share-fab:hover{color:var(--ink); border-color:var(--clay); transform:translateY(-1px);}
.share-pop{
  position:fixed; right:22px; bottom:72px; z-index:81;
  width:196px; background:var(--surface);
  border:1px solid var(--hair); border-radius:var(--r-md);
  box-shadow:var(--shadow-2); padding:8px;
  opacity:0; visibility:hidden; transform:translateY(8px);
  transition:opacity .22s ease, transform .22s ease, visibility .22s;
}
.share-pop.open{opacity:1; visibility:visible; transform:translateY(0);}
.share-t{
  font-size:11.5px; letter-spacing:.18em; color:var(--mute);
  padding:8px 10px 6px; border-bottom:1px solid var(--hair); margin-bottom:6px;
}
.share-item{
  display:flex; align-items:center; gap:10px; width:100%;
  font:inherit; font-size:14px; color:var(--ink); text-align:left;
  background:none; border:0; border-radius:var(--r-sm);
  padding:9px 10px; cursor:pointer; transition:background .2s ease;
}
.share-item:hover{background:var(--clay-soft);}
.si{
  display:inline-flex; align-items:center; justify-content:center;
  width:22px; height:22px; border-radius:6px;
  font-size:11.5px; font-weight:700; color:#fff; flex:none;
}
.si.wx{background:#1faa5a;} .si.wb{background:#d44a33;}
.si.qq{background:#3a76c9;} .si.cp{background:#8a8377;}

/* ── 微信二维码弹层 ────────────────────────────────────────────────── */
.qr-veil{
  position:fixed; inset:0; z-index:90; background:rgba(28,27,26,.42);
  display:flex; align-items:center; justify-content:center; padding:20px;
  opacity:0; visibility:hidden; transition:opacity .25s ease, visibility .25s;
}
.qr-veil.open{opacity:1; visibility:visible;}
.qr-card{
  background:var(--surface); border-radius:var(--r-lg);
  box-shadow:var(--shadow-2); padding:30px 34px 26px;
  max-width:320px; width:100%; text-align:center;
}
.qr-t{font-family:var(--serif); font-size:17px; font-weight:600; margin-bottom:18px;}
.qr-box{display:flex; justify-content:center; margin-bottom:12px;}
.qr-box svg{width:200px; height:200px; border:1px solid var(--hair); border-radius:var(--r-sm); padding:8px; box-sizing:border-box;}
.qr-hint{font-size:12.5px; color:var(--mute); margin-bottom:18px;}
.qr-close{
  font:inherit; font-size:13.5px; color:var(--stone);
  background:var(--canvas); border:1px solid var(--hair-2);
  border-radius:var(--r-full); padding:8px 26px; cursor:pointer;
  transition:color .2s ease, border-color .2s ease;
}
.qr-close:hover{color:var(--clay); border-color:var(--clay);}
.e-nav{
  display:flex; align-items:baseline; flex-wrap:wrap; gap:14px 26px;
  margin-top:var(--s-6); padding-top:18px; border-top:1px solid var(--hair);
}
.e-nav a{
  font-size:14px; color:var(--stone); text-decoration:none;
  transition:color .25s ease;
}
.e-nav a:hover{color:var(--clay);}
.e-head{margin:0 0 var(--s-7);}
.e-num{
  font-family:var(--mono); font-size:12px; letter-spacing:.2em;
  color:var(--clay); display:block; margin-bottom:12px;
}
.e-title{
  font-family:var(--serif); font-weight:400;
  font-size:clamp(28px,4.4vw,42px); line-height:1.28;
  letter-spacing:.02em; margin:0 0 var(--s-4);
}
.e-alias{
  font-size:13.5px; color:var(--ash); line-height:1.8;
  margin:0; padding-top:14px; border-top:1px solid var(--hair);
  text-indent:0; max-width:var(--measure);
}

/* ── 工具 ───────────────────────────────────────────────────────────────── */
.tool{
  background:var(--surface); border:1px solid var(--hair);
  border-radius:var(--r-lg); padding:24px 26px; margin:0 0 18px;
  scroll-margin-top:88px;
}
.tool-h{
  display:flex; align-items:baseline; gap:14px; flex-wrap:wrap;
  margin-bottom:16px;
}
.tool-h .t{font-family:var(--serif); font-size:20px; font-weight:400; letter-spacing:.02em;}
.tool-h .n{font-size:12.5px; color:var(--mute); margin-left:auto;}
.tool-b dl{margin:0;}
.tool-b dt{
  font-size:12.5px; font-weight:700; letter-spacing:.1em;
  color:var(--sage); margin:0 0 5px;
}
.tool-b dd{margin:0 0 15px; font-size:15.5px; line-height:1.85; color:var(--stone);}
.tool-b dd:last-child{margin-bottom:0;}

/* ── 自修样本 ───────────────────────────────────────────────────────────── */
.ex{
  background:var(--surface); border:1px solid var(--hair);
  border-radius:var(--r-lg); padding:24px 26px; margin:0 0 18px;
}
.ex-t{
  font-family:var(--serif); font-size:20px; font-weight:400;
  margin:0 0 14px; letter-spacing:.02em; text-indent:0;
}
.ex-t .ex-n{font-family:var(--mono); font-size:13px; color:var(--clay); margin-right:10px;}
.ex-t .ex-a{
  font-family:var(--sans); font-size:12.5px; font-weight:400;
  color:var(--mute); margin-left:10px;
}
.ex-s{margin:0 0 11px; font-size:15.5px; line-height:1.85; color:var(--stone); text-indent:0;}
.ex-s:last-child{margin-bottom:0;}
.ex-s .ex-lb{color:var(--sage); font-weight:600; margin-right:2px;}
.ex-s .ex-lb::after{content:"：";}

/* ── 书单 ───────────────────────────────────────────────────────────────── */
.bk{
  background:var(--surface); border:1px solid var(--hair);
  border-radius:var(--r-lg); padding:22px 24px; margin:0 0 16px;
  display:flex; gap:18px; align-items:flex-start;
}
.bk-img{
  width:66px; flex:none; border-radius:5px;
  box-shadow:0 2px 8px rgba(60,45,30,.16);
  background:var(--canvas);
}
.bk-main{flex:1; min-width:0;}
.bk-t{font-family:var(--serif); font-size:19px; font-weight:400; margin:0 0 10px; text-indent:0;}
.bk-t .bk-a{font-family:var(--sans); font-size:12.5px; color:var(--mute); margin-left:10px;}
.bk p{margin:0 0 10px; font-size:15px; line-height:1.82; color:var(--stone); text-indent:0;}
.bk-buy{
  display:inline-block; margin-top:4px;
  font-size:12.5px; color:var(--clay); text-decoration:none;
  border:1px solid var(--hair-2); border-radius:var(--r-full);
  padding:6px 15px; transition:color .2s ease, background .2s ease, border-color .2s ease;
}
.bk-buy:hover{color:#fff; background:var(--clay); border-color:var(--clay);}
.bk p:last-child{margin-bottom:0;}
.tier{margin-bottom:var(--s-8);}
.tier-t{
  font-family:var(--serif); font-size:22px; font-weight:400;
  letter-spacing:.03em; margin:0 0 8px;
  padding-bottom:12px; border-bottom:1px solid var(--hair-2);
}
.tier-lead{font-size:14px; color:var(--ash); margin:0 0 var(--s-5);}

/* ── 提示框 ─────────────────────────────────────────────────────────────── */
.box{
  background:var(--surface-alt); border-radius:var(--r-lg);
  padding:20px 24px; margin:0 0 var(--s-6);
}
.box .bt{
  display:block; font-size:13px; font-weight:700; letter-spacing:.12em;
  color:var(--clay); margin-bottom:10px;
}
.box p{margin:0 0 10px; font-size:15.5px; line-height:1.85; color:var(--stone); text-indent:0;}
.box p:last-child{margin-bottom:0;}
.box.red{background:#fbf0ee;}
.box.red .bt{color:var(--red);}

/* ── 深浅标记 ──────────────────────────────────────────────────────────── */
.dp{display:inline-flex; gap:3px; vertical-align:middle; margin-left:8px;}
.dp i{
  width:6px; height:6px; border-radius:1px;
  background:var(--hair-2); display:block;
}
.dp i.on{background:var(--sage);}

/* ── 页脚 ───────────────────────────────────────────────────────────────── */
.site-foot{
  border-top:1px solid var(--hair);
  padding:var(--s-7) 0 var(--s-8); margin-top:var(--s-8);
  color:var(--ash); font-size:13.5px;
}
.site-foot .fx{display:flex; gap:var(--s-6); flex-wrap:wrap; justify-content:space-between;}
.site-foot a{color:var(--ash); text-decoration:none;}
.site-foot a:hover{color:var(--clay);}
.site-foot .fl{display:flex; gap:var(--s-5); flex-wrap:wrap;}

/* ── 组件：标签 / 药丸 ─────────────────────────────────────────────────── */
.tags{display:flex; flex-wrap:wrap; gap:8px;}
.tag{
  font-size:13px; color:var(--stone);
  background:var(--surface); border:1px solid var(--hair);
  border-radius:var(--r-full); padding:6px 15px; cursor:pointer;
  transition:all .25s ease;
}
.tag:hover{border-color:var(--stone); color:var(--ink);}
.tag.on{background:var(--clay); border-color:var(--clay); color:#fff;}

/* ── 搜索结果高亮 ──────────────────────────────────────────────────────── */
mark{background:var(--gold-soft); color:var(--ink); padding:0 2px; border-radius:2px;}

/* ── 空状态 ─────────────────────────────────────────────────────────────── */
.none{padding:var(--s-7) 0; color:var(--mute); text-align:center; font-size:15px;}

/* ── 响应式 ─────────────────────────────────────────────────────────────── */
@media (max-width: 900px){
  .why{grid-template-columns:1fr;}
  .grp-d{display:none;}
}
@media (max-width: 720px){
  body{font-size:16.5px;}
  .wrap,.narrow{padding:0 22px;}
  .hero{padding:var(--s-8) 0 var(--s-7);}
  .site-nav{display:none; position:absolute; top:68px; left:0; right:0;
    background:var(--canvas); border-bottom:1px solid var(--hair);
    flex-direction:column; align-items:flex-start; gap:var(--s-4);
    padding:20px 22px 26px;}
  .site-nav.open{display:flex;}
  .nav-toggle{
    display:inline-flex; align-items:center; justify-content:center;
    width:38px; height:38px; margin-left:auto;
    background:var(--surface); border:1px solid var(--hair-2);
    border-radius:var(--r-full); cursor:pointer; font:inherit; color:var(--stone);
  }
  .bigsearch{flex-direction:column; align-items:stretch; padding:18px; border-radius:var(--r-lg);}
  .bigsearch .go{width:100%;}
  .moods{grid-template-columns:repeat(auto-fill,minmax(136px,1fr));}
  /* 窄屏（≤360）改单列，避免卡片最小宽度撑破视口 */
  .cards{grid-template-columns:1fr; gap:14px;}
  .scenes{grid-template-columns:1fr;}
  /* 宽表格横向滚动，不撑破页面 */
  .prose table{
    display:block; overflow-x:auto; -webkit-overflow-scrolling:touch;
    font-size:13.5px;
  }
  .prose th,.prose td{padding:9px 11px;}
  .share-fab{
    right:16px;
    bottom:calc(16px + env(safe-area-inset-bottom, 0px));
  }
  .share-pop{
    right:16px;
    bottom:calc(66px + env(safe-area-inset-bottom, 0px));
  }
}
@media (max-width: 360px){
  body{font-size:16px;}
  .wrap,.narrow{padding:0 18px;}
  .sec-t{font-size:26px;}
  .hero{padding:var(--s-7) 0 var(--s-6);}
}
