@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.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:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/notosansthai/v29/iJWQBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcdfKI2hX2g.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/notosansthai/v29/iJWQBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcdfMo2hX2g.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:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/notosansthai/v29/iJWQBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcdfPI2h.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:Noto Sans Thai;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/notosansthai/v29/iJWQBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcdfKI2hX2g.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/notosansthai/v29/iJWQBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcdfMo2hX2g.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:Noto Sans Thai;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/notosansthai/v29/iJWQBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcdfPI2h.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:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/notosansthai/v29/iJWQBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcdfKI2hX2g.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/notosansthai/v29/iJWQBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcdfMo2hX2g.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:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/notosansthai/v29/iJWQBXeUZi_OHPqn4wq6hQ2_hbJ1xyN9wd43SofNWcdfPI2h.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{--color-primary-50: #f4f9ec;--color-primary-100: #d6ebae;--color-primary-200: #bbda78;--color-primary-300: #9dc050;--color-primary-400: #84aa38;--color-primary-600: #669029;--color-primary-700: #4e721e;--color-primary-800: #365414;--color-primary-900: #1d350a;--color-primary: var(--color-primary-400);--color-primary-hover: var(--color-primary-600);--color-neutral-50: #fafafa;--color-neutral-100: #f0f0f0;--color-neutral-200: #d9d9d9;--color-neutral-400: #ababab;--color-neutral-600: #737373;--color-neutral-800: #404040;--color-neutral-900: #171717;--color-white: #ffffff;--color-bg: var(--color-white);--color-bg-subtle: var(--color-neutral-50);--color-border: var(--color-neutral-100);--color-text: var(--color-neutral-900);--color-text-muted: var(--color-neutral-600);--color-text-inverse: var(--color-white);--color-amber: #e17100;--badge-green-bg: #f4f9ec;--badge-green-text: #4e721e;--badge-red-bg: #fef2f2;--badge-red-text: #b91c1c;--badge-blue-bg: #eff6ff;--badge-blue-text: #1d4ed8;--badge-sky-bg: #f0f9ff;--badge-sky-text: #0369a1;--badge-slate-bg: #f1f5f9;--badge-slate-text: #334155;--badge-amber-bg: #fff7ed;--badge-amber-text: #c2410c;--badge-primary-bg: #f4f9ec;--badge-primary-text: #4e721e;--badge-purple-bg: #faf5ff;--badge-purple-text: #7e22ce;--badge-dark-bg: #404040;--badge-dark-text: #ffffff;--badge-pink-bg: #fdf2f8;--badge-pink-text: #be185d;--color-online: #16a34a;--radius-sm: 4px;--radius-md: 8px;--radius-xl: 16px;--radius-full: 9999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--container-max: 1280px;--font-sans: "LINE Seed Sans TH", "Noto Sans Thai", sans-serif;--font-mono: "JetBrains Mono", monospace;--fs-special-h: 36px;--fs-h1: 28px;--fs-h2: 22px;--fs-h3: 18px;--fs-subheading: 16px;--fs-body: 14px;--fs-body-sm: 13px;--fs-caption: 12px;--lh-special-h: 52px;--lh-h1: 40px;--lh-h2: 34px;--lh-h3: 28px;--lh-subheading: 24px;--lh-body: 22px;--lh-body-sm: 20px;--lh-caption: 18px;--fw-regular: 400;--fw-bold: 700;--shadow-sm: 0 1px 2px rgba(23, 23, 23, .06);--shadow-md: 0 4px 12px rgba(23, 23, 23, .08);--shadow-lg: 0 8px 24px rgba(23, 23, 23, .1);--font-scale: 1}*,*:before,*:after{box-sizing:border-box}html{font-size:calc(100% * var(--font-scale));scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:var(--fw-regular);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4,p{margin:0}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}img{max-width:100%;display:block}[hidden]{display:none!important}ul{margin:0;padding:0;list-style:none}:focus-visible{outline:2px solid var(--color-primary-700);outline-offset:2px;border-radius:var(--radius-sm)}.skip-link{position:absolute;left:var(--space-4);top:-64px;z-index:1000;padding:var(--space-2) var(--space-4);background:var(--color-primary-700);color:var(--color-white);border-radius:var(--radius-md);transition:top .15s ease}.skip-link:focus{top:var(--space-4)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding-inline:var(--space-6)}.t-special-h{font-size:var(--fs-special-h);line-height:var(--lh-special-h);font-weight:var(--fw-bold)}.t-h1{font-size:var(--fs-h1);line-height:var(--lh-h1);font-weight:var(--fw-bold)}.t-h2{font-size:var(--fs-h2);line-height:var(--lh-h2);font-weight:var(--fw-bold)}.t-h3{font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-bold)}.t-subheading{font-size:var(--fs-subheading);line-height:var(--lh-subheading)}.t-body-sm{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.t-caption{font-size:var(--fs-caption);line-height:var(--lh-caption)}.t-code{font-family:var(--font-mono);font-size:var(--fs-body);line-height:20px}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--fs-caption);line-height:var(--lh-caption);font-weight:var(--fw-bold);white-space:nowrap}.badge[data-color=green]{background:var(--badge-green-bg);color:var(--badge-green-text)}.badge[data-color=red]{background:var(--badge-red-bg);color:var(--badge-red-text)}.badge[data-color=blue]{background:var(--badge-blue-bg);color:var(--badge-blue-text)}.badge[data-color=sky]{background:var(--badge-sky-bg);color:var(--badge-sky-text)}.badge[data-color=slate]{background:var(--badge-slate-bg);color:var(--badge-slate-text)}.badge[data-color=amber]{background:var(--badge-amber-bg);color:var(--badge-amber-text)}.badge[data-color=primary]{background:var(--badge-primary-bg);color:var(--badge-primary-text)}.badge[data-color=purple]{background:var(--badge-purple-bg);color:var(--badge-purple-text)}.badge[data-color=dark]{background:var(--badge-dark-bg);color:var(--badge-dark-text)}.badge[data-color=pink]{background:var(--badge-pink-bg);color:var(--badge-pink-text)}.section__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8)}.section__title{color:var(--color-neutral-900)}.section__more{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-body);font-weight:var(--fw-bold);color:var(--color-primary-700)}.section__more:hover{text-decoration:underline}body.admin-drawer-lock{overflow:hidden}.auth-card{width:100%;max-width:420px;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-5)}.auth-card--wide{max-width:520px}.auth-card__title{text-align:center;color:var(--color-neutral-900)}.thaid-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);background:#11225c;color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--fs-body);font-weight:var(--fw-bold)}.thaid-btn__logo{background:var(--color-white);color:#11225c;border-radius:var(--radius-sm);padding:1px 6px;font-size:var(--fs-caption);font-weight:var(--fw-bold)}.thaid-btn:hover{background:#0c1a48}.auth-divider{display:flex;align-items:center;text-align:center;color:var(--color-text-muted);font-size:var(--fs-caption)}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-top:1px solid var(--color-border)}.auth-divider span{padding:0 var(--space-3)}.auth-alert{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--badge-red-bg);color:var(--badge-red-text);font-size:var(--fs-body-sm)}.auth-alert lucide-icon{flex:0 0 auto}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media(max-width:480px){.auth-grid{grid-template-columns:1fr}}.field{display:flex;flex-direction:column;gap:var(--space-1)}.field__label{font-size:var(--fs-body-sm);font-weight:var(--fw-bold);color:var(--color-text)}.field__req{color:var(--badge-red-text)}.field__wrap{position:relative;display:flex;align-items:center}.field__input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:var(--fs-body);color:var(--color-text);background:var(--color-white)}.field__input::placeholder{color:var(--color-neutral-400)}.field__input:focus-visible{outline:2px solid var(--color-primary);outline-offset:0;border-color:var(--color-primary)}.field__input[aria-invalid=true]{border-color:var(--badge-red-text)}.field__wrap .field__input{padding-inline-end:44px}.field__eye{position:absolute;inset-inline-end:var(--space-2);display:inline-flex;padding:var(--space-1);border:none;background:transparent;color:var(--color-text-muted)}.field__error{font-size:var(--fs-caption);color:var(--badge-red-text)}.auth-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.checkbox{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-body-sm);color:var(--color-text)}.checkbox input{width:16px;height:16px;accent-color:var(--color-primary)}.auth-link{font-size:var(--fs-body-sm);color:var(--color-primary-700)}.auth-link:hover{text-decoration:underline}.auth-link--strong{font-weight:var(--fw-bold)}.auth-submit{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-primary);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--fs-body);font-weight:var(--fw-bold)}.auth-submit:hover{background:var(--color-primary-hover)}.auth-submit:disabled{opacity:.6;cursor:default}.auth-foot-link{text-align:center;font-size:var(--fs-body-sm);color:var(--color-text-muted)}.pw-meter{display:flex;gap:var(--space-1);margin-top:var(--space-1)}.pw-meter__bar{flex:1;height:4px;border-radius:var(--radius-full);background:var(--color-neutral-200)}.pw-meter__bar.is-on[data-level="1"],.pw-meter__bar.is-on[data-level="2"]{background:#dc2626}.pw-meter__bar.is-on[data-level="3"],.pw-meter__bar.is-on[data-level="4"]{background:var(--color-primary-400)}.pw-meter__bar.is-on[data-level="5"]{background:var(--color-primary-600)}.pw-meter__label{font-size:var(--fs-caption);font-weight:var(--fw-bold)}.pw-meter__label[data-level="1"],.pw-meter__label[data-level="2"]{color:#dc2626}.pw-meter__label[data-level="3"],.pw-meter__label[data-level="4"]{color:var(--color-primary-600)}.pw-meter__label[data-level="5"]{color:var(--color-primary-700)}.pw-rules{display:grid;gap:var(--space-1);margin-top:var(--space-1)}.pw-rules__item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-caption);color:var(--color-text-muted)}.pw-rules__item lucide-icon{flex:0 0 auto;color:var(--color-neutral-400)}.pw-rules__item.is-met{color:var(--color-primary-700)}.pw-rules__item.is-met lucide-icon{color:var(--color-primary-600)}.consent{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--fs-body-sm);line-height:var(--lh-body);color:var(--color-text)}.consent input{margin-top:3px;width:16px;height:16px;flex:0 0 auto;accent-color:var(--color-primary)}
