@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.site-footer[data-astro-cid-jo6i4kqk]{margin-top:var(--space-4xl);padding:clamp(3rem, 7vw, 5rem) 0 calc(5rem + env(safe-area-inset-bottom,0px));content-visibility:auto;contain-intrinsic-size:auto 480px;border-top:1px solid #ffffff14}body.theme-reading .site-footer[data-astro-cid-jo6i4kqk]{background:0 0;border-top-color:#6c543a1f}.site-footer__inner[data-astro-cid-jo6i4kqk]{gap:var(--space-xl);display:grid}.site-footer__intro[data-astro-cid-jo6i4kqk]{gap:1.2rem;max-width:44rem;padding-bottom:.45rem;display:grid}.site-footer__intro[data-astro-cid-jo6i4kqk] h2[data-astro-cid-jo6i4kqk]{max-width:12ch;font-size:clamp(2rem,4vw,3.4rem);font-family:var(--font-reading);text-wrap:balance;padding-bottom:.14em;font-weight:600;line-height:1.12;display:inline-block}.site-footer__summary[data-astro-cid-jo6i4kqk]{max-width:38rem;color:var(--text-secondary);font-size:1rem;line-height:1.82}.site-footer__signals[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:.65rem;margin-top:.15rem;display:flex}.site-footer__signals[data-astro-cid-jo6i4kqk] span[data-astro-cid-jo6i4kqk]{border:1px solid var(--border-glass);border-radius:var(--radius-pill);background:var(--bg-glass);min-height:2.1rem;color:var(--text-muted);letter-spacing:.04em;align-items:center;padding:.45rem .75rem;font-size:.8rem;display:inline-flex}.site-footer__paths[data-astro-cid-jo6i4kqk]{gap:.9rem;margin-top:.35rem;display:grid}.site-footer__path[data-astro-cid-jo6i4kqk]{transition:transform var(--duration-normal) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out), border-color var(--duration-normal) var(--ease-out), background-color var(--duration-normal) var(--ease-out);grid-template-columns:auto 1fr;align-items:start;gap:1rem;padding:1.15rem 1.2rem;display:grid;position:relative;overflow:hidden}.site-footer__path[data-astro-cid-jo6i4kqk]:after{content:"";background:linear-gradient(90deg, var(--accent-secondary), transparent);opacity:0;transform-origin:0;height:1px;transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out);position:absolute;inset:auto 1.2rem 1rem;transform:scaleX(.45)}.site-footer__path[data-astro-cid-jo6i4kqk]:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md);transform:translateY(-4px)}.site-footer__path[data-astro-cid-jo6i4kqk]:hover:after,.site-footer__path[data-astro-cid-jo6i4kqk]:focus-visible:after{opacity:1;transform:scaleX(1)}.site-footer__path-index[data-astro-cid-jo6i4kqk]{color:var(--text-faint);font-family:var(--font-mono);letter-spacing:.08em;font-size:.78rem}.site-footer__path-content[data-astro-cid-jo6i4kqk]{gap:.45rem;display:grid}.site-footer__path-eyebrow[data-astro-cid-jo6i4kqk]{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:700}.site-footer__path-content[data-astro-cid-jo6i4kqk] h3[data-astro-cid-jo6i4kqk]{font-size:1.15rem;font-family:var(--font-reading);text-wrap:balance;font-weight:600;line-height:1.18}.site-footer__path-content[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{color:var(--text-secondary);line-height:1.7}.site-footer__path-meta[data-astro-cid-jo6i4kqk]{color:var(--text-muted);margin-top:.3rem;font-size:.82rem}.site-footer__meta[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--border-glass);gap:1rem;padding-top:1rem;display:grid}.site-footer__brand[data-astro-cid-jo6i4kqk]{gap:.45rem;display:grid}.site-footer__name[data-astro-cid-jo6i4kqk]{letter-spacing:-.03em;font-size:1rem;font-weight:700}.site-footer__copy[data-astro-cid-jo6i4kqk]{max-width:38rem;color:var(--text-secondary);font-size:.95rem}.site-footer__links[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:1rem;display:flex}.site-footer__links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--text-secondary);font-size:.92rem}.site-footer__links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--text-primary)}@media (width>=768px){.site-footer[data-astro-cid-jo6i4kqk]{padding-bottom:var(--space-3xl)}.site-footer__paths[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(3,minmax(0,1fr))}.site-footer__path[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr;gap:1.25rem;min-height:100%}.site-footer__meta[data-astro-cid-jo6i4kqk]{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.5rem}.site-footer__links[data-astro-cid-jo6i4kqk]{justify-content:flex-end}}@media (prefers-reduced-motion:reduce){.site-footer__path[data-astro-cid-jo6i4kqk],.site-footer__path[data-astro-cid-jo6i4kqk]:after{transition:none}.site-footer__path[data-astro-cid-jo6i4kqk]:hover{transform:none}}.theme-toggle[data-astro-cid-l6lhmie6]{border:1px solid var(--border-glass);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:background .15s var(--ease-out), color .15s var(--ease-out), border-color .15s var(--ease-out);background:0 0;border-radius:50%;place-items:center;display:grid}.theme-toggle[data-astro-cid-l6lhmie6]:hover{color:var(--text-primary);border-color:var(--border-hover);background:var(--bg-glass)}.theme-toggle__icon[data-astro-cid-l6lhmie6]{place-items:center;display:grid}.theme-toggle[data-astro-cid-l6lhmie6].is-dark .theme-toggle__icon--light[data-astro-cid-l6lhmie6]{display:grid}.theme-toggle[data-astro-cid-l6lhmie6].is-dark .theme-toggle__icon--dark[data-astro-cid-l6lhmie6],.theme-toggle[data-astro-cid-l6lhmie6]:not(.is-dark) .theme-toggle__icon--light[data-astro-cid-l6lhmie6]{display:none}.theme-toggle[data-astro-cid-l6lhmie6]:not(.is-dark) .theme-toggle__icon--dark[data-astro-cid-l6lhmie6]{display:grid}.site-header[data-astro-cid-l7arcky5]{z-index:1000;-webkit-backdrop-filter:blur(16px);background:#0a0a0ae0;border-bottom:1px solid #ffffff14;position:fixed;inset:0 0 auto}body.theme-reading .site-header[data-astro-cid-l7arcky5]{-webkit-backdrop-filter:blur(18px)saturate(140%);background:#faf4ebf0;border-bottom-color:#6c543a1f;box-shadow:0 10px 30px #533d270d}.site-header__inner[data-astro-cid-l7arcky5]{min-height:calc(var(--nav-height) + .35rem);justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.site-header__brand[data-astro-cid-l7arcky5]{align-items:center;min-width:0;display:inline-flex}.site-header__name[data-astro-cid-l7arcky5]{font-family:var(--font-reading);letter-spacing:-.01em;color:var(--text-primary);font-size:clamp(1.34rem,1.12rem + .44vw,1.56rem);font-weight:700;line-height:1}.site-header__nav[data-astro-cid-l7arcky5]{flex-shrink:0;align-items:center;gap:1.4rem;display:inline-flex}.site-header__link[data-astro-cid-l7arcky5]{color:var(--text-secondary);letter-spacing:.09em;text-transform:uppercase;transition:color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out);border-bottom:1px solid #0000;padding:.5rem .05rem;font-size:.82rem;font-weight:700}.site-header__link[data-astro-cid-l7arcky5]:hover{color:var(--text-primary)}.site-header__link[data-astro-cid-l7arcky5].active{color:var(--text-primary);border-color:#ffffffe6}body.theme-reading .site-header__link[data-astro-cid-l7arcky5].active{border-color:#6f564085}@media (width<=640px){.site-header[data-astro-cid-l7arcky5]{position:fixed}.site-header__inner[data-astro-cid-l7arcky5]{flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;min-height:60px;padding:0 1.25rem}.site-header__brand[data-astro-cid-l7arcky5]{align-self:auto}.site-header__nav[data-astro-cid-l7arcky5]{justify-content:flex-end;gap:1.25rem;width:auto}.site-header__link[data-astro-cid-l7arcky5]{letter-spacing:.08em;padding:.8rem 0 .4rem;font-size:.82rem}.site-header__name[data-astro-cid-l7arcky5]{letter-spacing:-.01em;font-size:1.34rem}}.back-to-top[data-astro-cid-vy5be4ad]{z-index:900;border:1px solid var(--border-glass);background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .3s var(--ease-out), transform .3s var(--ease-out), background .15s var(--ease-out), color .15s var(--ease-out), border-color .15s var(--ease-out);box-shadow:var(--shadow-sm);border-radius:50%;place-items:center;display:grid;position:fixed;bottom:2rem;right:2rem;transform:translateY(16px)}.back-to-top[data-astro-cid-vy5be4ad].visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top[data-astro-cid-vy5be4ad]:hover{background:var(--text-primary);color:var(--bg-primary);border-color:#0000}body.theme-reading .back-to-top[data-astro-cid-vy5be4ad]{background:#fffaf3eb;border-color:#6c543a24}body.theme-reading .back-to-top[data-astro-cid-vy5be4ad]:hover{background:var(--text-primary);color:var(--bg-primary)}@media (width<=640px){.back-to-top[data-astro-cid-vy5be4ad]{width:40px;height:40px;bottom:1.25rem;right:1.25rem}}@media (prefers-reduced-motion:reduce){.back-to-top[data-astro-cid-vy5be4ad]{transition:none}}:root{--bg-primary:#090909;--bg-secondary:#111;--bg-card:#121212;--bg-soft:#171717;--bg-glass:#ffffff08;--border-glass:#ffffff1a;--border-hover:#ffffff2e;--text-primary:#fafafa;--text-secondary:#c7c7c7;--text-muted:#8a8a8a;--text-faint:#5f5f5f;--accent-primary:#fff;--accent-secondary:#d6d6d6;--accent-gradient:linear-gradient(180deg, #fff, #d6d6d6);--accent-glow:#ffffff29;--accent-glow-secondary:#ffffff0d;--focus-ring:#ffffffeb;--color-success:#4ade80;--bg-code:#111;--font-body:"Manrope", "Helvetica Neue", sans-serif;--font-heading-th:"Prompt", "Manrope", sans-serif;--font-reading:"Source Serif 4", Georgia, serif;--font-mono:"SFMono-Regular", "JetBrains Mono", monospace;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4.5rem;--space-4xl:6rem;--radius-sm:10px;--radius-md:18px;--radius-lg:28px;--radius-pill:999px;--shadow-sm:0 10px 24px #00000038;--shadow-md:0 24px 64px #00000057;--ease-out:cubic-bezier(.22, 1, .36, 1);--duration-fast:.15s;--duration-normal:.24s;--max-width:1120px;--content-width:760px;--nav-height:72px}body.theme-reading{--font-reading:"Sarabun", Georgia, serif;--bg-primary:#f4ede2;--bg-secondary:#fbf6ee;--bg-card:#fffaf2e0;--bg-soft:#eadfcf;--bg-glass:#6c543a0f;--border-glass:#6c543a24;--border-hover:#6c543a3d;--text-primary:#2c241c;--text-secondary:#5e5145;--text-muted:#887663;--text-faint:#b4a18d;--accent-primary:#3d2f20;--accent-secondary:#6f5640;--accent-gradient:linear-gradient(180deg, #3d2f20, #6f5640);--accent-glow:#6f56402e;--accent-glow-secondary:#6f564014;--focus-ring:#6f56408f;--color-success:#16a34a;--media-placeholder-gradient:linear-gradient(180deg, #efe4d4, #e6d8c5);--shadow-sm:0 20px 45px #533d2714;--shadow-md:0 34px 80px #533d271f}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--nav-height) + 1rem)}body{min-height:100vh;font-family:var(--font-body);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background:radial-gradient(circle at top,#ffffff0d,#0000 28%),linear-gradient(#0d0d0d 0%,#090909 100%);margin:0;font-size:16px;line-height:1.65;overflow-x:hidden}body.theme-reading{color:var(--text-primary);background:radial-gradient(circle at top,#ffffffad,#0000 24%),radial-gradient(circle at 20% 0,#d6bea22e,#0000 26%),linear-gradient(#f7f1e7 0% 100%)}::selection{color:#050505;background:#ffffffeb}body.theme-reading ::selection{color:#fbf6ee;background:#3d2f20eb}a{color:inherit;transition:color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);text-decoration:none}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6,p,ul,ol,blockquote,figure{margin:0}h1,h2,h3,h4,h5,h6{letter-spacing:-.015em;color:var(--text-primary);line-height:1.35}.container{width:min(100%, var(--max-width));margin:0 auto;padding-inline:1.25rem}.section{padding-block:var(--space-3xl)}.eyebrow{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.45rem;font-size:.78rem;display:inline-flex}.eyebrow:before{content:"";background:#ffffff38;width:1.5rem;height:1px}body.theme-reading .eyebrow:before{background:#6c543a38}.section-heading{margin-bottom:var(--space-xl);gap:.65rem;display:grid}.section-heading h2{font-size:clamp(1.8rem,4vw,2.6rem)}body.theme-reading .section-heading h2{font-family:var(--font-reading);letter-spacing:-.02em;font-weight:600}.section-heading p{max-width:40rem;color:var(--text-secondary);font-size:1rem}.pill{border-radius:var(--radius-pill);border:1px solid var(--border-glass);min-height:2.5rem;color:var(--text-secondary);background:#ffffff08;justify-content:center;align-items:center;gap:.45rem;padding:.6rem .95rem;font-size:.92rem;font-weight:600;display:inline-flex}body.theme-reading .pill{color:var(--text-secondary);background:#fffbf6b8;border-color:#6c543a29;box-shadow:0 8px 20px #533d270a}.pill:hover{color:var(--text-primary);border-color:var(--border-hover);background:#ffffff0f}body.theme-reading .pill:hover{background:#fffbf6f5}.pill--accent{background:var(--text-primary);color:var(--bg-primary);border-color:#0000}.pill--accent:hover{color:var(--bg-primary);background:var(--accent-secondary)}.surface{border:1px solid var(--border-glass);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:linear-gradient(#ffffff09,#ffffff05)}body.theme-reading .surface{background:linear-gradient(#fffcf8eb,#f7eee2db)}.reveal{opacity:0;transition:opacity .48s var(--ease-out), transform .48s var(--ease-out);transform:translateY(18px)}.reveal.revealed,.stagger.revealed{opacity:1;transform:none}.stagger{opacity:0;transition:opacity .52s var(--ease-out), transform .52s var(--ease-out);transform:translateY(18px)}.prose{max-width:68ch;color:var(--text-secondary);font-family:var(--font-reading);font-size:clamp(1.08rem,1rem + .24vw,1.18rem);line-height:1.98}body.theme-reading .prose{max-width:68ch;color:var(--text-secondary);font-size:clamp(1.08rem,1rem + .24vw,1.2rem);line-height:1.92}.prose>*+*{margin-top:1.7rem}.prose>p:first-of-type{color:var(--text-primary);font-size:clamp(1.16rem,1.04rem + .34vw,1.3rem);line-height:1.88}body.theme-reading .prose>p:first-of-type{color:#45372b;font-size:clamp(1.16rem,1.04rem + .32vw,1.32rem);line-height:1.84}.prose h2,.prose h3,.prose h4{color:var(--text-primary);font-family:var(--font-body);scroll-margin-top:calc(var(--nav-height) + 1rem);margin-top:3.4rem;font-weight:700;line-height:1.2}body.theme-reading .prose h2,body.theme-reading .prose h3,body.theme-reading .prose h4{color:var(--text-primary);font-family:var(--font-reading);letter-spacing:-.02em;font-weight:600}body.theme-reading .prose h2{margin-top:3rem;font-size:clamp(1.7rem,1.9vw,2.1rem)}body.theme-reading .prose h3{margin-top:2.4rem;font-size:clamp(1.26rem,1.3vw,1.52rem)}.prose h2{font-size:clamp(1.65rem,1.8vw,2rem)}.prose h3{font-size:clamp(1.24rem,1.2vw,1.45rem)}.prose p,.prose li{color:var(--text-secondary)}.prose p{text-wrap:pretty}body.theme-reading .prose p{margin-block:0}.prose strong{color:var(--text-primary)}.prose a{color:var(--text-primary);text-underline-offset:.18em;text-decoration:underline 1px #ffffff47}body.theme-reading .prose a{text-decoration-color:#6f564059}.prose a:hover{text-decoration-color:#ffffffe6}body.theme-reading .prose a:hover{text-decoration-color:#6f5640e0}.prose ul,.prose ol{padding-left:1.35rem}.prose ul,.prose ol,.prose blockquote,.prose pre,.prose table,.prose hr{margin-top:2rem}.prose li+li{margin-top:.5rem}.prose img{border-radius:calc(var(--radius-md) + 2px);border:1px solid var(--border-glass);box-shadow:var(--shadow-sm);margin-top:2.2rem}body.theme-reading .prose img{border-color:#6c543a1f}.prose img+em{color:var(--text-muted);font-family:var(--font-body);margin-top:.85rem;font-size:.92rem;line-height:1.6;display:block}.prose blockquote{border-radius:var(--radius-md);color:var(--text-primary);background:#ffffff08;border-left:3px solid #ffffff38;padding:1.5rem 1.4rem;font-style:italic}body.theme-reading .prose blockquote{color:#4a3b2d;background:#fffaf399;border-left-color:#6f564066}.prose blockquote p{color:inherit}.prose hr{border:0;border-top:1px solid #ffffff1a;margin-block:2.5rem}body.theme-reading .prose hr{border-top-color:#6c543a29}.prose table{border-collapse:collapse;border-radius:var(--radius-md);border:1px solid var(--border-glass);width:100%;font-family:var(--font-body);font-size:.96rem;overflow:hidden}body.theme-reading .prose table{background:#fffbf59e}.prose th,.prose td{text-align:left;border-bottom:1px solid #ffffff14;padding:.85rem .95rem}body.theme-reading .prose th,body.theme-reading .prose td{border-bottom-color:#6c543a1a}.prose th{color:var(--text-primary);background:#ffffff08;font-weight:700}body.theme-reading .prose th{background:#6c543a0d}.prose code{font-family:var(--font-mono);color:var(--text-primary);background:#ffffff14;border-radius:8px;padding:.18rem .38rem;font-size:.9em}body.theme-reading .prose code{color:#4b3724;background:#6c543a14}.prose pre{border-radius:var(--radius-md);border:1px solid var(--border-glass);background:#101010;padding:1.25rem;overflow-x:auto}body.theme-reading .prose pre{background:#f6ede0;border-color:#6c543a24}.prose pre code{background:0 0;padding:0}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#0d0d0d}body.theme-reading ::-webkit-scrollbar-track{background:#efe3d1}::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:999px}body.theme-reading ::-webkit-scrollbar-thumb{background:#6c543a38}::-webkit-scrollbar-thumb:hover{background:#ffffff38}body.theme-reading ::-webkit-scrollbar-thumb:hover{background:#6c543a57}@media (width<=640px){:root{--nav-height:64px;--space-3xl:3.5rem}.container{padding-inline:1rem}.section{padding-block:var(--space-2xl)}.prose{font-size:1.04rem;line-height:1.84}.prose>p:first-of-type{font-size:1.14rem}.section-heading h2{font-size:1.55rem}.prose h2,body.theme-reading .prose h2{margin-top:2.6rem;font-size:1.5rem}.prose h3,body.theme-reading .prose h3{margin-top:2rem;font-size:1.25rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal,.stagger{opacity:1!important;transform:none!important}}.skip-link{z-index:2000;background:var(--text-primary);color:var(--bg-primary);border-radius:999px;padding:.65rem .9rem;transition:transform .15s;position:fixed;top:.75rem;left:1rem;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}.main{padding-top:calc(var(--nav-height) + var(--space-lg));z-index:1;min-height:100vh;position:relative}
