@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin-ext.6bc0f226.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin.08949f72.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin-ext.6bb06407.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin.01d28544.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/sarabun-300-thai.320b3c4d.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/sarabun-300-latin-ext.25864ff0.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/sarabun-300-latin.28a823ff.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sarabun-400-thai.444ccfff.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sarabun-400-latin-ext.5af661b8.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/sarabun-400-latin.04548534.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sarabun-500-thai.0ef473cf.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sarabun-500-latin-ext.a618d358.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/sarabun-500-latin.80c1649b.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/sarabun-600-thai.5f2b031b.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/sarabun-600-latin-ext.9f01b60a.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/sarabun-600-latin.f7ce5277.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sarabun;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/sarabun-700-thai.1ca031c8.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Sarabun;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/sarabun-700-latin-ext.b64825bf.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sarabun;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/sarabun-700-latin.b7e814f0.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0a0a0b;--bg-2:#111113;--line:#232326;--line-soft:#1a1a1c;--ink:#f4f4f2;--muted:#a3a3a0;--dim:#80807d;--gold:#c9a227;--gold-bright:#e0b83a;--gold-dim:#7a6318;--gold-text-dim:#9a7f20;--gold-wash:#17140a;--font:"Sarabun",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,Consolas,monospace}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-weight:400;font-size:16.5px;line-height:1.85;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--gold-bright);text-decoration:none}a:hover{color:var(--gold-bright);text-decoration:underline;text-underline-offset:3px}p a,.lead a,dd a,blockquote a,figcaption a,li>a:not([class]){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:var(--gold-dim)}p a:hover,.lead a:hover,dd a:hover,blockquote a:hover,figcaption a:hover,li>a:not([class]):hover{text-decoration-color:currentColor}p a.btn,p a.cta,.lead a.btn,.lead a.cta{text-decoration:none}strong,b{font-weight:600}code,pre,.mono{font-family:var(--mono);font-size:.88em;letter-spacing:-.01em}.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--gold);color:#12100a;font-weight:600;padding:12px 20px;border-radius:0 0 4px}.skip:focus{left:0;text-decoration:none}main:focus{outline:none}[data-autotab]:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}.wrap{max-width:1120px;margin:0 auto;padding:0 28px}.narrow{max-width:760px}header.site{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:#0a0a0beb;backdrop-filter:saturate(140%) blur(12px)}header.site .wrap{display:flex;align-items:center;gap:28px;height:66px;position:relative}.brand{font-weight:700;font-size:1.12rem;letter-spacing:.02em;color:var(--ink)}.brand:hover{text-decoration:none;color:var(--ink)}.brand span{color:var(--gold)}nav.top{margin-inline-start:auto;display:flex;gap:21px;font-size:.9rem}nav.top a{color:var(--muted);font-weight:400}nav.top a:hover{color:var(--gold-bright);text-decoration:none}.navtoggle{display:none;margin-inline-start:auto;background:none;border:1px solid var(--line);color:var(--muted);font-size:.72rem;letter-spacing:.14em;padding:7px 14px;cursor:pointer;font-family:var(--mono);line-height:1}.navtoggle:hover,.navtoggle[aria-expanded=true]{color:var(--gold-bright);border-color:var(--gold-dim)}@media(max-width:900px){header.site .wrap{gap:14px}.navtoggle{display:block}nav.top{position:absolute;top:100%;inset-inline:0;margin:0;flex-direction:column;gap:0;background:var(--bg-2);border-block:1px solid var(--line);display:none;font-size:1rem}header.site.open nav.top{display:flex}nav.top a{padding:15px 28px;border-bottom:1px solid var(--line-soft);color:var(--ink)}nav.top a:last-child{border-bottom:0}}.eyebrow{font-family:var(--mono);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 18px}h1,h2,h3,h4{font-weight:600;line-height:1.35;letter-spacing:-.005em}.rule{height:1px;background:var(--line);border:0;margin:0}.status{display:inline-block;font-family:var(--mono);font-size:.68rem;font-weight:500;letter-spacing:.08em;padding:2px 9px;border:1px solid var(--line);color:var(--muted);white-space:nowrap}.status.pass{color:#8fbf7a;border-color:#2c3a26}.status.display{color:var(--gold);border-color:var(--gold-dim)}.status.reject{color:#c96a63;border-color:#3d2422}footer.site{border-top:1px solid var(--line);margin-top:110px;padding:44px 0 56px}footer.site p{color:var(--dim);font-size:.88rem;margin:0 0 8px;max-width:70ch}footer.site .disc{color:var(--muted)}footer.site .legal{border-top:1px solid var(--line-soft);margin-top:22px;padding-top:18px}footer.site .legal p{font-size:.82rem;line-height:1.65;color:var(--dim)}footer.site .legal .cr{color:var(--muted);font-size:.86rem;margin-bottom:10px}footer.site .legal a{color:var(--gold);white-space:nowrap}html.motion-pending body{opacity:0}html:not(.motion-pending) body{opacity:1}body{transition:opacity .25s ease}.read-progress{position:fixed;inset:0 0 auto;height:2px;z-index:60;background:linear-gradient(90deg,var(--gold-dim),var(--gold-bright));transform:scaleX(0);transform-origin:left center;will-change:transform;pointer-events:none}.rule-draw{--rule:1;height:1px;background:var(--line);transform:scaleX(var(--rule));transform-origin:left center}.item,.sq,.mod,.rel a,.pr{position:relative}.item:after,.sq:after,.mod:after,.rel a:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .35s ease;background:radial-gradient(220px circle at var(--mx,50%) var(--my,50%),rgba(201,162,39,.09),transparent 70%)}.item:hover:after,.sq:hover:after,.mod:hover:after,.rel a:hover:after{opacity:1}.wf{opacity:1;will-change:opacity}@media(prefers-reduced-motion:reduce){html.motion-pending body{opacity:1}body{transition:none}.read-progress{display:none}.rule-draw{transform:none}.item:after,.sq:after,.mod:after,.rel a:after{display:none}html:not(.motion-force) .wf{opacity:1!important}}::selection{background:var(--gold-dim);color:#fff}
