.kr-article-thesis{--reading:1120px}
.kr-article-thesis>.kr-header{position:relative;max-width:var(--reading);margin:0 auto 4.5rem;padding:4rem clamp(1.5rem,5vw,5rem);overflow:hidden;border:1px solid rgba(247,197,72,.22);border-radius:28px;background:radial-gradient(circle at 85% 0,rgba(247,197,72,.16),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.015))}
.kr-article-thesis>.kr-header:after{position:absolute;right:-6rem;bottom:-9rem;width:23rem;height:23rem;border:1px solid rgba(247,197,72,.13);border-radius:50%;content:"";box-shadow:0 0 0 3rem rgba(247,197,72,.025),0 0 0 7rem rgba(247,197,72,.018)}
.kr-article-thesis>.kr-header>*{position:relative;z-index:1}
.kr-article-thesis>.kr-header h1{max-width:850px;font-size:clamp(3.2rem,8vw,7rem)}
.kr-article-thesis>.kr-header .kr-lead{font-size:clamp(1.08rem,2vw,1.35rem)}

/* ===== Thesis & Rules v3 (2026-10-10): rendered inside the shared lesson system (.mb), tf-* only adds what mb lacks ===== */
.kr-thesis>*{min-width:0}
.tf-workspace>*{min-width:0}
.tf-intro,.tf-rulebook,.tf-audi-draft,.tf-workspace,.tf-technical-toolbox,.tf-writing-lab,.tf-scenarios,.tf-influences,.tf-stop-card,.tf-disclaimer{width:100%}
.kr-thesis .mb-sec{scroll-margin-top:96px}
.tf-intro h2 em{font-style:normal;color:#f4e1b2}
.kr-thesis .mb-card .ex{font-weight:600}
.kr-thesis .mb-card h3 .tf-sc-k{display:inline-block;margin-right:.35rem;padding:.08rem .5rem;border-radius:6px;background:color-mix(in srgb,var(--cc) 18%,transparent);color:var(--cc);font:800 .74rem 'Outfit', 'Mitr', sans-serif;letter-spacing:.06em;vertical-align:.12em}
.tf-sub{margin:0 0 .7rem;font:700 .95rem 'Outfit', 'Mitr', sans-serif;color:#fff}
.tf-note{margin:.8rem 0 0;color:#cfd4e0;font-size:.93rem}

/* 🟡 draft status */
.tf-draft-badge{display:inline-block;margin-left:.4rem;padding:.12rem .6rem;border:1px solid rgba(229,197,134,.5);border-radius:999px;background:rgba(229,197,134,.12);color:#f4e1b2;font:700 .8rem 'Outfit', 'Mitr', sans-serif;vertical-align:.25em}
.tf-grill-pending{margin:1.2rem 0 0;padding:1rem 1.2rem;border:1px solid rgba(229,197,134,.38);border-radius:14px;background:rgba(229,197,134,.08);color:#e9e3d2;font-size:.94rem;line-height:1.8}
.kr-thesis .tf-grill-pending b{color:#f4e1b2}

/* 🚦 gate map: 12 stops, colour = lens, corner mark = gate type */
.tf-map{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.55rem;margin:1.4rem 0 .7rem;padding:0;list-style:none}
.tf-map li{min-width:0;transition:opacity .25s ease}
.tf-map li.is-dim{opacity:.32}
.tf-map a{position:relative;display:flex;flex-direction:column;gap:.35rem;height:100%;padding:.7rem .7rem .65rem;border:1px solid color-mix(in srgb,var(--lens) 38%,transparent);border-radius:12px;background:color-mix(in srgb,var(--lens) 9%,#0b1120);color:#e9ebf3;text-decoration:none;transition:transform .2s cubic-bezier(.22,1,.36,1),border-color .2s,background .2s}
.tf-map a:hover,.tf-map a:focus-visible{transform:translateY(-2px);border-color:var(--lens);background:color-mix(in srgb,var(--lens) 16%,#0b1120)}
.tf-map a:focus-visible{outline:2px solid #f4e1b2;outline-offset:2px}
.tf-map-n{display:grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--lens);color:#08101f;font:800 .8rem 'Outfit', 'Mitr', sans-serif}
.tf-map-ic{position:absolute;top:.6rem;right:.6rem;font-size:1rem;line-height:1}
.kr-thesis .tf-map b{font:700 .74rem/1.35 'Outfit', 'Mitr', sans-serif;letter-spacing:.02em;color:#fff;overflow-wrap:normal;word-break:normal;hyphens:auto}
.tf-map small{margin-top:auto;font-size:.72rem;line-height:1.3;color:#b9c0d0}
.tf-map .tf-type-hard small{color:#f6b0a8}
.tf-map .tf-type-decision small{color:#f0d9a8}
.tf-map-read{position:absolute;left:2.05rem;top:.45rem;border:2px solid #0b1120;display:grid;place-items:center;width:1.15rem;height:1.15rem;border-radius:50%;background:#4DD2A0;color:#05261a;font:800 .7rem/1 'Outfit', 'Mitr', sans-serif;font-style:normal;opacity:0;transform:scale(.6);transition:opacity .2s,transform .25s cubic-bezier(.22,1,.36,1)}
.tf-map li.is-read .tf-map-read{opacity:1;transform:scale(1)}
@media(max-width:1180px){.tf-map{grid-template-columns:repeat(4,minmax(0,1fr))}}
.tf-legend{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;margin:0 0 1.3rem;color:#b9c0d0;font-size:.84rem}
.tf-legend span{display:inline-flex;align-items:center;gap:.4rem}
.tf-dot{display:inline-block;width:.6rem;height:.6rem;border-radius:50%}
.tf-dot.hard{background:#f0857a}.tf-dot.decision{background:#e5c586}.tf-dot.read{background:#4DD2A0}

/* toolbar: lens filters + expand/collapse */
.tf-toolbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.6rem;margin:0 0 1rem;padding:.6rem;border:1px solid var(--mb-line);border-radius:14px;background:rgba(8,13,26,.94);backdrop-filter:blur(8px)}
.tf-filters,.tf-expand-actions{display:flex;flex-wrap:wrap;gap:.4rem}
.tf-toolbar button{min-height:40px;padding:.4rem .8rem;border:1px solid var(--mb-line);border-radius:999px;background:rgba(255,255,255,.04);color:#cfd4e0;font:600 .86rem 'Outfit', 'Mitr', sans-serif;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.tf-toolbar button small{margin-left:.2rem;color:#8f97ab;font-size:.74rem}
.tf-toolbar button:hover{border-color:var(--lens,#e2c98f);color:#fff}
.tf-filters button[aria-pressed="true"]{border-color:var(--lens,#e2c98f);background:color-mix(in srgb,var(--lens,#e2c98f) 20%,transparent);color:#fff}
.tf-filters button[aria-pressed="true"] small{color:#e9ebf3}
.tf-expand-actions button{border-radius:9px;background:transparent}
.tf-toolbar button:focus-visible{outline:2px solid #f4e1b2;outline-offset:2px}

/* gate cards */
.tf-stage-list{display:grid;gap:.75rem}
.tf-stage{scroll-margin-top:140px;border:1px solid var(--mb-line);border-radius:14px;background:rgba(255,255,255,.03);transition:border-color .2s,background .2s}
.tf-stage:hover{border-color:color-mix(in srgb,var(--lens) 45%,transparent)}
.tf-stage[open]{border-color:color-mix(in srgb,var(--lens) 60%,transparent);background:color-mix(in srgb,var(--lens) 5%,#0b1120)}
.tf-stage summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.9rem;padding:1rem 1.1rem;cursor:pointer;list-style:none}
.tf-stage summary::-webkit-details-marker{display:none}
.tf-stage summary:focus-visible{outline:2px solid #f4e1b2;outline-offset:-2px;border-radius:14px}
.tf-stage-number{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:12px;background:var(--lens);color:#08101f;font:800 1rem 'Outfit', 'Mitr', sans-serif}
.tf-stage-heading{display:grid;gap:.15rem;min-width:0}
.tf-stage-eyebrow{color:var(--lens);font:700 .76rem 'Outfit', 'Mitr', sans-serif;letter-spacing:.05em}
.tf-stage-heading strong{color:#fff;font:600 1.08rem/1.45 'Outfit', 'Mitr', sans-serif}
.tf-stage-type{display:grid;justify-items:end;padding:.3rem .7rem;border-radius:10px;font:700 .8rem 'Outfit', 'Mitr', sans-serif;white-space:nowrap}
.kr-thesis .tf-stage-type b{font:700 .8rem 'Outfit', 'Mitr', sans-serif;white-space:nowrap}
.tf-stage-type small{font:500 .72rem Sarabun,sans-serif;opacity:.9}
.tf-type-hard .tf-stage-type{border:1px solid rgba(240,133,122,.45);background:rgba(240,133,122,.1);color:#f6b0a8}
.tf-type-decision .tf-stage-type{border:1px solid rgba(229,197,134,.42);background:rgba(229,197,134,.09);color:#f0d9a8}
.tf-stage-chevron{color:#8f97ab;font-size:1.1rem;transition:transform .25s cubic-bezier(.22,1,.36,1)}
.tf-stage[open] .tf-stage-chevron{transform:rotate(180deg);color:var(--lens)}
.tf-stage-body{display:grid;gap:1.1rem;padding:0 1.2rem 1.3rem;animation:tf-reveal .32s cubic-bezier(.22,1,.36,1)}
@keyframes tf-reveal{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.tf-question{margin:0;padding:1rem 1.15rem;border:1px solid color-mix(in srgb,var(--lens) 40%,transparent);border-radius:12px;background:color-mix(in srgb,var(--lens) 10%,transparent);color:#fff;font:600 1.05rem/1.7 'Outfit', 'Mitr', sans-serif}
.tf-question span{display:block;margin-bottom:.2rem;color:var(--lens);font-size:.78rem;letter-spacing:.04em}
.tf-stage-explanation{margin:0;color:#d6dae5;line-height:1.85}
.tf-stage-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:1rem}
.tf-stage-body h3{margin:0 0 .6rem;color:#fff;font:700 .95rem 'Outfit', 'Mitr', sans-serif}
.tf-checks ul{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}
.tf-checks li{position:relative;padding:.55rem .75rem .55rem 2.1rem;border-radius:10px;background:rgba(255,255,255,.035);color:#e3e6ee;font-size:.94rem;line-height:1.7}
.tf-checks li::before{content:'✓';position:absolute;left:.75rem;top:.55rem;color:var(--lens);font-weight:800}
.tf-why{display:grid;align-content:start;gap:.6rem;padding:1rem;border:1px solid var(--mb-line);border-radius:12px;background:rgba(255,255,255,.035)}
.tf-why>span{color:#f4e1b2;font:700 .88rem 'Outfit', 'Mitr', sans-serif}
.tf-why p{margin:0;color:#e3e6ee;font-size:.94rem;line-height:1.75}
.tf-trap{padding:.7rem .8rem;border:1px solid rgba(240,133,122,.38);border-radius:10px;background:rgba(240,133,122,.08);color:#f3d6d2;font-size:.92rem;line-height:1.7}
.kr-thesis .tf-trap b{display:block;color:#f6b0a8;font:700 .82rem 'Outfit', 'Mitr', sans-serif}
.tf-stage-terms dl,.tf-tool-terms dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem;margin:0}
.tf-stage-terms dl>div,.tf-tool-terms dl>div{padding:.65rem .8rem;border:1px solid var(--mb-line);border-radius:10px;background:rgba(121,189,242,.05)}
.tf-stage-terms dt,.tf-tool-terms dt{color:#cfe6fb;font:700 .88rem 'Outfit', 'Mitr', sans-serif}
.tf-stage-terms dd,.tf-tool-terms dd{margin:.15rem 0 0;color:#cfd4e0;font-size:.88rem;line-height:1.65}
.tf-stage-output{padding:.95rem 1.1rem;border:1px solid rgba(226,201,143,.45);border-radius:12px;background:linear-gradient(135deg,rgba(226,201,143,.14),rgba(226,201,143,.04))}
.tf-stage-output span{display:block;color:#f4e1b2;font:700 .86rem 'Outfit', 'Mitr', sans-serif}
.tf-stage-output p{margin:.25rem 0 0;color:#fff;line-height:1.75}

/* sidebar progress */
.tf-side-progress{display:none}
.tf-progress-copy{margin:0 0 .4rem;color:#b9c0d0;font-size:.86rem}
.tf-progress-copy strong{color:#fff;font:800 1.05rem 'Outfit', 'Mitr', sans-serif}
.tf-progress-track{height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.tf-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#e2c98f,#4DD2A0);transition:width .4s cubic-bezier(.22,1,.36,1)}
@media(min-width:1100px){.tf-side-progress{display:block;margin:1.4rem 0 0;padding-top:1rem;border-top:1px solid var(--mb-line)}}

/* 📈 technical toolbox */
.tf-technical-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem;margin:1.2rem 0}
.tf-tool{display:grid;align-content:start;gap:.45rem;padding:1.05rem 1.1rem;border:1px solid var(--mb-line);border-radius:14px;background:rgba(255,255,255,.035)}
.tf-tool-ic{font-size:1.6rem;line-height:1}
.tf-tool-k{color:#6ad5be;font:700 .74rem 'Outfit', 'Mitr', sans-serif;letter-spacing:.06em}
.tf-tool h3{margin:0;color:#fff;font:600 1.02rem 'Outfit', 'Mitr', sans-serif}
.tf-tool-use{margin:0;color:#d6dae5;font-size:.92rem;line-height:1.7}
.tf-tool-terms summary{display:flex;justify-content:space-between;align-items:center;min-height:40px;padding:.4rem .7rem;border:1px solid var(--mb-line);border-radius:10px;color:#cfe6fb;font:600 .86rem 'Outfit', 'Mitr', sans-serif;cursor:pointer;list-style:none}
.tf-tool-terms summary::-webkit-details-marker{display:none}
.tf-tool-terms summary span{transition:transform .25s}
.tf-tool-terms[open] summary span{transform:rotate(180deg)}
.tf-tool-terms summary:focus-visible{outline:2px solid #f4e1b2;outline-offset:2px}
.tf-tool-terms dl{grid-template-columns:1fr;margin-top:.5rem}
.tf-technical-order,.tf-source-rule{margin:1.3rem 0 0;padding:1.1rem 1.2rem;border:1px solid var(--mb-line);border-radius:14px;background:rgba(255,255,255,.025)}
.tf-chain{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;counter-reset:tf}
.tf-chain li{position:relative;flex:1 1 150px;padding:.6rem .75rem .6rem 2.1rem;border:1px solid var(--mb-line);border-radius:10px;background:#0f1729;color:#cfd4e0;font-size:.88rem;line-height:1.5;counter-increment:tf}
.tf-chain li::before{content:counter(tf);position:absolute;left:.6rem;top:.6rem;display:grid;place-items:center;width:1.1rem;height:1.1rem;border-radius:50%;background:#e2c98f;color:#08101f;font:800 .68rem 'Outfit', 'Mitr', sans-serif}
.kr-thesis .tf-chain b{color:#fff;font-weight:700}

/* 📝 template */
.tf-template-card{margin:1.2rem 0 0;padding:1.2rem 1.3rem;border:1px solid rgba(226,201,143,.4);border-radius:16px;background:#f6f1e6;color:#1c1f2a}
.kr-thesis .tf-template-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;margin:0 0 .8rem;padding-bottom:.7rem;border-bottom:1px dashed #c9bfa8;font:700 1.08rem 'Outfit', 'Mitr', sans-serif;color:#1c1f2a}
.tf-template-head small{color:#4a4d57;font:500 .84rem Sarabun,sans-serif}
.tf-template-card ol{display:grid;gap:.15rem;margin:0;padding:0;list-style:none;counter-reset:tp}
.tf-template-card li{display:grid;grid-template-columns:2rem minmax(150px,.8fr) minmax(0,1.6fr);gap:.7rem;align-items:baseline;padding:.65rem 0;border-bottom:1px solid #e3dccb;counter-increment:tp}
.tf-template-card li:last-child{border-bottom:0}
.tf-template-card li::before{content:counter(tp);display:grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:#1f3d66;color:#fff;font:800 .78rem 'Outfit', 'Mitr', sans-serif}
.kr-thesis .tf-template-card li b{color:#1c1f2a;font:700 .95rem 'Outfit', 'Mitr', sans-serif}
.kr-thesis .tf-template-card li span{color:#353d50;font-size:.94rem;line-height:1.7}
.tf-template-card u{text-decoration:none;border-bottom:1.5px solid #1f3d66;color:#1f3d66;font-weight:700}

/* 📚 people */
.tf-influence-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.8rem;margin:1.2rem 0 0}
.tf-person{display:grid;align-content:start;gap:.55rem;padding:1.05rem 1.1rem;border:1px solid var(--mb-line);border-radius:14px;background:rgba(255,255,255,.035)}
.tf-person-head{display:flex;align-items:center;gap:.7rem}
.tf-avatar{flex:0 0 auto;display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;background:rgba(173,131,239,.2);border:1px solid rgba(173,131,239,.5);color:#e4d6fb;font:800 .9rem 'Outfit', 'Mitr', sans-serif}
.tf-influence-name{color:#fff;font:700 .9rem/1.4 'Outfit', 'Mitr', sans-serif}
.tf-person-tag{color:#b9c0d0;font-size:.8rem}
.tf-person h3{margin:0;color:#e4d6fb;font:600 1rem 'Outfit', 'Mitr', sans-serif}
.tf-person p{margin:0;color:#d6dae5;font-size:.92rem;line-height:1.75}

/* ⏸️ decisions: green = go on, amber = wait, red = stop */
.tf-decision-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;margin:1.2rem 0 0}
.tf-decision{display:grid;gap:.3rem;padding:1.05rem 1.1rem;border-radius:14px;border:1px solid}
.tf-decision-ic{font-size:1.5rem;line-height:1}
.kr-thesis .tf-decision b{font:700 1.05rem 'Outfit', 'Mitr', sans-serif}
.tf-decision p{margin:0;color:#d6dae5;font-size:.93rem;line-height:1.7}
.tf-decision.go{border-color:rgba(77,210,160,.45);background:rgba(77,210,160,.08)}.kr-thesis .tf-decision.go b{color:#7fe3bd}
.tf-decision.wait{border-color:rgba(229,197,134,.45);background:rgba(229,197,134,.08)}.kr-thesis .tf-decision.wait b{color:#f0d9a8}
.tf-decision.stop{border-color:rgba(240,133,122,.45);background:rgba(240,133,122,.08)}.kr-thesis .tf-decision.stop b{color:#f6b0a8}

@media(max-width:760px){
.kr-article-thesis>.kr-header{margin-bottom:3.5rem;padding:2.2rem 1.35rem;border-radius:20px}
.kr-article-thesis>.kr-header h1{font-size:clamp(2.7rem,15vw,4.2rem)}
.tf-map{grid-template-columns:repeat(3,minmax(0,1fr))}

.tf-stage summary{grid-template-columns:auto minmax(0,1fr) auto;gap:.7rem;padding:.9rem}
.tf-stage-type{grid-column:2;justify-self:start;justify-items:start;padding:.2rem .55rem}
.tf-stage-chevron{grid-row:1;grid-column:3}
.tf-stage-body{padding:0 .9rem 1.1rem}
.tf-stage-grid{grid-template-columns:1fr}
.tf-template-card li{grid-template-columns:1.8rem minmax(0,1fr)}
.tf-template-card li span{grid-column:2}
}
@media(prefers-reduced-motion:reduce){.tf-map a,.tf-map li,.tf-map-read,.tf-stage,.tf-stage-chevron,.tf-stage-body,.tf-progress-track span,.tf-toolbar button,.tf-tool-terms summary span{transition:none!important;animation:none!important}}
.kr-thesis .mb-step,.kr-thesis .tf-why,.kr-thesis .tf-tool,.kr-thesis .tf-technical-order,.kr-thesis .tf-person,.kr-thesis .tf-source-rule{border-color:rgba(255,255,255,.17);background:rgba(255,255,255,.055)}

/* ===== v5 journey page (2026-10-10): purpose-first hero, money-layer diagram, chapter rail, photo-led chapters ===== */
.kr-article-journey{--tf-w:min(1320px,100%);--tf-gold:#e2c98f;--tf-gold-2:#f4e1b2;--tf-ink:#eef0f6;--tf-muted:#c3c9d8}
body:has(.kr-article-journey){background:radial-gradient(1200px 700px at 85% -6%,rgba(226,201,143,.10),transparent 62%),radial-gradient(1000px 800px at -12% 24%,rgba(121,189,242,.08),transparent 60%),#050a17;background-attachment:fixed}
.kr-article-journey>.kr-crumb{max-width:var(--tf-w);margin-left:auto;margin-right:auto}
.tf-page{font-size:clamp(1rem,.94rem + .22vw,1.12rem);color:var(--tf-ink)}
.tf-page p{margin:0 0 1.1rem}
.tf-page h2,.tf-page h3{font-family:var(--font-head);color:#fff;line-height:1.45}
.tf-page b,.tf-page strong{color:#f6f7fb}
.tf-page a{color:var(--tf-gold-2)}
.tf-page .mb-sec{max-width:1120px;margin-left:auto;margin-right:auto;scroll-margin-top:140px}
.tf-page .mb-sec h2{font-size:clamp(1.45rem,1.1rem + 1vw,1.9rem)}
.tf-page .mb-sec .eyebrow{color:var(--tf-gold);font:600 .9rem 'Outfit', 'Mitr', sans-serif;letter-spacing:.02em}

/* hero: purpose + one action on the left, the money-layer diagram as the focal visual */
.tf-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5.5rem);align-items:center;max-width:var(--tf-w);min-height:clamp(520px,70vh,780px);margin:0 auto;padding:clamp(1rem,3vw,2.5rem) 0 clamp(2rem,4vw,3.5rem)}
.kr-article-journey .tf-hero>.tf-sky{position:absolute;z-index:-1;top:-180px;bottom:-40px;left:calc(50% - 50vw);width:100vw;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent)}
.tf-hero-copy{position:relative;z-index:1}
.tf-kicker{margin:0 0 1.2rem!important;color:var(--tf-gold);font:600 1rem 'Outfit', 'Mitr', sans-serif}
.tf-hero h1{position:relative;margin:0 0 1.2rem;padding-top:1.4rem;font:700 clamp(3rem,2rem + 4vw,5.6rem)/1.02 'Outfit', 'Mitr', sans-serif;letter-spacing:-.02em;color:#fff}
.tf-hero h1::before{content:"";position:absolute;top:0;left:0;width:44px;height:2px;background:var(--tf-gold)}
.tf-lead{max-width:34ch;margin:0 0 2rem!important;color:#dfe3ec;font-size:clamp(1.1rem,1rem + .4vw,1.35rem);line-height:1.75}
.tf-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.2rem}
.tf-page a.tf-cta{display:inline-flex;align-items:center;min-height:52px;padding:.8rem 1.5rem;border-radius:12px;background:var(--tf-gold);color:#101827;font:700 1.05rem 'Outfit', 'Mitr', sans-serif;text-decoration:none;transition:background .2s,transform .2s cubic-bezier(.22,1,.36,1)}
.tf-page a.tf-cta:hover{background:var(--tf-gold-2);transform:translateY(-2px)}
.tf-page a.tf-cta:focus-visible,.tf-page a.tf-cta-2:focus-visible{outline:3px solid var(--tf-gold-2);outline-offset:4px}
.tf-page a.tf-cta-2{color:var(--tf-muted);font:600 1rem 'Outfit', 'Mitr', sans-serif;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(226,201,143,.5)}
.tf-page a.tf-cta-2:hover{color:var(--tf-gold-2)}

/* money layers: bottom = safest & widest, top = riskiest & narrowest; gold intensity rises with risk */
.tf-layers{position:relative;z-index:1;margin:0}
.tf-layers ol{display:flex;flex-direction:column;align-items:center;gap:.55rem;margin:0;padding:0;list-style:none}
.tf-layer{width:calc(56% + (4 - var(--i)) * 11%);transition:opacity .25s}
.tf-layers[data-active] .tf-layer:not(:hover):not(:focus-within) a{filter:brightness(.6)}
.tf-page .tf-layer a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;min-height:64px;padding:.7rem 1.1rem;border-radius:14px;border:1px solid rgba(226,201,143,calc(.18 + var(--i) * .1));background:linear-gradient(90deg,rgba(226,201,143,calc(.05 + var(--i) * .05)),rgba(226,201,143,calc(.02 + var(--i) * .035)));color:#fff;text-decoration:none;transition:transform .25s cubic-bezier(.22,1,.36,1),border-color .2s,background .2s}
.tf-page .tf-layer a:hover,.tf-page .tf-layer a:focus-visible,.tf-layer.is-here a{transform:translateY(-2px);border-color:var(--tf-gold);background:linear-gradient(90deg,rgba(226,201,143,.26),rgba(226,201,143,.1))}
.tf-page .tf-layer a:focus-visible{outline:2px solid var(--tf-gold-2);outline-offset:3px}
.tf-layer-ic{font-size:1.5rem}
.tf-layer-t{display:grid;line-height:1.3}
.tf-layer-t small{color:var(--tf-gold);font:600 .8rem 'Outfit', 'Mitr', sans-serif}
.tf-page .tf-layer-t b{font:600 1.08rem 'Outfit', 'Mitr', sans-serif;color:#fff}
.tf-layer-s{color:var(--tf-muted);font-size:.84rem;white-space:nowrap}
.tf-layer.is-live .tf-layer-s{color:#8fe0c0}
.tf-layers-axis{margin:0 0 .7rem!important;text-align:center;color:var(--tf-muted);font:600 .86rem 'Outfit', 'Mitr', sans-serif}
.tf-layers-axis.tf-down{margin:.7rem 0 0!important}
.tf-layers-cap{min-height:3.4em;margin:1rem auto 0;max-width:46ch;text-align:center;color:#dfe3ec;font-size:1rem;line-height:1.7}
.tf-layers-cap b{color:var(--tf-gold-2)}

/* chapter rail: sized for the screen, sticky under the site nav */
.tf-rail{position:sticky;top:64px;z-index:20;max-width:var(--tf-w);margin:clamp(1rem,3vw,2rem) auto 0;padding:.45rem;border:1px solid rgba(226,201,143,.22);border-radius:16px;background:rgba(7,12,27,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.tf-rail ol{display:flex;gap:.35rem;margin:0;padding:0;list-style:none;overflow-x:auto;scrollbar-width:none}
.tf-rail ol::-webkit-scrollbar{display:none}
.tf-rail li{flex:1 0 auto}
.tf-page .tf-rail a{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.55rem 1.1rem;border-radius:11px;color:var(--tf-muted);font:600 1rem 'Outfit', 'Mitr', sans-serif;white-space:nowrap;text-decoration:none;transition:background .2s,color .2s}
.tf-rail a small{display:grid;place-items:center;width:1.4rem;height:1.4rem;border-radius:50%;background:rgba(226,201,143,.16);color:var(--tf-gold-2);font:700 .78rem 'Outfit', 'Mitr', sans-serif}
.tf-page .tf-rail a:hover{color:#fff;background:rgba(226,201,143,.1)}
.tf-page .tf-rail li.is-here a{background:var(--tf-gold);color:#101827}
.tf-rail li.is-here a small{background:#101827;color:var(--tf-gold-2)}
.tf-page .tf-rail a:focus-visible{outline:2px solid var(--tf-gold-2);outline-offset:-2px}

/* chapters: photo + title as the anchor, alternating sides; no outer box */
.tf-chapter{max-width:var(--tf-w);margin:clamp(4.5rem,9vw,8rem) auto 0;scroll-margin-top:140px}
.tf-ch-intro{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.tf-chapter:nth-of-type(even) .tf-ch-fig{order:2}
.tf-ch-fig{position:relative;margin:0}
.tf-ch-frame{position:relative;aspect-ratio:4/3;border-radius:22px;overflow:hidden;border:1px solid rgba(226,201,143,.28);background:#0b1529}
.tf-ch-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tf-ch-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(5,10,23,.55))}
.tf-ch-badge{position:absolute;z-index:1;left:1rem;bottom:1rem;display:inline-flex;align-items:center;gap:.5rem;padding:.45rem .85rem;border-radius:999px;background:rgba(7,12,27,.82);border:1px solid rgba(226,201,143,.45);font-size:1.15rem}
.tf-ch-badge b{color:var(--tf-gold-2);font:700 1rem 'Outfit', 'Mitr', sans-serif}
.tf-ch-fig figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.3rem 1rem;margin-top:.6rem;color:var(--tf-muted);font-size:.84rem}
.tf-page .tf-ch-fig figcaption a{color:var(--tf-muted)}
.tf-fig-swap{margin-top:.6rem}
.tf-ch-k{margin:0 0 .6rem!important;color:var(--tf-gold);font:600 1rem 'Outfit', 'Mitr', sans-serif}
.tf-page .tf-ch-text h2{position:relative;margin:0 0 1rem;padding-top:1.2rem;font:700 clamp(2.1rem,1.4rem + 2.4vw,3.4rem)/1.12 'Outfit', 'Mitr', sans-serif;letter-spacing:-.015em}
.tf-ch-text h2::before{content:"";position:absolute;top:0;left:0;width:40px;height:2px;background:var(--tf-gold)}
.tf-ch-q{max-width:32ch;margin:0 0 1.2rem!important;color:#e6e9f1;font-size:clamp(1.15rem,1rem + .5vw,1.4rem);line-height:1.6}
.tf-ch-state{margin:0 0 1rem!important;color:var(--tf-muted);font-size:.98rem}
.tf-ch-state.is-live{color:#8fe0c0}
.tf-subnav{display:flex;flex-wrap:wrap;gap:.45rem;margin:.4rem 0 0}
.tf-page .tf-subnav a{padding:.45rem .9rem;border:1px solid rgba(226,201,143,.4);border-radius:999px;color:var(--tf-gold-2);font:600 .92rem 'Outfit', 'Mitr', sans-serif;text-decoration:none;transition:background .2s}
.tf-page .tf-subnav a:hover{background:rgba(226,201,143,.14)}
.tf-ch-body{margin-top:clamp(2.5rem,5vw,4rem)}
.tf-ch-body:empty{display:none}

/* lessons: quiet two-column rows, not boxed cards */
.tf-lessons{max-width:1120px;margin:clamp(2rem,4vw,3rem) auto 0}
.tf-sub{margin:0 0 .6rem!important;color:#fff;font:600 1rem 'Outfit', 'Mitr', sans-serif}
.tf-lesson-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));column-gap:2.4rem;margin:0;padding:0;list-style:none}
.tf-lesson-grid li{border-top:1px solid rgba(255,255,255,.1)}
.tf-page .tf-lesson-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.85rem .2rem;color:var(--tf-ink);text-decoration:none;transition:color .2s}
.tf-page .tf-lesson-card:hover{color:var(--tf-gold-2)}
.tf-page .tf-lesson-card:focus-visible{outline:2px solid var(--tf-gold-2);outline-offset:2px;border-radius:8px}
.tf-lc-ic{font-size:1.3rem}
.tf-lc-t{display:grid;gap:.1rem;min-width:0}
.tf-page .tf-lc-t b{color:inherit;font:600 1rem/1.4 'Outfit', 'Mitr', sans-serif}
.tf-lc-t small{color:var(--tf-muted);font-size:.86rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tf-lesson-card i{color:var(--tf-gold);font-style:normal}

/* owner-only writing slots + AI prompt */
.tf-owner-slot{max-width:1120px;margin:1.2rem auto 0;padding:1rem 1.2rem;border:1.5px dashed rgba(226,201,143,.55);border-radius:14px;background:rgba(226,201,143,.06)}
.tf-owner-k{margin:0 0 .4rem!important;color:var(--tf-gold-2);font:700 .92rem 'Outfit', 'Mitr', sans-serif}
.tf-owner-slot ul{margin:0;padding-left:1.1rem;color:#e3e6ee;font-size:.96rem;line-height:1.8}
.tf-owner-tools{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0 0!important}
.tf-page .tf-owner-tools a{padding:.35rem .75rem;border:1px solid rgba(226,201,143,.5);border-radius:999px;font:600 .88rem 'Outfit', 'Mitr', sans-serif;text-decoration:none}
.tf-ai{margin-top:.7rem}
.tf-ai summary{cursor:pointer;color:var(--tf-gold-2);font:600 .9rem 'Outfit', 'Mitr', sans-serif;list-style:none}
.tf-ai summary::-webkit-details-marker{display:none}
.tf-ai-text{margin:.5rem 0!important;padding:.7rem .8rem;border-radius:10px;background:#0a1222;color:#dfe3ec;font-size:.86rem;line-height:1.7}

/* appendix + end */
.tf-appendix{margin-top:clamp(4.5rem,9vw,8rem)!important}
.tf-end{max-width:1120px;margin:3rem auto 0}

/* wiki links + preview card */
.tf-wk{color:inherit;text-decoration:underline;text-decoration-color:rgba(226,201,143,.75);text-decoration-thickness:1.5px;text-underline-offset:3px;cursor:pointer;transition:color .15s,text-decoration-color .15s}
.tf-page a.tf-wk{color:inherit}
.tf-page a.tf-wk:hover,.tf-page a.tf-wk:focus-visible{color:var(--tf-gold-2);text-decoration-color:var(--tf-gold-2)}
.tf-wk-card{position:absolute;z-index:60;padding:.85rem 1rem;border:1px solid rgba(226,201,143,.5);border-radius:14px;background:#0f1a30;box-shadow:0 8px 8px rgba(0,0,0,.35);color:#e9ebf3;font-family:Sarabun,sans-serif;animation:tf-pop .18s cubic-bezier(.22,1,.36,1)}
@keyframes tf-pop{from{opacity:0;transform:translateY(4px)}}
.tf-wk-card .tf-wk-k{margin:0 0 .2rem;color:#b9c0d0;font-size:.76rem}
.tf-wk-card b{display:block;color:#fff;font:700 1rem 'Outfit', 'Mitr', sans-serif}
.tf-wk-card p{margin:.3rem 0 0;font-size:.88rem;line-height:1.6;color:#d6dae5}
.tf-wk-card a{display:inline-block;margin-top:.55rem;color:#f4e1b2;font:600 .86rem 'Outfit', 'Mitr', sans-serif}

/* investors */
.tf-investors{margin:1.6rem 0 0}
.tf-inv-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem}
.tf-inv-head a{font:600 .9rem 'Outfit', 'Mitr', sans-serif}
.tf-inv-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:1.2rem .8rem;margin:.9rem 0 0;padding:0;list-style:none}
.tf-inv{position:relative}
.tf-page .tf-inv-link{display:grid;justify-items:center;align-content:start;gap:.45rem;padding:.4rem;border-radius:14px;color:var(--tf-ink);text-align:center;text-decoration:none;transition:transform .2s cubic-bezier(.22,1,.36,1)}
.tf-page .tf-inv-link:hover{transform:translateY(-3px)}
.tf-page .tf-inv-link:focus-visible{outline:2px solid var(--tf-gold-2);outline-offset:2px}
.tf-inv-face{display:grid;place-items:center;width:88px;height:88px;border-radius:50%;overflow:hidden;border:2px solid rgba(226,201,143,.7);background:rgba(173,131,239,.2);box-shadow:0 0 0 5px rgba(226,201,143,.08)}
.tf-inv-face img{width:100%;height:100%;object-fit:cover}
.tf-inv-initials{color:#e4d6fb;font:800 1.2rem 'Outfit', 'Mitr', sans-serif}
.kr-thesis .tf-inv b{color:#fff;font:600 .95rem/1.35 'Outfit', 'Mitr', sans-serif}
.tf-inv small{color:var(--tf-muted);font-size:.8rem;line-height:1.5}
.tf-inv-empty{grid-column:1/-1;color:var(--tf-muted);font-size:.95rem}
.tf-inv-edit{position:absolute;top:0;right:0;min-height:32px;padding:.15rem .5rem;border:1px solid rgba(255,255,255,.25);border-radius:8px;background:#15223a;color:#e9ebf3;font:600 .78rem 'Outfit', 'Mitr', sans-serif;cursor:pointer}
.tf-btn-primary,.tf-btn-ghost{min-height:44px;padding:.5rem 1rem;border-radius:10px;font:700 .92rem 'Outfit', 'Mitr', sans-serif;cursor:pointer}
.tf-btn-primary{border:1px solid #e2c98f;background:#e2c98f;color:#101827}
.tf-btn-primary:hover{background:#f4e1b2}
.tf-btn-primary:disabled{opacity:.6;cursor:wait}
.tf-btn-ghost{border:1px solid rgba(255,255,255,.28);background:transparent;color:#e9ebf3}
.tf-btn-ghost:hover{border-color:#e2c98f}
.tf-inv-add{margin-top:1rem}
.tf-inv-form{display:grid;gap:.6rem;margin:.9rem 0 0;padding:1rem;border:1px solid rgba(226,201,143,.5);border-radius:14px;background:#0f1a30}
.tf-inv-form-k{margin:0!important;color:#f4e1b2;font:700 .98rem 'Outfit', 'Mitr', sans-serif}
.tf-inv-form label{display:grid;gap:.25rem;color:#dfe3ec;font-size:.92rem}
.tf-inv-form input,.tf-inv-form textarea{padding:.55rem .7rem;border:1px solid rgba(255,255,255,.25);border-radius:9px;background:#0a1222;color:#f0f0f5;font:inherit;color-scheme:dark}
.tf-inv-hint{margin:0!important;color:#b9c0d0;font-size:.84rem}
.tf-inv-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.tf-inv-err{margin:0!important;color:#f6b0a8;font-size:.9rem}
.tf-toast{position:fixed;left:50%;bottom:1.2rem;z-index:70;display:flex;align-items:center;gap:.8rem;transform:translateX(-50%);padding:.7rem 1rem;border:1px solid rgba(226,201,143,.5);border-radius:12px;background:#0f1a30;color:#f0f0f5;box-shadow:0 8px 8px rgba(0,0,0,.35);font-size:.94rem}
.tf-toast[hidden]{display:none}
.tf-toast button{min-height:36px;padding:.3rem .7rem;border:1px solid #e2c98f;border-radius:8px;background:transparent;color:#f4e1b2;font:700 .86rem 'Outfit', 'Mitr', sans-serif;cursor:pointer}

/* sky (shared with v4 markup) */
.tf-aurora{position:absolute;inset:-10% -5% auto;height:90%;background:radial-gradient(45% 50% at 70% 45%,rgba(106,213,190,.14),transparent 70%),radial-gradient(40% 45% at 85% 25%,rgba(173,131,239,.14),transparent 70%);filter:blur(18px);opacity:.85}
.tf-sky.is-live .tf-aurora{animation:tf-aurora 18s ease-in-out infinite alternate}
@keyframes tf-aurora{to{transform:translate3d(-3%,5%,0) scale(1.06)}}
.tf-star{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff;box-shadow:0 0 6px rgba(255,255,255,.6);opacity:var(--a,.4)}
.tf-sky.is-live .tf-star{animation:tf-twinkle var(--tw,4s) ease-in-out var(--dl,0s) infinite}
@keyframes tf-twinkle{0%,100%{opacity:var(--a,.4);transform:scale(.7)}50%{opacity:.95;transform:scale(1.3)}}
.tf-north{position:absolute;top:20%;left:56%;width:70px;height:70px}
.tf-north-core{position:absolute;top:50%;left:50%;width:6px;height:6px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 7px 3px #fff,0 0 20px 8px rgba(244,225,178,.7),0 0 50px 16px rgba(226,201,143,.28)}
.tf-sky.is-live .tf-north-core{animation:tf-pulse 4s ease-in-out infinite}
@keyframes tf-pulse{50%{transform:translate(-50%,-50%) scale(.8);opacity:.75}}
.tf-north-v,.tf-north-h{position:absolute;top:50%;left:50%;border-radius:9px;transform:translate(-50%,-50%)}
.tf-north-v{width:1px;height:66px;background:linear-gradient(transparent,rgba(255,243,198,.8),transparent)}
.tf-north-h{width:66px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,243,198,.8),transparent)}
.tf-shoot{position:absolute;top:22%;right:10%;width:110px;height:1px;opacity:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8));transform:rotate(-24deg)}
.tf-sky.is-live .tf-shoot{animation:tf-shoot 12s ease-in-out 3s infinite}
@keyframes tf-shoot{0%,72%{opacity:0;transform:translate3d(0,0,0) rotate(-24deg)}75%{opacity:.8}82%{opacity:0;transform:translate3d(-220px,95px,0) rotate(-24deg)}100%{opacity:0}}

.kr-thesis .tf-audi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}

@media(max-width:900px){
.tf-hero{grid-template-columns:1fr;min-height:0;padding-top:.5rem}
.tf-lead{max-width:none}
.tf-ch-intro{grid-template-columns:1fr;gap:1.4rem}
.tf-chapter:nth-of-type(even) .tf-ch-fig{order:0}
.tf-ch-q{max-width:none}
.tf-rail{top:56px;border-radius:12px}
.tf-page .tf-rail a{min-height:44px;padding:.5rem .8rem;font-size:.94rem}
}
@media(max-width:560px){
.tf-layer{width:calc(64% + (4 - var(--i)) * 9%)}
.tf-page .tf-layer a{gap:.6rem;padding:.6rem .8rem;min-height:56px}
.tf-layer-s{display:none}
.kr-thesis .tf-audi-grid{grid-template-columns:1fr}
.tf-inv-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem .4rem}
.tf-inv-face{width:64px;height:64px}
.tf-lesson-grid{grid-template-columns:1fr}
.kr-thesis .mb-flow .mb-step{flex-basis:auto;padding:.6rem .8rem}
}
@media(prefers-reduced-motion:reduce){.tf-sky *{animation:none!important}.tf-layer,.tf-page .tf-layer a,.tf-page .tf-rail a,.tf-page .tf-lesson-card,.tf-page .tf-inv-link,.tf-wk-card,.tf-page a.tf-cta{transition:none!important;animation:none!important}}
/* big monitors: scale the whole journey with the screen instead of leaving a narrow strip (Audi 2026-10-10, ~2517px screen) */
.kr-article-journey{--tf-w:min(1400px,100%)}
@media(min-width:1900px){.knowledge-reader:has(.kr-article-journey){zoom:1.15}.tf-rail{top:56px}}
@media(min-width:2300px){.knowledge-reader:has(.kr-article-journey){zoom:1.3}.tf-rail{top:49px}}
@media(min-width:2800px){.knowledge-reader:has(.kr-article-journey){zoom:1.5}.tf-rail{top:43px}}
.tf-page{--mb-accent:#79bdf2;--mb-up:#4DD2A0;--mb-down:#f0857a;--mb-gold:#F7C548;--mb-pink:#FF6B9D;--mb-violet:#ad83ef;--mb-surface:#0b1120;--mb-line:rgba(255,255,255,.17);--mb-hub:#e2c98f}
.tf-page .tf-grill-pending,.tf-page .tf-decision,.tf-page .mb-next,.tf-page .mb-card{border-width:1px;border-style:solid}
.tf-page .tf-grill-pending,.tf-page .mb-next{border-color:rgba(226,201,143,.4)}

/* v5.1 after first-view review: risk ramp + spine, live layer leads, drafts show their plan, chapter ends */
.knowledge-reader:has(.kr-article-journey){padding-top:96px}
.kr-article-journey>.kr-crumb{margin-bottom:1rem}
.tf-hero{min-height:clamp(460px,62vh,700px)}
.tf-hero h1{font-size:clamp(3.2rem,2rem + 4.4vw,6rem);line-height:1.08}
.tf-layer{--risk:color-mix(in oklab,#6ad5be,#f2a65a calc(var(--i) * 25%))}
.tf-layers ol{position:relative;isolation:isolate}
.tf-layers ol::before{content:"";position:absolute;top:8px;bottom:8px;left:50%;width:2px;transform:translateX(-50%);background:linear-gradient(#f2a65a,#6ad5be);opacity:.5;z-index:-1}
.tf-layer{position:relative;z-index:1}
.tf-page .tf-layer a{border-color:color-mix(in srgb,var(--risk) 45%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--risk) 16%,#0a1222),#0a1222 85%)}
.tf-layer-t small{color:var(--risk)}
.tf-layer:not(.is-live) .tf-layer-t b{color:#d5dae6}.tf-layer:not(.is-live) .tf-layer-ic{filter:saturate(.7)}
.tf-page .tf-layer.is-live a{opacity:1;border:1.5px solid var(--tf-gold);background:linear-gradient(90deg,#3a3526,#121a2c);box-shadow:0 0 0 4px rgba(226,201,143,.08)}
.tf-layers-axis.tf-up{color:#f2c08a}.tf-layers-axis.tf-down{color:#8fe0c0}
.tf-ch-plan ul{margin:.2rem 0 1rem;padding-left:1.2rem;color:#e3e6ee;line-height:1.85}
.tf-chapter.is-draft .tf-ch-intro{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
.tf-chapter.is-draft:nth-of-type(even) .tf-ch-intro{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}
.tf-page a.tf-ch-next{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem 1rem;max-width:1120px;margin:2.4rem auto 0;padding:1.1rem 1.3rem;border-top:1px solid rgba(226,201,143,.35);border-bottom:1px solid rgba(226,201,143,.35);color:var(--tf-ink);text-decoration:none;transition:background .2s}
.tf-page a.tf-ch-next:hover{background:rgba(226,201,143,.07)}
.tf-ch-next small{color:var(--tf-muted);font:600 .9rem 'Outfit', 'Mitr', sans-serif}
.tf-ch-next b{color:var(--tf-gold-2);font:600 1.1rem 'Outfit', 'Mitr', sans-serif}
@media(max-width:900px){.tf-chapter.is-draft .tf-ch-intro,.tf-chapter.is-draft:nth-of-type(even) .tf-ch-intro{grid-template-columns:1fr}}

/* ===== chapters 3–4 content (2026-10-11): thought → mechanism → choice thread, toys, real journal ===== */
.tf-thread{position:relative;display:grid;gap:0;margin:1.4rem 0 1.6rem;padding:0;list-style:none}
.tf-thread li{position:relative;padding:0 0 1.1rem 2.6rem}
.tf-thread li::before{content:"";position:absolute;left:.9rem;top:1.9rem;bottom:0;width:2px;background:linear-gradient(rgba(226,201,143,.55),rgba(226,201,143,.12))}
.tf-thread li:last-child::before{display:none}
.tf-thread li::after{content:"";position:absolute;left:.48rem;top:.35rem;width:.9rem;height:.9rem;border-radius:50%;border:2px solid var(--tf-gold);background:#050a17}
.tf-thread li.is-choice::after{background:var(--tf-gold)}
.tf-thread-k{display:block;margin-bottom:.15rem;color:var(--tf-gold);font:600 .95rem 'Outfit', 'Mitr', sans-serif}
.tf-thread li.is-mech .tf-thread-k{color:#9ccff6}
.tf-thread li.is-choice .tf-thread-k{color:#8fe0c0}
.tf-thread p{max-width:72ch;margin:0!important;color:#e3e6ee;line-height:1.85}

.tf-split{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:.8rem;margin:1.2rem 0}
.tf-split-part{padding:1rem 1.1rem;border-radius:14px;border:1px solid rgba(255,255,255,.17)}
.tf-split-part.is-in{background:rgba(121,189,242,.08);border-color:rgba(121,189,242,.4)}
.tf-split-part.is-ex{background:rgba(226,201,143,.08);border-color:rgba(226,201,143,.45)}
.tf-split-part b{display:block;margin-bottom:.3rem;font:600 1.02rem 'Outfit', 'Mitr', sans-serif}
.tf-split-part p{margin:0!important;color:#dfe3ec;font-size:.98rem;line-height:1.75}
.tf-split-plus{align-self:center;color:var(--tf-gold);font:700 1.6rem 'Outfit', 'Mitr', sans-serif}

.tf-toy{margin:1.3rem 0;padding:1.2rem 1.3rem;border:1px solid rgba(226,201,143,.35);border-radius:18px;background:linear-gradient(180deg,#0e1830,#0a1222)}
.tf-toy-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem 2rem;margin-bottom:1rem}
.tf-toy-controls label{display:grid;gap:.35rem;color:#dfe3ec;font:600 .98rem 'Outfit', 'Mitr', sans-serif}
.tf-toy-controls b{color:var(--tf-gold-2)}
.tf-toy-controls input[type=range]{width:100%;accent-color:#e2c98f}
.tf-toy-tabs{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1rem}
.tf-toy-tabs button{min-height:44px;padding:.45rem 1rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:transparent;color:#dfe3ec;font:600 .95rem 'Outfit', 'Mitr', sans-serif;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.tf-toy-tabs button:hover{border-color:var(--tf-gold)}
.tf-toy-tabs button[aria-pressed="true"]{background:var(--tf-gold);border-color:var(--tf-gold);color:#101827}
.tf-toy-tabs button:focus-visible{outline:2px solid var(--tf-gold-2);outline-offset:2px}
.tf-toy-msg{margin:1rem 0 .4rem!important;color:#eef0f6;line-height:1.8}
.tf-toy-msg b{color:var(--tf-gold-2)}
.tf-toy-note{margin:0!important;color:var(--tf-muted);font-size:.86rem}

.tf-bars{display:grid;gap:.6rem}
.tf-bar{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr) minmax(110px,auto);align-items:center;gap:.8rem}
.tf-bar span{color:#dfe3ec;font-size:.95rem}
.tf-bar-track{height:18px;border-radius:9px;background:rgba(255,255,255,.07);overflow:hidden}
.tf-bar-track i{display:block;height:100%;border-radius:inherit;transition:width .45s cubic-bezier(.22,1,.36,1)}
.tf-bar.is-put i{background:#8a93a8}.tf-bar.is-base i{background:#79bdf2}.tf-bar.is-plus i{background:linear-gradient(90deg,#c9a84c,#f4e1b2)}
.tf-bar b{text-align:right;font:700 1rem 'Outfit', 'Mitr', sans-serif}
.tf-bar.is-plus b{color:var(--tf-gold-2)}

.tf-payoff svg,.tf-gexmap svg{display:block;width:100%;height:auto}
.tf-payoff text,.tf-gexmap text{fill:#b9c0d0;font:12px Sarabun,sans-serif}
.tf-payoff .g{stroke:rgba(255,255,255,.07)}
.tf-payoff .z{stroke:rgba(255,255,255,.45);stroke-width:1}
.tf-payoff .stock{fill:none;stroke:#8a93a8;stroke-width:2;stroke-dasharray:6 6}
.tf-payoff .strat{fill:none;stroke:#e2c98f;stroke-width:3.5;stroke-linejoin:round}
.tf-payoff .lab,.tf-gexmap .lab{fill:#dfe3ec;font-weight:600}
.tf-legend-line{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;margin:.4rem 0 .2rem!important;font-size:.88rem}
.tf-key.is-strat{color:#e2c98f}.tf-key.is-stock{color:#a7afc2}.tf-key.is-zero{color:#dfe3ec}
.tf-payoff-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin:.6rem 0 0}
.tf-payoff-facts div{padding:.6rem .8rem;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12)}
.tf-payoff-facts dt{color:var(--tf-muted);font-size:.85rem}
.tf-payoff-facts dd{margin:.15rem 0 0;font:700 1.15rem 'Outfit', 'Mitr', sans-serif;color:#eef0f6}
.tf-payoff-facts dd.is-neg{color:#f6a59c}.tf-payoff-facts dd.is-pos{color:#8fe0c0}

.tf-gexmap .band.pos{fill:rgba(77,210,160,.08)}.tf-gexmap .band.neg{fill:rgba(240,133,122,.07)}
.tf-gexmap .wall{stroke-width:2;stroke-dasharray:8 6}.tf-gexmap .wall.c{stroke:#8fe0c0}.tf-gexmap .wall.p{stroke:#f6a59c}
.tf-gexmap .wl{fill:#dfe3ec;font-weight:600}
.tf-gexmap .px{fill:none;stroke-width:3.5;stroke-linejoin:round;stroke-linecap:round}
.tf-gexmap .px.pos{stroke:#e2c98f}.tf-gexmap .px.neg{stroke:#f2a65a}
.tf-gexmap .ann{fill:#eef0f6;font-weight:600}
.tf-gexmap svg{overflow:visible}

.tf-terms-inline,.tf-checklist{display:grid;gap:.55rem;margin:1rem 0;padding:0;list-style:none}
.tf-terms-inline li,.tf-checklist li{padding:.7rem 0 .7rem;border-top:1px solid rgba(255,255,255,.1);color:#e3e6ee;line-height:1.8}
.tf-terms-inline b{color:#fff;margin-right:.4rem}

.tf-steps{display:grid;gap:0;margin:1.2rem 0;padding:0;list-style:none;counter-reset:st}
.tf-steps li{display:grid;grid-template-columns:2.4rem minmax(180px,.4fr) minmax(0,1fr);gap:.4rem 1rem;align-items:baseline;padding:.85rem 0;border-top:1px solid rgba(255,255,255,.1);counter-increment:st}
.tf-steps li::before{content:counter(st);display:grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:rgba(226,201,143,.16);color:var(--tf-gold-2);font:700 .9rem 'Outfit', 'Mitr', sans-serif}
.tf-steps b{font:600 1.02rem 'Outfit', 'Mitr', sans-serif;color:#fff}
.tf-steps span{color:#dfe3ec;line-height:1.75}

.tf-log{display:grid;gap:1rem;margin:1.2rem 0;padding:0;list-style:none}
.tf-log li{position:relative;padding:1.1rem 1.2rem 1.1rem 1.4rem;border-radius:16px;border:1px solid rgba(255,255,255,.16);background:#0c1527}
.tf-log li.is-loss{border-color:rgba(240,133,122,.45)}
.tf-log li.is-win{border-color:rgba(77,210,160,.45)}
.tf-log-date{margin:0 0 .35rem!important;font:700 .92rem 'Outfit', 'Mitr', sans-serif}
.tf-log li.is-loss .tf-log-date{color:#f6a59c}.tf-log li.is-win .tf-log-date{color:#8fe0c0}
.tf-log li.is-loss .tf-log-date::before{content:"🔴 ขาดทุน · "}.tf-log li.is-win .tf-log-date::before{content:"🟢 กำไร · "}
.tf-log p{margin:0 0 .6rem!important;color:#e3e6ee;line-height:1.85}
.tf-log-rule{margin:0!important;padding:.6rem .8rem;border-radius:10px;background:rgba(226,201,143,.08);color:#f0e7d1!important}

.tf-myth{margin:1.4rem 0 0;padding:1rem 1.2rem;border-radius:14px;border:1px solid rgba(242,166,90,.5);background:rgba(242,166,90,.08)}
.tf-myth b{color:#f8cfa2}
.tf-myth p{margin:.35rem 0 0!important;color:#eee6dc;line-height:1.85}

@media(max-width:700px){
.tf-split{grid-template-columns:1fr}.tf-split-plus{justify-self:center}
.tf-bar{grid-template-columns:1fr auto;grid-template-areas:"l v" "t t"}
.tf-bar span{grid-area:l}.tf-bar b{grid-area:v}.tf-bar-track{grid-area:t}
.tf-payoff-facts{grid-template-columns:1fr}
.tf-steps li{grid-template-columns:2.4rem minmax(0,1fr)}.tf-steps span{grid-column:2}
.tf-toy{padding:1rem .9rem}
}
@media(prefers-reduced-motion:reduce){.tf-bar-track i,.tf-toy-tabs button{transition:none!important}}
.tf-payoff svg,.tf-gexmap svg{max-width:760px;margin:0 auto}
@media(max-width:700px){.tf-payoff text,.tf-gexmap text{font-size:22px}.tf-payoff-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}.tf-payoff-facts div{padding:.5rem .55rem}.tf-payoff-facts dt{font-size:.76rem}.tf-payoff-facts dd{font-size:1rem}}
@media(max-width:700px){.tf-payoff .lab{display:none}}
.tf-gloss3{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem;margin:1rem 0}
.tf-gloss3 div{padding:.75rem .9rem;border-radius:12px;border:1px solid rgba(121,189,242,.35);background:rgba(121,189,242,.07)}
.tf-gloss3 dt{font:700 1rem 'Outfit', 'Mitr', sans-serif;color:#fff}
.tf-gloss3 dd{margin:.2rem 0 0;color:#dfe3ec;font-size:.95rem;line-height:1.6}
.tf-myth ul{margin:.4rem 0 0;padding-left:1.2rem;color:#eee6dc;line-height:1.85}
.tf-more{margin:1rem 0}
.tf-more summary{cursor:pointer;min-height:44px;display:flex;align-items:center;padding:.5rem .9rem;border:1px solid rgba(226,201,143,.4);border-radius:12px;color:var(--tf-gold-2);font:600 .98rem 'Outfit', 'Mitr', sans-serif;list-style:none}
.tf-more summary::-webkit-details-marker{display:none}
.tf-more[open] summary{margin-bottom:.4rem}
.tf-example{margin:1.2rem 0;padding:1rem 1.2rem;border-radius:14px;border:1px solid rgba(121,189,242,.35);background:rgba(121,189,242,.06)}
.tf-example ol{margin:.4rem 0 .6rem;padding-left:1.3rem;color:#e3e6ee;line-height:1.85}
.tf-example li{margin:.25rem 0}

/* bottom-to-top reading cue (Audi 2026-10-11): arrowed spine, start badge on layer 0, direction label */
.tf-layers ol::after{content:"";position:absolute;top:-15px;left:50%;transform:translateX(-50%);border:7px solid transparent;border-bottom:10px solid #f2a65a;border-top:0;opacity:.85;z-index:-1}
.tf-layers ol::before{width:3px;opacity:.6}
.tf-layer-start{position:absolute;left:-.4rem;top:50%;transform:translate(-100%,-50%);padding:.3rem .65rem;border-radius:999px;background:var(--tf-gold);color:#101827;font:700 .82rem 'Outfit', 'Mitr', sans-serif;white-space:nowrap;animation:tf-nudge 2.4s ease-in-out infinite}
@keyframes tf-nudge{0%,100%{transform:translate(-100%,-50%)}50%{transform:translate(calc(-100% - 6px),-50%)}}
.tf-layers-axis.tf-down b{color:var(--tf-gold-2)}
.tf-page .tf-layer a{position:relative}
@media(max-width:900px){.tf-layer-start{left:auto;right:.6rem;top:0;transform:translateY(-55%)!important;transform:translateY(-55%);font-size:.74rem;padding:.15rem .55rem;animation:none}}
@media(prefers-reduced-motion:reduce){.tf-layer-start{animation:none}}

/* ===== paper content boxes (Audi 2026-10-11): reading boxes are cream paper with dark ink, never navy-on-navy.
   Same system as the Template card and partnership.html P1: paper #f6f1e6 · ink #1c1f2a · secondary #353d50 · one accent navy #1f3d66.
   Interactive data toys and the hero/rail stay on navy. ===== */
.tf-page{--paper:#f6f1e6;--paper-2:#fffdf8;--paper-line:#e2d6bb;--ink:#1c1f2a;--ink-2:#353d50;--ink-accent:#1f3d66}
.tf-page .mb-card,.tf-page .mb-step,.tf-page .tf-why,.tf-page .tf-tool,.tf-page .tf-person,.tf-page .tf-technical-order,.tf-page .tf-source-rule,
.tf-page .tf-grill-pending,.tf-page .tf-split-part,.tf-page .tf-gloss3 div,.tf-page .tf-example,.tf-page .tf-myth,.tf-page .tf-log li,
.tf-page .tf-decision,.tf-page .tf-stage-body,.tf-page .tf-investors,.tf-page .mb-next{background:var(--paper)!important;border:1px solid var(--paper-line)!important;color:var(--ink)!important;box-shadow:0 1px 0 rgba(0,0,0,.25)}
.tf-page .mb-card :is(p,li,dd,small,span:not(.ic):not(.tf-sc-k)),.tf-page .mb-step,.tf-page .tf-why :is(p,span),.tf-page .tf-tool :is(p,dd,.tf-tool-use),
.tf-page .tf-person :is(p,.tf-person-tag),.tf-page .tf-technical-order :is(p,li),.tf-page .tf-source-rule :is(p,li),.tf-page .tf-grill-pending,
.tf-page .tf-split-part p,.tf-page .tf-gloss3 dd,.tf-page .tf-example :is(p,li),.tf-page .tf-myth :is(p,li),.tf-page .tf-log p,.tf-page .tf-decision p,
.tf-page .tf-stage-body :is(p,li,dd),.tf-page .tf-inv small,.tf-page .mb-next span{color:var(--ink-2)!important}
.tf-page :is(.mb-card,.mb-step,.tf-why,.tf-tool,.tf-person,.tf-technical-order,.tf-source-rule,.tf-grill-pending,.tf-split-part,.tf-gloss3 div,.tf-example,.tf-myth,.tf-log li,.tf-decision,.tf-stage-body,.tf-investors,.mb-next) :is(b,strong,h3,h4,dt,.tf-sub,.tf-influence-name,.tf-inv-head p){color:var(--ink)!important}
.tf-page :is(.mb-card,.tf-why,.tf-tool,.tf-person,.tf-technical-order,.tf-source-rule,.tf-example,.tf-myth,.tf-log li,.tf-decision,.tf-stage-body,.tf-investors,.tf-grill-pending) a:not(.tf-inv-link){color:var(--ink-accent)!important}
.tf-page :is(.mb-card,.tf-why,.tf-tool,.tf-person,.tf-example,.tf-myth,.tf-log li,.tf-decision,.tf-stage-body,.tf-split-part) a.tf-wk{color:var(--ink)!important;text-decoration-color:#b08a2e!important}

/* cards with a coloured identity keep it as a top rule, text stays dark */
.tf-page .mb-card{border-top:4px solid var(--cc,#c9a84c)!important}
.tf-page .mb-card .ex{color:var(--ink-accent)!important;border-top-color:var(--paper-line)!important}
.tf-page .mb-card .num{color:rgba(28,31,42,.18)!important}
.tf-page .mb-card h3 .tf-sc-k{background:rgba(28,31,42,.08)!important;color:var(--ink)!important}
.tf-page .mb-step b{color:var(--ink)!important}
.tf-page .mb-arrow{color:#c9a84c}

/* semantic paper tints: blue = definition/example, amber = caution, green/red = outcome */
.tf-page .tf-gloss3 div,.tf-page .tf-example,.tf-page .tf-split-part.is-in{background:#eaf1fb!important;border-color:#b9cce6!important}
.tf-page .tf-myth,.tf-page .tf-grill-pending,.tf-page .tf-split-part.is-ex{background:#fbf1dc!important;border-color:#e3c27e!important}
.tf-page .tf-myth b,.tf-page .tf-grill-pending b{color:#6b4a0c!important}
.tf-page .tf-decision.go,.tf-page .tf-log li.is-win{background:#eaf6ef!important;border-color:#8cc9a9!important}
.tf-page .tf-decision.wait{background:#fbf1dc!important;border-color:#e3c27e!important}
.tf-page .tf-decision.stop,.tf-page .tf-log li.is-loss{background:#fbebe8!important;border-color:#e6a69d!important}
.tf-page .tf-decision.go b,.tf-page .tf-log li.is-win .tf-log-date{color:#14603f!important}
.tf-page .tf-decision.wait b{color:#6b4a0c!important}
.tf-page .tf-decision.stop b,.tf-page .tf-log li.is-loss .tf-log-date{color:#9a2a1f!important}
.tf-page .tf-log-rule{background:var(--paper-2)!important;border:1px solid var(--paper-line);color:var(--ink)!important}

/* gate cards: the open body becomes the paper reading sheet; summary bar stays on navy for scanning */
.tf-page .tf-stage[open]{background:#0f1a30}
.tf-page .tf-stage-body{margin:0 .6rem .7rem;padding:1.1rem 1.1rem 1.2rem!important;border-radius:12px;animation:none}
.tf-page .tf-question{background:var(--paper-2)!important;border:1px solid var(--paper-line)!important;color:var(--ink)!important}
.tf-page .tf-question span{color:var(--ink-accent)!important}
.tf-page .tf-stage-explanation{color:var(--ink-2)!important}
.tf-page .tf-checks li{background:var(--paper-2)!important;border:1px solid var(--paper-line);color:var(--ink-2)!important}
.tf-page .tf-checks li::before{color:var(--ink-accent)!important}
.tf-page .tf-why{background:var(--paper-2)!important}
.tf-page .tf-why>span{color:var(--ink-accent)!important}
.tf-page .tf-trap{background:#fbebe8!important;border-color:#e6a69d!important;color:var(--ink-2)!important}
.tf-page .tf-trap b{color:#9a2a1f!important}
.tf-page .tf-stage-terms dl>div,.tf-page .tf-tool-terms dl>div{background:#eaf1fb!important;border-color:#b9cce6!important}
.tf-page .tf-stage-terms dt,.tf-page .tf-tool-terms dt{color:var(--ink)!important}
.tf-page .tf-stage-terms dd,.tf-page .tf-tool-terms dd{color:var(--ink-2)!important}
.tf-page .tf-stage-output{background:#fbf1dc!important;border-color:#e3c27e!important}
.tf-page .tf-stage-output span{color:#6b4a0c!important}
.tf-page .tf-stage-output p{color:var(--ink)!important}

/* tools, people, chains */
.tf-page .tf-tool-k{color:var(--ink-accent)!important}
.tf-page .tf-tool-terms summary{border-color:var(--paper-line)!important;color:var(--ink-accent)!important;background:var(--paper-2)}
.tf-page .tf-chain li{background:var(--paper-2)!important;border-color:var(--paper-line)!important;color:var(--ink-2)!important}
.tf-page .tf-chain b{color:var(--ink)!important}
.tf-page .tf-note{color:var(--ink-2)!important}
.tf-page .tf-avatar{background:#e8ddf7!important;border-color:#b79ce6!important;color:#3d2a66!important}
.tf-page .tf-person h3{color:#3d2a66!important}

/* investors block on paper */
.tf-page .tf-inv-link{background:var(--paper-2)!important;border-color:var(--paper-line)!important;color:var(--ink)!important}
.tf-page .tf-inv b{color:var(--ink)!important}
.tf-page .tf-inv-head a{color:var(--ink-accent)!important}
.tf-page .tf-investors .tf-btn-ghost{color:var(--ink);border-color:#b9ad91}

/* next-lesson block */
.tf-page .mb-next b{color:var(--ink)!important}
.tf-page .mb-next a{background:var(--ink-accent)!important;color:#fff!important}
.tf-page .tf-stage-body .tf-question,.tf-page .tf-stage-body .tf-why{border-color:#cdb98c!important}

/* ===== paper v2 (2026-10-11): one box per section, no box inside a box, fewer hues, bigger reading type ===== */
.tf-page{--paper:var(--ak-paper);--paper-line:var(--ak-paper-line);--ink:var(--ak-ink);--ink-2:var(--ak-ink-2);--ink-accent:var(--ak-accent)}

/* gate body: question = type, checks = rows, meaning = hairline section, terms = definition rows, output = the one box */
.tf-page .tf-stage-body{padding:var(--ak-pad)!important;font-size:1.04rem}
.tf-page .tf-question{background:none!important;border:0!important;padding:0!important;font:600 clamp(1.2rem,1rem + .6vw,1.45rem)/1.5 'Outfit', 'Mitr', sans-serif!important;color:var(--ink)!important}
.tf-page .tf-question span{font:600 .9rem 'Outfit', 'Mitr', sans-serif!important;color:var(--ak-ink-3)!important}
.tf-page .tf-stage-explanation{max-width:68ch;font-size:1.05rem;line-height:1.85}
.tf-page .tf-stage-grid{align-items:start;gap:clamp(1.2rem,3vw,2.5rem)}
.tf-page .tf-checks ul{gap:0}
.tf-page .tf-checks li{background:none!important;border:0!important;border-top:1px solid var(--paper-line)!important;border-radius:0!important;padding:.75rem 0 .75rem 1.9rem!important;font-size:1rem!important}
.tf-page .tf-checks li:first-child{border-top:0!important}
.tf-page .tf-checks li::before{left:.2rem;top:.75rem;color:var(--ak-gold)!important}
.tf-page .tf-stage-body .tf-why{background:none!important;border:0!important;border-top:2px solid var(--ak-gold)!important;border-radius:0!important;padding:.9rem 0 0!important;box-shadow:none!important}
.tf-page .tf-why>span{color:var(--ink)!important;font-size:1rem!important}
.tf-page .tf-why p{font-size:1rem}
.tf-page .tf-trap{background:var(--ak-warn-bg)!important;border:0!important}
.tf-page .tf-stage-terms dl{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;gap:0 2rem!important}
.tf-page .tf-stage-terms dl>div,.tf-page .tf-tool-terms dl>div{background:none!important;border:0!important;border-top:1px solid var(--paper-line)!important;border-radius:0!important;padding:.75rem 0!important}
.tf-page .tf-stage-terms dd,.tf-page .tf-tool-terms dd{font-size:.98rem}
.tf-page .tf-stage-output{background:var(--ak-emph-bg)!important;border:1.5px solid var(--ak-emph-line)!important}

/* tools: lens cards stay the paper boxes; their glossary is a quiet link, not a box; SMC lens is visibly optional */
.tf-page .tf-tool-terms summary{background:none!important;border:0!important;padding:.4rem 0!important;min-height:44px;color:var(--ink-accent)!important;text-decoration:underline;text-underline-offset:4px;justify-content:flex-start;gap:.4rem}
.tf-page .tf-tool:nth-child(4){border-style:dashed!important;background:#efe9db!important}
.tf-page .tf-tool-use{font-size:1rem!important}

/* flows and chains: diagrams sit on navy, not paper */
.tf-page .mb-step{background:rgba(226,201,143,.07)!important;border:1px solid rgba(226,201,143,.35)!important;color:#dfe3ec!important;box-shadow:none}
.tf-page .mb-step b{color:#fff!important}
.tf-page .tf-technical-order,.tf-page .tf-source-rule{background:none!important;border:0!important;box-shadow:none!important;padding:0!important}
.tf-page .tf-technical-order .tf-sub,.tf-page .tf-source-rule .tf-sub{color:#fff!important}
.tf-page .tf-chain{gap:0;border-top:2px solid rgba(226,201,143,.5)}
.tf-page .tf-chain li{background:none!important;border:0!important;border-radius:0;padding:.9rem 1rem .4rem 2.1rem;color:#dfe3ec!important}
.tf-page .tf-chain li::before{top:.95rem}
.tf-page .tf-chain b{color:#fff!important}
.tf-page .tf-technical-order .tf-note,.tf-page .tf-source-rule .tf-note{color:#dfe3ec!important;margin-top:1rem!important}

/* investors: padded panel, faces without sub-cards, owner edit pill small and quiet */
.tf-page .tf-investors{padding:var(--ak-pad)!important;border-radius:var(--ak-radius)}
.tf-page .tf-inv-link{background:none!important;border:0!important}
.tf-page .tf-inv-face{background:var(--ak-emph-bg)!important;border-color:var(--ak-gold)!important}
.tf-page .tf-inv-initials{color:var(--ak-ink)!important}
.tf-page .tf-inv-edit{min-height:32px;background:var(--paper)!important;color:var(--ink-accent)!important;border:1px solid var(--paper-line)!important}

/* fewer hues on paper: definitions/examples use the neutral inner tone, not blue */
.tf-page .tf-gloss3 div,.tf-page .tf-example,.tf-page .tf-split-part.is-in{background:#efe9db!important;border-color:var(--paper-line)!important}
.tf-page .tf-avatar{background:var(--ak-emph-bg)!important;border-color:var(--ak-gold)!important;color:var(--ak-ink)!important}
.tf-page .tf-person h3{color:var(--ink)!important}

/* journal rule = text after a hairline, not a box inside the entry */
.tf-page .tf-log-rule{background:none!important;border:0!important;border-top:1px solid rgba(28,31,42,.15)!important;border-radius:0!important;padding:.7rem 0 0!important}

/* motion: progress bars animate transform, not width */
.tf-progress-track span,.tf-bar-track i{transition:transform .45s cubic-bezier(.22,1,.36,1)!important}
/* diagrams on navy: beat the earlier paper ink rules */
.kr-thesis.tf-page :is(.mb-step,.tf-technical-order,.tf-source-rule) :is(b,strong,.tf-sub){color:#fff!important}
.kr-thesis.tf-page :is(.mb-step,.tf-technical-order,.tf-source-rule) :is(p,li,span:not(.ic),.tf-note){color:#dfe3ec!important}
.kr-thesis.tf-page :is(.mb-step,.tf-technical-order,.tf-source-rule) a,.kr-thesis.tf-page :is(.mb-step,.tf-technical-order,.tf-source-rule) a.tf-wk{color:#f4e1b2!important;text-decoration-color:rgba(226,201,143,.7)!important}

/* wiki term card v2 (Audi 2026-10-11): a cream dictionary card, not a navy blob */
.tf-wk-card{position:absolute;z-index:60;padding:1rem 1.1rem 1.05rem;border:1px solid #e2d6bb;border-top:3px solid #c9a84c;border-radius:14px;background:#fffdf8;color:#353d50;box-shadow:0 8px 8px rgba(0,0,0,.35);font-family:Sarabun,sans-serif;animation:tf-pop .16s cubic-bezier(.22,1,.36,1)}
.tf-wk-caret{position:absolute;top:-9px;width:14px;height:14px;margin-left:-7px;background:#fffdf8;border-left:3px solid #c9a84c;border-top:3px solid #c9a84c;transform:rotate(45deg)}
.tf-wk-card.is-above .tf-wk-caret{top:auto;bottom:-8px;border:0;border-right:1px solid #e2d6bb;border-bottom:1px solid #e2d6bb}
.tf-wk-card .tf-wk-k{margin:0 0 .15rem!important;color:#5a6172;font:600 .8rem 'Outfit', 'Mitr', sans-serif}
.tf-wk-card .tf-wk-term{display:block;color:#1c1f2a;font:700 1.15rem/1.3 'Outfit', 'Mitr', sans-serif}
.tf-wk-card .tf-wk-def{margin:.4rem 0 0!important;color:#1c1f2a;font-size:1rem;line-height:1.65}
.tf-wk-card .tf-wk-lesson{margin:.75rem 0 0!important;padding-top:.6rem;border-top:1px solid #e2d6bb;color:#353d50;font-size:.9rem;line-height:1.55}
.tf-wk-card .tf-wk-lesson b{display:inline;color:#1c1f2a;font:600 .92rem 'Outfit', 'Mitr', sans-serif}
.tf-wk-card .tf-wk-lesson small{display:block;margin-top:.15rem;color:#5a6172;font-size:.84rem}
.tf-wk-card a.tf-wk-go{display:inline-flex;align-items:center;min-height:40px;margin-top:.7rem;padding:.4rem .9rem;border-radius:10px;background:#1f3d66;color:#fff;font:600 .9rem 'Outfit', 'Mitr', sans-serif;text-decoration:none}
.tf-wk-card a.tf-wk-go:hover{background:#2a5185}
.tf-wk-card a.tf-wk-go:focus-visible{outline:2px solid #c9a84c;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.tf-wk-card{animation:none}}
@media(min-width:1900px){.tf-wk-card{padding:1.15rem 1.3rem 1.2rem}.tf-wk-card .tf-wk-k{font-size:.92rem}.tf-wk-card .tf-wk-term{font-size:1.35rem}.tf-wk-card .tf-wk-def{font-size:1.15rem}.tf-wk-card .tf-wk-lesson{font-size:1.02rem}.tf-wk-card .tf-wk-lesson b{font-size:1.04rem}.tf-wk-card .tf-wk-lesson small{font-size:.95rem}.tf-wk-card a.tf-wk-go{font-size:1rem;min-height:46px}}
@media(min-width:2300px){.tf-wk-card .tf-wk-term{font-size:1.5rem}.tf-wk-card .tf-wk-def{font-size:1.25rem}}

/* chapter 0 pieces */
.tf-m-qs,.tf-m-rules{margin:1.2rem 0}
.tf-m-qs .tf-sub{color:var(--ak-ink)!important}
.tf-m-qs li,.tf-m-rules li{color:var(--ak-ink-2);font-size:1.02rem;line-height:1.75}
.tf-m-rules b{color:var(--ak-ink)}
.tf-toy-big{margin:.4rem 0 0!important;color:#fff;font:700 clamp(1.3rem,1rem + 1vw,1.7rem)/1.4 'Outfit', 'Mitr', sans-serif}
.tf-toy-big b{color:var(--tf-gold-2)}
.tf-toy-big small{display:block;margin-top:.35rem;color:var(--tf-muted);font:400 .95rem Sarabun,sans-serif}
.tf-stack{margin:1.3rem 0}
.tf-stack-bar{display:flex;height:64px;border-radius:12px;overflow:hidden;border:1px solid rgba(242,166,90,.5)}
.tf-stack-bar span{position:relative;display:grid;align-content:center;justify-items:center;min-width:0;padding:0 .2rem;background:rgba(242,166,90,.16);border-right:1px solid rgba(5,10,23,.7);color:#f8cfa2;overflow:hidden}
.tf-stack-bar span:nth-child(even){background:rgba(242,166,90,.26)}
.tf-stack-bar b{font:600 .72rem 'Outfit', 'Mitr', sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.tf-stack-bar small{font-size:.7rem;color:#f0e2cf}
.tf-stack-total{margin:.6rem 0 0!important;color:#dfe3ec}
.tf-stack-total b{color:#f8cfa2;font-size:1.1rem}
.tf-stack-total small{color:var(--tf-muted)}
@media(max-width:700px){.tf-stack-bar{height:48px}.tf-stack-bar b{display:none}.tf-stack-bar small{font-size:.62rem}}
