@font-face{font-family:FC Sara Samkan;src:url(/fonts/FCSaraSamkan-Light.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:FC Sara Samkan;src:url(/fonts/FCSaraSamkan-LightItalic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:FC Sara Samkan;src:url(/fonts/FCSaraSamkan-Medium.woff2) format("woff2");font-weight:500 700;font-style:normal;font-display:swap}@font-face{font-family:FC Sara Samkan;src:url(/fonts/FCSaraSamkan-MediumItalic.woff2) format("woff2");font-weight:500 700;font-style:italic;font-display:swap}:root{--bg: #ffffff;--text: #1c1c1c;--muted: #6b6b6b;--faint: #969696;--border: #e8e8e8;--hover: #f6f6f6;--accent: #1c1c1c;--band: #f7f7f6;--font-sans: "FC Sara Samkan", system-ui, -apple-system, sans-serif;--font-heading: "Kanit", system-ui, sans-serif;--site: 1120px;--maxread: 720px;--read: 720px}[data-theme=dark]{--bg: #121212;--text: #ededed;--muted: #9a9a9a;--faint: #6f6f6f;--border: #242424;--hover: #1a1a1a;--accent: #ededed;--band: #161616}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:18px;line-height:1.75;-webkit-font-smoothing:antialiased;transition:background .25s,color .25s}a{color:inherit;text-decoration:none}.wrap{max-width:var(--site);margin:0 auto;padding:0 32px}@media(max-width:900px){.wrap{padding-left:20px;padding-right:20px}}header.site{position:sticky;top:0;z-index:40;background:var(--bg);border-bottom:1px solid var(--border);transition:background .25s}.hbar{max-width:var(--site);margin:0 auto;padding:18px 32px;display:flex;align-items:center;gap:28px}.logo{font-family:var(--font-heading);font-weight:600;font-size:1.32rem;letter-spacing:-.02em;white-space:nowrap}.hnav{display:flex;gap:24px;margin-left:8px}.hnav a{font-size:.92rem;color:var(--muted);position:relative;padding:4px 0;transition:color .15s}.hnav a:after{content:"";position:absolute;left:0;bottom:0;width:0;height:1px;background:var(--text);transition:width .22s}.hnav a:hover{color:var(--text)}.hnav a:hover:after{width:100%}.hspace{flex:1}.iconbtn{background:none;border:none;cursor:pointer;color:var(--muted);width:38px;height:38px;display:grid;place-items:center;border-radius:50%;transition:color .15s,background .15s}.iconbtn:hover{color:var(--text);background:var(--hover)}.iconbtn svg{width:19px;height:19px}.hamb{display:none}.htoggle{display:grid}footer.site{border-top:1px solid var(--border);padding:30px 0}.fbar{max-width:var(--site);margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.fbrand{font-family:var(--font-heading);font-weight:500;font-size:.92rem}.flinks{display:flex;gap:18px;font-size:.8rem;color:var(--muted)}.flinks a:hover{color:var(--text)}.moon,[data-theme=dark] .sun{display:none}[data-theme=dark] .moon{display:block}.drawer{position:fixed;inset:0;background:var(--bg);z-index:60;padding:22px;transform:translate(-100%);transition:transform .25s;display:flex;flex-direction:column}.drawer.open{transform:translate(0)}.drawer .close{align-self:flex-end;background:none;border:none;font-size:1.7rem;color:var(--text);cursor:pointer;line-height:1}.drawer nav{margin-top:14px;display:flex;flex-direction:column}.drawer nav a{font-size:1.08rem;padding:11px 0;border-bottom:1px solid var(--border)}.dtoggle{display:flex;align-items:center;gap:10px;margin-top:22px;background:none;border:1px solid var(--border);color:var(--muted);padding:11px 16px;cursor:pointer;font-family:var(--font-sans);font-size:.98rem;width:max-content}.dtoggle:hover{color:var(--text);border-color:var(--text)}.dtoggle svg{width:18px;height:18px}.lead{padding:64px 0 30px;border-bottom:1px solid var(--border)}.lead .eyebrow{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--faint);margin-bottom:14px}.lead h1{font-family:var(--font-heading);font-weight:600;font-size:2.3rem;line-height:1.25;letter-spacing:-.01em;max-width:18ch}.lead p{margin-top:16px;color:var(--muted);font-size:1.02rem;max-width:50ch}.section-h{font-family:var(--font-heading);font-weight:500;font-size:.95rem;letter-spacing:.02em;color:var(--muted);margin:40px 0 4px}.feed{max-width:840px}.post{display:grid;grid-template-columns:42px 1fr;gap:8px;padding:28px 0;border-bottom:1px solid var(--border)}.post:hover .ptitle{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.post .idx{font-size:.78rem;color:var(--faint);padding-top:5px}.cat{font-size:.7rem;letter-spacing:.03em;color:var(--muted);font-family:var(--font-heading);font-weight:500}.ptitle{font-family:var(--font-heading);font-weight:600;font-size:1.3rem;line-height:1.35;letter-spacing:-.01em;margin:6px 0 8px}.excerpt{color:var(--muted);font-size:.95rem;line-height:1.7;max-width:54ch}.meta{margin-top:12px;font-size:.76rem;color:var(--faint);display:flex;gap:14px}.more{margin:34px 0 0}.more a{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;font-family:var(--font-heading);font-weight:500;color:var(--text);border:1px solid var(--border);padding:11px 22px;transition:border-color .15s,background .15s}.more a:hover{border-color:var(--text);background:var(--hover)}.about{background:var(--band);border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:64px;padding:64px 0}.about .inner{max-width:var(--maxread)}.about .eyebrow{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--faint);margin-bottom:14px}.about h2{font-family:var(--font-heading);font-weight:600;font-size:1.7rem;letter-spacing:-.01em;margin-bottom:18px}.about p{color:var(--muted);font-size:1rem;margin-bottom:14px;max-width:58ch}.about strong{color:var(--text);font-weight:500}.sub{padding:72px 0;text-align:center}.sub h2{font-family:var(--font-heading);font-weight:600;font-size:1.7rem;letter-spacing:-.01em}.sub .en{display:block;font-size:.82rem;font-style:italic;color:var(--faint);margin-top:6px;letter-spacing:.01em}.sub p{color:var(--muted);font-size:.95rem;margin:14px auto 26px;max-width:42ch}.endsub{background:var(--band);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:64px 0;text-align:center;margin-top:40px}.endsub h2{font-family:var(--font-heading);font-weight:600;font-size:1.55rem}.endsub .en{display:block;font-size:.8rem;font-style:italic;color:var(--faint);margin-top:6px}.endsub p{color:var(--muted);font-size:.92rem;margin:12px auto 24px;max-width:40ch}.subform{max-width:420px;margin:0 auto;display:flex;flex-direction:column;gap:10px}.endsub .subform{max-width:400px;padding:0 20px}.subform input{padding:12px 14px;font-family:var(--font-sans);font-size:.92rem;background:var(--bg);color:var(--text);border:1px solid var(--border);outline:none;transition:border-color .15s}.subform input:focus{border-color:var(--text)}.subform .hp{display:none}.consent{display:flex;gap:8px;align-items:flex-start;font-size:.74rem;color:var(--muted);text-align:left;line-height:1.45}.consent input{margin-top:3px;accent-color:var(--accent)}.consent a{text-decoration:underline}.btn{padding:13px;cursor:pointer;font-family:var(--font-sans);font-size:.9rem;font-weight:500;letter-spacing:.02em;background:var(--accent);color:var(--bg);border:1px solid var(--accent);transition:opacity .15s}.btn:hover{opacity:.85}.searchov{position:fixed;inset:0;z-index:90;background:#0006;display:flex;align-items:flex-start;justify-content:center;padding:64px 20px}.searchov[hidden]{display:none}.searchbox{width:100%;max-width:600px;background:var(--bg);border:1px solid var(--border);padding:20px;max-height:calc(100vh - 128px);overflow:auto}.searchtop{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.searchlabel{font-family:var(--font-heading);font-weight:500;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}.searchclose{background:none;border:none;font-size:1.6rem;line-height:1;color:var(--text);cursor:pointer}#pf{--pagefind-ui-scale: .9;--pagefind-ui-primary: var(--text);--pagefind-ui-text: var(--text);--pagefind-ui-background: var(--bg);--pagefind-ui-border: var(--border);--pagefind-ui-tag: var(--band);--pagefind-ui-border-width: 1px;--pagefind-ui-border-radius: 0;--pagefind-ui-font: var(--font-sans)}.substatus{font-size:.78rem;min-height:1.1em;margin-top:2px}.substatus.ok{color:var(--text)}.substatus.err{color:var(--muted)}.pdpa{position:fixed;left:50%;bottom:18px;transform:translate(-50%);width:calc(100% - 36px);max-width:640px;background:var(--bg);border:1px solid var(--border);padding:14px 16px;display:flex;align-items:center;gap:14px;font-size:.78rem;color:var(--muted);z-index:50}.pdpa span{flex:1;line-height:1.5}.pdpa a{text-decoration:underline}.pdpa .accept{flex:none;padding:8px 18px;cursor:pointer;white-space:nowrap;background:var(--accent);color:var(--bg);border:none;font-family:var(--font-sans);font-size:.76rem;font-weight:500}.pdpa.hide{display:none}.page{max-width:var(--maxread);margin:0 auto;padding:64px 32px 72px}.page .eyebrow{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--faint);margin-bottom:14px}.page h1{font-family:var(--font-heading);font-weight:600;font-size:2.1rem;line-height:1.25;letter-spacing:-.01em;margin-bottom:8px}.page .sub{color:var(--muted);font-size:1rem;margin-bottom:32px}.page h2{font-family:var(--font-heading);font-weight:600;font-size:1.35rem;letter-spacing:-.01em;margin:36px 0 12px}.page p{color:var(--text);margin:0 0 16px}.page p.muted{color:var(--muted)}.page ul{margin:0 0 16px 22px;color:var(--text)}.page li{margin:6px 0}.page a.ilink{text-decoration:underline;text-underline-offset:3px}.page strong{font-weight:500}.pillars{max-width:840px;margin:0 auto;padding:0 32px 72px}.pillar{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:22px 0;border-bottom:1px solid var(--border)}.pillar:hover .pillar-name{text-decoration:underline;text-underline-offset:4px}.pillar-name{font-family:var(--font-heading);font-weight:600;font-size:1.25rem;letter-spacing:-.01em}.pillar-count{font-size:.8rem;color:var(--faint);white-space:nowrap}@media(max-width:900px){.page{padding:44px 20px 56px}.pillars{padding-left:20px;padding-right:20px}}.progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--text);z-index:80;transition:width .08s linear}.article-wrap{max-width:1040px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:minmax(0,var(--read)) 200px;gap:56px;justify-content:center}article{padding:56px 0 40px;min-width:0}.ahead{margin-bottom:40px}.ahead .cat{font-family:var(--font-heading);font-weight:500;font-size:.78rem;letter-spacing:.03em;color:var(--muted)}.ahead h1{font-family:var(--font-heading);font-weight:600;font-size:2.35rem;line-height:1.25;letter-spacing:-.01em;margin:14px 0 16px}.ahead .ameta{display:flex;gap:14px;font-size:.8rem;color:var(--faint)}.ahead .lede{margin-top:18px;font-size:1.08rem;color:var(--muted);line-height:1.7}.cover{width:100%;aspect-ratio:16/9;background:var(--band);border:1px solid var(--border);margin:8px 0 36px;display:grid;place-items:center;color:var(--faint);font-size:.8rem}.cover-img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--border);margin:8px 0 36px}.body h2{font-family:var(--font-heading);font-weight:600;font-size:1.5rem;letter-spacing:-.01em;margin:42px 0 14px;scroll-margin-top:90px}.body h3{font-family:var(--font-heading);font-weight:500;font-size:1.18rem;margin:30px 0 10px;scroll-margin-top:90px}.body p{margin:0 0 18px;color:var(--text)}.body blockquote{border-left:2px solid var(--text);padding:4px 0 4px 20px;margin:24px 0;color:var(--muted);font-size:1.05rem}.body ul,.body ol{margin:0 0 18px 22px;color:var(--text)}.body li{margin:6px 0}.body img{max-width:100%}.codeblock{position:relative;background:var(--band);border:1px solid var(--border);padding:18px;margin:22px 0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.86rem;line-height:1.6;color:var(--text);overflow:auto;white-space:pre}.codeblock code{font-family:inherit;background:none;color:inherit}.codeblock .copy{position:absolute;top:8px;right:8px;font-family:var(--font-sans);font-size:.7rem;color:var(--muted);background:var(--bg);border:1px solid var(--border);padding:4px 8px;cursor:pointer}.codeblock .copy:hover{color:var(--text)}.toc{position:sticky;top:90px;align-self:start;font-size:.84rem;padding-top:56px}.toc .tlabel{font-family:var(--font-heading);font-weight:500;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:14px}.toc a{display:block;color:var(--muted);padding:7px 0 7px 12px;border-left:1px solid var(--border);line-height:1.4;transition:color .15s,border-color .15s}.toc a.sub{padding-left:24px;font-size:.8rem}.toc a:hover{color:var(--text)}.toc a.active{color:var(--text);border-left-color:var(--text);font-weight:500}.prevnext{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:48px;padding-top:28px;border-top:1px solid var(--border)}.pn{display:flex;flex-direction:column;gap:6px}.pn-next{text-align:right}.pn-label{font-size:.74rem;color:var(--faint);font-family:var(--font-heading);font-weight:500}.pn-title{font-family:var(--font-heading);font-weight:500;font-size:.98rem;line-height:1.4;color:var(--text)}.pn:hover .pn-title{text-decoration:underline;text-underline-offset:3px}.totop{position:fixed;right:18px;bottom:18px;width:50px;height:50px;z-index:70;border:none;background:none;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s}.totop.show{opacity:1;pointer-events:auto}.totop .ring{transform:rotate(-90deg)}.totop .bg{fill:var(--bg);stroke:var(--border);stroke-width:2}.totop .fg{fill:none;stroke:var(--text);stroke-width:2;stroke-linecap:round;transition:stroke-dashoffset .08s linear}.totop .arr{position:absolute;inset:0;display:grid;place-items:center;color:var(--text)}.totop .arr svg{width:18px;height:18px}@media(min-width:981px){.totop{display:none}}@media(max-width:980px){.article-wrap{grid-template-columns:1fr;gap:0;max-width:var(--read);padding-left:22px;padding-right:22px}.toc{display:none}article{padding:40px 0 30px}.ahead h1{font-size:1.85rem}.prevnext{grid-template-columns:1fr;gap:18px}.pn-next{text-align:left}}@media(max-width:900px){.hnav{display:none}.hamb{display:grid}.htoggle{display:none}.hbar,.fbar{padding-left:20px;padding-right:20px}.lead{padding:44px 0 26px}.lead h1{font-size:1.85rem}.post{grid-template-columns:1fr}.post .idx{display:none}.about{padding:48px 0}.sub{padding:54px 0}}
