@font-face{font-family:Lora;src:url(/fonts/Lora-Variable.ttf) format("truetype");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Lora;src:url(/fonts/Lora-Italic-Variable.ttf) format("truetype");font-weight:400 700;font-style:italic;font-display:swap}:root{--red: #850600;--wine: #5e0d07;--char: #151719;--char-2: #1d2023;--ivory: #f6f1e8;--brown: #302a27;--brass: #c08a2e;--gold: #ffc636;--paper: #eac491;--ink-brown: #4a3016;--warm-gray: #7d7770;--bg: #f6f1e8;--bg-2: #efe7da;--surface: #fbf8f2;--ink: #2b2522;--ink-2: #4a423d;--muted: #655e57;--line: #ddd3c3;--line-2: #cbbfac;--thread: #a8140b;--thread-ink: #850600;--accent-2: #7a5c2c;--focus: #a52a35;--hl-gold: rgba(189, 154, 98, .28);--hl-red: rgba(165, 42, 53, .14);--hl-gray: rgba(125, 119, 112, .2);--shadow: 0 1px 2px rgba(40, 30, 20, .06), 0 8px 30px rgba(40, 30, 20, .08);--font-serif: "Lora", "Noto Serif", Georgia, "Times New Roman", serif;--font-ui: "Be Vietnam Pro", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-read: var(--font-serif);--reader-size: 20px;--reader-leading: 1.8;--reader-measure: 66ch;--r-1: 6px;--r-2: 12px;--r-3: 20px;--gutter: clamp(16px, 4vw, 40px);--top-h: 60px;--bottom-h: 56px;color-scheme:light}:root[data-theme=sepia]{--bg: #f1e5cf;--bg-2: #e8d9bd;--surface: #f6ecda;--ink: #3a2e24;--ink-2: #54453a;--muted: #6d5e50;--line: #d7c4a3;--line-2: #c6ae88;--hl-gold: rgba(160, 120, 60, .25)}:root[data-theme=dark]{--bg: #151719;--bg-2: #1c1f22;--surface: #1e2124;--ink: #e8e1d5;--ink-2: #cfc6b8;--muted: #a69e93;--line: #2e3236;--line-2: #3d4247;--thread: #d4525e;--thread-ink: #e7808a;--accent-2: #cfb07c;--focus: #e7808a;--hl-gold: rgba(189, 154, 98, .22);--hl-red: rgba(212, 82, 94, .2);--hl-gray: rgba(200, 190, 180, .14);--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 10px 30px rgba(0, 0, 0, .35);color-scheme:dark}:root[data-font=noto]{--font-read: "Noto Serif", "Lora", Georgia, serif}:root[data-font=sans]{--font-read: var(--font-ui)}*,*:before,*:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--top-h) + 16px)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}img,svg{max-width:100%}a{color:var(--thread-ink);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--thread)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2.5px solid var(--focus);outline-offset:2px;border-radius:4px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--thread);color:#fff;padding:10px 14px;border-radius:var(--r-1)}.skip:focus{top:10px;color:#fff}.muted{color:var(--muted)}.small{font-size:.86em}.center{text-align:center}kbd{font-family:var(--font-ui);font-size:.85em;border:1px solid var(--line-2);border-bottom-width:2px;border-radius:4px;padding:0 5px;background:var(--surface)}.pali{font-family:var(--font-serif);font-style:italic;color:var(--accent-2);margin:0}.eyebrow{font-family:var(--font-ui);font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--thread-ink);margin:0 0 10px}.display-1{font-family:var(--font-serif);font-weight:500;font-size:clamp(34px,5.4vw,60px);line-height:1.08;letter-spacing:-.01em;margin:0}.display-2{font-family:var(--font-serif);font-weight:500;font-size:clamp(28px,4vw,44px);line-height:1.15;margin:0 0 14px}.lede{font-size:18px;color:var(--ink-2);max-width:62ch}.lede p{margin:.4em 0}.note{color:var(--muted);font-size:14.5px;border-left:2px solid var(--line-2);padding:4px 0 4px 14px;max-width:72ch;margin:32px 0}.error,.warn{color:#8f222d;background:#a52a3514;border-radius:var(--r-1);padding:10px 14px}:root[data-theme=dark] .error,:root[data-theme=dark] .warn{color:#f0a2a9}.callout{background:var(--bg-2);border-radius:var(--r-2);padding:14px 18px;margin:12px 0 18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-weight:500;font-size:15px;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s}.btn:hover{border-color:var(--thread);color:var(--thread-ink)}.btn-primary{background:var(--red);border-color:var(--red);color:#fff}.btn-primary:hover{background:#8f222d;border-color:#8f222d;color:#fff}.btn-ghost{background:transparent;border-color:#f6f1e866;color:var(--ivory)}.btn-ghost:hover{border-color:var(--ivory);color:#fff}.btn-small{min-height:36px;padding:0 14px;font-size:14px}.btn-xl{min-height:58px;padding:0 34px;font-size:17px;letter-spacing:.04em;text-transform:uppercase}.btn-danger{background:#8f222d;color:#fff;border-color:#8f222d}.btn.is-done{border-color:var(--thread);color:var(--thread-ink)}.btn-row{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.icon-btn{display:inline-grid;place-items:center;min-width:44px;height:44px;padding:0 6px;border:0;background:transparent;border-radius:999px;cursor:pointer;color:inherit;text-decoration:none;font-size:20px;line-height:1}.icon-btn:hover{background:color-mix(in srgb,currentColor 10%,transparent);color:inherit}.link-btn{border:0;background:none;color:var(--thread-ink);cursor:pointer;padding:6px 4px;text-decoration:underline;text-underline-offset:3px;font-size:14px}.link-arrow{font-family:var(--font-ui);font-weight:500;text-decoration:none;display:inline-block;padding:10px 0}.link-arrow:after{content:" \2192"}.seg{display:inline-flex;flex-wrap:wrap;background:var(--bg-2);border-radius:999px;padding:3px;gap:2px}.seg button{border:0;background:transparent;padding:7px 14px;border-radius:999px;cursor:pointer;font-size:14px;min-height:36px;color:var(--ink-2)}.seg button[aria-checked=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0000001f;font-weight:600}.thread path,.page-head-thread path,.doc-thread path{fill:none;stroke:var(--thread);stroke-width:1.6;stroke-linecap:round;vector-effect:non-scaling-stroke}.site-header{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.site-header.on-dark{position:absolute;left:0;right:0;background:transparent;border-color:transparent;color:var(--ivory);-webkit-backdrop-filter:none;backdrop-filter:none}.site-header-inner{max-width:1280px;margin:0 auto;padding:0 var(--gutter);height:64px;display:flex;align-items:center;gap:20px}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:inherit;flex-shrink:0}.brand-name{font-family:var(--font-serif);font-size:19px;font-weight:600;letter-spacing:.02em}.site-header.on-dark .brand svg path,.site-header.on-dark .brand svg circle{stroke:#e05664}.site-header.on-dark .brand svg circle{fill:#e05664}.main-nav{margin-left:auto}.main-nav ul{list-style:none;display:flex;gap:4px;margin:0;padding:0}.main-nav a{display:block;padding:8px 12px;border-radius:999px;text-decoration:none;color:inherit;font-size:15px}.main-nav a:hover{background:color-mix(in srgb,currentColor 9%,transparent)}.main-nav a[aria-current=page]{color:var(--thread-ink);font-weight:600}.header-tools{display:flex;align-items:center;gap:2px}.nav-toggle{display:none}@media(max-width:900px){.nav-toggle{display:inline-grid}.main-nav{position:absolute;top:64px;left:0;right:0;background:var(--bg);color:var(--ink);border-bottom:1px solid var(--line);display:none;box-shadow:var(--shadow)}.site-header.nav-open .main-nav{display:block}.main-nav ul{flex-direction:column;padding:8px var(--gutter) 16px}.main-nav a{padding:12px;font-size:17px}.header-tools{margin-left:auto}}.site-footer{background:var(--char);color:#cfc7bb;margin-top:80px;position:relative}.footer-thread{position:absolute;top:-40px;left:0;width:100%;height:80px}.footer-inner{max-width:1280px;margin:0 auto;padding:64px var(--gutter) 48px;display:grid;grid-template-columns:1fr 2fr;gap:40px}.footer-title{font-family:var(--font-serif);font-size:26px;color:var(--ivory);margin:0 0 6px}.site-footer .muted{color:#a69e93}.footer-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:4px 20px;align-content:start}.footer-links a{color:#e6dfd3;text-decoration:none;padding:6px 0}.footer-links a:hover{color:#fff;text-decoration:underline}@media(max-width:760px){.footer-inner{grid-template-columns:1fr}}.home section{position:relative}.hero{min-height:max(640px,100svh);background:radial-gradient(120% 90% at 70% 30%,#232629 0%,var(--char) 55%,#0f1112 100%);color:var(--ivory);display:grid;align-items:center;overflow:hidden;padding:120px var(--gutter) 80px}.hero-thread{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero-thread-path{fill:none;stroke:#c7333f;stroke-width:2.2;stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(199,51,63,.45))}.hero-thread-echo{fill:none;stroke:#bd9a6238;stroke-width:1}.hero-inner{position:relative;max-width:1180px;width:100%;margin:0 auto;transform:translateY(calc(var(--hero-shift, 0) * -30px))}.kicker{font-size:13px;letter-spacing:.32em;text-transform:uppercase;color:var(--brass);margin:0 0 18px}.hero-title{font-family:var(--font-serif);font-weight:500;font-size:clamp(56px,11vw,148px);line-height:.95;letter-spacing:-.02em;margin:0}.hero-sub{font-family:var(--font-serif);font-style:italic;font-size:clamp(20px,2.6vw,30px);color:#e3d9c8;margin:18px 0 36px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.hero-actions .btn{min-height:52px;padding:0 28px;text-transform:uppercase;letter-spacing:.08em;font-size:14px}.continue{color:var(--brass);font-size:15px;padding:10px 6px}.continue:hover{color:#e8cf9f}.hero-search{margin-top:40px;max-width:560px;display:flex;align-items:center;gap:10px;background:#f6f1e812;border:1px solid rgba(246,241,232,.2);border-radius:999px;padding:6px 6px 6px 18px;color:#d9d0c2}.hero-search:focus-within{border-color:#f6f1e88c;background:#f6f1e81a}.hero-search input{flex:1;min-width:0;border:0;background:transparent;color:var(--ivory);font-size:16px;padding:10px 0;outline:none}.hero-search input::placeholder{color:#a8a093}.hero-search-btn{border:0;border-radius:999px;background:var(--ivory);color:var(--char);padding:10px 20px;font-weight:600;cursor:pointer}.hero-meta{margin-top:22px;color:#9e968a;font-size:14px}.scroll-cue{position:absolute;bottom:26px;left:50%;width:26px;height:42px;margin-left:-13px;border:1px solid rgba(246,241,232,.35);border-radius:20px}.scroll-cue span{position:absolute;left:50%;top:8px;width:2px;height:10px;margin-left:-1px;background:#c7333f;border-radius:2px;animation:cue 2.2s infinite}@keyframes cue{0%{transform:translateY(0);opacity:1}70%{transform:translateY(14px);opacity:0}to{opacity:0}}.questions{background:var(--char);color:var(--ivory);padding:clamp(80px,12vw,160px) var(--gutter)}.questions .eyebrow{color:var(--brass);text-align:center}.question-list{list-style:none;margin:40px auto 0;padding:0;max-width:980px}.question-list li{border-top:1px solid rgba(246,241,232,.12)}.question-list li:last-child{border-bottom:1px solid rgba(246,241,232,.12)}.question-list a{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:clamp(24px,4vw,44px) 0;color:var(--ivory);text-decoration:none}.question-list a:hover .q-text{color:#fff}.question-list a:hover .q-no{color:#e05664}.q-no{font-family:var(--font-serif);color:var(--brass);font-size:18px;padding-top:.5em;transition:color .3s}.q-text{font-family:var(--font-serif);font-size:clamp(24px,3.6vw,44px);line-height:1.25;color:#ece4d6;transition:color .3s}.questions-source{text-align:center;color:#9e968a;margin-top:36px;font-size:14px}.questions-source a{color:var(--brass)}.section-head{max-width:1180px;margin:0 auto 36px}.journey-map{padding:clamp(80px,10vw,130px) var(--gutter) 60px;background:var(--bg)}.thread-map-host{max-width:1180px;margin:0 auto}.journeys{padding:60px var(--gutter) 90px}.doctrines{padding:80px var(--gutter);background:var(--bg-2)}.library{padding:90px var(--gutter);background:var(--wine);color:var(--ivory)}.library .eyebrow{color:#e8c9a0}.library .lede{color:#eadfd0}.library-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:center}.library-search{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}.library-search input{flex:1 1 260px;min-height:52px;border-radius:999px;border:1px solid rgba(246,241,232,.35);background:#0000002e;color:var(--ivory);padding:0 22px;font-size:16px}.library-search input::placeholder{color:#d1bfb0}.library-search .btn-primary{background:var(--ivory);color:var(--wine);border-color:var(--ivory);min-height:52px}.library-stats{list-style:none;padding:0;margin:0;display:grid;gap:12px}.library-stats a{display:flex;align-items:baseline;gap:16px;padding:18px 22px;border:1px solid rgba(246,241,232,.2);border-radius:var(--r-2);color:var(--ivory);text-decoration:none;transition:background .2s}.library-stats a:hover{background:#0000002e;color:#fff}.library-stats strong{font-family:var(--font-serif);font-size:44px;font-weight:500;line-height:1}@media(max-width:860px){.library-inner{grid-template-columns:1fr}}.read-listen{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--line)}.rl-card{display:flex;flex-direction:column;gap:10px;padding:clamp(48px,7vw,90px) var(--gutter);text-decoration:none;color:var(--ink);background:var(--bg);transition:background .3s;min-height:320px;justify-content:flex-end}.rl-card:hover{background:var(--surface);color:var(--ink)}.rl-listen{background:var(--char);color:var(--ivory)}.rl-listen:hover{background:#1c1f22;color:var(--ivory)}.rl-listen .eyebrow{color:var(--brass)}.rl-title{font-family:var(--font-serif);font-size:clamp(26px,3.4vw,40px);line-height:1.15}.rl-text{max-width:44ch;color:inherit;opacity:.82}@media(max-width:760px){.read-listen{grid-template-columns:1fr}}.author{padding:clamp(80px,10vw,140px) var(--gutter);max-width:920px;margin:0 auto}.author .eyebrow{text-align:center}.author-quote{margin:26px 0;font-family:var(--font-serif);font-size:clamp(22px,2.8vw,32px);line-height:1.45;text-align:center;color:var(--ink)}.author-quote p{margin:0 0 .8em}.author-quote a{color:inherit;text-decoration:none}.author-quote a:hover{color:var(--thread-ink)}.author-quote.small{font-size:clamp(18px,2vw,22px);color:var(--ink-2);font-style:italic}.author-sign{text-align:center;font-family:var(--font-serif);font-size:20px;color:var(--thread-ink)}.author-sign:before{content:"";display:block;width:60px;height:1px;background:var(--thread);margin:0 auto 14px}.finale{background:var(--char);color:var(--ivory);padding:40px var(--gutter) 90px;text-align:center;overflow:hidden}.finale-thread{display:block;width:100%;height:160px;margin-bottom:20px}.finale-thread path{fill:none;stroke:#c7333f;stroke-width:2;stroke-linecap:round;vector-effect:non-scaling-stroke}.finale-dot{fill:none;stroke:#e05664;stroke-width:2;vector-effect:non-scaling-stroke}.all-chapters ol{list-style:none;padding:0;margin:56px auto 0;max-width:1180px;columns:4 220px;column-gap:28px;text-align:left}.all-chapters li{break-inside:avoid}.all-chapters a{display:flex;gap:10px;padding:5px 0;color:#cfc7bb;text-decoration:none;font-size:14.5px}.all-chapters a span{color:#7f786f;min-width:22px;font-variant-numeric:tabular-nums}.all-chapters a:hover{color:#fff}.reveal.pre{opacity:0;transform:translateY(16px);transition:opacity .9s ease,transform .9s ease}.reveal.pre.in{opacity:1;transform:none}.tm-bar{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;margin-bottom:14px}.tm-find input,.search-form input,.gl-filter input[type=search],.src-filter input,.top-search input,.findbar input{min-height:44px;border:1px solid var(--line-2);border-radius:999px;background:var(--surface);padding:0 18px;font-size:15px;width:100%}.tm-find{flex:1 1 220px;max-width:360px}.tm-count{margin:0;color:var(--muted);font-size:14px}.tm-stage{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-3);padding:10px 6px 6px}.tm-svg{display:block;width:100%;height:auto;overflow:visible}.tm-mobi{display:none}@media(max-width:700px){.tm-desk{display:none}.tm-mobi{display:block}}.tm-thread{fill:none;stroke:var(--thread);stroke-width:1.8;stroke-linecap:round;opacity:.85}.tm-jlabel{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;fill:var(--accent-2);font-family:var(--font-ui)}.tm-node{cursor:pointer;outline:none}.tm-hit{fill:transparent}.tm-dot{fill:var(--surface);stroke:var(--thread);stroke-width:1.6;transition:r .2s,fill .2s}.tm-arc{fill:none;stroke:var(--thread);stroke-width:4}.tm-num{font-size:11px;fill:var(--muted);font-family:var(--font-ui);font-variant-numeric:tabular-nums}.tm-node.done .tm-dot{fill:var(--thread)}.tm-node:hover .tm-dot,.tm-node:focus-visible .tm-dot,.tm-node.sel .tm-dot{fill:var(--thread);stroke-width:3}.tm-node:focus-visible .tm-hit{stroke:var(--focus);stroke-width:2}.tm-node.sel .tm-num,.tm-node:hover .tm-num{fill:var(--ink);font-weight:700}.tm-node.dim{opacity:.22}.tm-node.hit .tm-dot{stroke-width:3.5}.tm-hover{margin:6px 14px 8px;min-height:1.6em;color:var(--ink-2);font-size:15px}.tm-detail{min-height:8px}.tm-card{margin-top:16px;padding:22px 24px;border-radius:var(--r-2);background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--thread);box-shadow:var(--shadow)}.tm-card h3{font-family:var(--font-serif);font-size:28px;font-weight:500;margin:0}.tm-sub{font-family:var(--font-serif);font-style:italic;color:var(--ink-2);margin:4px 0 8px;font-size:18px}.tm-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}.tm-list{list-style:none;padding:0;margin:0;columns:2 380px;column-gap:28px}.tm-list li{break-inside:avoid}.tm-list a,.journey-list a{display:flex;gap:14px;align-items:baseline;padding:10px 6px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}.tm-list a:hover,.journey-list a:hover{background:var(--surface)}.tm-list strong,.journey-list strong{font-weight:600;display:block}.tm-list .muted,.journey-list .muted{display:block;font-size:14px}.num{font-family:var(--font-serif);color:var(--thread-ink);min-width:26px;font-variant-numeric:tabular-nums}.prog-badge{margin-left:auto;font-size:12px;color:var(--thread-ink);border:1px solid currentColor;border-radius:999px;padding:1px 8px;white-space:nowrap}.journey-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;align-items:start}.journey-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2);transition:border-color .2s,box-shadow .2s}.journey-card[open]{border-color:var(--thread);box-shadow:var(--shadow);grid-row:span 2}.journey-card summary{list-style:none;cursor:pointer;padding:20px 20px 22px;display:grid;gap:4px}.journey-card summary::-webkit-details-marker{display:none}.journey-card .motif{color:var(--thread);margin-bottom:8px}.journey-no{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.journey-title{font-family:var(--font-serif);font-size:21px;line-height:1.25}.journey-range{font-size:14px;color:var(--accent-2)}.journey-chapters{margin:0;padding:0 20px 18px 46px;font-size:15px}.journey-chapters a{display:block;padding:5px 0;text-decoration:none;color:var(--ink-2)}.journey-chapters a .num{display:none}.journey-chapters a:hover{color:var(--thread-ink)}.doctrine-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.doctrine-card{background:var(--surface);border-radius:var(--r-2);padding:24px 24px 18px;border:1px solid var(--line);display:flex;flex-direction:column;position:relative;overflow:hidden}.doctrine-card:before{content:"";position:absolute;left:0;top:0;width:3px;height:0;background:var(--thread);transition:height .45s ease}.doctrine-card:hover:before,.doctrine-card:focus-within:before{height:100%}.doctrine-card h3{font-family:var(--font-serif);font-size:25px;font-weight:500;margin:0 0 2px}.doctrine-def{color:var(--ink-2);margin:12px 0 16px;flex:1}.doctrine-ch{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.doctrine-ch a{font-size:13px;padding:3px 10px;border-radius:999px;background:var(--bg-2);color:var(--ink-2);text-decoration:none}.doctrine-ch a:hover{background:var(--thread);color:#fff}.doctrine-links{display:flex;gap:16px;margin:0;padding-top:12px;border-top:1px solid var(--line);font-size:14px;font-weight:500}.doctrine-links a{text-decoration:none;padding:4px 0}.page{max-width:1040px;margin:0 auto;padding:48px var(--gutter) 40px}.page-wide{max-width:1240px}.page-head{margin-bottom:40px}.page-head-thread{display:block;width:min(320px,70%);height:24px;margin-top:18px}.prose{max-width:70ch;font-size:18px}.prose h2{font-family:var(--font-serif);font-weight:500;font-size:28px;margin:1.6em 0 .4em}.facts{display:grid;gap:0;margin:0 0 30px;border-top:1px solid var(--line)}.facts div{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.facts dt{color:var(--muted)}.facts dd{margin:0}@media(max-width:640px){.facts div{grid-template-columns:1fr;gap:2px}}.link-list{padding-left:1.2em}.link-list li{padding:4px 0}.toc-group{font-family:var(--font-ui);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--thread-ink);margin:40px 0 8px}.toc-list{list-style:none;padding:0;margin:0}.toc-list>li{border-bottom:1px solid var(--line)}.toc-list>li>a{display:flex;gap:18px;align-items:baseline;padding:16px 8px 8px;text-decoration:none;color:var(--ink);position:relative}.toc-list.plain>li>a{padding-bottom:16px}.toc-list>li>a:before{content:"";position:absolute;left:-12px;top:18px;bottom:6px;width:2px;background:var(--line)}.toc-list>li>a.is-started:before{background:linear-gradient(var(--thread) calc(var(--pct) * 100%),var(--line) 0)}.toc-list>li>a.is-done:before{background:var(--thread)}.toc-list>li>a:hover .toc-title{color:var(--thread-ink)}.toc-num{font-family:var(--font-serif);font-size:26px;color:var(--thread-ink);min-width:40px;font-variant-numeric:tabular-nums}.toc-body{flex:1;display:grid}.toc-title{font-family:var(--font-serif);font-size:22px}.toc-sub{color:var(--muted);font-style:italic;font-family:var(--font-serif)}.toc-pg{color:var(--muted);font-size:13px;white-space:nowrap}.toc-part{margin:18px 0 0 8px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-2)}.toc-secs{padding:0 8px 14px 66px}.toc-secs summary{cursor:pointer;color:var(--muted);font-size:14px;padding:4px 0}.toc-secs ol{margin:6px 0 0;padding-left:1.2em;font-size:15px}.toc-secs a{color:var(--ink-2);text-decoration:none;display:block;padding:3px 0}.toc-secs a:hover{color:var(--thread-ink)}@media(max-width:640px){.toc-num{font-size:20px;min-width:30px}.toc-title{font-size:19px}.toc-pg{display:none}.toc-secs{padding-left:56px}}.journey-block{margin:0 0 56px}.journey-block-head{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-bottom:10px;color:var(--thread)}.journey-block-head h2{font-family:var(--font-serif);font-weight:500;font-size:30px;margin:0;color:var(--ink)}.journey-block-head .btn{margin-left:auto}.journey-list{list-style:none;padding:0;margin:0}.search-form{display:flex;gap:10px;flex-wrap:wrap}.search-form input{flex:1 1 280px;min-height:54px;font-size:18px}.search-form .btn{min-height:54px}.search-filters{display:flex;flex-wrap:wrap;gap:10px 18px;margin:14px 0 22px}.search-filters label{display:flex;gap:8px;align-items:center;font-size:14px;color:var(--muted)}.search-filters select,.fc-bar select,.gl-g select,.player select{min-height:40px;border-radius:var(--r-1);border:1px solid var(--line-2);background:var(--surface);padding:0 10px;max-width:72vw}.jump{display:inline-block;margin:0 0 18px;padding:12px 18px;border-radius:var(--r-2);background:var(--bg-2);text-decoration:none;font-weight:600}.jump:after{content:" \2192"}.sr-aside{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-2);margin-bottom:20px;background:var(--surface)}.sr-aside .tool-title{margin-top:0}.chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.chips a{display:inline-block;padding:5px 12px;border-radius:999px;background:var(--bg-2);text-decoration:none;color:var(--ink);font-size:14px}.chips a:hover{background:var(--thread);color:#fff}.sec-hits{list-style:none;padding:0;margin:0;font-size:14.5px}.sec-hits a{display:block;padding:4px 0;text-decoration:none;color:var(--ink)}.sec-hits .num{font-size:13px}.sr-count{color:var(--ink-2)}.ch-facets{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 18px}.ch-facets button{border:1px solid var(--line-2);background:var(--surface);border-radius:999px;padding:4px 12px;font-size:13.5px;cursor:pointer;min-height:34px}.ch-facets button span{color:var(--thread-ink);font-weight:600;margin-left:4px}.ch-facets button:hover{border-color:var(--thread)}.sr-list{list-style:none;padding:0;margin:0}.sr-item{display:block;padding:18px 4px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}.sr-item:hover{background:var(--surface)}.sr-where{margin:0 0 6px;font-size:14px;color:var(--muted)}.sr-ch{color:var(--thread-ink);font-weight:600;margin-right:4px}.sr-snippet{margin:0;font-family:var(--font-serif);font-size:17px;line-height:1.65}mark{background:var(--hl-gold);color:inherit;padding:0 2px;border-radius:3px;box-shadow:inset 0 -2px 0 var(--brass)}.gl-filter{position:sticky;top:64px;z-index:5;background:var(--bg);padding:14px 0 10px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto auto;gap:10px 14px;align-items:center}.gl-fav{font-size:14px;display:flex;gap:6px;align-items:center;white-space:nowrap}.gl-letters{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:2px}.gl-letters button{min-width:34px;min-height:34px;border:0;background:transparent;border-radius:6px;cursor:pointer;font-size:14px;color:var(--ink-2)}.gl-letters button[aria-pressed=true]{background:var(--thread);color:#fff}.gl-count{grid-column:1 / -1;margin:0;font-size:13.5px;color:var(--muted)}@media(max-width:760px){.gl-filter{grid-template-columns:1fr;position:static}}.gl-group{margin-top:44px}.gl-group-title{font-family:var(--font-serif);font-weight:500;font-size:28px;display:flex;gap:14px;align-items:baseline;border-bottom:1px solid var(--thread);padding-bottom:8px}.gl-group-title span{font-size:16px;color:var(--thread-ink);font-family:var(--font-ui)}.gl-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:0 32px}.gl-term{padding:16px 0;border-bottom:1px solid var(--line);scroll-margin-top:220px}.gl-term header{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}.gl-term h3{font-family:var(--font-serif);font-size:20px;font-weight:600;margin:0}.gl-def{margin:6px 0 8px;color:var(--ink-2)}.gl-foot{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:13.5px}.gl-foot summary{cursor:pointer;color:var(--muted)}.gl-occ{display:flex;flex-wrap:wrap;gap:4px 10px;margin:6px 0 0}.gl-occ a{text-decoration:none}.fav-term{border:1px solid var(--line-2);background:transparent;border-radius:999px;padding:2px 12px;cursor:pointer;font-size:13px;min-height:30px}.fav-term[aria-pressed=true]{border-color:var(--thread);color:var(--thread-ink)}.share-term{color:var(--muted);text-decoration:none}.flash{animation:flash 2.4s ease}@keyframes flash{0%,30%{background:var(--hl-gold)}to{background:transparent}}.src-filter{display:block;max-width:520px;margin-bottom:20px}.src-group h2{font-family:var(--font-serif);font-weight:500;font-size:26px;margin:36px 0 10px}.src-group ul{list-style:none;padding:0;margin:0}.src-entry{padding:14px 0 14px 22px;border-bottom:1px solid var(--line);position:relative}.src-entry:before{content:"";position:absolute;left:0;top:24px;width:10px;height:1.5px;background:var(--thread)}.src-entry p{margin:0;font-family:var(--font-serif);font-size:17.5px}.src-codes{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px!important}.src-codes a{font-family:var(--font-ui);font-size:12.5px;padding:2px 9px;border:1px solid var(--line-2);border-radius:999px;text-decoration:none;color:var(--ink-2)}.diagram-index{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}.diagram-index a{display:grid;gap:6px;padding:22px;border-radius:var(--r-2);border:1px solid var(--line);background:var(--surface);text-decoration:none;color:var(--ink);height:100%;transition:border-color .2s}.diagram-index a:hover{border-color:var(--thread)}.di-count{font-family:var(--font-serif);font-size:40px;line-height:1;color:var(--thread-ink)}.di-title{font-family:var(--font-serif);font-size:21px}.di-ch{font-size:13.5px;color:var(--muted)}.dg-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:12px}.dg-zoom{display:flex;align-items:center;gap:4px;font-size:14px;color:var(--muted)}.dg-mode-def{color:var(--ink-2);background:var(--bg-2);padding:10px 14px;border-radius:var(--r-1)}.dg-stage{overflow:auto;border:1px solid var(--line);border-radius:var(--r-3);background:var(--surface);padding:12px}.dg-zoomer{min-width:100%;transition:width .25s}.dg-svg{display:block;width:100%;height:auto;font-family:var(--font-ui)}.dg-ring{fill:none;stroke:var(--line-2);stroke-dasharray:2 6}.dg-thread{fill:none;stroke:var(--thread);stroke-width:1.5;opacity:.5}.dg-edge{fill:none;stroke:var(--thread);stroke-width:1.6}.dg-edge.cease{stroke:var(--muted);stroke-dasharray:4 5}.dg-arrowhead{fill:var(--thread)}.dg-center{font-family:var(--font-serif);font-size:26px;fill:var(--ink)}.dg-center-sub{font-size:13px;fill:var(--muted)}.dg-node{cursor:pointer;outline:none}.dg-node rect{fill:var(--bg);stroke:var(--thread);stroke-width:1.5;transition:fill .2s}.dg-node text{font-size:15px;fill:var(--ink);pointer-events:none}.dg-node:hover rect,.dg-node:focus-visible rect{fill:var(--hl-red);stroke-width:2.5}.dg-node.sel rect{fill:var(--thread)}.dg-node.sel text{fill:#fff;font-weight:600}.dg-col{font-family:var(--font-serif);font-size:17px;fill:var(--thread-ink)}.dg-col-line{stroke:var(--line-2);stroke-dasharray:2 5}.dg-detail{margin-top:16px;min-height:60px}.dg-card{padding:20px 24px;border-left:3px solid var(--thread);background:var(--surface);border-radius:var(--r-2);box-shadow:var(--shadow)}.dg-card h2{font-family:var(--font-serif);font-weight:500;margin:0;font-size:28px}.dg-ch{display:flex;flex-wrap:wrap;gap:8px}.dg-text{margin-top:20px}.dg-text summary{cursor:pointer;color:var(--muted)}.player{border:1px solid var(--line);border-radius:var(--r-2);background:var(--surface);padding:16px 18px;margin-bottom:16px}.player.mini{position:sticky;top:72px;z-index:6;box-shadow:var(--shadow)}.player-title{font-family:var(--font-serif);font-size:19px;margin:0 0 8px}.player-row{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}.player-row.small{font-size:14px;color:var(--ink-2);margin-top:10px}.player-row.small label{display:inline-flex;gap:6px;align-items:center}.play{width:52px;height:52px;border-radius:50%;border:0;background:var(--red);color:#fff;font-size:18px;cursor:pointer}.player-time{flex:1 1 220px;display:flex;gap:10px;align-items:center}.player-time input{flex:1;accent-color:var(--red)}.tnum{font-variant-numeric:tabular-nums;font-size:14px;color:var(--muted);white-space:nowrap}.playlist{list-style:none;padding:0;margin:0}.playlist li{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;padding:12px 6px;border-bottom:1px solid var(--line)}.playlist li.cur{background:var(--bg-2)}.pl-title{flex:1 1 260px;font-family:var(--font-serif);font-size:17px}.pl-none{font-size:13.5px;color:var(--muted);border:1px dashed var(--line-2);border-radius:999px;padding:2px 10px}.fc-bar{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;margin-bottom:18px}.fc-bar label{display:flex;gap:8px;align-items:center}.fc-card{display:grid;width:100%;min-height:300px;border:1px solid var(--line);border-radius:var(--r-3);background:var(--surface);cursor:pointer;padding:0;perspective:1200px;text-align:center;box-shadow:var(--shadow)}.fc-face{grid-area:1 / 1;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;padding:34px 28px;transition:opacity .35s,transform .45s}.fc-back{opacity:0;transform:rotateX(8deg);pointer-events:none}.fc-card.flipped .fc-front{opacity:0;transform:rotateX(-8deg)}.fc-card.flipped .fc-back{opacity:1;transform:none}.fc-term{font-family:var(--font-serif);font-size:clamp(30px,5vw,46px);line-height:1.15}.fc-term.small{font-size:22px}.fc-def{font-family:var(--font-serif);font-size:20px;max-width:46ch;line-height:1.55}.fc-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:16px}.tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--line);margin-bottom:22px}.tabs button{border:0;background:none;padding:12px 14px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--ink-2);min-height:44px}.tabs button[aria-selected=true]{border-color:var(--thread);color:var(--ink);font-weight:600}.stat-row{display:flex;flex-wrap:wrap;gap:14px}.stat{flex:1 1 160px;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2)}.stat strong{font-family:var(--font-serif);font-size:40px;font-weight:500;color:var(--thread-ink)}.stat span{color:var(--muted)}.corner-thread{width:100%;height:30px;margin:22px 0}.ct-track{stroke:var(--line-2);stroke-width:1.5}.ct-done{fill:var(--thread)}.ct-start{fill:var(--brass)}.corner-list{list-style:none;padding:0;margin:0 0 28px}.corner-list li{display:flex;gap:10px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.corner-list li>a{flex:1 1 300px;text-decoration:none;color:var(--ink)}.corner-list.notes li{display:block}.note-q{display:block;font-family:var(--font-serif);font-style:italic;color:var(--ink-2);text-decoration:none}.note-t{white-space:pre-wrap;margin:6px 0}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin:7px 6px 0 0;flex-shrink:0}.dot-red{background:var(--thread)}.dot-gold{background:var(--brass)}.dot-gray{background:var(--warm-gray)}.reader-body{background:var(--bg)}.reader{min-height:100vh}.reader-top{position:fixed;top:0;left:0;right:0;height:var(--top-h);z-index:30;display:flex;align-items:center;gap:6px;padding:0 10px;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);transition:transform .3s}.reader-top .brand-name{font-size:17px}.reader-top-title{flex:1;min-width:0;margin:0 0 0 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:14.5px}.reader-top-title span{color:var(--thread-ink);font-weight:600}.reader-top-tools{display:flex;align-items:center;gap:2px}.top-search{width:220px}.top-search input{min-height:38px;font-size:14px}@media(max-width:860px){.top-search,.reader-top-title{display:none}.reader-top .brand{margin-right:auto}}@media(max-width:400px){.reader-top .brand-name{display:none}}.reader-toc,.reader-tools{position:fixed;top:var(--top-h);bottom:var(--bottom-h);width:300px;overflow-y:auto;overscroll-behavior:contain;background:var(--bg);z-index:25;padding:14px 18px 30px;transition:transform .3s ease,visibility .3s;scrollbar-width:thin}.reader-toc{left:0;border-right:1px solid var(--line);transform:translate(-100%);visibility:hidden}.reader-tools{right:0;width:320px;border-left:1px solid var(--line);transform:translate(100%);visibility:hidden}.reader.toc-open .reader-toc,.reader.tools-open .reader-tools{transform:none;visibility:visible}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.panel-title{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0;font-weight:600}.toc-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--thread-ink);margin:18px 0 6px;font-weight:600}.toc-sections ol{margin:0;padding-left:1.3em;font-size:14.5px}.toc-sections a,.toc-front a{display:block;padding:5px 0;color:var(--ink-2);text-decoration:none;line-height:1.4}.toc-sections a:hover,.toc-front a:hover{color:var(--thread-ink)}.toc-sections a.cur{color:var(--thread-ink);font-weight:600}.toc-front{list-style:none;padding:0;margin:0;font-size:14.5px}.toc-front a[aria-current]{color:var(--thread-ink);font-weight:600}.toc-journeys details{border-bottom:1px solid var(--line)}.toc-journeys summary{cursor:pointer;padding:9px 0;font-size:14px;color:var(--ink);display:flex;gap:10px;align-items:baseline}.toc-j-no{color:var(--thread-ink);font-weight:700;font-size:12px;min-width:14px}.toc-journeys ol{list-style:none;margin:0 0 8px;padding:0}.toc-journeys a{display:flex;gap:8px;padding:4px 0 4px 4px;font-size:14px;color:var(--ink-2);text-decoration:none;line-height:1.35;border-left:2px solid transparent}.toc-journeys a .num{font-size:13px;min-width:22px}.toc-journeys a:hover{color:var(--thread-ink)}.toc-journeys a[aria-current=page]{border-left-color:var(--thread);color:var(--ink);font-weight:600;padding-left:8px}.reader-main{padding:calc(var(--top-h) + 40px) var(--gutter) calc(var(--bottom-h) + 60px);transition:padding .3s;outline:none}@media(min-width:1180px){:root:not([data-toc=closed]) .reader-toc,:root:not([data-tools=closed]) .reader-tools{transform:none;visibility:visible}:root:not([data-toc=closed]) .reader-main{padding-left:calc(300px + var(--gutter))}:root:not([data-tools=closed]) .reader-main{padding-right:calc(320px + var(--gutter))}}.book{max-width:var(--reader-measure);margin:0 auto;font-family:var(--font-read);font-size:var(--reader-size);line-height:var(--reader-leading);color:var(--ink)}.doc-head{text-align:center;margin:20px 0 56px}.doc-part{font-family:var(--font-ui);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);margin:0 0 22px}.doc-label{font-family:var(--font-ui);font-size:13px;letter-spacing:.3em;color:var(--thread-ink);margin:0 0 12px;font-weight:600}.doc-title{font-family:var(--font-serif);font-weight:500;font-size:clamp(36px,6vw,58px);line-height:1.1;margin:0;letter-spacing:-.01em}.doc-subtitle{font-family:var(--font-serif);font-style:italic;font-size:clamp(19px,2.4vw,24px);color:var(--ink-2);margin:14px 0 0;line-height:1.4}.doc-thread{width:200px;height:20px;margin:26px auto 14px;display:block}.doc-meta{font-family:var(--font-ui);font-size:13.5px;color:var(--muted);display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;margin:0;line-height:1.5}.doc-meta a{color:var(--muted)}.doc-section{margin-top:3.2em}.sec-title{font-family:var(--font-serif);font-weight:600;font-size:1.22em;line-height:1.35;margin:0 0 1em;position:relative}.sec-title .anchor{position:absolute;left:-1.2em;color:var(--line-2);text-decoration:none;opacity:0;font-weight:400}.sec-title:hover .anchor,.sec-title .anchor:focus{opacity:1}.para{margin:0 0 1.05em;position:relative;text-align:left;-webkit-hyphens:manual;hyphens:manual;border-radius:4px;transition:background .3s}.para.first .ptext:first-letter{font-size:1.1em;font-weight:600}.pmenu{position:absolute;left:-46px;top:.2em;width:34px;height:34px;border-radius:50%;border:0;background:transparent;color:var(--muted);cursor:pointer;display:grid;place-items:center;opacity:0;transition:opacity .2s,background .2s}.pmenu svg{fill:currentColor}.para:hover .pmenu,.pmenu:focus-visible,.para.menu-open .pmenu,.para.touched .pmenu{opacity:1}.pmenu:hover{background:var(--bg-2);color:var(--thread-ink)}.para.bm:before{content:"";position:absolute;left:-14px;top:.35em;bottom:.35em;width:2.5px;border-radius:2px;background:var(--thread)}.para.has-note .ptext:after{content:"\270e";font-family:var(--font-ui);font-size:.7em;color:var(--accent-2);margin-left:6px;vertical-align:super}.para.fav .ptext:before{content:"\2665  ";font-family:var(--font-ui);font-size:.6em;color:var(--thread);vertical-align:.3em}.para.hl-gold{background:var(--hl-gold);box-shadow:0 0 0 6px var(--hl-gold)}.para.hl-red{background:var(--hl-red);box-shadow:0 0 0 6px var(--hl-red)}.para.hl-gray{background:var(--hl-gray);box-shadow:0 0 0 6px var(--hl-gray)}.para.flash{animation:flash 3s ease}.para:focus{outline:none}.para:focus-visible{outline:2px dashed var(--line-2);outline-offset:6px}@media(max-width:1023px){.pmenu{left:auto;right:-10px;top:-30px;background:var(--surface);box-shadow:var(--shadow)}.para.bm:before{left:-10px}.sec-title .anchor{position:static;margin-left:.35em}}@media(hover:none)and (min-width:1024px){.pmenu{opacity:.55}}.term{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:help;text-decoration:underline dotted var(--accent-2);text-decoration-thickness:1.5px;text-underline-offset:4px}.term:hover,.term:focus-visible{color:var(--thread-ink)}mark.find{background:var(--hl-gold)}mark.find.cur{background:var(--brass);color:#1b1612}mark.q{background:var(--hl-gold)}.signature{text-align:right;font-style:italic;color:var(--thread-ink);font-size:1.1em}.doc-end{margin:70px 0 20px;text-align:center;font-family:var(--font-ui)}.doc-end-thread{width:220px;height:34px;display:block;margin:0 auto 6px}.doc-end-thread path{fill:none;stroke:var(--thread);stroke-width:1.6;stroke-linecap:round}.doc-end-thread circle{fill:var(--thread)}.doc-end-label{color:var(--muted);font-size:14px;letter-spacing:.1em;text-transform:uppercase;margin:0}.done-row{margin:18px 0;min-height:36px}.next-card{display:block;margin:30px auto 0;max-width:460px;padding:22px 26px;border:1px solid var(--line);border-radius:var(--r-2);text-decoration:none;color:var(--ink);background:var(--surface);transition:border-color .2s,transform .2s}.next-card:hover{border-color:var(--thread);transform:translateY(-2px);color:var(--ink)}.next-title{display:block;font-family:var(--font-serif);font-size:26px}.reader-bottom{position:fixed;left:0;right:0;bottom:0;height:var(--bottom-h);z-index:30;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:0 8px;padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb,var(--bg) 94%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);transition:transform .3s}.nav-prev,.nav-next{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;padding:0 12px;border-radius:999px;text-decoration:none;color:var(--ink);font-size:14.5px}.nav-prev:hover,.nav-next:hover{background:var(--bg-2);color:var(--thread-ink)}.nav-prev span[aria-hidden],.nav-next span[aria-hidden]{font-size:24px;line-height:1;color:var(--thread)}.progress{display:flex;align-items:center;gap:12px;min-width:0}.progress svg{flex:1;height:12px;min-width:0}.progress-track{stroke:var(--line-2);stroke-width:2;vector-effect:non-scaling-stroke}.progress-fill{stroke:var(--thread);stroke-width:3;stroke-dasharray:1 2;stroke-dashoffset:1}.progress-label{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;min-width:3.2em;text-align:right}@media(max-width:520px){.nav-text{display:none}}.tool-block{padding:14px 0 18px;border-bottom:1px solid var(--line)}.tool-title{font-family:var(--font-ui);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--thread-ink);margin:12px 0 10px;font-weight:600}.tool-hint{font-size:14px;color:var(--muted);margin:0 0 10px;line-height:1.5}.tool-links{margin:0;padding-left:1.1em;font-size:14.5px}.tool-links a{display:block;padding:3px 0}.tool-foot{font-size:13.5px;color:var(--muted);margin-top:18px}.settings .seg{margin-bottom:10px;width:100%}.settings .seg button{flex:1;padding:7px 8px;font-size:13px}.seg button[data-font=lora]{font-family:Lora,serif}.seg button[data-font=noto]{font-family:"Noto Serif",serif}.range{display:grid;gap:4px;margin:10px 0;font-size:14px}.range span{display:flex;justify-content:space-between;color:var(--ink-2)}.range output{color:var(--muted);font-variant-numeric:tabular-nums}.range input{width:100%;accent-color:var(--red);min-height:30px}.term-chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.term-chip{border:1px solid var(--line-2);background:var(--surface);border-radius:999px;padding:4px 10px;font-size:13.5px;cursor:pointer;min-height:32px}.term-chip span{color:var(--muted);font-size:11.5px;margin-left:5px}.term-chip:hover{border-color:var(--thread)}.mini-list{list-style:none;padding:0;margin:0 0 10px;font-size:14px}.mini-list li{padding:6px 0;border-bottom:1px dashed var(--line)}.mini-list a{color:var(--ink-2);text-decoration:none;display:flex;gap:4px}.mini-list.notes a{display:block}.panel-overlay{position:fixed;inset:0;background:#0a0a0a66;z-index:24;opacity:0;pointer-events:none;transition:opacity .3s}.panel-overlay.show{opacity:1;pointer-events:auto}@media(min-width:1180px){.panel-overlay,.panel-close{display:none}}@media(max-width:1179px){.reader-toc,.reader-tools{box-shadow:var(--shadow);width:min(88vw,360px)}}@media(max-width:640px){.reader-tools{inset:auto 0 0;width:100%;max-height:78vh;border-radius:18px 18px 0 0;border-left:0;transform:translateY(100%);z-index:35;padding-bottom:40px}.reader-toc{width:88vw;bottom:0;z-index:35}}.pmenu-pop{position:absolute;z-index:50;min-width:230px;max-width:calc(100vw - 16px);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-2);box-shadow:var(--shadow);padding:6px;font-family:var(--font-ui);font-size:15px}.pmenu-pop>button{display:block;width:100%;text-align:left;border:0;background:none;padding:10px 12px;border-radius:8px;cursor:pointer;min-height:42px}.pmenu-pop>button:hover,.pmenu-pop>button:focus-visible{background:var(--bg-2)}.pmenu-pop>button[aria-pressed=true]{color:var(--thread-ink)}.pmenu-hl{display:flex;align-items:center;gap:8px;padding:6px 12px}.pmenu-hl span{flex:1}.sw{width:30px;height:30px;border-radius:50%;border:2px solid transparent;cursor:pointer}.sw[aria-checked=true]{border-color:var(--ink)}.sw-gold{background:#d9c08f}.sw-red{background:#e3a1a7}.sw-gray{background:#c8c2ba}.pmenu-info{margin:4px 12px 6px;font-size:12px;color:var(--muted)}.note-dialog{border:0;border-radius:var(--r-3);padding:24px;width:min(560px,94vw);background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.note-dialog::backdrop{background:#0a0a0a73}.note-quote{margin:0 0 12px;padding-left:12px;border-left:2px solid var(--thread);font-family:var(--font-serif);font-style:italic;color:var(--ink-2);font-size:15px}.note-dialog textarea{width:100%;border:1px solid var(--line-2);border-radius:var(--r-1);background:var(--bg);padding:12px;font-size:16px;resize:vertical}.note-actions{display:flex;gap:8px;align-items:center;margin-top:12px}.note-actions span{flex:1}.btn-ghost-dark{background:transparent;border-color:transparent;color:var(--muted)}.keys{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:0 0 18px}.keys dt{font-family:var(--font-ui);font-weight:700;color:var(--thread-ink)}.keys dd{margin:0}.findbar{position:fixed;top:calc(var(--top-h) + 8px);left:50%;transform:translate(-50%);z-index:31;display:flex;align-items:center;gap:4px;background:var(--surface);border:1px solid var(--line-2);border-radius:999px;padding:4px 6px 4px 4px;box-shadow:var(--shadow);width:min(480px,calc(100vw - 16px))}.findbar input{border:0;min-height:40px;background:transparent}.find-count{font-size:13px;color:var(--muted);white-space:nowrap;min-width:4em;text-align:right}.term-pop{position:fixed;z-index:60;background:var(--surface);color:var(--ink);border:1px solid var(--line-2);border-top:3px solid var(--thread);border-radius:var(--r-2);box-shadow:var(--shadow);padding:16px 18px;font-family:var(--font-ui);outline:none}.term-pop.sheet{left:0;right:0;bottom:0;border-radius:18px 18px 0 0;padding-bottom:calc(20px + env(safe-area-inset-bottom))}.term-pop-name{font-family:var(--font-serif);font-size:22px;margin:0}.term-pop-def{margin:8px 0;line-height:1.55}.term-pop-src{font-size:12px;color:var(--muted);margin:0 0 6px}.term-pop-actions{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:14px}#toasts{position:fixed;left:50%;bottom:calc(var(--bottom-h) + 14px);transform:translate(-50%);z-index:70;display:grid;gap:8px;width:max-content;max-width:calc(100vw - 24px)}.toast{background:#24282b;color:#f3ede3;border-radius:999px;padding:10px 10px 10px 18px;font-size:14.5px;display:flex;gap:12px;align-items:center;box-shadow:0 8px 26px #00000040;transition:opacity .35s,transform .35s}.toast button{border:0;border-radius:999px;background:var(--red);color:#fff;padding:6px 14px;cursor:pointer}.toast.out{opacity:0;transform:translateY(8px)}body.focus-mode .reader-toc,body.focus-mode .reader-tools,body.focus-mode .panel-overlay{display:none}body.focus-mode .reader-top{transform:translateY(-100%)}body.focus-mode .reader-top:hover,body.focus-mode .reader-top:focus-within{transform:none}body.focus-mode .reader-bottom{transform:translateY(70%)}body.focus-mode .reader-bottom:hover,body.focus-mode .reader-bottom:focus-within{transform:none}body.focus-mode .reader-main{padding-left:var(--gutter)!important;padding-right:var(--gutter)!important}body.focus-mode .pmenu,body.focus-mode .term{text-decoration-color:transparent}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.scroll-cue span{animation:none}}@media print{.reader-top,.reader-bottom,.reader-toc,.reader-tools,.pmenu,.site-header,.site-footer,.doc-end{display:none!important}.reader-main{padding:0!important}.book{max-width:none;font-size:12pt}}.is-home .site-footer{margin-top:0}.is-home .footer-thread{display:none}.rl-read{padding-left:max(var(--gutter),calc(50vw - 590px))}.rl-listen{padding-right:max(var(--gutter),calc(50vw - 590px))}@media(max-width:700px){.hero-thread{opacity:.55}.hero{padding-top:100px}}.is-home{background:#f3e3c6}.site-header.on-paper{position:absolute;left:0;right:0;background:transparent;border-color:transparent;color:var(--ink-brown);-webkit-backdrop-filter:none;backdrop-filter:none}.site-header.on-paper .main-nav a{color:#4a3016}.site-header.on-paper .main-nav a:hover{background:#85060014;color:var(--red)}.site-header.on-paper .brand-name{color:var(--red)}.hero{background:#eac491;color:var(--ink-brown);isolation:isolate;min-height:max(680px,100svh);padding:110px var(--gutter) 34vh;align-items:start}.hero-paper{position:absolute;inset:0;z-index:-3;background:#eac491 url(/images/paper-tile.webp) center top / 2400px 380px repeat}.hero-paper:after{content:"";position:absolute;inset:0;background:radial-gradient(130% 90% at 50% 40%,#fff0d700 55%,#78461938)}.hero-band{position:absolute;z-index:-2;right:0;bottom:0;width:max(140vw,1000px);aspect-ratio:2870 / 548;transform:translateY(calc(var(--hero-shift, 0) * 50px));-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 38%);mask-image:linear-gradient(to bottom,transparent 0%,#000 38%)}.hero-band img{display:block;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:10%;z-index:-1;background:linear-gradient(to bottom,#f3e3c600,#f3e3c6);pointer-events:none}.hero-inner{z-index:1;padding-top:2vh}.kicker{color:var(--red);font-weight:600;letter-spacing:.4em}.hero-title{margin:0;line-height:0;text-shadow:none}.hero-lockup{width:min(760px,100%);height:auto;filter:drop-shadow(0 6px 14px rgba(90,40,10,.18))}.hero-sub{color:#5b3a1a;font-size:clamp(20px,2.4vw,28px);margin:18px 0 30px}.hero-actions .btn-primary{background:var(--red);border-color:var(--red);box-shadow:0 6px 18px #85060040}.hero-actions .btn-primary:hover{background:#a8140b;border-color:#a8140b}.hero .btn-ghost{color:var(--ink-brown);border-color:#4a301673;background:#fff6e459}.hero .btn-ghost:hover{border-color:var(--red);color:var(--red)}.hero-search{background:#fff8eab8;border-color:#85060038;color:#6a4a28;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hero-search:focus-within{background:#fffaf0eb;border-color:var(--red)}.hero-search input{color:var(--ink-brown)}.hero-search input::placeholder{color:#8a6a48}.hero-search-btn{background:var(--red);color:#fff3dc}.hero-meta{color:#6a4a28}.continue{color:var(--red);font-weight:600}.continue:hover{color:#a8140b}.scroll-cue{border-color:#4a301666}.scroll-cue span{background:var(--red)}.hero.enter .hero-band{animation:band-in 2.6s cubic-bezier(.6,.05,.2,1) both}.hero.enter .hero-lockup{animation:lockup-in 1.4s cubic-bezier(.2,.7,.2,1) both}.hero.enter .hero-sub,.hero.enter .hero-actions,.hero.enter .hero-search,.hero.enter .hero-meta,.hero.enter .kicker{animation:fade-up 1s ease both;animation-delay:.5s}@keyframes band-in{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes lockup-in{0%{opacity:0;transform:translateY(14px) scale(.985);filter:blur(4px) drop-shadow(0 6px 14px rgba(90,40,10,0))}to{opacity:1;transform:none}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.questions{background:#f3e3c6 url(/images/paper-tile.webp) center / 2400px 380px repeat;color:var(--ink-brown);overflow:hidden}.questions:before{content:"";position:absolute;inset:0;background:#f3e3c68c;pointer-events:none}.questions>*{position:relative}.questions .eyebrow{color:var(--red)}.question-list li,.question-list li:last-child{border-color:#8506002e}.question-list a{color:var(--ink-brown)}.q-text{color:#3d2712}.question-list a:hover .q-text{color:var(--red)}.q-no{color:var(--red);font-weight:600}.question-list a:hover .q-no{color:#a8140b}.questions-source{color:#6a4a28}.questions-source a{color:var(--red)}.q-thread{position:absolute;left:max(16px,calc(50% - 560px));top:120px;width:40px;height:calc(100% - 210px);pointer-events:none}.q-thread path{fill:none;stroke:#b0170d;stroke-width:2.2;vector-effect:non-scaling-stroke;stroke-dasharray:1 1;stroke-dashoffset:1;filter:drop-shadow(0 1px 1px rgba(90,10,0,.35));transition:stroke-dashoffset .15s linear}@media(max-width:760px){.q-thread{left:2px}.question-list a{grid-template-columns:40px 1fr}}.is-home .journey-map,.is-home .journeys{background:#f7ecd8}.is-home .doctrines{background:#efdcb9}.is-home .tm-stage,.is-home .journey-card,.is-home .doctrine-card{background:#fbf4e6;border-color:#e3cda6}.tm-thread{stroke:#b0170d;stroke-width:2.2}.library{background:var(--red)}.library .eyebrow{color:var(--gold)}.library-search .btn-primary{background:var(--gold);border-color:var(--gold);color:#4a1a00}.rl-read{background:#f7ecd8}.rl-listen{background:#4a3016}.rl-listen .eyebrow{color:var(--gold)}.is-home .author{background:transparent}.finale{background:var(--red)}.finale-thread path{stroke:var(--gold)}.finale-dot{stroke:var(--gold)}.finale .btn-primary{background:var(--gold);border-color:var(--gold);color:#4a1a00}.finale .btn-primary:hover{background:#ffd56a;color:#4a1a00}.all-chapters a{color:#ffe9c4}.all-chapters a span{color:#f0b37a}.site-footer{background:#2b1a0c}.tm-svg.draw-pending .tm-thread{stroke-dasharray:1 1;stroke-dashoffset:1}.tm-svg.draw-pending .tm-node{opacity:0}.tm-svg.drawn .tm-thread{animation:draw-line 3.2s cubic-bezier(.5,0,.2,1) forwards}.tm-svg.drawn .tm-node{animation:node-in .5s ease forwards;animation-delay:calc(var(--i, 0) * 30ms)}@keyframes draw-line{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes node-in{0%{opacity:0}to{opacity:1}}.finale-thread.draw-pending path{stroke-dasharray:1 1;stroke-dashoffset:1}.finale-thread.draw-pending circle{opacity:0}.finale-thread.drawn path{animation:draw-line 2.4s cubic-bezier(.5,0,.2,1) forwards}.finale-thread.drawn circle{animation:node-in .6s ease 2.2s forwards,dot-breathe 3.6s ease-in-out 2.8s infinite}@keyframes dot-breathe{0%,to{opacity:1}50%{opacity:.35}}@media(max-width:700px){.hero{padding:92px var(--gutter) 230px}.hero-band{width:1000px;right:-40px}.hero-actions .btn{width:100%}}@media(prefers-reduced-motion:reduce){.hero-band,.hero-lockup,.hero-sub,.hero-actions,.hero-search,.hero-meta,.kicker{animation:none!important;transform:none!important}}@media(min-width:701px){.hero{min-height:max(700px,100svh);padding-bottom:calc(100vw * 548 / 2870 * .62)}.hero-band{width:100vw;min-width:1000px}}.is-home .scroll-cue{display:none}.tm-stage{position:relative;overflow:hidden;border:0;border-radius:var(--r-3);padding:26px 10px 8px;background:#f1dcb5 url(/images/paper-tile.webp) center / 2400px 380px;box-shadow:inset 0 0 0 1px #8506001f,inset 0 0 60px #78461929}.is-home .tm-stage{background-color:#f1dcb5}.tm-stage:before{content:"";position:absolute;right:0;bottom:0;width:min(46%,520px);aspect-ratio:690 / 488;pointer-events:none;opacity:.55;background:url(/images/mountains.webp) right bottom / contain no-repeat;-webkit-mask-image:linear-gradient(to left,#000 45%,transparent),linear-gradient(to top,#000 60%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to left,#000 45%,transparent);mix-blend-mode:multiply}.tm-svg{position:relative}.tm-thread{fill:none;stroke:#a8140b;stroke-width:3.4;stroke-linecap:round;opacity:1}.tm-yarn-twist{fill:none;stroke:#e2584a;stroke-width:1.3;stroke-linecap:round;stroke-dasharray:2.2 4.2;opacity:.7}.tm-svg.draw-pending .tm-yarn-twist{opacity:0}.tm-svg.drawn .tm-yarn-twist{animation:node-in .8s ease 2.6s both}.tm-jroman{font-family:var(--font-serif);font-size:15px;font-style:italic;fill:#850600;font-weight:600}.tm-jlabel{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;fill:#8a6430;font-family:var(--font-ui)}.tm-halo{fill:none;stroke:transparent;stroke-width:1.4;transition:stroke .2s,r .2s}.tm-dot{fill:#850600;stroke:#f6e3bf;stroke-width:1.6;transition:fill .2s,r .2s}.tm-shine{fill:#ffdcc88c;pointer-events:none}.tm-node.jstart .tm-dot{stroke:#c08a2e;stroke-width:2}.tm-node.done .tm-dot{fill:#ffc636;stroke:#a8140b}.tm-node.done .tm-shine{fill:#fff9}.tm-arc{fill:none;stroke:#c08a2e;stroke-width:2.2;stroke-linecap:round}.tm-node:hover .tm-dot,.tm-node:focus-visible .tm-dot,.tm-node.sel .tm-dot{r:8;fill:#a8140b}.tm-node:hover .tm-halo,.tm-node:focus-visible .tm-halo,.tm-node.sel .tm-halo{stroke:#a8140b73;r:14}.tm-node.done:hover .tm-dot,.tm-node.done.sel .tm-dot{fill:#ffd56a}.tm-node:focus-visible .tm-hit{stroke:none}.tm-num{font-size:10.5px;fill:#7a5a34;font-family:var(--font-ui);font-variant-numeric:tabular-nums;font-weight:500}.tm-node.jstart .tm-num{fill:#850600;font-weight:700}.tm-node.sel .tm-num,.tm-node:hover .tm-num{fill:#850600}.tm-node.hit .tm-dot{r:8;fill:#a8140b}.tm-node.dim{opacity:.2}.tm-tip{pointer-events:none}.tm-tip rect{fill:#fff8ea;stroke:#85060040;filter:drop-shadow(0 4px 10px rgba(80,40,10,.18))}.tm-tip text{font-family:var(--font-serif);font-size:15px;fill:#3d2712}.tm-tip .tm-tip-n{fill:#850600;font-family:var(--font-ui);font-weight:700;font-size:13px}.tm-hover{color:#6a4a28;font-size:14px;font-style:italic;font-family:var(--font-serif);margin:4px 14px 10px;position:relative}.tm-card{background:#fff8ea;border-left-color:#850600}.tm-card h3{color:#3d2712}:root[data-theme=dark] .tm-stage{background-color:#2a2420;background-blend-mode:multiply}.tm-stage:before{-webkit-mask-image:radial-gradient(ellipse 100% 100% at 100% 100%,#000 35%,transparent 72%);mask-image:radial-gradient(ellipse 100% 100% at 100% 100%,#000 35%,transparent 72%);-webkit-mask-composite:source-over}.knot-cord{stroke:#850600}.knot-twist{stroke:#e2584a;opacity:.65}:root[data-theme=dark] .knot-cord{stroke:#d4525e}.brand-knot{overflow:visible;filter:drop-shadow(0 1px 1px rgba(90,20,5,.3))}.site-header.on-dark .knot-cord{stroke:#e05664}.knot-divider{display:block;overflow:visible;max-width:100%;height:auto}.kd-line{fill:none;stroke:#a8140b;stroke-width:1.8;stroke-linecap:round}.knot-divider .knot{filter:drop-shadow(0 1.5px 1px rgba(90,20,5,.3))}.sec-knot{margin:6px 0 16px;width:220px}.center-knot{margin:26px auto 8px}.page-head-knot{margin-top:16px;width:260px}.doc-knot{margin:22px auto 14px;width:220px}.doc-end-thread{width:230px;overflow:visible}.author-sign:before{display:none}.tm-dot{fill:#f6e3bf;stroke:none}.tm-knot .knot-cord{stroke:#850600}.tm-node.jstart .tm-dot{fill:#ffe6a8;stroke:#c08a2e;stroke-width:1.2}.tm-node.done .tm-dot{fill:#ffc636;stroke:#a8140b;stroke-width:1}.tm-node.done .tm-knot .knot-cord{stroke:#7a3a00}.tm-node:hover .tm-dot,.tm-node:focus-visible .tm-dot,.tm-node.sel .tm-dot,.tm-node.hit .tm-dot{r:15;fill:#850600}.tm-node:hover .knot-cord,.tm-node:focus-visible .knot-cord,.tm-node.sel .knot-cord,.tm-node.hit .knot-cord{stroke:#ffe6a8}.tm-node:hover .knot-twist,.tm-node.sel .knot-twist{opacity:0}.tm-node .knot{transition:transform .25s}.tm-node:hover .knot,.tm-node.sel .knot{transform:rotate(45deg) scale(1.25)}.tm-node.done:hover .tm-dot,.tm-node.done.sel .tm-dot{fill:#ffc636}.tm-node.done:hover .knot-cord,.tm-node.done.sel .knot-cord{stroke:#850600}.finale-dot .knot-cord{stroke:var(--gold)}.finale-dot .knot-twist{stroke:#fff2c4}:root{--ann-gold: rgba(192, 138, 46, .3);--ann-red: rgba(168, 20, 11, .16);--ann-green: rgba(89, 104, 91, .24);--ann-gray: rgba(125, 119, 112, .22)}:root[data-theme=dark]{--ann-gold: rgba(220, 170, 80, .28);--ann-red: rgba(230, 100, 90, .24);--ann-green: rgba(140, 170, 145, .26);--ann-gray: rgba(200, 190, 180, .18)}mark.ann{color:inherit;padding:.06em 0;border-radius:2px;cursor:pointer;box-shadow:none;background:transparent}mark.ann-gold{background:var(--ann-gold)}mark.ann-red{background:var(--ann-red)}mark.ann-green{background:var(--ann-green)}mark.ann-gray{background:var(--ann-gray)}mark.ann-none{background:transparent;text-decoration:underline wavy var(--accent-2);text-decoration-thickness:1px;text-underline-offset:5px}mark.ann-note.ann-end:after{content:"\270e";font-family:var(--font-ui);font-size:.66em;color:var(--accent-2);margin-left:3px;vertical-align:super}mark.ann:focus-visible{outline:2px solid var(--focus);outline-offset:2px}mark.ann.flash{animation:flash 2.4s ease}.para.hl-green{background:var(--ann-green);box-shadow:0 0 0 6px var(--ann-green)}.sw-green{background:#9fae9f}.sw-none{background:transparent;border:1px dashed var(--line-2)!important;color:var(--muted);font-size:13px}.dot-green{background:#59685b}.sel-bar{position:absolute;z-index:55;display:flex;align-items:center;gap:4px;padding:6px;background:var(--surface);border:1px solid var(--line-2);border-radius:999px;box-shadow:var(--shadow);font-family:var(--font-ui)}.sel-bar .sw{width:32px;height:32px}.sel-btn{border:0;background:transparent;padding:0 12px;min-height:36px;border-radius:999px;cursor:pointer;font-size:14px;color:var(--ink)}.sel-btn:hover,.sel-btn:focus-visible{background:var(--bg-2)}.ann-colors{display:flex;gap:8px;margin:0 0 12px}.ann-colors .sw{width:34px;height:34px}.note-meta{margin:6px 0 0}.notebook .nb-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:8px}.nb-q{flex:1 1 280px}.nb-q input{width:100%;min-height:44px;border:1px solid var(--line-2);border-radius:999px;background:var(--surface);padding:0 18px}.notebook .seg button{display:inline-flex;align-items:center;gap:4px}.notebook .seg .dot{margin:0;width:9px;height:9px}.nb-group{margin-top:18px}.nb-ch{font-family:var(--font-serif);font-weight:500;font-size:21px;border-bottom:1px solid var(--thread);padding-bottom:6px;margin:0 0 4px}.nb-edit textarea{width:100%;border:1px solid var(--line-2);border-radius:var(--r-1);background:var(--bg);padding:10px}.mini-list .note-q .dot{margin-top:0;width:8px;height:8px}.nl-note{background:var(--bg-2);border-left:3px solid var(--accent-2);padding:10px 14px;border-radius:var(--r-1);color:var(--ink-2);font-size:15px}.nl-note mark{margin:0 2px}.dg-chain{background:var(--bg-2);border-radius:var(--r-1);padding:8px 12px;font-size:15px}.dg-evidence{margin-top:28px}.ev{margin:0 0 18px;padding:14px 18px;border-left:3px solid var(--thread);background:var(--surface);border-radius:var(--r-1)}.ev blockquote{margin:8px 0;font-family:var(--font-serif);font-size:17px;line-height:1.6}.ev blockquote p{margin:0}.ev-src{padding-left:1.2em}.ev-src li{padding:4px 0}.ref-btn{position:absolute;right:-54px;top:.25em;font-family:var(--font-ui);font-size:11.5px;letter-spacing:.04em;text-decoration:none;color:var(--accent-2);border:1px solid var(--line-2);border-radius:999px;padding:3px 8px;background:var(--surface)}.ref-btn:hover,.ref-btn:focus-visible{color:var(--thread-ink);border-color:var(--thread)}@media(max-width:1100px){.ref-btn{position:static;display:inline-block;margin-left:6px;vertical-align:2px}}.ref-cards{list-style:none;margin:0;padding:0}.ref-card{padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-1);margin-bottom:8px;background:var(--surface);font-size:14px}.ref-card.flash{animation:flash 2.4s ease}.ref-card p{margin:2px 0}.ref-name{font-family:var(--font-serif);font-size:15.5px;color:var(--ink)}.ref-meta,.ref-claim{color:var(--ink-2)}.ref-loc a{margin-right:8px}.badge{display:inline-block;font-size:11.5px;padding:1px 8px;border-radius:999px;border:1px solid var(--line-2);color:var(--ink-2);margin:2px 2px 2px 0;white-space:nowrap}.badge.s-chua-kiem-chung{border-style:dashed;color:#7a5a1e;border-color:#c9a35c;background:#c9a35c1f}.badge.s-da-kiem-chung{color:#2f5d3a;border-color:#59685b;background:#59685b24}:root[data-theme=dark] .badge.s-chua-kiem-chung{color:#e4c27f}:root[data-theme=dark] .badge.s-da-kiem-chung{color:#a9c7ad}.badge.t-dien-giai{color:var(--thread-ink)}.ref-legend{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2);padding:14px 18px;margin-bottom:22px}.ref-legend dl{display:grid;gap:6px;margin:0 0 8px}.ref-legend dl div{display:grid;grid-template-columns:minmax(200px,auto) 1fr;gap:12px;align-items:baseline}.ref-legend dd{margin:0;color:var(--ink-2);font-size:15px}@media(max-width:640px){.ref-legend dl div{grid-template-columns:1fr;gap:2px}}.src-filter{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;max-width:none}.src-filter label:first-child{flex:1 1 280px}.src-filter select{min-height:44px;border-radius:var(--r-1);border:1px solid var(--line-2);background:var(--surface);padding:0 10px}.src-count{flex-basis:100%;margin:0}.ref-list{list-style:none;padding:0;margin:0}.ref-list .src-entry p{font-family:var(--font-ui);font-size:15px}.ref-list .src-entry .ref-name{font-family:var(--font-serif);font-size:18px}.sources-h{font-family:var(--font-serif);font-weight:500;font-size:28px;margin:40px 0 0}.src-group h3{font-family:var(--font-serif);font-weight:500;font-size:22px;margin:28px 0 8px}.src-entry.flash{animation:flash 2.4s ease}.paths-h{font-family:var(--font-serif);font-weight:500;font-size:28px;margin:34px 0 6px}.paths{display:grid;gap:14px;margin:16px 0 40px}.path{border:1px solid var(--line);border-radius:var(--r-2);background:var(--surface);padding:18px 20px}.path.open{border-color:var(--thread)}.path-head{display:flex;flex-wrap:wrap;gap:10px 20px;justify-content:space-between;align-items:flex-start}.path-head h3{font-family:var(--font-serif);font-weight:500;font-size:23px;margin:0}.path-head p{margin:4px 0 0}.path-progress{display:flex;align-items:center;gap:8px;min-width:150px;font-variant-numeric:tabular-nums;color:var(--ink-2)}.path-progress svg{width:110px;height:8px}.pp-track{fill:var(--line-2)}.pp-fill{fill:var(--thread)}.path-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.path-list{list-style:none;padding:0;margin:14px 0 6px}.path-list li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;border-bottom:1px solid var(--line);padding:8px 0}.path-list li>a{flex:1 1 320px;display:flex;gap:12px;align-items:baseline;text-decoration:none;color:var(--ink)}.path-list li>a strong{display:block;font-weight:600}.path-list li>a .muted{display:block}.path-list li.done>a strong:after{content:" \2713";color:var(--thread)}.mini-done{border:1px solid var(--line-2);background:transparent;border-radius:999px;padding:4px 12px;min-height:36px;cursor:pointer;font-size:13px}.mini-done.on{border-color:var(--thread);color:var(--thread-ink)}.path-basis{color:var(--ink-2);background:var(--bg-2);border-radius:var(--r-1);padding:8px 12px}.path-next{margin:22px auto 0;max-width:520px;padding:16px;border:1px dashed var(--line-2);border-radius:var(--r-2)}.ask-form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2);padding:16px 18px}.ask-label{display:block;font-weight:600;margin-bottom:8px}.ask-form textarea{width:100%;border:1px solid var(--line-2);border-radius:var(--r-1);background:var(--bg);padding:12px 14px;font-size:17px;resize:vertical}.ask-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-top:10px}.ask-answer{margin:22px 0;padding:18px 20px;border-radius:var(--r-2);background:var(--bg-2);border-left:3px solid var(--accent-2)}.ask-answer.mock{border-left-style:dashed}.ask-answer-text{font-size:17px;line-height:1.7;margin:8px 0;white-space:pre-wrap}.cite{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 5px;margin:0 2px;border-radius:999px;border:1px solid var(--thread);background:var(--surface);color:var(--thread-ink);font:600 12px var(--font-ui);vertical-align:2px;cursor:pointer}.cite.static{cursor:default}.ask-passages ol{list-style:none;padding:0;margin:0}.ask-passages li{padding:14px 0;border-bottom:1px solid var(--line)}.ask-passages li.open{background:var(--surface)}.ask-quote{margin:6px 0;font-family:var(--font-serif);font-size:17px;line-height:1.65;border-left:2px solid var(--thread);padding-left:12px}.ask-links{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;font-size:14px;margin:0}.net-badge{position:fixed;top:10px;left:50%;transform:translate(-50%);z-index:80;background:#3b2a12;color:#ffe7b0;border:1px solid #c9a35c;border-radius:999px;padding:4px 14px;font-size:13px;text-decoration:none;box-shadow:0 2px 10px #00000040}.net-badge:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#e0a43a;margin-right:8px;vertical-align:1px}.net-badge:focus-visible{outline:3px solid var(--focus, #ffc636);outline-offset:2px}.net-state{display:inline-block;font-size:14px;padding:2px 12px;border-radius:999px;border:1px solid var(--line)}.net-state.on:before,.net-state.off:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px;vertical-align:1px;background:#4c8a5a}.net-state.off:before{background:#e0a43a}.badge.ok{color:#2f5d3a;border-color:#59685b;background:#59685b24}.offline-doc .btn{width:100%}.offline-prog{display:flex;align-items:center;gap:10px}.offline-prog progress{flex:1;max-width:320px;accent-color:#850600}.offline-list{list-style:none;padding:0;margin:0;columns:2 320px;column-gap:28px}.offline-list li{display:flex;gap:10px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--line);break-inside:avoid}.offline-list li a{flex:1;min-width:0}.offline-list li.saved a:before{content:"\2713  ";color:#2f7a43}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .badge.ok{color:#a7d3b0}}:root[data-theme=dark] .badge.ok{color:#a7d3b0}:root[data-theme=dark] .is-home{background:var(--bg)}:root[data-theme=dark] .is-home .journey-map,:root[data-theme=dark] .is-home .journeys{background:var(--bg)}:root[data-theme=dark] .is-home .doctrines{background:var(--bg-2)}:root[data-theme=dark] .is-home .tm-stage,:root[data-theme=dark] .is-home .journey-card,:root[data-theme=dark] .is-home .doctrine-card{background:var(--surface);border-color:var(--line-2)}:root[data-theme=dark] .skip{background:#8f222d}:root[data-theme=dark] .is-home .rl-read{background:var(--bg-2)}:root[data-theme=dark] .tm-hover{color:var(--ink-2)}:root[data-theme=dark] .gl-letters button[aria-pressed=true]{background:#8f222d}
