@font-face{font-family:Besley;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/besley/besley-roman.woff2) format("woff2")}@font-face{font-family:Besley;font-style:italic;font-weight:400 500;font-display:swap;src:url(/fonts/besley/besley-italic.woff2) format("woff2")}@font-face{font-family:Niramit;font-style:normal;font-weight:400;font-display:swap;size-adjust:108.5%;unicode-range:U+0000-002C,U+002E-10FFFF;src:url(/fonts/niramit/niramit-regular.woff2) format("woff2")}@font-face{font-family:Niramit;font-style:normal;font-weight:500;font-display:swap;size-adjust:108.5%;unicode-range:U+0000-002C,U+002E-10FFFF;src:url(/fonts/niramit/niramit-medium.woff2) format("woff2")}@font-face{font-family:Niramit;font-style:italic;font-weight:400;font-display:swap;size-adjust:108.5%;unicode-range:U+0000-002C,U+002E-10FFFF;src:url(/fonts/niramit/niramit-italic.woff2) format("woff2")}@font-face{font-family:Didact Gothic;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/didact-gothic/didact-gothic.woff2) format("woff2")}@font-face{font-family:"Noto Serif Thai";font-style:normal;font-weight:300 500;font-stretch:100%;font-display:swap;src:url(/fonts/noto-serif-thai/k3kHo80MPvpLmixYH7euCxWpSMu3-gcWGj0hHAKGvUQleOfz-VpL-DdULg.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Fahkwang;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fahkwang/Fahkwang-Regular.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Mali;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/mali/mali-thai.woff2) format("woff2");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:La Belle Aurore;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/la-belle-aurore/la-belle-aurore.woff2) format("woff2")}:root{--paper: #f2ead8;--lacquer: #9a2b1f;--on-lacquer: #f2ead8;--word-rom: var(--lacquer);--ink: #1c1710;--ink-2: #5a5146;--ink-3: #655c50;--hair: rgba(28, 23, 16, .14);--press-line: color-mix(in srgb, var(--ground-ink) 55%, var(--type-on-ink));--paper-raised: #f8f2e4;--lacquer-hover: color-mix(in srgb, var(--lacquer) 86%, var(--ground-ink));--balloon-ink: #1a1612;--trail-core: #f6c7a4;--ground-ink: #1c1710;--ink-raised: #251f16;--type-on-ink: #f2ead8;--type-on-ink-2: #c9bfae;--hair-on-ink: rgba(242, 234, 216, .16);--lacquer-on-ink: #d0705b;--navy: #1b2d4f;--wash-peach: #f8e0c6;--wash-cream: #f4e8d4;--wash-green: #e4ecd0;--wash-moss: #6d7a52;--mark-right: var(--wash-moss);--moss-on-ink: color-mix(in srgb, var(--wash-moss) 78%, var(--type-on-ink));color-scheme:light;--display: "Besley", "Didact Gothic", "Noto Serif Thai", "Iowan Old Style", Georgia, serif;--ui: "Niramit", "Didact Gothic", "Noto Serif Thai", system-ui, sans-serif;--phonetic: "Didact Gothic", "Niramit", "Noto Serif Thai", sans-serif;--thai: "Noto Serif Thai", serif;--wordmark: "Fahkwang", var(--thai);--balloon: "Mali", var(--thai);--hand: "La Belle Aurore", cursive;--rom-adjust: .5;--field-label: 15px;--field-text: 20px;--prompt-rom: 60px;--prompt-thai: 68px;--prompt-en: 56px;--answer: 32px;--pick: 40px;--desk-gap: 52px;--ease: cubic-bezier(.16, 1, .3, 1)}@media(max-width:520px){:root{--prompt-rom: 44px;--prompt-thai: 50px;--prompt-en: 42px;--answer: 28px;--desk-gap: 36px}}::selection{background:var(--lacquer);color:var(--paper)}button{font:inherit;color:inherit}input{font:inherit;color:var(--ink)}button{background:none;border:0;padding:0;cursor:pointer}button:disabled{cursor:default;opacity:.4}.hear-key{position:relative}.hear-mark{position:absolute;left:calc(100% + 6px);top:50%;width:16px;height:14px;transform:translateY(-50%);color:var(--lacquer);opacity:0;pointer-events:none}.hear-key:focus-visible .hear-mark{opacity:1}@media(hover:hover){.hear-key:hover .hear-mark{opacity:1}}.hear-key.hear-icon{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;color:var(--ink-2);text-decoration:none}.hear-key.hear-icon .hear-mark{position:static;left:auto;top:auto;width:23px;height:23px;transform:none;opacity:1;color:currentColor}.hear-key.hear-icon.playing{color:var(--lacquer)}.prompt-tools:has(>.hear-key){column-gap:36px}.preview-stage .hear-mark{width:20px;height:18px}.rom,.prompt-rom,.roman-field,.reveal,.pair-line.rom{font-family:var(--phonetic);font-synthesis:none;font-size-adjust:var(--rom-adjust)}.thai{font-family:var(--thai)}.btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:36px;padding:0 14px;border:2px solid transparent;border-radius:2px;font-family:var(--ui);font-size:16px;font-weight:500;letter-spacing:0;line-height:1;text-decoration:none}.btn.primary,.btn.commit{background:var(--lacquer);color:var(--on-lacquer);border-color:var(--lacquer)}.btn[aria-busy=true]{position:relative;overflow:hidden;opacity:1;cursor:default}.btn[aria-busy=true]:after{content:"";position:absolute;top:auto;left:0;right:0;bottom:0;height:3px;background:var(--on-lacquer);transform-origin:left center}:is(.btn.secondary,.btn.danger)[aria-busy=true]:after{bottom:3px;left:14px;right:14px;height:2px}.btn.secondary[aria-busy=true]:after{background:var(--ink)}.btn.danger[aria-busy=true]:after{background:var(--lacquer)}@media(prefers-reduced-motion:no-preference){.btn[aria-busy=true]:after{animation:btn-work 1.2s var(--ease, ease-in-out) infinite}}@keyframes btn-work{0%{transform:scaleX(0);transform-origin:left center}50%{transform:scaleX(1);transform-origin:left center}50.01%{transform:scaleX(1);transform-origin:right center}to{transform:scaleX(0);transform-origin:right center}}.btn.secondary{background:transparent;color:var(--ink);border:2px solid var(--ink)}.btn.danger{background:transparent;color:var(--lacquer);border:2px solid var(--lacquer)}@media(hover:hover){.btn.primary:hover:not(:disabled),.btn.commit:hover:not(:disabled),.btn.primary:active:not(:disabled),.btn.commit:active:not(:disabled){background:var(--lacquer-hover);border-color:var(--lacquer-hover)}.btn.secondary:hover:not(:disabled),.btn.secondary:active:not(:disabled){background:var(--ink);color:var(--paper)}.btn.danger:hover:not(:disabled),.btn.danger:active:not(:disabled){background:var(--lacquer);color:var(--on-lacquer)}}.btn.primary:active:not(:disabled),.btn.commit:active:not(:disabled){background:var(--lacquer-hover);border-color:var(--lacquer-hover)}.btn.secondary:active:not(:disabled){background:var(--ink);color:var(--paper)}.btn.danger:active:not(:disabled){background:var(--lacquer);color:var(--on-lacquer)}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;margin:0;border:2px solid var(--ink);border-radius:2px;background-color:transparent;background-repeat:no-repeat;background-position:center;background-size:12px 12px;cursor:pointer;flex:none}@media(hover:hover){input[type=checkbox]:hover:not(:disabled){border-color:var(--lacquer)}}input[type=checkbox]:active:not(:disabled){border-color:var(--lacquer)}input[type=checkbox]:checked{border-color:var(--lacquer);background-color:var(--lacquer);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M3.2 8.1 6.4 11.3 12.8 4.6' fill='none' stroke='%23f2ead8' stroke-width='2' stroke-linecap='square' stroke-linejoin='miter'/></svg>")}input[type=checkbox]:focus-visible{outline:2px solid var(--lacquer);outline-offset:3px}input[type=checkbox]:disabled{cursor:default;opacity:.4}.text-btn,.consent-act a{color:var(--ink-2);text-decoration-line:underline;text-decoration-color:var(--press-line);text-decoration-thickness:1px;text-underline-offset:.28em}.text-btn:active,.consent-act a:active{color:var(--ink);text-decoration-color:var(--lacquer)}@media(hover:hover){.text-btn:hover,.text-btn:active,.consent-act a:hover,.consent-act a:active{color:var(--ink);text-decoration-color:var(--lacquer)}}.text-btn.current,.text-btn.marked{color:var(--ink);text-decoration-color:var(--lacquer);text-decoration-thickness:2px}.text-btn.current{cursor:default}.text-btn:disabled{color:var(--ink-2);text-decoration-color:transparent}.answer-form{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px;align-items:end;position:relative}.answer-form:after{content:"";grid-column:1 / -1;grid-row:1;align-self:end;height:2px;background:var(--ink);pointer-events:none}.answer-form:focus-within:after{background:var(--lacquer)}.answer-form.bare:after{content:none}.roman{display:contents}.roman-line{grid-column:1;grid-row:1;min-width:0}.answer-form>.btn.commit{grid-column:2;grid-row:1;align-self:end;margin-bottom:2px;border-radius:2px 2px 0 0}.answer-form.bare>.btn.commit{margin-bottom:0;border-radius:2px}.roman-field,.answer-said{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;box-sizing:border-box;margin:0;background:transparent;border:0;padding:0 0 10px;font-size:32px;line-height:1.2;outline:none;caret-color:var(--lacquer)}.answer-form .roman-field,.answer-form .answer-said{line-height:1.4;margin-top:-.1em;padding-bottom:calc(12px - .1em)}.answer-form .roman-field.en{margin-top:calc(-.1em - 4px);padding-top:4px}.answer-said{grid-column:1;grid-row:1;min-width:0;min-height:1.2em;color:var(--ink-2);overflow-wrap:anywhere}.text-btn:focus-visible,.btn:focus-visible,.strip-k:focus-visible{outline:2px solid var(--lacquer);outline-offset:3px}.roman-field.en,.answer-said.en{font-family:var(--ui);font-size-adjust:none;font-size:22px;font-weight:400}.roman-field::placeholder{color:var(--ink-2)}.pop-k{font-size:13px;font-weight:500;color:var(--ink-2)}.strip{grid-column:1 / -1;grid-row:2;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 44px;margin-top:12px;min-height:30px}.strip-group{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 20px}.strip-k{display:inline-flex;align-items:baseline;gap:6px;padding:2px 0;color:var(--ink-2)}.strip-k .rom{font-size:28px;line-height:1;text-decoration-line:underline;text-decoration-color:var(--press-line);text-decoration-thickness:1px;text-underline-offset:.28em}.strip-k.tone .rom{display:inline-block;width:1.3em;white-space:nowrap;text-align:left}.strip-k .pop-k{font-size:16px}.strip-k:active:not(:disabled){color:var(--ink)}.strip-k:active:not(:disabled) .rom{text-decoration-color:var(--lacquer)}@media(hover:hover){.strip-k:hover:not(:disabled){color:var(--ink)}.strip-k:hover:not(:disabled) .rom{text-decoration-color:var(--lacquer)}}.strip-k.swap{color:var(--ink)}.strip-k.swap .rom{text-decoration-color:var(--lacquer);text-decoration-thickness:2px}.strip-k.swap .pop-k{color:var(--lacquer)}.strip-k:disabled .rom{text-decoration-color:transparent}.balloon{position:absolute;left:calc(var(--bx) * 1%);top:calc(var(--by) * 1%);width:calc(var(--bw) * .74%);height:calc(var(--bh) * .66%);transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap;font-family:var(--balloon);font-weight:500;line-height:1.35;color:var(--balloon-ink);font-size:min(calc(var(--bw) * .7cqw / var(--em, 4)),calc(var(--bh) * .58cqw * 9 / 16 / var(--lines, 1) / 1.35));pointer-events:none}.pair-line{margin:0;color:var(--lacquer);font-family:var(--display);font-size:22px;font-weight:400;line-height:1.2}.pair-line.thai{font-family:var(--thai);font-size:32px}.feedback{margin-top:24px;color:var(--ink-2)}.session-feedback{margin:0;min-height:1.5em}.session-feedback.ok{color:var(--ink)}.session-feedback.ok:before{content:"";display:inline-block;width:10px;height:10px;margin-right:10px;background:var(--mark-right);vertical-align:.1em}.session-feedback.miss{color:var(--lacquer)}.hear-warn{color:var(--lacquer);font-size:15px}@media(max-width:520px){.roman-field,.answer-said{font-size:28px}.hear-key{display:inline-flex;align-items:center;min-height:44px;padding:10px 2px}.pop-k{font-size:14px}.answer-form{container-type:inline-size}.strip{gap:8px 0;margin-top:8px;min-height:44px;align-items:stretch}.strip-group{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:0 4px;align-items:stretch;flex:1 1 100%;min-width:0}.strip-k{position:relative;justify-content:center;align-items:center;min-width:0;min-height:44px;padding:12px 0 0;border:1px solid var(--hair);border-radius:2px}.strip-k .pop-k{position:absolute;top:3px;left:5px;font-size:14px;line-height:1}.strip-k .rom,.strip-k.tone .rom{width:auto;font-size:clamp(18px,6vw,24px);text-align:center;text-decoration:none}.strip-k.tone .rom[data-letters="3"]{font-size:clamp(15px,4.7vw,19px)}.strip-k.tone .rom[data-letters="4"],.strip-k.tone .rom[data-letters="5"],.strip-k.tone .rom[data-letters="6"]{font-size:15px}.strip-k:active:not(:disabled){border-color:var(--lacquer)}.strip-k.swap{border-width:2px;border-color:var(--lacquer);padding-top:11px}.strip-k.swap .pop-k{top:2px;left:4px}.strip-k:disabled{border-color:transparent}@container (min-width: 292px){.strip{flex-wrap:nowrap;gap:0 12px}.strip-group{flex:1 1 0}}}@media(pointer:coarse),(max-width:520px){.hear-key{min-height:44px;min-width:44px}.strip-k{min-height:44px}}@media(pointer:coarse)and (min-width:521px){.strip-k{min-width:44px}}.wordmark .wordmark-rom{color:var(--word-rom)}:is(a,button).wordmark:focus-visible .wordmark-th,:is(a,button).wordmark:active .wordmark-th{color:var(--word-rom)}:is(a,button).wordmark:focus-visible .wordmark-rom,:is(a,button).wordmark:active .wordmark-rom{color:var(--ink)}@media(hover:hover){:is(a,button).wordmark:hover .wordmark-th{color:var(--word-rom)}:is(a,button).wordmark:hover .wordmark-rom{color:var(--ink)}}.wordmark:focus-visible{outline:2px solid var(--word-rom);outline-offset:3px}.trail,.login-bar,.offline-bar{--paper: var(--ground-ink);--ink: var(--type-on-ink);--ink-2: var(--type-on-ink-2);--ink-3: var(--type-on-ink-2);--hair: var(--hair-on-ink);--lacquer: var(--lacquer-on-ink);--word-rom: var(--lacquer-on-ink);color:var(--ink);background:var(--ground-ink)}.trail,.login-bar{border-image:linear-gradient(var(--ground-ink) 0 0) fill 0 / 0 / 0 100vw}.trail-net{display:flex;align-items:center;gap:8px;min-height:36px;font-size:16px;font-weight:500;line-height:1;white-space:nowrap}.trail-net[data-net=offline]{color:var(--lacquer)}.trail-net[data-net=done],.trail-net[data-net=online]{color:var(--moss-on-ink)}.net-cloud{width:24px;height:24px;flex:none;display:block}.btn.secondary.net-sync{white-space:nowrap}@media(prefers-reduced-motion:no-preference){.wordmark .wordmark-th,.wordmark .wordmark-rom{transition:color .68s var(--ease)}}p:has(.tone-rom){padding-top:.4em}.slip{color:var(--lacquer)}.tone-syl{position:relative;display:inline-block}.tone-line{position:absolute;left:50%;bottom:calc(100% - .12em);width:.66em;height:.38em;transform:translate(-50%);overflow:visible;pointer-events:none}.tone-line path{fill:none;stroke:currentColor;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}.tone-line .tone-is{opacity:.5;transition:opacity .7s ease}.slip .tone-line .tone-is{opacity:1}.tone-line .tone-was{stroke:var(--ink-3);stroke-dasharray:3 5}.tone-line .tone-lit{stroke:var(--lacquer);stroke-dasharray:1 2;stroke-dashoffset:1;transition:opacity .7s ease}.tone-line .tone-trail{opacity:1;transition:none}.voice-rest .tone-line .tone-lit{opacity:0}.voice-rest .tone-line .tone-trail{opacity:0;transition:opacity .7s ease}.tone-line .tone-trail path{stroke:none}.tone-line .tone-glow{fill:var(--lacquer);opacity:.5;filter:blur(.05em)}.tone-line .tone-body{fill:var(--lacquer)}.tone-line .tone-core{fill:var(--trail-core);opacity:0;transition:opacity .14s ease;filter:blur(.012em)}.tone-line .tone-bloom{fill:var(--lacquer);opacity:0;transition:opacity .14s ease;filter:blur(.075em)}.tone-line .tone-dot{fill:var(--lacquer);stroke:none;opacity:0;transition:opacity .14s ease}.tone-line .tone-spark{fill:var(--paper);opacity:0;transition:opacity .14s ease}.tone-syl[data-lit] .tone-is{opacity:.35}@media(prefers-reduced-motion:no-preference){.tone-line .tone-is{stroke-dasharray:1 2;stroke-dashoffset:1;animation:tone-draw .56s var(--ease) calc(var(--i, 0) * .12s + .14s) forwards}}@keyframes tone-draw{to{stroke-dashoffset:0}}.consent{position:fixed;z-index:20;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));max-width:440px;margin:0;padding:16px;background:var(--paper);color:var(--ink);border:2px solid var(--ink);border-radius:2px;font-family:var(--ui);font-size:15px;line-height:1.45}.consent-text{margin:0 0 12px;text-wrap:pretty}.consent-act{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}html[data-keyboard=open] .consent{display:none}@media(min-width:721px){.consent{right:auto}}.letter-ink{position:relative}.written{position:relative;display:inline-block}.letter-ink .ink-under,.written .ink-under{color:transparent}.written .ink-pos{position:absolute;top:-.199em;display:block}.letter-ink .ink-again{position:absolute;top:-.199em;display:block;line-height:inherit}.letter-ink svg,.written svg{display:block;width:auto;overflow:visible}.letter-ink .ink-fill,.written .ink-fill{fill:currentColor}.letter-ink .ink-trace,.written .ink-trace{fill:none;stroke:currentColor;stroke-width:18;stroke-linecap:round;stroke-linejoin:round;opacity:0}@media(prefers-reduced-motion:no-preference){.letter-ink .ink-trace,.written:not(.still) .ink-trace{opacity:1;stroke-dasharray:1;stroke-dashoffset:1;animation:ink-trace var(--t) cubic-bezier(.45,0,.55,1) var(--d) forwards,ink-settle .56s ease calc(var(--draw) - 60ms) forwards}.letter-ink .ink-fill,.written:not(.still) .ink-fill{opacity:0;animation:ink-fill .56s ease calc(var(--draw) - .14s) forwards}}@keyframes ink-trace{to{stroke-dashoffset:0}}@keyframes ink-fill{to{opacity:1}}@keyframes ink-settle{to{opacity:0}}.fill-gap{display:inline-block;min-width:2.5em;border-bottom:2px solid var(--ink);line-height:1.1;text-align:center}.fill-gap.gloss{padding:0 .2em;font-family:var(--display);font-style:italic;font-size:.5em;color:var(--ink-2);min-width:5em}.fill-gap.filled{display:inline;border-bottom-color:transparent;min-width:0;color:var(--lacquer)}.fill-mark{font-style:italic}[data-scene=awning]{--bx: 52.6;--by: 21.5;--bw: 18;--bh: 14.9}[data-scene=bargain]{--bx: 32;--by: 15.5;--bw: 18;--bh: 25.1}[data-scene=bike]{--bx: 48.2;--by: 15.3;--bw: 15.5;--bh: 24.2}[data-scene=bill]{--bx: 47.9;--by: 19.4;--bw: 24.9;--bh: 23.8}[data-scene=birthday]{--bx: 48.3;--by: 23.4;--bw: 15.2;--bh: 16.8}[data-scene=cash]{--bx: 52.6;--by: 16.5;--bw: 23;--bh: 24.3}[data-scene=chicken]{--bx: 39.5;--by: 13.4;--bw: 17;--bh: 15.4}[data-scene=children]{--bx: 63.1;--by: 15.4;--bw: 20.2;--bh: 24.4}[data-scene=coffee]{--bx: 83.6;--by: 15.3;--bw: 23.8;--bh: 24.2}[data-scene=dinner]{--bx: 66.3;--by: 15.4;--bw: 19.1;--bh: 24.4}[data-scene=directions]{--bx: 57.3;--by: 24;--bw: 28.6;--bh: 24.4}[data-scene=door]{--bx: 53.8;--by: 20.4;--bw: 16.6;--bh: 19.4}[data-scene=dropoff]{--bx: 26.6;--by: 25.6;--bw: 19.8;--bh: 12.5}[data-scene=eaten]{--bx: 64.6;--by: 16.5;--bw: 22;--bh: 24.4}[data-scene=exit]{--bx: 57.5;--by: 15.3;--bw: 22.7;--bh: 19}[data-scene=from]{--bx: 21.7;--by: 15.5;--bw: 25.5;--bh: 25.1}[data-scene=fruit]{--bx: 61.1;--by: 13.1;--bw: 18.7;--bh: 18.1}[data-scene=headache]{--bx: 43.6;--by: 9.1;--bw: 22.6;--bh: 13.5}[data-scene=heat]{--bx: 38;--by: 19.4;--bw: 22.6;--bh: 17.8}[data-scene=help]{--bx: 71;--by: 18.7;--bw: 16.8;--bh: 19.3}[data-scene=hotel]{--bx: 61.3;--by: 15.3;--bw: 20.5;--bh: 24.2}[data-scene=howmuch]{--bx: 40.9;--by: 13.3;--bw: 15.6;--bh: 15.3}[data-scene=hungry]{--bx: 40.4;--by: 15.8;--bw: 19.3;--bh: 20.8}[data-scene=jasmine]{--bx: 41.5;--by: 13.9;--bw: 20.4;--bh: 18.1}[data-scene=laugh]{--bx: 26.6;--by: 10.1;--bw: 19.8;--bh: 14.9}[data-scene=left]{--bx: 40.7;--by: 20.1;--bw: 18;--bh: 16.9}[data-scene=lesssweet]{--bx: 40.3;--by: 13;--bw: 19.6;--bh: 18.2}[data-scene=mango]{--bx: 66.1;--by: 16;--bw: 15.5;--bh: 18.6}[data-scene=mototaxi]{--bx: 59.3;--by: 21.8;--bw: 19;--bh: 15.8}[data-scene=mum]{--bx: 25.8;--by: 15;--bw: 21.9;--bh: 25}[data-scene=name]{--bx: 60.9;--by: 15.3;--bw: 19.5;--bh: 24.2}[data-scene=noodles]{--bx: 35.3;--by: 13.1;--bw: 18.8;--bh: 18.6}[data-scene=nospicy]{--bx: 19.2;--by: 13.7;--bw: 20.3;--bh: 21.8}[data-scene=passenger]{--bx: 33.2;--by: 9.4;--bw: 23;--bh: 15.1}[data-scene=pharmacy]{--bx: 44.4;--by: 18.8;--bw: 24.7;--bh: 28.2}[data-scene=photo]{--bx: 56.9;--by: 13.8;--bw: 16.7;--bh: 16.7}[data-scene=praise]{--bx: 88.4;--by: 44.6;--bw: 21.4;--bh: 24.7}[data-scene=pretty]{--bx: 65.2;--by: 14;--bw: 20.3;--bh: 19.6}[data-scene=pricey]{--bx: 11.8;--by: 15.4;--bw: 20.2;--bh: 24.4}[data-scene=qr]{--bx: 75.9;--by: 14.9;--bw: 17.3;--bh: 17.9}[data-scene=scan]{--bx: 56.3;--by: 8.7;--bw: 19.5;--bh: 13.2}[data-scene=shake]{--bx: 40.4;--by: 10.4;--bw: 20.7;--bh: 15.6}[data-scene=slowly]{--bx: 50.6;--by: 22.2;--bw: 25.3;--bh: 18.6}[data-scene=sorry]{--bx: 40.4;--by: 10.8;--bw: 24.3;--bh: 16.9}[data-scene=spicy]{--bx: 36.7;--by: 23.7;--bw: 15.5;--bh: 17.4}[data-scene=stairs]{--bx: 50.9;--by: 15.3;--bw: 17.2;--bh: 24.2}[data-scene=stall]{--bx: 26.8;--by: 15.2;--bw: 19;--bh: 24.3}[data-scene=stop]{--bx: 36.4;--by: 8.5;--bw: 15.6;--bh: 12.9}[data-scene=table]{--bx: 50.7;--by: 25.3;--bw: 20.4;--bh: 24.2}[data-scene=tasty]{--bx: 67;--by: 26.9;--bw: 21.8;--bh: 17.2}[data-scene=tea]{--bx: 74.1;--by: 17.9;--bw: 12.6;--bh: 12.8}[data-scene=thanks]{--bx: 43.9;--by: 15.3;--bw: 20.5;--bh: 16.1}[data-scene=tired]{--bx: 40;--by: 17.4;--bw: 15.9;--bh: 12.5}[data-scene=toastie]{--bx: 20.7;--by: 22.1;--bw: 14.3;--bh: 12.8}[data-scene=toilet]{--bx: 9.6;--by: 18.8;--bw: 17.3;--bh: 23.8}[data-scene=tomorrow]{--bx: 24;--by: 14.3;--bw: 13;--bh: 15}[data-scene=tooth]{--bx: 46.4;--by: 12.2;--bw: 20.8;--bh: 18.2}[data-scene=umbrella]{--bx: 72.2;--by: 21.5;--bw: 22.2;--bh: 15.4}[data-scene=water]{--bx: 74.3;--by: 14.3;--bw: 20.5;--bh: 25}[data-scene=well]{--bx: 43.9;--by: 17;--bw: 21.9;--bh: 13.2}.course-reel{margin:0 0 14px;padding-top:14px;border-top:2px solid var(--ink)}.reel-line{display:grid;grid-template-columns:2.4em minmax(0,1fr) auto;align-items:end;column-gap:18px;margin:0}.reel-n{font-family:var(--display);font-size:44px;line-height:1;color:var(--lacquer)}.reel-name{font-family:var(--display);font-size:28px;line-height:1.2;text-wrap:balance}.reel-thai{font-family:var(--thai);font-size:28px;line-height:1.5;color:var(--ink-2)}.reel-rail{position:relative;display:flex;justify-content:space-between;align-items:center;height:44px;margin-top:8px;touch-action:pan-y;cursor:ew-resize}.reel-tick{width:2px;height:10px;background:var(--ink);opacity:.22}.reel-tick:nth-child(5n+1){height:18px}.reel-tick.past{opacity:.8}.reel-mark{position:absolute;left:0;top:50%;width:4px;height:28px;margin-top:-14px;background:var(--lacquer)}@media(prefers-reduced-motion:no-preference){.reel-tick{transition:opacity .4s ease}.reel-mark{transition:transform .6s var(--ease)}}.course-art{margin:0 0 6px;aspect-ratio:16 / 9;border:2px solid var(--ink);background:var(--paper)}.course-letter{display:grid;place-items:center}.course-letter .prompt-thai{margin:0;font-size:104px;line-height:1.3}.course-scene{position:relative;overflow:hidden;container-type:inline-size}.course-scene-art{display:block;width:100%;height:100%;object-fit:cover}.course-words{list-style:none;display:grid;align-content:center;gap:8px;padding:14px 20px}.course-words li{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px}.word-thai{font-family:var(--thai);font-size:18px}.word-rom{font-family:var(--phonetic);font-size:16px;color:var(--word-rom)}.word-en{font-size:15px;color:var(--ink-3)}.word-due{margin-left:auto;font-size:15px;color:var(--lacquer)}.course-letter,.course-pools{position:relative;overflow:hidden;container-type:inline-size}.abc{position:absolute;top:0;right:0;bottom:0;left:0;--abc-size: min(52px, 14cqw, calc(118cqw / var(--n, 6)))}.abc-field,.abc-flyers{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.abc-spot{position:absolute;transform:translate(-50%,-50%);opacity:.2}.abc-glyph{display:block;font-family:var(--thai);font-size:22px;line-height:1.6;color:var(--ink)}.abc-word{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;align-content:center;justify-items:center;gap:2px}.abc-lines{display:grid}.abc-thai,.abc-fly{margin:0;font-family:var(--thai);font-size:var(--abc-size);line-height:1.7;white-space:nowrap}.abc-thai{grid-area:1 / 1;color:var(--ink)}.abc-new{color:var(--lacquer)}.abc-c{display:inline-block;opacity:0}.abc-say{margin:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 10px;opacity:0}.abc-rom{font-family:var(--phonetic);font-size:18px;color:var(--word-rom)}.abc-en{font-size:15px;color:var(--ink-3)}.abc-fly{position:absolute;left:0;top:0;color:var(--lacquer);opacity:0;will-change:transform,opacity}.abc-still .abc-c,.abc-still .abc-say{opacity:1}.abc-still .abc-new{visibility:hidden}.course-scene[data-on] .day-layer{position:absolute;top:0;right:0;bottom:0;left:0}.day-c{display:inline-block;opacity:0}.course-pools .course-words{box-sizing:border-box;height:100%;margin:0}.course-pools[data-on] .course-words{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.pools{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.pool-name{margin:0;padding:8px 10px;font-size:15px;line-height:1.2;color:var(--ink-3)}.pool-name+.pool-name{border-left:1px solid var(--hair)}.pool-name.pool-due{color:var(--lacquer)}.pool-word{position:absolute;left:0;top:0;display:grid;white-space:nowrap}.pool-word .word-thai{font-size:16px;line-height:1.45}.pool-word .word-rom{font-size:15px;line-height:1.2}.pool-mark{position:absolute;left:-7px;top:4px;bottom:4px;width:3px;background:var(--lacquer);opacity:0}.pool-word.is-due .pool-mark{opacity:1}@container (max-width: 299px){.pool-word .word-rom{display:none}}@media(prefers-reduced-motion:no-preference){.abc-spot{animation:abc-drift var(--drift, 6s) ease-in-out var(--at, 0s) infinite alternate}[data-paused] .abc-spot{animation-play-state:paused}.pool-word{transition:transform .7s var(--ease)}.pool-mark{transition:opacity .3s ease}.pools-still .pool-word,.pools-still .pool-mark{transition:none}}@keyframes abc-drift{0%{transform:translate(-50%,calc(-50% + 4px)) rotate(-4deg)}to{transform:translate(-50%,calc(-50% - 4px)) rotate(4deg)}}@media(max-width:720px){.reel-line{grid-template-columns:2em minmax(0,1fr);align-items:center}.reel-n{grid-row:span 2;font-size:36px}.reel-name,.reel-thai{font-size:22px}}.course-lookup{position:relative;overflow:hidden;container-type:inline-size;display:grid;align-content:center;gap:18px;padding:0 9%}.lookup-field{display:flex;align-items:center;min-height:44px;margin:0;border-bottom:2px solid var(--ink);font-size:22px;line-height:1.3}.lookup-query{white-space:pre}.lookup-caret{display:inline-block;width:2px;height:1.1em;margin-left:2px;background:var(--lacquer)}.lookup-found{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 16px;margin:0}.lookup-found .word-thai{font-size:min(48px,11cqw);line-height:1.5}.lookup-found .word-rom{font-size:20px}.lookup-found .word-en{flex-basis:100%;font-size:16px}@container (max-width: 299px){.lookup-field{font-size:18px;min-height:36px}.lookup-found .word-rom{flex-basis:100%;font-size:18px}}@media(prefers-reduced-motion:no-preference){.course-lookup[data-on]:not([data-paused]) .lookup-caret{animation:lookup-caret 1.1s steps(1) infinite}}@keyframes lookup-caret{50%{opacity:0}}.offline-art{display:block;padding:0;overflow:hidden}.offline-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:64px;padding:12px 16px}.offline-bar .logo{width:28px;height:28px;flex:none;display:block}.offline-card{padding:22px 24px 26px}.offline-say{margin:0;font-family:var(--display);font-style:italic;font-size:18px;color:var(--ink-2)}.offline-word{margin:4px 0 0;font-family:var(--display);font-weight:400;font-size:40px;line-height:1.1;letter-spacing:-.02em}[data-motion=offline][data-press] .net-sync{background:var(--ink);color:var(--paper)}.offline-stack{display:grid;align-content:center;gap:14px;padding:24px;background:linear-gradient(165deg,var(--wash-peach) 0%,var(--paper) 52%,var(--wash-green) 100%)}.offline-stack>.offline-bar{border:2px solid var(--ground-ink)}.offline-stack[data-beat=off]>.offline-bar:nth-child(1),.offline-stack[data-beat=send]>.offline-bar:nth-child(2),.offline-stack[data-beat=live]>.offline-bar:nth-child(3){border-color:var(--lacquer)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;color:var(--ink);font-family:var(--ui);font-size:18px;line-height:1.45;background-color:var(--paper);caret-color:var(--lacquer);-webkit-font-smoothing:antialiased;touch-action:manipulation}body:before{content:"";position:fixed;top:0;left:0;right:0;height:calc(8px + env(safe-area-inset-top,0px));background:var(--lacquer);z-index:4}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--lacquer);outline-offset:3px}.roman-field:focus-visible{outline:none}h1[tabindex="-1"]:focus,.session-prompt[tabindex="-1"]:focus,.avatar-head h2[tabindex="-1"]:focus{outline:none}[role=status]:empty{margin:0}.app,.boot{background-color:var(--paper);background-image:radial-gradient(ellipse 70% 55% at 100% 0%,color-mix(in srgb,var(--lacquer) 8%,transparent),color-mix(in srgb,var(--lacquer) 2.5%,transparent) 42%,transparent 70%),radial-gradient(ellipse 85% 60% at 0% 100%,color-mix(in srgb,var(--wash-moss) 12%,transparent),transparent 68%),linear-gradient(156deg,var(--wash-peach) 0%,var(--wash-cream) 36%,var(--paper) 58%,var(--wash-green) 100%)}.app{min-height:100vh;min-height:100dvh;--pad-left: max(24px, env(safe-area-inset-left, 0px));--pad-right: max(24px, env(safe-area-inset-right, 0px));padding:calc(32px + env(safe-area-inset-top,0px)) var(--pad-right) calc(80px + env(safe-area-inset-bottom,0px)) var(--pad-left);overflow-x:clip}.app.night,.boot.night,html.night .boot{--paper: var(--ground-ink);--paper-raised: var(--ink-raised);--ink: var(--type-on-ink);--ink-2: var(--type-on-ink-2);--ink-3: var(--type-on-ink-2);--hair: var(--hair-on-ink);--lacquer: var(--lacquer-on-ink);--on-lacquer: var(--ground-ink);--word-rom: var(--lacquer-on-ink);--wash-peach: color-mix(in srgb, var(--lacquer-on-ink) 16%, var(--ground-ink));--wash-cream: color-mix(in srgb, var(--type-on-ink) 7%, var(--ground-ink));--wash-green: color-mix(in srgb, var(--wash-moss) 18%, var(--ground-ink));--mark-right: color-mix(in srgb, var(--wash-moss) 78%, var(--type-on-ink));color:var(--ink);caret-color:var(--lacquer);color-scheme:dark}body:has(.app.night),body:has(.boot.night){background-color:var(--ground-ink)}html.night body{background-color:var(--ground-ink)}body:has(.app.night):before,body:has(.boot.night):before{background:var(--lacquer-on-ink)}html.night body:before{background:var(--lacquer-on-ink)}.boot.night .boot-panel{border-color:var(--ink)}.boot.night .boot-say{color:var(--ink-2)}.boot.night .boot-morph,.boot.night .boot-title{color:var(--ink)}.app.night input[type=checkbox]:checked{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M3.2 8.1 6.4 11.3 12.8 4.6' fill='none' stroke='%231c1710' stroke-width='2' stroke-linecap='square' stroke-linejoin='miter'/></svg>")}.app.in-session{--session-gutter: max(24px, env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px));min-height:100dvh;padding:0 0 calc(36px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column}.shell{max-width:640px;margin:0 auto}.app.in-session .shell{flex:1;display:flex;flex-direction:column;width:100%;max-width:none;min-height:0}.app.in-session .trail{position:sticky;top:0;z-index:3;flex:0 0 auto;width:100%;margin:0 0 28px;align-items:center;padding:calc(18px + env(safe-area-inset-top,0px)) var(--session-gutter) 10px}.app.in-session .wordmark-name{transform:translateY(-3px)}.app.in-session .trail-mid{justify-self:center;max-width:100%;grid-template-columns:minmax(0,max-content) 64px auto;align-items:center;column-gap:14px;row-gap:0;margin-inline:28px}.app.in-session .trail-mid:not(:has(>.trail-meter)){grid-template-columns:minmax(0,max-content) auto}.app.in-session .trail-mid-copy{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.app.in-session .trail-mid-copy,.app.in-session .trail-meter,.app.in-session .trail-left{grid-row:1;grid-column:auto}.app.in-session .trail-meter{position:relative;inset:auto;width:64px;align-self:center}.app.in-session.preview-done .trail{position:static}.app.in-session .page.session{width:100%;align-items:center;justify-content:flex-start;padding-top:clamp(24px,11vh,112px);padding-inline:var(--session-gutter)}.trail{position:relative;display:grid;grid-template-columns:minmax(max-content,1fr) auto minmax(max-content,1fr);align-items:center;margin:0 0 40px;padding:10px 0}.app:has(>.shell>.trail:first-child){padding-top:0}.app>.shell>.trail:first-child{padding-top:calc(18px + env(safe-area-inset-top,0px))}.app:not(.in-session):not(.sys-sitting)>.shell>.trail{width:100vw;margin-left:calc(50% - 50vw + (var(--pad-right) - var(--pad-left)) / 2);padding-left:var(--pad-left);padding-right:var(--pad-right)}.wordmark{--th: 26px;--rom: 16px;--mark: calc(var(--th) + var(--rom) * 1.05);justify-self:start;display:flex;flex-direction:row;align-items:center;gap:10px;line-height:1.05;text-align:left;font-style:normal}.logo-mark{display:block;width:var(--mark);height:var(--mark);flex:none}.wordmark-name{display:flex;flex-direction:column;align-items:flex-start;white-space:nowrap}.wordmark-th{font-family:var(--wordmark);font-size:var(--th);font-weight:400;line-height:1;color:var(--ink)}.wordmark-rom{font-family:var(--phonetic);font-synthesis:none;font-size:var(--rom);line-height:1.05}.trail-mid{justify-self:center;max-width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:12px;row-gap:8px;align-items:baseline;margin-inline:20px;min-width:0;position:relative;color:var(--ink-2);font-size:20px}.trail-mid-copy{grid-column:1;grid-row:1;min-width:0;overflow:hidden;line-height:1.2;text-align:center;white-space:nowrap;text-overflow:ellipsis}.trail-tracks{grid-column:1 / -1;grid-row:1;display:flex;gap:16px;align-items:baseline}.trail-left{grid-column:3;grid-row:1;justify-self:end;white-space:nowrap;line-height:1.2;color:var(--ink-3);font-size:15px}.trail-sitting{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--hair);pointer-events:none}.trail-sitting:after{content:"";display:block;height:100%;width:calc(var(--sit, 0) * 1%);background:var(--lacquer)}@media(prefers-reduced-motion:no-preference){.trail-sitting:after{transition:width .48s var(--ease)}}.meter{display:block;position:relative;height:1px;background:var(--hair)}.meter:before,.meter:after{content:"";position:absolute;left:0;top:0;height:100%}.meter:before{width:calc(var(--met, 0) * 1%);background:var(--ink-3)}.meter:after{width:calc(var(--done, 0) * 1%);background:var(--lacquer)}.progress-rule{margin:10px 0 0;max-width:40em;color:var(--ink-2);font-size:15px}.intro .progress-rule,.finish .progress-rule{margin-bottom:28px}.intro .lesson-progress{margin-bottom:12px}.intro .progress-rule{margin-top:12px;font-size:18px;line-height:1.5;color:var(--ink)}.intro .progress-rules{display:grid;gap:4px;margin:12px 0 28px;max-width:40em}.intro .progress-rules .progress-rule{margin:0}.intro .progress-rules .progress-rule:not(:first-child){font-size:16px;color:var(--ink-2)}.account-block .progress-rule{margin-bottom:20px;max-width:none}.row-meter{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:transparent}.trail-meter{position:absolute;left:0;right:0;top:calc(100% + 8px);height:2px}.lede:has(+.lesson-progress){margin-bottom:12px}.finish .finish-line{margin:6px 0 24px}.finish .finish-line:has(+.finish-tally){margin-bottom:8px}.finish .finish-tally{margin:0 0 24px;color:var(--ink-2);max-width:34em}.finish .lesson-progress{margin-bottom:28px}.finish-strip{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;grid-column:1;justify-self:start;min-width:0;width:calc(100vw - var(--pad-left) - var(--pad-right));max-width:none;margin-left:calc(50% - 50vw + (var(--pad-left) + var(--pad-right)) / 2);margin-bottom:24px}.finish-strip li{min-width:0}@media(prefers-reduced-motion:no-preference){.finish-strip .day-panel{animation:finish-in .48s var(--ease) both}.finish-strip li:nth-child(1) .day-panel{animation-delay:0ms}.finish-strip li:nth-child(2) .day-panel{animation-delay:70ms}.finish-strip li:nth-child(3) .day-panel{animation-delay:.14s}.finish-strip li:nth-child(4) .day-panel{animation-delay:.21s}}@keyframes finish-in{0%{opacity:0}to{opacity:1}}.finish-stats{list-style:none;margin:0 0 24px;padding:0;font-size:16px;color:var(--ink-2);line-height:1.5}@media(max-width:519px){.finish-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.finish-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px;margin:24px 0 40px}.finish-actions .commit{gap:8px}.again-words{display:inline-flex;align-items:center;gap:8px}.lede:has(+.lede){margin-bottom:12px}.lesson-progress{display:grid;gap:8px;max-width:28em;margin:24px 0 36px;color:var(--ink-3);font-size:15px}.trail-end{justify-self:end;display:flex;gap:16px;align-items:center}.trail-account{display:inline-flex;align-items:center;gap:10px;min-width:0;max-width:100%}.trail-face{width:32px;height:32px;flex:none}.trail-account-name{min-width:0;max-width:10em;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-bottom:.4em;margin-bottom:-.4em}.trail-initial{display:grid;place-items:center;box-sizing:border-box;border:2px solid var(--ink);border-radius:2px;background:var(--paper);font-family:var(--display);font-size:18px;line-height:1;color:var(--ink)}.trail-account.text-btn{text-decoration-line:none}.trail-account .trail-account-name{text-decoration-line:underline;text-decoration-color:inherit;text-decoration-thickness:inherit;text-underline-offset:inherit}.page{max-width:640px}.profile-setup{display:flex;flex-direction:column;gap:16px}.profile-setup h1,.profile-setup p{margin:0}.profile-setup-copy{display:grid;gap:10px;margin-bottom:8px}.profile-setup-panel{display:grid;gap:24px;padding:24px;border:1px solid var(--hair);background:var(--paper-raised)}.profile-name{display:grid;gap:8px}.profile-name .profile-name-field{margin:0}.name-note{margin:0;font-size:15px;line-height:1.4;color:var(--ink-3);text-wrap:balance}.profile-face-block{display:grid;gap:10px;container-type:inline-size}.profile-face-label{color:var(--ink-2);font-size:var(--field-label)}.profile-face-grid{--cols: 7;--face-gap: 12px;--face: calc((100cqi - 12px - (var(--cols) - 1) * var(--face-gap)) / var(--cols));display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));grid-auto-rows:var(--face);gap:var(--face-gap);max-height:calc(3.5 * var(--face) + 3 * var(--face-gap) + 6px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:6px}@property --face-fade{syntax: "<length>"; inherits: false; initial-value: 0px;}@supports (animation-timeline: scroll()){.profile-face-grid{--face-fade: 56px;-webkit-mask-image:linear-gradient(to bottom,var(--ink) calc(100% - var(--face-fade)),transparent);mask-image:linear-gradient(to bottom,var(--ink) calc(100% - var(--face-fade)),transparent);animation:face-fade linear both;animation-timeline:scroll(self)}}@keyframes face-fade{0%,85%{--face-fade: 56px}to{--face-fade: 0px}}.profile-face-grid .avatar-face{width:100%;height:auto;aspect-ratio:1}@container (max-width: 419px){.profile-face-grid{--cols: 6}}@container (max-width: 359px){.profile-face-grid{--cols: 5}}@container (max-width: 299px){.profile-face-grid{--cols: 4}}.welcome-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:8px}.welcome-actions .btn{height:48px;padding:0 24px}.app:has(.page.welcome-in) .shell{max-width:none}.page.welcome-in{max-width:none;display:block}.welcome-in h1,.welcome-in p{margin:0}.welcome-in{--welcome-top: 112px}.welcome-hero{display:grid;grid-template-rows:auto auto 1fr;justify-items:center;gap:22px;min-height:calc(100svh - var(--welcome-top) - env(safe-area-inset-top,0px) - 12px);text-align:center}.welcome-panel{box-sizing:border-box;width:min(100%,960px,max(300px,(100svh - 470px) * 16 / 9));margin:0;aspect-ratio:16 / 9;border:2px solid var(--ink);overflow:hidden;background:var(--paper)}.welcome-panel img{display:block;width:100%;height:100%;object-fit:cover}.welcome-words{display:grid;justify-items:center;gap:12px}.welcome-in h1{font-family:var(--phonetic);font-synthesis:none;font-weight:400;font-size:clamp(34px,4.6vw,56px);line-height:1.1;letter-spacing:-.01em;text-wrap:balance}.welcome-mark{color:var(--lacquer)}.welcome-say{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 20px}.welcome-th,.welcome-th .thai{font-family:var(--wordmark);font-size:clamp(34px,4vw,44px);line-height:1.3;color:var(--ink)}.welcome-rom{font-size:clamp(22px,2.4vw,28px);color:var(--word-rom)}.welcome-hero .lede{max-width:24em;margin-top:6px;font-family:var(--display);font-size:clamp(22px,2.6vw,28px);line-height:1.3;color:var(--ink);text-wrap:balance}.welcome-cue{display:inline-grid;align-self:end;justify-items:center;gap:8px;min-height:44px;padding:6px 14px 2px;border:0;background:none;color:var(--ink-2);font:inherit;font-size:18px;cursor:pointer}.welcome-cue-arrow{display:block;width:20px;height:36px;fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:square;stroke-linejoin:miter;transition:transform .22s var(--ease)}.welcome-cue:active{color:var(--ink)}.welcome-cue:active .welcome-cue-arrow{transform:translateY(4px)}@media(hover:hover){.welcome-cue:hover{color:var(--ink)}.welcome-cue:hover .welcome-cue-arrow{transform:translateY(4px)}}.welcome-show{scroll-margin-top:24px}.welcome-show>h2:focus{outline:none}.welcome-in .welcome-actions{justify-content:center;margin-top:10px}.welcome-in .welcome-actions .btn{height:64px;min-width:min(100%,18rem);padding:0 32px;font-size:22px}.welcome-show{display:grid;gap:clamp(56px,8vw,104px);max-width:1120px;margin:clamp(24px,4vw,48px) auto 0;padding-top:clamp(40px,5vw,64px);border-top:2px solid var(--ink)}.welcome-show>h2{margin:0;font-family:var(--display);font-weight:400;font-size:clamp(32px,4.4vw,52px);line-height:1.08;letter-spacing:-.01em;text-align:center;text-wrap:balance}.welcome-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:24px clamp(36px,5vw,72px)}.welcome-row:nth-of-type(2n)>.welcome-art{order:2}.welcome-art{margin:0}.welcome-text{display:grid;gap:12px;max-width:30em}.welcome-text h3{margin:0;font-family:var(--display);font-weight:400;font-size:clamp(28px,3vw,36px);line-height:1.15}.welcome-text p{color:var(--ink-2);font-size:18px;line-height:1.55;text-wrap:pretty}.welcome-voice{display:grid;align-content:center;padding:0 8%}.welcome-voice .course-reel{margin:0;padding:0;border:0}.welcome-in .welcome-end{margin-top:clamp(64px,9vw,112px)}@media(max-width:760px){.welcome-row{grid-template-columns:minmax(0,1fr)}.welcome-row:nth-of-type(2n)>.welcome-art{order:0}}@media(prefers-reduced-motion:no-preference){.welcome-in:not(.arrived) .welcome-panel{animation:welcome-panel .9s var(--ease) both}.welcome-in h1{animation:welcome-rise .7s var(--ease) .2s both}.welcome-c{display:inline-block;animation:welcome-letter .52s var(--ease) calc(.48s + var(--k, 0) * 80ms) both}.welcome-th .welcome-mark{animation:welcome-ink .7s ease 1.25s both}.welcome-rom{animation:welcome-rise .6s var(--ease) 1.05s both}.welcome-rom .tone-line .tone-is{animation-delay:calc(var(--i, 0) * .14s + 1.4s)}.welcome-hero .lede{animation:welcome-rise .6s var(--ease) 1.25s both}.welcome-cue{animation:welcome-rise .6s var(--ease) 1.6s both}.welcome-cue-shaft{stroke-dasharray:1;animation:welcome-draw .52s var(--ease) 1.9s both}.welcome-cue-head{stroke-dasharray:1;animation:welcome-draw .36s var(--ease) 2.3s both}.welcome-cue-arrow{animation:welcome-nudge 1.4s var(--ease) 2.9s 2}}@keyframes welcome-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes welcome-nudge{0%,to{transform:none}45%{transform:translateY(7px)}}.welcome-row>.welcome-art,.welcome-row>.welcome-text{transition:opacity .7s var(--ease),transform .9s var(--ease)}.welcome-row>.welcome-text{transition-delay:.14s}.welcome-row[data-rise]>.welcome-art,.welcome-row[data-rise]>.welcome-text{opacity:0;transform:translateY(40px)}@keyframes welcome-panel{0%{opacity:0;transform:scale(.985)}}@keyframes welcome-rise{0%{opacity:0;transform:translateY(12px)}}@keyframes welcome-letter{0%{opacity:0;transform:translateY(.2em);filter:blur(4px)}}@keyframes welcome-ink{0%{color:transparent}}html[data-arriving] .boot-panel,html[data-arriving] .welcome-panel{view-transition-name:arrival}@media(prefers-reduced-motion:no-preference){html[data-arriving]::view-transition-old(root){animation:arrive-leave .26s ease both}html[data-arriving]::view-transition-new(root){animation:arrive-come .6s var(--ease) .16s both}html[data-arriving]::view-transition-group(arrival){animation-duration:.9s;animation-timing-function:var(--ease)}html[data-arriving]::view-transition-old(arrival){animation:none}html[data-arriving]::view-transition-new(arrival){animation:arrive-open 1.1s var(--ease) .24s both}}@keyframes arrive-leave{to{opacity:0}}@keyframes arrive-come{0%{opacity:0}}@keyframes arrive-open{0%{clip-path:inset(0 50% 0 50%)}to{clip-path:inset(0 0 0 0)}}.page.journey{max-width:none}.journey .contents{max-width:640px}.hub-course{background:var(--paper-raised);border:1px solid var(--hair)}.hub-course .contents li:last-child{border-bottom:0}.hub-day{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px 20px;align-items:start;max-width:640px;margin-top:28px}@media(max-width:520px){.hub-day{grid-template-columns:minmax(0,1fr)}}.day-word{display:flex;flex-direction:column;min-width:0;padding:16px;background:var(--wash-peach);border:1px solid var(--lacquer);border-radius:2px}.day-word-title{margin:0 0 12px;font-family:var(--ui);font-weight:400;font-size:15px;line-height:1.4;color:var(--lacquer)}.day-word-say{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 20px}.day-word{position:relative}.day-word-title{padding-inline-end:40px}.day-word>.fold-key{position:absolute;top:4px;inset-inline-end:5px}.day-word-thai{font-size:28px;line-height:1.5;color:var(--ink)}.day-word-rom{font-size:22px;line-height:1.4;color:var(--ink)}.day-word-en{margin:6px 0 0;font-family:var(--display);font-size:20px;line-height:1.35;color:var(--ink)}.day-word .prompt-note{font-size:15px}.day-word-tools{margin:auto 0 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;padding-top:16px;font-size:15px;color:var(--ink-3)}.hub-postcard{position:relative;margin:12px;min-width:0;padding:8px 8px 4px;background:var(--paper-raised);border:1px solid var(--hair);transform:rotate(-2.5deg);align-self:center}.hub-postcard-place{margin:0;padding:8px 4px 6px;text-align:center;font-family:var(--hand);font-weight:400;font-size:22px;line-height:1.3;color:var(--ink-2);text-wrap:balance}@media(max-width:520px){.hub-postcard{margin:0;transform:none;padding:0}.hub-postcard-place{text-align:left;padding:10px 16px 12px;font-size:16px;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.day-word{padding:12px 16px}.day-word-title{margin-bottom:8px}.day-word-thai{line-height:1.15}.day-word .prompt-note{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-word-tools{margin:12px 0 0;padding-top:0;justify-content:flex-start;gap:12px}}.hub-postcard img{display:block;width:100%;height:auto;aspect-ratio:16 / 9}.hub-postcard-open{display:block;width:100%;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.hub-postcard-open:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.hub-postcard-open:focus-visible{outline:none}.hub-postcard:has(.hub-postcard-open:focus-visible){outline:2px solid var(--lacquer);outline-offset:3px}.hub-postcard:active{border-color:var(--lacquer)}@media(hover:hover){.hub-postcard:hover{transform:translateY(-3px) rotate(-1deg);border-color:var(--lacquer)}}@keyframes postcard-land{0%{opacity:0;transform:translateY(-16px) rotate(-6deg)}to{opacity:1;transform:rotate(-2.5deg)}}@keyframes postcard-nudge{0%,to{transform:rotate(-2.5deg)}45%{transform:translateY(-6px) rotate(.5deg);border-color:var(--lacquer)}}@media(prefers-reduced-motion:no-preference){.hub-postcard{transition:transform .24s var(--ease),border-color .24s var(--ease)}.hub-postcard.cue{animation:postcard-land .9s var(--ease) backwards,postcard-nudge 1.6s ease-in-out 2.6s 2}}.preview-stage{display:grid;grid-template-columns:minmax(0,1fr);align-items:baseline;width:min(520px,100%)}.preview-stage>*{grid-column:1;min-width:0}.preview-stage .session-no,.preview-stage .preview-word{grid-row:1}.preview-word .prompt-tools{margin-top:18px;gap:8px 36px}.preview-desk{grid-row:2;display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%;margin-top:28px;padding-top:20px;border-top:1px solid var(--hair)}.preview-desk>.btn.commit{align-self:flex-start}.preview-desk>.session-feedback:empty{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.preview-stage .session-feedback.miss{display:flex;align-items:baseline;gap:16px}.preview-learned{margin:0;color:var(--lacquer);font-size:15px}.preview-nav{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 24px;width:100%;margin:12px 0 0;padding-top:16px;border-top:1px solid var(--hair);font-size:16px}.preview-count{color:var(--ink-3)}.preview-wait{margin:0;font-size:16px;position:relative}.preview-wait:focus{outline:none}form.preview-wait{display:grid;gap:8px;width:min(100%,28rem)}.preview-wait-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:end;width:100%}.preview-wait-label{grid-column:1 / -1;font-size:15px;color:var(--ink-2)}.preview-wait-field{width:100%;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-bottom:2px solid var(--ink);border-radius:0;padding:0 0 8px;font:inherit;font-size:16px;line-height:1.45;color:var(--ink);outline:none}.preview-wait-field:focus{border-bottom-color:var(--lacquer);outline:none}.preview-wait-note{margin:0;color:var(--lacquer);font-size:15px}.preview-wait-note:empty{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.preview-wait .waitlist-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.preview-finish{width:min(720px,100%)}.preview-finish-h{margin:0 0 28px}.preview-finish-lede{margin:28px 0 16px;color:var(--ink-2);max-width:34em}.preview-finish-act{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:0 0 28px}.preview-stage .answer-form{width:100%;margin-top:0}.preview-word{display:flex;flex-direction:column;gap:2px}.preview-stage .prompt-thai{font-size:var(--prompt-thai);margin:0;line-height:1.1}.preview-stage .prompt-rom{font-size:var(--prompt-rom);margin:0;line-height:1.12}.preview-stage .prompt-en{font-size:var(--prompt-en);margin:14px 0 0;color:var(--ink)}.preview-word.right{padding-bottom:14px;border-bottom:3px solid var(--lacquer)}.page.session{flex:1;max-width:none;width:100%;min-height:0;display:flex;flex-direction:column}.session-stage{display:grid;grid-template-columns:minmax(0,1fr);align-items:baseline;width:min(640px,100%)}.session-stage>*{grid-column:1;min-width:0}.session-stage .session-prompt{grid-row:1;font-size:22px}.session-stage .session-no,.session-stage .session-stimulus{grid-row:2}.session-stage .prompt-tools{grid-row:3;margin-top:14px}.page.session .session-stage .prompt-tools{font-size:20px}.page.session .session-stage .hear-key:not(.hear-icon){display:inline-flex;align-items:center}.page.session .session-stage .hear-key:not(.hear-icon) .hear-mark{width:28px;height:24px;left:calc(100% + 8px);opacity:1}.page.session .session-stage .hear-key:not(.hear-icon){margin-inline-end:36px}.page.session .session-stage .prompt-tools:has(>.hear-key){column-gap:16px}.session-stage .session-desk{grid-row:4;margin-top:var(--desk-gap)}.session-stage .verdict-line{grid-row:5;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin-top:14px;min-width:0}.session-stage .verdict-line.on{margin-top:20px;padding-top:16px;border-top:1px solid var(--hair)}.session-stage .verdict-line .session-feedback{margin-top:0}.session-stage .verdict-line .btn.commit{margin-left:auto;flex:none}.session-stage .verdict-line .verdict-go{display:inline-flex;align-items:center;gap:16px;margin-left:auto;flex:none}.answer-form.bare>.desk-room{display:flex;justify-content:flex-end;align-items:center}.verdict-word{font-family:var(--ui);font-weight:500;font-size:20px}.session-stage .prompt-en{font-size:var(--prompt-en)}.session-stage .prompt-rom,.session-stage .reveal{font-size:var(--prompt-rom);line-height:1.12}.session-stage .prompt-thai{font-size:var(--prompt-thai)}.session-stage .roman-field,.session-stage .answer-said{font-size:var(--answer)}.session-stage .roman-field.en,.session-stage .answer-said.en{font-size:22px}.session-no{justify-self:start;transform:translate(calc(-100% - 20px));font-family:var(--display);font-size:28px;line-height:1;color:var(--lacquer);font-variant-numeric:tabular-nums lining-nums}h1{font-family:var(--display);font-weight:400;font-size:clamp(32px,6vw,44px);line-height:1.15;margin:0 0 16px;text-wrap:balance}.account-now{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 48px;margin:4px 0 8px}.account-now p{margin:0}.account-n{display:block;font-family:var(--display);font-size:48px;font-weight:400;line-height:.9;font-variant-numeric:tabular-nums;color:var(--lacquer)}.account-n.ink{color:var(--ink);font-size:32px}.account-k{display:block;margin-top:8px;font-size:15px;color:var(--ink-2)}.account-quiet{margin:0 0 2px;color:var(--ink-2);font-size:15px}h2{font-family:var(--display);font-weight:400;font-size:22px;margin:40px 0 16px}.journey>section:first-child h2{margin-top:0}.journey .track-block .lede{margin-bottom:20px}.yours-filters{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin:8px 0;min-width:0;max-width:100%}.yours-intro{display:grid;gap:16px;margin:0 0 20px}.yours-intro>.account-quiet,.yours-intro>.yours-key,.yours-intro>.yours-filters{margin:0}.yours-intro>.yours-filters{gap:8px}.yours-sheet{margin:0 0 16px;padding:0 16px;background:var(--paper-raised);border:1px solid var(--hair);border-radius:2px}.yours-sheet .yours-list{margin:0}.yours-sheet .yours-row:last-child{border-bottom:0}.yours-filter-label{margin:0;color:var(--ink-2);font-size:15px}.yours-filter-sets{display:flex;flex-wrap:wrap;align-items:baseline;align-self:stretch;width:100%;min-width:0;max-width:100%;gap:8px 24px}.yours-filter-sets.yours-by-track{flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:8px 0}.yours-list{margin:0 0 16px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1.2fr) 11rem;column-gap:16px}.yours-row{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;justify-content:start;justify-items:start;align-items:center}.yours-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:4px 0 8px;padding-top:14px}.yours-go{display:flex;gap:16px;align-items:center;margin-left:auto}.yours-actions.yours-lead{justify-content:flex-start;margin:0 0 28px;padding-top:0}.yours-block>.account-quiet+.yours-lead{margin-top:20px}.yours-reason{color:var(--ink-3);font-size:15px}.yours-reason>span{white-space:nowrap}.yours-end{display:inline-flex;align-items:center;justify-self:end;gap:14px;text-align:right;line-height:1.3}.yours-keys{display:inline-flex;align-items:center;gap:14px}.yours-keys .hear-key:not(.hear-icon){margin-inline-end:22px}.fold-key{display:inline-flex;align-items:center;justify-content:center;flex:none;box-sizing:border-box;width:44px;height:44px;min-width:44px;padding:0;color:var(--ink-2)}.fold-mark{width:23px;height:23px;overflow:visible}.fold-mark .fold-ribbon{fill:none}.fold-mark.on{color:var(--lacquer)}.fold-mark.on .fold-ribbon{fill:currentColor}@media(hover:hover){.fold-key:hover{color:var(--ink)}}.fold-key:active{color:var(--ink)}@media(prefers-reduced-motion:no-preference){.fold-key.folding .fold-mark{transform-origin:50% 11%;animation:ribbon-down .26s var(--ease) both}}@keyframes ribbon-down{0%{transform:scaleY(.55)}to{transform:none}}.yours-keys .fold-key+.hear-key{margin-inline-start:-14px}.yours-row .rom{color:var(--ink)}.yours-due{color:var(--lacquer);font-size:15px}@media not all and (max-width:520px){.yours-list:has(.yours-reason):has(.fold-key){grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1.2fr) calc(11rem + 44px)}.yours-word{display:contents}.yours-row>.yours-word>.rom{grid-area:1 / 1}.yours-row>.yours-en{grid-area:1 / 2}.yours-row>.yours-word>.preview-thai{grid-area:1 / 3}.yours-row>.yours-end{grid-area:1 / 4}}@media(max-width:520px){.yours-list{grid-template-columns:minmax(0,1fr) auto}.yours-list .yours-row{grid-template-columns:subgrid;row-gap:2px}.yours-list .yours-row>:not(.yours-end){grid-column:1}.yours-list .yours-row>.yours-end{display:contents}.yours-list .yours-row .yours-reason,.yours-list .yours-row>.day-marks{grid-column:1;grid-row:auto;text-align:left}.yours-list .yours-row .yours-keys{grid-column:2;grid-row:1 / span 4;align-self:center;justify-self:end}}.yours-level-line{color:var(--ink-3);font-size:15px;line-height:1.3}@media not all and (max-width:520px){.yours-row>.yours-level-line{grid-area:2 / 2 / 3 / 4}.yours-row:has(>.yours-level-line)>.yours-end{display:contents}.yours-row:has(>.yours-level-line) .yours-keys{grid-area:1 / 4;justify-self:end}}@media(max-width:520px){.yours-list .yours-row>.yours-level-line{grid-column:1 / -1}.yours-list .yours-row:has(>.yours-level-line) .yours-keys{grid-row:1 / span 2}}.yours-group+.yours-group{margin-top:12px}.yours-group-title{margin:0 0 12px;font-family:var(--ui);font-weight:400;font-size:15px;line-height:1.4;color:var(--lacquer)}.yours-group-n{color:var(--ink-3)}.yours-track{display:grid;grid-template-columns:4.5rem minmax(0,1fr);align-items:baseline;width:100%;max-width:100%;min-width:0}.yours-track-name{color:var(--ink);font-size:15px}.yours-track-levels{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0}.app .text-btn.yours-level{min-width:28px;min-height:28px}@media(pointer:coarse){.app .text-btn.yours-level{min-width:32px;min-height:44px}.yours-track-levels{gap:0 4px}}.yours-key{display:flex;align-items:flex-start;gap:6px;margin:4px 0 0;color:var(--ink-2);font-size:15px;line-height:1.5}.yours-key .day-dots{margin-inline-end:4px;margin-top:calc(.75em - 4px)}.finish>.yours-key{margin:0 0 8px}.day-marks{display:inline-flex;align-items:center;gap:8px;color:var(--ink-3);font-size:15px;white-space:nowrap}.day-dots{display:inline-flex;align-items:center;gap:4px;flex:none}.day-dots .heat-c{width:8px;height:8px;cursor:default}.day-dots .heat-c:after{content:none}.day-dots .heat-c.future{border-color:var(--ink-3)}@media not all and (max-width:520px){.yours-list:has(.yours-keys .day-marks){grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,1.2fr) calc(11rem + 46px)}}.yours-row>.day-marks{grid-column:1 / 4;grid-row:2;margin-top:2px}.from-voice{color:var(--ink-3);font-family:var(--display);font-style:italic;font-size:15px}.lede{margin:0 0 40px;color:var(--ink-2);max-width:48em;text-wrap:pretty}.hub-offline{margin:0 0 20px;max-width:40em;color:var(--ink-2);font-size:16px;line-height:1.4}.course-status{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:10px}.course-status p{margin:0;max-width:40em;color:var(--ink-2);font-size:16px;line-height:1.35}.course-status .text-btn{white-space:normal;text-align:start}.page.intro>.lede{font-size:20px;line-height:1.5;color:var(--ink)}.contents{list-style:none;padding:0;margin:0}.contents li{border-top:1px solid var(--hair)}.contents.hub li:first-child{border-top:0}.hub-resources{margin:28px 0 0;padding-left:calc(42px + 1.75rem);padding-right:28px;font-family:var(--ui);font-weight:400;font-size:15px;line-height:1.4;color:var(--lacquer)}@media(min-width:861px){.hub-groups{width:calc(100vw - var(--pad-left) - var(--pad-right));max-width:1328px;margin-left:calc(50% - 50vw + (var(--pad-left) + var(--pad-right)) / 2);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:48px;row-gap:28px;align-items:start}.hub-course{grid-column:1;grid-row:1}.hub-more{grid-column:2;grid-row:1}.hub-more>.hub-resources{margin-top:0}.hub-day{display:contents}.day-word{grid-column:1;grid-row:2;align-self:start}.hub-postcard{grid-column:2;grid-row:2;justify-self:stretch}}@media(min-width:1240px){.hub-groups{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 380px;max-width:1756px}.hub-course{grid-row:1}.hub-day{display:grid;grid-template-columns:minmax(0,1fr);grid-column:3;grid-row:1;margin:0;max-width:none}.day-word{grid-column:auto;grid-row:auto}.hub-postcard{grid-column:auto;grid-row:auto;order:-1}}.contents li:last-child{border-bottom:1px solid var(--hair)}.contents-row{position:relative;width:100%;display:grid;grid-template-columns:1.75rem 1fr auto;column-gap:14px;align-items:baseline;text-align:left;padding:28px}.contents-n{text-align:right;font-family:var(--display);font-size:20px;font-weight:400;font-variant-numeric:tabular-nums lining-nums;line-height:1.2}.track-block .contents-row:not(.here) .contents-rom{display:none}.contents-row.here{grid-template-rows:auto auto;row-gap:10px}.contents-row.start-here{border-left:3px solid var(--lacquer)}.contents-row.here .row-meter{position:relative;left:auto;right:auto;bottom:auto;grid-column:2;grid-row:2;height:2px;background:var(--hair);align-self:center}.contents-end{display:contents}.contents-row.here .contents-meta{grid-column:3;grid-row:2;justify-self:end;align-self:center}.contents-item{position:relative}.contents-item>.contents-go{position:absolute;top:28px;right:28px}.contents-item>.contents-go .go-th{display:none}@media(hover:hover){@media(pointer:fine)and (prefers-reduced-motion:no-preference){.contents-item>.contents-go{display:inline-grid;place-items:center;--morph-ms: .64s;--morph-blur: 6px;--morph-lag: .16s}.contents-item>.contents-go .go-en,.contents-item>.contents-go .go-th{grid-area:1 / 1;white-space:nowrap;transition:opacity var(--morph-ms) var(--ease),filter var(--morph-ms) var(--ease)}.contents-item>.contents-go .go-en{transition-delay:var(--morph-lag)}.contents-item>.contents-go .go-th{display:block;opacity:0;filter:blur(var(--morph-blur));color:var(--on-lacquer);pointer-events:none;-webkit-user-select:none;user-select:none}.contents-item>.contents-go:hover:not(:disabled) .go-en{opacity:0;filter:blur(var(--morph-blur));transition-delay:0s}.contents-item>.contents-go:hover:not(:disabled) .go-th{opacity:1;filter:none;transition-delay:var(--morph-lag)}}}.contents-row:not(:disabled) .contents-title{text-decoration-line:underline;text-decoration-color:var(--press-line);text-decoration-thickness:1px;text-underline-offset:.18em;text-decoration-skip-ink:auto}.contents-row:not(:disabled):active{background:color-mix(in srgb,var(--lacquer) 7%,transparent)}.contents-row:not(:disabled):active .contents-title{text-decoration-color:var(--lacquer)}@media(hover:hover){.contents-row:not(:disabled):hover{background:color-mix(in srgb,var(--lacquer) 7%,transparent)}.contents-row:not(:disabled):hover .contents-title{text-decoration-color:var(--lacquer)}}.contents-row[aria-disabled=true]{cursor:default}.contents-row[aria-disabled=true] .contents-title{text-decoration:none}.contents-row[aria-disabled=true]:active{background:none}@media(hover:hover){.contents-row[aria-disabled=true]:hover{background:none}}.contents:not(.hub) .contents-row.here .contents-title,.alpha-block .contents-row.here .contents-title{text-decoration-color:var(--lacquer);text-decoration-thickness:2px}.contents-title{font-size:20px;line-height:1.2}.contents-rom{display:block;font-size:15px;color:var(--ink-3);margin-top:2px}.contents-meta{font-size:15px;color:var(--ink-3)}.card-count{display:inline-flex;align-items:center;gap:6px}.card-mark{display:block;width:16px;height:16px;flex:none}.hub-due{display:inline-flex;align-items:center;gap:6px}.hub-due .yours-due{cursor:default;flex:none}.hub-due .yours-due:after{content:none}.hub-folds{display:inline-flex;align-items:center;gap:6px}.hub-folds .fold-mark{width:18px;height:18px;flex:none}@media(max-width:520px){.contents-meta.contents-lock{grid-column:2 / -1;grid-row:2;margin-top:4px}.contents-row.here{grid-template-rows:auto auto auto}.contents-row.here .row-meter{grid-column:2 / -1}.contents-row.here .contents-meta:not(.contents-lock){grid-column:2 / -1;grid-row:3;justify-self:start}.contents:not(.hub)>li>.contents-row,.contents:not(.hub)>.track-more{grid-template-columns:1.5rem minmax(0,1fr) auto;column-gap:12px;padding:16px 12px}.contents:not(.hub)>li>.level-again{right:12px}.contents:not(.hub) .contents-row:has(+.level-again){padding-right:44px}}.contents.hub .contents-row.here{grid-template-columns:1.75rem 1fr;grid-template-rows:auto auto auto}.contents.hub .contents-row.here .row-meter{grid-column:2}.contents.hub .contents-row.here .contents-meta:not(.contents-lock){grid-column:2;grid-row:3;justify-self:start}.contents.hub .contents-meta.contents-lock{grid-column:2 / -1;grid-row:2;margin-top:4px}.contents.hub .contents-row.go .contents-title{line-height:44px}.contents-go-count{display:none}.hub-course .contents-rom{text-wrap:pretty}@media(max-width:640px){.page.journey .contents.hub .contents-row{grid-template-columns:minmax(0,1fr) auto;padding:12px 16px;row-gap:6px}.page.journey .contents.hub .contents-n{display:none}.page.journey .contents.hub .contents-row.here{grid-template-columns:minmax(0,1fr)}.page.journey .contents.hub .contents-row.here .row-meter{grid-column:1}.page.journey .contents.hub .contents-row.here .contents-meta:not(.contents-lock){grid-column:1}.page.journey .contents.hub .contents-meta.contents-lock{grid-column:1;margin-top:0}.page.journey .contents.hub .contents-row.go .contents-title{line-height:1.2}.page.journey .contents-row.start-here{border-left-width:0}.page.journey .contents-item:has(>.contents-row.start-here):before{content:"";position:absolute;inset:0 auto 0 0;z-index:1;width:3px;background:var(--lacquer)}.page.journey .contents-item>.contents-go{top:auto;right:12px;bottom:12px}.page.journey .contents-item:has(>.contents-go-count){display:grid;grid-template-columns:minmax(0,1fr) auto auto;column-gap:12px;align-items:center}.page.journey .contents-item:has(>.contents-go-count)>.contents-row{grid-column:1 / -1;grid-row:1}.page.journey .contents-go-count{display:flex;align-items:center;grid-column:2;grid-row:2;margin:0 0 12px;font-size:15px;color:var(--ink-3);pointer-events:none}.page.journey .contents-item:has(>.contents-go-count)>.contents-go{position:static;grid-column:3;grid-row:2;margin:0 12px 12px 0}.page.journey .contents.hub .contents-row.go.fresh .contents-meta{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%)}.page.journey .contents.hub .contents-row.go:not(.fresh) .contents-meta{min-height:44px;display:flex;align-items:center;padding-right:124px}.page.journey .contents.hub .contents-row.fresh .row-meter{display:none}.page.journey .contents.hub .contents-row.fresh:not(.go){grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto;align-items:end}.page.journey .contents.hub .contents-row.fresh:not(.go) .contents-meta:not(.contents-lock){grid-column:2;grid-row:1;align-self:end;min-height:0;padding:0 0 1px 12px}.page.journey .hub-resources{margin-top:20px;padding-left:16px;padding-right:16px}.page.journey .hub-day{margin-top:20px}}.intro h2{margin:0 0 16px}.intro h1{margin-bottom:4px}.intro-name{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 14px;margin:0 0 20px;color:var(--ink-2);font-size:20px;line-height:1.3}.intro-name-th{color:var(--ink);font-size:28px;line-height:1.3}.lesson{margin:0 0 40px;padding:16px;background:var(--paper-raised);border:1px solid var(--hair);border-radius:2px}.examples{margin:0 0 32px}.focus,.preview{list-style:none;padding:0;margin:0}.preview:not(.yours-list){display:grid;grid-template-columns:max-content minmax(0,1fr);width:100%}.preview:not(.yours-list):has(.preview-thai){grid-template-columns:max-content max-content minmax(0,1fr)}.preview:not(.yours-list)>.quiet-row{display:grid;grid-column:1 / -1;grid-template-columns:subgrid;align-items:baseline;column-gap:28px;row-gap:0;padding:10px 0;border-bottom:1px solid var(--hair)}.focus li{padding:16px 0;border-bottom:1px solid var(--hair);color:var(--ink)}.lesson .focus li:first-child{padding-top:0}.lesson .focus li:last-child{padding-bottom:0;border-bottom:0}.focus-lead{display:block;font-size:28px;line-height:1.25}.focus-lead.thai{font-size:var(--answer);font-family:var(--ui)}.focus-lead.prose{font-size:20px;line-height:1.4}.focus-lead.has-hear{display:flex;flex-wrap:wrap;align-items:center;gap:0 10px}.focus .note{display:block;margin-top:2px;color:var(--ink);font-size:18px;line-height:1.5;font-family:var(--ui);text-wrap:pretty}.focus .note .thai{display:inline;font-size:inherit;line-height:inherit}.lead-group{display:inline-flex;flex-wrap:wrap;align-items:center;max-width:100%}.lead-word{display:inline-flex;align-items:center;white-space:nowrap}.lead-joiner{margin-right:10px;color:var(--ink-3);font-family:var(--ui);font-size:18px;font-size-adjust:none}.system-source{margin:14px 0 0;color:var(--ink-2);font-size:15px}.preview li{padding:8px 0;border-bottom:1px solid var(--hair);color:var(--ink-2)}.quiet-row{display:grid;width:100%;gap:12px 16px;text-align:left;align-items:baseline}li.quiet-row{cursor:default}.preview-thai{min-width:2.5rem;font-size:22px;color:var(--ink)}.words{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:max-content minmax(0,1fr) auto}.words-thai{grid-template-columns:max-content max-content minmax(0,1fr) auto}.words-row{display:grid;grid-column:1 / -1;grid-template-columns:subgrid;align-items:center;column-gap:28px;min-height:52px;border-bottom:1px solid var(--hair);color:var(--ink-2)}.words-row .rom{color:var(--ink)}.warn{color:var(--lacquer)}.intro-actions{margin-top:16px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.intro-actions:empty{display:none}.tone-rows{margin:0 0 40px}.tone-rows-lede{margin:0 0 16px;max-width:34em;color:var(--ink-2);text-wrap:pretty}.tone-rows-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair)}.tone-row{border-bottom:1px solid var(--hair)}.tone-row-hear{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name line" "word line" "gloss line";align-content:center;align-items:center;column-gap:20px;box-sizing:border-box;width:100%;min-height:44px;padding:14px 0;text-align:left;text-decoration:none;color:var(--ink);font-family:var(--phonetic);font-synthesis:none;font-size:var(--prompt-rom);font-size-adjust:var(--rom-adjust);line-height:1.1}.tone-row .tone-rom,.tone-row .tone-syl{display:contents}.tone-row .tone-syl .tone-line{grid-area:line;justify-self:end;position:static;transform:none;width:auto;height:clamp(88px,26vw,140px);aspect-ratio:60 / 35;background:linear-gradient(var(--hair) 0 0) 0 11.4% / 100% 1px no-repeat,linear-gradient(var(--hair) 0 0) 0 48.6% / 100% 1px no-repeat,linear-gradient(var(--hair) 0 0) 0 88.6% / 100% 1px no-repeat}.tone-row .tone-syl .tone-line path{stroke-width:2.4}.tone-row .tone-syl .tone-line .tone-is{opacity:.85}.tone-row .tone-syl[data-lit] .tone-line .tone-is{opacity:.3}.tone-row-name{grid-area:name;margin-bottom:2px;color:var(--ink-2);font-family:var(--display);font-style:italic;font-size:16px;font-size-adjust:none;line-height:1.2}.tone-row-gloss{grid-area:gloss;display:flex;align-items:center;gap:10px;margin-top:4px;color:var(--ink-2);font-family:var(--ui);font-size:18px;font-size-adjust:none;line-height:1.2}.tone-row-gloss .hear-mark{position:static;transform:none;opacity:1;width:20px;height:18px;flex:none;color:var(--ink-2)}.tone-row-hear.playing .hear-mark,.tone-row-hear:active .hear-mark{color:var(--lacquer)}@media(hover:hover){.tone-row-hear:hover .hear-mark{color:var(--lacquer)}}@media(prefers-reduced-motion:no-preference){.tone-row .tone-syl .tone-line .tone-is{animation-delay:calc(var(--row, 0) * .14s + .14s)}}.build{margin:0 0 40px}.build-rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--hair)}.build-row{display:grid;gap:4px 20px;padding:14px 0;border-bottom:1px solid var(--hair)}.build-sum{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 12px;line-height:1.3}.build-part{color:var(--ink);font-size:var(--pick)}.build-plus,.build-is{color:var(--ink-3);font-size:22px}.build-result{display:inline-flex;align-items:baseline;gap:12px;white-space:nowrap}.build-word{color:var(--ink);font-size:var(--prompt-thai);line-height:1.2}.build-says{display:flex;flex-wrap:wrap;align-items:center;gap:0 14px;font-size:18px;color:var(--ink-2)}.build-says .rom{color:var(--ink)}.prompt{font-size:20px;font-weight:400;margin:0 0 8px}.session-held{margin:0 0 12px;max-width:34em;color:var(--ink-2);font-size:16px;line-height:1.4;text-wrap:pretty}.session-prompt{margin:0 0 8px;font-family:var(--display);font-style:italic;font-size:20px;line-height:1.3;color:var(--ink-2)}.prompt-tools{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 22px;margin:0;font-size:15px}.contents-row:disabled{opacity:1;cursor:default}.contents-row:disabled .contents-title,.contents-row:disabled .contents-n{color:var(--ink)}.contents-row:disabled .contents-meta{color:var(--ink-3)}.contents-row:disabled .contents-meta.contents-lock{color:var(--ink-2)}.lock-mark{position:relative;display:flex;align-self:center;color:var(--ink)}.lock-mark svg{display:block;width:24px;height:24px}.lock-tip{position:absolute;z-index:2;top:calc(100% + 8px);right:0;width:max-content;max-width:16rem;margin:0;padding:8px 10px;background:var(--paper);color:var(--ink);border:1px solid var(--hair);border-radius:2px;font-size:15px;line-height:1.35;text-align:start;visibility:hidden;pointer-events:none}@media(hover:hover){.lock-mark:hover .lock-tip{visibility:visible}.contents-row:has(.lock-mark:hover){z-index:1}}.contents-row[aria-disabled=true]:focus-visible{z-index:1}.contents-row[aria-disabled=true]:focus-visible .lock-tip{visibility:visible}.done-stamp{position:relative;display:inline-flex;width:16px;height:16px;flex:none}.contents-row .done-stamp{align-self:center;justify-self:end}.contents-meta:has(.done-stamp){display:inline-flex;align-items:center}.done-stamp-mark{width:16px;height:16px;background:var(--lacquer);border-radius:2px}.again-mark{display:block;width:20px;height:20px;flex:none}.level-again{position:relative;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;color:var(--ink);border-radius:2px}.level-again:after{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px}.level-again:active{color:var(--lacquer)}@media(hover:hover){.level-again:hover,.level-again:active{color:var(--lacquer)}}.contents>li:has(>.level-again),.contents-item:has(>.level-again){position:relative}.contents>li>.level-again,.contents-item>.level-again{position:absolute;z-index:1;top:50%;right:28px;transform:translateY(-50%)}.contents-row:has(+.level-again){padding-right:56px}.done-line{display:inline-flex;align-items:center;gap:8px;min-height:44px}.contents>.track-more{display:grid;grid-template-columns:1.75rem 1fr auto;column-gap:14px;align-items:center;margin:0;padding:28px;color:var(--ink-2);font-size:15px;text-align:left}.contents>.track-more:before{content:"";width:16px;height:2px;justify-self:end;background:var(--lacquer)}.track-more p{grid-column:2 / -1;margin:0;min-width:0;font-family:var(--display);font-style:italic;font-weight:400;font-size:20px;line-height:1.3;color:var(--ink);text-wrap:pretty}.session-stimulus{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:8px}.in-session .session-stimulus>.prompt-en,.in-session .session-stimulus>.prompt-rom,.in-session .session-stimulus>.prompt-thai{padding-bottom:.08em}.session-stimulus.right>.prompt-en,.session-stimulus.right>.prompt-rom,.session-stimulus.right>.prompt-thai{background:linear-gradient(var(--lacquer),var(--lacquer)) 0 100% / 100% 3px no-repeat;padding-bottom:.08em}.session-stimulus>.pair-line{min-height:26.4px;padding-top:0}.session-stimulus>.pair-line.thai{min-height:38.4px}.session-stimulus>.pair-line.wait{opacity:0}@media(prefers-reduced-motion:no-preference){.session-stimulus.right>.prompt-en,.session-stimulus.right>.prompt-rom,.session-stimulus.right>.prompt-thai{animation:ink-under .62s var(--ease) both}.session-stimulus>.pair-line.on:not(.still){animation:pair-in .42s var(--ease) both}}.session-stimulus>.fill-line>.prompt-word{line-height:1.45}.session-stimulus>.prompt-en.fill-en{font-size:22px;line-height:1.3}.session-stimulus.right>.prompt-en.fill-en{background:none;animation:none}@keyframes ink-under{0%{background-size:0% 3px}}@keyframes pair-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.slip-line{margin:4px 0 0;font-size:32px;line-height:1.2;color:var(--ink)}.session-stage:has(.slip-line) .session-feedback.miss{color:var(--ink)}.said-thai{display:inline-block;color:var(--ink-2);font-size:.62em;font-weight:400;line-height:1}.said-thai.unsaid{visibility:hidden}.pair-line .said-thai{font-size:1.14em}.pair-room{visibility:hidden}.slip-line>.said-thai{font-size:.8em}.session-stimulus>.prompt-rom:has(>.said-thai){display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.3em;row-gap:.12em}.in-session .session-stimulus>.prompt-rom:has(>.said-thai),.session-stimulus.right>.prompt-rom:has(>.said-thai){padding-bottom:0;background:none;animation:none}.session-stimulus>.prompt-rom:has(>.said-thai)>.prompt-word{padding-bottom:.08em}.session-stimulus.right>.prompt-rom:has(>.said-thai)>.prompt-word{background:linear-gradient(var(--lacquer),var(--lacquer)) 0 100% / 100% 3px no-repeat}@media(prefers-reduced-motion:no-preference){.session-stimulus.right>.prompt-rom:has(>.said-thai)>.prompt-word{animation:ink-under .62s var(--ease) both}}.meet-thai{margin:4px 0 0;font-size:calc(var(--prompt-rom) * .62);line-height:1.3}.meet-thai>.said-thai{font-size:1em;line-height:inherit}.session-stage .prompt-listen:empty{display:none}.session-stimulus>.prompt-listen+.pair-line{padding-top:.4em}.session-stage:has(.session-stimulus>.prompt-listen) .prompt-tools{gap:8px 16px;font-size:22px}.session-desk{width:100%}.session-feedback{margin:0;min-height:0;font-size:18px}.sense-line,.session-stimulus>.pair-line.holding{margin:0;color:var(--ink-2);font-family:var(--ui);font-size:18px;font-weight:400}.prompt-note{margin:4px 0 0;max-width:34em;color:var(--ink-2);font-family:var(--ui);font-size:18px;line-height:1.45;text-wrap:pretty}.session-stage .prompt-note{font-family:var(--display);font-style:italic;font-weight:400;font-size:22px;line-height:1.3}.prompt-note+.prompt-note{margin-top:0}.prompt-en{font-family:var(--display);font-size:44px;font-weight:400;line-height:1.15;margin:0}.prompt-listen{margin:0;min-height:1.15em;font-size:48px}.prompt-rom{font-size:48px;line-height:1.2;margin:0}.prompt-thai{font-size:64px;line-height:1.2;margin:0}.glyph-picks,.tone-picks{display:grid;gap:8px;margin:0;padding:12px 16px;background:var(--paper-raised);border:1px solid var(--hair);border-radius:2px}.picks-label{margin:0;color:var(--ink-2);font-size:15px;line-height:1.3}.picks-row{display:flex;flex-wrap:wrap;gap:4px 20px;align-items:end;margin:0}.tone-picks{container-type:inline-size}@container (max-width: 351px){.picks-row:has(>:nth-child(5)){column-gap:8px;justify-content:space-between}}@container (max-width: 303px){.picks-row:has(>:nth-child(5)){display:grid;grid-template-columns:repeat(3,max-content)}}.glyph-pick{font-size:var(--pick);line-height:1;color:var(--ink);padding:4px 8px}.reveal{font-size:40px;margin:0}.tone-word .pop-k,.glyph-pick .pop-k{font-family:var(--ui);margin-right:6px}.tone-word{color:var(--ink-2)}.pick-word{text-decoration-line:underline;text-decoration-color:var(--press-line);text-decoration-thickness:1px;text-underline-offset:6px}.glyph-pick .pick-word{text-underline-offset:.12em}.tone-word:active:not(:disabled),.glyph-pick:active:not(:disabled){color:var(--ink)}.tone-word:active:not(:disabled) .pick-word,.glyph-pick:active:not(:disabled) .pick-word{text-decoration-color:var(--lacquer)}@media(hover:hover){.tone-word:hover:not(:disabled),.glyph-pick:hover:not(:disabled){color:var(--ink)}.tone-word:hover:not(:disabled) .pick-word,.glyph-pick:hover:not(:disabled) .pick-word{text-decoration-color:var(--lacquer)}}.app .btn{height:44px}.app .text-btn,.boot .text-btn,.app .hear-key,.app .wordmark{min-width:44px;min-height:44px}.app a.text-btn{display:inline-flex;align-items:center}.app .tone-word,.app .glyph-pick{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.tone-word:disabled,.glyph-pick:disabled{opacity:1;cursor:default}.tone-word:disabled:not(.is-right):not(.is-picked),.glyph-pick:disabled:not(.is-right):not(.is-picked){color:var(--ink-3)}.tone-word:disabled .pick-word,.glyph-pick:disabled .pick-word{text-decoration-color:transparent}.tone-word.is-right,.glyph-pick.is-right{color:var(--ink)}.tone-word.is-right .pick-word,.glyph-pick.is-right .pick-word{text-decoration-color:var(--lacquer);text-decoration-thickness:2px}.tone-word.is-picked:not(.is-right),.glyph-pick.is-picked:not(.is-right){color:var(--ink-3)}.tone-word.is-picked:not(.is-right) .pick-word,.glyph-pick.is-picked:not(.is-right) .pick-word{text-decoration-line:line-through;text-decoration-color:currentColor;text-decoration-thickness:1px}.contents-row:focus-visible,.tone-word:focus-visible,.glyph-pick:focus-visible,.alpha-cell:focus-visible{outline:2px solid var(--lacquer);outline-offset:3px}.heat-tools{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin:0 0 12px}.heat-place{margin:0;font-family:var(--display);font-size:18px;color:var(--ink);font-variant-numeric:tabular-nums}.heat-jump{margin-left:auto}.heat-streak{margin:-4px 0 12px;font-size:15px;line-height:1.4;color:var(--ink-3)}.heat-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,22rem);column-gap:36px;align-items:start;width:100%;margin:8px 0 0}@media(min-width:721px){.heat-wrap:not(:has(.heat-year)){grid-template-columns:minmax(0,22rem) minmax(0,1fr);column-gap:48px}}.heat-cal{min-width:0}.heat{display:grid;gap:6px;width:100%}.heat-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));justify-items:center;align-items:center;height:14px}.heat-week.head{height:0}.heat-pad{width:14px;height:14px}.heat-cal:has(>.heat){container-type:inline-size}.heat-cal>.heat{--cell: min(40px, calc((100cqw - 36px) / 7))}.heat-cal>.heat .heat-week{grid-template-columns:repeat(7,var(--cell));column-gap:6px;justify-content:start;height:var(--cell)}.heat-cal>.heat .heat-week.head{height:auto}.heat-cal>.heat .heat-c,.heat-cal>.heat .heat-pad{width:calc(var(--cell) - 8px);height:calc(var(--cell) - 8px)}.heat-cal>.heat .heat-c:after{top:-4px;right:-4px;bottom:-4px;left:-4px}.heat-cal>.heat .heat-wd{font-size:15px;line-height:1.2;color:var(--ink-3)}.heat-cal>.heat .heat-wd:before{content:attr(data-initial);content:attr(data-initial) / ""}.heat-year{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:28px 36px;width:100%}.heat-months{margin:0 0 8px;color:var(--ink-3);font-size:15px}.heat-day{min-height:136px;min-width:0}.heat-when{margin:0;font-size:22px;line-height:1.2}.heat-sum{margin:4px 0 0;color:var(--ink-2);font-size:16px}.heat-rows{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.heat-rows>li{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;row-gap:12px;align-items:start;margin:0;padding:16px;background:var(--paper-raised);border:1px solid var(--hair);border-radius:2px}.heat-id{grid-column:1;min-width:0;display:grid;gap:8px;align-content:start}.heat-kicker{margin:0;font-size:15px;line-height:1.3;color:var(--lacquer)}.heat-lv{margin:0;font-size:15px;line-height:1.3;color:var(--ink-3)}.heat-level{margin:0;font-size:20px;line-height:1.3;color:var(--ink)}.heat-count{display:flex;align-items:baseline;gap:8px;margin:0}.heat-rows>li.named .heat-count{grid-column:2;grid-row:1}.heat-n{font-family:var(--display);font-size:28px;font-weight:400;line-height:1;color:var(--lacquer);font-variant-numeric:tabular-nums}.heat-noun{font-size:16px;color:var(--ink-2)}.heat-notes{grid-column:1 / -1;display:grid;gap:4px}.heat-right{margin:0;font-size:15px;color:var(--ink-2)}.heat-remark{margin:0;font-size:15px;line-height:1.4;color:var(--lacquer)}.heat-stand{grid-column:1 / -1;margin:4px 0 0;padding-top:12px;border-top:1px solid var(--hair)}.heat-stand .meter{width:100%;height:2px}.heat-share{margin:8px 0 0;font-size:15px;line-height:1.4;color:var(--ink-2);text-wrap:pretty}.heat-pct{color:var(--ink);font-weight:500}@media(max-width:1100px){.heat-year{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:720px){.heat-wrap{grid-template-columns:minmax(0,1fr)}.heat-day{grid-column:1;grid-row:2;margin-top:16px;align-self:start}.heat-year{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){.heat-year{grid-template-columns:repeat(2,minmax(0,1fr))}}.heat-months span{min-width:0;overflow:visible;white-space:nowrap}.heat-months span:has(+span:not(:empty)){visibility:hidden}.heat-c{display:block;width:14px;height:14px;min-width:0;min-height:0;padding:0;border:1px solid transparent;border-radius:50%;background:var(--hair);cursor:pointer}.heat-c.c1{background:color-mix(in srgb,var(--lacquer) 35%,transparent);border-color:transparent}.heat-c.c2{background:color-mix(in srgb,var(--lacquer) 65%,transparent);border-color:transparent}.heat-c.c3{background:var(--lacquer);border-color:transparent}.heat-c.today{border:2px solid var(--lacquer)}.heat-c.on{border:2px solid var(--ink)}.heat-c.today.on{border-color:var(--lacquer)}.heat-c{position:relative}.heat-c:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px}.heat-c.future{cursor:default;background:transparent;border-color:var(--hair)}.heat-c.future:after{content:none}.heat-c:focus-visible{outline:2px solid var(--lacquer);outline-offset:3px}.heat-cal>.heat .heat-c.run+.heat-c.run:before{content:"";position:absolute;right:100%;top:50%;width:14px;height:2px;margin-top:-1px;background:var(--lacquer);pointer-events:none}.level-switch{display:flex;gap:20px;margin:0 0 12px}.mini-index{list-style:none;padding:0;margin:0 0 40px}.mini-index li{display:grid;grid-template-columns:2rem 1fr auto;gap:12px;padding:6px 0;border-bottom:1px solid var(--hair);font-size:16px}.mini-index li>span:first-child{text-align:right;font-family:var(--display);font-size:20px;font-variant-numeric:tabular-nums}.mini-index li{align-items:center}.mini-count{display:grid;justify-items:end;gap:6px;color:var(--ink-2)}.mini-count .meter{width:72px;height:2px}.mini-soon{color:var(--ink-3)}.field,.check{display:grid;gap:8px;margin:0 0 20px;color:var(--ink-2)}.field>span:first-child{font-size:var(--field-label)}.rate-name{display:flex;justify-content:space-between;gap:16px}.page.account .field.rate{width:min(480px,100%)}.field.rate input[type=range]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;height:44px;margin:0;background:transparent;cursor:pointer}.field.rate input[type=range]:disabled{cursor:default;opacity:.4}.field.rate input[type=range]::-webkit-slider-runnable-track{height:2px;background:linear-gradient(90deg,var(--lacquer) calc(var(--at, .5) * 100%),var(--hair) calc(var(--at, .5) * 100%))}.field.rate input[type=range]::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:12px;height:12px;margin-top:-5px;border:0;border-radius:1px;background:var(--lacquer)}.field.rate input[type=range]::-moz-range-track{height:2px;background:var(--hair);border:0}.field.rate input[type=range]::-moz-range-progress{height:2px;background:var(--lacquer)}.field.rate input[type=range]::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:1px;background:var(--lacquer)}.check{grid-template-columns:auto 1fr;align-items:center;gap:12px;min-height:44px}.check-note{display:block;margin-top:4px;font-size:15px;line-height:1.4;color:var(--ink-3)}.field input[type=text],.field input[type=email],.field input[type=password],.field .roman-field.en{color:var(--ink);font-size:var(--field-text);line-height:1.45;margin-top:calc(-.17em - 3px);padding-top:3px;padding-bottom:10px;border-bottom:2px solid var(--ink)}.name-line{display:flex;align-items:baseline;gap:12px}.name-kun{flex:none;font-family:var(--display);font-size:var(--field-text);line-height:1.2;color:var(--ink-2)}.name-line .roman-field.en{flex:1;min-width:0}.field input[type=text]:focus,.field input[type=email]:focus,.field input[type=password]:focus,.field .roman-field.en:focus{border-bottom-color:var(--lacquer)}.avatar-face{display:block;flex:none;border-radius:50%;overflow:hidden;background:var(--hair)}.avatar-face img{display:block;width:100%;height:100%;object-fit:cover}.profile{display:flex;align-items:flex-start;gap:20px;margin:0 0 12px}.profile-face{width:96px;height:96px}.profile-side{flex:1;min-width:0}.profile-side .field{margin-bottom:8px}@media(max-width:520px){.profile-face{width:72px;height:72px}}.field.rate input[type=range]:focus-visible{outline:2px solid var(--lacquer);outline-offset:3px}.account-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:8px 0 32px}.account-block{margin-top:56px;padding-top:28px;border-top:1px solid var(--ink)}.account-block h2{margin:0 0 16px}.app:has(.page.account) .shell{max-width:none}.page.account{max-width:none}.account-nav{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 24px;width:100%;margin:0 0 8px;background:none;border:0}.account-exit{display:flex;align-items:baseline;gap:4px 24px;margin-left:auto}.account-leave,.account-leave:active{color:var(--lacquer);text-decoration-color:var(--lacquer)}@media(hover:hover){.account-leave:hover{color:var(--lacquer);text-decoration-color:var(--lacquer)}}.account-pane{min-width:0}.account-pane>.account-block{margin-top:28px}.settings{display:grid;gap:48px 64px;margin-top:28px}.settings>.account-block{margin-top:0}.settings>.account-block>:last-child{margin-bottom:0}@media(min-width:900px){.settings{grid-template-columns:repeat(2,minmax(0,1fr))}}.account-facts{display:grid;gap:24px;margin:0}.account-facts>div{display:grid;gap:8px}.account-facts dt{font-size:var(--field-label);color:var(--ink-2)}.account-facts dd{margin:0;color:var(--ink);overflow-wrap:anywhere}.account-facts dd>.account-actions:first-child{margin-top:0}.plan-card{padding:16px;background:var(--wash-peach);border:1px solid var(--lacquer);border-radius:2px}.plan-kicker{margin:0 0 8px;font-family:var(--ui);font-weight:400;font-size:15px;line-height:1.4;color:var(--lacquer)}.plan-name{margin:0;font-family:var(--display);font-weight:400;font-size:28px;line-height:1.2;color:var(--lacquer)}.plan-line{margin:8px 0 0;max-width:36em;font-size:18px;line-height:1.4;color:var(--ink);text-wrap:pretty}.plan-aside{margin:12px 0 0;max-width:36em;font-size:15px;line-height:1.4;color:var(--ink-2);text-wrap:pretty}.plan-card .account-actions{margin:16px 0 0}.plan-refund{margin-top:28px}.plan-refund h2{margin-top:0}.plan-refund p{margin:0 0 12px;max-width:40em;font-size:18px;line-height:1.45;color:var(--ink);text-wrap:pretty}.plan-refund .btn{margin-top:4px;text-decoration:none}.mini-count .card-count{color:inherit}.mini-count .card-mark{width:22px;height:22px}.confirm{margin:auto;padding:0;border:2px solid var(--ink);border-radius:2px;background:var(--paper);color:var(--ink);box-shadow:none;width:min(26rem,calc(100vw - 48px));max-width:none}.confirm::backdrop{background:color-mix(in srgb,var(--ink) 36%,transparent)}.confirm-sheet{padding:32px 32px 28px}.confirm h2{margin:0 0 12px;font-size:28px}.confirm p{margin:0 0 28px;color:var(--ink-2);max-width:36ch}.confirm-acts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}html:has(dialog.avatar-picker[open]){overflow:hidden}.confirm.avatar-picker{width:min(52rem,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);overflow:hidden}.confirm.avatar-picker[open]{display:flex;flex-direction:column}.avatar-sheet{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;padding:28px 32px 24px;container-type:inline-size}.avatar-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.confirm .avatar-head h2{margin:0;min-width:0}.avatar-head .text-btn{flex:none;white-space:nowrap}.confirm p.avatar-note{margin:8px 0 0}.avatar-grid{--cols: 7;--gap: 12px;--face: calc((100cqi - (var(--cols) - 1) * var(--gap)) / var(--cols));display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));grid-auto-rows:var(--face);gap:var(--gap);flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:6px;margin:20px -6px 0}.avatar-grid .avatar-pick{height:auto;aspect-ratio:1}@container (max-width: 407px){.avatar-grid{--cols: 6}}@container (max-width: 347px){.avatar-grid{--cols: 5}}@container (max-width: 287px){.avatar-grid{--cols: 4}}.avatar-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px;padding-top:16px;border-top:1px solid var(--hair)}.avatar-preview{display:flex;align-items:center;gap:12px;min-width:0;min-height:48px}.avatar-preview .avatar-face{width:48px;height:48px}.avatar-preview-name{font-size:18px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-pick{width:100%;height:100%;border:3px solid transparent;background:none}.avatar-pick.on{border-color:var(--lacquer)}.avatar-pick:focus-visible{outline:2px solid var(--lacquer);outline-offset:3px}.avatar-pick:active:not(.on){border-color:var(--press-line)}@media(hover:hover){.avatar-pick:hover:not(.on),.avatar-pick:active:not(.on){border-color:var(--press-line)}}@media(max-width:520px){.confirm.avatar-picker{width:100vw;height:100dvh;max-height:none;margin:0;border:0;border-radius:0}.avatar-sheet{padding:calc(20px + env(safe-area-inset-top,0px)) 16px calc(12px + env(safe-area-inset-bottom,0px))}.confirm .avatar-head h2{font-size:22px}}@media(prefers-reduced-motion:no-preference){.confirm[open] .confirm-sheet,.confirm[open] .avatar-sheet,.confirm[open] .postcard-sheet{animation:confirm-in .48s var(--ease)}.postcard-big img{animation:confirm-fade .32s var(--ease)}.confirm[open]::backdrop{animation:confirm-fade .48s var(--ease)}}html:has(dialog.postcard-picker[open]){overflow:hidden}.confirm.postcard-picker{width:min(60rem,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);overflow:hidden}.confirm.postcard-picker[open]{display:flex;flex-direction:column}.postcard-sheet{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;padding:12px 32px 24px;overflow-y:auto;overscroll-behavior:contain}.postcard-head{display:flex;justify-content:flex-end}.postcard-big{width:min(100%,max(240px,calc((100dvh - 300px) * 16 / 9)));margin:4px auto 20px;padding:8px 8px 4px;background:var(--paper-raised);border:1px solid var(--hair)}.postcard-big img{display:block;width:100%;height:auto;aspect-ratio:16 / 9}.postcard-big-place{margin:0;padding:12px 8px 10px;text-align:center;font-family:var(--hand);font-weight:400;font-size:28px;line-height:1.3;color:var(--ink-2);text-wrap:balance}.postcard-foot{display:flex;justify-content:center}@media(max-width:520px){.confirm.postcard-picker{width:100vw;height:100dvh;max-height:none;margin:0;border:0;border-radius:0}.postcard-sheet{padding:calc(8px + env(safe-area-inset-top,0px)) 16px calc(16px + env(safe-area-inset-bottom,0px))}.postcard-big{width:100%;margin:auto 0}}@media(min-width:521px)and (max-height:520px){.confirm.postcard-picker{width:100vw;height:100dvh;max-height:none;margin:0;border:0;border-radius:0}.postcard-sheet{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 1fr;column-gap:24px;padding:calc(8px + env(safe-area-inset-top,0px)) calc(24px + env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) calc(24px + env(safe-area-inset-left,0px))}.postcard-head{grid-column:2;grid-row:1;align-self:start}.postcard-big{grid-column:1;grid-row:1 / 3;width:min(100%,calc((100dvh - 150px) * 16 / 9));margin:auto}.postcard-foot{grid-column:2;grid-row:2;align-self:end}}@keyframes confirm-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes confirm-fade{0%{opacity:0}to{opacity:1}}.account-block .account-actions,.account-block .mini-index{margin-bottom:0}.app:has(.page.alphabet) .shell{max-width:none}.page.alphabet{max-width:none}.page.alphabet>.lede{margin-bottom:20px}.page.alphabet>.lede{display:flex;flex-direction:column;gap:8px}.alpha-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:4px 24px;margin:0 0 8px}.alpha-tabs .text-btn:last-child{margin-left:8px}@media(max-width:520px){.alpha-tabs .text-btn:last-child{margin-left:0}}.alpha-part+.alpha-part{margin-top:36px}.page.alphabet h2.quiet{font-family:var(--display);font-weight:400;font-size:16px;color:var(--ink-2);margin:0 0 12px}.alpha-block{margin:0 0 36px}.alpha-block h2.quiet{font-size:16px;color:var(--ink-2);margin:0 0 10px}.alpha-note{display:block;margin:12px 0 24px;font-size:16px;max-width:48em;color:var(--ink-2);font-family:var(--ui)}.alpha-block .contents-row{margin-bottom:0}.thai-inline{font-family:var(--thai),var(--ui)}.alpha-grid{list-style:none;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}@media(max-width:639px){.alpha-grid{gap:12px}}@media(min-width:1280px){.alpha-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.alpha-grid:empty{display:none}.alpha-cell{position:relative;flex:1;width:100%;min-width:0;padding:20px 24px;display:grid;align-content:start;gap:12px;text-align:left;background:var(--paper);color:var(--ink-3)}.alpha-cell:not(:disabled):active .alpha-char{color:var(--lacquer)}@media(hover:hover){.alpha-cell:not(:disabled):hover .alpha-char{color:var(--lacquer)}}.alpha-cell.seen{color:var(--ink)}.alpha-cell.seen .alpha-char{color:var(--lacquer)}.alpha-cell.retired .alpha-char{text-decoration:line-through;text-decoration-thickness:1px}.alpha-char{font-size:40px;line-height:1}@media(max-width:639px){.alpha-cell{padding:16px}}.alpha-cell .alpha-char{overflow-wrap:anywhere}.tone-mark-row{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.tone-mark-row li{display:flex;flex-direction:column;gap:4px}.tone-mark-row .thai{font-size:32px;line-height:1.2}.alpha-sub{font-size:15px;line-height:1.35;text-wrap:pretty}.alpha-item{position:relative;display:flex;min-width:0}.alpha-level{position:absolute;top:0;right:0;min-width:44px;min-height:44px;padding:8px 10px;font-size:15px;color:var(--ink-3);text-decoration-line:underline;text-decoration-color:transparent;text-decoration-thickness:1px;text-underline-offset:.25em}.alpha-level:not(:disabled){color:var(--ink-2);text-decoration-color:var(--press-line)}.alpha-level:not(:disabled):active{color:var(--ink);text-decoration-color:var(--lacquer)}@media(hover:hover){.alpha-level:not(:disabled):hover{color:var(--ink);text-decoration-color:var(--lacquer)}}.alpha-level:disabled{opacity:1}@media(max-width:760px){.session-stage .session-no{grid-row:1;transform:none;font-size:20px}.session-stage .session-prompt{padding-left:2.1rem}.preview-stage .session-no{grid-row:1;transform:none;font-size:28px;line-height:1;align-self:start;margin:0 0 8px}.preview-stage .preview-word{grid-row:2;padding-left:0}.preview-stage .preview-desk{grid-row:3}}@media(max-width:760px){html[data-keyboard=open] .app.in-session .trail,html[data-keyboard=open] .preview-stage .session-no,html[data-keyboard=open] .preview-stage .prompt-thai,html[data-keyboard=open] .preview-stage .prompt-rom{display:none}html[data-keyboard=open] .preview-stage .preview-word{gap:0}html[data-keyboard=open] .preview-stage .prompt-en{font-size:22px;margin:0}html[data-keyboard=open] .preview-word .prompt-tools{margin-top:8px}html[data-keyboard=open] .preview-desk{margin-top:12px;padding-top:12px;gap:10px}html[data-keyboard=open] .preview-nav,html[data-keyboard=open] .preview-learned{display:none}html[data-keyboard=open] .preview-wait:not(:focus-within){display:none}html[data-keyboard=open] .app.in-session .page.session{padding-top:12px}html[data-keyboard=open] .session-stage{--prompt-rom: 36px;--prompt-thai: 40px;--prompt-en: 30px;--desk-gap: 14px}html[data-keyboard=open] .session-stage .prompt-tools{margin-top:8px}html[data-keyboard=open] .app.in-session{padding-bottom:calc(12px + var(--keyboard-inset, 0px) + env(safe-area-inset-bottom,0px))}}@media(max-width:760px){.trail{display:flex;align-items:center;gap:12px}.wordmark{flex:none;gap:0}.wordmark-name{display:none}.trail-mid{flex:1 100 auto;display:flex;align-items:center;gap:12px;margin-inline:0;font-size:18px}.trail-mid:has(>.trail-tracks){flex-shrink:0}.trail-mid-copy{text-align:left}.trail-mid-copy[data-headed],.trail-meter{display:none}.trail-tracks{gap:12px}.trail-end{flex:0 1 auto;min-width:0;margin-left:auto;gap:12px}.trail-end>*{flex:none}.trail-end>.trail-account{flex:0 1 auto;min-width:0}.net-word,.net-sync-more,.trail-net .net-note{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.trail-face+.trail-account-name{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.app.home>.shell>.trail{margin-bottom:12px}.app.home .course-status{margin-top:0;margin-bottom:16px}.app.in-session .trail-mid{justify-content:flex-end;margin-inline:0 12px}.app.in-session .trail-mid-copy{display:none}.app.in-session .trail-meter{display:block;position:relative;inset:auto;flex:none;width:40px}}@media(max-width:520px){.app{--pad-left: max(16px, env(safe-area-inset-left, 0px));--pad-right: max(16px, env(safe-area-inset-right, 0px));padding:calc(28px + env(safe-area-inset-top,0px)) var(--pad-right) calc(64px + env(safe-area-inset-bottom,0px)) var(--pad-left)}.app.in-session{--session-gutter: max(16px, env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px));padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}.preview-stage .prompt-en{margin-top:10px}.preview-desk{margin-top:20px;padding-top:16px;gap:12px}.app.in-session .page.session{padding-top:20px}.slip-line{font-size:28px}.quiet-row,.yours-row{grid-template-columns:minmax(0,1fr)}.tone-mark-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:360px){.app.in-session .trail-meter{display:none}}.app:has(.page.her-day) .shell{max-width:none}.page.her-day{max-width:none}.her-day>.page-title,.her-day>.day-count{max-width:28em}.her-day .day-count{margin:-8px 0 24px;color:var(--ink-2);font-size:15px}.day-strip{list-style:none;margin:8px 0 56px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.day-cell{min-width:0}.day-panel{position:relative;margin:0;aspect-ratio:16 / 9;border:2px solid var(--ink);overflow:hidden;container-type:inline-size}.day-panel img{display:block;width:100%;height:100%;object-fit:cover}.day-caption{margin:10px 0 0;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:34px;row-gap:2px}.day-caption .day-hear{color:var(--ink);font-size:18px;text-align:start}.day-caption .day-en,.day-later{color:var(--ink-2);font-size:15px}.day-strip:has(+.day-more){margin-bottom:28px}.day-more{margin:0 0 56px;max-width:48em;color:var(--ink-2);text-wrap:pretty}@media(min-width:1100px){.her-day .day-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:699px){.day-strip{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:no-preference){.day-cell[data-fresh] .balloon{opacity:0}.day-cell[data-fresh][data-in-view] .balloon{animation:day-letter-in .9s var(--ease) calc(var(--k, 0) * .16s + .25s) both}}@keyframes day-letter-in{0%{opacity:0}to{opacity:1}}.boot{min-height:100dvh;display:grid;place-items:center;align-content:center;gap:20px;padding:24px}.boot-panel{margin:0;width:min(100%,720px,(100dvh - 160px) * 16 / 9);aspect-ratio:16 / 9;border:2px solid var(--ink);overflow:hidden}.boot-panel img{display:block;width:100%;height:100%;object-fit:cover}.boot-say{margin:0;color:var(--ink-2);font-size:16px;text-align:center}.boot-panel[data-scene=pier]{background:url(data:image/webp;base64,UklGRsQAAABXRUJQVlA4ILgAAABwBgCdASowABsAPu10slQppqSjJWgBMB2JYgCuHAtwUryTEC7kqVMPrItVxsw9WKzeoy9nXOZBsce2PCAA/tMpNFUL83K0CjNyzFJ0ANi4zsjNW7f/XrS0UC6stKXfFg70l6g9Jzr55ewXxT86CLsFBGluyFS6tZLbEizAp7spr/9xPamTn47jmIdevuFF9U3WeOFQxe7PGm9VAS0TFhTuZJ+0z4p7KAj4d/xs1a1SYJXhh7VPSgAA) center / cover}.boot-words{display:grid;gap:8px;justify-items:center;align-content:start;height:calc(clamp(30px,6vw,44px)*1.08 + 31.2px)}.boot:has(>.boot-retry) .boot-words{height:auto}.boot-title{margin:0;font-family:var(--display);font-weight:400;font-size:clamp(30px,6vw,44px);line-height:1.08;letter-spacing:-.01em;color:var(--ink);text-align:center;text-wrap:balance}.boot-morph{display:grid;justify-items:center;font-family:var(--display);font-size:clamp(28px,calc((min(100vw - 48px,420px)*.88 - 4px)*.13),6rem);line-height:1.08;letter-spacing:-.01em;color:var(--ink)}.boot-morph>span{grid-area:1 / 1}.boot-th{letter-spacing:0}.boot-rom,.boot-th{opacity:0}@media(prefers-reduced-motion:no-preference){.boot-morph{--morph-ms: .8s;--morph-blur: 6px;--morph-lag: .16s}.boot-morph>span{transition:opacity var(--morph-ms) var(--ease),filter var(--morph-ms) var(--ease)}.boot-morph>.boot-rom,.boot-morph>.boot-th{filter:blur(var(--morph-blur))}.boot-morph[data-stage=rom]>.boot-en,.boot-morph[data-stage=th]>.boot-en,.boot-morph[data-stage=en]>.boot-rom,.boot-morph[data-stage=th]>.boot-rom,.boot-morph[data-stage=en]>.boot-th,.boot-morph[data-stage=rom]>.boot-th{opacity:0;filter:blur(var(--morph-blur));transition-delay:0s}.boot-morph[data-stage=en]>.boot-en,.boot-morph[data-stage=rom]>.boot-rom,.boot-morph[data-stage=th]>.boot-th{opacity:1;filter:none;transition-delay:var(--morph-lag)}}html[data-turning=out] .app .page{view-transition-name:page-out}html[data-turning=in] .app .page{view-transition-name:page-in}::view-transition-old(root),::view-transition-new(root){animation:none}@media(prefers-reduced-motion:no-preference){::view-transition-old(page-out){animation:page-leave .15s cubic-bezier(.4,0,1,1) both}::view-transition-new(page-in){animation:page-arrive .26s var(--ease) 40ms both}html[data-turn=back]::view-transition-old(page-out){animation-name:page-leave-back}html[data-turn=back]::view-transition-new(page-in){animation-name:page-arrive-back}}@keyframes page-leave{to{opacity:0;transform:translate(-12px)}}@keyframes page-arrive{0%{opacity:0;transform:translate(16px)}}@keyframes page-leave-back{to{opacity:0;transform:translate(12px)}}@keyframes page-arrive-back{0%{opacity:0;transform:translate(-16px)}}.locked-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:28px}.locked-actions .btn{height:44px;padding:0 24px;text-decoration:none}.lapsed{display:flex;flex-direction:column;gap:16px}.lapsed h1{min-width:0;max-width:100%;text-wrap:wrap}.lapsed .account-now{gap:12px 28px}.lapsed .account-now p{flex:0 0 auto}@media(max-width:560px){.lapsed h1{font-size:28px}.lapsed .account-now{flex-direction:column;align-items:flex-start;gap:16px}}.lapsed h1,.lapsed p{margin:0}.lapsed-art{display:block;width:100%;max-width:100%;min-width:0;height:auto;border:2px solid var(--ink)}.lapsed-take{display:flex;flex-direction:column;gap:12px;margin-top:8px;padding-top:20px;border-top:1px solid var(--hair)}.lapsed-take h2{margin:0;font-family:var(--display);font-weight:400;font-size:22px}.lapsed-take-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}@media(max-width:560px){.lapsed-take-row{flex-direction:column;align-items:flex-start}}.word-sheet{display:none}@media print{body.printing-words #root{display:none}body.printing-words .word-sheet{display:block;color:var(--ink);background:none;font-family:var(--display)}body.printing-words .word-sheet h1{font-size:22pt;font-weight:400;margin:0 0 8pt}body.printing-words .word-sheet h2{font-size:16pt;font-weight:400;margin:16pt 0 4pt;break-after:avoid}body.printing-words .word-sheet h3{font-size:13pt;font-weight:400;margin:10pt 0 4pt;break-after:avoid}body.printing-words .word-sheet table{width:100%;border-collapse:collapse;margin:0 0 8pt}body.printing-words .word-sheet th,body.printing-words .word-sheet td{text-align:left;padding:3pt 8pt 3pt 0;vertical-align:top}body.printing-words .word-sheet tr{break-inside:avoid}body.printing-words .word-sheet td[lang=th]{font-family:var(--thai);font-size:16pt}body.printing-words .word-sheet .rom{font-family:var(--phonetic)}body.printing-words .word-sheet-brand,body.printing-words .word-sheet-site{display:flex;justify-content:space-between;font-size:11pt}@page{margin:16mm}}.page.dictionary{max-width:640px}.dict-find .field{margin-bottom:8px}.dict-line{display:flex;align-items:baseline;gap:16px;min-width:0}.dict-line>.roman-field{flex:1 1 auto;width:auto;min-width:0}.dict-suggest{list-style:none;margin:0 0 8px;padding:0;border-top:1px solid var(--hair)}.dict-suggest li{border-bottom:1px solid var(--hair)}.dict-option{width:100%;min-height:44px;display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:10px 0;text-align:left;font-size:16px;color:var(--ink);background:none;border:0;border-radius:0}.dict-option-en{min-width:0;color:var(--ink-2);text-decoration:underline;text-decoration-color:var(--press-line);text-decoration-thickness:1px;text-underline-offset:.28em;text-wrap:pretty}.dict-option-rom{flex:none;font-size:15px;color:var(--ink-3)}.dict-option:active{background:color-mix(in srgb,var(--lacquer) 7%,transparent)}.dict-option:active .dict-option-en,.dict-option[aria-selected=true] .dict-option-en{color:var(--ink);text-decoration-color:var(--lacquer);text-decoration-thickness:2px}.dict-option[aria-selected=true]{background:color-mix(in srgb,var(--lacquer) 7%,transparent)}@media(hover:hover){.dict-option:hover{background:color-mix(in srgb,var(--lacquer) 7%,transparent)}.dict-option:hover .dict-option-en{color:var(--ink);text-decoration-color:var(--lacquer)}}.dict-actions{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 24px;margin:4px 0 0}.dict-miss{margin:28px 0 0;font-size:16px;line-height:1.45;color:var(--ink)}.dict-results{list-style:none;margin:28px 0 0;padding:0}.dict-word{margin:0;padding:0;background:none;min-height:0}.dictionary .dict-word.session-stage{width:auto;max-width:100%}.dictionary .dict-word.session-stage>.session-stimulus{grid-row:1}.dictionary .dict-word{position:relative}.dictionary .dict-word .prompt-thai{padding-inline-end:40px}.dictionary .dict-word>.fold-key{position:absolute;top:0;inset-inline-end:-10px}.dictionary .dict-word.session-stage>.prompt-tools{grid-row:2}.day-word .hear-key.hear-icon{width:56px;height:56px;min-width:56px;min-height:56px}.day-word .hear-key.hear-icon .hear-mark{width:40px;height:40px}.dictionary .hear-key.hear-icon{width:64px;height:64px;min-width:64px;min-height:64px}.dictionary .hear-key.hear-icon .hear-mark{width:48px;height:48px}.dictionary .prompt-tools{align-items:center}.dict-word+.dict-word{margin-top:28px}.dict-others{margin:10px 0 0;font-size:18px;line-height:1.4;color:var(--ink-2);text-wrap:pretty}.dict-level{margin:6px 0 0;font-size:15px;line-height:1.4;color:var(--ink-3)}.dictionary .dict-word.session-stage>.dict-used{grid-row:3}.dict-used,.dict-also{margin-top:24px;padding-top:16px;border-top:1px solid var(--hair)}.dict-also{margin-top:32px}.dict-head{margin:0 0 10px;font-size:15px;line-height:1.4;color:var(--ink-3)}.dict-rows{list-style:none;margin:0;padding:0;display:grid;gap:12px}.dict-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 14px;min-width:0;font-size:16px;line-height:1.45}.dict-row-thai{font-size:20px;color:var(--ink)}.dict-row-rom,.dict-row-en{color:var(--ink-2)}.dict-row .dict-level{margin:0}.dict-used>.text-btn{margin-top:8px}
