/* =====================================================================
   墨韵 MoYun — ZWWX 中文文学社 风格
   暖纸为底、墨色为字、朱红点睛；中式的气质留在色彩与纹样里，文字与排版保持现代、直白、好读。
   结构：1 变量  2 基础  3 纹样与动效  4 页头  5 通用组件  6 页面  7 Discuz 原生组件适配  8 响应式
   ===================================================================== */

/* ---------- 1. 变量 ---------- */
:root{
  --mo-paper:#f4eee2;
  --mo-paper-2:#ece4d3;
  --mo-card:#fffcf5;
  --mo-card-2:#faf5ea;
  --mo-ink:#1f1c18;
  --mo-ink-2:#463f36;
  --mo-ink-3:#7d7466;
  --mo-ink-4:#a89f90;
  --mo-line:#e2d6c0;
  --mo-line-2:#d4c5a9;
  --mo-red:#b23a2c;          /* 朱砂 */
  --mo-red-2:#8f2c21;
  --mo-red-soft:#f6e3dc;
  --mo-dai:#2e5552;          /* 黛青 */
  --mo-dai-soft:#e2ece7;
  --mo-gold:#a8844b;         /* 泥金 */
  --mo-gold-soft:#f2e8d3;
  --mo-r:16px;
  --mo-r-s:10px;
  --mo-shadow:0 1px 0 rgba(255,255,255,.7) inset,0 12px 32px -18px rgba(74,52,24,.35);
  --mo-shadow-h:0 1px 0 rgba(255,255,255,.7) inset,0 22px 44px -20px rgba(74,52,24,.45);
  --mo-serif:var(--mo-sans);
  --mo-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif;
  --mo-wrap:1200px;
  --mo-hd-h:68px;
  --mo-ease:cubic-bezier(.22,.8,.24,1);
  --mo-paper-tex:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .36 0 0 0 0 .22 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --mo-huiwen:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='12' viewBox='0 0 24 12'%3E%3Cpath d='M0 11h10V3H4v5h3V6' fill='none' stroke='%23b23a2c' stroke-width='1.2'/%3E%3Cpath d='M12 11h10V3h-6v5h3V6' fill='none' stroke='%23b23a2c' stroke-width='1.2'/%3E%3C/svg%3E");
}

/* ---------- 2. 基础 ---------- */
html{scroll-padding-top:calc(var(--mo-hd-h) + 16px);-webkit-text-size-adjust:100%}
body.mo{margin:0;padding:0;min-width:0;background:var(--mo-paper);background-image:var(--mo-paper-tex);color:var(--mo-ink);font:14px/1.7 var(--mo-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.mo a{color:var(--mo-ink);text-decoration:none;transition:color .2s}
body.mo a:hover{color:var(--mo-red)}
body.mo ::selection{background:rgba(178,58,44,.18);color:inherit}
body.mo :focus-visible{outline:2px solid var(--mo-red);outline-offset:3px;border-radius:4px}
body.mo img{max-width:100%}
.mo-wrap{width:min(var(--mo-wrap),calc(100% - 48px));margin:0 auto;box-sizing:border-box}
.mo-serif{font-family:var(--mo-serif)}
.mo-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
body.mo #wp.wp{width:min(var(--mo-wrap),calc(100% - 48px));min-width:0;margin:0 auto;background:none;border:0}
html.widthauto body.mo #wp,body.mo #hd .wp{min-width:0}
body.mo .wp{width:min(var(--mo-wrap),calc(100% - 48px))}

/* ---------- 3. 纹样与动效 ---------- */
/* 远山背景：固定在页面底层，随滚动极缓慢漂移 */
.mo-sky{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.mo-sky::before{content:"";position:absolute;right:-8vw;top:-14vw;width:46vw;height:46vw;border-radius:50%;background:radial-gradient(circle,rgba(178,58,44,.10),rgba(178,58,44,0) 62%)}
.mo-sky svg{position:absolute;left:0;bottom:0;width:120%;height:auto;min-width:1400px;opacity:.55}
.mo-sky .l1{animation:mo-drift 90s linear infinite alternate}
.mo-sky .l2{animation:mo-drift 140s linear infinite alternate-reverse}
@keyframes mo-drift{to{transform:translateX(-12%)}}

/* 滚动入场：从模糊到清晰 */
.mo-js .mo-reveal{opacity:0;transform:translateY(12px);filter:blur(4px);transition:opacity .65s var(--mo-ease),transform .65s var(--mo-ease),filter .65s var(--mo-ease)}
.mo-js .mo-reveal.is-in{opacity:1;transform:none;filter:none}

.mo-stamp{display:inline-flex;align-items:center;padding:0 7px;height:20px;border-radius:5px;background:var(--mo-red-soft);color:var(--mo-red);font:600 12px/20px var(--mo-sans);vertical-align:2px}
.mo-stamp.is-dai{background:var(--mo-dai-soft);color:var(--mo-dai)}
.mo-stamp.is-gold{background:var(--mo-gold-soft);color:var(--mo-gold)}

/* 回纹分隔 */
.mo-huiwen{height:12px;background:var(--mo-huiwen) repeat-x center/24px 12px;opacity:.5}

/* 按钮点击涟漪 */
.mo-ripple{position:absolute;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(31,28,24,.28),rgba(31,28,24,0) 70%);transform:scale(0);animation:mo-ripple .7s ease-out forwards}
@keyframes mo-ripple{to{transform:scale(4);opacity:0}}

/* 阅读进度条 */
.mo-progress{position:fixed;left:0;top:0;height:3px;width:100%;z-index:400;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--mo-red),var(--mo-gold));pointer-events:none}

@media (prefers-reduced-motion:reduce){
  .mo-sky .l1,.mo-sky .l2{animation:none}
  .mo-reveal{opacity:1;transform:none;filter:none;transition:none}
  *{scroll-behavior:auto!important}
}

