/* FlowPocket reading guide: the landing page supplies fonts, palette and controls. */
.fp-guide{color-scheme:light dark;overflow-wrap:break-word}
.fp-guide .site-header{flex-wrap:wrap;gap:16px}
.fp-guide .brand{min-width:0}
.fp-guide .crumbs{padding-block:20px 0;color:var(--muted);font-size:.875rem}
.fp-guide .crumbs ol{display:flex;flex-wrap:wrap;list-style:none;gap:8px 12px;padding:0;margin:0}
.fp-guide .crumbs li+li:before{content:'›';margin-right:12px}
.fp-guide .guide-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;padding-block:48px 64px}
.fp-guide h1{font-size:clamp(2.8rem,5.3vw,4.7rem);line-height:1.06;letter-spacing:-.035em;margin:22px 0 26px;max-width:13ch}
.fp-guide .guide-answer{font-size:1.125rem;max-width:56ch;color:var(--muted)}
.fp-guide .byline{font-size:.875rem;color:var(--muted);margin-top:24px}
.fp-guide .guide-figure{margin:0;min-width:0}
.fp-guide .guide-figure img{display:block;width:100%;height:auto}
.fp-guide figcaption{font-size:.8125rem;color:var(--muted);margin-top:14px;line-height:1.6}
.fp-guide .guide-toc{display:flex;flex-wrap:wrap;gap:12px 24px;padding-block:22px;border-block:1px solid var(--line);font-size:.9375rem}
.fp-guide .guide-toc a{text-underline-offset:5px;text-decoration:underline;text-decoration-color:var(--line);padding-block:4px}
.fp-guide .reading-layout{display:grid;grid-template-columns:220px minmax(0,720px);gap:64px;padding-block:64px}
.fp-guide .guide-aside{color:var(--muted);font-size:.9375rem;line-height:1.7}
.fp-guide .guide-aside p+p{margin-top:18px}
.fp-guide .guide-aside strong{color:var(--ink)}
.fp-guide .guide-body{min-width:0}
.fp-guide .guide-body section{margin-bottom:52px;scroll-margin-top:24px}
.fp-guide .guide-body h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.18;max-width:25ch}
.fp-guide .guide-body h3{font-size:1.25rem;line-height:1.4;margin-top:28px}
.fp-guide .guide-body p,.fp-guide .guide-body li{font-size:1.0625rem;line-height:1.8;color:var(--muted)}
.fp-guide .guide-body p{margin-top:18px}
.fp-guide .guide-body ol,.fp-guide .guide-body ul{padding-left:1.3em;margin-top:18px}
.fp-guide .guide-body li+li{margin-top:12px}
.fp-guide .guide-body li::marker{color:var(--accent)}
.fp-guide .guide-body a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}
.fp-guide .step-label{display:block;font-size:.8125rem;font-family:'FlowPocket Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}
.fp-guide .guide-example{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-family:ui-monospace,monospace;font-size:.875rem;line-height:1.8;padding:24px;background:var(--pale);border:1px solid var(--line);margin-top:22px;color:var(--ink)}
.fp-guide .guide-body .guide-callout{border-block:1px solid var(--line);padding-block:22px;font-size:1rem}
.fp-guide .guide-body .faq-list{margin-top:28px}
.fp-guide .guide-body .faq-list summary{font-size:1.0625rem;min-height:44px}
.fp-guide .guide-body .sources p{font-size:.9375rem}
.fp-guide .guide-next{border-top:1px solid var(--line);padding-block:36px 60px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.fp-guide .guide-next p{color:var(--muted);margin-bottom:12px}
.fp-guide :focus-visible{outline:2px solid var(--accent);outline-offset:5px}
@media(max-width:960px){.fp-guide .guide-hero{gap:32px}.fp-guide .reading-layout{grid-template-columns:170px minmax(0,1fr);gap:40px}}
@media(max-width:760px){.fp-guide .guide-hero{grid-template-columns:1fr;padding-block:30px 40px;gap:30px}.fp-guide h1{font-size:clamp(2.65rem,11vw,3.5rem);max-width:14ch}.fp-guide .guide-answer{font-size:1.0625rem}.fp-guide .guide-figure{max-width:560px}.fp-guide .reading-layout{grid-template-columns:1fr;gap:32px;padding-block:40px}.fp-guide .guide-aside{border-bottom:1px solid var(--line);padding-bottom:24px}.fp-guide .guide-body section{margin-bottom:40px}.fp-guide .guide-body h2{font-size:1.9rem}.fp-guide .guide-example{padding:18px}.fp-guide .guide-next{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.fp-guide{scroll-behavior:auto}.fp-guide *{transition:none!important}}

/* SEOGEO-002 language navigation and Chinese reading rhythm. */
.fp-guide .guide-languages{display:flex;flex-wrap:wrap;gap:24px;padding-block:18px 0;font-size:.9375rem}
.fp-guide .guide-languages a{padding-block:8px}
.fp-guide .guide-languages [aria-current]{font-weight:600;text-decoration:underline;text-underline-offset:5px}
.fp-guide .guide-related{border-top:1px solid var(--line);padding-top:32px}
.fp-guide:lang(zh-Hans){font-family:'FlowPocket Sans','PingFang SC','Microsoft YaHei',sans-serif;line-height:1.75}
.fp-guide:lang(zh-Hans) h1,.fp-guide:lang(zh-Hans) h2,.fp-guide:lang(zh-Hans) h3{font-family:inherit;letter-spacing:0;line-height:1.3}
.fp-guide:lang(zh-Hans) h1{font-size:clamp(2.3rem,4.3vw,3.7rem);max-width:13em}
.fp-guide:lang(zh-Hans) .eyebrow{letter-spacing:.04em}
@media(max-width:760px){.fp-guide:lang(zh-Hans) h1{font-size:clamp(2.15rem,8.7vw,3rem)}.fp-guide:lang(zh-Hans) .guide-body h2{font-size:1.8rem}}

/* SEOGEO-004: native CJK line breaking and balanced headings; inherited local fonts. */
.fp-guide:lang(zh-Hant){font-family:'FlowPocket Sans','PingFang TC','Microsoft JhengHei',sans-serif;line-height:1.75}
.fp-guide:lang(ja){font-family:'FlowPocket Sans','Hiragino Sans','Yu Gothic',sans-serif;line-height:1.8}
.fp-guide:lang(ko){font-family:'FlowPocket Sans','Apple SD Gothic Neo','Malgun Gothic',sans-serif;word-break:keep-all;overflow-wrap:anywhere;line-height:1.8}
.fp-guide:lang(zh-Hant) :is(h1,h2,h3),.fp-guide:lang(ja) :is(h1,h2,h3),.fp-guide:lang(ko) :is(h1,h2,h3){font-family:inherit;letter-spacing:0;line-height:1.35;text-wrap:balance;line-break:strict;word-break:normal}
.fp-guide:lang(ko) :is(h1,h2,h3){word-break:keep-all;overflow-wrap:normal}
.fp-guide:lang(zh-Hant) h1,.fp-guide:lang(ja) h1,.fp-guide:lang(ko) h1{max-width:none;font-size:clamp(2rem,4.3vw,3.5rem)}
.fp-guide :is(.guide-languages,.guide-toc){row-gap:6px}
.fp-guide:lang(de) :is(h1,h2,h3){hyphens:auto}
@media(max-width:760px){.fp-guide:lang(zh-Hant) h1,.fp-guide:lang(ja) h1,.fp-guide:lang(ko) h1{font-size:clamp(2rem,8vw,3rem)}}
