:root{--ink:#212121;--ink-soft:#565a55;--paper:#f5f3ed;--paper-deep:#ebe7dc;--white:#fffef9;--teal:#006e6a;--teal-dark:#074c49;--teal-deep:#073f3d;--teal-light:#dbeae4;--yellow:#f2cf4a;--yellow-soft:#f7e8a2;--line:#21212121;--mono:"DM Mono", monospace;--display:"Manrope", "Noto Sans Thai", sans-serif;--sans:"Manrope", "Noto Sans Thai", sans-serif;--thai:"Noto Sans Thai", "Manrope", sans-serif;--ease:cubic-bezier(.22, .8, .25, 1);--app-width:480px;--radius-card:4px 4px 24px 4px;--radius-button:3px 3px 14px 3px;--radius-field:3px 3px 12px 3px;--radius-sheet:22px 22px 0 0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;background:#103e3c;margin:0}button,input,textarea{font:inherit}button{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--yellow);outline-offset:3px}button{background:0 0;border:0;padding:0}img{max-width:100%;display:block}svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.svg-defs{width:0;height:0;position:absolute;overflow:hidden}.icon{flex:none;width:22px;height:22px}::selection{background:var(--teal);color:var(--white)}.desktop-canvas{display:none}.app-shell{width:100%;max-width:var(--app-width);background:var(--paper);min-height:100dvh;margin:0 auto;position:relative;overflow:clip;box-shadow:0 0 80px #0003}.app-main{min-height:100dvh}.screen{min-height:100dvh;padding:0 22px 118px;display:none}.screen.active{animation:screenIn .45s var(--ease) both;display:block}@keyframes screenIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.app-header{justify-content:space-between;align-items:center;height:78px;display:flex}.brand{font-family:var(--display);letter-spacing:-1.2px;align-items:baseline;gap:8px;font-size:34px;line-height:1;display:flex}.brand span{font-family:var(--thai);letter-spacing:0;color:var(--teal);font-size:10px;font-weight:500}.header-actions{align-items:center;gap:13px;display:flex}.streak-chip{align-items:center;gap:3px;font-size:13px;display:flex}.streak-chip .icon{width:18px;height:18px;color:var(--teal);fill:var(--yellow);stroke:var(--teal)}.avatar{background:var(--teal-dark);width:34px;height:34px;color:var(--white);font:500 10px var(--mono);letter-spacing:.04em;border-radius:50%}.icon-button{border:1px solid var(--line);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .15s,transform .15s;display:inline-flex}.icon-button:active{transform:scale(.94)}.header-label{padding-left:2px}.eyebrow{font:500 10px/1.5 var(--mono);letter-spacing:.095em;color:var(--teal)}.eyebrow span{margin:0 5px}h1,h2,h3,p{margin-top:0}h1{font:400 52px/.94 var(--display);letter-spacing:-1.7px;margin-bottom:15px}h1 em,h2 em{color:var(--teal);font-weight:400}.learn-intro{padding:23px 1px 26px}.learn-intro .eyebrow{margin-bottom:18px}.learn-intro p,.review-intro p,.translate-intro p{color:var(--ink-soft);margin:0;font-size:13px}.scene-card{border-radius:var(--radius-card);height:330px;color:var(--white);background:var(--teal-dark);isolation:isolate;position:relative;overflow:hidden}.scene-image{object-fit:cover;object-position:50% 48%;z-index:-2;will-change:transform;width:100%;height:120%;position:absolute;top:-10%;left:0}.scene-shade{z-index:-1;background:linear-gradient(#031d1c59,#031d1c05 37%,#031d1ce6 100%),linear-gradient(90deg,#00464159,#0000);position:absolute;inset:0}.scene-topline{font:400 9px var(--mono);letter-spacing:.08em;justify-content:space-between;padding:19px 18px;display:flex}.scene-content{position:absolute;bottom:27px;left:20px;right:76px}.scene-thai{font:400 16px var(--thai);color:var(--yellow);margin-bottom:4px}.scene-content h2{font:400 36px/.98 var(--display);letter-spacing:-.7px;margin-bottom:9px}.scene-content p{color:#ffffffb8;margin:0;font-size:11px}.scene-play{background:var(--yellow);width:48px;height:48px;color:var(--ink);transition:transform .2s var(--ease);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:28px;right:18px}.scene-play:hover{transform:rotate(-8deg)scale(1.06)}.scene-play:active{transform:scale(.94)}.scene-progress{background:#fff3;height:3px;position:absolute;bottom:0;left:0;right:0}.scene-progress span{background:var(--yellow);height:100%;display:block}.review-nudge{text-align:left;border-bottom:1px solid var(--line);grid-template-columns:36px 1fr 20px;align-items:center;gap:12px;width:100%;padding:21px 2px;display:grid}.nudge-icon{border:1px solid var(--line);width:34px;height:34px;color:var(--teal);border-radius:50%;place-items:center;display:grid}.nudge-icon .icon{width:17px;height:17px}.review-nudge b{margin-bottom:4px;font-size:12px;display:block}.review-nudge small{color:var(--ink-soft);font-size:10px;display:block}.nudge-arrow{width:17px;color:var(--teal);transition:transform .2s}.review-nudge:hover .nudge-arrow{transform:translate(4px)}.path-section{padding-top:31px}.section-heading{justify-content:space-between;align-items:flex-end;gap:15px;margin-bottom:20px;display:flex}.section-heading h2{font:400 32px/1 var(--display);letter-spacing:-.5px;margin:6px 0 0}.text-button{border-bottom:1px solid var(--ink);margin-bottom:2px;padding-bottom:3px;font-size:10px;font-weight:700}.segmented{border-bottom:1px solid var(--line);gap:22px;margin-bottom:5px;display:flex}.segmented button{color:#777a74;padding:0 0 12px;font-size:11px;transition:color .2s;position:relative}.segmented button.active{color:var(--ink);font-weight:700}.segmented button.active:after{content:"";background:var(--teal);height:2px;animation:tabLine .25s var(--ease);position:absolute;bottom:-1px;left:0;right:0}@keyframes tabLine{0%{transform:scaleX(.2)}to{transform:scaleX(1)}}.course-row{text-align:left;border-bottom:1px solid var(--line);width:100%;animation:listIn .35s var(--ease) both;grid-template-columns:56px 1fr auto;align-items:center;gap:15px;padding:17px 0;display:grid}.course-row:nth-child(2){animation-delay:50ms}.course-row:nth-child(3){animation-delay:.1s}@keyframes listIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.course-thumb{object-fit:cover;filter:saturate(.78);border-radius:3px 3px 12px;width:56px;height:64px}.course-thumb.graphic{background:var(--teal-light);color:var(--teal-dark);font:400 22px var(--thai);place-items:center;display:grid}.course-row h3{margin:0 0 5px;font-size:12px}.course-row p{color:var(--ink-soft);margin:0;font-size:9px;line-height:1.5}.course-meta{text-align:right}.course-meta .icon{width:17px;height:17px;color:var(--teal)}.course-meta small{font:400 8px var(--mono);color:var(--ink-soft);margin-top:7px;display:block}.daily-phrase{background:var(--teal-dark);color:var(--white);margin:34px -22px 0;padding:27px 25px 30px;position:relative;overflow:hidden}.daily-phrase:after{content:"ภาษา";font:500 90px var(--thai);color:#ffffff07;pointer-events:none;position:absolute;top:31px;right:-18px;transform:rotate(-12deg)}.phrase-index{font:400 9px var(--mono);letter-spacing:.1em;color:#ffffff8c}.audio-orb{width:44px;height:44px;color:var(--yellow);border:1px solid #ffffff40;border-radius:50%;place-items:center;display:grid;position:absolute;top:76px;right:24px}.audio-orb.playing{animation:1s infinite audioPulse}@keyframes audioPulse{50%{box-shadow:0 0 0 8px #f2cf4a17}}.daily-thai{font:500 46px/1.4 var(--thai);color:var(--yellow);margin-top:23px}.daily-roman{font:400 10px var(--mono);letter-spacing:.04em;color:#ffffff80;margin-bottom:23px}.daily-phrase h2{font:400 32px/1.03 var(--display);margin-bottom:14px}.daily-phrase p{color:#ffffffab;max-width:335px;margin-bottom:21px;font-size:11px;line-height:1.75}.save-phrase{color:var(--white);border-bottom:1px solid #ffffff59;align-items:center;gap:8px;padding-bottom:6px;font-size:10px;display:inline-flex}.save-phrase.saved .icon,.save-translation.saved .icon{fill:currentColor}.premium-strip{text-align:left;background:var(--yellow);border-radius:3px 3px 15px;grid-template-columns:36px 1fr 20px;align-items:center;gap:12px;width:100%;margin:24px 0 6px;padding:19px 16px;display:grid}.premium-symbol .icon{width:25px;height:25px}.premium-strip small{font:500 8px var(--mono);letter-spacing:.1em;margin-bottom:5px;display:block}.premium-strip b{font-size:10px;display:block}.premium-strip>.icon{width:17px}.review-intro{grid-template-columns:1fr 94px;align-items:center;gap:17px;padding:10px 0 20px;display:grid}.review-heading h1{letter-spacing:-1.7px;margin-bottom:10px;font-size:38px;line-height:1.04}.review-heading p{max-width:195px;font-size:10px;line-height:1.55}.memory-overview{border-bottom:1px solid var(--line);padding:0 0 19px}.memory-ring{--progress:76;background:conic-gradient(var(--teal) calc(var(--progress) * 1%), var(--paper-deep) 0);border-radius:50%;place-items:center;width:94px;height:94px;display:grid;position:relative;transform:rotate(-35deg)}.memory-ring:before{content:"";background:var(--paper);border-radius:50%;position:absolute;inset:6px}.memory-ring span{text-align:center;position:relative;transform:rotate(35deg)}.memory-ring b{font:600 25px var(--display);letter-spacing:-1px;display:block}.memory-ring small{font:400 6px var(--mono);letter-spacing:.06em;color:var(--ink-soft);display:block}.memory-stats{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.memory-stats div{text-align:center;border-right:1px solid var(--line);display:block}.memory-stats div:last-child{border-right:0}.memory-stats b{min-width:0;font:600 20px var(--display);letter-spacing:-.5px;display:block}.memory-stats span{color:var(--ink-soft);margin-top:1px;font-size:8px;display:block}.review-deck-section{text-align:center;border-bottom:1px solid var(--line);padding:33px 0 28px}.deck-visual{perspective:800px;width:190px;height:206px;margin:0 auto 20px;position:relative}.deck-card{border-radius:5px 5px 20px;width:170px;height:196px;position:absolute;top:0;left:10px}.deck-back-two{background:#d9d4c8;transform:rotate(8deg)translate(9px,-2px)}.deck-back-one{background:var(--yellow);transform:rotate(-6deg)translate(-8px,2px)}.deck-front{background:var(--teal-dark);color:var(--white);transition:transform .35s var(--ease);flex-direction:column;justify-content:center;align-items:center;display:flex;box-shadow:0 16px 35px #074c492b}.deck-visual:hover .deck-front{transform:translateY(-5px)rotate(1deg)}.deck-front>span{font:400 7px var(--mono);letter-spacing:.1em;color:#ffffff8c;position:absolute;top:18px}.deck-front b{font:500 54px var(--thai);color:var(--yellow)}.review-deck-section h2{font:400 28px var(--display);margin-bottom:6px}.review-deck-section p{color:var(--ink-soft);margin-bottom:20px;font-size:10px}.primary-button{background:var(--teal-dark);min-height:52px;color:var(--white);border-radius:var(--radius-button);justify-content:center;align-items:center;gap:13px;padding:0 22px;font-size:11px;font-weight:700;transition:transform .15s,background .15s;display:inline-flex}.primary-button:hover{background:var(--teal)}.primary-button:active{transform:scale(.98)}.primary-button .icon{width:18px}.primary-button.full{width:100%}.primary-button:disabled{opacity:.45;cursor:default}.vocabulary-section{padding-top:30px}.count-label{font:400 8px var(--mono);color:var(--ink-soft);letter-spacing:.05em;margin-bottom:5px}.search-field{border-bottom:1px solid var(--ink);align-items:center;gap:10px;padding:12px 0;display:flex}.search-field .icon{width:17px;height:17px;color:var(--teal)}.search-field input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:11px}.vocab-filters{scrollbar-width:none;gap:7px;padding:15px 0 8px;display:flex;overflow-x:auto}.vocab-filters button{white-space:nowrap;border:1px solid var(--line);border-radius:30px;padding:7px 11px;font-size:8px}.vocab-filters button.active{background:var(--ink);color:var(--white);border-color:var(--ink)}.vocab-item{border-bottom:1px solid var(--line);animation:listIn .25s var(--ease);grid-template-columns:1fr auto;align-items:center;gap:10px;padding:16px 0;display:grid}.vocab-item h3{font:500 22px var(--thai);margin:0 0 2px}.vocab-item p{margin:0;font-size:10px}.vocab-item small{font:400 8px var(--mono);color:var(--ink-soft);margin-top:4px;display:block}.vocab-actions{gap:4px;display:flex}.vocab-actions button{width:32px;height:32px;color:var(--teal);place-items:center;display:grid}.empty-state{text-align:center;color:var(--ink-soft);padding:40px 15px;font-size:11px}.translate-screen{background:var(--teal-deep);color:var(--white);margin:0;padding-left:22px;padding-right:22px}.translate-header .header-label{color:var(--yellow)}.prototype-badge{font:400 7px var(--mono);letter-spacing:.08em;color:#ffffffa6;border:1px solid #ffffff40;border-radius:20px;padding:5px 8px}.translate-intro{padding:22px 0 27px}.translate-intro h1 em{color:var(--yellow)}.translator{background:var(--paper);color:var(--ink);border-radius:var(--radius-card);overflow:hidden}.language-switch{border-bottom:1px solid var(--line);grid-template-columns:1fr 40px 1fr;align-items:center;padding:10px 15px 0;display:grid}.language-switch>button:not(.swap-button){padding:7px 0 12px;font-size:10px;font-weight:700}.swap-button{width:30px;height:30px;color:var(--teal);place-items:center;display:grid}.swap-button .icon{width:16px}.translation-input-wrap{padding:15px 18px 0}.translation-input-wrap textarea{resize:none;width:100%;min-height:100px;color:var(--ink);font:400 23px/1.35 var(--display);background:0 0;border:0;outline:0}.input-tools{justify-content:space-between;align-items:center;padding-bottom:10px;display:flex}.input-tools>span{font:400 7px var(--mono);color:#85877f}.mini-icon{min-width:25px;min-height:25px;font:500 7px var(--mono);letter-spacing:.06em;color:var(--teal);justify-content:center;align-items:center;display:inline-flex}.translate-button{background:var(--yellow);border-radius:3px 3px 12px;align-items:center;gap:9px;width:calc(100% - 28px);min-height:45px;margin:0 14px 14px;padding:0 14px;font-size:10px;font-weight:700;display:flex}.translate-button .icon{width:17px}.translate-button .arrow{margin-left:auto}.translate-button.loading .icon:first-child{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.translation-result{background:var(--white);border-top:1px solid var(--line);padding:19px 18px 17px}.translation-result.refreshing{animation:resultRefresh .45s var(--ease)}@keyframes resultRefresh{0%{opacity:.25;transform:translateY(6px)}to{opacity:1;transform:none}}.result-topline{font:500 7px var(--mono);letter-spacing:.08em;color:var(--teal);justify-content:space-between;align-items:center;display:flex}.result-thai{font:500 25px/1.65 var(--thai);margin:9px 0 3px}.result-actions{align-items:center;gap:8px;margin-top:16px;display:flex}.round-audio{color:var(--teal);border:1px solid var(--line);border-radius:20px;align-items:center;gap:5px;padding:6px 8px;font-size:8px;display:inline-flex}.save-translation{color:var(--teal);align-items:center;gap:5px;margin-left:auto;font-size:8px;display:inline-flex}.phrase-context{border-bottom:1px solid #ffffff24;grid-template-columns:25px 1fr;gap:13px;padding:28px 0;display:grid}.context-number{font:400 9px var(--mono);color:var(--yellow);padding-top:2px}.phrase-context .eyebrow,.try-phrases .eyebrow{color:var(--yellow)}.phrase-context h2{font:400 28px var(--display);margin:7px 0 10px}.phrase-context p{color:#ffffffa6;margin-bottom:15px;font-size:10px;line-height:1.8}.phrase-context p span[lang=th]{font-family:var(--thai);color:var(--white)}.inline-roman{font-family:var(--mono);font-size:9px}.text-link{color:var(--white);text-align:left;align-items:center;gap:8px;font-size:9px;line-height:1.5;display:inline-flex}.text-link .icon{width:16px;color:var(--yellow)}.try-phrases{padding:25px 0 19px}.phrase-chips{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.phrase-chips button{color:#fffc;border:1px solid #fff3;border-radius:30px;padding:8px 11px;font-size:8px;transition:background .15s}.phrase-chips button:hover{background:#ffffff14}.translator-note{color:#ffffff61;margin:0;font-size:8px;line-height:1.7}.profile-hero{text-align:center;padding:22px 0 27px}.profile-avatar{background:var(--teal-dark);width:76px;height:76px;color:var(--white);font:400 23px var(--display);border-radius:50%;place-items:center;margin:0 auto 17px;display:grid;position:relative}.profile-avatar:before{content:"";border:1px solid var(--teal);border-left-color:#0000;border-radius:50%;position:absolute;inset:-5px;transform:rotate(-30deg)}.profile-avatar span{background:var(--yellow);border:3px solid var(--paper);border-radius:50%;width:15px;height:15px;position:absolute;bottom:2px;right:1px}.profile-hero h1{margin-bottom:7px;font-size:38px}.profile-hero p{color:var(--ink-soft);font-size:10px}.level-line{font:400 7px var(--mono);letter-spacing:.06em;color:var(--ink-soft);justify-content:space-between;margin-top:25px;display:flex}.level-progress{background:var(--paper-deep);height:3px;margin-top:9px}.level-progress span{background:var(--teal);width:58%;height:100%;display:block}.profile-stat-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);padding:20px 0;display:grid}.profile-stat-grid div{text-align:center;border-right:1px solid var(--line)}.profile-stat-grid div:last-child{border:0}.profile-stat-grid b{font:400 30px var(--display);display:block}.profile-stat-grid span{color:var(--ink-soft);font-size:8px;display:block}.weekly-section{border-bottom:1px solid var(--line);padding:29px 0 25px}.week-chart{justify-content:space-between;align-items:flex-end;gap:13px;height:145px;padding-top:8px;display:flex}.week-chart div{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:9px;height:100%;display:flex}.week-chart div>span{transform-origin:bottom;width:100%;max-width:25px;animation:chartGrow .7s var(--ease) both;background:#c9d8d1;border-radius:2px 2px 0 0}@keyframes chartGrow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.week-chart .today>span{background:var(--yellow)}.week-chart small{font:400 8px var(--mono);color:var(--ink-soft)}.goal-section{padding:27px 0 20px}.goal-section>button{text-align:left;grid-template-columns:35px 1fr 18px;align-items:center;gap:12px;width:100%;padding:16px 0;display:grid}.goal-icon{filter:grayscale();font-size:22px}.goal-section b{margin-bottom:4px;font-size:11px;display:block}.goal-section small{color:var(--ink-soft);font-size:9px;display:block}.goal-section .icon{width:16px}.profile-plus{text-align:left;background:var(--yellow);border-radius:4px 4px 22px;width:100%;padding:24px}.profile-plus .eyebrow{color:var(--ink)}.profile-plus h2{font:400 32px/1 var(--display);margin:17px 0 11px}.profile-plus h2 em{color:var(--ink)}.profile-plus p{max-width:310px;margin-bottom:18px;font-size:10px;line-height:1.65}.plus-link{align-items:center;gap:8px;font-size:10px;font-weight:700;display:inline-flex}.plus-link .icon{width:16px}.settings-list{margin-top:24px}.settings-list button{text-align:left;border-bottom:1px solid var(--line);grid-template-columns:1fr auto 16px;align-items:center;gap:9px;width:100%;padding:15px 0;font-size:10px;display:grid}.settings-list small{color:var(--ink-soft);font-size:9px}.settings-list .icon{width:14px}.local-data-note{text-align:center;font:400 7px var(--mono);color:var(--ink-soft);margin:25px 0 0}.bottom-nav{z-index:30;width:100%;max-width:var(--app-width);height:calc(76px + env(safe-area-inset-bottom));padding:10px 24px env(safe-area-inset-bottom);-webkit-backdrop-filter:blur(18px);background:#f5f3edeb;border-top:1px solid #21212117;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{color:#777b75;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:8px;transition:color .15s;display:flex}.bottom-nav button.active{color:var(--teal-dark);font-weight:700}.bottom-nav .icon{width:21px;height:21px;transition:transform .25s var(--ease)}.bottom-nav button.active .icon{transform:translateY(-2px)}.nav-icon-wrap{line-height:0;position:relative}.nav-icon-wrap i{background:var(--yellow);border:1px solid var(--teal-dark);border-radius:50%;width:5px;height:5px;position:absolute;top:-1px;right:-3px}.flow-overlay{z-index:60;width:100%;max-width:var(--app-width);background:var(--paper);visibility:hidden;transition:transform .48s var(--ease), visibility .48s;flex-direction:column;margin:0 auto;display:flex;position:fixed;inset:0;transform:translateY(102%)}.flow-overlay.open{visibility:visible;transform:translateY(0)}.flow-header{flex:0 0 74px;grid-template-columns:44px minmax(0,1fr) max-content;align-items:center;gap:17px;padding:10px 20px 0;display:grid}.flow-progress{background:var(--paper-deep);height:3px;overflow:hidden}.flow-progress span{background:var(--teal);width:20%;height:100%;transition:width .4s var(--ease);display:block}.flow-count{font:400 8px var(--mono);color:var(--ink-soft);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.lesson-body,.review-session-body{flex:1;padding:27px 24px 25px;overflow-y:auto}.flow-footer{padding:14px 24px calc(22px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper);flex:none}.lesson-kicker{font:500 9px var(--mono);letter-spacing:.1em;color:var(--teal);margin-bottom:17px}.lesson-body h1{margin-bottom:13px;font-size:41px;line-height:1.02}.lesson-body>p{color:var(--ink-soft);font-size:11px;line-height:1.65}.dialogue-photo{border-radius:3px 3px 18px;height:178px;margin:23px 0 19px;overflow:hidden}.dialogue-photo img{object-fit:cover;width:100%;height:100%}.dialogue-line{background:var(--white);border-left:2px solid var(--yellow);margin-bottom:10px;padding:17px 45px 17px 17px;position:relative}.dialogue-line .thai{font:500 22px/1.6 var(--thai)}.dialogue-line .roman{font:400 8px var(--mono);color:var(--ink-soft);margin:3px 0 7px}.dialogue-line button{color:var(--teal);position:absolute;top:16px;right:13px}.dialogue-line button .icon{width:19px}.answer-options{gap:10px;margin-top:25px;display:grid}.answer-option{text-align:left;border:1px solid var(--line);background:#ffffff73;border-radius:3px 3px 13px;align-items:center;gap:12px;width:100%;min-height:57px;padding:13px 15px;font-size:12px;transition:border .15s,background .15s,transform .15s;display:flex}.answer-option .option-letter{border:1px solid var(--line);width:25px;height:25px;font:400 8px var(--mono);border-radius:50%;place-items:center;display:grid}.answer-option[lang=th]{font:500 18px var(--thai)}.answer-option:hover{border-color:var(--teal);transform:translate(2px)}.answer-option.selected{border-color:var(--teal);background:var(--teal-light)}.answer-option.correct{border-color:var(--teal);background:var(--teal-light);color:var(--teal-dark)}.answer-option.incorrect{background:#f1dfd6;border-color:#a95c4b}.answer-option:disabled{cursor:default}.listening-prompt{background:var(--teal-dark);width:140px;height:140px;color:var(--yellow);box-shadow:0 0 0 12px var(--teal-light), 0 0 0 13px #006e6a1f;border-radius:50%;place-items:center;margin:35px auto;display:grid}.listening-prompt .icon{width:39px;height:39px}.listening-prompt.playing{animation:.8s infinite alternate listenPulse}@keyframes listenPulse{to{box-shadow:0 0 0 19px #dbeae499,0 0 0 20px #006e6a14}}.word-builder{margin-top:24px}.build-answer{border-bottom:1px solid var(--ink);flex-wrap:wrap;align-content:flex-start;gap:7px;min-height:75px;padding:13px;display:flex}.word-bank{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.word-chip{border:1px solid var(--line);background:var(--white);font:500 16px var(--thai);border-radius:3px;padding:9px 12px}.word-chip.used{opacity:.25}.feedback-panel{align-items:center;gap:12px;display:flex}.feedback-panel .feedback-icon{background:var(--teal);width:36px;height:36px;color:var(--white);border-radius:50%;place-items:center;display:grid}.feedback-panel .feedback-icon .icon{width:20px}.feedback-panel b{font:400 23px var(--display);display:block}.feedback-panel small{color:var(--ink-soft);margin-top:3px;font-size:9px;display:block}.feedback-with-button{grid-template-columns:1fr 145px;align-items:center;gap:15px;display:grid}.completion{text-align:center;padding-top:30px}.completion-mark{background:var(--yellow);border-radius:50%;place-items:center;width:132px;height:132px;margin:0 auto 28px;display:grid;position:relative}.completion-mark:before,.completion-mark:after{content:"";border:1px solid var(--teal);opacity:.35;border-radius:50%;position:absolute;inset:-12px}.completion-mark:after{opacity:.13;inset:-24px}.completion-mark .icon{stroke-width:1.2px;width:54px;height:54px}.completion .eyebrow{margin-bottom:15px}.completion-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:30px;display:grid}.completion-stats div{border-right:1px solid var(--line);padding:17px 5px}.completion-stats div:last-child{border:0}.completion-stats b{font:400 24px var(--display);display:block}.completion-stats small{color:var(--ink-soft);font-size:8px}.review-session-body{flex-direction:column;display:flex}.review-session-body .session-instruction{text-align:center;font:400 9px var(--mono);letter-spacing:.06em;color:var(--ink-soft)}.flashcard-wrap{perspective:1000px;flex:1;place-items:center;padding:25px 0;display:grid}.flashcard{width:100%;max-width:335px;height:375px;transform-style:preserve-3d;transition:transform .65s var(--ease);cursor:pointer;position:relative}.flashcard.flipped{transform:rotateY(180deg)}.flash-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;text-align:center;border-radius:5px 5px 26px;flex-direction:column;justify-content:center;align-items:center;padding:28px;display:flex;position:absolute;inset:0}.flash-front{background:var(--teal-dark);color:var(--white);box-shadow:0 20px 45px #074c492e}.flash-front .flash-label,.flash-back .flash-label{font:400 8px var(--mono);letter-spacing:.1em;opacity:.55;position:absolute;top:22px}.flash-front .flash-thai{font:500 52px/1.5 var(--thai);color:var(--yellow)}.flash-front .flash-hint{color:#ffffff80;font-size:9px;position:absolute;bottom:23px}.flash-back{background:var(--white);border:1px solid var(--line);transform:rotateY(180deg)}.flash-back .english-answer{font:400 37px/1.1 var(--display);margin-bottom:15px}.flash-back .example{font:400 17px/1.7 var(--thai);color:var(--teal)}.flash-back .example-en{color:var(--ink-soft);margin-top:9px;font-size:10px}.flash-back .flash-audio{border:1px solid var(--line);width:40px;height:40px;color:var(--teal);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:20px}.rating-buttons{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.rating-buttons button{border:1px solid var(--line);border-radius:3px 3px 12px;min-height:55px;font-size:10px;font-weight:700}.rating-buttons button small{font:400 7px var(--mono);color:var(--ink-soft);margin-top:3px;display:block}.rating-buttons button:hover{background:var(--teal-light);border-color:var(--teal)}.sheet-backdrop{z-index:79;backdrop-filter:blur(4px);opacity:0;visibility:hidden;background:#041e1d99;transition:opacity .3s,visibility .3s;position:fixed;inset:0}.sheet-backdrop.open{opacity:1;visibility:visible}.paywall-sheet{z-index:80;width:100%;max-width:var(--app-width);background:var(--paper);border-radius:var(--radius-sheet);visibility:hidden;max-height:94dvh;transition:transform .45s var(--ease), visibility .45s;padding:13px 24px 22px;position:fixed;bottom:0;left:50%;overflow-y:auto;transform:translate(-50%,102%)}.paywall-sheet.open{visibility:visible;transform:translate(-50%)}.sheet-handle{background:#cbc8bf;border-radius:4px;width:37px;height:4px;margin:0 auto 5px}.sheet-close{position:absolute;top:20px;right:17px}.paywall-brand{font:500 9px var(--mono);letter-spacing:.1em;color:var(--teal);align-items:center;gap:7px;margin-top:21px;display:flex}.paywall-brand .icon{width:18px}.paywall-sheet h2{font:400 42px/.97 var(--display);letter-spacing:-.8px;margin:20px 0 12px}.paywall-sub{color:var(--ink-soft);max-width:355px;font-size:10px;line-height:1.65}.plus-benefits{border-top:1px solid var(--line);gap:14px;padding:18px 0;display:grid}.plus-benefits>div{gap:12px;display:flex}.plus-benefits>div>.icon{width:17px;height:17px;color:var(--teal);margin-top:1px}.plus-benefits b{margin-bottom:3px;font-size:10px;display:block}.plus-benefits small{color:var(--ink-soft);font-size:8px;display:block}.plan-options{gap:8px;margin-bottom:14px;display:grid}.plan-option{border:1px solid var(--line);text-align:left;border-radius:3px 3px 13px;grid-template-columns:18px 1fr auto;align-items:center;gap:10px;width:100%;min-height:65px;padding:12px;display:grid;position:relative}.plan-option.selected{border:1.5px solid var(--teal);background:var(--teal-light)}.plan-radio{border:1px solid var(--ink-soft);border-radius:50%;width:15px;height:15px}.selected .plan-radio{border:4px solid var(--teal)}.plan-option b{margin-bottom:4px;font-size:10px;display:block}.plan-option span small{color:var(--ink-soft);font-size:8px;display:block}.plan-option strong{font:400 18px var(--display);text-align:right}.plan-option strong small{font:400 6px var(--mono);color:var(--ink-soft);display:block}.plan-option i{background:var(--yellow);font:500 6px var(--mono);letter-spacing:.05em;padding:3px 6px;font-style:normal;position:absolute;top:-7px;right:10px}.paywall-legal{text-align:center;color:var(--ink-soft);margin:10px 0 0;font-size:7px;line-height:1.7}.toast{z-index:100;background:var(--ink);max-width:calc(100% - 40px);color:var(--white);opacity:0;visibility:hidden;border-radius:3px 3px 12px;align-items:center;gap:8px;padding:12px 16px;font-size:9px;transition:opacity .25s,transform .25s,visibility .25s;display:flex;position:fixed;bottom:95px;left:50%;transform:translate(-50%,20px);box-shadow:0 10px 30px #0003}.toast.show{opacity:1;visibility:visible;transform:translate(-50%)}.toast .icon{width:15px;height:15px;color:var(--yellow)}.confetti{z-index:90;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti-piece{width:7px;height:12px;animation:2.6s cubic-bezier(.2,.7,.3,1) forwards confettiFall;position:absolute;top:-20px}@keyframes confettiFall{to{transform:translate(var(--drift), 105vh) rotate(var(--spin));opacity:.1}}.reveal{animation:revealUp .6s var(--ease) both}.reveal:nth-of-type(2){animation-delay:40ms}.reveal:nth-of-type(3){animation-delay:80ms}@keyframes revealUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.brand{letter-spacing:-1.8px;font-size:31px;font-weight:800}h1{letter-spacing:-2.1px;font-size:44px;font-weight:600;line-height:1.08}h1 em,h2 em{font-style:normal;font-weight:600}.scene-content h2{letter-spacing:-1.1px;font-size:30px;font-weight:600;line-height:1.1}.section-heading h2{letter-spacing:-.9px;font-size:27px;font-weight:600}.daily-phrase h2{font-size:27px;font-weight:600;line-height:1.18}.review-deck-section h2,.phrase-context h2{font-size:24px;font-weight:600}.profile-hero h1{font-size:32px}.profile-plus h2{font-size:27px;font-weight:600;line-height:1.12}.lesson-body h1{font-size:36px}.completion h1{font-size:37px}.paywall-sheet h2{letter-spacing:-1.4px;font-size:36px;font-weight:600;line-height:1.08}.translation-input-wrap textarea{font-size:20px;font-weight:500;line-height:1.5}.flash-back .english-answer{font-size:31px;font-weight:600;line-height:1.2}.memory-ring b,.memory-stats b,.profile-avatar,.profile-stat-grid b,.feedback-panel b,.completion-stats b,.plan-option strong{font-weight:600}.desktop-wordmark{font-weight:800}.eyebrow{font-size:11px}.brand,.streak-chip{min-height:44px}.streak-chip{padding:0 4px;font-size:14px}.avatar{width:42px;height:42px;font-size:11px}.header-actions{gap:9px}.icon-button{width:44px;height:44px}.learn-intro p,.review-intro p,.translate-intro p{font-size:14px;line-height:1.55}.scene-topline{font-size:10px}.scene-content p{font-size:13px;line-height:1.5}.scene-play{width:52px;height:52px}.review-nudge{grid-template-columns:40px 1fr 20px;min-height:82px}.nudge-icon{width:40px;height:40px}.review-nudge small{font-size:12px;line-height:1.5}.text-button{align-items:center;min-height:40px;font-size:12px;display:inline-flex}.segmented button{min-height:44px;font-size:13px}.course-row{min-height:92px}.course-row h3{font-size:14px;line-height:1.35}.course-row p{font-size:12px;line-height:1.5}.course-meta small,.phrase-index{font-size:10px}.audio-orb{width:48px;height:48px}.daily-roman{font-size:11px}.daily-phrase p{font-size:13px;line-height:1.75}.save-phrase{min-height:44px;font-size:12px}.premium-strip{min-height:80px}.premium-strip small{font-size:10px}.premium-strip b{font-size:13px;line-height:1.4}.memory-ring small{font-size:7px}.memory-stats b{font-size:22px}.memory-stats span{font-size:10px}.deck-front>span{font-size:9px}.deck-front small{font-size:11px}.primary-button{min-height:54px;font-size:14px}.count-label{font-size:10px}.search-field{min-height:48px}.vocab-item p{font-size:12px}.vocab-item small{font-size:10px;line-height:1.5}.empty-state{font-size:13px;line-height:1.7}.prototype-badge{font-size:9px}.language-switch>button:not(.swap-button){min-height:44px;font-size:13px}.swap-button{width:40px;height:40px}.input-tools>span{font-size:10px}.mini-icon{min-width:40px;min-height:40px;font-size:10px}.translate-button{min-height:52px;font-size:13px}.result-topline{font-size:10px}.result-roman{font-size:11px;line-height:1.7}.round-audio{min-height:40px;padding:8px 11px;font-size:11px}.save-translation{min-height:44px;padding:0 6px;font-size:12px}.phrase-context p{font-size:13px;line-height:1.75}.inline-roman{font-size:11px}.text-link{min-height:44px;font-size:12px}.phrase-chips button{min-height:42px;padding:10px 14px;font-size:12px}.profile-stat-grid span{font-size:11px}.week-chart small{font-size:10px}.goal-section small{font-size:11px}.plus-link{min-height:44px;font-size:12px}.settings-list button{min-height:54px;font-size:13px}.settings-list small{font-size:11px}.local-data-note{font-size:10px}.bottom-nav{height:calc(84px + env(safe-area-inset-bottom));padding-top:11px}.bottom-nav button{gap:6px;min-height:58px;font-size:11px}.flow-count{font-size:10px}.lesson-kicker{font-size:11px}.lesson-body>p{font-size:14px;line-height:1.65}.dialogue-line .roman{font-size:11px;line-height:1.5}.dialogue-line .english{font-size:13px}.dialogue-line button{place-items:center;width:40px;height:40px;display:grid;top:10px;right:7px}.answer-option{min-height:62px;font-size:14px}.answer-option .option-letter{font-size:10px}.word-chip{min-height:44px}.feedback-panel small{font-size:11px;line-height:1.4}.completion-stats small,.review-session-body .session-instruction{font-size:11px}.flash-front .flash-label,.flash-back .flash-label{font-size:10px}.flash-front .flash-roman,.flash-front .flash-hint{font-size:12px}.flash-back .example-en{font-size:13px;line-height:1.5}.flash-back .flash-audio{width:44px;height:44px}.rating-buttons button{min-height:62px;font-size:12px}.paywall-brand{font-size:11px}.paywall-sub,.plus-benefits b{font-size:13px}.plan-option{min-height:74px}.plan-option span small{font-size:11px}.plan-option i{font-size:8px}.paywall-legal{font-size:10px}.toast{font-size:12px;line-height:1.45}@media (width>=900px){body{background:#103e3c}.app-shell{border-radius:12px;min-height:calc(100dvh - 64px);margin-top:32px;margin-bottom:32px}.app-main,.screen{min-height:calc(100dvh - 64px)}.bottom-nav{border-radius:0 0 12px 12px;bottom:32px}.desktop-canvas{max-width:1280px;color:var(--white);pointer-events:none;margin:0 auto;display:block;position:fixed;inset:0}.desktop-wordmark{font:400 58px var(--display);letter-spacing:-2px;position:absolute;top:9%;left:5%}.desktop-wordmark span{font:400 13px var(--thai);color:var(--yellow);letter-spacing:0;margin-top:5px;display:block}.desktop-caption{font:400 9px/2 var(--mono);letter-spacing:.12em;color:#ffffff8c;position:absolute;bottom:10%;left:5%}.desktop-phrase{writing-mode:vertical-rl;font:400 74px var(--thai);color:#ffffff0f;position:absolute;top:18%;right:4%}}@media (width>=900px) and (width<=1050px){.desktop-canvas{display:none}}@media (width<=370px){.screen{padding-left:17px;padding-right:17px}.daily-phrase{margin-left:-17px;margin-right:-17px}h1{font-size:40px}.scene-card{height:305px}.review-intro{grid-template-columns:1fr 86px;gap:12px}.review-heading h1{font-size:35px}.memory-ring{width:86px;height:86px}.feedback-with-button{grid-template-columns:1fr 125px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--ink-soft:#4b514c}.eyebrow,.scene-topline,.phrase-index,.course-meta small,.premium-strip small,.count-label,.flow-count,.lesson-kicker,.brand span,.avatar{font-size:12px}.bottom-nav{height:calc(86px + env(safe-area-inset-bottom))}.bottom-nav button{color:#626861;font-size:12px}.bottom-nav .icon{width:23px;height:23px}.scene-content p{color:#ffffffd6}.scene-play .icon{width:24px;height:24px}.review-nudge b{font-size:15px}.review-nudge small{font-size:13px}.nudge-icon .icon,.course-meta .icon{width:20px;height:20px}.course-row h3{font-size:15px}.course-row p{font-size:13px}.daily-roman{font:500 13px/1.6 var(--sans);color:#ffffffbd}.daily-phrase p{color:#ffffffc7;font-size:14px}.phrase-index{color:#ffffffb8}.save-phrase{font-size:13px}.save-phrase .icon{width:18px;height:18px}.premium-strip b{font-size:14px}.memory-ring small{letter-spacing:.02em;font-size:10px}.memory-stats span{font-size:12px;line-height:1.45}.deck-front>span{color:#ffffffb8;font-size:11px}.deck-front small{font:500 13px var(--sans);color:#fffc}.review-deck-section p{font-size:13px}.search-field input{font-size:16px}.search-field .icon{width:20px;height:20px}.search-field input::placeholder{color:#686e66}.vocab-filters{gap:9px;padding-top:17px;padding-bottom:10px}.vocab-filters button{min-height:44px;padding:10px 15px;font-size:13px}.vocab-item{padding:20px 0}.vocab-item h3{font-size:24px;line-height:1.55}.vocab-item p{font-size:14px;line-height:1.55}.vocab-item small{font:500 13px/1.55 var(--sans);color:var(--ink-soft);margin-top:6px}.vocab-actions{gap:2px}.vocab-actions button{width:48px;height:48px}.vocab-actions .icon{width:22px;height:22px}.prototype-badge{color:#fffc;border-color:#ffffff59;font-size:11px}.translate-intro p{color:#ffffffc2}.input-tools>span,.result-topline,.mini-icon{font-size:12px}.input-tools>span{color:var(--ink-soft)}.translation-input-wrap textarea::placeholder{color:#70766d}.mini-icon .icon{width:18px;height:18px}.result-roman{font:500 13px/1.75 var(--sans);color:var(--ink-soft)}.round-audio{min-height:44px;font-size:13px}.round-audio .icon{width:18px;height:18px}.save-translation{font-size:13px}.save-translation .icon{width:19px;height:19px}.context-number{font-size:12px}.phrase-context p{color:#ffffffc7;font-size:14px}.inline-roman{font:500 13px var(--sans)}.text-link{font-size:13px}.phrase-chips button{min-height:44px;font-size:13px}.translator-note{color:#ffffffb8;font-size:12px;line-height:1.8}.level-line{font-size:12px}.profile-hero p{font-size:13px}.profile-stat-grid span,.week-chart small{font-size:12px}.goal-section b{font-size:14px}.goal-section small,.settings-list small{font-size:12px}.goal-section .icon,.settings-list .icon{width:18px;height:18px}.profile-plus p{font-size:14px}.plus-link{font-size:13px}.settings-list button{font-size:14px}.local-data-note{font-size:12px;line-height:1.6}.lesson-body>p{font-size:14px}.dialogue-line .roman{font:500 13px/1.6 var(--sans)}.dialogue-line .english{font-size:14px;line-height:1.5}.dialogue-line button{width:44px;height:44px}.dialogue-line button .icon{width:22px;height:22px}.answer-option{font-size:15px}.answer-option .option-letter{width:28px;height:28px;font-size:12px}.word-chip{font-size:18px}.feedback-panel small,.completion-stats small,.review-session-body .session-instruction{font-size:12px}.flash-front .flash-label,.flash-back .flash-label{opacity:.74;font-size:12px}.flash-front .flash-roman{font:500 13px var(--sans);color:#fffc}.flash-front .flash-hint{color:#ffffffbd;font-size:13px}.flash-back .example-en{font-size:14px}.flash-back .flash-audio .icon{width:22px;height:22px}.rating-buttons button{font-size:13px}.rating-buttons button small{font-size:12px}.paywall-sub,.plus-benefits b{font-size:14px}.plus-benefits small{font-size:12px;line-height:1.55}.plus-benefits>div>.icon{width:20px;height:20px}.plan-option b{font-size:14px}.plan-option span small{font-size:12px;line-height:1.45}.plan-option strong small,.plan-option i{font-size:11px}.paywall-legal{font-size:12px;line-height:1.65}.toast{font-size:13px}.memory-ring small,.deck-front>span,.prototype-badge,.plan-option strong small,.plan-option i{font-size:12px}.avatar{width:44px;height:44px}.text-button{min-height:44px}.swap-button,.mini-icon{width:44px;min-width:44px;height:44px;min-height:44px}.bottom-nav{grid-template-columns:repeat(5,1fr);padding-left:12px;padding-right:12px}.guide-edition{font:500 12px var(--mono);letter-spacing:.04em;color:var(--ink-soft)}.guide-intro{padding:13px 0 23px}.guide-intro h1{margin-bottom:13px}.guide-intro p{max-width:355px;color:var(--ink-soft);margin:0;font-size:14px;line-height:1.65}.guide-cover{height:196px;color:var(--white);background:var(--teal-dark);isolation:isolate;border-radius:4px 4px 22px;position:relative;overflow:hidden}.guide-cover img{z-index:-2;object-fit:cover;object-position:50% 46%;width:100%;height:100%;position:absolute;inset:0}.guide-cover-shade{z-index:-1;background:linear-gradient(#042a282e,#042a28d6);position:absolute;inset:0}.guide-cover-label{font:500 12px var(--mono);letter-spacing:.05em;position:absolute;top:17px;left:18px}.guide-cover-copy{position:absolute;bottom:18px;left:18px}.guide-cover-copy span{font:500 14px var(--thai);color:var(--yellow);margin-bottom:2px;display:block}.guide-cover-copy b{letter-spacing:-.5px;font-size:23px;line-height:1.25;display:block}.guide-sos{background:var(--teal-dark);min-height:82px;color:var(--white);border-radius:3px 3px 16px;grid-template-columns:42px 1fr 22px;align-items:center;gap:12px;margin:14px 0 0;padding:14px 16px;text-decoration:none;transition:background .15s,transform .15s;display:grid}.guide-sos:hover{background:var(--teal)}.guide-sos:active{transform:scale(.985)}.guide-sos-icon{width:42px;height:42px;color:var(--yellow);border:1px solid #ffffff59;border-radius:50%;place-items:center;display:grid}.guide-sos small{font:500 12px/1.4 var(--mono);color:var(--white);letter-spacing:.02em;margin-bottom:4px;display:block}.guide-sos b{font-size:18px;display:block}.guide-checklist,.guide-index{border-bottom:1px solid var(--line);padding:31px 0 24px}.guide-section-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:17px;display:flex}.guide-section-heading .eyebrow,.guide-emergency>.eyebrow{color:var(--teal)}.guide-section-heading h2,.guide-emergency h2{letter-spacing:-.7px;margin:5px 0 0;font-size:25px;line-height:1.2}.guide-progress{font:500 13px var(--mono);color:var(--teal);flex:none}.guide-progress-track{background:var(--paper-deep);height:3px;margin-bottom:7px;overflow:hidden}.guide-progress-track span{background:var(--teal);width:0;height:100%;transition:width .25s var(--ease);display:block}.guide-check{text-align:left;border-bottom:1px solid var(--line);grid-template-columns:26px 1fr;align-items:center;gap:13px;width:100%;min-height:72px;padding:13px 0;display:grid}.guide-check:last-child{border-bottom:0}.guide-checkbox{border:1.5px solid var(--ink-soft);color:#0000;border-radius:50%;place-items:center;width:24px;height:24px;transition:background .15s,border-color .15s,color .15s,transform .15s;display:grid}.guide-checkbox .icon{width:16px;height:16px}.guide-check b{margin-bottom:4px;font-size:14px;line-height:1.45;display:block}.guide-check small{color:var(--ink-soft);font-size:12px;line-height:1.55;display:block}.guide-check:hover .guide-checkbox{border-color:var(--teal);transform:scale(1.06)}.guide-check[aria-checked=true] .guide-checkbox{background:var(--teal);border-color:var(--teal);color:var(--white)}.guide-check[aria-checked=true] b{color:var(--teal-dark)}.guide-topic{border-top:1px solid var(--line)}.guide-topic:last-child{border-bottom:1px solid var(--line)}.guide-topic-toggle{text-align:left;grid-template-columns:30px 1fr 22px;align-items:center;gap:12px;width:100%;min-height:88px;display:grid}.guide-topic-number{font:500 12px var(--mono);color:var(--teal);align-self:start;padding-top:28px}.guide-topic-toggle b{margin-bottom:5px;font-size:15px;line-height:1.4;display:block}.guide-topic-toggle small{font:500 12px/1.45 var(--mono);color:var(--ink-soft);letter-spacing:.02em;display:block}.guide-topic-toggle>.icon{width:19px;color:var(--teal);transition:transform .2s var(--ease)}.guide-topic-toggle[aria-expanded=true]>.icon{transform:rotate(90deg)}.guide-topic-toggle:hover b{color:var(--teal)}.guide-detail{animation:guideDetailIn .22s var(--ease);padding:0 0 23px 42px}.guide-detail[hidden]{display:none}@keyframes guideDetailIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.guide-detail ul{margin:0 0 15px;padding:0;list-style:none}.guide-detail li{color:var(--ink-soft);margin-bottom:11px;padding-left:15px;font-size:14px;line-height:1.65;position:relative}.guide-detail li:before{content:"";background:var(--teal);width:5px;height:5px;position:absolute;top:.72em;left:0}.guide-detail a,.guide-practice{min-height:44px;color:var(--teal-dark);align-items:center;gap:8px;font-size:13px;font-weight:700;line-height:1.45;text-decoration:none;display:inline-flex}.guide-detail a .icon,.guide-practice .icon{width:17px;height:17px}.guide-emergency{background:var(--teal-deep);color:var(--white);margin:0 -22px -118px;padding:31px 22px 132px}.guide-emergency>.eyebrow{color:var(--yellow)}.guide-emergency h2{margin-top:8px;font-size:29px}.guide-emergency>p{color:var(--white);margin:10px 0 19px;font-size:14px;line-height:1.65}.emergency-list{border-top:1px solid #ffffff3d}.emergency-list a{min-height:76px;color:var(--white);border-bottom:1px solid #fff3;grid-template-columns:1fr auto 24px;align-items:center;gap:13px;text-decoration:none;transition:background .15s,padding .15s;display:grid}.emergency-list a:hover{background:#ffffff0f;padding-left:8px}.emergency-list b{margin-bottom:3px;font-size:14px;display:block}.emergency-list small{color:var(--white);font-size:12px;line-height:1.45;display:block}.emergency-list strong{font:500 24px var(--display);color:var(--yellow)}.emergency-list .icon{width:20px;color:var(--yellow)}.guide-emergency .guide-source{color:var(--white);margin:19px 0 0;font-size:12px;line-height:1.65}@media (width<=370px){.bottom-nav{padding-left:6px;padding-right:6px}.bottom-nav button,.guide-cover-label{font-size:11px}.guide-sos{grid-template-columns:38px 1fr 20px;gap:9px;padding-left:12px;padding-right:12px}.guide-sos small{font-size:11px}.guide-emergency{margin-left:-17px;margin-right:-17px;padding-left:17px;padding-right:17px}}.auth-entry{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--paper);width:100%;color:var(--ink);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:16px;margin:14px 0 10px;padding:16px 18px;display:flex}.auth-entry span{flex-direction:column;gap:4px;display:flex}.auth-entry small{color:var(--ink-soft)}.auth-sync-state{color:var(--teal);font:500 12px DM Mono,monospace}.auth-dialog{border-radius:var(--radius-card);background:var(--paper);width:min(100% - 24px,460px);max-height:90dvh;color:var(--ink);border:0;padding:0;box-shadow:0 30px 100px #002b2950}.auth-dialog::backdrop{backdrop-filter:blur(5px);background:#002b2975}.auth-panel{padding:38px 26px 26px;position:relative;overflow-y:auto}.auth-panel h2{font:600 36px/1.08 var(--display);letter-spacing:-1.4px;margin:12px 0}.auth-panel h2 em{font-family:inherit;font-weight:600}.auth-subtitle{color:var(--ink-soft);margin-bottom:24px;line-height:1.6}.oauth-buttons{gap:10px;display:grid}.oauth-button{border:1px solid var(--line);border-radius:var(--radius-button);min-height:50px;color:var(--ink);background:var(--white);justify-content:center;align-items:center;gap:10px;font-weight:700;text-decoration:none;display:flex}.oauth-button:hover{border-color:var(--teal)}.oauth-mark{text-align:center;width:22px;font-size:18px}.auth-divider{color:var(--ink-soft);align-items:center;gap:12px;margin:22px 0;font:500 12px DM Mono,monospace;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.email-auth-form{gap:9px;display:grid}.email-auth-form label{font-size:12px;font-weight:700}.email-auth-form input{box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius-field);background:var(--white);width:100%;min-height:50px;color:var(--ink);font:16px var(--sans);padding:12px 14px}.email-auth-form input:focus{outline:2px solid var(--teal);outline-offset:1px}.email-auth-form button{margin-top:8px}.secondary-button{border:1px solid var(--line);border-radius:var(--radius-button);min-height:48px;color:var(--ink);cursor:pointer;background:0 0;font-weight:700}.auth-status{min-height:20px;color:var(--ink-soft);text-align:center;margin:14px 0 0;font-size:12px;line-height:1.5}.auth-status.error{color:#a43b31}.auth-account{text-align:center;padding:12px 0}.auth-account-icon{background:var(--teal);width:52px;height:52px;color:var(--white);border-radius:50%;place-items:center;margin:0 auto 14px;display:grid}.auth-account h3{margin:0 0 6px}.auth-account p{color:var(--ink-soft)}.auth-sync-note{margin:20px 0;line-height:1.6}.auth-panel button:disabled{opacity:.6;cursor:wait}@media (width<=480px){.auth-dialog{border-radius:var(--radius-sheet);width:100%;max-width:none;margin:auto 0 0}.auth-panel{padding-bottom:max(26px,env(safe-area-inset-bottom))}}.email-code-actions{justify-content:space-between;gap:12px;margin-top:4px;display:flex}.email-text-button{min-height:44px;color:var(--teal);font:600 13px var(--sans);text-underline-offset:3px;padding:4px 0;text-decoration:underline}.email-auth-form input[readonly]{color:var(--ink-soft)}.auth-entry>span:first-child{min-width:0}.auth-entry b,.auth-entry small,.auth-account h3,.auth-account p{overflow-wrap:anywhere}.auth-sync-state{flex-shrink:0}.auth-panel{overflow-wrap:break-word}.profile-hero h1{overflow-wrap:anywhere}#screen-profile .auth-entry{background:var(--white);grid-template-columns:42px minmax(0,1fr) auto;gap:14px;margin:0 0 12px;padding:16px;display:grid}#screen-profile .auth-entry .profile-avatar{width:42px;height:42px;margin:0;font-size:15px;display:grid}#screen-profile .auth-entry .profile-avatar:before{inset:-3px}#screen-profile .auth-entry .profile-avatar>span{border-width:2px;width:11px;height:11px;display:block;bottom:-1px;right:-1px}.profile-account-copy{min-width:0}.profile-account-copy .eyebrow{font-size:9px;line-height:1.2}.profile-account-copy b{font-size:16px;line-height:1.4}.profile-account-copy small{font-size:12px;line-height:1.5}#screen-profile .profile-account-trailing{align-items:flex-end;gap:7px}.profile-account-trailing .auth-sync-state{font-size:10px}.profile-account-trailing .icon{width:16px;height:16px;color:var(--teal)}#screen-profile .profile-hero{text-align:left;padding:26px 0 20px}#screen-profile .profile-hero h1{letter-spacing:-.7px;margin:0;font-size:24px}#screen-profile .profile-hero .level-line{margin-top:16px}@media (width<=350px){#screen-profile .auth-entry{grid-template-columns:36px minmax(0,1fr) auto;gap:11px;padding:14px}#screen-profile .auth-entry .profile-avatar{width:36px;height:36px;font-size:13px}.profile-account-copy b{font-size:14px}.profile-account-copy small{font-size:11px}}@media (height<=600px){.auth-panel{padding-top:28px}.auth-panel h2{font-size:30px}.auth-subtitle{margin-bottom:16px}}.flow-hint{color:var(--ink-soft);text-align:center;margin:5px;font-size:11px}.teaching-note{border-left:3px solid var(--yellow);border-radius:var(--radius-field);color:var(--ink-soft);background:#f2cf4a1f;margin-top:22px;padding:18px;font-size:14px;line-height:1.75}.lesson-body.is-phrase-lesson{padding-top:20px}.phrase-lesson-intro{margin-bottom:22px}.phrase-lesson-intro .lesson-kicker{margin-bottom:10px;font-size:11px}.lesson-body .phrase-lesson-intro h1{letter-spacing:-.7px;margin:0 0 8px;font-size:26px;line-height:1.2}.phrase-lesson-intro>p{color:var(--ink-soft);margin:0;font-size:14px;line-height:1.6}.phrase-study-card{border:1px solid var(--teal-dark);border-radius:var(--radius-card);background:var(--teal-dark);overflow:hidden;box-shadow:0 12px 28px #073f3d1f,0 2px 4px #073f3d0f}.phrase-study-topline{justify-content:space-between;align-items:center;gap:12px;padding:18px 20px 0;display:flex}.phrase-study-topline>span{color:var(--yellow);font:500 11px/1.5 var(--mono);letter-spacing:.09em}.phrase-study-audio{border-radius:var(--radius-button);min-width:100px;min-height:46px;color:var(--white);background:#fffef912;border:1px solid #fffef93d;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:600;transition:background .2s,border-color .2s;display:inline-flex}.phrase-study-audio .icon{width:20px;height:20px;color:var(--yellow)}.phrase-study-audio:hover,.phrase-study-audio.playing{border-color:var(--yellow);background:#f2cf4a21}.phrase-study-words{padding:22px 20px 26px}.phrase-study-thai{color:var(--white);font:500 clamp(30px,8.6vw,40px)/1.55 var(--thai);letter-spacing:0;overflow-wrap:anywhere;margin:0}.phrase-study-card.is-long .phrase-study-thai{font-size:clamp(25px,7vw,32px)}.phrase-study-roman{color:#d2e5df;overflow-wrap:anywhere;margin:10px 0 0;font-size:14px;line-height:1.7}.phrase-study-meaning{border-top:3px solid var(--yellow);background:var(--white);padding:18px 20px 21px}.phrase-study-meaning>span{color:var(--teal);font:500 10px/1.5 var(--mono);letter-spacing:.1em}.phrase-study-meaning>p{color:var(--ink);overflow-wrap:anywhere;margin:6px 0 0;font-size:23px;font-weight:600;line-height:1.4}.phrase-study-note{border-radius:var(--radius-card);background:#f3eedc;border:1px solid #c9a8303b;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:12px;margin-top:22px;padding:18px 16px;display:grid}.phrase-note-icon{background:var(--yellow-soft);width:30px;height:30px;color:var(--teal-dark);border-radius:3px;place-items:center;display:grid}.phrase-note-icon .icon{width:18px;height:18px}.phrase-study-note h2{color:var(--teal-dark);margin:2px 0 5px;font-size:13px;font-weight:700;line-height:1.5}.phrase-study-note p{color:var(--ink-soft);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.75}.lesson-next-preview{color:var(--ink-soft);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px;margin:0 0 12px;font-size:12px;line-height:1.5;display:flex}.lesson-next-preview>span{color:var(--teal);font:500 10px/1.5 var(--mono);letter-spacing:.06em;white-space:nowrap}@media (width<=360px){.lesson-body.is-phrase-lesson{padding-left:18px;padding-right:18px}.phrase-study-topline{padding:15px 16px 0}.phrase-study-words{padding:18px 16px 22px}.phrase-study-meaning{padding:16px}.phrase-study-note{gap:10px;padding:16px 14px}}@media (height<=680px){.lesson-body.is-phrase-lesson{padding-top:14px}.phrase-lesson-intro{margin-bottom:16px}.phrase-lesson-intro .lesson-kicker{margin-bottom:6px}.lesson-body .phrase-lesson-intro h1{margin-bottom:6px;font-size:24px}.phrase-lesson-intro>p{font-size:13px}.phrase-study-topline{padding:12px 16px 0}.phrase-study-audio{min-height:44px}.phrase-study-words{padding:12px 16px 18px}.phrase-study-roman{margin-top:5px;font-size:13px}.phrase-study-meaning{padding:12px 16px 14px}.phrase-study-meaning>p{font-size:21px}.phrase-study-note{margin-top:16px;padding:14px}.lesson-next-preview{margin-bottom:8px}}.secondary-button{border:1px solid var(--line);border-radius:var(--radius-button);min-height:48px;color:var(--ink);font-family:var(--sans);cursor:pointer;background:0 0;padding:0 20px;font-size:13px;font-weight:700}.secondary-button:hover{border-color:var(--teal);background:var(--teal-light)}.secondary-button:active{transform:scale(.98)}.secondary-button.full{width:100%}.secondary-button:disabled{opacity:.55}.answer-option>span:last-child:not(.option-letter){text-align:left;flex:1}.recall-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.recall-hint{border-radius:var(--radius-field);background:var(--paper-deep);color:var(--ink-soft);padding:12px 16px}.speech-status{max-width:340px;min-height:48px;color:var(--ink-soft);text-align:center;margin:20px auto 0;font-size:13px;line-height:1.6}[data-action=speech-record].recording{background:#b84c3f;box-shadow:0 0 0 10px #b84c3f24}[data-action=speech-record].recording .icon{animation:1.2s ease-in-out infinite recording-pulse}.course-row small{white-space:nowrap}@keyframes recording-pulse{50%{opacity:.45;transform:scale(.86)}}.pwa-panel{border:1px solid var(--line);border-radius:var(--radius-card);background:#ffffff59;margin:24px 0;padding:20px}.pwa-panel h2{margin:7px 0;font-size:25px}.pwa-panel p{color:var(--ink-soft);margin-bottom:16px;font-size:12px;line-height:1.6}.pwa-actions{flex-wrap:wrap;gap:9px;display:flex}.pwa-actions .secondary-button{min-height:42px;font-size:12px}@media (prefers-reduced-motion:reduce){[data-action=speech-record].recording .icon{animation:none}}.flow-overlay{height:100dvh;max-height:100dvh;color:var(--ink);border:0;padding:0}.flow-overlay:not([open]){display:none}.flow-overlay::backdrop{background:#002b2973}.lesson-body,.review-session-body{overscroll-behavior:contain;min-height:0}.review-deck-section button:disabled{opacity:.6;cursor:default}.settings-form-grid{gap:16px;margin:22px 0;display:grid}.settings-form-grid label{gap:7px;font-size:12px;font-weight:700;display:grid}.settings-form-grid select{appearance:none;box-sizing:border-box;border:1px solid var(--line);border-radius:var(--radius-field);background:var(--white);width:100%;min-height:48px;color:var(--ink);font:16px var(--sans);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='m3 5 4 4 4-4' stroke='%23222222' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:14px 14px;padding:10px 44px 10px 12px}.settings-form-grid .settings-check{align-items:center;gap:10px;font-weight:500;line-height:1.5;display:flex}.settings-check input{width:20px;height:20px;accent-color:var(--teal)}.vocab-detail-thai{margin:18px 0 4px;font:500 38px/1.35 Noto Sans Thai,sans-serif}.vocab-detail-roman{color:var(--ink-soft);font-size:14px}.vocab-detail-english{margin:14px 0;font-size:20px;font-weight:700}.vocab-detail-note{border-radius:var(--radius-button);background:var(--paper-deep);color:var(--ink-soft);padding:16px;font-size:13px;line-height:1.7}.vocab-detail-actions{gap:10px;margin-top:20px;display:grid}.library-intro{color:var(--ink-soft);font-size:13px;line-height:1.6}.translation-suggestions{gap:8px;margin-top:12px;display:grid}.translation-suggestions button{border:1px solid var(--line);border-radius:var(--radius-field);background:var(--white);color:var(--ink);text-align:left;padding:12px}.hide-transliteration .roman,.hide-transliteration .daily-roman,.hide-transliteration .result-roman,.hide-transliteration .flash-roman{display:none}.offline-unit-controls{gap:10px;margin-top:14px;display:grid}.offline-unit-row{grid-template-columns:1fr auto;align-items:center;gap:10px;font-size:12px;display:grid}.offline-unit-row small{color:var(--ink-soft);margin-top:3px;display:block}.offline-unit-row button{min-height:44px;padding:0 12px;font-size:12px}@media (width>=700px){.settings-form-grid{grid-template-columns:1fr 1fr}.settings-form-grid .settings-check{grid-column:1/-1}}.offline-unit-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.offline-unit-row{border-bottom:1px solid var(--line);padding:12px 0}.offline-unit-row>div:first-child{min-width:0}.offline-unit-row small{line-height:1.5}.offline-unit-controls button:disabled{opacity:.5;cursor:wait}#offlineDialogStatus:empty{display:none}#offlineStorage{font-size:12px}.translate-header{gap:16px;height:auto;min-height:70px}.translate-header h1{letter-spacing:-.8px;margin:0;font-size:28px;line-height:1.2}.translate-header .header-label{white-space:nowrap;font-size:12px}.translation-pack{border:0;border-bottom:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:0 8px;margin:0;padding:4px 12px;display:grid}.translation-offline{cursor:pointer;align-items:center;gap:8px;min-height:44px;font-size:13px;font-weight:700;display:flex;position:relative}.translation-offline input{opacity:0;width:100%;height:100%;cursor:inherit;margin:0;position:absolute;inset:0}.translation-switch-track{background:#b8beb7;border-radius:12px;flex-shrink:0;width:32px;height:20px;padding:3px;transition:background .2s;display:block}.translation-switch-track i{background:var(--white);border-radius:50%;width:14px;height:14px;transition:transform .2s;display:block;box-shadow:0 1px 2px #0002}.translation-offline input:checked+.translation-switch-track{background:var(--teal)}.translation-offline input:checked+.translation-switch-track i{transform:translate(12px)}.translation-offline input:focus-visible+.translation-switch-track{outline:2px solid var(--teal);outline-offset:3px}.translation-offline input:disabled+.translation-switch-track{opacity:.5}#translationPackStatus{min-width:0;color:var(--ink-soft);overflow-wrap:anywhere;font-size:12px;line-height:1.4}.translation-pack-actions{align-items:center;gap:4px;display:flex}.translation-pack-actions .secondary-button{min-height:44px;color:var(--teal);text-underline-offset:3px;border:0;padding:0 10px;font-size:12px;text-decoration:underline}.translation-pack-actions .translation-remove{border-radius:var(--radius-field);width:44px;height:44px;min-height:44px;color:var(--teal);border:0}.translation-remove .icon{width:17px;height:17px}.translation-pack progress{width:100%;height:3px;accent-color:var(--teal);grid-column:1/-1;margin:0 0 4px}.translation-pack [hidden]{display:none}.translation-pack button:disabled{opacity:.5}@media (prefers-reduced-motion:reduce){.translation-switch-track,.translation-switch-track i{transition:none}}.translator[aria-busy=true] .translate-button{opacity:.65}.translator-note a{color:inherit;text-underline-offset:2px}.course-recommendation-count{color:var(--ink-soft);margin:13px 0 0;font-size:12px;line-height:1.5}.course-row>span:nth-child(2){min-width:0}.course-meta{max-width:78px}.course-library{flex-direction:column;height:min(92dvh,900px);display:flex;overflow:hidden}.course-library .paywall-brand{margin-top:14px}.course-library h2{margin:16px 0 8px;font-size:30px}.course-library .library-intro{margin:0 0 14px}.library-search{flex-shrink:0;margin:0}.library-filters{border-bottom:1px solid var(--line);flex-shrink:0;gap:18px;padding:14px 0 0;display:flex}.library-filters button{min-height:44px;color:var(--ink-soft);border-bottom:2px solid #0000;padding:0 0 10px;font-size:12px}.library-filters button[aria-pressed=true]{border-bottom-color:var(--teal);color:var(--ink);font-weight:700}.library-count{color:var(--ink-soft);font:500 11px/1.5 var(--mono);margin:12px 0 0}.library-list{overscroll-behavior:contain;flex:1;align-content:start;gap:12px;min-height:0;margin:12px 0 0;display:grid;overflow-y:auto}.library-unit{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--white);overflow:clip}.library-unit summary{cursor:pointer;grid-template-columns:50px minmax(0,1fr) 18px;align-items:center;gap:12px;padding:13px;list-style:none;display:grid}.library-unit summary::-webkit-details-marker{display:none}.library-unit summary:focus-visible{outline:2px solid var(--teal);outline-offset:-3px}.library-unit .course-thumb{width:50px;height:64px}.library-unit-copy{min-width:0}.library-unit-copy>b{margin-bottom:4px;font-size:14px;display:block}.library-unit-copy>small{color:var(--ink-soft);font-size:12px;line-height:1.5;display:block}.library-unit-meta{color:var(--teal);font:500 12px/1.5 var(--mono);margin-top:6px;display:block}.library-unit-progress{background:var(--paper-deep);height:2px;margin-top:7px;display:block}.library-unit-progress>span{background:var(--teal);height:100%;display:block}.library-chevron{width:18px;height:18px;color:var(--teal);transition:transform .15s}.library-unit[open] .library-chevron{transform:rotate(90deg)}.library-lessons{padding:0 13px}.library-lesson{border-top:1px solid var(--line);text-align:left;grid-template-columns:22px minmax(0,1fr) 58px;align-items:center;gap:10px;width:100%;padding:15px 0;display:grid}.library-lesson-number{color:var(--ink-soft);font:500 11px/1.5 var(--mono);align-self:start;padding-top:2px}.library-lesson-copy b{margin-bottom:5px;font-size:14px;display:block}.library-lesson-copy small{color:var(--ink-soft);margin-top:4px;font-size:12px;line-height:1.5;display:block}.library-lesson-action{color:var(--teal);text-align:right;justify-items:end;gap:6px;font-size:12px;line-height:1.4;display:grid}.library-lesson-action .icon{width:16px;height:16px}.library-note{color:var(--ink-soft);flex-shrink:0;margin:12px 0 0;font-size:12px;line-height:1.5}@media (width<=360px){.library-filters{gap:14px}.library-unit summary{gap:9px;padding:11px}.library-lesson{grid-template-columns:18px minmax(0,1fr) 48px;gap:7px}}.language-switch>span{text-align:center;padding:7px 0 12px;font-size:14px;font-weight:700}.library-lesson-action{overflow-wrap:anywhere}@media (height<=600px){.course-library{height:96dvh;padding-top:8px}.course-library h2{margin-top:8px}.course-library .library-intro{margin-bottom:6px}.course-library .paywall-brand{display:none}}.course-library{color:var(--ink);border:0;margin:0;top:auto}.course-library:not([open]){display:none}.course-library::backdrop{backdrop-filter:blur(4px);background:#002b2973}@media (forced-colors:active){.settings-form-grid select{appearance:auto;background-image:none;padding-right:12px}}.membership-benefits{gap:14px;margin:22px 0;padding:0;font-size:14px;line-height:1.5;list-style:none;display:grid}.profile-plus{isolation:isolate;border-radius:var(--radius-card);min-height:100px;color:var(--white);background:linear-gradient(120deg,#073d39,#0b534b 68%,#123f39);border:1px solid #ccb8756b;justify-content:space-between;align-items:center;gap:12px;padding:20px;display:flex;position:relative;overflow:hidden;box-shadow:0 5px 16px #002d2914}.profile-plus:before,.profile-plus:after{content:"";z-index:-1;pointer-events:none;border:1px solid #e5d094;position:absolute}.profile-plus:before{opacity:.18;border-radius:50%;width:145px;height:145px;top:-86px;right:-25px}.profile-plus:after{opacity:.22;width:80px;height:80px;bottom:-74px;right:25px;transform:rotate(45deg)}.profile-plus-copy{gap:7px;min-width:0;display:grid}.profile-plus-brand{font:600 24px/1.2 var(--display);letter-spacing:-.8px}.profile-plus-brand>span{color:#f2d77c}#membershipProfileCopy{color:#e1e9dd;max-width:230px;font-size:12px;line-height:1.6}.profile-plus .plus-link{border-radius:var(--radius-button);color:#f2d77c;background:#f3d9870d;border:1px solid #dfd4a54d;flex-shrink:0;gap:7px;padding:9px 10px;font-size:11px;line-height:1.4}.profile-plus .plus-link .icon{width:14px;height:14px}@media (width<=350px){.profile-plus{gap:10px;padding:16px}.profile-plus-brand{font-size:22px}#membershipProfileCopy{font-size:11px}.profile-plus .plus-link{gap:5px;padding:8px;font-size:10px}}.membership-benefits li{align-items:flex-start;gap:10px;display:flex}.membership-benefits .icon{width:19px;height:19px;color:var(--teal);flex:0 0 19px;margin-top:1px}.membership-plans{border:0;gap:10px;min-width:0;margin:0 0 16px;padding:0;display:grid}.membership-plans legend{font:12px var(--mono);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.membership-plan{border:1px solid var(--line);border-radius:var(--radius-field);cursor:pointer;align-items:center;gap:10px;padding:14px 12px;display:flex}.membership-plan:has(input:checked){border-color:var(--teal);background:#006e6a0d}.membership-plan input{accent-color:var(--teal)}.membership-plan>span{flex:1}.membership-plan b{font-size:14px;display:block}.membership-plan small{color:var(--ink-soft);margin-top:3px;font-size:13px;font-weight:400;display:block}.membership-plan strong{text-align:right;font-size:20px}.membership-plan strong small{display:inline}.membership-note{color:var(--ink-soft);font-size:13px;line-height:1.7}#manageMembership{margin-top:10px}.translation-quota{color:#fffef9bf;margin:0 0 12px;font-size:13px;line-height:1.6}.course-row.is-locked .course-meta small,.library-lesson.is-locked .library-lesson-action{color:var(--teal)}.library-unit-pro{color:var(--teal);font:12px var(--mono)}[hidden]{display:none!important}@media (width<=350px){.membership-plan{gap:7px;padding:12px 10px}.membership-plan strong{font-size:18px}}.translator .translation-quota{color:var(--ink-soft);margin:10px 0;padding:0 18px}.translation-quota:empty{display:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.membership-plan>span{min-width:0}.membership-plan strong{flex-shrink:0}.membership-plan strong small{font-size:12px;font-weight:500;line-height:1.5;display:block}#retryMembership{margin:0 0 12px}@media (width<=350px){.membership-plan b{font-size:13px}.membership-plan{gap:8px}}.is-offline-setup .membership-benefits{display:none}.offline-setup{margin:20px 0}.offline-setup-step{align-items:center;gap:11px;display:flex}.offline-setup-step>div{flex:1;min-width:0}.offline-setup-step h3{margin:0 0 3px;font-size:15px;font-weight:700}.offline-setup-step p{color:var(--ink-soft);margin:0;font-size:12px;line-height:1.5}.offline-step-number{border:1px solid var(--line);border-radius:var(--radius-field);width:30px;height:30px;color:var(--teal);font:12px var(--mono);flex-shrink:0;place-items:center;display:grid}.offline-step-state{color:var(--teal);font-size:12px;font-weight:600}.offline-setup-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--white);padding:16px}.offline-setup .translation-pack{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--white);margin:16px 0 0;padding:16px;display:block}.offline-setup #translationPackStatus{margin:14px 0 10px;font-size:13px;line-height:1.6}.offline-setup .translation-pack-actions{align-items:center;gap:8px;margin-top:16px;display:flex}.offline-setup #translationPackStatus:not([hidden])+.translation-pack-actions{margin-top:0}#installTranslation{gap:12px}#translationDownloadLabel{text-align:left;min-width:0}#translationPackSize{color:inherit;opacity:.82;font:400 12px/1.4 var(--mono);white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0}.offline-setup .translation-pack-actions>.full{flex:1;min-width:0;min-height:48px;margin:0;font-size:14px}.offline-setup .translation-pack .primary-button{color:var(--white);background:var(--teal-dark);justify-content:space-between;text-decoration:none}.offline-setup .translation-pack .primary-button:disabled{opacity:.4}.offline-setup .translation-remove{border:1px solid var(--line);border-radius:var(--radius-field);flex-shrink:0;width:44px;height:44px}.offline-setup .translation-pack progress{width:100%;height:4px;accent-color:var(--teal);margin:14px 0;display:block}#useOfflineTranslation{min-height:48px;margin-top:10px;font-size:14px}#membershipStatus:empty{display:none}.is-offline-setup .auth-panel h2{margin:12px 0;font-size:30px}.is-offline-setup .offline-setup{margin:16px 0}.is-offline-setup .membership-plan{min-height:54px;padding:10px 12px}.offline-pro-card{isolation:isolate;color:var(--white);background:linear-gradient(125deg,#073d39,#0b534b 65%,#123f39);border-color:#ccb8756b;position:relative;overflow:hidden;box-shadow:0 6px 18px #002d2920}.offline-pro-card:before,.offline-pro-card:after{content:"";z-index:-1;pointer-events:none;border:1px solid #e5d094;position:absolute}.offline-pro-card:before{opacity:.18;border-radius:50%;width:150px;height:150px;top:-65px;right:-36px}.offline-pro-card:after{opacity:.2;width:83px;height:83px;bottom:-57px;right:-15px;transform:rotate(45deg)}.offline-pro-eyebrow{color:#dfd4a5;font:500 11px/1.4 var(--mono);letter-spacing:.1em;margin-bottom:4px;display:block}.offline-pro-card .offline-setup-step h3{letter-spacing:-.5px;color:var(--white);margin-bottom:5px;font-size:19px;line-height:1.25}.offline-pro-card .offline-setup-step h3 span{color:#f2d77c}.offline-pro-card .offline-setup-step p{color:#e1e9dd;font-size:12px;line-height:1.5}.offline-pro-card .offline-step-number{color:#f2d77c;background:#ffffff06;border-color:#dfd4a54d;align-self:flex-start;margin-top:19px}.offline-pro-card #offlineProState{color:#f2d77c;background:#f3d9870d;border:1px solid #dfd4a54d;border-radius:2px 2px 7px;align-self:flex-start;margin-top:21px;padding:3px 7px;font-size:11px;font-weight:500;line-height:1.5}#photoEntry{border-radius:var(--radius-card);background:linear-gradient(110deg,#f6db70,var(--yellow) 78%);width:100%;min-height:84px;color:var(--teal-dark);text-align:left;border:1px solid #f5dc74;grid-template-columns:minmax(0,1fr) 62px;align-items:center;gap:12px;margin:0 0 16px;padding:12px 18px;display:grid;position:relative;overflow:hidden;box-shadow:0 7px 20px #002e291a}#photoEntry:hover{background:linear-gradient(110deg,#f9e38b,#f5d65b 78%);border-color:#fff0a6}.photo-entry-copy{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.photo-entry-copy strong{letter-spacing:-.5px;font-size:20px;font-weight:800;line-height:1.3}.photo-entry-detail{color:#3c5944;margin-top:4px;font-size:12px;line-height:1.5}.photo-entry-art{width:58px;height:58px;transition:transform .25s var(--ease);display:block;position:relative;transform:rotate(-4deg)}.photo-entry-art>svg{stroke-width:1.5px;width:100%;height:100%}.photo-entry-frame{stroke:#41624c;opacity:.65}.photo-entry-camera{fill:#fff4bc88}.photo-entry-lens{fill:#fff7d0}.photo-entry-arrow{background:var(--teal-dark);width:24px;height:24px;color:var(--yellow);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-1px;right:-3px;box-shadow:0 0 0 4px #f2d355}.photo-entry-arrow .icon{width:15px;height:15px}#photoEntry:hover .photo-entry-art{transform:rotate(0)}@media (width<=350px){#photoEntry{grid-template-columns:minmax(0,1fr) 52px;gap:10px;min-height:80px;padding:12px 14px}.photo-entry-art{width:52px;height:52px}.photo-entry-copy strong{font-size:18px}}@media (prefers-reduced-motion:reduce){.photo-entry-art{transition:none}}.translation-input-wrap .input-tools{justify-content:flex-end}#textTranslationPanel>.translation-quota:empty{display:none}.translator>.translation-quota{padding:0 16px 4px}#photoOverlay{color:#fff;overscroll-behavior:none;color-scheme:dark;background:#080909;border:0;border-radius:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}#photoOverlay[open]{flex-direction:column;display:flex}#photoOverlay::backdrop{background:#080909}.photo-nav{width:100%;max-width:820px;padding:calc(8px + env(safe-area-inset-top)) 14px 8px;z-index:3;background:#080909;flex-shrink:0;grid-template-columns:82px minmax(0,1fr) 82px;align-items:center;gap:8px;margin:0 auto;display:grid}.photo-icon-button{color:#fff;place-items:center;width:44px;height:48px;display:grid}.photo-languages{white-space:nowrap;grid-template-columns:54px 19px 54px;justify-content:center;align-items:center;gap:8px;min-width:0;min-height:48px;font-size:15px;font-weight:600;display:grid}.photo-languages>span{text-align:center;width:54px;display:block}.photo-languages .icon{width:19px;height:19px;color:var(--yellow)}.photo-offline{letter-spacing:.02em;color:#bfc5c2;flex-direction:row;justify-content:flex-end;align-items:center;gap:6px;min-height:48px;font-size:12px;display:flex}.photo-switch-track{background:#414643;border-radius:12px;width:31px;height:18px;padding:3px;transition:background .2s;display:block}.photo-switch-track i{background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .2s;display:block}.photo-offline[aria-checked=true]{color:var(--yellow)}.photo-offline[aria-checked=true] .photo-switch-track{background:var(--yellow)}.photo-offline[aria-checked=true] i{background:#181b18;transform:translate(13px)}.photo-stage{background:#111413;flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;position:relative;overflow:hidden}#photoCamera{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}#photoCanvas{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.photo-viewfinder{opacity:.8;pointer-events:none;position:absolute;inset:18% 9% 20%}.photo-viewfinder i{border:2px solid #fff;width:25px;height:25px;position:absolute}.photo-viewfinder i:first-child{border-bottom:0;border-right:0;border-radius:9px 0 0;top:0;left:0}.photo-viewfinder i:nth-child(2){border-bottom:0;border-left:0;border-radius:0 9px 0 0;top:0;right:0}.photo-viewfinder i:nth-child(3){border-top:0;border-right:0;border-radius:0 0 0 9px;bottom:0;left:0}.photo-viewfinder i:nth-child(4){border-top:0;border-left:0;border-radius:0 0 9px;bottom:0;right:0}.photo-viewfinder>span{text-align:center;color:#d1d7d3;font-size:12px;line-height:1.6;position:absolute;bottom:-45px;left:0;right:0}.photo-view-tabs{z-index:3;backdrop-filter:blur(16px);background:#151a18e6;border:1px solid #ffffff35;border-radius:28px;padding:4px;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.photo-view-tabs button{white-space:nowrap;color:#d9dfdc;border-radius:24px;min-height:44px;padding:0 18px;font-size:13px;font-weight:600}.photo-view-tabs button[aria-pressed=true]{color:#16251f;background:var(--yellow)}.photo-scan{z-index:2;pointer-events:none;background:#003f3320;display:none;position:absolute;inset:0;overflow:hidden}.is-scanning .photo-scan{display:block}.photo-scan>div{background:linear-gradient(#b6e9ba05,#dbf8b540);border-top:2px solid #d5fbbf;height:28%;animation:2.6s ease-in-out infinite alternate photoScan;position:absolute;left:0;right:0;box-shadow:0 -4px 24px #b5ffd14d}@keyframes photoScan{0%{top:5%}to{top:75%}}.photo-messages{text-align:center;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;max-width:600px;min-height:42px;margin:0 auto;padding:8px 22px 0;display:flex}#photoStatus{color:#b8c2bc;margin:0;font-size:12px;line-height:1.55}#photoPackLink{min-height:44px;color:var(--yellow);align-items:center;gap:7px;font-size:13px;display:flex}.photo-bottom{padding:8px 26px calc(20px + env(safe-area-inset-bottom));background:#080909;flex-shrink:0;grid-template-columns:70px 1fr 70px;align-items:center;gap:16px;width:100%;max-width:520px;margin:0 auto;display:grid}.photo-bottom-action{color:#f7faf7;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-width:54px;min-height:64px;font-size:11px;display:flex}.photo-bottom-action .icon{stroke-width:1.6px;width:25px;height:25px}.photo-bottom-action:disabled{color:#676e69}.photo-bottom-action[aria-pressed=true]{color:var(--yellow)}.photo-shutter-wrap{flex-direction:column;align-items:center;gap:9px;display:flex}.photo-shutter{border:2px solid #fff;border-radius:50%;place-items:center;width:76px;height:76px;padding:5px;transition:transform .15s;display:grid}.photo-shutter:active{transform:scale(.95)}.photo-shutter-core{color:#121713;background:#fff;border-radius:50%;place-items:center;width:100%;height:100%;display:grid}.photo-shutter .icon{width:25px;height:25px}.photo-shutter .translate-glyph,.photo-shutter .cancel-glyph{display:none}.photo-flow[data-state=preview] .photo-shutter{border-color:var(--yellow)}.photo-flow[data-state=preview] .photo-shutter-core{background:var(--yellow)}.photo-flow[data-state=preview] .camera-glyph{display:none}.photo-flow[data-state=preview] .translate-glyph{display:block}.photo-flow.is-scanning .photo-shutter .camera-glyph,.photo-flow.is-scanning .photo-shutter .translate-glyph{display:none}.photo-flow.is-scanning .photo-shutter .cancel-glyph{display:block}.photo-flow.is-scanning .photo-shutter-core{color:#fff;background:#292f2a}#photoShutterLabel{color:#cdd6cf;white-space:nowrap;font-size:11px}.photo-text{z-index:4;color:#fff;max-width:calc(100% - 32px);position:absolute;bottom:20px;left:16px}.photo-text summary{text-underline-offset:4px;cursor:pointer;background:#0c110fbf;border-radius:8px;align-items:center;min-height:44px;padding:0 10px;font-size:11px;text-decoration:underline;display:flex}.photo-text[open]{border-radius:var(--radius-field);backdrop-filter:blur(20px);background:#101713f2;border:1px solid #ffffff30;max-height:70%;padding:0 16px 12px;bottom:80px;left:16px;right:16px;overflow:auto}.photo-text article{border-top:1px solid #ffffff30;padding:12px 0}.photo-text article p{overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.6}.photo-text article small{color:#b3c1b8;overflow-wrap:anywhere;margin-top:5px;font-size:13px;line-height:1.7;display:block}@media (width<=350px){.photo-nav{grid-template-columns:82px minmax(0,1fr) 82px;gap:3px;padding-left:8px;padding-right:8px}.photo-languages{grid-template-columns:48px 19px 48px;gap:7px;font-size:14px}.photo-languages>span{width:48px}.photo-bottom{padding-left:20px;padding-right:20px}.photo-shutter{width:66px;height:66px}.photo-messages{min-height:40px;padding-top:5px}.photo-text:not([open]){bottom:72px;left:3px}}@media (prefers-reduced-motion:reduce){.photo-scan>div{animation:none;top:40%}.photo-shutter,.photo-switch-track,.photo-switch-track i{transition:none}}.translate-header .translation-offline{color:var(--white);gap:8px;font-weight:600}.translate-header .translation-switch-track{background:#ffffff50}.translate-header .translation-offline input:checked+.translation-switch-track{background:var(--yellow)}.translate-header .translation-offline input:checked+.translation-switch-track i{background:var(--teal-dark)}.translate-header .translation-offline input:focus-visible+.translation-switch-track{outline-color:var(--yellow)}#translationPlaceholder{color:#7b8179;min-height:64px;margin:14px 0 0;font-size:18px;line-height:1.6}#resultThai:empty{display:none}.translation-result button:disabled{opacity:.35;cursor:default}.translation-result[data-empty=true] .result-topline{color:var(--ink-soft)}.translation-input-wrap textarea{min-height:84px}#translationStatus:empty,.sheet-backdrop{display:none}@supports (transition-behavior:allow-discrete) and (overlay:auto){dialog:is(.auth-dialog,.course-library,.flow-overlay){--dialog-x:0px;--dialog-travel:24px;--dialog-scale:.985;--dialog-duration:.3s;visibility:visible;opacity:0;transform:translate(var(--dialog-x),var(--dialog-travel)) scale(var(--dialog-scale));transition:opacity .24s ease, transform var(--dialog-duration) var(--ease), display var(--dialog-duration) allow-discrete, overlay var(--dialog-duration) allow-discrete}dialog.course-library{--dialog-x:-50%;--dialog-travel:100%;--dialog-scale:1;--dialog-duration:.34s}dialog.flow-overlay{--dialog-travel:100%;--dialog-scale:1;--dialog-duration:.34s}dialog:is(.auth-dialog,.course-library,.flow-overlay):not([open]){visibility:visible;pointer-events:none;opacity:0;transform:translate(var(--dialog-x),var(--dialog-travel)) scale(var(--dialog-scale));display:none}dialog:is(.auth-dialog,.course-library,.flow-overlay)[open]{visibility:visible;opacity:1;transform:translate(var(--dialog-x),0) scale(1)}dialog:is(.auth-dialog,.course-library,.flow-overlay)::backdrop{opacity:0;transition:opacity var(--dialog-duration) ease, display var(--dialog-duration) allow-discrete, overlay var(--dialog-duration) allow-discrete}dialog:is(.auth-dialog,.course-library,.flow-overlay)[open]::backdrop{opacity:1}dialog:is(.auth-dialog,.course-library,.flow-overlay):not([open])::backdrop{pointer-events:none}@starting-style{dialog:is(.auth-dialog,.course-library,.flow-overlay)[open]{opacity:0;transform:translate(var(--dialog-x),var(--dialog-travel)) scale(var(--dialog-scale))}dialog:is(.auth-dialog,.course-library,.flow-overlay)[open]::backdrop{opacity:0}}@media (width<=480px){dialog.auth-dialog{--dialog-travel:100%;--dialog-scale:1;--dialog-duration:.34s}}@media (prefers-reduced-motion:reduce){dialog:is(.auth-dialog,.course-library,.flow-overlay),dialog:is(.auth-dialog,.course-library,.flow-overlay)::backdrop{transition:none}}}