/* ---------- 4. 页头 ---------- */
.mo-hd{position:sticky;top:0;z-index:300;background:rgba(244,238,226,.78);-webkit-backdrop-filter:saturate(1.3) blur(14px);backdrop-filter:saturate(1.3) blur(14px);border-bottom:1px solid transparent;transition:border-color .3s,box-shadow .3s,background .3s}
.mo-hd.is-stuck{border-bottom-color:var(--mo-line);box-shadow:0 8px 24px -18px rgba(74,52,24,.5);background:rgba(250,246,237,.88)}
.mo-hd__in{display:flex;align-items:center;gap:28px;height:var(--mo-hd-h)}
.mo-logo{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.mo-logo__t{display:flex;flex-direction:column;line-height:1.1}
.mo-logo__t b{font:400 21px/1.15 var(--mo-serif);color:var(--mo-ink)}
.mo-logo__t i{font:500 10px/1.4 var(--mo-sans);color:var(--mo-ink-3);font-style:normal;margin-top:3px}
.mo-nav{flex:1 1 auto;min-width:0}
.mo-nav ul{display:flex;align-items:center;gap:6px;margin:0;padding:0;list-style:none}
.mo-nav li{position:relative;float:none;margin:0;padding:0}
.mo-nav li a{display:block;padding:8px 14px;border-radius:999px;font:500 16px/1.4 var(--mo-serif);color:var(--mo-ink-2);white-space:nowrap;height:auto;background:none}
.mo-nav li a span{display:none}
.mo-nav li a:hover{color:var(--mo-ink);background:rgba(31,28,24,.05)}
.mo-nav li.a a{color:var(--mo-red)}
.mo-nav li.a a::after{content:"";position:absolute;left:50%;bottom:-2px;width:6px;height:6px;margin-left:-3px;border-radius:2px;background:var(--mo-red);transform:rotate(45deg)}
.mo-hd__tools{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.mo-search{position:relative;display:flex;align-items:center}
.mo-search input{width:180px;height:38px;box-sizing:border-box;padding:0 38px 0 16px;border:1px solid var(--mo-line);border-radius:999px;background:rgba(255,252,245,.8);font:13px var(--mo-sans);color:var(--mo-ink);transition:width .35s var(--mo-ease),border-color .2s,background .2s;outline:0}
.mo-search input:focus{width:240px;border-color:var(--mo-ink-4);background:var(--mo-card)}
.mo-search button{position:absolute;right:4px;top:4px;width:30px;height:30px;border:0;border-radius:50%;background:none;color:var(--mo-ink-3);cursor:pointer;display:grid;place-items:center;padding:0}
.mo-search button:hover{color:var(--mo-red)}
.mo-icon{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.mo-iconbtn{position:relative;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:var(--mo-ink-2)!important;transition:background .2s}
.mo-iconbtn:hover{background:rgba(31,28,24,.06)}
.mo-iconbtn .mo-dot{position:absolute;top:4px;right:3px;min-width:16px;height:16px;padding:0 4px;box-sizing:border-box;border-radius:8px;background:var(--mo-red);color:#fff;font:600 10px/16px var(--mo-sans);text-align:center;box-shadow:0 0 0 2px var(--mo-paper)}
body.mo #myprompt,body.mo #myprompt.new{background:none;padding:0;text-indent:0;display:grid}
body.mo #myprompt::before,body.mo #pm_ntc::before{content:none!important;display:none!important}
.mo-usermenu{min-width:200px;padding:8px}
.mo-usermenu a{display:block;padding:8px 12px;border-radius:8px;font-size:14px;color:var(--mo-ink-2)}
.mo-usermenu a:hover{background:var(--mo-paper-2);color:var(--mo-ink)}
.mo-usermenu__hd{display:flex;flex-direction:column;gap:2px;padding:8px 12px 12px;margin-bottom:6px;border-bottom:1px dashed var(--mo-line)}
.mo-usermenu__hd b{font:600 17px var(--mo-serif);color:var(--mo-ink)}
.mo-usermenu__hd span{font-size:12px;color:var(--mo-ink-3)}
.mo-usermenu__out{margin-top:6px;border-top:1px dashed var(--mo-line);border-radius:0 0 8px 8px!important;color:var(--mo-red)!important}
.mo-avatar{display:block;width:36px;height:36px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 2px var(--mo-card),0 0 0 3px var(--mo-line-2)}
.mo-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.mo-burger{display:none;width:40px;height:40px;border:0;background:none;border-radius:50%;cursor:pointer;color:var(--mo-ink);padding:0;place-items:center}

/* 按钮 */
.mo-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 18px;box-sizing:border-box;border-radius:999px;border:1px solid var(--mo-line-2);background:var(--mo-card);color:var(--mo-ink)!important;font:500 14px/1 var(--mo-sans);white-space:nowrap;cursor:pointer;transition:transform .25s var(--mo-ease),box-shadow .25s,background .2s,border-color .2s}
.mo-btn:hover{transform:translateY(-1px);border-color:var(--mo-ink-4);box-shadow:0 8px 18px -12px rgba(74,52,24,.6)}
.mo-btn.is-red{background:var(--mo-red);border-color:var(--mo-red);color:#fff8f2!important}
.mo-btn.is-red:hover{background:var(--mo-red-2);border-color:var(--mo-red-2)}
.mo-btn.is-ink{background:var(--mo-ink);border-color:var(--mo-ink);color:var(--mo-paper)!important}
.mo-btn.is-ghost{background:transparent}
.mo-btn.is-lg{height:46px;padding:0 26px;font-size:15px}
.mo-btn.is-sm{height:32px;padding:0 14px;font-size:13px}

/* 移动抽屉 */
.mo-drawer{position:fixed;inset:0;z-index:500;visibility:hidden}
.mo-drawer__mask{position:absolute;inset:0;background:rgba(31,28,24,.35);opacity:0;transition:opacity .3s}
.mo-drawer__panel{position:absolute;right:0;top:0;bottom:0;width:min(82vw,320px);background:var(--mo-card);background-image:var(--mo-paper-tex);box-shadow:-20px 0 40px -20px rgba(0,0,0,.4);transform:translateX(100%);transition:transform .4s var(--mo-ease);display:flex;flex-direction:column;padding:22px;box-sizing:border-box;gap:18px;overflow-y:auto}
.mo-drawer.is-open{visibility:visible}
.mo-drawer.is-open .mo-drawer__mask{opacity:1}
.mo-drawer.is-open .mo-drawer__panel{transform:none}
.mo-drawer ul{list-style:none;margin:0;padding:0}
.mo-drawer li a{display:block;padding:12px 4px;border-bottom:1px dashed var(--mo-line);font:500 18px/1.4 var(--mo-serif)}
.mo-drawer li a span{display:none}
.mo-drawer .mo-search input,.mo-drawer .mo-search input:focus{width:100%}
.mo-drawer .mo-search{width:100%}

/* 底部 Tab（移动） */
.mo-tabbar{display:none}

/* ---------- 5. 通用组件 ---------- */
.mo-card{background:var(--mo-card);border:1px solid var(--mo-line);border-radius:var(--mo-r);box-shadow:var(--mo-shadow)}
.mo-pad{padding:22px 24px}
.mo-h{display:flex;align-items:center;gap:10px;margin:0 0 14px;font:600 19px/1.3 var(--mo-serif);color:var(--mo-ink)}
.mo-h::before{content:"";width:3px;height:16px;border-radius:2px;background:var(--mo-red);flex:0 0 auto}
.mo-h small{margin-left:auto;font:12px var(--mo-sans);letter-spacing:0;color:var(--mo-ink-3)}
.mo-h small a{color:var(--mo-ink-3)}
.mo-muted{color:var(--mo-ink-3)}
.mo-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:22px 0 16px;font-size:13px;color:var(--mo-ink-3)}
.mo-crumb a{color:var(--mo-ink-3)}
.mo-crumb em{font-style:normal;color:var(--mo-ink-4)}
.mo-crumb em::before{content:"/"}
.mo-crumb em{font-size:0}
.mo-crumb em::before{font-size:13px;padding:0 2px}
.mo-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start;margin-bottom:56px}
.mo-layout.is-single{grid-template-columns:minmax(0,1fr)}
.mo-side{display:flex;flex-direction:column;gap:20px;position:sticky;top:calc(var(--mo-hd-h) + 20px)}
.mo-empty{padding:56px 20px;text-align:center;color:var(--mo-ink-3);font-family:var(--mo-serif)}
.mo-empty::before{content:"";display:block;width:44px;height:44px;margin:0 auto 14px;border:1.5px dashed var(--mo-line-2);border-radius:50%}

/* 书签式标签栏 */
.mo-tabs{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 4px;padding:0;list-style:none;border-bottom:1px solid var(--mo-line)}
.mo-tabs li{margin:0;float:none}
.mo-tabs a{position:relative;display:block;padding:12px 16px 13px;font:500 16px/1.2 var(--mo-serif);color:var(--mo-ink-3)}
.mo-tabs a::after{content:"";position:absolute;left:16px;right:16px;bottom:-1px;height:2px;background:var(--mo-red);transform:scaleX(0);transition:transform .35s var(--mo-ease)}
.mo-tabs a:hover{color:var(--mo-ink)}
.mo-tabs .a a,.mo-tabs a.a{color:var(--mo-ink)}
.mo-tabs .a a::after,.mo-tabs a.a::after{transform:none}
.mo-tabs .mo-tabs__end{margin-left:auto;align-self:center}

/* 主题列表（首页导读） */
.mo-list{overflow:hidden}
.mo-list__hd{display:flex;flex-wrap:wrap;align-items:center;gap:16px 8px;padding:26px 28px 22px;border-bottom:1px solid var(--mo-line)}
.mo-list__t{display:flex;align-items:center;gap:12px;width:100%;margin:0;font:700 22px/1.3 var(--mo-sans);color:var(--mo-ink)}
.mo-list__t::before{content:"";width:4px;height:20px;border-radius:2px;background:var(--mo-red)}
.mo-pills{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.mo-pills li{float:none;margin:0}
.mo-pills a{display:block;height:34px;padding:0 16px;box-sizing:border-box;border:1px solid var(--mo-line);border-radius:999px;background:var(--mo-card);font:500 13.5px/32px var(--mo-sans);color:var(--mo-ink-2);white-space:nowrap;transition:background .2s,border-color .2s,color .2s,box-shadow .25s,transform .25s var(--mo-ease)}
.mo-pills a:hover{border-color:var(--mo-ink-4);color:var(--mo-ink);transform:translateY(-1px)}
.mo-pills .a a{background:var(--mo-red);border-color:var(--mo-red);color:#fff;box-shadow:0 8px 16px -10px rgba(178,58,44,.9)}
.mo-list__rss{margin-left:auto;font-size:13px;color:var(--mo-ink-3)!important}
.mo-list__rss:hover{color:var(--mo-red)!important}

.mo-feed{list-style:none;margin:0;padding:0}
.mo-item{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:14px;padding:22px 28px 20px;border-top:1px solid var(--mo-line);transition:background .25s}
.mo-item:first-child{border-top:0}
.mo-item::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--mo-red);transform:scaleY(0);transform-origin:50% 0;transition:transform .4s var(--mo-ease)}
.mo-item:hover{background:var(--mo-card-2)}
.mo-item:hover::before{transform:none}
.mo-item>*{grid-column:2;min-width:0}
.mo-item a{position:relative;z-index:1}
.mo-item__by{grid-column:1/-1;display:flex;align-items:center;gap:14px;font-size:14px;color:var(--mo-ink-2)}
.mo-item__by>a:not(.mo-item__av){font-weight:500;color:var(--mo-ink-2)}
.mo-item__av{display:block;flex:0 0 auto;border-radius:50%}
.mo-item__av img{display:block;width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--mo-paper-2);box-shadow:0 0 0 1px var(--mo-line);transition:box-shadow .25s}
a.mo-item__av:hover img{box-shadow:0 0 0 2px var(--mo-red)}
.mo-item__title{margin:6px 0 0;font:600 17px/1.55 var(--mo-sans);color:var(--mo-ink);word-break:break-word}
.mo-item__title>a{position:static;color:var(--mo-ink);background:linear-gradient(var(--mo-red),var(--mo-red)) 0 100%/0 1px no-repeat;transition:background-size .4s var(--mo-ease),color .2s}
.mo-item__title>a::after{content:"";position:absolute;inset:0;z-index:0}
.mo-item:hover .mo-item__title>a{color:var(--mo-red);background-size:100% 1px}
.mo-item__ex{margin:6px 0 0;font-size:14px;line-height:1.8;color:var(--mo-ink-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mo-item__pics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:540px;margin-top:12px}
.mo-item__pics.is-1{grid-template-columns:1fr;max-width:300px}
.mo-item__pics.is-2{grid-template-columns:repeat(2,1fr);max-width:400px}
.mo-item__pics img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:10px;background:var(--mo-paper-2);transition:filter .3s,transform .5s var(--mo-ease)}
.mo-item__pics:hover img{filter:brightness(.94)}
.mo-item__foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:12px;font-size:12.5px;color:var(--mo-ink-4)}
.mo-item__forum{display:inline-flex;align-items:center;gap:3px;color:var(--mo-ink-3)!important}
.mo-item__forum::before{content:"#";color:var(--mo-ink-4)}
.mo-item__forum:hover{color:var(--mo-red)!important}
.mo-hot{color:var(--mo-red)}
.mo-item__nums{display:inline-flex;gap:16px;margin-left:auto;color:var(--mo-ink-3)}
.mo-item__nums span{display:inline-flex;align-items:center;gap:5px;font-variant-numeric:tabular-nums}
.mo-item__nums .mo-icon{width:16px;height:16px}
.mo-item.is-top{background:linear-gradient(90deg,rgba(178,58,44,.05),transparent 55%)}
.mo-item .tps{font-size:12px;font-weight:400}
.mo-item .tps a{padding:0 4px;margin-left:2px;border:1px solid var(--mo-line);border-radius:4px;color:var(--mo-ink-3)}
.mo-tag{display:inline-flex;align-items:center;height:20px;padding:0 6px;margin-right:6px;box-sizing:border-box;border-radius:4px;font:600 12px/1 var(--mo-sans);vertical-align:2px;white-space:nowrap}
.mo-tag.is-red{background:var(--mo-red);color:#fff}
.mo-tag.is-green{background:var(--mo-dai);color:#fff}
.mo-tag.is-line{border:1px solid currentColor;color:var(--mo-red)}
.mo-tag.is-new{margin:0 0 0 4px;background:var(--mo-red-soft);color:var(--mo-red)}
@keyframes mo-up{from{opacity:0;transform:translateY(10px)}}
.mo-js .mo-feed .mo-item{animation:mo-up .55s var(--mo-ease) both}
.mo-js .mo-feed .mo-item:nth-child(2){animation-delay:50ms}
.mo-js .mo-feed .mo-item:nth-child(3){animation-delay:100ms}
.mo-js .mo-feed .mo-item:nth-child(4){animation-delay:150ms}
.mo-js .mo-feed .mo-item:nth-child(5){animation-delay:200ms}
.mo-js .mo-feed .mo-item:nth-child(n+6){animation-delay:250ms}

/* 分页 */
.mo-pager{display:flex;justify-content:flex-end;padding:20px 28px 26px;border-top:1px solid var(--mo-line)}
body.mo .pg{float:none;display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center}
body.mo .pg a,body.mo .pg strong,body.mo .pg label{float:none;display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;box-sizing:border-box;margin:0;padding:0 10px;border:1px solid var(--mo-line);border-radius:10px;background:var(--mo-card);color:var(--mo-ink-2);font:14px/1 var(--mo-sans);transition:all .2s}
body.mo .pg a:hover{border-color:var(--mo-ink-4);color:var(--mo-ink)}
body.mo .pg strong{background:var(--mo-red);border-color:var(--mo-red);color:#fff}
body.mo .pg label .px{height:22px;border:0;background:none;width:28px;text-align:center}
body.mo .pg .nxt,body.mo .pg .prev{background-image:none;padding:0 14px}

/* 侧栏块 */
.mo-rank{list-style:none;margin:0;padding:0;counter-reset:mo}
.mo-rank li{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--mo-line);counter-increment:mo;font-size:14px}
.mo-rank li:last-child{border-bottom:0}
.mo-rank li::before{content:counter(mo);width:22px;height:22px;flex:0 0 auto;display:grid;place-items:center;border-radius:6px;background:var(--mo-paper-2);color:var(--mo-ink-3);font:600 12px var(--mo-sans)}
.mo-rank li:nth-child(1)::before{background:var(--mo-red);color:#fff}
.mo-rank li:nth-child(2)::before{background:#d9772b;color:#fff}
.mo-rank li:nth-child(3)::before{background:#c79a3c;color:#fff}
.mo-rank a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mo-rank em{font-style:normal;font-size:12.5px;color:var(--mo-ink-4);font-variant-numeric:tabular-nums}
.mo-rank a{transition:color .2s,transform .25s var(--mo-ease)}
.mo-rank li:hover a{transform:translateX(2px)}
ol.mo-rank{padding:0}
.mo-rank.is-people a{display:flex;align-items:center;gap:10px}
.mo-rank.is-people img{width:28px;height:28px;flex:0 0 auto;border-radius:50%;object-fit:cover;background:var(--mo-paper-2);box-shadow:0 0 0 1px var(--mo-line)}
.mo-people{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 8px;text-align:center}
.mo-people a{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;color:var(--mo-ink-2);min-width:0}
.mo-people img{width:46px;height:46px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px var(--mo-card),0 0 0 3px var(--mo-line);transition:transform .3s var(--mo-ease)}
.mo-people a:hover img{transform:translateY(-3px) rotate(-3deg)}
.mo-people span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ---------- 6. 页面 ---------- */
/* 版块首页 */
.mo-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:0 0 28px}
.mo-stat{padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.mo-stat b{font:600 26px/1.1 var(--mo-serif);color:var(--mo-ink);font-variant-numeric:tabular-nums}
.mo-stat span{font-size:12px;color:var(--mo-ink-3)}
.mo-cat{margin:0 0 30px}
.mo-cat__h{display:flex;align-items:baseline;gap:14px;margin:0 0 14px}
.mo-cat__h h2{margin:0;font:600 22px/1.3 var(--mo-serif)}
.mo-cat__h h2 a{color:var(--mo-ink)}
.mo-cat__h p{margin:0;font-size:13px;color:var(--mo-ink-3)}
.mo-cat__h .mo-line{flex:1;height:12px;align-self:center;background:var(--mo-huiwen) repeat-x center/24px 12px;opacity:.28}
.mo-forums{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.mo-forum{position:relative;display:flex;flex-direction:column;gap:10px;padding:20px 20px 16px;overflow:hidden;transition:transform .35s var(--mo-ease),box-shadow .35s,border-color .3s}
.mo-forum:hover{transform:translateY(-4px);box-shadow:var(--mo-shadow-h);border-color:var(--mo-line-2)}
.mo-forum__top{display:flex;align-items:center;gap:14px}
.mo-forum__icon{width:48px;height:48px;flex:0 0 auto;border-radius:14px;display:grid;place-items:center;background:var(--mo-dai-soft);color:var(--mo-dai);font:400 24px/1 var(--mo-serif);overflow:hidden}
.mo-forum__icon img{width:100%;height:100%;object-fit:cover}
.mo-forum:nth-child(3n+2) .mo-forum__icon{background:var(--mo-red-soft);color:var(--mo-red)}
.mo-forum:nth-child(3n+3) .mo-forum__icon{background:var(--mo-gold-soft);color:var(--mo-gold)}
.mo-forum h3{margin:0;font:600 18px/1.3 var(--mo-serif)}
.mo-forum h3 a::after{content:"";position:absolute;inset:0}
.mo-forum h3 .mo-new{margin-left:6px;font:600 11px var(--mo-sans);color:var(--mo-red)}
.mo-forum__desc{margin:0;font-size:13px;line-height:1.7;color:var(--mo-ink-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
.mo-forum__nums{display:flex;gap:14px;font-size:12px;color:var(--mo-ink-4)}
.mo-forum__nums b{font-weight:600;color:var(--mo-ink-2)}
.mo-forum__last{position:relative;z-index:1;display:block;margin-top:auto;padding-top:10px;border-top:1px dashed var(--mo-line);font-size:12.5px;color:var(--mo-ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mo-forum__last a{color:var(--mo-ink-2)}
.mo-forum__subs{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:6px}
.mo-forum__subs a{padding:1px 9px;border-radius:999px;border:1px solid var(--mo-line);font-size:12px;color:var(--mo-ink-3)}

.mo-heat{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.mo-heat article{padding:14px 16px;border-radius:12px;background:var(--mo-card-2);border:1px dashed var(--mo-line)}
.mo-heat h3{margin:0 0 6px;font:600 17px/1.5 var(--mo-serif)}
.mo-heat p{margin:0;font-size:13px;line-height:1.8;color:var(--mo-ink-3);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mo-online{display:flex;flex-wrap:wrap;gap:6px 8px}
.mo-online a{padding:2px 10px;border-radius:999px;background:var(--mo-paper-2);font-size:12.5px;color:var(--mo-ink-2)}
.mo-forum__icon img{border-radius:inherit}

/* 版块主题列表页 */
.mo-fhead{position:relative;margin:4px 0 24px;padding:30px 32px;overflow:hidden;isolation:isolate}
.mo-fhead::after{content:attr(data-char);position:absolute;right:28px;top:50%;transform:translateY(-50%);font:400 150px/1 var(--mo-serif);color:rgba(178,58,44,.06);z-index:-1;pointer-events:none}
.mo-fhead__row{display:flex;align-items:center;gap:20px}
.mo-fhead__icon{width:64px;height:64px;border-radius:18px;flex:0 0 auto;display:grid;place-items:center;background:var(--mo-red);color:#fff8f2;font:400 32px/1 var(--mo-serif);overflow:hidden}
.mo-fhead__icon img{width:100%;height:100%;object-fit:cover}
.mo-fhead h1{margin:0;font:600 28px/1.3 var(--mo-serif)}
.mo-fhead__desc{margin:6px 0 0;color:var(--mo-ink-2);font-size:14px}
.mo-fhead__nums{display:flex;flex-wrap:wrap;gap:18px;margin-top:10px;font-size:12.5px;color:var(--mo-ink-3)}
.mo-fhead__nums b{color:var(--mo-ink);font-weight:600}
.mo-fhead__act{margin-left:auto;display:flex;gap:10px;flex:0 0 auto}
.mo-fhead__mods{margin-top:14px;font-size:12.5px;color:var(--mo-ink-3)}
.mo-fhead__rules{margin-top:14px;padding:12px 16px;border-radius:10px;background:var(--mo-gold-soft);font-size:13px;color:var(--mo-ink-2)}
.mo-subforums{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.mo-subforums a{padding:6px 14px;border-radius:999px;border:1px solid var(--mo-line);background:var(--mo-card-2);font:400 14px var(--mo-serif)}
.mo-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:14px 24px;border-bottom:1px solid var(--mo-line)}
.mo-filter a{padding:4px 12px;border-radius:999px;font-size:13px;color:var(--mo-ink-3)}
.mo-filter a:hover{background:var(--mo-paper-2);color:var(--mo-ink)}
.mo-filter a.a,.mo-filter .a a{background:var(--mo-ink);color:var(--mo-paper)}
.mo-filter .mo-sep{width:1px;height:14px;background:var(--mo-line);margin:0 6px}

/* 帖子阅读页 */
.mo-thread{margin-bottom:56px}
.mo-article{position:relative;padding:40px 56px 32px}
.mo-article__forum{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--mo-dai)}
.mo-article h1{margin:12px 0 18px;font:600 clamp(26px,3vw,36px)/1.45 var(--mo-serif);color:var(--mo-ink);word-break:break-word}
.mo-article__by{display:flex;align-items:center;gap:12px}
.mo-article__by img{width:44px;height:44px;border-radius:50%;object-fit:cover}
.mo-article__by .mo-name{font:500 15px var(--mo-sans);color:var(--mo-ink)}
.mo-article__by .mo-muted{font-size:12.5px}
.mo-article__by .mo-btn{margin-left:auto}
.mo-tools{display:flex;gap:6px;margin-left:auto}
.mo-tools button{height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--mo-line);background:var(--mo-card-2);font:13px var(--mo-sans);color:var(--mo-ink-2);cursor:pointer}
.mo-tools button:hover{border-color:var(--mo-ink-4);color:var(--mo-ink)}
.mo-tools button[aria-pressed="true"]{background:var(--mo-ink);color:var(--mo-paper);border-color:var(--mo-ink)}

/* 正文排版：主楼字号略大，适合长文阅读 */
body.mo .t_f,body.mo .t_fsz .t_f,body.mo .pcb .t_f{font-size:16px;line-height:2;color:var(--mo-ink);word-break:break-word}
body.mo .mo-first .t_f{font:400 18px/2.05 var(--mo-serif);color:#26221c}
body.mo .mo-first .t_f p,body.mo .mo-first .t_f br+br{margin:0 0 1em}
body.mo .t_f a{color:var(--mo-dai);text-decoration:underline;text-decoration-color:rgba(46,85,82,.3);text-underline-offset:3px}
body.mo .t_f img{border-radius:8px}
body.mo .t_f blockquote,body.mo .quote{margin:16px 0;padding:14px 18px 14px 22px;border:0;border-left:3px solid var(--mo-gold);border-radius:0 10px 10px 0;background:var(--mo-gold-soft);color:var(--mo-ink-2);font-family:var(--mo-serif)}
body.mo .quote blockquote{background:none;padding:0;margin:0;border:0}
body.mo .t_f pre,body.mo .blockcode{border:1px solid var(--mo-line);border-radius:10px;background:#fbf8f1}
body.mo.mo-large .t_f{font-size:20px!important}
body.mo.mo-large .mo-first .t_f{font-size:21px!important}

/* 回复楼层 */
.mo-replies__h{display:flex;align-items:center;gap:12px;margin:34px 0 14px;font:600 20px var(--mo-serif)}
.mo-replies__h small{font:13px var(--mo-sans);color:var(--mo-ink-3);letter-spacing:0}
.mo-replies__h::after{content:"";flex:1;height:12px;background:var(--mo-huiwen) repeat-x center/24px 12px;opacity:.25}

/* 页脚 */
.mo-ft{margin-top:40px;padding:48px 0 34px;border-top:1px solid var(--mo-line);background:linear-gradient(180deg,rgba(236,228,211,.0),rgba(236,228,211,.7));position:relative}
.mo-ft::before{content:"";position:absolute;left:0;right:0;top:-1px;height:12px;background:var(--mo-huiwen) repeat-x center/24px 12px;opacity:.22}
.mo-ft__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}
.mo-ft__brand p{margin:14px 0 0;max-width:30em;color:var(--mo-ink-3);font:400 14px/1.9 var(--mo-serif)}
.mo-ft h4{margin:4px 0 12px;font:600 15px var(--mo-serif);color:var(--mo-ink-2)}
.mo-ft ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mo-ft li a{color:var(--mo-ink-3);font-size:13px}
.mo-ft__bar{display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:space-between;align-items:center;margin-top:36px;padding-top:18px;border-top:1px dashed var(--mo-line-2);font-size:12px;color:var(--mo-ink-4)}
.mo-ft__bar a{color:var(--mo-ink-3)}
.mo-ft__bar .pipe{display:none}
.mo-totop{position:fixed;right:24px;bottom:28px;z-index:200;display:flex;flex-direction:column;gap:10px;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .3s,transform .3s var(--mo-ease)}
.mo-totop.is-show{opacity:1;transform:none;pointer-events:auto}
.mo-totop a{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--mo-card);border:1px solid var(--mo-line);box-shadow:var(--mo-shadow);color:var(--mo-ink-2);cursor:pointer}
.mo-totop a:hover{color:var(--mo-red);border-color:var(--mo-line-2)}
.mo-totop a.is-red{background:var(--mo-red);border-color:var(--mo-red);color:#fff!important}

/* ---------- 7. Discuz 原生组件适配（覆盖未重写页面） ---------- */
body.mo #pt{margin:22px 0 16px;padding:0;height:auto;line-height:1.6;font-size:13px;border:0;background:none;box-shadow:none;border-radius:0;overflow:visible}
body.mo #pt .z a,body.mo #pt .z em,body.mo #pt .z span{float:none;display:inline;height:auto;line-height:inherit;color:var(--mo-ink-3);padding:0 2px}
body.mo #pt .z em{font-size:0;background:none;width:auto}
body.mo #pt .z em::before{content:"/";font-size:13px;font-style:normal;color:var(--mo-ink-4);padding:0 4px}
body.mo #pt .nvhm{width:auto;background:none;text-indent:0;overflow:visible}
body.mo .bm{background:var(--mo-card);border:1px solid var(--mo-line);border-radius:var(--mo-r);box-shadow:var(--mo-shadow);margin-bottom:20px;overflow:hidden}
body.mo .bm_h{height:auto;min-height:48px;padding:12px 20px;line-height:24px;border:0;border-bottom:1px solid var(--mo-line);background:var(--mo-card-2)}
body.mo .bm_h h2,body.mo .bm_h h3{font:600 17px/24px var(--mo-serif);color:var(--mo-ink)}
body.mo .bm_c{padding:16px 20px}
body.mo .bm_c .bm_c{padding:0}
/* 仅当容器确实是「主区 + 侧栏」两栏时才改用网格，其它结构保持 Discuz 原生浮动布局 */
body.mo .ct2:has(>.mn):has(>.sd){display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start;border:0;background:none}
body.mo .ct2_a:has(>.appl):has(>.mn){display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;align-items:start;border:0;background:none}
body.mo .ct3_a:has(>.appl):has(>.mn):has(>.sd){display:grid;grid-template-columns:180px minmax(0,1fr) 220px;gap:24px;align-items:start;border:0;background:none}
body.mo .ct2:has(>.mn):has(>.sd)>.mn,body.mo .ct2:has(>.mn):has(>.sd)>.sd,
body.mo .ct2_a:has(>.appl):has(>.mn)>.mn,body.mo .ct2_a:has(>.appl):has(>.mn)>.appl,
body.mo .ct3_a:has(>.appl):has(>.mn):has(>.sd)>*{float:none;width:auto;margin:0}
body.mo .ct2::after,body.mo .ct2_a::after,body.mo .ct3_a::after{clear:both}
body.mo .ct2_a:has(>.appl):has(>.mn)>.appl,body.mo .ct3_a:has(>.appl)>.appl{background:var(--mo-card);border:1px solid var(--mo-line);border-radius:var(--mo-r);padding:14px 10px;box-shadow:var(--mo-shadow)}
body.mo .appl .tbn ul li a,body.mo .appl .tbn ul li{border-radius:8px}
body.mo .appl .tbn ul li.a{background:var(--mo-red-soft)}
body.mo .appl .tbn ul li.a a{color:var(--mo-red)}
body.mo .ct2_a:has(>.appl):has(>.mn)>.mn,body.mo .ct3_a:has(>.appl)>.mn{background:var(--mo-card);border:1px solid var(--mo-line);border-radius:var(--mo-r);padding:20px 24px;box-shadow:var(--mo-shadow);box-sizing:border-box}
body.mo .ct2_a,body.mo .ct3_a,body.mo .ct2_a_r{background-image:none}
body.mo .tb{border-bottom:1px solid var(--mo-line);margin-top:0}
body.mo .tb li{border:0;background:none;margin:0 2px -1px 0}
body.mo .tb a,body.mo .tb li a{border:0!important;background:none!important;font:500 15px var(--mo-serif);color:var(--mo-ink-3);padding:0 14px}
body.mo .tb .a a,body.mo .tb .current a{color:var(--mo-ink);box-shadow:inset 0 -2px 0 var(--mo-red)}
body.mo .pn{height:34px;padding:0 16px;border:1px solid var(--mo-line-2);border-radius:999px;background:var(--mo-card);color:var(--mo-ink);box-shadow:none;font:500 14px/32px var(--mo-sans);cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
body.mo .pn em,body.mo .pn span,body.mo .pn strong{background:none;padding:0;line-height:32px}
body.mo .pn:hover{border-color:var(--mo-ink-4);transform:translateY(-1px)}
body.mo .pnc,body.mo a.pnc{background:var(--mo-red)!important;border-color:var(--mo-red)!important;color:#fff8f2!important}
body.mo .pnc:hover{background:var(--mo-red-2)!important}
body.mo .px,body.mo .pt,body.mo .ps,body.mo select,body.mo textarea{border:1px solid var(--mo-line-2);border-radius:10px;background:#fffdf9;color:var(--mo-ink);box-shadow:none;transition:border-color .2s,box-shadow .2s}
body.mo .px{height:34px;box-sizing:border-box;padding:0 12px}
body.mo .px:focus,body.mo .pt:focus,body.mo .ps:focus,body.mo textarea:focus{border-color:var(--mo-dai);box-shadow:0 0 0 3px rgba(46,85,82,.12);outline:0}
body.mo .xi1,body.mo .xi1 a{color:var(--mo-red)}
body.mo .xi2,body.mo .xi2 a{color:var(--mo-dai)}
body.mo .xg1,body.mo .xg1 a{color:var(--mo-ink-3)}
body.mo .xg2{color:var(--mo-ink-2)}
body.mo .emp{color:var(--mo-ink-3);padding:30px 0;text-align:center}
body.mo .p_pop,body.mo .p_pof,body.mo .sllt{padding:6px;border:1px solid var(--mo-line);border-radius:12px;background:var(--mo-card);box-shadow:0 16px 40px -18px rgba(74,52,24,.55)}
body.mo .p_pop a{border-radius:8px;padding:6px 12px;color:var(--mo-ink-2)}
body.mo .p_pop a:hover{background:var(--mo-paper-2);color:var(--mo-ink)}
body.mo .fwinmask{border-radius:18px}
body.mo .fwin .flb,body.mo .fwin .flbc{font-family:var(--mo-serif)}
body.mo .fwin .m_c,body.mo .fwin .f_c{border-radius:16px;background:var(--mo-card)}
body.mo .fwin .t_l,body.mo .fwin .t_c,body.mo .fwin .t_r,body.mo .fwin .m_l,body.mo .fwin .m_r,body.mo .fwin .b_l,body.mo .fwin .b_c,body.mo .fwin .b_r{background:rgba(31,28,24,.12)}
body.mo .fwin .flb{padding:14px 20px 4px;height:auto}
body.mo .fwin .flb em{font:600 18px/1.4 var(--mo-serif);color:var(--mo-ink)}
body.mo .alert_info,body.mo .alert_right,body.mo .alert_error{font-family:var(--mo-serif);font-size:15px}
body.mo #messagetext{padding:40px 32px 30px;text-align:center}
body.mo #messagetext p{font:400 17px/1.8 var(--mo-serif)}
body.mo .nfl{padding:40px 0}
body.mo .nfl .f_c{width:min(560px,100%);margin:0 auto}
body.mo .tl th,body.mo .tl td{border-bottom:1px dashed var(--mo-line);padding:12px 6px}
body.mo .tl .th{background:none}
body.mo .tl .th td,body.mo .tl .th th{border-bottom:1px solid var(--mo-line)}
body.mo .tl th a.xst,body.mo .tl th a.s{font:500 16px/1.6 var(--mo-serif);color:var(--mo-ink)}
body.mo .tl th a.xst:hover{color:var(--mo-red)}
body.mo .tl tr:hover th,body.mo .tl tr:hover td{background:var(--mo-card-2)}
body.mo .tl .icn{width:28px}
body.mo .tbox{border-radius:4px}
body.mo .tdigest{background:var(--mo-red);border-color:var(--mo-red)}
body.mo #scrolltop{display:none!important}
body.mo #ft,body.mo #toptb,body.mo #hd{display:none}
body.mo .a_h,body.mo .a_mu,body.mo .a_t{border:0}
body.mo .mn .bm:first-child{margin-top:0}
body.mo .ad{background:none}
body.mo h1.mt{font:600 24px var(--mo-serif)}
body.mo .tfm th,body.mo .tfm td{border-bottom:1px dashed var(--mo-line)}
body.mo .pbt{margin-bottom:10px}
body.mo #editorbox,body.mo .edt{border-radius:12px;border-color:var(--mo-line-2);overflow:hidden}
body.mo .edt .bar{background:var(--mo-card-2);border-color:var(--mo-line)}
body.mo .area{border:0}
body.mo #mu{display:none}

/* 帖子页原生楼层结构美化（保留全部原生功能） */
body.mo #postlist{border:0;background:none}
body.mo #postlist > table,body.mo #postlist .ad,body.mo #postlist > div > table{border-collapse:separate}
body.mo #postlist .plhin{border:0}
body.mo .mo-post{margin:0 0 16px;background:var(--mo-card);border:1px solid var(--mo-line);border-radius:var(--mo-r);box-shadow:var(--mo-shadow);overflow:hidden}
body.mo .mo-post .pls{background:var(--mo-card-2);border-right:1px solid var(--mo-line)}
body.mo .mo-post td.plc,body.mo .mo-post td.pls{border:0;padding-top:16px}
body.mo .mo-post .plc .pi{border-bottom:1px dashed var(--mo-line);height:auto;padding:0 0 10px;margin:0 20px}
body.mo .mo-post .plc .pct{padding:16px 20px 0}
body.mo .mo-post .po{border-top:1px dashed var(--mo-line);margin:0 20px;padding:10px 0}
body.mo .mo-post .po.hin .pob em a{border-radius:999px;padding:2px 10px;background-image:none}
body.mo .mo-post .avatar img{border-radius:50%}
body.mo .mo-post .pi strong a{color:var(--mo-ink-3);font-family:var(--mo-serif)}
body.mo .mo-post .authi a.xi2,body.mo .mo-post .authi a{color:var(--mo-ink-2)}
body.mo .ad > td,body.mo #postlist .ad td{background:none;border:0;height:0}
body.mo .mo-first{border-color:var(--mo-line-2)}
body.mo .psth{background:var(--mo-gold-soft);border-radius:8px}
body.mo #f_pst .plc,body.mo #f_pst .pls{background:none}
body.mo #f_pst{border:1px solid var(--mo-line);border-radius:var(--mo-r);background:var(--mo-card);box-shadow:var(--mo-shadow)}
body.mo #fastpostmessage,body.mo #fastpostform textarea{border-radius:12px}
body.mo .pgs{margin:16px 0}
body.mo .pgs .pgb a{border-radius:999px;border-color:var(--mo-line);background:var(--mo-card)}
body.mo #pgt{margin:0 0 12px}
body.mo .rate dl,body.mo .ratl{border-radius:10px}
body.mo #p_btn a{border-radius:999px;border-color:var(--mo-line);background:var(--mo-card)}
body.mo #p_btn a:hover{border-color:var(--mo-red)}
body.mo #p_btn a i{background:none}

/* 登录 / 注册 */
body.mo #main_messaqge,body.mo #main_message{background:var(--mo-card);border:1px solid var(--mo-line);border-radius:20px;box-shadow:var(--mo-shadow);padding:10px 0;overflow:hidden}
body.mo .rfm{border-bottom:1px dashed var(--mo-line)}
body.mo .rfm th,body.mo .rfm td{padding:12px 6px}
body.mo .rfm .px{width:100%;max-width:280px}
body.mo .lgfm,body.mo .rfm{font-size:14px}
body.mo .ptm button,body.mo .rfm .pn{min-width:120px}

/* 标志 */
.mo-logo__img{display:block;height:34px;width:auto;transition:opacity .2s,transform .35s var(--mo-ease)}
.mo-logo:hover .mo-logo__img{opacity:.85}
.mo-ft .mo-logo__img{height:40px}
.mo-drawer .mo-logo__img{height:30px}
.mo-crumb a{display:inline-flex;align-items:center}
.mo-crumb .mo-icon{width:16px;height:16px}

/* ---------- 8. 响应式 ---------- */
@media (max-width:1100px){
  .mo-search input{width:140px}
  .mo-search input:focus{width:180px}
}
@media (max-width:960px){
  :root{--mo-hd-h:58px}
  .mo-nav,.mo-hd__tools .mo-search,.mo-hd__tools .mo-hide-m{display:none}
  .mo-burger,body.mo .mo-burger{display:grid}
  .mo-hd__in{gap:12px}
  .mo-hd__tools{margin-left:auto}
  .mo-layout,body.mo .ct2:has(>.mn):has(>.sd),body.mo .ct2_a:has(>.appl):has(>.mn),body.mo .ct3_a:has(>.appl):has(>.mn):has(>.sd){grid-template-columns:minmax(0,1fr)}
  .mo-side{position:static}
  .mo-ft__grid{grid-template-columns:1fr 1fr}
  .mo-ft__brand{grid-column:1/-1}
  .mo-stats{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  body.mo{font-size:15px}
  .mo-wrap,body.mo #wp.wp,body.mo .wp{width:calc(100% - 28px)}
  .mo-list__hd{padding:20px 16px 16px;gap:14px 6px}
  .mo-list__t{font-size:20px}
  .mo-pills{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:0 16px;width:calc(100% + 32px)}
  .mo-pills::-webkit-scrollbar{display:none}
  .mo-pills a{height:32px;padding:0 14px;line-height:30px}
  .mo-list__rss{display:none}
  .mo-item{grid-template-columns:34px minmax(0,1fr);column-gap:10px;padding:18px 16px}
  .mo-item__by{gap:10px}
  .mo-item>*{grid-column:1/-1}
  .mo-item__title{margin-top:10px}
  .mo-item__av img{width:34px;height:34px}
  .mo-item__title{font-size:16.5px}
  .mo-item__pics,.mo-item__pics.is-2{max-width:none}
  .mo-pager{justify-content:center;padding:18px 12px 22px}
  .mo-logo__img{height:28px}
  .mo-tabs{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
  .mo-tabs a{padding:12px 12px 13px;font-size:15px;white-space:nowrap}
  .mo-article{padding:28px 20px 24px}
  body.mo .mo-first .t_f{font-size:17px}
  .mo-fhead{padding:22px 20px}
  .mo-fhead__row{flex-wrap:wrap}
  .mo-fhead__act{margin-left:0;width:100%}
  .mo-fhead__icon{width:52px;height:52px;font-size:26px}
  .mo-fhead h1{font-size:23px}
  .mo-forums{grid-template-columns:1fr}
  .mo-ft__grid{grid-template-columns:1fr}
  .mo-totop{right:14px;bottom:84px}
  .mo-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:300;height:calc(58px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:rgba(250,246,237,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--mo-line)}
  .mo-tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font:12px var(--mo-serif);color:var(--mo-ink-3)}
  .mo-tabbar a.a{color:var(--mo-red)}
  .mo-tabbar .mo-icon{width:22px;height:22px}
  .mo-tabbar .is-post span{display:grid;place-items:center;width:40px;height:40px;margin-top:-18px;border-radius:12px;background:var(--mo-red);color:#fff;box-shadow:0 8px 18px -8px rgba(178,58,44,.8);transform:rotate(45deg)}
  .mo-tabbar .is-post span .mo-icon{transform:rotate(-45deg)}
  body.mo{padding-bottom:calc(58px + env(safe-area-inset-bottom))}
  body.mo .mo-post .pls{display:none}
}

/* ---------- 9. 原生主题列表（版块页 / 搜索 / 空间）重塑 ---------- */
body.mo #threadlist.tl,body.mo .tl.bm{background:var(--mo-card);border:1px solid var(--mo-line);border-radius:var(--mo-r);box-shadow:var(--mo-shadow);overflow:hidden;padding:0}
body.mo .tl .th{padding:0 16px;background:var(--mo-card-2);border-bottom:1px solid var(--mo-line)}
body.mo .tl .th table{width:100%}
body.mo .tl .th th,body.mo .tl .th td{border:0;padding:12px 6px;font-size:13px;color:var(--mo-ink-3);background:none}
body.mo .tl .tf a{padding:2px 8px;border-radius:999px}
body.mo .tl .tf a.xw1{background:var(--mo-ink);color:var(--mo-paper)!important}
body.mo .tl .bm_c{padding:0 16px}
body.mo #threadlisttableid{width:100%;border-collapse:collapse}
body.mo #threadlisttableid tbody tr th,body.mo #threadlisttableid tbody tr td{padding:16px 6px;border-bottom:1px dashed var(--mo-line);vertical-align:middle;background:none}
body.mo #threadlisttableid tbody:hover th,body.mo #threadlisttableid tbody:hover td{background:var(--mo-card-2)}
body.mo #threadlisttableid th a.xst,body.mo #threadlisttableid th a.s{font:500 17px/1.6 var(--mo-serif);color:var(--mo-ink)}
body.mo #threadlisttableid th a.xst:hover{color:var(--mo-red)}
body.mo #threadlisttableid th em a{display:inline-block;padding:0 8px;margin-right:4px;border-radius:999px;background:var(--mo-dai-soft);color:var(--mo-dai);font-size:12px}
body.mo #threadlisttableid td.icn{width:28px;text-align:center;color:var(--mo-ink-4)}
body.mo #threadlisttableid td.by{width:120px;font-size:12.5px;line-height:1.5}
body.mo #threadlisttableid td.by cite,body.mo #threadlisttableid td.by cite a{display:block;color:var(--mo-ink-2);font-style:normal}
body.mo #threadlisttableid td.by em,body.mo #threadlisttableid td.by em a,body.mo #threadlisttableid td.by em span{color:var(--mo-ink-4);font-style:normal}
body.mo #threadlisttableid td.num{width:70px;font-size:12.5px;line-height:1.5}
body.mo #threadlisttableid td.num a{display:block;color:var(--mo-ink);font-weight:600}
body.mo #threadlisttableid td.num em{color:var(--mo-ink-4);font-style:normal}
body.mo #threadlisttableid .tps a{border:1px solid var(--mo-line);border-radius:4px;padding:0 4px;font-size:12px}
body.mo #threadlisttableid #separatorline th,body.mo #threadlisttableid #separatorline td,body.mo #threadlisttableid .emptb td,body.mo #threadlisttableid .emptb th{padding:0;border-bottom:2px solid var(--mo-line)}
body.mo #threadlisttableid tbody[id^="stickthread"] th a.xst{color:var(--mo-red-2)}
body.mo #threadlisttableid .tbox{border-radius:4px;padding:0 6px;font-size:12px}
body.mo #autopbn{display:block;margin:0;padding:16px;text-align:center;border:0;background:none;font:400 15px var(--mo-serif);color:var(--mo-ink-3)}
body.mo #autopbn:hover{color:var(--mo-red);background:var(--mo-card-2)}
body.mo #pgt{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:0;background:none;border:0;box-shadow:none}
body.mo #pgt .pgsbtn,body.mo #newspecial,body.mo #newspecialtmp{display:inline-flex;align-items:center;height:38px;padding:0 20px;border-radius:999px;background:var(--mo-red);color:#fff8f2!important;font:500 14px var(--mo-sans);border:0}
body.mo #newspecial img,body.mo #newspecialtmp img{display:none}
body.mo #thread_types,body.mo .ttp{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0;border:0;background:none;box-shadow:none}
body.mo #thread_types li,body.mo .ttp li{float:none;margin:0}
body.mo #thread_types li a,body.mo .ttp li a{display:block;padding:5px 14px;border:1px solid var(--mo-line);border-radius:999px;background:var(--mo-card);font-size:13px;color:var(--mo-ink-2)}
body.mo #thread_types li.xw1 a,body.mo #thread_types li.a a,body.mo .ttp li.a a{background:var(--mo-ink);border-color:var(--mo-ink);color:var(--mo-paper)}
body.mo #f_pst{margin-top:20px;padding:4px 0}
body.mo .fl .bm_h,body.mo #subforum_{border-radius:0}
@media (max-width:760px){
  body.mo #threadlisttableid td.by,body.mo #threadlisttableid td.num,body.mo .tl .th td{display:none}
  body.mo #threadlisttableid td.icn{display:none}
  body.mo #threadlisttableid tbody tr th{padding:14px 4px}
}

/* ---------- 10. 修正与阅读页 ---------- */
body.mo #wp .wp{width:auto}
body.mo.pg_viewthread #ct{max-width:980px;margin:0 auto}
body.mo #postlist.mo-thread{background:none;border:0;box-shadow:none;overflow:visible;border-radius:0}
body.mo .mo-article{margin-bottom:18px}
body.mo .mo-article .mo-btn.is-sm{height:32px}
body.mo .mo-first .pls{display:none}
body.mo .mo-first .plc{padding-left:0}
body.mo .mo-first .plc .pi{display:none}
body.mo .mo-first .pct{padding:8px 40px 0}
body.mo .mo-first .po{margin:0 40px}
body.mo .mo-post .plhin{width:100%}
body.mo .mo-post .pls .avatar img{width:72px;height:72px;object-fit:cover;box-shadow:0 0 0 3px var(--mo-card),0 0 0 4px var(--mo-line)}
body.mo .mo-post .pls .pi,body.mo .mo-post .pls .authi{font-family:var(--mo-serif)}
body.mo #pgt .pgt{flex:1}
body.mo #pgt .pgb a{display:inline-flex;align-items:center;height:36px;padding:0 14px;border:1px solid var(--mo-line);border-radius:999px;background:var(--mo-card)}
body.mo #post_reply{display:inline-flex;align-items:center;height:38px;padding:0 20px;border-radius:999px;background:var(--mo-ink);color:var(--mo-paper)!important;font:500 14px var(--mo-sans)}
body.mo #modmenu{padding:10px 16px;margin-bottom:14px;border-radius:12px;background:var(--mo-gold-soft);font-size:13px}
@media (max-width:640px){
  body.mo .mo-first .pct{padding:4px 18px 0}
  body.mo .mo-first .po{margin:0 18px}
  .mo-article__by{flex-wrap:wrap}
  .mo-tools{margin-left:0;width:100%}
}
body.mo .t_f font[face],body.mo .t_f span[style*="font-family"]{font-family:inherit!important}
body.mo .t_f font[size="2"],body.mo .t_f font[size="3"]{font-size:inherit}
body.mo .t_f font[color="#000000"],body.mo .t_f font[color="#000"],body.mo .t_f font[color="black"]{color:inherit}
body.mo .mo-first .t_f .pstatus{display:block;font:12px var(--mo-sans);color:var(--mo-ink-4);text-align:center;margin-bottom:10px}
body.mo .mo-post.mo-first td.plc{padding:20px 0 0}
body.mo .mo-post.mo-first .plc .pct{padding:12px 56px 0}
body.mo .mo-post.mo-first .po{margin:0 56px}
@media (max-width:640px){
  body.mo .mo-post.mo-first .plc .pct{padding:8px 18px 0}
  body.mo .mo-post.mo-first .po{margin:0 18px}
}

/* 弹窗在窄屏上自适应 */
@media (max-width:760px){
  body.mo .fwinmask{max-width:calc(100vw - 16px);left:8px!important;right:8px}
  body.mo .fwinmask .fwin,body.mo .fwinmask table.fwin{width:100%}
  body.mo .fwin .m_c,body.mo .fwin .f_c,body.mo .fwin .c{width:auto!important;max-width:calc(100vw - 40px);box-sizing:border-box}
  body.mo .fwin .rfm,body.mo .fwin .rfm table{width:100%!important}
  body.mo .fwin .px,body.mo .fwin textarea{max-width:100%;box-sizing:border-box}
  body.mo #editorbox,body.mo .edt,body.mo #e_iframe,body.mo #e_textarea{max-width:100%;box-sizing:border-box}
  body.mo #postbox .pbt .px,body.mo #subject{width:100%!important;box-sizing:border-box}
}
body.mo #main_messaqge,body.mo #main_message{max-width:760px;margin:36px auto}
body.mo #main_messaqge .bm,body.mo #main_message .bm{border:0;box-shadow:none;margin:0;border-radius:0}
body.mo #main_messaqge .bm_h,body.mo #main_message .bm_h{background:none}
body.mo #main_messaqge .bm_h h3,body.mo #main_message .bm_h h3{font:600 22px var(--mo-serif)}
body.mo .ct2_a:has(>.appl):has(>.mn)>.appl,body.mo .ct3_a:has(>.appl)>.appl{order:-1}
body.mo .appl .tbn h2{font:600 16px var(--mo-serif);padding:4px 10px 10px}
body.mo .appl .tbn li{margin:0}
body.mo .appl .tbn li a{display:block;padding:8px 12px}
/* 搜索页 */
body.mo #scform{width:100%;margin:26px 0 20px;border-collapse:separate}
body.mo #scform h1{display:none}
body.mo #scform_tb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;padding:0;background:none}
body.mo #scform_tb a{padding:4px 14px;border-radius:999px;font:500 15px var(--mo-serif);color:var(--mo-ink-3);float:none}
body.mo #scform_tb a.a{background:var(--mo-ink);color:var(--mo-paper)}
body.mo #scform_tb .y{order:9;margin-left:auto;font-size:13px}
body.mo #scform_form{width:100%;border-collapse:separate}
body.mo #scform_form td{padding:0;background:none;border:0}
body.mo #scform_srchtxt{width:100%!important;height:50px;box-sizing:border-box;padding:0 22px;border:1px solid var(--mo-line-2);border-radius:999px 0 0 999px;background:var(--mo-card);font:16px var(--mo-sans);color:var(--mo-ink);outline:0}
body.mo #scform_srchtxt:focus{border-color:var(--mo-dai)}
body.mo #scform_submit{height:50px;padding:0 30px;border:0;border-radius:0 999px 999px 0;background:var(--mo-red);color:#fff;font:500 15px var(--mo-sans);cursor:pointer}
body.mo .td_srchtxt{width:100%}
body.mo .sttl{margin:0 0 12px;padding:0;border:0;background:none;font:400 15px var(--mo-serif)}
body.mo .slst{background:var(--mo-card);border:1px solid var(--mo-line);border-radius:var(--mo-r);box-shadow:var(--mo-shadow);padding:6px 24px}
body.mo .slst li{padding:16px 0;border-bottom:1px dashed var(--mo-line)}
body.mo .slst li:last-child{border-bottom:0}
body.mo .slst h3{font:600 18px/1.5 var(--mo-serif)}
body.mo .slst h3 a{color:var(--mo-ink)}
body.mo .slst strong font,body.mo .slst h3 font,body.mo .slst p font{color:var(--mo-red)!important}
body.mo .slst p{color:var(--mo-ink-2);line-height:1.8}
body.mo #scform,body.mo #scform>tbody,body.mo #scform>tbody>tr,body.mo #scform>tbody>tr>td{display:block;width:100%}
body.mo #scform>tbody>tr>td:has(>h1){display:none}
body.mo #scform_form,body.mo #scform_form>tbody{display:block;width:100%}
body.mo #scform_form>tbody>tr{display:flex;width:100%}
body.mo #scform_form .td_srchtxt{flex:1}
body.mo.pg_search #ct,body.mo #nv_search #ct{width:auto}
body.mo #ct.w{width:auto!important;float:none;margin:0}
body.mo,body#nv_search.mo{display:block!important}
body#nv_search.mo{background:var(--mo-paper) var(--mo-paper-tex)!important}
body.mo .mo-burger{display:none}
body.mo .mo-drawer .mo-burger{display:grid}
@media (max-width:960px){body.mo .mo-hd .mo-burger{display:grid}}
body.mo #scform_submit{position:static!important;display:inline-flex;align-items:center;width:auto}
body.mo #scform_form .td_srchbtn{width:auto;flex:0 0 auto}
body.mo .slst{width:auto}
