/* FuFuLin 文章頁 v1.2：搭配 shell.css（配色、字體、導覽、頁尾）。不依賴 style.css。
   版面：標題區最寬 760px，正文與其他區塊最寬 680px，全部從同一條左側基準線開始。 */
.nb{white-space:nowrap}
.post-article{width:min(760px,100%);margin:0 auto;padding:64px 0 0}
.post-body,.refs,.author-box,.related,.all-posts-row{max-width:680px}

/* ---------- 標題區 ---------- */
.post-head{margin:0 0 36px}
.post-kicker{font-size:13px;font-weight:700;letter-spacing:.08em;color:var(--accent);margin:0 0 14px!important}
.post-kicker a{display:inline-flex;align-items:center;min-height:32px;color:var(--accent)}
.post-kicker a:hover{text-decoration:underline;text-underline-offset:.25em}
.post-article h1{font-size:38px;line-height:1.45;letter-spacing:.01em;word-break:keep-all;overflow-wrap:anywhere}
.post-sub{margin-top:12px!important;font-size:19px;line-height:1.65;color:var(--muted);text-wrap:balance}
.post-byline{margin-top:26px!important;font-size:14px;color:var(--muted);letter-spacing:.02em}
.post-byline .sep{margin:0 .6em}
.post-byline>span:not(.sep),.post-byline>time{white-space:nowrap}

/* ---------- 導言（B2：略大於正文、一般字重、無框無側線） ---------- */
.v5 .post-lead p{font-size:20px;line-height:1.8;margin:0 0 1em}
.v5 .post-lead p:last-child{margin-bottom:0}

/* ---------- 封面：導言之後、第一節之前；原比例不裁切，最寬 680、最高 560，在閱讀欄內置中 ---------- */
.post-cover{margin:40px 0 0;text-align:center}
.post-cover img{display:inline-block;width:auto;height:auto;max-width:100%;max-height:560px;vertical-align:top;background:var(--panel)}

