/* V2 additions only: quiet reading, explicit interaction. */
.interaction-art{width:24px;height:24px;object-fit:contain;vertical-align:middle;flex-shrink:0}
.public-preview nav.mobile-drawer.open{width:320px;padding:20px;gap:0;background:#fff9ef}
.menu-home{font-size:15px!important;font-weight:700}.menu-home .icon{margin-right:9px}
.menu-group{padding:17px 6px 14px;border-top:1px solid #e6d5c6;margin-top:8px}
.menu-group h3{display:flex;justify-content:space-between;align-items:center;font-size:17px;margin:0 0 13px;font-family:'Kaiti SC','STKaiti',serif}
.menu-group h3 small{font:10px/1.5 sans-serif;color:#aa8c7a;font-weight:400}
.menu-subpages{display:grid;gap:1px;border-left:2px solid #f2c1d4;margin-left:5px;padding-left:12px}
.menu-subpages a{display:flex;justify-content:space-between;padding:8px;font-size:13px;color:#65544b;border-radius:4px}
.menu-subpages a:hover{background:#ffe4ef;color:#b42b64}
.menu-secondary{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:10px 9px!important;color:#a47787}
.menu-secondary .icon{width:14px;margin-right:6px}.menu-secondary span{margin-left:auto}
.mobile-drawer .menu-contribute{display:flex;align-items:center;gap:10px;background:#ffd7e7;font-weight:700;margin-top:10px;padding:13px!important;border:1px solid #f39aba}
.menu-contribute span{margin-left:auto}.mobile-drawer .menu-search{font-size:12px;justify-content:flex-start;gap:10px;border-top:1px solid #e5d6c7;margin-top:10px;color:#897268}
.contribute-hub{max-width:1320px;margin:0 auto;padding:55px 5% 60px}
.contribute-heading h1{font:900 50px/1.2 'Kaiti SC','STKaiti',serif;margin:25px 0 15px}
.contribute-heading p{color:#8c7667;font-size:16px;line-height:1.8}
.contribution-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:35px 0 25px}
.contribution-card{display:flex;flex-direction:column;align-items:center;padding:24px 18px 18px;border:1px solid #f0b2c9;border-radius:11px;background:linear-gradient(145deg,#fff9f0,#ffe9f0);box-shadow:3px 4px 0 #e9d9ca;transition:transform .18s}
.contribution-card:hover{transform:translateY(-4px);border-color:#ed6098}
.contribution-card>.interaction-art{width:125px;height:125px;margin-bottom:8px;filter:drop-shadow(3px 3px 0 #fff)}
.contribution-card h2{font:900 24px/1.4 'Kaiti SC','STKaiti',serif;margin:8px 0}
.contribution-card p{font-size:13px;line-height:1.8;text-align:center;color:#7c6257;margin:0 0 22px;flex:1}
.contribution-material{background:linear-gradient(145deg,#fff9ef,#fff0e1);border-color:#efc595}
.contribution-cta{display:block;width:100%;background:#ff4f99;color:white;font-size:15px;font-weight:700;text-align:center;border:1px solid #f23885;border-radius:8px;padding:12px 5px;box-shadow:0 3px 0 #d62f72}
.correction-entry{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;margin:35px auto 14px;color:#8a6f64;font-size:12px}
.correction-entry .interaction-art{width:40px;height:40px}.correction-entry strong{display:block;color:#36302d;font-size:14px;margin-top:5px}
.contribution-note{font-size:12px;color:#9b8577;line-height:1.9;text-align:center;margin:20px 0}
.interaction-form-page{max-width:760px;margin:0 auto;padding:30px 24px 70px}.back-link{font-size:12px;color:#ac5279}
.interaction-form-heading{display:flex;align-items:center;gap:22px;padding:20px;margin:25px 0;border:1px solid #efb5ca;border-radius:10px;background:#fff8f0}
.interaction-form-heading>.interaction-art{width:100px;height:100px}.interaction-form-heading h1{font:900 30px/1.5 'Kaiti SC','STKaiti',serif;margin:0}
.interaction-form-heading p{font-size:13px;color:#8a7063;line-height:1.8;margin:7px 0}
.interaction-form-page .form-panel{padding:25px;border:1px solid #e1cbbb;border-radius:9px;background:#fffaf1}
.interaction-form-page input,.interaction-form-page textarea,.interaction-form-page select{background:#fffdf8;border:1px solid #d8ccc0;border-radius:5px}
.interaction-form-page textarea{min-height:160px}.interaction-submit{width:100%;justify-content:center;margin-top:15px;gap:14px}
.interaction-submit>.interaction-art{width:32px;height:32px}.form-error{color:#c13066;font-size:13px;margin:15px 0;line-height:1.6}
.material-modes{display:flex;gap:8px;margin:15px 0 23px}.material-modes button{flex:1;font-size:12px;padding:9px;border-color:#d9cabc;background:#fffaf2}
.material-modes button.selected{background:#ffdaea;color:#af2f64;border-color:#f17dab}
#file-preview{display:flex;gap:8px;flex-wrap:wrap;font-size:12px}#file-preview>span{border:1px solid #edb6c9;background:#fff0f6;padding:7px;border-radius:4px}#file-preview button{padding:0 5px;border:0}
.new-post-editor{min-height:220px;background:#fffdf7;border:1px solid #dccbbd;border-radius:6px;padding:18px;line-height:1.9;overflow-wrap:anywhere}
.new-post-editor:empty:before{content:attr(data-placeholder);color:#b5a498;font-size:13px;pointer-events:none}.new-post-editor figure{margin:15px 0}.new-post-editor img{max-width:100%;max-height:350px;object-fit:contain;display:block}.new-post-editor button{font-size:11px;padding:5px;color:#a23b65}
.editor-actions{display:flex;gap:8px;margin:12px 0;flex-wrap:wrap}.editor-actions button{font-size:12px;padding:8px}
.interaction-success{text-align:center;max-width:700px;margin:50px auto;padding:30px}.interaction-success>.interaction-art{width:180px;height:180px}.interaction-success h1{font:900 32px 'Kaiti SC','STKaiti',serif}.interaction-success p{color:#9a7d6c;line-height:2}.interaction-success .primary{margin:25px auto}
/* Tools have their own layer; the post's typography and width remain intact. */
.interactive-post{position:relative;isolation:isolate;margin-bottom:12px;border-radius:9px;overflow:hidden;touch-action:pan-y pinch-zoom}
.public-preview .interactive-post>.post{margin-bottom:0;position:relative;z-index:1;background:#fffaf4;transition:transform .2s ease;will-change:auto}
.interaction-tools{display:flex;align-items:center}.interaction-tools button{display:flex;align-items:center;justify-content:center;background:none;border:0;min-width:36px;min-height:38px;padding:6px;color:#a58d94}
.interaction-tools .interaction-art{width:20px;height:20px;filter:grayscale(.85);opacity:.7}.interaction-tools button:hover .interaction-art,.interaction-tools button:focus-visible .interaction-art,.interaction-tools button.is-lit .interaction-art{filter:none;opacity:1}
.hover-tools{position:absolute;right:18px;top:13px;opacity:0;visibility:hidden;z-index:3;transition:opacity .15s;background:#fffaf4}.hover-tools span{display:none}
.interaction-tools button:focus-visible{outline:2px solid #ef78a8;border-radius:4px}
.interaction-access{position:absolute;right:15px;top:15px;border:0;background:none;padding:0 8px;color:#b6a4a5;font-size:18px;min-height:28px;z-index:2;opacity:.5}
.interaction-access:focus-visible{opacity:1;outline:2px solid #ee80a8}
@media(any-hover:hover) and (any-pointer:fine){.interactive-post:hover .hover-tools,.interactive-post:focus-within .hover-tools{visibility:visible;opacity:1}.interactive-post:hover .interaction-access{opacity:0}.hover-tools button{cursor:pointer}}
.swipe-tools{position:absolute;right:0;top:0;bottom:0;width:72px;flex-direction:column;justify-content:space-around;background:#ffdfec;border-left:1px solid #efb4cb;z-index:0}
.swipe-tools button{flex:1;min-height:44px;width:100%;flex-direction:column;gap:2px;padding:4px;font-size:10px}.swipe-tools .interaction-art{filter:none;opacity:1;width:22px;height:22px}.swipe-tools span{font-size:10px;color:#a23d68}
.interactive-post.swipe-open .swipe-body{transform:translateX(-72px)}.interactive-post.swipe-open .hover-tools{display:none}.interactive-post.swipe-open .swipe-tools{z-index:2}.interactive-post.swipe-open .swipe-body{z-index:1}
.interactive-post .post-head{padding-right:95px}.interactive-post .floor-original-links{padding-right:0}.heat-mark{display:inline-flex;align-items:center;gap:4px;margin-left:7px;vertical-align:middle}.heat-mark .heat-icon{width:21px;height:25px}.heat-mark small{font-size:10px;color:#bd3a72;font-weight:500}
.approved-counts{display:flex;gap:14px;margin-top:16px;align-items:center;flex-wrap:wrap}.approved-counts button{display:flex;align-items:center;gap:4px;padding:0;border:0;background:none;color:#9e7e8c;font-size:11px}.approved-counts img{width:16px;height:16px;opacity:.8}
@keyframes swipe-intro{0%,100%{transform:translateX(0)}40%,60%{transform:translateX(-20px)}}
.swipe-hint .swipe-body{animation:swipe-intro 1s ease 1}
@media(prefers-reduced-motion:reduce){.swipe-body,.hover-tools,.contribution-card{transition:none!important}.swipe-hint .swipe-body{animation:none}}
.interaction-drawer-backdrop{position:fixed;inset:0;background:#25202555;z-index:150;display:flex;justify-content:flex-end}.interaction-drawer{width:min(450px,95vw);height:100%;background:#fff9ef;display:flex;flex-direction:column;padding:22px;box-shadow:-8px 0 40px #2e202533}.drawer-heading{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #e7d2c2;padding-bottom:15px;align-items:center}.drawer-heading h2{font-size:19px;margin:0}.drawer-heading button{border:0;background:none;font-size:25px;padding:5px}.drawer-content{overflow:auto;flex:1;padding:15px 0}.drawer-content article{border-bottom:1px solid #e8d7c7;padding:15px 0;overflow-wrap:anywhere}.drawer-content small{font-size:10px;color:#aa8c7d}.drawer-content p{font-size:14px;line-height:1.9}.drawer-content a{color:#b42c66}.interaction-drawer>.primary{margin-top:15px;justify-content:center}
@media(hover:none),(pointer:coarse){.interaction-drawer-backdrop{align-items:flex-end}.interaction-drawer{height:min(78dvh,800px);width:100%;border-radius:16px 16px 0 0;padding:20px}.hover-tools{display:none}}
.approved-image{display:block;max-width:100%;max-height:600px;object-fit:contain;margin:15px auto}.video-embed{margin:15px 0}.video-embed summary{cursor:pointer;color:#b13066;font-size:13px}.video-embed iframe{border:0;width:100%;aspect-ratio:16/9;margin-top:10px}
.interaction-list-page,.v2-admin{max-width:1000px;margin:45px auto;padding:0 25px 70px}.interaction-list-page h1,.v2-admin h1{font:900 38px 'Kaiti SC','STKaiti',serif}.highlight-row{display:flex;gap:15px;align-items:center;flex-wrap:wrap;padding:24px;margin:15px 0;background:#fff9ef;border:1px solid #e4d0bf;border-radius:8px}.highlight-row>.interaction-art{width:40px;height:40px}.highlight-row p{flex-basis:100%;font-size:13px;color:#8b7366;margin:0;line-height:1.8}.highlight-row>span{color:#d2417e;font-size:12px}.new-building-post{background:#fff9ef;border:1px solid #e1cbbb;border-radius:9px;padding:25px;margin:25px 0;line-height:1.9;overflow-wrap:anywhere}.new-building-post small{color:#b2798e}.new-building-post h2:empty{display:none}.approved-library{margin-top:40px;padding-top:25px;border-top:1px solid #ddc9b7}.approved-library h2{font-family:'Kaiti SC','STKaiti',serif}.approved-library p{font-size:13px;line-height:1.8}.approved-library a{color:#bd3a70}.admin-heading{display:flex;justify-content:space-between;align-items:center}.batch-check{display:flex;gap:12px;align-items:center}.batch-check input{width:auto}.v2-admin .admin-item{margin-top:20px;overflow-wrap:anywhere}.v2-admin .admin-item p{white-space:pre-wrap}.v2-admin .admin-item .approved-image{max-height:260px}.v2-admin .admin-item h2{font-size:20px}
@media(max-width:1150px){.contribution-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.contribution-cards{grid-template-columns:1fr;gap:18px}.contribute-hub{padding:30px 20px}.contribute-heading h1{font-size:38px}.contribute-heading p{font-size:14px}.contribution-card{padding:20px 24px}.contribution-card>.interaction-art{width:115px;height:115px}.contribution-card h2{font-size:25px}.contribution-card p{margin-bottom:18px}.interaction-form-page{padding:20px 15px 50px}.interaction-form-heading{gap:12px;padding:15px}.interaction-form-heading>.interaction-art{width:70px;height:80px}.interaction-form-heading h1{font-size:25px}.interaction-form-heading p{font-size:12px}.interaction-form-page .form-panel{padding:18px}.interactive-post .post-head{padding-right:30px}.public-preview nav.mobile-drawer.open{width:min(320px,calc(100vw - 20px))}.material-modes{gap:5px}.material-modes button{font-size:11px;padding:9px 5px}}
.swipe-tools{visibility:hidden}.interactive-post.swipe-open .swipe-tools{visibility:visible}
.interactive-post .interaction-tools button.is-lit{color:#d73d7c}
@media(any-pointer:coarse){.interactive-post{touch-action:pan-y pinch-zoom}}
@media(max-width:600px){.interaction-tools button{min-width:40px}}
.touch-input .interaction-drawer-backdrop{align-items:flex-end}.touch-input .interaction-drawer{height:min(78dvh,800px);width:100%;border-radius:16px 16px 0 0}
.hover-tools{right:48px}.interactive-post:hover .interaction-access{opacity:.5}
@media(any-hover:hover) and (any-pointer:fine){.interactive-post:hover .interaction-access:hover{opacity:1}}
.interactive-post{overflow:clip}
.hover-button-stack{display:flex;align-items:center}
.swipe-tools{display:block}
.swipe-button-stack{display:flex;flex-direction:column;position:sticky;top:calc(var(--site-header-height) + var(--section-tabs-height) + 75px);width:72px}
.swipe-tools button{flex:none;height:44px;min-height:44px}
body.supplement-drawer-open{overflow:hidden}
html{scrollbar-gutter:stable}
.mobile-drawer .menu-home{display:flex;justify-content:flex-start;gap:9px}.menu-home>strong{font-size:14px}.menu-home>span{margin-left:auto}.menu-home .icon{margin:0}
.contribution-trust{display:inline-block;font-size:11px!important;color:#9c6b53;background:#fff1db;border:1px solid #ead8bd;padding:4px 8px;border-radius:4px;margin:4px 0 14px!important}
.my-contribution-entry{text-align:center;font-size:13px;color:#ae3769;margin-top:25px}
/* 管理者原视频链接：楼层号旁的漫画贴纸 */
.public-preview .floor-original-links:has(.original-video-sticker){display:flex;align-items:center;flex:0 1 auto;width:auto;max-width:100%;gap:8px;flex-wrap:wrap;margin:0}
.public-preview .post-head:has(.original-video-sticker){align-items:center;column-gap:14px}
.original-video-sticker{display:block;position:relative;flex:none;width:260px;aspect-ratio:2164/727;padding:0;border:0;background:none;box-shadow:none;transform:rotate(-2deg);transition:transform .16s,filter .16s;isolation:isolate}
.original-video-sticker>img{display:block;width:100%;height:100%;object-fit:contain}
.original-video-sticker>span{position:absolute;top:66%;transform:translate(-50%,-50%);white-space:nowrap;line-height:1;color:white;font-family:system-ui,-apple-system,sans-serif;font-weight:900;text-shadow:0 1px 2px #b51556}
.original-video-sticker .video-sticker-prefix{left:40%;font-size:14px}
.original-video-sticker .video-sticker-time{left:62%;font-size:18px;font-variant-numeric:tabular-nums;text-shadow:none;max-width:31%;letter-spacing:.2px}
.original-video-sticker .video-sticker-suffix{left:86%;font-size:14px}
.original-video-sticker:hover{transform:rotate(0) scale(1.035);filter:drop-shadow(0 3px 2px #eb87b055)}
.original-video-sticker:focus-visible{outline:2px dashed #c52c68;outline-offset:4px;border-radius:12px}
@media(max-width:760px){.original-video-sticker{width:210px}.original-video-sticker .video-sticker-prefix{font-size:12px}.original-video-sticker .video-sticker-time{font-size:15px}.original-video-sticker .video-sticker-suffix{font-size:11px}.public-preview .post-head:has(.original-video-sticker){column-gap:8px}}
@media(prefers-reduced-motion:reduce){.original-video-sticker{transition:none}}
.original-video-sticker{width:180px;height:61px}
.original-video-sticker .video-sticker-prefix{font-size:10px}
.original-video-sticker .video-sticker-time{font-size:13px}
.original-video-sticker .video-sticker-suffix{font-size:10px}
@media(max-width:760px){.original-video-sticker{width:180px}.original-video-sticker .video-sticker-prefix{font-size:10px}.original-video-sticker .video-sticker-time{font-size:13px}.original-video-sticker .video-sticker-suffix{font-size:10px}}

/* 旧楼三种互动保持同组，新楼入口另作强调。 */
.contribution-material{background:linear-gradient(145deg,#fff9f0,#ffe9f0);border-color:#f0b2c9}
.contribution-new{background:linear-gradient(145deg,#ffd2e5,#ffacd1);border:2px solid #ef438c;box-shadow:4px 5px 0 #d23b79}
.contribution-new .contribution-cta{background:#242021;box-shadow:0 4px 0 #8e2854;color:#fff}
.public-preview header nav a sup.hot-tag{background:linear-gradient(135deg,#ff7e36,#f62f76);color:white;box-shadow:0 -2px 7px #ff893d66;transform:rotate(8deg)}
.hot-tag:before{content:"";position:absolute;width:7px;height:10px;background:#ff8d36;border-radius:90% 0 70% 30%;top:-5px;left:4px;transform:rotate(-25deg);z-index:-1}
.contribution-footnotes{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #dfd2c4;margin-top:32px;padding-top:18px}
.contribution-footnotes .correction-entry{display:flex;align-items:center;justify-content:flex-start;gap:10px;margin:0;font-size:13px;color:#887365}
.contribution-footnotes .correction-entry .interaction-art{width:30px;height:30px}
.contribution-footnotes .correction-entry strong{font-size:13px;color:#5e4b43;white-space:nowrap}
.contribution-footnotes .contribution-note{margin:0;text-align:right;white-space:nowrap;font-size:12px}
@media(max-width:600px){.contribution-footnotes{align-items:stretch;flex-direction:column;gap:18px}.contribution-footnotes .correction-entry{flex-wrap:wrap;gap:7px}.contribution-footnotes .correction-entry strong{margin-left:37px}.contribution-footnotes .contribution-note{text-align:right}}
.contribution-footnotes .correction-entry{font-family:inherit;line-height:24px;align-items:baseline}
.contribution-footnotes .correction-entry .interaction-art{align-self:center}
.contribution-footnotes .correction-entry span,.contribution-footnotes .correction-entry strong{font-family:inherit;font-size:13px;line-height:24px;margin-top:0;margin-bottom:0;vertical-align:baseline}
.mobile-drawer .menu-contribute{background:transparent;border:1px solid transparent;font-size:15px}
.mobile-drawer .menu-sticker{position:relative;display:inline-block;font:800 9px/1 sans-serif;background:#ff5297;color:white;padding:4px 5px;border-radius:4px;transform:rotate(-10deg);margin-left:6px;vertical-align:middle;white-space:nowrap}
.mobile-drawer .menu-sticker.hot-tag{background:linear-gradient(135deg,#ff8a3c,#ff3478);transform:rotate(7deg)}
.mobile-drawer a.current-page{background:#ffd7e7!important;color:#20191c;border-radius:7px;box-shadow:inset 3px 0 #ed428d}
.mobile-drawer .menu-new-building{display:flex;align-items:center;justify-content:space-between;padding:15px 13px;margin-top:4px;color:#493d36}
.menu-new-building strong{font:800 18px/1.5 'Kaiti SC','STKaiti',serif;display:block}
.menu-new-building small{display:block;font:11px/1.8 sans-serif;color:#9a8072;margin-top:3px}
/* 菜单中的旧楼补充和新楼接力为同一级入口。 */
.mobile-drawer .menu-peer{display:grid;grid-template-columns:22px minmax(0,1fr) 18px;align-items:center;gap:11px;margin:8px 0 0;padding:13px!important;border:0;background:transparent;color:#493d36}
.mobile-drawer .menu-peer>.icon{width:22px;height:22px;margin:0;align-self:start;margin-top:3px}
.mobile-drawer .menu-peer>div{min-width:0}
.mobile-drawer .menu-peer strong{display:flex;align-items:center;gap:7px;font:750 16px/1.5 -apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif}
.mobile-drawer .menu-peer small{display:block;font:11px/1.8 -apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;color:#9a8072;margin-top:4px}
.mobile-drawer .menu-peer>span{font-size:18px;line-height:1;margin:0;text-align:center}
.mobile-drawer .menu-peer .menu-sticker{margin-left:0;font-size:9px}
.hover-tools{top:auto;bottom:12px;right:48px}
.interaction-access{top:auto;bottom:15px}
.public-preview .interactive-post>.post{padding-bottom:64px}
.interactive-post .post-head{padding-right:0}
.main-exclamations{display:inline-block;font:26px/1 'Apple Color Emoji','Segoe UI Emoji',sans-serif;vertical-align:middle;margin-left:5px}
/* 新楼论坛：主题目录与帖内评论。 */
.forum-index .new-building-welcome{padding-top:28px;padding-bottom:28px}.forum-index .new-building-intro h1{font-size:44px;margin:16px 0}.forum-index .new-building-art>img{max-width:245px}.forum-index .new-building-intro>p{font-size:16px}.forum-index .new-building-art .construction-sticker{font-size:13px}
.topic-list{border:1px solid #dfcebb;border-radius:10px;margin-top:18px;overflow:hidden;background:#fffbf4}.topic-list-columns,.topic-list-row{display:grid;grid-template-columns:minmax(0,1fr) 70px 135px;gap:16px;align-items:center;padding:15px 20px}.topic-list-columns{font-size:12px;color:#9c8270;background:#f4ebe0}.topic-list-row{border-top:1px solid #eaded0;min-height:76px}.topic-list-title{font-size:17px;font-weight:650;line-height:1.6;overflow-wrap:anywhere}.topic-list-title:hover{color:#c83775}.topic-list-count,.topic-list-row time{font-size:12px;color:#998371}.topic-list-count>span{display:none}.topic-pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:25px;font-size:13px}.topic-pagination a{padding:12px;border:1px solid #ddccba;border-radius:6px}
.topic-page{max-width:1000px;margin:30px auto 60px;padding:0 25px}.topic-breadcrumb{display:flex;justify-content:space-between;gap:15px;font-size:13px;color:#aa4f75;margin-bottom:20px}.topic-breadcrumb a{padding:10px 0}.forum-topic{background:#fffaf3;border:1px solid #e1cdb8;border-radius:12px;padding:32px}.forum-topic h1{font:800 34px/1.5 'Kaiti SC','STKaiti',serif;margin:20px 0 12px;overflow-wrap:anywhere}.forum-topic-meta{display:flex;flex-wrap:wrap;gap:18px;color:#9c8272;font-size:12px;padding-bottom:20px;border-bottom:1px solid #ebded0}.forum-topic-meta>a{margin-left:auto;color:#b44876}.forum-topic-content{margin-top:24px;font-size:16px;line-height:1.95;overflow-wrap:anywhere}.forum-topic-content p{white-space:pre-wrap}.forum-topic-content .approved-image{display:block;max-width:100%;height:auto;max-height:none;margin:16px 0;border-radius:5px}.forum-topic-content a,.comment-content a{color:#b73772;text-decoration:underline;overflow-wrap:anywhere}.topic-comments{margin-top:30px;scroll-margin-top:140px}.topic-comments .new-feed-heading h2{font:800 25px 'Kaiti SC','STKaiti',serif}.topic-comment{position:relative;padding:22px 8px 17px;border-bottom:1px solid #e1d2c0;scroll-margin-top:140px}.comment-meta{display:flex;gap:12px;align-items:center;font-size:12px;color:#a08b7b}.comment-meta strong{color:#6d5649;font-weight:600}.comment-meta time{margin-left:auto}.comment-content{font-size:15px;line-height:1.85;overflow-wrap:anywhere;margin-top:13px}.comment-content>img{display:block;max-width:min(100%,380px);height:auto;max-height:480px;object-fit:contain;object-position:left;margin-top:14px;border-radius:5px}.comment-reply{display:block;margin:10px 0 0 auto;border:0;background:transparent;color:#b44e78;padding:6px 10px;font-size:12px}.comment-reply-reference{border-left:3px solid #efa6c2;background:#ffeaf254;padding:7px 12px;color:#987766;font-size:12px;margin-bottom:0}.topic-no-comments{font-size:14px;color:#a18b7c;padding:25px 10px}.topic-comment-form{background:#fff9f0;border:1px solid #e2ceba;border-radius:10px;padding:25px;margin-top:27px;scroll-margin-top:120px}.topic-comment-form h2{font:800 24px 'Kaiti SC','STKaiti',serif;margin:0 0 20px}.topic-comment-form>label{display:block;font-size:13px;margin-bottom:9px}.topic-comment-form textarea{width:100%;min-height:145px;font-size:15px;line-height:1.8;resize:vertical}.comment-upload{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:15px;font-size:12px;color:#937c6c}.comment-upload label{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.comment-upload input{padding:7px;width:min(270px,100%);max-width:100%;font-size:12px}.comment-upload span{overflow-wrap:anywhere}.topic-comment-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:20px}.topic-comment-actions small{font-size:12px;color:#a48a76}.topic-comment-actions button{font-size:14px;padding:12px 22px}.comment-replying{font-size:12px;color:#b44176}.comment-replying button{font-size:12px;margin-left:10px;padding:5px}.topic-page [hidden]{display:none!important}
@media(max-width:600px){.forum-index .new-building-intro h1{font-size:40px}.forum-index .new-building-art{min-height:190px}.forum-index .new-building-art>img{height:190px;width:190px}.topic-list-columns{display:none}.topic-list-row{grid-template-columns:1fr auto;gap:8px;padding:16px}.topic-list-title{grid-column:1/-1;font-size:16px}.topic-list-count>span{display:inline}.topic-list-row time{text-align:right;font-size:11px}.topic-page{padding:0 14px;margin-top:15px}.topic-breadcrumb{font-size:12px}.forum-topic{padding:24px 19px}.forum-topic h1{font-size:29px}.forum-topic-content{font-size:15px}.forum-topic-meta{gap:10px}.forum-topic-meta>a{margin-left:0}.topic-comment-form{padding:20px 16px}.topic-comment-actions{align-items:flex-end}.topic-comment-actions small{font-size:11px}.comment-meta{gap:8px}.comment-meta time{font-size:10px}}
.public-preview .search-page{padding-top:45px;min-height:65vh}
.search-page .search-form{max-width:820px;margin:0 0 24px;display:flex;flex-wrap:nowrap;gap:12px;align-items:stretch}
.search-page .search-form input{min-width:0;width:auto;flex:1;padding:14px 16px}
.search-page .search-form .primary{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:12px 22px;flex:none;font-size:15px}
.search-page [hidden]{display:none!important}
.topic-video-url{display:block;font:12px/1.7 sans-serif;color:#9b7d6a;overflow-wrap:anywhere;margin-top:6px}
@media(max-width:600px){.public-preview .search-page{padding-top:27px}.search-page .search-form{gap:9px}.search-page .search-form input{padding:12px;font-size:14px}.search-page .search-form .primary{padding:12px 14px;gap:6px;font-size:14px}.search-page .search-form .icon{width:18px;height:18px}}
.search-page .search-result{padding:22px 0}
.search-result-heading{display:flex;align-items:baseline;gap:10px;font-size:14px;line-height:1.6;margin-bottom:9px}
.search-result-heading>span{font-size:12px;color:#9f7e6b}
.search-result-heading>strong{font-size:16px;font-weight:650;color:#30251f}
.search-result-heading>i{font-style:normal;margin-left:auto;font-size:17px;color:#b77a94}
.search-page .search-result p{margin:0;font-size:14px;line-height:1.9;color:#736963}
.forum-preview-notice{background:#fff0c4;border-bottom:1px dashed #d6b46d;padding:12px 20px;text-align:center;color:#85632c;font-size:13px}
.forum-topic-content p:has(>.topic-video-url){padding:16px 18px;border:1px solid #efb5ce;border-radius:8px;background:#ffe9f2}
.forum-topic-content p:has(>.topic-video-url)>a{font-weight:700;text-decoration:none}
.old-comment-content{font-size:14px;line-height:1.9;overflow-wrap:anywhere}.old-comment-content>a{color:#b43a71;text-decoration:underline}.old-comment-content .approved-image{display:block;max-width:min(100%,320px);max-height:380px;object-fit:contain;margin-top:12px}
/* 楼层底部：评论数量与操作按钮共享一条水平基线。 */
.public-preview .interactive-post>.post{padding-bottom:76px}
.interactive-post .approved-counts{position:absolute;left:28px;bottom:13px;min-height:38px;margin:0;gap:9px;max-width:calc(100% - 205px)}
.interactive-post .approved-counts button{white-space:nowrap;min-height:38px}
.interactive-post .hover-tools{display:flex;visibility:visible;opacity:1;bottom:13px;right:48px;background:transparent}
.interactive-post.swipe-open .hover-tools{display:none}
.hover-tools .light-button-count{font-size:12px;color:#c83d77;margin-left:3px;line-height:1}
.light-button-count[hidden]{display:none!important}.hover-tools [data-v2=light]:has(.light-button-count:not([hidden])) .interaction-art{filter:none;opacity:1}
.swipe-tools .light-button-count{font-size:10px;line-height:1;color:#bb3b72}
@media(max-width:600px){.interactive-post .approved-counts{left:18px;max-width:calc(100% - 195px)}.interactive-post .hover-tools{right:43px}.interactive-post .interaction-tools button{min-width:32px;padding:5px}.interactive-post .interaction-access{right:11px}.interactive-post .approved-counts button{font-size:11px}}
/* 阅读时只显示轻量入口，写评论时才展开编辑区。 */
.topic-comment-composer{margin-top:22px;border:1px solid #dfcdbb;border-radius:8px;background:#fffaf2;scroll-margin-top:120px}
.topic-comment-composer>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;font-size:14px;color:#a28b7b;cursor:pointer;min-height:48px}
.topic-comment-composer>summary::-webkit-details-marker{display:none}.topic-comment-composer>summary>span{color:#c76792;font-size:18px}
.topic-comment-composer[open]>summary{border-bottom:1px solid #e8d9c8;color:#624d40}
.topic-comment-composer .topic-comment-form{border:0;background:transparent;margin:0;padding:18px}
.topic-comment-composer textarea{min-height:96px}
.topic-comments .new-feed-heading h2{font:650 17px/1.5 -apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif}
@media(max-width:760px){
 .public-preview .raw-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:6px;padding:9px 7px}
 .raw-pagination .page-numbers{flex:none;display:flex;align-items:center;gap:2px}
 .public-preview .raw-pagination .page-numbers>a{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:29px;padding:3px 5px;font-size:11px}
 .raw-pagination .page-numbers>span{font-size:10px;margin:0}
 .raw-pagination .raw-page-jump{display:flex;flex-wrap:nowrap;align-items:center;gap:4px;font-size:10px;min-width:0}
 .raw-page-jump label{display:flex;align-items:center;gap:3px;white-space:nowrap}
 .raw-pagination .raw-page-jump input{width:33px;min-width:0;height:29px;padding:3px;font-size:11px}
 .raw-pagination .raw-page-jump button{height:29px;padding:3px 6px;font-size:11px;white-space:nowrap}
 .raw-pagination .raw-page-jump>span{display:none}
}
@media(max-width:390px){.raw-pagination .page-numbers>a:nth-child(3):not(.current),.raw-pagination .page-numbers>a:nth-child(4):not(.current){display:none}}
@media(max-width:760px){.raw-pagination .page-numbers>a.page-secondary{display:none!important}.raw-pagination .page-numbers>a.page-end,.raw-pagination .page-numbers>a.current{display:inline-flex!important}}
.swipe-tools button{position:relative}.swipe-tools .light-button-count{position:absolute;right:5px;top:9px}
.public-preview .reader-title p.main-tagline{display:flex;align-items:center;gap:6px;white-space:nowrap;max-width:none}
.public-preview .reader-title p.main-tagline>.main-exclamations{display:inline-flex!important;flex:none;width:32px;height:29px;margin:0;transform:rotate(12deg);vertical-align:middle}
.main-exclamations svg{display:block;width:100%;height:100%;overflow:visible}
.admin-links-page{max-width:1000px;margin:35px auto 60px;padding:0 24px}.admin-links-page h1{font:800 32px 'Kaiti SC','STKaiti',serif}.admin-links-page>.muted{line-height:1.8;margin-bottom:23px}.admin-links-page>h2{font-size:21px;margin-top:30px}.admin-floor-links .admin-item{margin-top:14px;background:#fffaf2}.admin-floor-links p{overflow-wrap:anywhere;font-size:12px}.admin-links-page .primary{font-size:14px;justify-content:center;gap:9px}.admin-links-page .admin-heading{gap:15px}.admin-links-page .admin-heading>a{font-size:13px;white-space:nowrap}
.video-time-picker{border:0;padding:0;margin:0;min-width:0}.video-time-picker legend{font-size:12px;font-weight:600;padding:0;margin-bottom:9px}
.video-time-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.video-time-fields>label{display:flex;flex-direction:column;gap:7px;margin:0;font-size:12px;color:#907661}
.video-time-fields select{width:100%;min-width:0;padding:12px 9px;font-size:15px;color:#30251f;background:#fffdf9}
.video-time-picker[hidden]{display:none!important}.original-link-form .video-time-picker{margin-bottom:20px}
@media(max-width:600px){.video-time-fields{gap:8px}.video-time-fields select{font-size:16px;padding:11px 7px}}

.original-video-sticker .video-sticker-time{width:31%;text-align:center}
.original-video-sticker .video-sticker-time.is-long{font-size:9px;letter-spacing:0}

/* 贴纸内的三段文字独立占位，时间对齐黑色胶囊，右侧留出完整阅读空间。 */
.original-video-sticker{width:200px;height:67px}
.original-video-sticker .video-sticker-prefix{left:40%;font-size:9px}
.original-video-sticker .video-sticker-time{left:62%;width:29%;max-width:29%;font-size:12px;letter-spacing:0}
.original-video-sticker .video-sticker-suffix{left:86%;width:17%;text-align:center;font-size:9px;letter-spacing:0;text-shadow:none}
.original-video-sticker .video-sticker-time.is-long{font-size:9px}

/* 将整组文案排进内层胶囊，覆盖底图旧时间框，三段文字不再独立挤靠边缘。 */
.original-video-sticker>.video-sticker-copy{left:36%;top:51%;width:57%;height:31%;transform:none;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:4px;padding:2px 7px 2px 2px;background:linear-gradient(#ff479a,#ff2987);border-radius:18px;text-shadow:none}
.original-video-sticker .video-sticker-copy>span{position:static;transform:none;flex:none;width:auto;max-width:none;line-height:1;letter-spacing:0;text-align:center}
.original-video-sticker .video-sticker-copy .video-sticker-prefix{font-size:9px}
.original-video-sticker .video-sticker-copy .video-sticker-time{font-size:11px;background:#090909;border-radius:12px;padding:3px 5px}
.original-video-sticker .video-sticker-copy .video-sticker-time.is-long{font-size:8px;padding-inline:4px}
.original-video-sticker .video-sticker-copy .video-sticker-suffix{font-size:9px}

.public-preview .post-head:has(.original-video-sticker){align-items:center;column-gap:8px;min-height:38px}
.public-preview .post-head:has(.original-video-sticker) .floor-heading{padding-top:0}
.public-preview .floor-original-links:has(.original-video-sticker){height:38px;position:relative;align-items:center}
.original-video-sticker{width:160px;height:54px;transform:translateY(-16px) rotate(-2deg)}
.original-video-sticker:hover{transform:translateY(-16px) rotate(0) scale(1.035)}
.original-video-sticker>.video-sticker-copy{gap:3px;padding:1px 5px 1px 2px}
.original-video-sticker .video-sticker-copy .video-sticker-prefix,.original-video-sticker .video-sticker-copy .video-sticker-suffix{font-size:8px}
.original-video-sticker .video-sticker-copy .video-sticker-time{font-size:10px;padding:2px 4px}
.original-video-sticker .video-sticker-copy .video-sticker-time.is-long{font-size:7px;padding-inline:3px}

/* Both layers keep stable stacking throughout the slide transition. */
.interactive-post .swipe-body{position:relative;z-index:1;transition:transform .2s ease}
.interactive-post .swipe-tools{z-index:0;visibility:visible}
.interactive-post.swipe-open .swipe-tools{z-index:0}
.gallery-viewer{touch-action:pan-y pinch-zoom}
.gallery-viewer>img{-webkit-user-drag:none;user-select:none}

.v2-admin .admin-heading{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px 24px}
.v2-admin .admin-heading h1{margin:0;white-space:nowrap}
.v2-admin .admin-heading>div{text-align:right;grid-column:2;grid-row:1}
.v2-admin .admin-heading>p{grid-column:1/-1;grid-row:2;margin:0 0 16px;line-height:1.7}
@media(min-width:761px){.v2-admin .filters:has([data-v2="select-review"]){display:grid;grid-template-columns:repeat(6,max-content);justify-content:start}.v2-admin [data-v2="select-review"]{grid-column:1}}
@media(max-width:760px){.v2-admin .admin-heading{display:block}.v2-admin .admin-heading>div{text-align:left;margin:12px 0}.v2-admin .admin-heading h1{font-size:30px}}
