@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b1f344208eb4edfe-s.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:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/48e2044251ef3125-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/bf24a9759715e608-s.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:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/1f173e5e25f3efee-s.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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/904be59b21bd51cb-s.p.woff2) format("woff2");unicode-range:u+00??,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:Montserrat Fallback;src:local("Arial");ascent-override:85.79%;descent-override:22.25%;line-gap-override:0.00%;size-adjust:112.83%}.__className_f75558{font-family:Montserrat,Montserrat Fallback;font-style:normal}.__variable_f75558{--font-montserrat:"Montserrat","Montserrat Fallback"}@font-face{font-family:"Noto Serif Thai";font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/faa5e7410e7c1c5d-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:"Noto Serif Thai";font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/d03b8322b85448d6-s.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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Noto Serif Thai";font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/ecf09cfa83061be6-s.p.woff2) format("woff2");unicode-range:u+00??,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 Serif Thai";font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/faa5e7410e7c1c5d-s.p.woff2) format("woff2");unicode-range:u+02d7,u+0303,u+0331,u+0e01-0e5b,u+200c-200d,u+25cc}@font-face{font-family:"Noto Serif Thai";font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/d03b8322b85448d6-s.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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Noto Serif Thai";font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/ecf09cfa83061be6-s.p.woff2) format("woff2");unicode-range:u+00??,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 Serif Thai Fallback";src:local("Times New Roman");ascent-override:89.86%;descent-override:45.10%;line-gap-override:0.00%;size-adjust:118.40%}.__className_cee9b7{font-family:"Noto Serif Thai","Noto Serif Thai Fallback";font-style:normal}.__variable_cee9b7{--font-noto-serif-thai:"Noto Serif Thai","Noto Serif Thai Fallback"}@font-face{font-family:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f8092a6a9ad7a44c-s.p.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(/_next/static/media/96ad5eed80b1484c-s.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:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/0ab56aae8cf76709-s.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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sarabun;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a1a058a3e6543db0-s.p.woff2) format("woff2");unicode-range:u+00??,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(/_next/static/media/7dfdf996fafd0873-s.p.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(/_next/static/media/3c7225ad892364d7-s.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:Sarabun;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8fc9138006ae4675-s.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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sarabun;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/0b53384bc8cc52db-s.p.woff2) format("woff2");unicode-range:u+00??,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(/_next/static/media/f33c62bdbd09f5b8-s.p.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(/_next/static/media/2b74019ebf7a71b9-s.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:Sarabun;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/33387a3e1220e613-s.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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sarabun;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/2f6258ffdaf4644f-s.p.woff2) format("woff2");unicode-range:u+00??,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 Fallback;src:local("Arial");ascent-override:109.45%;descent-override:23.78%;line-gap-override:0.00%;size-adjust:97.58%}.__className_a1ab66{font-family:Sarabun,Sarabun Fallback;font-style:normal}.__variable_a1ab66{--font-sarabun:"Sarabun","Sarabun Fallback"}:root{--page-gutter:clamp(20px,3vw,48px);--bg:#eef6f6;--surface:#f8fdfd;--surface-2:#dfeeee;--ink:#0f1e20;--ink-2:#4a6467;--line:#c9e0e0;--line-strong:#9ac6c6;--accent:#0e8a7c;--accent-ink:#2b8fc4;--accent-soft:#dff0ee;--warn:#a3630f;--danger:#c0264a;--radius:16px;--surface-glass:rgba(248,253,253,0.7);--shadow:0 12px 40px rgba(15,30,32,0.1);--font-sans:var(--font-montserrat),system-ui,-apple-system,"Segoe UI",sans-serif;--font-thai-display:var(--font-noto-serif-thai),"Noto Serif Thai",serif;--font-thai-read:var(--font-sarabun),"Sarabun","Noto Sans Thai",sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#08151a;--surface:#0e2128;--surface-2:#142c34;--ink:#eef7f7;--ink-2:#9dbcc0;--line:rgba(255,255,255,0.12);--line-strong:rgba(255,255,255,0.22);--accent:#3fc9b2;--accent-ink:#63b8e8;--accent-soft:rgba(63,201,178,0.18);--warn:#d2a25e;--danger:#f76b8a;--surface-glass:rgba(255,255,255,0.06);--shadow:0 10px 30px rgba(0,0,0,0.5)}}:root[data-theme=dark]{--bg:#08151a;--surface:#0e2128;--surface-2:#142c34;--ink:#eef7f7;--ink-2:#9dbcc0;--line:rgba(255,255,255,0.12);--line-strong:rgba(255,255,255,0.22);--accent:#3fc9b2;--accent-ink:#63b8e8;--accent-soft:rgba(63,201,178,0.18);--warn:#d2a25e;--danger:#f76b8a;--surface-glass:rgba(255,255,255,0.06);--shadow:0 10px 30px rgba(0,0,0,0.5)}*{box-sizing:border-box}button,input,optgroup,select,textarea{font:inherit}html{color-scheme:light dark}html[data-theme=light]{color-scheme:light}html[data-theme=dark]{color-scheme:dark}body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.55}a{color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card{background:var(--surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.bg-shape{transform-box:fill-box;transform-origin:center}@keyframes drift-a{0%,to{transform:translate(0) rotate(0deg) scale(1)}50%{transform:translate(-2%,1.5%) rotate(2deg) scale(1.06)}}@keyframes drift-b{0%,to{transform:translate(0) rotate(0deg) scale(1)}50%{transform:translate(2%,-1.5%) rotate(-2deg) scale(1.08)}}@keyframes drift-c{0%,to{transform:translate(0) rotate(0deg) scale(1)}50%{transform:translate(-1.5%,-2%) rotate(1.5deg) scale(1.05)}}.bg-shape-a{animation:drift-a 30s ease-in-out infinite}.bg-shape-b{animation:drift-b 37s ease-in-out infinite}.bg-shape-c{animation:drift-c 43s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.bg-shape{animation:none}}@keyframes glow-pulse{0%,to{filter:blur(45px);opacity:.4}50%{filter:blur(65px);opacity:.6}}.login-glow{animation:glow-pulse 11s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.login-glow{animation:none;filter:blur(40px)}}@keyframes spin-1{0%{transform:rotateY(0deg) rotateX(0deg) translateZ(0)}25%{transform:rotateY(90deg) rotateX(8deg) translateZ(120px)}50%{transform:rotateY(180deg) rotateX(0deg) translateZ(-80px)}75%{transform:rotateY(270deg) rotateX(-8deg) translateZ(120px)}to{transform:rotateY(1turn) rotateX(0deg) translateZ(0)}}@keyframes spin-2{0%{transform:rotateY(0deg) rotateX(0deg) translateZ(0)}30%{transform:rotateY(-140deg) rotateX(-14deg) translateZ(-100px)}60%{transform:rotateY(-250deg) rotateX(10deg) translateZ(90px)}to{transform:rotateY(-1turn) rotateX(0deg) translateZ(0)}}@keyframes spin-3{0%{transform:rotateX(0deg) rotateY(0deg) translateZ(0)}25%{transform:rotateX(100deg) rotateY(10deg) translateZ(70px)}50%{transform:rotateX(200deg) rotateY(0deg) translateZ(-60px)}75%{transform:rotateX(300deg) rotateY(-10deg) translateZ(70px)}to{transform:rotateX(1turn) rotateY(0deg) translateZ(0)}}@keyframes spin-4{0%{transform:rotateX(0deg) rotateY(0deg) translateZ(0)}33%{transform:rotateX(120deg) rotateY(-160deg) translateZ(80px)}66%{transform:rotateX(240deg) rotateY(-280deg) translateZ(-70px)}to{transform:rotateX(1turn) rotateY(-1turn) translateZ(0)}}@keyframes spin-5{0%{transform:rotateY(0deg) rotateX(0deg) translateZ(0)}20%{transform:rotateY(-90deg) rotateX(15deg) translateZ(150px)}50%{transform:rotateY(-180deg) rotateX(-15deg) translateZ(-120px)}80%{transform:rotateY(-270deg) rotateX(15deg) translateZ(150px)}to{transform:rotateY(-1turn) rotateX(0deg) translateZ(0)}}.spin-1{animation:spin-1 110s linear infinite}.spin-2{animation:spin-2 85s linear infinite}.spin-3{animation:spin-3 130s linear infinite}.spin-4{animation:spin-4 95s linear infinite}.spin-5{animation:spin-5 70s linear infinite}@media (prefers-reduced-motion:reduce){.spin-1,.spin-2,.spin-3,.spin-4,.spin-5{animation:none}}@keyframes ambient-pulse{0%,to{opacity:.1}50%{opacity:.3}}.ambient-1{animation:ambient-pulse 14s ease-in-out infinite}.ambient-2{animation:ambient-pulse 19s ease-in-out infinite;animation-delay:-6s}.ambient-3{animation:ambient-pulse 23s ease-in-out infinite;animation-delay:-11s}.ambient-4{animation:ambient-pulse 17s ease-in-out infinite;animation-delay:-3s}@media (prefers-reduced-motion:reduce){.ambient-1,.ambient-2,.ambient-3,.ambient-4{animation:none;opacity:.15}}.page-wide{width:100%;padding:32px var(--page-gutter) 72px}.app-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:20px var(--page-gutter) 0}.module-head{grid-template-columns:130px 1fr auto;gap:22px;padding-bottom:20px;border-bottom:1px solid var(--line)}.module-grid,.module-head{display:grid;align-items:start}.module-grid{grid-template-columns:1.25fr 1fr;gap:24px}.module-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}@media (max-width:1100px){.module-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.module-cards{grid-template-columns:1fr}}@media (max-width:900px){.module-head{gap:10px}.module-grid,.module-head{grid-template-columns:1fr}}.chip{display:inline-block;padding:3px 10px;border:1px solid var(--accent);border-radius:999px;color:var(--accent);font-size:10.5px;letter-spacing:.1em;white-space:nowrap}.chip,.pane-title{text-transform:uppercase}.pane-title{margin:0 0 12px;font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--ink-3,var(--ink-2))}.lesson-body{counter-reset:lesson-section;font-size:15.5px;line-height:1.7}.lesson-body>p{margin:0 0 16px}.lesson-body>h2{counter-increment:lesson-section;display:flex;align-items:baseline;gap:12px;margin:40px 0 16px;padding-top:22px;border-top:1px solid var(--line);font-size:20px;line-height:1.25}.lesson-body>h2:before{content:counter(lesson-section,decimal-leading-zero);flex:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:700;color:var(--accent)}.lesson-body>h2:first-child{margin-top:0;padding-top:0;border-top:none}.lesson-body>h3{margin:26px 0 10px;font-size:16.5px}.lesson-body ol,.lesson-body ul{margin:0 0 16px;padding-left:22px}.lesson-body li{margin-bottom:7px}.lesson-body code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em;padding:.1em .36em;border-radius:4px;background:var(--surface-2)}.lesson-body strong{color:var(--ink);font-weight:600}.lesson-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:26px;align-items:start}.lesson-outline{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto}.lesson-section{padding:22px 26px}.lesson-section-title{display:flex;align-items:baseline;gap:12px;margin:0 0 14px;font-size:20px;line-height:1.25}.lesson-section-num{flex:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:700;color:var(--accent)}.lesson-section .lesson-body>h2{margin-top:24px;padding-top:0;border-top:none}.lesson-section .lesson-body>h2:before{content:none}@media (max-width:1000px){.lesson-layout{grid-template-columns:1fr}.lesson-outline{position:static;max-height:none}}.module-cards{align-items:stretch}.module-card{display:flex;flex-direction:column;height:100%;padding:18px 20px}.module-card-lessons{list-style:none;margin:0;padding:0;display:grid;gap:6px}.module-card-lessons li{display:grid;grid-template-columns:20px 1fr;gap:8px;align-items:baseline;font-size:12.5px;line-height:1.4;margin:0}.glossary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}.glossary-card{padding:16px 18px;height:100%}@media (max-width:1280px){.glossary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.glossary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.glossary-grid{grid-template-columns:1fr}}.pipeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}.pipeline-stage{display:flex;flex-direction:column;height:100%;padding:16px 18px;border-left:2px solid var(--line-strong)}.pipeline-stage-done{border-left-color:var(--accent)}@media (max-width:1280px){.pipeline{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.pipeline{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.pipeline{grid-template-columns:1fr}}.header-brand{display:flex;align-items:center;gap:12px;min-width:0}.header-wordmark{font-size:18px;font-weight:300;letter-spacing:.06em;white-space:nowrap}.header-user{display:flex;justify-content:flex-end;align-items:center;gap:12px}.header-username{color:var(--ink-2);font-size:14px;white-space:nowrap}@media (max-width:1000px){.header-username{display:none}}@media (max-width:760px){.app-header{grid-template-columns:auto 1fr;grid-template-areas:"brand user" "nav nav" "search search";gap:10px;padding-top:14px}.header-brand{display:contents}.header-brand>svg{grid-area:brand;width:34px;height:34px}.header-brand>div{grid-area:search;max-width:none;width:100%}.header-user{grid-area:user}.app-header nav{grid-area:nav;justify-content:center;overflow-x:auto;scrollbar-width:none}.app-header nav::-webkit-scrollbar{display:none}}@media (max-width:760px){.page-wide h1{font-size:clamp(22px,6vw,30px)}.page-wide{padding-top:20px}.lesson-outline{position:sticky;top:0;z-index:20;max-height:none;margin:0 calc(-1 * var(--page-gutter));padding:10px var(--page-gutter);background:var(--bg);border-bottom:1px solid var(--line)}.lesson-outline>p{display:none}.lesson-outline nav{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin-bottom:0}.lesson-outline nav::-webkit-scrollbar{display:none}.lesson-outline nav a{white-space:nowrap;flex:none}.lesson-outline>div{display:none}.lesson-section{padding:18px}.lesson-section-title{font-size:18px}.lesson-body{font-size:16px}.lesson-body pre{font-size:13px}}@media (max-width:620px){.module-card-lessons li{font-size:13px}.glossary-card p:last-child{font-size:14px}}.page-wide>h1{font-size:clamp(22px,5vw,30px);line-height:1.2}body,html{overflow-x:clip;max-width:100%}@media (pointer:coarse){.app-header nav a{min-height:44px;display:flex;align-items:center}.app-header button,.app-header form button{min-height:44px}.lesson-outline nav a{min-height:40px}.module-card-lessons li{padding:2px 0}}@media (max-width:760px){.app-header{gap:6px;padding-top:10px;padding-bottom:2px}.app-header input[type=search]{padding-top:9px;padding-bottom:9px}}.lesson-body table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:18px 0;font-size:14px;scrollbar-width:thin}.lesson-body thead th{text-align:left;font-weight:600;font-size:12.5px;letter-spacing:.02em;color:var(--ink-2);padding:10px 14px;border-bottom:1px solid var(--line-strong);white-space:nowrap}.lesson-body tbody td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.5}.lesson-body tbody tr:last-child td{border-bottom:none}.lesson-body tbody td:first-child{color:var(--ink);font-weight:500}@media (max-width:760px){.lesson-body table{font-size:13.5px}.lesson-body tbody td,.lesson-body thead th{padding:9px 11px}}@media (min-width:1001px){.lesson-side{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto;display:grid;gap:22px;align-content:start;scrollbar-width:thin}.lesson-outline{position:static;max-height:none;overflow:visible}}@media (max-width:1000px){.lesson-side{display:contents}.lesson-questions{order:1;margin-top:8px}}.th{font-family:var(--font-thai-read);font-size:2.1em;line-height:1.95;font-feature-settings:"liga" 1}.th-display{line-height:1.9}.glyph-outline,.th-display{font-family:var(--font-thai-display)}.glyph-outline{color:var(--accent)}@supports (-webkit-text-stroke:1px currentColor){.glyph-outline{color:transparent;-webkit-text-stroke:var(--stroke,1px) var(--accent)}}.th-inline{font-family:var(--font-thai-read);font-size:2.6em;line-height:1;vertical-align:-.22em;unicode-bidi:isolate}.has-th{line-height:2.6}.ar .ar-inline,.ar-display .th-inline{font-size:1em;line-height:inherit;vertical-align:baseline}.th .has-th,.th-display .has-th{line-height:inherit;margin:0}.theme-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.theme-cards>.card{padding:18px 20px}@media (max-width:1100px){.theme-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.theme-cards{grid-template-columns:1fr}}.word-row{grid-template-columns:minmax(180px,1.1fr) minmax(160px,1fr) minmax(110px,.8fr) minmax(100px,.7fr)}.word-fem,.word-main{display:flex;align-items:center;gap:12px;min-width:0}.word-tr{font-size:14.5px;color:var(--ink-2);font-style:italic}:root{--class-high:#b3541e;--class-mid:#0e8a7c;--class-low:#2b6fb0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--class-high:#e59a63;--class-mid:#4fd3bc;--class-low:#77b6ea}}:root[data-theme=dark]{--class-high:#e59a63;--class-mid:#4fd3bc;--class-low:#77b6ea}.letter-card{margin:28px 0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);overflow:hidden}.letter-card-head{display:flex;align-items:center;gap:22px;padding:18px 22px;border-bottom:1px solid var(--line);flex-wrap:wrap}.letter-card-glyph{font-size:88px;line-height:1.25;color:var(--accent)}.letter-card-title{display:flex;flex-direction:column;gap:4px;flex:1 1;min-width:180px}.letter-card-name{display:flex;align-items:center;gap:10px;font-size:30px}.letter-card-read{font-size:19px}.letter-card-meaning{font-size:14.5px;color:var(--ink-2)}.letter-card-class{font-size:13px;font-weight:600;border:1px solid;border-radius:999px;padding:5px 14px;white-space:nowrap}.letter-card-sounds{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.letter-card-sounds>div{padding:16px 10px;text-align:center;border-inline-end:1px solid var(--line)}.letter-card-sound{font-size:30px;font-weight:500}.letter-card-label{font-size:12.5px;color:var(--ink-2);margin-top:6px}.letter-card-confuse{margin:0;padding:12px 22px;font-size:14.5px;color:var(--ink-2);border-bottom:1px solid var(--line)}.letter-card-examples{list-style:none;margin:0;padding:0}.word-list{list-style:none;width:100%;margin:22px 0;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);overflow:hidden}.word-row{display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(140px,.9fr) minmax(120px,.9fr) auto;align-items:center;gap:8px 18px;padding:12px 20px;border-top:1px solid var(--line)}.word-row:first-child{border-top:none}.word-main{display:flex;align-items:center;gap:12px;min-width:0}.word-main .th{font-size:44px}.word-read{font-size:15px;color:var(--ink-2);font-style:italic}.word-ru{font-size:16px}.word-tag{font-size:12px;color:var(--ink-2);border:1px solid var(--line);border-radius:999px;padding:3px 10px;white-space:nowrap}.word-inline{display:inline-flex;align-items:center;gap:8px;margin:0 4px}.word-inline .th{font-size:34px}.word-inline-read,.word-inline-ru{font-size:14px;color:var(--ink-2)}.th-line{margin:18px 0;padding:18px 22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.th-line-body{display:flex;align-items:center;gap:14px}.th-line-body .th{font-size:52px;flex:1 1}.th-line-note{font-size:14.5px;color:var(--ink-2);margin-top:10px}.compare{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:22px 0;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.compare-cell{background:var(--surface-2);padding:20px 18px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.compare-glyph{font-size:56px}.compare-note{font-size:13.5px;color:var(--ink-2)}@media (max-width:900px){.word-row{grid-template-columns:1fr 1fr}.word-ru{grid-column:1/-1}}:root{--control-height:36px;--control-radius:999px}.control{display:inline-flex;align-items:center;justify-content:center;height:var(--control-height);padding:0 16px;border-radius:var(--control-radius);border:1px solid var(--line);background:var(--surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--ink-2);font-family:inherit;font-size:13.5px;font-weight:500;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;flex-shrink:0}.control:hover{color:var(--ink);border-color:var(--line-strong)}.control:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.control-icon{width:var(--control-height);padding:0}.top-nav{display:flex;gap:6px}.top-nav-item{border-color:transparent;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.top-nav-item.is-active{color:#fff;border-color:transparent;background:linear-gradient(to right,var(--accent-ink),var(--accent))}.top-nav-item.is-active:hover{color:#fff}.search-input{width:220px;justify-content:flex-start;color:var(--ink);font-weight:400;outline:none}.search-input::placeholder{color:var(--ink-2)}.lang-picker{display:flex;gap:8px}.lang-option.is-active{color:#fff;border-color:transparent;background:linear-gradient(to right,var(--accent-ink),var(--accent))}.settings-list{display:grid;grid-template-columns:140px 1fr;gap:10px 16px;margin:0;font-size:15px}.settings-list dt{color:var(--ink-2)}.settings-list dd{margin:0}@media (max-width:1000px){.search-input{display:none}}