/* ---------- 正文（沿用閱讀基準：19px／17.5px，行高 1.85） ---------- */
.post-body{font-size:19px;line-height:1.85;overflow-wrap:break-word}
.v5 .post-body p{margin:0 0 1.15em}
.v5 .post-body a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.v5 .post-body a:hover{text-decoration-thickness:2px}
.post-body h2{font-size:26px;line-height:1.5;margin:64px 0 18px}
.post-body h3{font-family:var(--sans);font-size:19px;font-weight:500;line-height:1.6;color:var(--accent);margin:40px 0 10px}
/* 作者金句：Noto Serif TC 400、以留白停頓，不用紅線、底色或引號（2026-11-06 確認） */
.post-body blockquote{margin:48px 0;padding:0;font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.75;line-break:strict;text-wrap:pretty}
.v5 .post-body blockquote p{margin:0}
/* 外部直接引用（目前沒有文章使用；寫法 <blockquote class="quote-ext"><p>…</p><cite>來源</cite></blockquote>）：黑體、灰色細側線、標示來源 */
.post-body .quote-ext{margin:36px 0;padding:2px 0 2px 18px;border-left:2px solid #CFC9BF;font-family:var(--sans);font-weight:400;font-size:18px;line-height:1.8}
.post-body .quote-ext cite{display:block;margin-top:8px;font-style:normal;font-size:14px;color:var(--muted)}
.post-body mark{background:var(--soft);color:inherit;padding:0 .1em}
.post-body img{display:block;max-width:100%;height:auto;margin:40px auto;background:var(--panel)}
.post-body figure{margin:40px 0;text-align:center}
.post-body figure img{margin:0 auto}
.post-body figcaption{margin-top:10px;font-size:14px;line-height:1.6;color:var(--muted);text-align:left}
.post-body sup.fn{font-size:.68em;line-height:0;margin-left:.08em}
.v5 .post-body sup.fn a{text-decoration:none;padding:0 .12em;position:relative}
.post-body sup.fn a::before{content:"";position:absolute;left:50%;top:50%;width:24px;height:24px;transform:translate(-50%,-50%)}
.post-body table{display:block;width:max-content;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:.9em;margin:0 0 1.4em}
.post-body th,.post-body td{border-bottom:1px solid var(--line);padding:.4em .7em;text-align:left;vertical-align:top;min-width:4.5em;max-width:22em;overflow-wrap:anywhere}
.post-body .video{margin:40px 0}
.post-body .video-frame{position:relative;width:100%;aspect-ratio:16/9;background:#111;overflow:hidden}
.post-body .video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.post-body .video figcaption{margin-top:.5rem}
.post-body .closing{border-top:2px solid var(--text);margin:56px 0 0;padding-top:22px}
.v5 .post-body .closing p{font-weight:500;font-size:1.05em;line-height:1.75;margin-bottom:.8em}
.v5 .post-body .closing p:last-child{margin-bottom:0}

/* ---------- 參考資料 ---------- */
.refs{border-top:1px solid var(--line);margin-top:56px;padding-top:24px;color:var(--muted);font-size:14px;line-height:1.75}
.refs .ref-heading{font-size:20px;color:var(--text);margin:0 0 12px}
.refs ol{margin:0;padding-left:1.5rem}
.refs li{overflow-wrap:anywhere}
.refs li+li{margin-top:.55rem}
.v5 .refs a{color:var(--accent);text-decoration:underline;text-underline-offset:.2em}
.v5 .refs .fn-back{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;vertical-align:middle}
.fn-backs{display:inline-flex;align-items:center;flex-wrap:wrap;gap:0 2px;vertical-align:middle}
.fn-backs>span{margin-right:2px}
.v5 .refs .fn-back.multi{font-size:13px}
[id^="note-"],[id^="ref-"]{scroll-margin-top:24px}

/* ---------- 文末作者介紹 ---------- */
.author-box{display:flex;align-items:flex-start;gap:20px;margin-top:56px;padding-top:28px;border-top:1px solid var(--line)}
.author-box img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0;background:#e7e8e4}
.author-text{min-width:0}
.author-box .who{font-size:16px;line-height:1.5}
.author-box .who strong{font-weight:700}
.author-box .bio{margin-top:4px!important;font-size:15px;line-height:1.75;color:var(--muted)}
.v5 .author-box .more{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:700;color:var(--accent)}
.v5 .author-box .more:hover{text-decoration:underline;text-underline-offset:.25em}

/* ---------- 延伸閱讀（純文字卡片）與文章列表入口 ---------- */
.related{margin-top:48px}
.related h2{font-size:20px;margin:0 0 4px}
.related ul{list-style:none;margin:0;padding:0}
.related li{padding:20px 0;border-bottom:1px solid var(--line)}
.related li:first-child{border-top:1px solid var(--line);margin-top:12px}
.related .meta{font-size:12px;font-weight:400;letter-spacing:.06em;color:var(--accent)}
.related h3{font-size:19px;line-height:1.55;margin:6px 0 6px}
.related h3 a:hover{color:var(--accent)}
.related .desc{font-size:15px;line-height:1.75;color:var(--muted)}
.all-posts-row{margin:36px 0 80px!important}
.v5 .all-posts{display:inline-flex;align-items:center;min-height:44px;font-size:15px;font-weight:700;color:var(--accent)}
.v5 .all-posts:hover{text-decoration:underline;text-underline-offset:.25em}


/* ---------- 平板與手機 ---------- */
@media(max-width:610px){
 .post-article{padding-top:36px}
 .post-head{margin-bottom:28px}
 .post-kicker{margin-bottom:10px!important}
 .post-article h1{font-size:29px;line-height:1.5}
 .post-sub{font-size:17px;margin-top:12px!important}
 .post-byline{margin-top:20px!important}
 .v5 .post-lead p{font-size:18px}
 .post-cover{margin-top:32px}
 .post-body{font-size:17.5px}
 .post-body h2{font-size:22px;margin:52px 0 14px}
 .post-body blockquote{font-size:19.5px;margin:40px 0}
 .author-box{display:grid;grid-template-columns:56px 1fr;column-gap:14px;align-items:center}
 .author-box img{width:56px;height:56px}
 .author-text{display:contents}
 .author-box .bio,.author-box .more{grid-column:1 / -1}
 .author-box .bio{margin-top:12px!important}
 .related h3{font-size:17.5px}
}
/* 320px 小手機：大標略縮，避免 11 字以上的短句被迫在字中間折行 */
@media(max-width:350px){.post-article h1{font-size:25px}}
