/* ---------- 园策内部社区 · 样式 ----------
 * 复用 content.css 的基础类（content-wrap/content-topbar/content-crumb 等），
 * 这里只补充社区特有的布局与控件。
 */

.community-grid{display:grid;grid-template-columns:224px minmax(0,1fr);gap:38px;align-items:start}

/* 左侧栏目 rail */
.rail{border-right:1px solid var(--line,rgba(122,204,168,.14));padding-right:23px;position:sticky;top:100px}
.rail-heading{font-size:13px;color:var(--muted,#89ad98);margin:5px 12px 13px}
.rail nav{display:flex;flex-direction:column;gap:2px}
.rail a{display:flex;align-items:center;gap:10px;font-size:14px;padding:10px 12px;border:1px solid transparent;border-radius:8px;color:var(--muted,#abbeaf);text-decoration:none}
.rail a.sel{color:var(--text,#b8e5cd);background:rgba(146,204,164,.07);border-color:rgba(159,220,184,.16)}
.rail a:hover{background:rgba(239,255,246,.024);color:var(--text,#c5efd7)}
.rail a svg{flex:none}
.rail small{margin-left:auto;color:var(--muted,#91a99a)}
.rail-foot{margin-top:23px;border-top:1px solid var(--line,rgba(122,204,168,.14));padding-top:14px}

/* 帖子流 */
.feedbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:15px;border-bottom:1px solid var(--line,rgba(122,204,168,.14));margin-bottom:14px}
.feedbar h2{font-size:22px;font-weight:500;color:var(--text,#e6efe9)}
.tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tabs button{padding:7px 11px;color:var(--muted,#a5bbad);font-size:14px;border:1px solid transparent;border-radius:7px;background:none;cursor:pointer}
.tabs button.active{border-color:rgba(138,208,170,.21);background:rgba(159,221,179,.06);color:var(--text,#c2f0d8)}
.count,.hint{font-size:12px;color:var(--muted,#96ac9e)}
.hint{line-height:1.8}

/* 帖子行 */
.item{display:block;padding:16px 4px;border-bottom:1px solid var(--line,rgba(122,204,168,.09));text-decoration:none;color:inherit;transition:background .16s ease}
.item:hover{background:rgba(255,255,255,.015)}
.postline{display:flex;gap:20px;align-items:flex-start}
.postline .copy{flex:1;min-width:0}
.post-top{display:flex;align-items:center;gap:8px;margin-bottom:7px;flex-wrap:wrap}
.post-top>span{font-size:12px;color:var(--muted,#91a99a)}
.item h3{font-size:17px;font-weight:500;color:var(--text,#e6efe9);line-height:1.4;margin:0 0 5px}
.excerpt{font-size:13.5px;color:var(--muted,#98aba2);line-height:1.6;margin:0 0 8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.meta{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap;font-size:12px;color:var(--muted,#91a99a)}
.meta .check{display:inline-flex;align-items:center;gap:4px}
.thumb{flex:0 0 auto;width:104px;height:78px;border-radius:8px;overflow:hidden;background:var(--bg-soft,#0a1410)}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}

/* 标签 */
.chip{display:inline-flex;align-items:center;font-size:11px;padding:1px 7px;border:1px solid rgba(167,216,185,.21);border-radius:4px;color:var(--muted,#b0d8bf);white-space:nowrap}
.chip.ochre{color:#dfca93;border-color:rgba(217,184,119,.3)}

/* 详情 */
.page-title{font-size:26px;font-weight:500;color:var(--text,#e6efe9);line-height:1.3;margin:6px 0 12px}
.panel{background:var(--panel,rgba(255,255,255,.035));border:1px solid var(--line,rgba(122,204,168,.14));border-radius:12px;padding:18px}
.panel h2{font-size:18px;font-weight:500;color:var(--text,#e6efe9);margin:0 0 12px}
.headrow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.between{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.story{font-size:14.5px;line-height:1.8;color:var(--text,#e6efe9);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}
.notice{font-size:13px;color:#dfca93;background:rgba(217,184,119,.08);border:1px solid rgba(217,184,119,.25);padding:9px 12px;border-radius:8px;margin:12px 0}

/* 评论/回答 */
.reply{padding:14px 0;border-bottom:1px solid var(--line,rgba(122,204,168,.09))}
.reply:last-of-type{border-bottom:0}
.reply.accepted{background:rgba(63,185,143,.06);border:1px solid rgba(63,185,143,.22);border-radius:8px;padding:14px;margin:6px 0}
.reply .meta{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.reply .meta strong{font-size:13px;color:var(--text,#e6efe9);font-weight:500}
.reply p{font-size:13.5px;line-height:1.7;color:var(--text,#dce9e1);margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.quote{font-size:12px;color:var(--muted,#98aba2);border-left:2px solid var(--line,rgba(122,204,168,.3));padding:4px 0 4px 10px;margin:0 0 8px}
.actions{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
.actions .icon-btn{font-size:12px;color:var(--muted,#98aba2);background:none;border:0;cursor:pointer;padding:4px 6px;border-radius:6px}
.actions .icon-btn:hover{color:var(--accent,#3fb98f);background:var(--accent-dim,rgba(63,185,143,.12))}
.foot-actions{margin-top:16px}

/* 表单 */
.fgrp{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.fgrp>span{font-size:13px;color:var(--text,#e6efe9)}
.fgrp .label{font-size:11px;color:var(--muted,#96ac9e);margin-left:6px}
.fgrp input[type=text],.fgrp textarea,.fgrp select{background:var(--input-bg,#0c1512);border:1px solid var(--line,rgba(122,204,168,.2));border-radius:7px;padding:9px 12px;width:100%;color:var(--text,#e6efe9);font:inherit;font-size:13.5px;color-scheme:dark}
.fgrp textarea{resize:vertical;min-height:120px}
.fgrp input:focus,.fgrp textarea:focus,.fgrp select:focus{outline:none;border-color:var(--accent,#3fb98f)}
.invalid{font-size:12px;color:#e39a8f;margin-top:10px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* 空态 */
.empty{padding:40px 16px;text-align:center;color:var(--muted,#98aba2);font-size:14px}
.empty .icon-btn{background:none;border:1px solid var(--line,rgba(122,204,168,.2));color:var(--accent,#3fb98f);border-radius:7px;padding:6px 12px;margin-top:12px;cursor:pointer;font-size:12.5px}

/* 按钮（复用 content-primary/secondary 时补充） */
.content-primary{display:inline-flex;align-items:center;gap:6px;background:var(--accent,#2d7a5f);color:#fff;border:0;border-radius:8px;padding:9px 16px;font-size:13.5px;cursor:pointer;text-decoration:none;font-weight:500}
.content-primary:hover{filter:brightness(1.08);color:#fff}
.content-secondary{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--line,rgba(122,204,168,.22));color:var(--text,#dce9e1);border-radius:8px;padding:9px 16px;font-size:13.5px;cursor:pointer;text-decoration:none}
.content-secondary:hover{color:var(--accent,#3fb98f);border-color:var(--accent,#3fb98f)}

@media(max-width:900px){
  .community-grid{grid-template-columns:1fr;gap:10px}
  .rail{display:none}
  .row2{grid-template-columns:1fr;gap:0}
  .thumb{width:75px;height:65px}
  .item h3{font-size:16px}
  .page-title{font-size:23px}
}

/* Community composer and the Markdown shared by review and published posts. */
.post-compose{max-width:850px;margin-inline:auto}
.post-heading,.post-body-label,.post-body-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}
.post-heading{margin:16px 0 20px;flex-wrap:wrap}
.post-heading h1{margin:0}
.post-compose .panel{padding:clamp(16px,3vw,30px)}
.post-compose .tabs{margin-bottom:20px}
.post-compose .fgrp{margin-bottom:18px}
.post-compose :is(input,select,textarea){color-scheme:inherit}
.post-compose .post-body-label{font-size:14px}
.post-body-label .icon-btn{border:0;background:transparent;color:var(--accent);font:inherit;font-size:12px;padding:5px;cursor:pointer}
.post-body-meta{font-size:12px;color:var(--muted);flex-wrap:wrap}
.post-editor-surface{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--input-bg)}
.post-editor-surface:focus-within{outline:2px solid var(--accent);outline-offset:1px}
.post-editor-surface iframe,.post-editor-surface textarea{display:block;width:100%;height:clamp(280px,40vh,430px);border:0;border-radius:0}
.post-editor-surface textarea{padding:14px;font:14px/1.8 ui-monospace,monospace}
.post-compose button:disabled{opacity:.55;cursor:wait}
.post-prose{min-width:0;color:var(--text);line-height:1.8;overflow-wrap:anywhere}
.post-prose :is(p,ul,ol,blockquote,pre,table){margin:.75em 0}
.post-prose :is(h1,h2,h3,h4,h5,h6){margin:1em 0 .4em;line-height:1.4}
.post-prose :is(ul,ol){padding-inline-start:1.6em}
.post-prose ul{list-style:disc}.post-prose ol{list-style:decimal}
.post-prose blockquote{margin-left:0;padding-left:1em;border-left:3px solid var(--accent);color:var(--muted)}
.post-prose :is(pre,code){background:var(--bg-soft);border-radius:4px}
.post-prose pre{overflow-x:auto;padding:12px}
.post-prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.post-prose img{display:block;max-width:100%;height:auto;border-radius:6px}
.post-prose table{display:block;overflow:auto;border-collapse:collapse}
.post-prose :is(td,th){padding:.3em .65em;border:1px solid var(--line)}
.post-prose>:first-child{margin-top:0}.post-prose>:last-child{margin-bottom:0}
