*{box-sizing:border-box}html{overscroll-behavior-y:none;background:#f3f1ed}html,body{min-height:100%;margin:0}:root{--font-thai:var(--font-google-sans), "Noto Sans Thai", system-ui, sans-serif}body{color:#2a2320;font-family:var(--font-thai);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;background:#f3f1ed;font-size:17px}.font-mono{font-family:var(--font-mono), "IBM Plex Mono", monospace}button,input,textarea,select{font-family:inherit}.screen{min-height:100vh;min-height:100dvh;min-height:max(100dvh, var(--app-height,0px));max-width:480px;margin:0 auto}.skip-link{z-index:2000;color:#fdf7f1;font:600 15px var(--font-thai);background:#8e1e2c;border-radius:0 0 12px;padding:12px 20px;text-decoration:none;transition:transform .15s ease-out;position:fixed;top:0;left:0;transform:translateY(-120%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline-offset:2px;border-radius:inherit;outline:2px solid transparent;box-shadow:0 0 0 2px #fff8ef,0 0 0 5px #2a2320}:focus:not(:focus-visible){outline:none}button:not(:disabled):active,a[role=button]:active,[data-pressable]:active{filter:brightness(.94);transform:scale(.985)}button,a,[data-pressable]{-webkit-tap-highlight-color:transparent;transition:transform .12s ease-out,filter .12s ease-out}@keyframes spin{to{transform:rotate(360deg)}}@keyframes loadBounce{0%,80%,to{opacity:.6;transform:translateY(0)}40%{opacity:1;transform:translateY(-11px)}}.load-dot{animation:1.2s ease-in-out infinite loadBounce}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,#e4e4e2 25%,#ededeb 37%,#e4e4e2 63%) 0 0/400% 100%;animation:1.6s ease-in-out infinite shimmer}@keyframes readyPulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.btn-ready-pulse{animation:.45s ease-in-out 2 readyPulse}@keyframes ctaPulse{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}.cta-pulse{animation:1.6s ease-in-out infinite ctaPulse}@keyframes heroGradientDrift{0%{background-position:0 20%,100% 80%,0 0}33%{background-position:90% 60%,10% 20%,0 0}66%{background-position:20% 90%,80% 10%,0 0}to{background-position:0 20%,100% 80%,0 0}}.hero-gradient{background-image:radial-gradient(45% 40%,rgba(181,138,74,.66),transparent 65%),radial-gradient(50% 45%,rgba(201,54,69,.5),transparent 65%),linear-gradient(165deg,#3a0d14,#71161f 55%,#8e1e2c);background-repeat:no-repeat;background-size:220% 220%,220% 220%,100% 100%;animation:9s ease-in-out infinite heroGradientDrift}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.spinner{animation:3s linear infinite spin!important}button:active,a[role=button]:active,[data-pressable]:active{transform:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.3zhtymus0wdqb.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.3nkuoiize4urq.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.1da667lu-u79a.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.1i05ju5aeyhye.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,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(../media/99e609270109b47d-s.1dgcou5jor5q_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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(../media/5e05ae5b48faa55e-s.31-2bzhq1gx_9.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.3xauquyg2sixn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.2taws-qdxmzlf.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.0htwiiqufp3l9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,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(../media/effe91970fc4db64-s.28xcb7557rbh2.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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 Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_ebd69367-module__2djmlG__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_ebd69367-module__2djmlG__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
@font-face{font-family:googleSans;src:url(../media/GoogleSans_400-s.p.2paw0ovprbjvd.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:googleSans;src:url(../media/GoogleSans_500-s.p.3y75m7k3f-tw5.woff2)format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:googleSans;src:url(../media/GoogleSans_600-s.p.024oy818pubz7.woff2)format("woff2");font-display:swap;font-weight:600;font-style:normal}@font-face{font-family:googleSans;src:url(../media/GoogleSans_700-s.p.2u0r1vvh855wb.woff2)format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:googleSans Fallback;src:local(Arial);ascent-override:95.12%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:101.55%}.googlesans_8cd79a85-module__HNMHIG__className{font-family:googleSans,googleSans Fallback,Noto Sans Thai,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.googlesans_8cd79a85-module__HNMHIG__variable{--font-google-sans:"googleSans", "googleSans Fallback", Noto Sans Thai, system-ui, sans-serif}
