:root{--bg:#fff;--text-main:#0f172a;--text-mute:#64748b;--primary-blue:#002868;--secondary-red:#bf0a30;--primary-blue-rgb:0, 40, 104;--secondary-red-rgb:191, 10, 48;--glass-bg:#ffffff73;--glass-border:#0028681f;--glass-shadow:#00286814;--border:#0028681a;--border-hover:#00286833;--input-bg:#fffc;--sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font-family:var(--sans);color:var(--text-main);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:18px;line-height:1.5}html.dark{--bg:#0b0e14;--text-main:#f8fafc;--text-mute:#94a3b8;--primary-blue:#3b82f6;--secondary-red:#ef4444;--primary-blue-rgb:59, 130, 246;--secondary-red-rgb:239, 68, 68;--glass-bg:#0f172aa6;--glass-border:#ffffff14;--glass-shadow:#0006;--border:#ffffff14;--border-hover:#fff3;--input-bg:#0f172acc}html{background-color:var(--bg);overscroll-behavior:none;height:100%}body{padding:0;padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);background-color:var(--bg);color:var(--text-main);overscroll-behavior:none;min-height:100%;margin:0;transition:background-color .3s,color .3s;overflow-x:hidden}#app{box-sizing:border-box;flex-direction:column;width:100%;min-height:100dvh;display:flex}h1,h2,h3,h4{letter-spacing:-.025em;color:var(--text-main);margin:0;font-weight:700}h1{background:linear-gradient(135deg, var(--text-main) 40%, var(--primary-blue));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.2rem}h2{font-size:1.5rem}p{color:var(--text-mute);margin:0}.ui-704-glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px)saturate(140%);border:1px solid var(--glass-border);box-shadow:0 8px 32px 0 var(--glass-shadow);border-radius:1.25rem;padding:1.5rem;transition:border-color .25s,box-shadow .25s,background-color .3s,transform .2s cubic-bezier(.34,1.56,.64,1)}.ui-704-glass:hover{border-color:var(--border-hover);box-shadow:0 12px 40px 0 var(--glass-shadow);transform:translateY(-2px)}.ui-704-input{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text-main);font-size:1rem;font-family:var(--sans);box-sizing:border-box;border-radius:9999px;outline:none;padding:.8rem 1.2rem;transition:all .25s}.ui-704-input::placeholder{color:var(--text-mute);opacity:.8}.ui-704-pill{cursor:pointer;font-size:.95rem;font-weight:600;font-family:var(--sans);border:1px solid #0000;border-radius:9999px;outline:none;justify-content:center;align-items:center;margin-bottom:0;padding:.7rem 1.8rem;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.ui-704-pill:active{transform:scale(.96)translateY(1px)}.ui-704-pill-primary{background:var(--primary-blue);color:#fff}.ui-704-pill-primary:hover{box-shadow:0 0 18px rgba(var(--primary-blue-rgb), .35);transform:translateY(-2px)scale(1.02)}.ui-704-pill-primary:disabled{background:var(--border);color:var(--text-mute);cursor:not-allowed;box-shadow:none;transform:none}.ui-704-pill-secondary{background:var(--glass-bg);color:var(--text-main);border:1px solid var(--border)}.ui-704-pill-secondary:hover{background:rgba(var(--primary-blue-rgb), .05);border-color:var(--primary-blue);transform:translateY(-2px)scale(1.02)}.ui-704-pill-secondary:disabled{opacity:.5;cursor:not-allowed}.ui-704-pill-danger{background:var(--secondary-red);color:#fff}.ui-704-pill-danger:hover{box-shadow:0 0 18px rgba(var(--secondary-red-rgb), .35);transform:translateY(-2px)scale(1.02)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton-loader{background-color:rgba(var(--primary-blue-rgb), .05);border-radius:.5rem;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.thai-translation{color:var(--text-mute);opacity:.85;text-transform:none;letter-spacing:normal;margin-top:.15rem;font-size:.78rem;font-weight:400;line-height:1.35;display:block}.ui-704-pill-primary .thai-translation,.ui-704-pill-danger .thai-translation,.review-btn.has-due .thai-translation,.btn-sub-thai.primary,.btn-sub-thai.text-white{opacity:.95;color:#ffffffe6!important}.ui-704-pill:has(.btn-sub-thai){text-align:center;white-space:nowrap;flex-direction:column;height:auto;padding-top:.55rem;padding-bottom:.55rem;line-height:1.25}.btn-sub-thai{width:100%;margin-top:.15rem;font-size:.7rem;display:block}.tutor-emoji{vertical-align:middle;line-height:1;display:inline-block;font-size:1.4rem!important}.button-loading-content{justify-content:center;align-items:center;gap:.6rem;display:flex}.btn-spinner{border:2px solid #ffffff40;border-top-color:#fff;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.8s linear infinite spin-button;display:inline-block}@keyframes spin-button{to{transform:rotate(360deg)}}.back-btn{white-space:nowrap!important;flex-direction:row!important;justify-content:center!important;align-items:center!important;gap:.5rem!important;height:auto!important;padding:.5rem 1.5rem!important}.back-btn .icon-arrow,.back-btn span{align-items:center!important;display:inline-flex!important}.content-loading-container{text-align:center;box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;width:100%;max-width:480px;margin:3rem auto;padding:3rem 2rem;display:flex}.content-loading-text{color:var(--text-main);flex-direction:column;gap:.25rem;font-size:1.05rem;font-weight:700;display:flex}.content-loading-bar-track{background:rgba(var(--primary-blue-rgb), .15);border-radius:9999px;width:100%;height:6px;position:relative;overflow:hidden}.content-loading-bar-indicator{background:linear-gradient(90deg, transparent 0%, var(--primary-blue) 50%, transparent 100%);border-radius:9999px;width:50%;height:100%;animation:1.5s linear infinite loadingBarSlide;position:absolute;top:0;left:-50%}@keyframes loadingBarSlide{0%{left:-50%}to{left:100%}}@keyframes flicker{0%,to{filter:brightness()drop-shadow(0 0 1px #ef444433);transform:scale(1)rotate(-1deg)}50%{filter:brightness(1.2)drop-shadow(0 0 4px #ef444499);transform:scale(1.1)rotate(2deg)}}.flame-icon{animation:1.5s ease-in-out infinite flicker;display:inline-block}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.card-shake{animation:.45s cubic-bezier(.36,.07,.19,.97) both shake}.grecaptcha-badge{visibility:hidden!important}@media (hover:none){.ui-704-glass:hover{border-color:var(--glass-border);box-shadow:0 8px 32px 0 var(--glass-shadow);transform:none}.ui-704-pill-primary:hover{box-shadow:none;transform:none}.ui-704-pill-secondary:hover{background:var(--glass-bg);border-color:var(--border);transform:none}.ui-704-pill-danger:hover,.clickable-card:hover{box-shadow:none;transform:none}.hub-card:active,.clickable-card:active,.study-tab-btn:active,.nav-link-btn:active{opacity:.85;transition-duration:50ms;transform:scale(.97)}}.ui-704-pill,.ui-704-input,.ui-704-select,.back-btn{min-height:44px}.ui-704-pill,.nav-link-btn,.study-tab-btn,.hub-card,.clickable-card,.back-btn{-webkit-user-select:none;user-select:none}.modal-backdrop,.recording-overlay{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.login-container[data-v-81260b16]{flex-grow:1;justify-content:center;align-items:center;width:100%;display:flex}.login-card[data-v-81260b16]{box-sizing:border-box;flex-direction:column;gap:1.5rem;width:100%;max-width:460px;padding:3rem 2.5rem 2.5rem;display:flex;position:relative;overflow:hidden}.patriotic-bar[data-v-81260b16]{width:100%;height:6px;display:flex;position:absolute;top:0;left:0}.flag-stripe[data-v-81260b16]{flex-grow:1;height:100%}.flag-stripe.blue[data-v-81260b16]{background-color:var(--primary-blue)}.flag-stripe.white[data-v-81260b16]{background-color:#fff}.flag-stripe.red[data-v-81260b16]{background-color:var(--secondary-red)}.login-header[data-v-81260b16]{text-align:center}.login-header h1[data-v-81260b16]{background:linear-gradient(135deg, var(--text-main) 40%, var(--primary-blue));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.1rem;font-size:2.2rem}.header-thai[data-v-81260b16]{margin-top:.1rem;font-size:.95rem;font-weight:500}.step-indicator[data-v-81260b16]{justify-content:center;align-items:center;gap:0;display:flex}.step-dot[data-v-81260b16]{background:var(--border);border-radius:50%;flex-shrink:0;width:10px;height:10px;transition:background .3s}.step-dot.active[data-v-81260b16]{background:var(--primary-blue);box-shadow:0 0 8px rgba(var(--primary-blue-rgb), .4)}.step-dot.done[data-v-81260b16]{background:#10b981}.step-line[data-v-81260b16]{background:var(--border);flex:1;max-width:80px;height:2px;margin:0 .5rem}.step-label[data-v-81260b16]{color:var(--text-main);flex-direction:column;gap:.15rem;font-size:1rem;font-weight:700;display:flex}.step-label-en[data-v-81260b16]{color:var(--text-mute);font-size:.78rem;font-weight:500}.email-badge[data-v-81260b16]{background:rgba(var(--primary-blue-rgb), .06);border:1px solid rgba(var(--primary-blue-rgb), .18);border-radius:9999px;justify-content:space-between;align-items:center;padding:.4rem 1rem;font-size:.88rem;display:flex}.email-badge-addr[data-v-81260b16]{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.email-change-btn[data-v-81260b16]{cursor:pointer;color:var(--primary-blue);background:0 0;border:none;flex-shrink:0;margin-left:.5rem;padding:0;font-size:.75rem;font-weight:700}.email-change-btn[data-v-81260b16]:hover{text-decoration:underline}.forgot-pw-container[data-v-81260b16]{justify-content:flex-end;margin-top:-.5rem;display:flex}.forgot-pw-btn[data-v-81260b16]{cursor:pointer;color:var(--primary-blue);background:0 0;border:none;padding:0;font-size:.75rem;font-weight:600}.forgot-pw-btn[data-v-81260b16]:hover{text-decoration:underline}.login-form[data-v-81260b16]{flex-direction:column;gap:1.25rem;display:flex}.activate-form[data-v-81260b16]{gap:1rem}.form-group[data-v-81260b16]{text-align:left;flex-direction:column;gap:.5rem;display:flex}.form-group label[data-v-81260b16]{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:flex-end;padding-left:.5rem;font-size:.85rem;font-weight:700;display:flex}.label-thai[data-v-81260b16]{color:var(--text-mute);opacity:.75;font-size:.72rem}.age-group-options[data-v-81260b16]{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.age-option-card[data-v-81260b16]{border:2px solid var(--border);cursor:pointer;background:var(--input-bg);border-radius:.85rem;align-items:center;gap:.75rem;padding:.85rem 1rem;transition:all .2s;display:flex}.age-option-card input[type=radio][data-v-81260b16]{display:none}.age-option-card.selected[data-v-81260b16]{border-color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .06);box-shadow:0 0 0 1px rgba(var(--primary-blue-rgb), .2)}.age-option-card[data-v-81260b16]:hover:not(.selected){border-color:var(--border-hover,#fff3)}.age-option-content[data-v-81260b16]{flex-direction:column;gap:.1rem;display:flex}.age-range[data-v-81260b16]{color:var(--text-main);font-size:1.1rem;font-weight:800;line-height:1.1}.age-desc[data-v-81260b16]{color:var(--text-mute);font-size:.72rem;font-weight:500}.login-btn[data-v-81260b16]{flex-direction:column;width:100%;height:auto;margin-top:.25rem;padding:.6rem 1.5rem;line-height:1.25}.btn-sub-thai[data-v-81260b16]{color:#fffc;font-size:.7rem}.feedback-box[data-v-81260b16]{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:2.5rem;font-size:.9rem;display:flex}.error-msg[data-v-81260b16]{color:var(--secondary-red);font-size:.85rem;font-weight:500}.success-msg[data-v-81260b16]{color:#10b981;flex-direction:column;align-items:center;gap:.2rem;font-weight:500;display:flex}.success-en[data-v-81260b16]{color:#10b981;opacity:.9;font-size:.75rem}.form-input-hint[data-v-81260b16]{color:var(--text-mute);opacity:.8;margin-top:.2rem;padding-left:.5rem;font-size:.72rem;font-weight:500;display:block}.recaptcha-terms[data-v-81260b16]{color:var(--text-mute);text-align:center;opacity:.8;margin-top:-.5rem;font-size:.65rem}.recaptcha-terms a[data-v-81260b16]{color:var(--primary-blue);text-decoration:none}.recaptcha-terms a[data-v-81260b16]:hover{text-decoration:underline}@media (width<=480px){.login-card[data-v-81260b16]{gap:1.25rem;padding:2rem 1.25rem 1.5rem}.login-header h1[data-v-81260b16]{font-size:1.8rem}.age-group-options[data-v-81260b16]{grid-template-columns:1fr;gap:.5rem}}.login-divider[data-v-81260b16]{align-items:center;gap:1rem;width:100%;margin:.5rem 0;display:flex}.divider-line[data-v-81260b16]{background:var(--border);opacity:.5;flex-grow:1;height:1px}.divider-text[data-v-81260b16]{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.google-btn-wrapper[data-v-81260b16]{flex-direction:column;align-items:center;gap:.75rem;width:100%;display:flex}#google-signin-btn[data-v-81260b16]{justify-content:center;width:100%;display:flex}.dev-mock-btn[data-v-81260b16]{color:#ef4444;cursor:pointer;background:#ef44441a;border:1px dashed #ef4444;border-radius:9999px;width:100%;max-width:320px;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:all .2s}.dev-mock-btn[data-v-81260b16]:hover{background:#ef444433}.passkey-btn-wrapper[data-v-81260b16]{flex-direction:column;align-items:center;gap:.5rem;width:100%;margin-top:.5rem;display:flex}.passkey-login-btn[data-v-81260b16]{background:var(--bg,#fff);color:var(--text-main,#0f172a);border:1px solid var(--border);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;width:100%;max-width:320px;padding:.6rem 1rem;font-size:.85rem;font-weight:700;line-height:1.25;transition:all .2s;display:flex}.passkey-login-btn[data-v-81260b16]:hover:not(:disabled){background:rgba(var(--primary-blue-rgb), .05);border-color:var(--primary-blue)}.passkey-login-btn.secondary-btn[data-v-81260b16]{padding:.5rem 1rem;font-weight:600}.dev-mock-passkey-btn[data-v-81260b16]{color:#10b981;cursor:pointer;background:#10b9811a;border:1px dashed #10b981;border-radius:9999px;width:100%;max-width:320px;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:all .2s}.dev-mock-passkey-btn[data-v-81260b16]:hover{background:#10b98133}.remember-me-group[data-v-81260b16]{text-align:left;margin-top:-.25rem;margin-bottom:.25rem}.remember-me-label[data-v-81260b16]{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding-left:.5rem;display:flex;color:var(--text-mute)!important;text-transform:none!important;letter-spacing:0!important;font-size:.82rem!important;font-weight:500!important}.remember-me-label input[type=checkbox][data-v-81260b16]{width:1rem;height:1rem;accent-color:var(--primary-blue);cursor:pointer}.login-container[data-v-8dacf1b4]{flex-grow:1;justify-content:center;align-items:center;width:100%;display:flex}.login-card[data-v-8dacf1b4]{box-sizing:border-box;flex-direction:column;gap:1.5rem;width:100%;max-width:460px;padding:3rem 2.5rem 2.5rem;display:flex;position:relative;overflow:hidden}.patriotic-bar[data-v-8dacf1b4]{width:100%;height:6px;display:flex;position:absolute;top:0;left:0}.flag-stripe[data-v-8dacf1b4]{flex-grow:1;height:100%}.flag-stripe.blue[data-v-8dacf1b4]{background-color:var(--primary-blue)}.flag-stripe.white[data-v-8dacf1b4]{background-color:#fff}.flag-stripe.red[data-v-8dacf1b4]{background-color:var(--secondary-red)}.login-header[data-v-8dacf1b4]{text-align:center}.login-header h1[data-v-8dacf1b4]{background:linear-gradient(135deg, var(--text-main) 40%, var(--primary-blue));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.1rem;font-size:2.2rem}.header-thai[data-v-8dacf1b4]{margin-top:.1rem;font-size:.95rem;font-weight:500}.instruction-text[data-v-8dacf1b4]{color:var(--text-main);text-align:center;margin-bottom:.5rem;font-size:.95rem;line-height:1.4}.instruction-text .thai-translation[data-v-8dacf1b4]{color:var(--text-mute);margin-top:.2rem;font-size:.8rem;display:block}.login-form[data-v-8dacf1b4]{flex-direction:column;gap:1.25rem;display:flex}.form-group[data-v-8dacf1b4]{text-align:left;flex-direction:column;gap:.5rem;display:flex}.form-group label[data-v-8dacf1b4]{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:flex-end;padding-left:.5rem;font-size:.85rem;font-weight:700;display:flex}.label-thai[data-v-8dacf1b4]{color:var(--text-mute);opacity:.75;font-size:.72rem}.login-btn[data-v-8dacf1b4]{flex-direction:column;width:100%;height:auto;margin-top:.25rem;padding:.6rem 1.5rem;line-height:1.25}.btn-sub-thai[data-v-8dacf1b4]{color:#fffc;font-size:.7rem}.back-link[data-v-8dacf1b4]{color:var(--primary-blue);cursor:pointer;background:0 0;border:none;margin-top:.5rem;padding:.5rem;font-size:.85rem;font-weight:600}.back-link[data-v-8dacf1b4]:hover{text-decoration:underline}.success-box[data-v-8dacf1b4]{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:1rem 0;display:flex}.success-icon[data-v-8dacf1b4]{margin-bottom:.5rem;font-size:3rem}.success-box h3[data-v-8dacf1b4]{color:var(--text-main);margin:0;font-size:1.5rem}.success-thai[data-v-8dacf1b4]{color:var(--text-mute);margin:0 0 1rem;font-size:.9rem}.success-desc[data-v-8dacf1b4]{color:var(--text-main);margin-bottom:1.5rem;font-size:.95rem;line-height:1.4}.feedback-box[data-v-8dacf1b4]{text-align:center;justify-content:center;align-items:center;min-height:2.5rem;font-size:.9rem;display:flex}.error-msg[data-v-8dacf1b4]{color:var(--secondary-red);font-size:.85rem;font-weight:500}.recaptcha-terms[data-v-8dacf1b4]{color:var(--text-mute);text-align:center;opacity:.8;margin-top:-.5rem;font-size:.65rem}.recaptcha-terms a[data-v-8dacf1b4]{color:var(--primary-blue);text-decoration:none}.recaptcha-terms a[data-v-8dacf1b4]:hover{text-decoration:underline}@media (width<=480px){.login-card[data-v-8dacf1b4]{gap:1.25rem;padding:2rem 1.25rem 1.5rem}.login-header h1[data-v-8dacf1b4]{font-size:1.8rem}}.login-container[data-v-fd6c683a]{flex-grow:1;justify-content:center;align-items:center;width:100%;display:flex}.login-card[data-v-fd6c683a]{box-sizing:border-box;flex-direction:column;gap:1.5rem;width:100%;max-width:460px;padding:3rem 2.5rem 2.5rem;display:flex;position:relative;overflow:hidden}.patriotic-bar[data-v-fd6c683a]{width:100%;height:6px;display:flex;position:absolute;top:0;left:0}.flag-stripe[data-v-fd6c683a]{flex-grow:1;height:100%}.flag-stripe.blue[data-v-fd6c683a]{background-color:var(--primary-blue)}.flag-stripe.white[data-v-fd6c683a]{background-color:#fff}.flag-stripe.red[data-v-fd6c683a]{background-color:var(--secondary-red)}.login-header[data-v-fd6c683a]{text-align:center}.login-header h1[data-v-fd6c683a]{background:linear-gradient(135deg, var(--text-main) 40%, var(--primary-blue));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.1rem;font-size:2.2rem}.header-thai[data-v-fd6c683a]{margin-top:.1rem;font-size:.95rem;font-weight:500}.email-badge[data-v-fd6c683a]{background:rgba(var(--primary-blue-rgb), .06);border:1px solid rgba(var(--primary-blue-rgb), .18);border-radius:9999px;justify-content:center;align-items:center;padding:.4rem 1rem;font-size:.88rem;display:flex}.email-badge-addr[data-v-fd6c683a]{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.login-form[data-v-fd6c683a]{flex-direction:column;gap:1.25rem;display:flex}.form-group[data-v-fd6c683a]{text-align:left;flex-direction:column;gap:.5rem;display:flex}.form-group label[data-v-fd6c683a]{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:flex-end;padding-left:.5rem;font-size:.85rem;font-weight:700;display:flex}.label-thai[data-v-fd6c683a]{color:var(--text-mute);opacity:.75;font-size:.72rem}.login-btn[data-v-fd6c683a]{flex-direction:column;width:100%;height:auto;margin-top:.25rem;padding:.6rem 1.5rem;line-height:1.25}.btn-sub-thai[data-v-fd6c683a]{color:#fffc;font-size:.7rem}.form-input-hint[data-v-fd6c683a]{color:var(--text-mute);opacity:.8;margin-top:.2rem;padding-left:.5rem;font-size:.72rem;font-weight:500;display:block}.back-link[data-v-fd6c683a]{color:var(--primary-blue);cursor:pointer;background:0 0;border:none;margin-top:.5rem;padding:.5rem;font-size:.85rem;font-weight:600}.back-link[data-v-fd6c683a]:hover{text-decoration:underline}.success-box[data-v-fd6c683a]{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:1rem 0;display:flex}.success-icon[data-v-fd6c683a]{margin-bottom:.5rem;font-size:3rem}.success-box h3[data-v-fd6c683a]{color:var(--text-main);margin:0;font-size:1.5rem}.success-thai[data-v-fd6c683a]{color:var(--text-mute);margin:0 0 1rem;font-size:.9rem}.success-desc[data-v-fd6c683a]{color:var(--text-main);font-size:.95rem;line-height:1.4}.feedback-box[data-v-fd6c683a]{text-align:center;justify-content:center;align-items:center;min-height:2.5rem;font-size:.9rem;display:flex}.error-msg[data-v-fd6c683a]{color:var(--secondary-red);font-size:.85rem;font-weight:500}.recaptcha-terms[data-v-fd6c683a]{color:var(--text-mute);text-align:center;opacity:.8;margin-top:-.5rem;font-size:.65rem}.recaptcha-terms a[data-v-fd6c683a]{color:var(--primary-blue);text-decoration:none}.recaptcha-terms a[data-v-fd6c683a]:hover{text-decoration:underline}@media (width<=480px){.login-card[data-v-fd6c683a]{gap:1.25rem;padding:2rem 1.25rem 1.5rem}.login-header h1[data-v-fd6c683a]{font-size:1.8rem}}.btn-primary[data-v-43077f47]{color:#064e3b;background:linear-gradient(135deg,#34d399 0%,#10b981 100%);box-shadow:0 4px 14px #10b98163}.btn-primary[data-v-43077f47]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #10b9813b}.slide-fade-enter-active[data-v-43077f47]{transition:all .4s ease-out}.slide-fade-leave-active[data-v-43077f47]{transition:all .3s cubic-bezier(1,.5,.8,1)}.slide-fade-enter-from[data-v-43077f47]{opacity:0;transform:translate(20px)}.slide-fade-leave-to[data-v-43077f47]{opacity:0;transform:translate(-20px)}.modal-backdrop[data-v-7ac312b4]{z-index:1000;-webkit-backdrop-filter:blur(6px);box-sizing:border-box;background:#0009;justify-content:center;align-items:center;padding:1rem;animation:.18s fadeIn-7ac312b4;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes fadeIn-7ac312b4{0%{opacity:0}to{opacity:1}}.modal-panel[data-v-7ac312b4]{border-radius:1.25rem;flex-direction:column;width:100%;max-width:900px;max-height:92vh;margin:auto;animation:.22s cubic-bezier(.4,0,.2,1) slideUp-7ac312b4;display:flex;overflow:hidden;-webkit-backdrop-filter:none!important;background:#fff!important;border:1px solid #0028681f!important;box-shadow:0 24px 64px #00000038!important}html.dark .modal-panel[data-v-7ac312b4]{background:#111827!important;border:1px solid #ffffff1a!important;box-shadow:0 24px 64px #0000008c!important}@keyframes slideUp-7ac312b4{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header[data-v-7ac312b4]{border-bottom:1px solid var(--border);background:#00286808;flex-shrink:0;justify-content:space-between;align-items:center;padding:1.4rem 1.75rem 1.2rem;display:flex}html.dark .modal-header[data-v-7ac312b4]{background:#ffffff08}.modal-title-block[data-v-7ac312b4]{flex-direction:column;gap:.1rem;display:flex}.modal-title-block h2[data-v-7ac312b4]{color:var(--text-main);-webkit-text-fill-color:var(--text-main);background:0 0;margin:0;font-size:1.25rem;font-weight:800}.modal-title-en[data-v-7ac312b4]{color:var(--text-mute);font-size:.78rem;font-weight:500}.close-btn[data-v-7ac312b4]{border:1px solid var(--border);cursor:pointer;color:var(--text-mute);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:2.25rem;min-height:2.25rem;font-size:1rem;transition:all .15s;display:flex}.close-btn[data-v-7ac312b4]:hover{background:rgba(var(--primary-blue-rgb), .06);border-color:var(--primary-blue);color:var(--primary-blue)}.modal-body[data-v-7ac312b4]{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:0;padding:1.5rem 1.75rem 2rem;display:flex;overflow-y:auto}.profile-section[data-v-7ac312b4]{border-bottom:1px solid var(--border);flex-direction:column;gap:1.1rem;padding:1.5rem 0;display:flex}.profile-section[data-v-7ac312b4]:first-child{padding-top:.25rem}.profile-section[data-v-7ac312b4]:last-child{border-bottom:none;padding-bottom:0}.section-heading[data-v-7ac312b4]{color:var(--text-main);text-transform:uppercase;letter-spacing:.04em;-webkit-text-fill-color:var(--text-main);background:0 0;align-items:baseline;gap:.6rem;margin:0;font-size:.9rem;font-weight:800;display:flex}.section-heading-en[data-v-7ac312b4]{color:var(--text-mute);text-transform:none;letter-spacing:0;font-size:.72rem;font-weight:500}.avatar-grid[data-v-7ac312b4]{flex-wrap:wrap;gap:.65rem;display:flex}.avatar-option[data-v-7ac312b4]{border:2px solid var(--border);background:var(--input-bg);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:3.2rem;height:3.2rem;font-size:1.5rem;transition:all .15s;display:flex}.avatar-option.selected[data-v-7ac312b4]{border-color:var(--primary-blue);box-shadow:0 0 0 3px rgba(var(--primary-blue-rgb), .18);transform:scale(1.1)}.avatar-option[data-v-7ac312b4]:hover:not(.selected){border-color:var(--primary-blue);transform:scale(1.05)}.form-row[data-v-7ac312b4]{grid-template-columns:1fr 1fr;gap:1rem 1.25rem;display:grid}.form-row-3[data-v-7ac312b4]{grid-template-columns:1fr 1fr 1fr;gap:1rem 1.25rem;display:grid}.form-group[data-v-7ac312b4]{text-align:left;flex-direction:column;gap:.45rem;min-width:0;display:flex}.form-group label[data-v-7ac312b4]{color:var(--text-mute);text-transform:uppercase;letter-spacing:.06em;flex-direction:column;gap:.1rem;padding-left:.75rem;font-size:.72rem;font-weight:700;display:flex}.label-thai[data-v-7ac312b4]{color:var(--text-mute);text-transform:none;letter-spacing:0;opacity:.9;font-size:.72rem;font-weight:500}.age-group-options[data-v-7ac312b4]{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.age-option-card[data-v-7ac312b4]{border:2px solid var(--border);cursor:pointer;background:var(--input-bg);border-radius:.85rem;align-items:center;gap:.75rem;min-height:44px;padding:.85rem 1rem;transition:all .2s;display:flex}.age-option-card input[type=radio][data-v-7ac312b4]{display:none}.age-option-card.selected[data-v-7ac312b4]{border-color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .05)}.age-option-card[data-v-7ac312b4]:hover:not(.selected){border-color:rgba(var(--primary-blue-rgb), .35)}.age-option-content[data-v-7ac312b4]{flex-direction:column;gap:.05rem;display:flex}.age-range[data-v-7ac312b4]{color:var(--text-main);font-size:1.05rem;font-weight:800;line-height:1.1}.age-desc[data-v-7ac312b4]{color:var(--text-mute);font-size:.72rem;font-weight:500}.section-action-row[data-v-7ac312b4]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:.5rem;display:flex}.feedback-inline[data-v-7ac312b4]{min-height:1.4rem;color:var(--text-main);flex:1;font-size:.88rem;font-weight:500}.feedback-error[data-v-7ac312b4]{color:var(--secondary-red)!important}.feedback-success[data-v-7ac312b4]{color:#059669!important}.save-btn[data-v-7ac312b4]{flex-direction:column;flex-shrink:0;height:auto;min-height:44px;padding:.6rem 1.75rem;line-height:1.3}.btn-sub[data-v-7ac312b4]{opacity:.8;font-size:.68rem}@media (width<=599px){.modal-backdrop[data-v-7ac312b4]{align-items:flex-end;padding:0}.modal-panel[data-v-7ac312b4]{border-radius:1.25rem 1.25rem 0 0;max-width:100%;max-height:94vh;border-bottom:none!important}.modal-header[data-v-7ac312b4]{padding:1.1rem 1.25rem 1rem}.modal-body[data-v-7ac312b4]{padding:1.1rem 1.25rem 1.5rem}.form-row[data-v-7ac312b4],.form-row-3[data-v-7ac312b4]{grid-template-columns:1fr}.age-group-options[data-v-7ac312b4]{grid-template-columns:1fr 1fr}.section-action-row[data-v-7ac312b4]{flex-direction:column;align-items:stretch}.save-btn[data-v-7ac312b4]{justify-content:center;width:100%}}@media (width>=600px) and (width<=860px){.form-row-3[data-v-7ac312b4]{grid-template-columns:1fr 1fr}}.google-connected-badge[data-v-7ac312b4]{background:#10b98114;border:1px solid #10b98140;border-radius:.75rem;align-items:center;gap:.75rem;width:100%;max-width:450px;padding:.75rem 1.25rem;display:flex}.connected-icon[data-v-7ac312b4]{color:#fff;background:#10b981;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.8rem;font-weight:700;display:flex}.connected-info[data-v-7ac312b4]{flex-direction:column;gap:.1rem;display:flex}.connected-title[data-v-7ac312b4]{color:var(--text-main);font-size:.88rem;font-weight:700}.connected-email[data-v-7ac312b4]{color:var(--text-mute);font-size:.8rem;font-weight:500}.google-link-action-container[data-v-7ac312b4]{width:100%}.passkeys-list[data-v-7ac312b4]{flex-direction:column;gap:.65rem;width:100%;max-width:450px;display:flex}.passkey-item[data-v-7ac312b4]{background:var(--input-bg);border:1px solid var(--border);box-sizing:border-box;border-radius:.75rem;align-items:center;gap:.75rem;width:100%;padding:.65rem 1rem;display:flex}.passkey-item-icon[data-v-7ac312b4]{font-size:1.25rem}.passkey-item-details[data-v-7ac312b4]{flex-direction:column;gap:.1rem;display:flex}.passkey-item-name[data-v-7ac312b4]{color:var(--text-main);font-size:.85rem;font-weight:700}.passkey-item-date[data-v-7ac312b4]{color:var(--text-mute);font-size:.75rem;font-weight:500}.passkey-actions[data-v-7ac312b4]{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.audio-player-widget[data-v-5b6a4ad8]{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:0 4px 16px var(--glass-shadow);box-sizing:border-box;border-radius:9999px;justify-content:space-between;align-items:center;gap:.75rem;width:100%;max-width:480px;padding:.5rem .8rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.audio-player-widget.is-playing[data-v-5b6a4ad8]{border-color:var(--primary-blue);box-shadow:0 0 15px rgba(var(--primary-blue-rgb), .15)}.audio-player-widget.disabled[data-v-5b6a4ad8]{opacity:.5;cursor:not-allowed}.player-left[data-v-5b6a4ad8]{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.player-right[data-v-5b6a4ad8]{flex-shrink:0}.play-trigger-btn[data-v-5b6a4ad8]{cursor:pointer;box-shadow:0 2px 8px rgba(var(--primary-blue-rgb), .15);transition:all .25s cubic-bezier(.4,0,.2,1);color:var(--primary-blue)!important;appearance:none!important;aspect-ratio:1!important;box-sizing:border-box!important;background:#e0f2fe!important;border:0!important;border-radius:50%!important;outline:none!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important;padding:0!important;display:inline-flex!important;overflow:hidden!important}.play-trigger-btn[data-v-5b6a4ad8]:hover:not(:disabled){box-shadow:0 0 12px rgba(var(--primary-blue-rgb), .3);transform:scale(1.08);background:#bae6fd!important}.play-trigger-btn[data-v-5b6a4ad8]:disabled{cursor:not-allowed;box-shadow:none;background:var(--border)!important;color:var(--text-mute)!important}html.dark{opacity:.9;background:var(--primary-blue)!important;color:#fff!important;background:var(--primary-blue)!important}.play-icon[data-v-5b6a4ad8],.stop-icon[data-v-5b6a4ad8]{justify-content:center;align-items:center;width:100%;height:100%;font-size:.9rem;line-height:1;display:inline-flex}.player-label[data-v-5b6a4ad8]{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:800}.audio-wave-bars[data-v-5b6a4ad8]{flex-shrink:0;align-items:center;gap:3px;height:20px;display:flex}.bar[data-v-5b6a4ad8]{background:var(--primary-blue);border-radius:99px;width:3px;height:4px;animation:1.2s ease-in-out infinite wavePulse-5b6a4ad8;display:inline-block}@keyframes wavePulse-5b6a4ad8{0%,to{height:4px}50%{height:18px}}.bar-1[data-v-5b6a4ad8]{animation-delay:.1s}.bar-2[data-v-5b6a4ad8]{animation-delay:.3s}.bar-3[data-v-5b6a4ad8]{animation-delay:.5s}.bar-4[data-v-5b6a4ad8]{animation-delay:.2s}.speed-toggle-btn[data-v-5b6a4ad8]{background:rgba(var(--primary-blue-rgb), .05);border:1px solid var(--border);color:var(--text-main);box-sizing:border-box;padding:.35rem .9rem;font-size:.75rem;font-weight:700}.speed-toggle-btn[data-v-5b6a4ad8]:hover:not(:disabled){background:rgba(var(--primary-blue-rgb), .08);border-color:var(--primary-blue)}.speed-toggle-btn.is-slow[data-v-5b6a4ad8]{color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .05);border-color:rgba(var(--secondary-red-rgb), .15)}.speed-toggle-btn.is-slow[data-v-5b6a4ad8]:hover:not(:disabled){background:rgba(var(--secondary-red-rgb), .08);border-color:var(--secondary-red)}@media (width<=480px){.audio-player-widget[data-v-5b6a4ad8]{gap:.4rem;padding:.35rem .6rem}.player-info[data-v-5b6a4ad8]{display:none}.play-trigger-btn[data-v-5b6a4ad8]{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important}.speed-toggle-btn[data-v-5b6a4ad8]{padding:.25rem .5rem;font-size:.7rem}.audio-wave-bars[data-v-5b6a4ad8]{gap:2px;height:16px}.bar[data-v-5b6a4ad8]{width:2px}}.studycast-widget[data-v-4b93e0b4]{flex-direction:column;gap:1rem;margin-top:1rem;padding:1.5rem;animation:.4s ease-out fadeIn;display:flex}.sc-header[data-v-4b93e0b4]{align-items:center;gap:1rem;display:flex}.sc-icon[data-v-4b93e0b4]{font-size:2rem}.sc-titles h3[data-v-4b93e0b4]{color:var(--text-color,#fff);margin:0;font-size:1.25rem}.sub-title[data-v-4b93e0b4]{opacity:.8;font-size:.9rem}.sc-week-badge[data-v-4b93e0b4]{background:var(--primary-blue,#3b82f6);color:#fff;border-radius:9999px;margin-left:auto;padding:.25rem .75rem;font-size:.875rem;font-weight:600}.sc-tagline[data-v-4b93e0b4]{color:#10b981;margin-top:-.5rem;font-size:.875rem;font-weight:500}.sc-player-controls[data-v-4b93e0b4]{background:#0003;border-radius:12px;align-items:center;gap:1rem;padding:1rem;display:flex}.play-btn[data-v-4b93e0b4]{min-width:100px}.sc-listening-text[data-v-4b93e0b4]{color:var(--text-color,#fff);opacity:.9;font-size:.95rem}.sc-nudge-message[data-v-4b93e0b4]{border-left:4px solid var(--danger-red,#ef4444);background:#ef44441a;border-radius:4px 12px 12px 4px;padding:1rem}.eng-nudge[data-v-4b93e0b4]{color:var(--text-color,#fff);margin:0 0 .5rem;font-size:.95rem}.thai-nudge[data-v-4b93e0b4]{opacity:.8;margin:0;font-size:.9rem}.dashboard-container[data-v-07c2e8f1]{box-sizing:border-box;width:100%}.dashboard-grid[data-v-07c2e8f1]{grid-template-columns:1.4fr 1fr;align-items:start;gap:2rem;width:100%;display:grid}.pathway-progress-column[data-v-07c2e8f1]{flex-direction:column;gap:1.5rem;width:100%;display:flex}.glance-and-word-section[data-v-07c2e8f1]{flex-direction:column;gap:1.5rem;display:flex}.dashboard-top-row[data-v-07c2e8f1]{grid-template-columns:1.2fr 1fr;gap:2rem;width:100%;margin-bottom:2rem;display:grid}@media (width<=900px){.dashboard-top-row[data-v-07c2e8f1]{grid-template-columns:1fr;gap:1.5rem}}.daily-review-alert-banner[data-v-07c2e8f1]{box-sizing:border-box;text-align:left;border-left:5px solid var(--secondary-red);background:linear-gradient(135deg,#ef44440f 0%,#ef444403 100%);flex-direction:column;justify-content:center;height:100%;padding:1.8rem;display:flex}.daily-review-alert-banner.success[data-v-07c2e8f1]{background:linear-gradient(135deg,#10b9810f 0%,#10b98103 100%);border-left-color:#10b981}.alert-recommendation-badge.success-badge[data-v-07c2e8f1]{color:#10b981}.alert-cta-btn.success-btn[data-v-07c2e8f1]{color:#fff!important;background:#10b981!important;border:1px solid #10b981!important}.alert-cta-btn.success-btn span[data-v-07c2e8f1]{color:#fff!important}.alert-cta-btn.success-btn[data-v-07c2e8f1]:hover{background:#059669!important;border-color:#059669!important;box-shadow:0 0 15px #10b98166!important}.alert-banner-content[data-v-07c2e8f1]{justify-content:space-between;align-items:center;gap:2rem;width:100%;display:flex}.alert-left[data-v-07c2e8f1]{flex-direction:column;gap:.3rem;display:flex}.alert-recommendation-badge[data-v-07c2e8f1]{color:var(--secondary-red);letter-spacing:.05em;font-size:.72rem;font-weight:800}.alert-title[data-v-07c2e8f1]{color:var(--text-main);margin:0;font-size:1.25rem;font-weight:700}.alert-title-thai[data-v-07c2e8f1]{color:var(--text-mute);font-size:.8rem}.alert-desc[data-v-07c2e8f1]{color:var(--text-mute);max-width:600px;margin:.2rem 0 0;font-size:.88rem;line-height:1.4}.alert-cta-btn[data-v-07c2e8f1]{flex-shrink:0;background:var(--secondary-red)!important;color:#fff!important}.alert-cta-btn span[data-v-07c2e8f1]{color:#fff!important}.alert-cta-btn[data-v-07c2e8f1]:hover{transform:translateY(-1px);box-shadow:0 0 15px #ef444466!important}.active-lesson-hero-banner[data-v-07c2e8f1]{box-sizing:border-box;text-align:left;border-left:5px solid var(--primary-blue);background:linear-gradient(135deg, rgba(var(--primary-blue-rgb), .06) 0%, rgba(var(--primary-blue-rgb), .01) 100%);flex-direction:column;justify-content:center;height:100%;padding:2.2rem;display:flex}.active-lesson-hero-banner.complete[data-v-07c2e8f1]{background:linear-gradient(135deg,#10b9810f 0%,#10b98103 100%);border-left-color:#10b981;padding:3rem 2rem}.hero-banner-content[data-v-07c2e8f1]{justify-content:space-between;align-items:center;gap:2rem;display:flex}.hero-left[data-v-07c2e8f1]{flex-direction:column;gap:.4rem;display:flex}.hero-recommendation-badge[data-v-07c2e8f1]{color:var(--primary-blue);letter-spacing:.05em;font-size:.72rem;font-weight:800}.hero-unit-title[data-v-07c2e8f1]{color:var(--text-mute);font-size:.8rem;font-weight:700}.hero-lesson-title[data-v-07c2e8f1]{color:var(--text-main);margin:0;font-size:2.2rem;font-weight:800;line-height:1.1}.hero-lesson-title-thai[data-v-07c2e8f1]{color:var(--primary-blue);margin-top:.1rem;font-size:1.15rem;font-weight:700}.hero-lesson-desc[data-v-07c2e8f1]{color:var(--text-mute);max-width:480px;margin-top:.6rem;font-size:.88rem;line-height:1.4}.hero-cta-btn[data-v-07c2e8f1]{flex-shrink:0;padding:.8rem 2rem}.learning-pathway-section[data-v-07c2e8f1]{box-sizing:border-box;text-align:left;padding:2rem}.pathway-header[data-v-07c2e8f1]{margin-bottom:2rem}.pathway-header h3[data-v-07c2e8f1]{color:var(--text-main);margin:0;font-size:1.3rem}.pathway-sub[data-v-07c2e8f1]{color:var(--text-mute);margin-top:.15rem;font-size:.8rem}.units-timeline-container[data-v-07c2e8f1]{flex-direction:column;gap:2rem;width:100%;display:flex}.unit-group-timeline[data-v-07c2e8f1]{flex-direction:column;gap:1.5rem;width:100%;display:flex}.unit-timeline-header-card[data-v-07c2e8f1]{border:1px solid var(--border);border-left:4px solid var(--primary-blue);text-align:left;cursor:pointer;background:#ffffff05;border-radius:12px;padding:1.25rem 1.5rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.unit-timeline-header-card[data-v-07c2e8f1]:hover{background:rgba(var(--primary-blue-rgb), .04);border-color:rgba(var(--primary-blue-rgb), .2);box-shadow:0 4px 12px rgba(var(--primary-blue-rgb), .05);transform:translateY(-1px)}.unit-timeline-header-card.unit-locked[data-v-07c2e8f1]{opacity:.55;border-left-color:var(--border)}.unit-timeline-header-card.unit-locked[data-v-07c2e8f1]:hover{border-color:var(--border);box-shadow:none;background:#ffffff08;transform:none}.unit-header-meta[data-v-07c2e8f1]{text-transform:uppercase;letter-spacing:.05em;color:var(--text-mute);justify-content:space-between;margin-bottom:.25rem;font-size:.72rem;font-weight:800;display:flex}.unit-number-tag[data-v-07c2e8f1]{color:var(--primary-blue)}.unit-title-eng[data-v-07c2e8f1]{color:var(--text-main);margin:0;font-size:1.1rem;font-weight:700}.unit-title-thai[data-v-07c2e8f1]{color:var(--text-mute);margin-top:.1rem;font-size:.78rem}.lessons-vertical-timeline[data-v-07c2e8f1]{flex-direction:column;padding-left:2.2rem;display:flex;position:relative}.lesson-timeline-node-item[data-v-07c2e8f1]{align-items:flex-start;gap:1.5rem;padding-bottom:1.5rem;display:flex;position:relative}.lesson-timeline-node-item[data-v-07c2e8f1]:last-child{padding-bottom:.5rem}.timeline-line-connector[data-v-07c2e8f1]{background:var(--border);z-index:1;width:2px;position:absolute;top:1.8rem;bottom:0;left:-1.45rem}.lesson-timeline-node-item:last-child .timeline-line-connector[data-v-07c2e8f1]{display:none}.lesson-timeline-node-item.completed .timeline-line-connector[data-v-07c2e8f1]{background:#10b981}.node-bullet-wrapper[data-v-07c2e8f1]{z-index:2;cursor:pointer;position:absolute;top:.4rem;left:-2.1rem}.node-bullet-core[data-v-07c2e8f1]{border:2px solid var(--border);background:var(--bg);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:800;transition:all .25s;display:flex}.completed .node-bullet-core[data-v-07c2e8f1]{color:#fff;background:#10b981;border-color:#10b981}.active .node-bullet-core[data-v-07c2e8f1]{border-color:var(--primary-blue);background:var(--bg);box-shadow:0 0 0 4px rgba(var(--primary-blue-rgb), .12)}.bullet-check[data-v-07c2e8f1]{line-height:1}.bullet-lock[data-v-07c2e8f1]{color:var(--text-mute);font-size:.6rem}.bullet-active-indicator[data-v-07c2e8f1]{background:var(--primary-blue);border-radius:50%;width:8px;height:8px}.lesson-node-card-body[data-v-07c2e8f1]{border:1px solid var(--border);background:var(--glass-bg);cursor:pointer;text-align:left;border-radius:10px;flex:1;padding:1rem 1.25rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.lesson-node-card-body[data-v-07c2e8f1]:hover:not(.locked){border-color:var(--primary-blue);box-shadow:0 4px 12px var(--glass-shadow);transform:translateY(-2px)}.lesson-node-card-body.active[data-v-07c2e8f1]{border-color:var(--primary-blue);background:linear-gradient(90deg, rgba(var(--primary-blue-rgb), .03) 0%, #fff0 100%);box-shadow:0 4px 15px rgba(var(--primary-blue-rgb), .08)}.lesson-node-card-body.locked[data-v-07c2e8f1]{opacity:.5;cursor:not-allowed}.lesson-number-sub[data-v-07c2e8f1]{color:var(--text-mute);text-transform:uppercase;font-size:.68rem;font-weight:800}.lesson-node-title[data-v-07c2e8f1]{color:var(--text-main);margin:0;font-size:.95rem;font-weight:700;line-height:1.25}.lesson-node-title-thai[data-v-07c2e8f1]{color:var(--text-mute);margin-top:.05rem;font-size:.72rem}.lesson-node-stats-bar[data-v-07c2e8f1]{gap:.4rem;margin-top:.5rem;display:flex}.lesson-stat-pill[data-v-07c2e8f1]{border:1px solid var(--border);color:var(--text-mute);background:#00000008;border-radius:4px;padding:.1rem .4rem;font-size:.65rem;font-weight:700}html.dark .lesson-stat-pill[data-v-07c2e8f1]{background:#ffffff08}.gamification-card[data-v-07c2e8f1]{padding:1rem}.gamification-grid[data-v-07c2e8f1]{grid-template-columns:1fr 1fr 1fr;gap:.5rem;display:grid}.gamification-item[data-v-07c2e8f1]{background:rgba(var(--primary-blue-rgb), .02);border:1px solid var(--border);border-radius:9999px;align-items:center;gap:.5rem;padding:.5rem .75rem;transition:all .2s;display:flex}.gamification-item[data-v-07c2e8f1]:hover{border-color:var(--primary-blue);transform:translateY(-1px)}.gamification-item.shield-stat.shield-active[data-v-07c2e8f1]{background:#10b9810a;border-color:#10b98133}.flame-normal[data-v-07c2e8f1]{filter:drop-shadow(0 0 2px #ff960066)}.flame-bronze[data-v-07c2e8f1]{filter:drop-shadow(0 0 4px #cd7f3299)}.flame-silver[data-v-07c2e8f1]{filter:drop-shadow(0 0 6px #c0c0c0cc)}.flame-gold[data-v-07c2e8f1]{filter:drop-shadow(0 0 8px #ffd700e6);animation:2s ease-in-out infinite gold-pulse-07c2e8f1;display:inline-block}@keyframes gold-pulse-07c2e8f1{0%{filter:drop-shadow(0 0 8px #ffd70099);transform:scale(1)}50%{filter:drop-shadow(0 0 12px gold);transform:scale(1.15)}to{filter:drop-shadow(0 0 8px #ffd70099);transform:scale(1)}}.g-icon[data-v-07c2e8f1]{font-size:1.2rem}.g-info[data-v-07c2e8f1]{text-align:left;flex-direction:column;line-height:1.1;display:flex}.g-val[data-v-07c2e8f1]{color:var(--text-main);font-size:.8rem;font-weight:800}.g-label[data-v-07c2e8f1]{color:var(--text-mute);font-size:.6rem}.activity-tile.conversation-tile[data-v-07c2e8f1]{box-sizing:border-box;cursor:pointer;text-align:left;border-left:4px solid var(--primary-blue);background:linear-gradient(135deg, rgba(var(--primary-blue-rgb), .02) 0%, #fff0 100%);flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.activity-tile.conversation-tile[data-v-07c2e8f1]:hover{border-color:var(--primary-blue);box-shadow:0 4px 12px var(--glass-shadow);transform:translateY(-2px)}.tile-left-content[data-v-07c2e8f1]{align-items:center;gap:.75rem;display:flex}.tile-icon[data-v-07c2e8f1]{font-size:1.8rem}.tile-titles h3[data-v-07c2e8f1]{margin:0;font-size:1.1rem}.tile-title-thai[data-v-07c2e8f1]{font-size:.75rem}.conversation-indicator[data-v-07c2e8f1]{border:1px dashed var(--border);box-sizing:border-box;background:#00000003;border-radius:6px;flex-direction:column;gap:.15rem;width:100%;padding:.5rem .8rem;display:flex}html.dark .conversation-indicator[data-v-07c2e8f1]{background:#ffffff03}.module-status[data-v-07c2e8f1]{color:var(--text-mute);font-size:.62rem;font-weight:800}.module-name[data-v-07c2e8f1]{align-items:center;gap:.4rem;font-size:.88rem;font-weight:800;display:flex}.module-name-thai[data-v-07c2e8f1]{color:var(--text-mute);font-size:.72rem}.conversation-btn[data-v-07c2e8f1]{width:100%;padding:.5rem;background:var(--primary-blue)!important;border-color:var(--primary-blue)!important}.conversation-btn[data-v-07c2e8f1]:hover{box-shadow:0 0 15px rgba(var(--primary-blue-rgb), .4)!important}.skills-glance-card[data-v-07c2e8f1]{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.card-titles[data-v-07c2e8f1]{text-align:left}.card-titles h3[data-v-07c2e8f1]{margin:0;font-size:1.1rem}.skills-progress-grid[data-v-07c2e8f1]{flex-direction:column;gap:.85rem;display:flex}.skill-progress-item[data-v-07c2e8f1]{flex-direction:column;gap:.3rem;display:flex}.skill-info[data-v-07c2e8f1]{justify-content:space-between;font-size:.78rem;font-weight:700;display:flex}.sk-bar-track[data-v-07c2e8f1]{background:#0000000a;border-radius:99px;width:100%;height:5px;overflow:hidden}.sk-bar-fill[data-v-07c2e8f1]{background:var(--primary-blue);border-radius:99px;height:100%}.word-card[data-v-07c2e8f1]{text-align:left;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.card-header-badge[data-v-07c2e8f1]{flex-direction:column;display:flex}.badge-tag[data-v-07c2e8f1]{color:var(--primary-blue);letter-spacing:.05em;font-size:.7rem;font-weight:800}.badge-tag-thai[data-v-07c2e8f1]{color:var(--text-mute);font-size:.6rem}.word-english[data-v-07c2e8f1]{word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;margin:0;font-size:clamp(1.6rem,7vw,2.2rem);font-weight:800}.word-pronunciation-guides[data-v-07c2e8f1]{flex-wrap:wrap;gap:.4rem;margin:.4rem 0;display:flex}.thai-pron-badge[data-v-07c2e8f1]{color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .05);border-radius:4px;padding:.15rem .5rem;font-size:.8rem;font-weight:700}.ipa-badge[data-v-07c2e8f1]{font-size:.75rem;font-family:var(--mono);color:var(--text-mute);background:#00000005;border-radius:4px;padding:.15rem .5rem}.word-thai-meaning[data-v-07c2e8f1]{color:var(--text-main);font-size:1.1rem;font-weight:700;display:block}.phrase-show-box[data-v-07c2e8f1]{background:rgba(var(--primary-blue-rgb), .02);border-left:3px solid var(--primary-blue);border-radius:8px;flex-direction:column;gap:.25rem;padding:1rem;display:flex}.phrase-label[data-v-07c2e8f1]{color:var(--text-mute);font-size:.68rem;font-weight:800}.phrase-english[data-v-07c2e8f1]{margin:0;font-size:.95rem;font-weight:700}.phrase-thai-meaning[data-v-07c2e8f1]{color:var(--text-mute);margin:0;font-size:.8rem}.audio-player-row-center[data-v-07c2e8f1]{justify-content:center;width:100%;margin:1.25rem 0;display:flex}.animate-fade-in[data-v-07c2e8f1]{animation:.4s ease-out forwards fadeIn-07c2e8f1}@keyframes fadeIn-07c2e8f1{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-pulse[data-v-07c2e8f1]{animation:2s infinite pulseNode-07c2e8f1}@keyframes pulseNode-07c2e8f1{0%{box-shadow:0 0 0 0 rgba(var(--primary-blue-rgb), .4);transform:scale(1)}70%{box-shadow:0 0 0 6px rgba(var(--primary-blue-rgb), 0);transform:scale(1.05)}to{box-shadow:0 0 0 0 rgba(var(--primary-blue-rgb), 0);transform:scale(1)}}@media (width<=900px){.dashboard-grid[data-v-07c2e8f1]{grid-template-columns:1fr}}.dashboard-welcome-hero[data-v-07c2e8f1]{box-sizing:border-box;justify-content:space-between;align-items:center;gap:2rem;width:100%;margin-bottom:2rem;padding:1.5rem 2rem;display:flex}.welcome-hero-left[data-v-07c2e8f1]{text-align:left;flex:1}.welcome-header[data-v-07c2e8f1]{color:var(--text-main);margin:0;font-size:1.8rem;font-weight:800}.h1-thai-compact[data-v-07c2e8f1]{color:var(--text-mute);margin-top:.15rem;font-size:.9rem;display:block}.welcome-mastery-status[data-v-07c2e8f1]{flex-direction:column;gap:.35rem;max-width:400px;margin-top:1rem;display:flex}.mastery-label-row-compact[data-v-07c2e8f1]{color:var(--text-main);justify-content:space-between;font-size:.88rem;font-weight:700;display:flex}.mastery-bar-track-compact[data-v-07c2e8f1]{background:#ffffff14;border-radius:4px;width:100%;height:8px;overflow:hidden}html.dark .mastery-bar-track-compact[data-v-07c2e8f1]{background:#ffffff0d}.mastery-bar-fill-compact[data-v-07c2e8f1]{border-radius:4px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.mastery-thai-compact[data-v-07c2e8f1]{color:var(--text-mute);font-size:.75rem}.welcome-hero-right[data-v-07c2e8f1]{flex:1;justify-content:flex-end;display:flex}.welcome-xp-goal[data-v-07c2e8f1]{text-align:left;border-left:1px solid var(--border);align-items:center;gap:1.5rem;padding-left:1.5rem;display:flex}.xp-goal-ring-wrapper[data-v-07c2e8f1]{flex-shrink:0;justify-content:center;align-items:center;width:70px;height:70px;display:flex;position:relative}.progress-ring-svg[data-v-07c2e8f1]{transform:rotate(-90deg)}.progress-ring-fg[data-v-07c2e8f1]{transform-origin:50%;transition:stroke-dashoffset .35s}.xp-ring-text[data-v-07c2e8f1]{flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute}.xp-earned-num[data-v-07c2e8f1]{color:var(--text-main);font-size:1.2rem;font-weight:800}.xp-lbl[data-v-07c2e8f1]{color:var(--text-mute);text-transform:uppercase;font-size:.65rem;font-weight:800}.xp-start-msg[data-v-07c2e8f1]{color:var(--color-accent);margin-top:2px;font-size:.65rem;font-weight:700}.xp-goal-labels[data-v-07c2e8f1]{flex-direction:column;gap:.15rem;display:flex}.xp-goal-title[data-v-07c2e8f1]{color:var(--text-main);font-size:.85rem;font-weight:700}.xp-goal-desc[data-v-07c2e8f1]{color:var(--text-mute);font-size:.78rem}.xp-goal-desc.completed[data-v-07c2e8f1]{color:#10b981;font-weight:700}@media (width<=850px){.dashboard-welcome-hero[data-v-07c2e8f1]{flex-direction:column;align-items:stretch;gap:1.5rem;padding:1.25rem}.welcome-hero-right[data-v-07c2e8f1]{justify-content:flex-start}.welcome-xp-goal[data-v-07c2e8f1]{border-left:none;border-top:1px solid var(--border);width:100%;padding-top:1rem;padding-left:0}.hero-banner-content[data-v-07c2e8f1],.alert-banner-content[data-v-07c2e8f1]{flex-direction:column;align-items:stretch;gap:1.25rem}.hero-right-action[data-v-07c2e8f1],.alert-right-action[data-v-07c2e8f1]{width:100%}.hero-cta-btn[data-v-07c2e8f1],.alert-cta-btn[data-v-07c2e8f1]{box-sizing:border-box;width:100%}.active-lesson-hero-banner[data-v-07c2e8f1],.daily-review-alert-banner[data-v-07c2e8f1]{padding:1.5rem 1.25rem}}.clickable-card[data-v-07c2e8f1]{cursor:pointer;transition:transform .2s,box-shadow .2s}.clickable-card[data-v-07c2e8f1]:hover{transform:translateY(-2px)scale(1.01);box-shadow:0 8px 24px #0000001f}.card-header-with-badge[data-v-07c2e8f1]{justify-content:space-between;align-items:center;width:100%;display:flex}.cefr-badge-home[data-v-07c2e8f1]{border:1px solid var(--color-accent,#00bfff);background:#00bfff26;border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;min-width:45px;padding:.2rem .5rem;display:flex;box-shadow:0 0 10px #00bfff1a}.cefr-badge-home .cefr-label[data-v-07c2e8f1]{color:var(--color-text-mute,#fff9);letter-spacing:.05em;text-transform:uppercase;font-size:.55rem;font-weight:700}.cefr-badge-home .cefr-value[data-v-07c2e8f1]{color:var(--color-accent,#00bfff);font-size:1rem;font-weight:800}.goal-achieved-burst .progress-ring-fg[data-v-07c2e8f1]{animation:1s ease-out forwards strokePulse-07c2e8f1}@keyframes strokePulse-07c2e8f1{0%{opacity:1;transform:scale(1)}50%{opacity:.8;stroke:#10b981;transform:scale(1.1)}to{opacity:1;stroke:#10b981;transform:scale(1)}}.goal-toast-banner[data-v-07c2e8f1]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;color:#fff;background:#10b981f2;border-radius:999px;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex;position:absolute;top:1rem;left:50%;transform:translate(-50%);box-shadow:0 10px 25px #10b98166}.animate-slide-down[data-v-07c2e8f1]{animation:.5s cubic-bezier(.175,.885,.32,1.275) forwards slideDownFade-07c2e8f1}@keyframes slideDownFade-07c2e8f1{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.toast-icon[data-v-07c2e8f1]{font-size:1.5rem}.toast-content[data-v-07c2e8f1]{flex-direction:column;display:flex}.toast-title[data-v-07c2e8f1]{font-size:.95rem;font-weight:800}.toast-thai[data-v-07c2e8f1]{opacity:.9;font-size:.75rem}.vocab-card-layout-wrapper[data-v-6fd5434d]{width:100%;container:vocab-card/inline-size}.front-img-size[data-v-6fd5434d]{object-fit:cover;width:auto;max-height:200px!important}.offline-badge[data-v-6fd5434d]{color:#fca5a5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ef44441a;border:1px solid #ef444466;border-radius:9999px;align-items:center;gap:.35rem;margin-top:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:500;display:inline-flex}.review-session[data-v-6fd5434d]{flex-direction:column;gap:1.25rem;width:100%;padding-bottom:3rem;display:flex}.session-header[data-v-6fd5434d]{align-items:center;gap:1rem;display:flex}.header-title[data-v-6fd5434d]{flex:1}.header-title h2[data-v-6fd5434d]{flex-direction:column;gap:.1rem;margin:0;font-size:1.4rem;display:flex}.header-title .thai-translation[data-v-6fd5434d]{font-size:.8rem}.back-btn[data-v-6fd5434d]{flex-shrink:0;font-size:.85rem}.card-counter[data-v-6fd5434d]{color:var(--text-mute);flex-shrink:0;font-size:.9rem;font-weight:700}.progress-track[data-v-6fd5434d]{background:var(--border);border-radius:9999px;width:100%;height:6px;overflow:hidden}.progress-fill[data-v-6fd5434d]{background:var(--primary-blue);border-radius:9999px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.state-panel[data-v-6fd5434d]{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:3rem 2rem;display:flex}.done-icon[data-v-6fd5434d]{font-size:3rem}.all-done-state h3[data-v-6fd5434d],.summary-state h3[data-v-6fd5434d]{color:var(--text-main);margin:0;font-size:1.4rem}.error-state h3[data-v-6fd5434d]{color:var(--secondary-red);margin:0}.summary-grid[data-v-6fd5434d]{grid-template-columns:repeat(4,1fr);gap:.75rem;width:100%;max-width:480px;margin:.5rem 0;display:grid}.summary-chip[data-v-6fd5434d]{border:2px solid;border-radius:.75rem;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;display:flex}.summary-count[data-v-6fd5434d]{font-size:1.6rem;font-weight:800;line-height:1}.summary-label[data-v-6fd5434d]{color:var(--text-mute);text-align:center;font-size:.72rem;font-weight:700}.card-area[data-v-6fd5434d]{justify-content:center;width:100%;display:flex}.flip-card[data-v-6fd5434d]{perspective:1200px;cursor:pointer;width:100%;max-width:100%;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}@container vocab-card (width>=768px){.flip-inner[data-v-6fd5434d]{gap:2rem;display:flex}}.flip-card[data-v-6fd5434d]:hover{transform:translateY(-2px)scale(1.005)}.flip-inner[data-v-6fd5434d]{width:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.34,1.56,.64,1);position:relative}.flip-card.flipped .flip-inner[data-v-6fd5434d]{transform:rotateY(180deg)}.flip-face[data-v-6fd5434d]{box-sizing:border-box;backface-visibility:hidden;flex-direction:column;gap:.75rem;width:100%;min-height:320px;padding:1.25rem 1.5rem;display:flex;position:relative}.flip-card:not(.flipped) .flip-front[data-v-6fd5434d]{z-index:2;position:relative}.flip-card:not(.flipped) .flip-back[data-v-6fd5434d]{z-index:1;pointer-events:none;cursor:default;width:100%;height:100%;position:absolute;top:0;left:0;transform:rotateY(180deg);overflow:hidden!important}.flip-card.flipped .flip-front[data-v-6fd5434d]{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden!important}.flip-card.flipped .flip-back[data-v-6fd5434d]{z-index:2;cursor:default;position:relative;transform:rotateY(180deg)}.card-type-badge[data-v-6fd5434d]{align-items:center;gap:.75rem;display:flex}.card-type-badge>span[data-v-6fd5434d]:first-child{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.08em;background:rgba(var(--primary-blue-rgb), .08);border-radius:9999px;padding:.2rem .6rem;font-size:.72rem;font-weight:800}.card-category[data-v-6fd5434d]{color:var(--text-mute);font-size:.72rem;font-weight:600}.card-main-content[data-v-6fd5434d]{text-align:center;flex-direction:column;flex:1;justify-content:center;gap:.5rem;display:flex}.card-english[data-v-6fd5434d]{color:var(--text-main);margin:0;font-size:1.9rem;font-weight:800;line-height:1.25}.back-english[data-v-6fd5434d]{font-size:1.3rem}.card-phonetics[data-v-6fd5434d]{font-family:var(--mono);color:var(--secondary-red);margin:0;font-size:1rem;font-weight:600}.divider[data-v-6fd5434d]{background:var(--border);border-radius:9999px;width:60px;height:3px;margin:.25rem auto}.card-thai[data-v-6fd5434d]{color:var(--text-main);margin:0;font-size:1.5rem;font-weight:700;line-height:1.3}.card-thai-phonetic[data-v-6fd5434d]{color:var(--text-mute);margin:0;font-size:.88rem;font-weight:600}.example-phrase-box[data-v-6fd5434d]{background:rgba(var(--primary-blue-rgb), .04);border-left:3px solid var(--primary-blue);text-align:left;border-radius:0 .5rem .5rem 0;margin-top:.25rem;padding:.75rem 1rem}.example-label[data-v-6fd5434d]{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;font-weight:800}.example-english[data-v-6fd5434d]{color:var(--text-main);margin:.2rem 0 0;font-size:.88rem;font-style:italic;font-weight:700}.example-thai[data-v-6fd5434d]{color:var(--text-mute);margin:.15rem 0 0;font-size:.78rem}.key-vocab-list[data-v-6fd5434d]{flex-wrap:wrap;gap:.35rem;margin-top:.3rem;display:flex}.key-vocab-chip[data-v-6fd5434d]{background:rgba(var(--primary-blue-rgb), .08);color:var(--text-main);border-radius:9999px;padding:.15rem .5rem;font-size:.78rem;font-weight:600}.tts-row[data-v-6fd5434d]{justify-content:center;display:flex}.tts-icon-btn[data-v-6fd5434d]{background:var(--glass-bg);border:1px solid var(--border);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.1rem;transition:all .2s;display:flex}.tts-icon-btn[data-v-6fd5434d]:hover{border-color:var(--primary-blue);transform:scale(1.08)}.tts-icon-btn.active[data-v-6fd5434d]{background:var(--primary-blue);border-color:var(--primary-blue);animation:1.5s infinite pulse}.flip-hint[data-v-6fd5434d]{text-align:center;color:var(--text-mute);border-top:1px dashed var(--border);padding-top:.5rem;font-size:.82rem;font-weight:700}.rating-section[data-v-6fd5434d]{border-top:1px solid var(--border);flex-direction:column;gap:.5rem;padding-top:.75rem;display:flex}.rating-prompt[data-v-6fd5434d]{text-align:center;color:var(--text-mute);margin:0;font-size:.82rem;font-weight:700}.rating-buttons[data-v-6fd5434d]{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.rating-btn[data-v-6fd5434d]{border:2px solid var(--btn-color,var(--border));cursor:pointer;font-family:var(--sans);box-sizing:border-box;background:0 0;border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;width:100%;padding:.6rem .5rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.rating-btn[data-v-6fd5434d]:hover:not(:disabled){background:var(--btn-color);color:#fff;box-shadow:0 4px 14px color-mix(in srgb, var(--btn-color) 35%, transparent);transform:translateY(-2px)}.rating-btn[data-v-6fd5434d]:disabled{opacity:.5;cursor:not-allowed}.rating-label[data-v-6fd5434d]{color:var(--btn-color);font-size:.92rem;font-weight:800;line-height:1}.rating-btn:hover:not(:disabled) .rating-label[data-v-6fd5434d]{color:#fff}.rating-thai[data-v-6fd5434d]{color:var(--text-mute);font-size:.72rem;font-weight:600}.rating-btn:hover:not(:disabled) .rating-thai[data-v-6fd5434d]{color:#fffc}.rating-interval[data-v-6fd5434d]{color:var(--text-mute);font-size:.65rem;font-family:var(--mono)}.rating-btn:hover:not(:disabled) .rating-interval[data-v-6fd5434d]{color:#ffffffa6}@media (width<=560px){.flip-face[data-v-6fd5434d]{min-height:300px;padding:1.5rem 1.25rem}.card-english[data-v-6fd5434d]{font-size:1.5rem}.card-thai[data-v-6fd5434d]{font-size:1.2rem}.rating-buttons[data-v-6fd5434d],.summary-grid[data-v-6fd5434d]{grid-template-columns:repeat(2,1fr)}}.pronunciation-badge-row[data-v-6fd5434d]{flex-flow:wrap;justify-content:center;align-items:center;gap:.75rem;width:100%;margin-top:.5rem;display:flex}.thai-pron-badge[data-v-6fd5434d]{color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .08);border:1px solid rgba(var(--primary-blue-rgb), .15);box-shadow:0 2px 8px rgba(var(--primary-blue-rgb), .05);border-radius:9999px;padding:.25rem .75rem;font-size:.9rem;font-weight:700}.ipa-badge[data-v-6fd5434d]{font-size:.75rem;font-family:var(--mono);color:var(--text-mute);border:1px dashed var(--border);background:#00000008;border-radius:9999px;padding:.12rem .5rem}html.dark .ipa-badge[data-v-6fd5434d]{background:#ffffff08}.syllables-visualizer[data-v-6fd5434d]{flex-wrap:wrap;justify-content:center;gap:.4rem;width:100%;margin-top:1rem;display:flex}.syllable-block[data-v-6fd5434d]{background:var(--input-bg);border:1px solid var(--border);border-radius:.5rem;flex-direction:column;align-items:center;min-width:45px;padding:.35rem .7rem;transition:all .2s;display:flex;box-shadow:0 2px 6px #00000008}.syllable-block.stressed[data-v-6fd5434d]{border-color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .03);box-shadow:0 0 10px rgba(var(--secondary-red-rgb), .1);transform:translateY(-1px)}.syl-eng[data-v-6fd5434d]{color:var(--text-main);font-size:.95rem;font-weight:800}.syllable-block.stressed .syl-eng[data-v-6fd5434d]{color:var(--secondary-red)}.syl-thai[data-v-6fd5434d]{color:var(--text-mute);margin-top:.12rem;font-size:.75rem;font-weight:500}.accent-tip-row[data-v-6fd5434d]{text-align:center;width:100%;margin-top:.5rem}.accent-tip-text[data-v-6fd5434d]{color:var(--secondary-red);font-size:.7rem;font-weight:600}.ai-tutor-section[data-v-6fd5434d]{border-top:1px dashed var(--border);flex-direction:column;align-items:center;gap:.75rem;width:100%;margin-top:.75rem;padding-top:.75rem;display:flex}.ai-tutor-btn[data-v-6fd5434d]{flex-direction:column;height:auto;padding:.45rem 1.25rem;font-size:.78rem;line-height:1.2}.ai-tutor-skeleton[data-v-6fd5434d]{box-sizing:border-box;background:rgba(var(--primary-blue-rgb), .02);border:1px solid var(--border);border-radius:.75rem;flex-direction:column;gap:.4rem;width:100%;padding:1rem;animation:2s infinite pulse;display:flex}.skeleton-line[data-v-6fd5434d]{background:var(--border);border-radius:4px;width:100%;height:10px}.skeleton-line.short[data-v-6fd5434d]{width:70%}.ai-explanation-box[data-v-6fd5434d]{box-sizing:border-box;text-align:left;border-left:4px solid var(--primary-blue);background:rgba(var(--primary-blue-rgb), .02);flex-direction:column;gap:.5rem;width:100%;padding:1rem;display:flex}.ai-badge[data-v-6fd5434d]{color:var(--primary-blue);letter-spacing:.05em;text-transform:uppercase;font-size:.65rem;font-weight:800}.ai-explanation-content[data-v-6fd5434d]{color:var(--text-main);white-space:pre-wrap;font-size:.8rem;line-height:1.45}.ai-error-box[data-v-6fd5434d]{color:var(--secondary-red);font-size:.75rem;font-weight:600}.english-word-row[data-v-6fd5434d]{justify-content:center;align-items:center;gap:.75rem;width:100%;display:flex}.word-tts-controls[data-v-6fd5434d]{align-items:center;gap:.4rem;display:flex}.word-tts-btn[data-v-6fd5434d]{background:var(--glass-bg);border:1px solid var(--border);cursor:pointer;width:32px;height:32px;color:var(--text-main);box-sizing:border-box;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.9rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.word-tts-btn[data-v-6fd5434d]:hover{border-color:var(--primary-blue);background:var(--border-hover);transform:scale(1.1)}.word-tts-btn.btn-slow[data-v-6fd5434d]{font-size:.85rem}.example-phrase-row[data-v-6fd5434d]{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.75rem;width:100%;display:flex}.phrase-tts-controls[data-v-6fd5434d]{gap:.4rem;display:flex}.phrase-tts-btn[data-v-6fd5434d]{background:var(--glass-bg);border:1px solid var(--border);cursor:pointer;color:var(--text-main);border-radius:8px;padding:.2rem .5rem;font-size:.75rem;font-weight:700;transition:all .2s}.phrase-tts-btn[data-v-6fd5434d]:hover{border-color:var(--primary-blue);background:var(--border-hover)}.phrase-tts-btn.btn-slow[data-v-6fd5434d]{color:var(--secondary-red)}.phrase-tts-btn.btn-slow[data-v-6fd5434d]:hover{border-color:var(--secondary-red)}.english-word-container[data-v-6fd5434d]{width:100%}.phonetic-container[data-v-6fd5434d]{width:100%;margin-top:.5rem}.thai-word-container[data-v-6fd5434d]{flex-direction:column;align-items:center;width:100%;margin:1.25rem 0;display:flex}.example-section[data-v-6fd5434d]{flex-direction:column;align-items:center;gap:.75rem;width:100%;margin-top:.5rem;display:flex}.example-header-row[data-v-6fd5434d]{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;width:100%;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.example-title[data-v-6fd5434d]{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.05em;font-size:.88rem;font-weight:800}.example-content[data-v-6fd5434d]{opacity:0;text-align:center;width:100%;height:0;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.example-content.visible[data-v-6fd5434d]{opacity:1;height:auto;padding-top:.5rem}.vocab-card-layout-wrapper[data-v-6fd5434d]{justify-content:center;align-items:flex-start;width:100%;max-width:680px;margin:1.5rem auto;display:flex;position:relative}.flip-back .ai-tutor-tab[data-v-6fd5434d]{background:var(--primary-blue);color:#fff;border:1px solid var(--primary-blue);cursor:pointer;text-transform:uppercase;z-index:10;border-left:none;border-radius:0 12px 12px 0;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:48px;height:170px;padding:.5rem 0;font-size:.75rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:3.5rem;right:-48px;box-shadow:4px 4px 12px #00000026}.flip-back .ai-tutor-tab .tab-text[data-v-6fd5434d]{writing-mode:vertical-rl;text-orientation:mixed;display:inline-block}.flip-back .ai-tutor-tab .tutor-emoji[data-v-6fd5434d]{transform:rotate(90deg)}.flip-back .ai-tutor-tab[data-v-6fd5434d]:hover{background:var(--primary-blue-hover,#1d4ed8);width:52px;right:-52px}.spin-loading[data-v-6fd5434d]{animation:1s linear infinite spin-6fd5434d;display:inline-block}@keyframes spin-6fd5434d{to{transform:rotate(360deg)}}.ai-tutor-sidebar[data-v-6fd5434d]{display:none}@media (width>=1024px){.vocab-card-layout-wrapper[data-v-6fd5434d]{gap:1.5rem;max-width:1080px}.ai-tutor-sidebar[data-v-6fd5434d]{box-sizing:border-box;text-align:left;background:rgba(var(--primary-blue-rgb), .02);width:380px;min-height:420px;box-shadow:var(--shadow-sm);border-radius:1rem;flex-direction:column;align-self:stretch;gap:.75rem;padding:1.5rem;display:flex}.ai-tutor-sidebar-header[data-v-6fd5434d]{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;display:flex}.ai-tutor-close-btn[data-v-6fd5434d]{cursor:pointer;color:var(--text-mute);background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1;transition:color .2s}.ai-tutor-close-btn[data-v-6fd5434d]:hover{color:var(--secondary-red)}.ai-explanation-sidebar-box[data-v-6fd5434d]{flex:1;overflow-y:auto}.flip-inner .ai-tutor-section[data-v-6fd5434d]{display:none}}@media (width<=1023px){.vocab-card-layout-wrapper[data-v-6fd5434d]{width:100%;display:block}.ai-tutor-sidebar[data-v-6fd5434d],.ai-tutor-tab[data-v-6fd5434d]{display:none}.flip-inner .ai-tutor-section[data-v-6fd5434d]{display:flex}}.audio-player-row-center[data-v-6fd5434d]{justify-content:center;width:100%;margin:1.25rem 0;display:flex}.skeleton-wrapper[data-v-6fd5434d]{box-sizing:border-box;border-radius:20px;flex-direction:column;align-items:center;gap:1.5rem;width:100%;max-width:500px;min-height:380px;margin:0 auto;padding:2.5rem 2rem;display:flex}.skeleton-header-row[data-v-6fd5434d]{justify-content:space-between;width:100%;display:flex}.skeleton-badge[data-v-6fd5434d]{border-radius:10px;width:80px;height:20px}.skeleton-badge-right[data-v-6fd5434d]{border-radius:10px;width:60px;height:20px}.skeleton-word[data-v-6fd5434d]{border-radius:12px;width:70%;height:3.5rem;margin-top:1rem}.skeleton-audio[data-v-6fd5434d]{border-radius:50%;width:44px;height:44px;margin:.5rem 0}.skeleton-phrase[data-v-6fd5434d]{border-radius:6px;width:90%;height:1.2rem}.skeleton-footer-row[data-v-6fd5434d]{justify-content:center;width:100%;margin-top:1.5rem;display:flex}.skeleton-button[data-v-6fd5434d]{border-radius:9999px;width:140px;height:2.5rem}.skeleton-text[data-v-6fd5434d]{color:var(--text-mute);font-size:.85rem;animation:1.5s ease-in-out infinite pulse}.skeleton-loader[data-v-6fd5434d]{background:linear-gradient(90deg, rgba(var(--primary-blue-rgb), .05) 25%, rgba(var(--primary-blue-rgb), .12) 37%, rgba(var(--primary-blue-rgb), .05) 63%);background-size:400% 100%;animation:1.4s infinite skeleton-shimmer-6fd5434d}@keyframes skeleton-shimmer-6fd5434d{0%{background-position:100%}to{background-position:0%}}.vocab-image-wrapper[data-v-6fd5434d]{border:1px solid var(--border);background:#0000000d;border-radius:16px;justify-content:center;align-items:center;width:100%;max-width:400px;height:220px;margin:1rem auto;display:flex;position:relative;overflow:hidden}.vocab-img[data-v-6fd5434d]{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .3s ease-in-out}.vocab-img.visible[data-v-6fd5434d]{opacity:1}.image-shimmer[data-v-6fd5434d]{background:linear-gradient(90deg,#fff0 0%,#ffffff1a 20%,#fff3 60%,#fff0 100%) 0 0/200% 100%;animation:1.5s infinite shimmer-anim-6fd5434d;position:absolute;inset:0}@keyframes shimmer-anim-6fd5434d{0%{background-position:100% 0}to{background-position:-100% 0}}.focus-area-section[data-v-6fd5434d]{text-align:left;width:100%;max-width:480px;margin-top:1.5rem}.focus-title[data-v-6fd5434d]{color:var(--text-base);margin-bottom:.75rem;font-size:1rem;font-weight:600}.focus-list[data-v-6fd5434d]{flex-direction:column;gap:.5rem;display:flex}.focus-item-card[data-v-6fd5434d]{background:rgba(var(--primary-blue-rgb), .03);border:1px solid rgba(var(--primary-blue-rgb), .1);border-radius:12px;flex-direction:column;gap:.25rem;padding:.75rem 1rem;display:flex}.focus-item-type[data-v-6fd5434d]{text-transform:uppercase;letter-spacing:.05em;color:var(--primary-blue);font-size:.7rem;font-weight:700}.focus-item-content[data-v-6fd5434d]{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.focus-en[data-v-6fd5434d]{color:var(--text-base);font-size:1.1rem;font-weight:600}.focus-th[data-v-6fd5434d]{color:var(--text-mute);font-size:.95rem}.vocab-card-layout-wrapper[data-v-fe257740]{width:100%;container:vocab-card/inline-size}.vocab-card[data-v-fe257740]{box-sizing:border-box;text-align:center;flex-direction:column;gap:.85rem;width:100%;max-width:650px;margin:0;padding:1.5rem;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.vocab-card[data-v-fe257740]:hover{box-shadow:0 12px 36px var(--glass-shadow);transform:translateY(-4px)}.card-header[data-v-fe257740]{justify-content:space-between;align-items:flex-start;width:100%;font-size:.85rem;display:flex}.badge-container[data-v-fe257740],.mastery-badge-container[data-v-fe257740]{flex-direction:column;align-items:flex-start;display:flex}.mastery-badge-container[data-v-fe257740]{align-items:flex-end}.card-badge[data-v-fe257740]{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.mastery-badge[data-v-fe257740]{color:var(--text-main);background:rgba(var(--primary-blue-rgb), .05);border:1px solid var(--border);border-radius:4px;padding:.2rem .6rem;font-weight:600}.sub-badge-thai[data-v-fe257740]{margin-top:.05rem;font-size:.68rem}.sub-badge-thai.right[data-v-fe257740]{text-align:right}.english-word-container[data-v-fe257740],.phonetic-container[data-v-fe257740]{width:100%;margin-top:.25rem}.thai-word-container[data-v-fe257740]{flex-direction:column;align-items:center;gap:.5rem;width:100%;margin:1.25rem 0;display:flex}.english-word-row[data-v-fe257740]{justify-content:center;align-items:center;gap:.75rem;width:100%;display:flex}.english-word[data-v-fe257740]{color:var(--text-main);word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;margin:0;font-size:clamp(1.8rem,8vw,2.8rem);font-weight:800;line-height:1.1}@container vocab-card (width>=768px){.english-word[data-v-fe257740]{font-size:clamp(2.5rem,6vw,4rem)}}.bookmark-btn[data-v-fe257740]{border:1px solid var(--border);width:40px;height:40px;color:var(--text-main);cursor:pointer;background:#ffffff0d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;transition:all .2s;display:flex}.bookmark-btn[data-v-fe257740]:hover{background:#ffffff26;transform:scale(1.05)}.bookmark-btn.bookmarked[data-v-fe257740]{background:#10b98126;border-color:#10b981}.word-tts-controls[data-v-fe257740]{align-items:center;gap:.4rem;display:flex}.word-tts-btn[data-v-fe257740]{background:var(--glass-bg);border:1px solid var(--border);cursor:pointer;width:32px;height:32px;color:var(--text-main);box-sizing:border-box;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:.9rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.word-tts-btn[data-v-fe257740]:hover{border-color:var(--primary-blue);background:var(--border-hover);transform:scale(1.1)}.word-tts-btn.btn-slow[data-v-fe257740]{font-size:.85rem}.pronunciation-badge-row[data-v-fe257740]{flex-flow:wrap;justify-content:center;align-items:center;gap:.75rem;width:100%;margin-top:.5rem;display:flex}.thai-pron-badge[data-v-fe257740]{color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .08);border:1px solid rgba(var(--primary-blue-rgb), .15);box-shadow:0 2px 8px rgba(var(--primary-blue-rgb), .05);border-radius:9999px;padding:.3rem .8rem;font-size:.95rem;font-weight:700}.ipa-badge[data-v-fe257740]{font-size:.8rem;font-family:var(--mono);color:var(--text-mute);border:1px dashed var(--border);background:#00000008;border-radius:9999px;padding:.15rem .6rem}html.dark .ipa-badge[data-v-fe257740]{background:#ffffff08}.syllables-visualizer[data-v-fe257740]{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1.25rem;display:flex}.syllable-block[data-v-fe257740]{background:var(--input-bg);border:1px solid var(--border);border-radius:.5rem;flex-direction:column;align-items:center;min-width:50px;padding:.4rem .8rem;transition:all .2s;display:flex;box-shadow:0 2px 6px #00000008}.syllable-block.stressed[data-v-fe257740]{border-color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .03);box-shadow:0 0 10px rgba(var(--secondary-red-rgb), .1);transform:translateY(-2px)}.syl-eng[data-v-fe257740]{color:var(--text-main);font-size:1.05rem;font-weight:800}.syllable-block.stressed .syl-eng[data-v-fe257740]{color:var(--secondary-red)}.syl-thai[data-v-fe257740]{color:var(--text-mute);margin-top:.15rem;font-size:.78rem;font-weight:500}.accent-tip-row[data-v-fe257740]{margin-top:.6rem}.accent-tip-text[data-v-fe257740]{color:var(--secondary-red);font-size:.72rem;font-weight:600}.card-divider[data-v-fe257740]{border:0;border-top:1px solid var(--border);width:100%;margin:.25rem 0 .5rem}.example-section[data-v-fe257740]{flex-direction:column;align-items:center;gap:.75rem;width:100%;display:flex}.toggle-example-btn[data-v-fe257740]{flex-direction:column;height:auto;padding:.4rem 1.25rem;font-size:.8rem;line-height:1.25}.example-content[data-v-fe257740]{opacity:0;text-align:center;width:100%;height:0;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.example-content.visible[data-v-fe257740]{opacity:1;height:auto;padding-top:.5rem}.example-phrase-row[data-v-fe257740]{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;width:100%;display:flex}.ex-en[data-v-fe257740]{color:var(--text-main);margin:0;font-size:1.05rem;font-weight:700;line-height:1.4}.phrase-tts-controls[data-v-fe257740]{gap:.4rem;display:flex}.phrase-tts-btn[data-v-fe257740]{background:var(--glass-bg);border:1px solid var(--border);cursor:pointer;color:var(--text-main);border-radius:12px;padding:.25rem .6rem;font-size:.75rem;font-weight:700;transition:all .2s}.phrase-tts-btn[data-v-fe257740]:hover{border-color:var(--primary-blue);background:var(--border-hover)}.phrase-tts-btn.btn-slow[data-v-fe257740]{color:var(--secondary-red)}.phrase-tts-btn.btn-slow[data-v-fe257740]:hover{border-color:var(--secondary-red)}.ex-th[data-v-fe257740]{margin-top:.4rem;margin-bottom:0;font-size:.88rem}.ai-tutor-section[data-v-fe257740]{border-top:1px dashed var(--border);flex-direction:column;align-items:center;gap:.75rem;width:100%;margin-top:1rem;padding-top:1rem;display:flex}.ai-tutor-btn[data-v-fe257740]{flex-direction:column;height:auto;padding:.5rem 1.4rem;font-size:.82rem;line-height:1.25}.ai-tutor-skeleton[data-v-fe257740]{box-sizing:border-box;background:rgba(var(--primary-blue-rgb), .02);border:1px solid var(--border);border-radius:.75rem;flex-direction:column;gap:.5rem;width:100%;padding:1.25rem;animation:2s infinite pulse;display:flex}.skeleton-line[data-v-fe257740]{background:var(--border);border-radius:4px;width:100%;height:12px}.skeleton-line.short[data-v-fe257740]{width:70%}.ai-explanation-box[data-v-fe257740]{box-sizing:border-box;text-align:left;border-left:4px solid var(--primary-blue);background:rgba(var(--primary-blue-rgb), .02);flex-direction:column;gap:.6rem;width:100%;padding:1.25rem;display:flex}.ai-badge[data-v-fe257740]{color:var(--primary-blue);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:800}.ai-explanation-content[data-v-fe257740]{color:var(--text-main);white-space:pre-wrap;font-size:.85rem;line-height:1.5}.ai-error-box[data-v-fe257740]{color:var(--secondary-red);font-size:.8rem;font-weight:600}.divider-v[data-v-fe257740]{background:var(--border);width:1px;margin:1rem 0}.thai-word[data-v-fe257740]{color:var(--primary-blue);margin:0;font-size:2.2rem;font-weight:700}.card-actions[data-v-fe257740]{justify-content:center;gap:1.5rem;width:100%;margin-top:.75rem;display:flex}.card-action-btn[data-v-fe257740]{box-sizing:border-box;flex-direction:column;flex:1;width:100%;height:auto;padding:.75rem 1.5rem;line-height:1.2}.primary-thai-txt[data-v-fe257740]{color:#fffc}.feedback-container[data-v-fe257740]{justify-content:center;align-items:center;height:2.8rem;display:flex}.feedback-content-box[data-v-fe257740]{flex-direction:column;align-items:center;display:flex}.feedback-text[data-v-fe257740]{font-size:.95rem;font-weight:700}.feedback-thai[data-v-fe257740]{margin-top:.05rem;font-size:.75rem}.feedback-content-box.submitting[data-v-fe257740]{color:var(--text-mute)}.feedback-content-box.success[data-v-fe257740],.feedback-content-box.success .feedback-thai[data-v-fe257740]{color:#10b981}.feedback-content-box.error[data-v-fe257740],.feedback-content-box.error .feedback-thai[data-v-fe257740]{color:var(--secondary-red)}.audio-player-row[data-v-fe257740],.example-audio-row[data-v-fe257740]{justify-content:center;width:100%;margin:1.25rem 0;display:flex}.double-column-footer[data-v-fe257740]{grid-template-columns:repeat(2,1fr);gap:1.25rem;width:100%;display:grid}.example-header-row[data-v-fe257740]{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;width:100%;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.example-title[data-v-fe257740]{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.05em;font-size:.88rem;font-weight:800}@media (width<=500px){.double-column-footer[data-v-fe257740]{grid-template-columns:1fr;gap:.75rem}}.vocab-card-layout-wrapper[data-v-fe257740]{justify-content:center;align-items:flex-start;width:100%;max-width:650px;margin:1.5rem auto;display:flex;position:relative}.ai-tutor-tab[data-v-fe257740]{background:var(--primary-blue);color:#fff;border:1px solid var(--primary-blue);cursor:pointer;text-transform:uppercase;z-index:10;border-left:none;border-radius:0 12px 12px 0;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:48px;height:170px;padding:.5rem 0;font-size:.75rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:3rem;right:-48px;box-shadow:4px 4px 12px #00000026}.ai-tutor-tab .tab-text[data-v-fe257740]{writing-mode:vertical-rl;text-orientation:mixed;display:inline-block}.ai-tutor-tab .tutor-emoji[data-v-fe257740]{transform:rotate(90deg)}.ai-tutor-tab[data-v-fe257740]:hover{background:var(--primary-blue-hover,#1d4ed8);width:52px;right:-52px}.spin-loading[data-v-fe257740]{animation:1s linear infinite spin-fe257740;display:inline-block}@keyframes spin-fe257740{to{transform:rotate(360deg)}}.ai-tutor-sidebar[data-v-fe257740]{display:none}@media (width>=1024px){.vocab-card-layout-wrapper[data-v-fe257740]{gap:1.5rem;max-width:1050px}.ai-tutor-sidebar[data-v-fe257740]{box-sizing:border-box;text-align:left;background:rgba(var(--primary-blue-rgb), .02);width:380px;min-height:450px;box-shadow:var(--shadow-sm);border-radius:1rem;flex-direction:column;align-self:stretch;gap:.75rem;padding:1.5rem;display:flex}.ai-tutor-sidebar-header[data-v-fe257740]{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;display:flex}.ai-tutor-close-btn[data-v-fe257740]{cursor:pointer;color:var(--text-mute);background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1;transition:color .2s}.ai-tutor-close-btn[data-v-fe257740]:hover{color:var(--secondary-red)}.ai-explanation-sidebar-box[data-v-fe257740]{flex:1;overflow-y:auto}.vocab-card .ai-tutor-section[data-v-fe257740]{display:none}}@media (width<=1023px){.vocab-card-layout-wrapper[data-v-fe257740]{width:100%;display:block}.ai-tutor-sidebar[data-v-fe257740],.ai-tutor-tab[data-v-fe257740]{display:none}.vocab-card .ai-tutor-section[data-v-fe257740]{display:flex}}.video-context-section[data-v-fe257740]{border-top:1px dashed var(--border);flex-direction:column;align-items:center;gap:.75rem;width:100%;margin-top:1rem;padding-top:1rem;display:flex}.video-header-row[data-v-fe257740]{flex-direction:column;display:flex}.video-title[data-v-fe257740]{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:700}.video-wrapper[data-v-fe257740]{border:1px solid var(--border);width:100%;max-width:480px;box-shadow:var(--shadow-sm);background:#000;border-radius:12px;overflow:hidden}.context-video[data-v-fe257740]{width:100%;height:auto;display:block}.vocab-image-wrapper[data-v-fe257740]{border:1px solid var(--border);background:#0000000d;border-radius:16px;justify-content:center;align-items:center;width:100%;max-width:400px;height:220px;margin:1rem auto;display:flex;position:relative;overflow:hidden}.vocab-img[data-v-fe257740]{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .3s ease-in-out}.vocab-img.visible[data-v-fe257740]{opacity:1}.image-shimmer[data-v-fe257740]{background:linear-gradient(90deg,#fff0 0%,#ffffff1a 20%,#fff3 60%,#fff0 100%) 0 0/200% 100%;animation:1.5s infinite shimmer-anim-fe257740;position:absolute;inset:0}@keyframes shimmer-anim-fe257740{0%{background-position:100% 0}to{background-position:-100% 0}}.phrase-card[data-v-7e7b1fcb]{box-sizing:border-box;text-align:center;flex-direction:column;gap:.85rem;width:100%;max-width:600px;margin:0;padding:1.5rem;display:flex;position:relative}.card-header[data-v-7e7b1fcb]{justify-content:space-between;align-items:flex-start;width:100%;font-size:.85rem;display:flex}.badge-container[data-v-7e7b1fcb],.mastery-badge-container[data-v-7e7b1fcb]{flex-direction:column;align-items:flex-start;display:flex}.mastery-badge-container[data-v-7e7b1fcb]{align-items:flex-end}.card-badge[data-v-7e7b1fcb]{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.mastery-badge[data-v-7e7b1fcb]{color:var(--text-main);background:rgba(var(--primary-blue-rgb), .05);border:1px solid var(--border);border-radius:4px;padding:.2rem .6rem;font-weight:600}.sub-badge-thai[data-v-7e7b1fcb]{margin-top:.05rem;font-size:.68rem}.sub-badge-thai.right[data-v-7e7b1fcb]{text-align:right}.phrase-display[data-v-7e7b1fcb]{flex-direction:column;align-items:center;gap:.75rem;width:100%;margin:.75rem 0;display:flex}.english-phrase-box[data-v-7e7b1fcb]{flex-direction:column;align-items:center;gap:.6rem;width:100%;display:flex}.english-phrase[data-v-7e7b1fcb]{color:var(--text-main);margin:0;padding:0 1rem;font-size:1.7rem;font-weight:700;line-height:1.4}.phrase-tts-controls[data-v-7e7b1fcb]{justify-content:center;gap:.75rem;display:flex}.tts-btn[data-v-7e7b1fcb]{background:var(--glass-bg);border:1px solid var(--border);cursor:pointer;color:var(--text-main);border-radius:20px;align-items:center;gap:.3rem;padding:.4rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.tts-btn[data-v-7e7b1fcb]:hover{background:var(--border-hover);border-color:var(--primary-blue);transform:translateY(-1px)}.tts-btn.btn-slow[data-v-7e7b1fcb]{color:var(--secondary-red)}.tts-btn.btn-slow[data-v-7e7b1fcb]:hover{border-color:var(--secondary-red)}.reveal-section[data-v-7e7b1fcb]{flex-direction:column;gap:.5rem;width:100%;display:flex}.btn-sm[data-v-7e7b1fcb]{flex-direction:column;align-self:center;height:auto;padding:.5rem 1.5rem;font-size:.85rem;line-height:1.25}.reveal-content[data-v-7e7b1fcb]{opacity:0;flex-direction:column;align-items:center;width:100%;height:0;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.reveal-content.visible[data-v-7e7b1fcb]{opacity:1;height:auto;padding-top:.5rem}.reveal-inner[data-v-7e7b1fcb]{text-align:left;flex-direction:column;align-items:center;gap:1rem;width:100%;display:flex}.thai-translation-text[data-v-7e7b1fcb]{color:var(--primary-blue);text-align:center;width:100%;margin:0;font-size:1.35rem;font-weight:700}.phrase-divider[data-v-7e7b1fcb]{border:0;border-top:1px solid var(--border);width:100%;margin:.5rem 0}.key-vocab-section[data-v-7e7b1fcb]{flex-direction:column;gap:.5rem;width:100%;display:flex}.vocab-title[data-v-7e7b1fcb]{color:var(--primary-blue);text-transform:uppercase;margin:0;font-size:.88rem;font-weight:800}.vocab-keywords-grid[data-v-7e7b1fcb]{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.keyword-bubble[data-v-7e7b1fcb]{border:1px solid var(--border);background:rgba(var(--primary-blue-rgb), .02);border-radius:30px;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.85rem;display:inline-flex}.kw-eng[data-v-7e7b1fcb]{color:var(--text-main);font-weight:700}.kw-arrow[data-v-7e7b1fcb]{color:var(--text-mute);font-size:.75rem}.kw-thai[data-v-7e7b1fcb]{color:var(--primary-blue);font-weight:600}.card-actions[data-v-7e7b1fcb]{justify-content:center;gap:1rem;width:100%;margin-top:.5rem;display:flex}.card-action-btn[data-v-7e7b1fcb]{flex-direction:column;flex:1 1 0;height:auto;padding:.6rem 1rem;line-height:1.2}.primary-thai-txt[data-v-7e7b1fcb]{color:#fffc}.feedback-container[data-v-7e7b1fcb]{justify-content:center;align-items:center;height:2.8rem;margin-top:.25rem;display:flex}.feedback-content-box[data-v-7e7b1fcb]{flex-direction:column;align-items:center;display:flex}.feedback-text[data-v-7e7b1fcb]{font-size:.95rem;font-weight:700}.feedback-thai[data-v-7e7b1fcb]{margin-top:.05rem;font-size:.75rem}.feedback-content-box.submitting[data-v-7e7b1fcb]{color:var(--text-mute)}.feedback-content-box.success[data-v-7e7b1fcb],.feedback-content-box.success .feedback-thai[data-v-7e7b1fcb]{color:#10b981}.feedback-content-box.error[data-v-7e7b1fcb],.feedback-content-box.error .feedback-thai[data-v-7e7b1fcb]{color:var(--secondary-red)}.audio-player-row[data-v-7e7b1fcb]{justify-content:center;width:100%;margin:1.25rem 0;display:flex}.video-context-section[data-v-7e7b1fcb]{border-top:1px dashed var(--border);flex-direction:column;align-items:center;gap:.75rem;width:100%;margin-top:1rem;padding-top:1rem;display:flex}.video-header-row[data-v-7e7b1fcb]{flex-direction:column;display:flex}.video-title[data-v-7e7b1fcb]{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:700}.video-wrapper[data-v-7e7b1fcb]{border:1px solid var(--border);width:100%;max-width:480px;box-shadow:var(--shadow-sm);background:#000;border-radius:12px;overflow:hidden}.context-video[data-v-7e7b1fcb]{width:100%;height:auto;display:block}.phrase-card-layout-wrapper[data-v-7e7b1fcb]{justify-content:center;align-items:flex-start;width:100%;max-width:600px;margin:1.5rem auto;display:flex;position:relative}.ai-tutor-tab[data-v-7e7b1fcb]{background:var(--primary-blue);color:#fff;border:1px solid var(--primary-blue);cursor:pointer;text-transform:uppercase;z-index:10;border-left:none;border-radius:0 12px 12px 0;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;width:48px;height:170px;padding:.5rem 0;font-size:.75rem;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:3rem;right:-48px;box-shadow:4px 4px 12px #00000026}.ai-tutor-tab .tab-text[data-v-7e7b1fcb]{writing-mode:vertical-rl;text-orientation:mixed;display:inline-block}.ai-tutor-tab .tutor-emoji[data-v-7e7b1fcb]{transform:rotate(90deg)}.ai-tutor-tab[data-v-7e7b1fcb]:hover{background:var(--primary-blue-hover,#1d4ed8);width:52px;right:-52px}.spin-loading[data-v-7e7b1fcb]{animation:1s linear infinite spin-7e7b1fcb;display:inline-block}@keyframes spin-7e7b1fcb{to{transform:rotate(360deg)}}.ai-tutor-sidebar[data-v-7e7b1fcb]{display:none}.ai-tutor-section[data-v-7e7b1fcb]{border-top:1px dashed var(--border);flex-direction:column;align-items:center;gap:.75rem;width:100%;margin-top:1rem;padding-top:1rem;display:flex}.ai-tutor-btn[data-v-7e7b1fcb]{flex-direction:column;height:auto;padding:.5rem 1.4rem;font-size:.82rem;line-height:1.25}.ai-tutor-skeleton[data-v-7e7b1fcb]{box-sizing:border-box;background:rgba(var(--primary-blue-rgb), .02);border:1px solid var(--border);border-radius:.75rem;flex-direction:column;gap:.5rem;width:100%;padding:1.25rem;animation:2s infinite pulse;display:flex}.ai-explanation-box[data-v-7e7b1fcb]{box-sizing:border-box;text-align:left;border-left:4px solid var(--primary-blue);background:rgba(var(--primary-blue-rgb), .02);flex-direction:column;gap:.6rem;width:100%;padding:1.25rem;display:flex}.ai-badge[data-v-7e7b1fcb]{color:var(--primary-blue);letter-spacing:.05em;text-transform:uppercase;font-size:.7rem;font-weight:800}.ai-explanation-content[data-v-7e7b1fcb]{color:var(--text-main);white-space:pre-wrap;font-size:.85rem;line-height:1.5}@media (width>=1024px){.phrase-card-layout-wrapper[data-v-7e7b1fcb]{gap:1.5rem;max-width:1000px}.ai-tutor-sidebar[data-v-7e7b1fcb]{box-sizing:border-box;text-align:left;background:rgba(var(--primary-blue-rgb), .02);width:380px;min-height:400px;box-shadow:var(--shadow-sm);border-radius:1rem;flex-direction:column;align-self:stretch;gap:.75rem;padding:1.5rem;display:flex}.ai-tutor-sidebar-header[data-v-7e7b1fcb]{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;display:flex}.ai-tutor-close-btn[data-v-7e7b1fcb]{cursor:pointer;color:var(--text-mute);background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1;transition:color .2s}.ai-tutor-close-btn[data-v-7e7b1fcb]:hover{color:var(--secondary-red)}.ai-explanation-sidebar-box[data-v-7e7b1fcb]{flex:1;overflow-y:auto}.phrase-card .ai-tutor-section[data-v-7e7b1fcb]{display:none}}@media (width<=1023px){.phrase-card-layout-wrapper[data-v-7e7b1fcb]{width:100%;display:block}.ai-tutor-sidebar[data-v-7e7b1fcb],.ai-tutor-tab[data-v-7e7b1fcb]{display:none}.phrase-card .ai-tutor-section[data-v-7e7b1fcb]{display:flex}}.paragraph-view[data-v-e6c43e36]{box-sizing:border-box;text-align:left;flex-direction:column;gap:1.5rem;width:100%;max-width:750px;margin:2rem auto;padding:2.5rem;display:flex;overflow:hidden}.passage-header[data-v-e6c43e36]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding-bottom:1rem;display:flex}.header-titles[data-v-e6c43e36]{flex-direction:column;gap:.2rem;display:flex}.passage-badge[data-v-e6c43e36]{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:800}.passage-title[data-v-e6c43e36]{color:var(--text-main);margin:0;font-size:1.8rem;font-weight:700}.title-thai[data-v-e6c43e36]{color:var(--text-mute);font-size:.9rem}.mastery-badge-box[data-v-e6c43e36]{flex-direction:column;align-items:flex-end;display:flex}.mastery-badge[data-v-e6c43e36]{color:var(--text-main);background:rgba(var(--primary-blue-rgb), .05);border:1px solid var(--border);border-radius:4px;padding:.2rem .6rem;font-size:.85rem;font-weight:600}.sub-badge-thai[data-v-e6c43e36]{margin-top:.05rem;font-size:.68rem}.passage-audio-bar[data-v-e6c43e36]{background:rgba(var(--primary-blue-rgb), .02);justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.audio-label[data-v-e6c43e36]{color:var(--text-main);font-size:.88rem;font-weight:700}.audio-btns[data-v-e6c43e36]{gap:.5rem;display:flex}.btn-audio[data-v-e6c43e36]{height:auto;padding:.4rem 1rem;font-size:.82rem}.btn-audio.btn-slow[data-v-e6c43e36]{color:var(--secondary-red)}.passage-body-board[data-v-e6c43e36]{flex-direction:column;gap:.5rem;display:flex}.board-instructions[data-v-e6c43e36]{color:var(--primary-blue);margin:0;font-size:.82rem;font-style:italic}.board-instructions-thai[data-v-e6c43e36]{opacity:.8;margin-top:-.25rem;font-size:.72rem}.sentences-reading-area[data-v-e6c43e36]{background:rgba(var(--text-main-rgb), .02);border:1px solid var(--border);color:var(--text-main);border-radius:.75rem;padding:1.25rem;font-size:1.15rem;line-height:1.8}.interactive-sentence[data-v-e6c43e36]{cursor:pointer;border-radius:4px;padding:.1rem .25rem;transition:all .2s}.interactive-sentence[data-v-e6c43e36]:hover{background:rgba(var(--primary-blue-rgb), .08);color:var(--primary-blue)}.interactive-sentence.active[data-v-e6c43e36]{background:var(--primary-blue);color:#fff;font-weight:600}.sentence-focus-panel[data-v-e6c43e36]{border-left:4px solid var(--primary-blue);flex-direction:column;gap:.25rem;margin-top:.5rem;padding:1.2rem;display:flex;position:relative}.focus-header[data-v-e6c43e36]{justify-content:space-between;align-items:center;display:flex}.focus-label[data-v-e6c43e36]{color:var(--primary-blue);text-transform:uppercase;font-size:.72rem;font-weight:800}.focus-close[data-v-e6c43e36]{cursor:pointer;color:var(--text-mute);background:0 0;border:none;padding:0;font-size:1.2rem;line-height:1}.focused-english[data-v-e6c43e36]{color:var(--text-main);margin:0;font-size:1.15rem;font-weight:700}.focused-thai[data-v-e6c43e36]{color:var(--text-mute);margin:0;font-size:.95rem}.passage-reveal-triggers[data-v-e6c43e36]{gap:1rem;display:flex}.btn-sm[data-v-e6c43e36]{text-align:center;flex-direction:column;flex:1;height:auto;padding:.5rem 1rem;font-size:.82rem;line-height:1.25}.full-translation-panel[data-v-e6c43e36]{padding:1.5rem}.full-translation-panel h3[data-v-e6c43e36]{color:var(--primary-blue);margin-top:0;margin-bottom:.5rem;font-size:1rem;font-weight:800}.thai-full-text[data-v-e6c43e36]{color:var(--text-main);margin:0;font-size:1.05rem;line-height:1.6}.ai-explanation-container[data-v-e6c43e36]{background:rgba(var(--primary-blue-rgb), .03);border:1px dashed rgba(var(--primary-blue-rgb), .25);flex-direction:column;padding:1.5rem;display:flex}.ai-tutor-skeleton[data-v-e6c43e36]{box-sizing:border-box;background:rgba(var(--primary-blue-rgb), .02);border:1px solid var(--border);border-radius:.75rem;flex-direction:column;gap:.5rem;width:100%;padding:1.25rem;animation:2s infinite pulse-e6c43e36;display:flex}@keyframes pulse-e6c43e36{0%,to{opacity:1}50%{opacity:.4}}.ai-comment-tag[data-v-e6c43e36]{color:var(--primary-blue);letter-spacing:.05em;margin:0 0 .5rem;font-size:.72rem;font-weight:800}.ai-body-text[data-v-e6c43e36]{color:var(--text-main);white-space:pre-wrap;font-size:.88rem;line-height:1.5}.comprehension-quiz-box[data-v-e6c43e36]{flex-direction:column;gap:1.5rem;margin-top:1rem;padding:2rem;display:flex}.quiz-header[data-v-e6c43e36]{border-bottom:1px solid var(--border);padding-bottom:.75rem}.quiz-header h3[data-v-e6c43e36]{color:var(--text-main);margin:0;font-size:1.25rem;font-weight:700}.quiz-sub[data-v-e6c43e36]{opacity:.8;font-size:.78rem}.quiz-questions-list[data-v-e6c43e36]{flex-direction:column;gap:1.5rem;display:flex}.quiz-question-item[data-v-e6c43e36]{flex-direction:column;gap:.4rem;display:flex}.quiz-q-text[data-v-e6c43e36]{color:var(--text-main);margin:0;font-size:1.05rem}.quiz-q-thai[data-v-e6c43e36]{color:var(--text-mute);margin:0;font-size:.85rem}.quiz-choices-grid[data-v-e6c43e36]{grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.75rem;display:grid}.quiz-choice-btn[data-v-e6c43e36]{cursor:pointer;text-align:left;box-sizing:border-box;border-radius:.5rem;align-items:center;gap:.75rem;padding:.8rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.quiz-choice-btn[data-v-e6c43e36]:hover{background:rgba(var(--primary-blue-rgb), .04);border-color:var(--primary-blue)}.choice-dot[data-v-e6c43e36]{background:rgba(var(--primary-blue-rgb), .06);border:1px solid var(--border);width:24px;height:24px;color:var(--primary-blue);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;font-weight:800;display:flex}.choice-lbl[data-v-e6c43e36]{color:var(--text-main);font-size:.88rem;font-weight:600}.quiz-choice-btn.selected[data-v-e6c43e36]{border-color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .08)}.quiz-choice-btn.selected .choice-dot[data-v-e6c43e36]{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.quiz-choice-btn.correct[data-v-e6c43e36]{background:#10b98114;border-color:#10b981}.quiz-choice-btn.correct .choice-dot[data-v-e6c43e36]{color:#fff;background:#10b981;border-color:#10b981}.quiz-choice-btn.incorrect[data-v-e6c43e36]{border-color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .08)}.quiz-choice-btn.incorrect .choice-dot[data-v-e6c43e36]{background:var(--secondary-red);color:#fff;border-color:var(--secondary-red)}.quiz-actions[data-v-e6c43e36]{border-top:1px solid var(--border);justify-content:flex-end;padding-top:1.25rem;display:flex}.submit-quiz-btn[data-v-e6c43e36]{flex-direction:column;width:220px;height:auto;padding:.5rem 1rem;font-size:.85rem;line-height:1.2}@media (width<=600px){.quiz-choices-grid[data-v-e6c43e36]{grid-template-columns:1fr}.passage-reveal-triggers[data-v-e6c43e36]{flex-direction:column}}.feedback-container[data-v-e6c43e36]{justify-content:center;align-items:center;height:2.8rem;margin-top:.5rem;display:flex}.feedback-content-box[data-v-e6c43e36]{flex-direction:column;align-items:center;display:flex}.feedback-text[data-v-e6c43e36]{font-size:.95rem;font-weight:700}.feedback-thai[data-v-e6c43e36]{margin-top:.05rem;font-size:.75rem}.feedback-content-box.submitting[data-v-e6c43e36]{color:var(--text-mute)}.feedback-content-box.success[data-v-e6c43e36]{color:#10b981}.feedback-content-box.error[data-v-e6c43e36]{color:var(--secondary-red)}@keyframes spin-e6c43e36{to{transform:rotate(360deg)}}.vocabulary-card-skeleton[data-v-e226a2da]{box-sizing:border-box;flex-direction:column;align-items:center;gap:1.5rem;width:100%;max-width:500px;height:320px;margin:2rem auto;padding:2.5rem;display:flex}.skeleton-title[data-v-e226a2da]{width:60%;height:2.5rem}.skeleton-text[data-v-e226a2da]{width:40%;height:1.2rem;margin-top:.5rem}.skeleton-actions[data-v-e226a2da]{justify-content:center;gap:1rem;width:100%;margin-top:2rem;display:flex}.skeleton-btn[data-v-e226a2da]{border-radius:9999px;width:120px;height:2.2rem}.stats-container[data-v-a82b4ba0]{flex-direction:column;gap:2rem;width:100%;display:flex;container:stats/inline-size}.stats-header[data-v-a82b4ba0]{flex-direction:column;align-items:flex-start;gap:1.25rem;display:flex}.title-section h1[data-v-a82b4ba0]{margin-bottom:.15rem}.header-thai[data-v-a82b4ba0]{font-size:1rem;font-weight:500}.stats-top-row[data-v-a82b4ba0]{grid-template-columns:1.2fr 1fr;gap:1.5rem;margin-bottom:2rem;display:grid}.radar-card[data-v-a82b4ba0],.summary-meta-card[data-v-a82b4ba0]{box-sizing:border-box;flex-direction:column;gap:1.5rem;min-height:380px;padding:1.8rem;display:flex}.stats-mini-gamification[data-v-a82b4ba0]{justify-content:space-between;gap:.5rem;width:100%;display:flex}.mini-stat-item[data-v-a82b4ba0]{background:rgba(var(--primary-blue-rgb), .03);border:1px solid var(--border);box-sizing:border-box;border-radius:9999px;flex:1;align-items:center;gap:.4rem;padding:.4rem .6rem;display:flex}.mini-stat-icon[data-v-a82b4ba0]{flex-shrink:0;font-size:1.1rem}.mini-stat-meta[data-v-a82b4ba0]{flex-direction:column;align-items:flex-start;line-height:1.1;display:flex}.mini-stat-val[data-v-a82b4ba0]{color:var(--text-main);white-space:nowrap;font-size:.78rem;font-weight:800}.mini-stat-label[data-v-a82b4ba0]{color:var(--text-mute);text-transform:uppercase;font-size:.58rem}.card-titles[data-v-a82b4ba0]{text-align:left;flex-direction:column;display:flex}.card-titles h3[data-v-a82b4ba0]{color:var(--text-main);margin:0;font-size:1.15rem;font-weight:700}.sub-title[data-v-a82b4ba0]{opacity:.8;font-size:.72rem}.chart-wrapper[data-v-a82b4ba0]{flex:1;width:100%;position:relative}.competency-meter[data-v-a82b4ba0]{flex-direction:column;align-items:center;gap:.5rem;margin:1.5rem 0;display:flex}.comp-val[data-v-a82b4ba0]{color:var(--primary-blue);font-size:4rem;font-weight:800;line-height:1}.comp-track[data-v-a82b4ba0]{background:rgba(var(--primary-blue-rgb), .05);border-radius:999px;width:100%;height:10px;overflow:hidden}.comp-fill[data-v-a82b4ba0]{background:var(--primary-blue);border-radius:999px;height:100%;transition:width .8s}.skill-level-badges[data-v-a82b4ba0]{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.skill-pill[data-v-a82b4ba0]{background:rgba(var(--primary-blue-rgb), .03);border:1px solid var(--border);border-radius:.5rem;flex-direction:column;align-items:center;gap:.1rem;padding:.6rem;display:flex}.skill-name[data-v-a82b4ba0]{color:var(--text-mute);text-transform:uppercase;font-size:.72rem;font-weight:800}.skill-lv[data-v-a82b4ba0]{color:var(--primary-blue);font-size:.95rem;font-weight:700}.vocab-mastery-section[data-v-a82b4ba0]{flex-direction:column;gap:1.5rem;display:flex}.section-header[data-v-a82b4ba0]{text-align:left}.stats-grid[data-v-a82b4ba0]{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;display:grid}.stat-card[data-v-a82b4ba0]{flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex}.stat-vocab-info[data-v-a82b4ba0]{text-align:left;flex-direction:column;gap:.2rem;display:flex}.english-text[data-v-a82b4ba0]{color:var(--text-main);font-size:1.4rem;font-weight:700}.phonetic-text[data-v-a82b4ba0]{font-family:var(--mono);color:var(--secondary-red);font-size:.82rem}.thai-translation-text[data-v-a82b4ba0]{color:var(--text-mute);font-size:.9rem}.stat-progress-section[data-v-a82b4ba0]{flex-direction:column;gap:.4rem;margin-top:auto;display:flex}.progress-details[data-v-a82b4ba0]{justify-content:flex-end;display:flex}.score-value[data-v-a82b4ba0]{color:var(--primary-blue);font-size:.85rem;font-weight:800}.progress-track[data-v-a82b4ba0]{background:rgba(var(--primary-blue-rgb), .05);border-radius:99px;width:100%;height:6px;overflow:hidden}.progress-fill[data-v-a82b4ba0]{height:100%;transition:width .6s}.progress-fill.mastered[data-v-a82b4ba0]{background:var(--primary-blue)}.progress-fill.practicing[data-v-a82b4ba0]{background:var(--secondary-red)}.error-hint[data-v-a82b4ba0]{color:var(--text-mute);margin-top:.5rem;font-size:.8rem}.debug-msg[data-v-a82b4ba0]{font-family:var(--mono);color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .05);border-radius:4px;margin-bottom:1rem;padding:.5rem;font-size:.75rem}.achievements-section[data-v-a82b4ba0]{flex-direction:column;gap:1.5rem;margin-bottom:2rem;display:flex}.badges-shelf[data-v-a82b4ba0]{box-sizing:border-box;padding:2rem}.badges-grid[data-v-a82b4ba0]{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.badge-card[data-v-a82b4ba0]{background:rgba(var(--primary-blue-rgb), .01);border:1px solid var(--border);box-sizing:border-box;text-align:center;border-radius:1rem;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.badge-card[data-v-a82b4ba0]:not(.locked):hover{border-color:var(--primary-blue);box-shadow:0 8px 24px rgba(var(--primary-blue-rgb), .12);background:rgba(var(--primary-blue-rgb), .03);transform:translateY(-4px)}.badge-card.locked[data-v-a82b4ba0]{opacity:.45;filter:grayscale(80%)}.badge-icon-wrapper[data-v-a82b4ba0]{background:rgba(var(--primary-blue-rgb), .03);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:3rem;display:inline-flex;position:relative;box-shadow:inset 0 2px 8px #00000026}.badge-emoji[data-v-a82b4ba0]{line-height:1}.badge-lock[data-v-a82b4ba0]{background:var(--bg);border:1px solid var(--border);border-radius:50%;padding:.2rem;font-size:1.25rem;line-height:1;position:absolute;bottom:0;right:0}.badge-info[data-v-a82b4ba0]{flex-direction:column;flex:1;gap:.25rem;display:flex}.badge-title[data-v-a82b4ba0]{color:var(--text-main);font-size:1.15rem;font-weight:800}.badge-title-thai[data-v-a82b4ba0]{color:var(--primary-blue);font-size:.8rem;font-weight:600}.badge-desc[data-v-a82b4ba0]{color:var(--text-mute);margin-top:.4rem;font-size:.82rem;line-height:1.4}.badge-desc-thai[data-v-a82b4ba0]{color:var(--text-mute);opacity:.8;font-size:.75rem;line-height:1.3}.badge-status-pill[data-v-a82b4ba0]{text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--border);color:var(--text-mute);background:#ffffff0a;border-radius:9999px;margin-top:auto;padding:.25rem .75rem;font-size:.72rem;font-weight:700}.badge-card:not(.locked) .badge-status-pill[data-v-a82b4ba0]{background:rgba(var(--primary-blue-rgb), .1);border-color:rgba(var(--primary-blue-rgb), .2);color:var(--primary-blue)}.history-chart-section[data-v-a82b4ba0]{flex-direction:column;gap:1.5rem;margin-bottom:2rem;display:flex}.history-chart-card[data-v-a82b4ba0]{box-sizing:border-box;padding:1.8rem}@container stats (width<=850px){.stats-top-row[data-v-a82b4ba0]{grid-template-columns:1fr}}@media (width<=850px){.stats-top-row[data-v-a82b4ba0]{grid-template-columns:1fr}}.grammar-container[data-v-ab72bc99]{box-sizing:border-box;flex-direction:column;gap:2rem;width:100%;display:flex}.grammar-header[data-v-ab72bc99]{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.header-titles[data-v-ab72bc99]{text-align:left;margin-top:.5rem}.h1-thai-sub[data-v-ab72bc99]{color:var(--text-mute);margin-top:.2rem;font-size:.95rem}.grammar-topics[data-v-ab72bc99]{flex-direction:column;gap:1.5rem;width:100%;display:flex}.grammar-card[data-v-ab72bc99]{cursor:pointer;text-align:left;padding:1.5rem 2rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.grammar-card[data-v-ab72bc99]:hover{box-shadow:0 10px 24px rgba(var(--primary-blue-rgb), .08);transform:translateY(-2px)}.grammar-card.expanded[data-v-ab72bc99]{cursor:default;transform:none}.card-header-summary[data-v-ab72bc99]{justify-content:space-between;align-items:center;width:100%;display:flex}.title-area[data-v-ab72bc99]{flex-direction:column;gap:.2rem;display:flex}.card-header-summary h2[data-v-ab72bc99]{color:var(--text-main);font-size:1.35rem}.card-thai-title[data-v-ab72bc99]{color:var(--text-mute);font-size:.85rem}.badge-area[data-v-ab72bc99]{align-items:center;gap:1.5rem;display:flex}.difficulty-badge[data-v-ab72bc99]{color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .1);text-transform:uppercase;border-radius:9999px;padding:.35rem .75rem;font-size:.8rem;font-weight:700}.expand-icon[data-v-ab72bc99]{color:var(--text-mute);font-size:.85rem}.detail-divider[data-v-ab72bc99]{background:var(--border);width:100%;height:1px;margin:1.5rem 0}.card-detailed-content[data-v-ab72bc99]{flex-direction:column;gap:1.5rem;display:flex}.detail-section[data-v-ab72bc99]{flex-direction:column;gap:.5rem;display:flex}.detail-section h3[data-v-ab72bc99]{color:var(--text-main);font-size:1rem;font-weight:700}.explanation-text[data-v-ab72bc99]{color:var(--text-main);font-size:.95rem;line-height:1.6}.friction-point-box[data-v-ab72bc99]{background:rgba(var(--secondary-red-rgb), .03);border-left:3px solid var(--secondary-red);border-radius:0 .75rem .75rem 0;padding:1rem 1.25rem}.friction-point-box p[data-v-ab72bc99]{color:var(--text-main);font-size:.92rem;line-height:1.5}.compare-grid[data-v-ab72bc99]{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:.25rem;display:grid}.compare-column[data-v-ab72bc99]{border-radius:1rem;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.25rem;display:flex}.compare-column.mistake[data-v-ab72bc99]{background:rgba(var(--secondary-red-rgb), .05);border:1px dashed rgba(var(--secondary-red-rgb), .25)}.compare-column.correct[data-v-ab72bc99]{background:#10b9810d;border:1px solid #10b98133}.compare-column .label[data-v-ab72bc99]{font-size:.85rem;font-weight:700}.compare-column.mistake .label[data-v-ab72bc99]{color:var(--secondary-red)}.compare-column.correct .label[data-v-ab72bc99]{color:#10b981}.compare-column .sentence[data-v-ab72bc99]{font-size:1.05rem;font-family:var(--sans);color:var(--text-main);text-align:left;min-height:2.8rem;font-weight:600;line-height:1.4}.audio-btn[data-v-ab72bc99]{padding:.4rem 1rem;font-size:.8rem}.example-list[data-v-ab72bc99]{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.example-list li[data-v-ab72bc99]{background:rgba(var(--primary-blue-rgb), .03);border:1px solid var(--border);border-radius:.75rem;padding:.8rem 1.2rem;transition:background-color .2s}.example-list li[data-v-ab72bc99]:hover{background:rgba(var(--primary-blue-rgb), .06)}.example-item-content[data-v-ab72bc99]{justify-content:space-between;align-items:center;gap:1rem;display:flex}.example-sentence[data-v-ab72bc99]{color:var(--text-main);text-align:left;font-size:.95rem;line-height:1.4}.speech-trigger-btn[data-v-ab72bc99]{cursor:pointer;background:0 0;border:none;padding:.2rem;font-size:1.1rem;transition:transform .15s}.speech-trigger-btn[data-v-ab72bc99]:hover{transform:scale(1.2)}.expand-fade-enter-active[data-v-ab72bc99],.expand-fade-leave-active[data-v-ab72bc99]{max-height:800px;transition:all .3s;overflow:hidden}.expand-fade-enter-from[data-v-ab72bc99],.expand-fade-leave-to[data-v-ab72bc99]{opacity:0;max-height:0;padding-top:0;padding-bottom:0}@media (width<=768px){.compare-grid[data-v-ab72bc99]{grid-template-columns:1fr;gap:1rem}.grammar-card[data-v-ab72bc99]{padding:1.2rem 1.5rem}}.culture-container[data-v-822730c5]{box-sizing:border-box;flex-direction:column;gap:2rem;width:100%;display:flex}.culture-header[data-v-822730c5]{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.header-titles[data-v-822730c5]{text-align:left;margin-top:.5rem}.h1-thai-sub[data-v-822730c5]{color:var(--text-mute);margin-top:.2rem;font-size:.95rem}.culture-list[data-v-822730c5]{flex-direction:column;gap:1.5rem;width:100%;display:flex}.culture-card[data-v-822730c5]{cursor:pointer;text-align:left;padding:1.5rem 2rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.culture-card[data-v-822730c5]:hover{box-shadow:0 10px 24px rgba(var(--primary-blue-rgb), .08);transform:translateY(-2px)}.culture-card.expanded[data-v-822730c5]{cursor:default;transform:none}.card-header-summary[data-v-822730c5]{justify-content:space-between;align-items:center;width:100%;display:flex}.title-area[data-v-822730c5]{flex-direction:column;gap:.2rem;display:flex}.card-header-summary h2[data-v-822730c5]{color:var(--text-main);font-size:1.35rem}.card-thai-title[data-v-822730c5]{color:var(--text-mute);font-size:.85rem}.badge-area[data-v-822730c5]{align-items:center;gap:1.5rem;display:flex}.warning-badge[data-v-822730c5]{text-transform:uppercase;border-radius:9999px;padding:.35rem .75rem;font-size:.78rem;font-weight:700}.warning-badge.normal-register[data-v-822730c5]{color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .08)}.warning-badge.cultural-difference[data-v-822730c5]{color:#d97706;background:#d9770614}.warning-badge.social-boundaries[data-v-822730c5]{color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .08)}.warning-badge.professional-register[data-v-822730c5]{color:#10b981;background:#10b98114}.warning-badge.informal----use-with-friends-only[data-v-822730c5]{color:#8b5cf6;background:#8b5cf614}.expand-icon[data-v-822730c5]{color:var(--text-mute);font-size:.85rem}.detail-divider[data-v-822730c5]{background:var(--border);width:100%;height:1px;margin:1.5rem 0}.card-detailed-content[data-v-822730c5]{flex-direction:column;gap:1.5rem;display:flex}.detail-section[data-v-822730c5]{flex-direction:column;gap:.5rem;display:flex}.detail-section h3[data-v-822730c5]{color:var(--text-main);font-size:1rem;font-weight:700}.explanation-text[data-v-822730c5]{color:var(--text-main);font-size:.95rem;line-height:1.6}.tip-box[data-v-822730c5]{background:rgba(var(--primary-blue-rgb), .03);border-left:3px solid var(--primary-blue);border-radius:0 .75rem .75rem 0;padding:1rem 1.25rem}.tip-box p[data-v-822730c5]{color:var(--text-main);font-size:.92rem;line-height:1.5}.examples-grid[data-v-822730c5]{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:.25rem;display:grid}.example-card-item[data-v-822730c5]{border:1px solid var(--border);text-align:left;background:#ffffff08;border-radius:1rem;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.25rem;display:flex}.example-header[data-v-822730c5]{justify-content:space-between;align-items:center;width:100%;margin-bottom:.25rem;display:flex}.example-number[data-v-822730c5]{color:var(--text-mute);font-size:.8rem;font-weight:700}.audio-trigger-btn[data-v-822730c5]{background:rgba(var(--primary-blue-rgb), .08);border:1px solid rgba(var(--primary-blue-rgb), .15);cursor:pointer;color:var(--primary-blue);border-radius:9999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600;transition:all .2s}.audio-trigger-btn[data-v-822730c5]:hover{background:var(--primary-blue);color:#fff}.example-english-text[data-v-822730c5]{color:var(--text-main);font-size:1.05rem;font-weight:600;line-height:1.4}.example-thai-translation[data-v-822730c5]{color:var(--text-mute);font-size:.85rem;line-height:1.4}.expand-fade-enter-active[data-v-822730c5],.expand-fade-leave-active[data-v-822730c5]{max-height:800px;transition:all .3s;overflow:hidden}.expand-fade-enter-from[data-v-822730c5],.expand-fade-leave-to[data-v-822730c5]{opacity:0;max-height:0;padding-top:0;padding-bottom:0}@media (width<=768px){.examples-grid[data-v-822730c5]{grid-template-columns:1fr;gap:1rem}.culture-card[data-v-822730c5]{padding:1.2rem 1.5rem}}.offline-badge[data-v-80e85c8e]{color:#fca5a5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ef44441a;border:1px solid #ef444466;border-radius:9999px;align-items:center;gap:.35rem;margin-top:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:500;display:inline-flex}.practice-container[data-v-80e85c8e]{flex-direction:column;gap:2rem;width:100%;display:flex}.practice-header[data-v-80e85c8e]{flex-direction:column;align-items:flex-start;gap:1.25rem;display:flex}.title-section[data-v-80e85c8e]{flex-direction:column;align-items:flex-start;display:flex}.title-section h1[data-v-80e85c8e]{margin-bottom:.15rem}.header-thai[data-v-80e85c8e]{font-size:1rem;font-weight:500}.back-btn[data-v-80e85c8e]{font-size:.85rem}.tab-triggers[data-v-80e85c8e]{border-bottom:2px solid var(--border);gap:.5rem;width:100%;display:flex}.tab-btn[data-v-80e85c8e]{cursor:pointer;color:var(--text-mute);background:0 0;border:none;border-bottom:3px solid #0000;flex-direction:column;align-items:center;margin-bottom:-2px;padding:.8rem 1.5rem;transition:all .25s;display:flex}.tab-btn span[data-v-80e85c8e]{font-size:.95rem;font-weight:700}.tab-btn .thai-translation[data-v-80e85c8e]{color:var(--text-mute);font-size:.72rem}.tab-btn.active[data-v-80e85c8e]{color:var(--primary-blue);border-bottom-color:var(--primary-blue)}.tab-btn.active .thai-translation[data-v-80e85c8e]{color:var(--primary-blue)}.practice-card-box[data-v-80e85c8e]{box-sizing:border-box;text-align:left;flex-direction:column;gap:1.75rem;padding:2.2rem;display:flex}.card-status-bar[data-v-80e85c8e]{color:var(--primary-blue);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px dashed var(--border);flex-direction:column;padding-bottom:.75rem;font-size:.92rem;font-weight:800;display:flex}.card-status-thai[data-v-80e85c8e]{text-transform:none;letter-spacing:normal;margin-top:.15rem;font-size:.76rem;color:var(--text-mute)!important;opacity:1!important}.audio-control-panel[data-v-80e85c8e]{flex-direction:column;gap:.5rem;display:flex}.audio-control-panel p[data-v-80e85c8e]{color:var(--text-main);font-size:1rem;font-weight:700}.label-thai[data-v-80e85c8e]{color:var(--text-mute);opacity:.85;margin-top:-.45rem;font-size:.75rem}.audio-triggers[data-v-80e85c8e]{gap:1.25rem;width:100%;margin-top:.5rem;display:flex}.play-btn[data-v-80e85c8e]{box-sizing:border-box;flex-direction:column;flex:1;height:auto;padding:.55rem 1.5rem;font-size:.88rem;line-height:1.2}.question-panel[data-v-80e85c8e]{border-top:1px solid var(--border);flex-direction:column;gap:.75rem;padding-top:1.5rem;display:flex}.question-desc[data-v-80e85c8e]{color:var(--text-main);font-size:1rem;font-weight:700}.choices-list[data-v-80e85c8e]{flex-direction:column;gap:.8rem;width:100%;margin-top:.75rem;display:flex}.choice-item[data-v-80e85c8e]{box-sizing:border-box;text-align:left;cursor:pointer;align-items:center;gap:1.1rem;width:100%;padding:1.1rem 1.4rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.choice-item[data-v-80e85c8e]:hover{background:rgba(var(--primary-blue-rgb), .04);border-color:var(--primary-blue)}.choice-marker[data-v-80e85c8e]{background:rgba(var(--primary-blue-rgb), .06);border:1px solid var(--border);width:28px;height:28px;color:var(--primary-blue);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:flex}.choice-text[data-v-80e85c8e]{color:var(--text-main);font-size:.98rem;font-weight:600}.choice-item.selected[data-v-80e85c8e]{border-color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .08)}.choice-item.selected .choice-marker[data-v-80e85c8e]{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.choice-item.correct[data-v-80e85c8e]{background:#10b98114;border-color:#10b981}.choice-item.correct .choice-marker[data-v-80e85c8e]{color:#fff;background:#10b981;border-color:#10b981}.choice-item.incorrect[data-v-80e85c8e]{border-color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .08)}.choice-item.incorrect .choice-marker[data-v-80e85c8e]{background:var(--secondary-red);color:#fff;border-color:var(--secondary-red)}.actions-row[data-v-80e85c8e]{gap:1rem;width:100%;margin-top:1.5rem;display:flex}.submit-ans-btn[data-v-80e85c8e],.help-translation-btn[data-v-80e85c8e]{box-sizing:border-box;text-align:center;flex-direction:column;flex:1;height:auto;padding:.5rem 1rem;font-size:.85rem;line-height:1.2}.help-transcription-pane[data-v-80e85c8e]{box-sizing:border-box;flex-direction:column;gap:.5rem;margin-top:1.5rem;padding:1.5rem;font-size:.9rem;display:flex}.en-sentence[data-v-80e85c8e]{color:var(--primary-blue);margin:.25rem 0;font-size:1.15rem;font-weight:700}.thai-sentence[data-v-80e85c8e]{color:var(--text-main);margin:.25rem 0;font-size:.95rem}.pane-hr[data-v-80e85c8e]{border:0;border-top:1px solid var(--border);margin:.5rem 0}.pair-description-panel[data-v-80e85c8e]{border-left:3px solid var(--primary-blue);text-align:left;box-sizing:border-box;background:#ffffff04;border-radius:6px;margin-bottom:.5rem;padding:.85rem 1.1rem}.desc-txt[data-v-80e85c8e]{color:var(--text-main);margin:0 0 .25rem;font-size:.95rem;font-weight:600;line-height:1.4}.desc-txt-thai[data-v-80e85c8e]{color:var(--text-mute);margin:0;font-size:.82rem;line-height:1.35}.minimal-pair-sides[data-v-80e85c8e]{grid-template-columns:1fr 1fr;gap:2rem;width:100%;display:grid}.word-side-panel[data-v-80e85c8e]{box-sizing:border-box;flex-direction:column;gap:1.2rem;padding:1.8rem;display:flex;position:relative;overflow:visible}.word-label-badge[data-v-80e85c8e]{text-transform:uppercase;letter-spacing:.05em;color:#fff;border-top-left-radius:1rem;border-bottom-right-radius:6px;padding:.2rem .6rem;font-size:.62rem;font-weight:800;position:absolute;top:0;left:0}.badge-a[data-v-80e85c8e]{background:var(--primary-blue)}.badge-b[data-v-80e85c8e]{background:var(--secondary-red)}.word-card-core[data-v-80e85c8e]{text-align:center;flex-direction:column;align-items:center;gap:.25rem;margin-top:.5rem;display:flex}.practice-word-heading[data-v-80e85c8e]{color:var(--text-main);word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;margin:0;font-size:clamp(1.5rem,6vw,2.2rem);font-weight:800}.word-ipa[data-v-80e85c8e]{font-family:var(--mono);color:var(--secondary-red);font-size:1rem;font-weight:700}.word-thai[data-v-80e85c8e]{color:var(--text-mute);font-size:.95rem;font-weight:600}.action-buttons-group[data-v-80e85c8e]{gap:.6rem;width:100%;display:flex}.word-listen-btn[data-v-80e85c8e],.word-speak-btn[data-v-80e85c8e]{box-sizing:border-box;flex:1;height:auto;padding:.4rem .8rem;font-size:.8rem;line-height:1.2}.recording-overlay[data-v-80e85c8e]{-webkit-backdrop-filter:blur(12px)saturate(140%);z-index:9999;box-sizing:border-box;background:#0a0c12bf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.recording-overlay-content[data-v-80e85c8e]{text-align:center;box-sizing:border-box;border-radius:1.5rem;flex-direction:column;align-items:center;gap:1.25rem;width:100%;max-width:440px;padding:2.2rem 1.8rem;animation:.3s cubic-bezier(.34,1.56,.64,1) forwards scale-up-bounce-80e85c8e;display:flex;box-shadow:0 10px 40px #00000080}@keyframes scale-up-bounce-80e85c8e{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.recording-title-tag[data-v-80e85c8e]{color:var(--primary-blue);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800}.highlight-word[data-v-80e85c8e]{color:var(--primary-blue);text-shadow:0 0 15px rgba(var(--primary-blue-rgb), .2);margin-top:.25rem;font-size:2.2rem;font-weight:800;display:block}.visualizer-waves-large[data-v-80e85c8e]{justify-content:center;align-items:center;gap:6px;height:50px;margin:.75rem 0;display:flex}.wave-bar-large[data-v-80e85c8e]{background:var(--primary-blue);border-radius:3px;width:4px;height:10px;animation:.6s infinite alternate bounce-large-80e85c8e}@keyframes bounce-large-80e85c8e{0%{opacity:.4;height:10px}to{opacity:1;height:48px}}.overlay-status-msg[data-v-80e85c8e]{color:var(--text-main);margin:0;font-size:.88rem;font-weight:500}.stop-submit-btn[data-v-80e85c8e]{width:100%;max-width:280px;margin-top:.5rem}.card-inline-result[data-v-80e85c8e]{border:1px solid var(--border);box-sizing:border-box;text-align:left;background:#ffffff04;border-radius:12px;flex-direction:column;gap:.75rem;margin-top:1rem;padding:.9rem 1.1rem;display:flex}.card-inline-result.pass[data-v-80e85c8e]{background:#10b98105;border-color:#10b98133}.card-inline-result.fail[data-v-80e85c8e]{background:#ef444405;border-color:#ef444433}.card-inline-result.processing[data-v-80e85c8e]{border-color:rgba(var(--primary-blue-rgb), .2);background:rgba(var(--primary-blue-rgb), .02)}.processing .score-badge[data-v-80e85c8e]{border-color:rgba(var(--primary-blue-rgb), .3);background:rgba(var(--primary-blue-rgb), .08)}.overlay-actions-group[data-v-80e85c8e]{justify-content:center;gap:1rem;width:100%;margin-top:1rem;display:flex}.cancel-submit-btn[data-v-80e85c8e]{border:1px solid var(--border)!important;color:var(--text-main)!important;background:#ffffff0a!important}.cancel-submit-btn[data-v-80e85c8e]:hover{background:#ffffff14!important}.visualizer-waves-large.loading[data-v-80e85c8e]{justify-content:center;align-items:center;display:flex}.result-header[data-v-80e85c8e]{align-items:center;gap:.85rem;display:flex}.score-badge[data-v-80e85c8e]{border:1px solid var(--border);box-sizing:border-box;background:#ffffff0a;border-radius:10px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;min-width:55px;padding:.35rem .55rem;display:flex}.pass .score-badge[data-v-80e85c8e]{background:#10b98114;border-color:#10b9814d}.fail .score-badge[data-v-80e85c8e]{background:#ef444414;border-color:#ef44444d}.score-num[data-v-80e85c8e]{font-size:1.05rem;font-weight:800;line-height:1.1}.pass .score-num[data-v-80e85c8e]{color:#10b981}.fail .score-num[data-v-80e85c8e]{color:#fca5a5}.score-lbl[data-v-80e85c8e]{color:var(--text-mute);letter-spacing:.05em;margin-top:1px;font-size:.5rem;font-weight:800}.verdict-info[data-v-80e85c8e]{flex-direction:column;flex:1;align-items:flex-start;gap:.15rem;display:flex}.verdict-info h4[data-v-80e85c8e]{margin:0;font-size:.9rem;font-weight:700}.pass .verdict-info h4[data-v-80e85c8e]{color:#10b981}.fail .verdict-info h4[data-v-80e85c8e]{color:#fca5a5}.expand-toggle-btn[data-v-80e85c8e]{color:var(--primary-blue);cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:600;transition:opacity .2s}.expand-toggle-btn[data-v-80e85c8e]:hover{opacity:.85;text-decoration:underline}.card-expanded-feedback[data-v-80e85c8e]{border-top:1px solid var(--border);flex-direction:column;gap:.65rem;padding-top:.75rem;display:flex}.user-try-msg[data-v-80e85c8e]{color:var(--text-mute);margin:0;font-size:.8rem}.user-try-msg code[data-v-80e85c8e]{font-family:var(--mono);color:var(--text-main);background:#ffffff0a;border-radius:4px;padding:.1rem .3rem;font-size:.8rem}.inline-play-btn.btn-xs[data-v-80e85c8e]{align-self:flex-start;padding:.25rem .6rem;font-size:.7rem}.ai-speech-feedback-inline[data-v-80e85c8e]{background:rgba(var(--primary-blue-rgb), .02);border:1px dashed rgba(var(--primary-blue-rgb), .2);box-sizing:border-box;border-radius:8px;flex-direction:column;gap:.35rem;padding:.7rem;display:flex}.ai-badge-inline[data-v-80e85c8e]{color:var(--primary-blue);letter-spacing:.03em;font-size:.7rem;font-weight:800}.loader-row-inline[data-v-80e85c8e]{color:var(--text-mute);align-items:center;gap:.35rem;font-size:.75rem;display:flex}.segments-container-inline[data-v-80e85c8e]{flex-direction:column;gap:.4rem;display:flex}.segments-list-inline[data-v-80e85c8e]{flex-wrap:wrap;gap:.35rem;display:flex}.segment-badge-inline[data-v-80e85c8e]{font-family:var(--mono);cursor:pointer;border:1px solid #0000;border-radius:6px;padding:.25rem .5rem;font-size:.9rem;font-weight:700;transition:all .2s;display:inline-block;position:relative}.segment-badge-inline.correct[data-v-80e85c8e]{color:#10b981;background:#10b9811f;border-color:#10b98140}.segment-badge-inline.incorrect[data-v-80e85c8e]{color:var(--secondary-red);background:#dc26261f;border-color:#dc262640}.segment-badge-inline.missing[data-v-80e85c8e]{color:#f59e0b;background:#f59e0b1f;border-color:#f59e0b40}.segment-tooltip-inline[data-v-80e85c8e]{visibility:hidden;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);width:max-content;max-width:180px;color:var(--text-main);text-align:center;opacity:0;pointer-events:none;white-space:normal;word-wrap:break-word;background:#14161ef2;border-radius:6px;padding:.5rem .65rem;font-family:inherit;font-size:.72rem;font-weight:400;transition:opacity .2s,visibility .2s;position:absolute;bottom:130%;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0006}.segment-badge-inline:hover .segment-tooltip-inline[data-v-80e85c8e]{visibility:visible;opacity:1}.segment-tooltip-inline[data-v-80e85c8e]:after{content:"";border:5px solid #0000;border-top-color:#14161ef2;margin-left:-5px;position:absolute;top:100%;left:50%}.ai-feedback-txt-inline[data-v-80e85c8e]{color:var(--text-main);white-space:pre-wrap;margin:0;font-size:.78rem;line-height:1.35}.ai-feedback-txt-inline.thai-translation[data-v-80e85c8e]{color:var(--text-mute);font-size:.75rem}.pair-nav-row[data-v-80e85c8e]{justify-content:space-between;width:100%;margin-top:1.25rem;display:flex}.nav-arrow-btn[data-v-80e85c8e]{flex-direction:column;height:auto;padding:.5rem 1.5rem;font-size:.85rem;line-height:1.25}@media (width<=768px){.practice-container[data-v-80e85c8e]{gap:1rem}.practice-card-box[data-v-80e85c8e]{border-radius:.75rem;gap:1rem;padding:1rem}.minimal-pair-sides[data-v-80e85c8e]{grid-template-columns:1fr;gap:.85rem}.word-side-panel[data-v-80e85c8e]{gap:.85rem;padding:1.1rem}.tab-triggers[data-v-80e85c8e]{gap:.2rem}.tab-btn[data-v-80e85c8e]{text-align:center;flex:1;padding:.5rem .35rem}.tab-btn span[data-v-80e85c8e]{font-size:.8rem}.tab-btn .thai-translation[data-v-80e85c8e]{font-size:.65rem}.audio-triggers[data-v-80e85c8e]{flex-direction:column;gap:.65rem}.play-btn[data-v-80e85c8e]{width:100%}.actions-row[data-v-80e85c8e]{flex-direction:column;gap:.65rem}.submit-ans-btn[data-v-80e85c8e],.help-translation-btn[data-v-80e85c8e]{width:100%}.pair-nav-row[data-v-80e85c8e]{flex-direction:column;gap:.65rem;margin-top:.85rem}.nav-arrow-btn[data-v-80e85c8e]{box-sizing:border-box;width:100%}.recording-overlay-content[data-v-80e85c8e]{gap:1rem;padding:1.6rem 1.2rem}.highlight-word[data-v-80e85c8e]{font-size:1.8rem}.visualizer-waves-large[data-v-80e85c8e]{height:40px}.wave-bar-large[data-v-80e85c8e]{width:3px;height:8px}@keyframes bounce-large-80e85c8e{0%{height:8px}to{height:38px}}}@keyframes spin-80e85c8e{to{transform:rotate(360deg)}}.assessment-container[data-v-602ef3c7]{flex-direction:column;gap:1.5rem;width:100%;max-width:900px;margin:0 auto;display:flex}.progress-bar-wrapper[data-v-602ef3c7]{flex-direction:column;gap:.4rem;display:flex}.progress-meta[data-v-602ef3c7]{justify-content:space-between;font-size:.72rem;font-weight:700;display:flex}.step-label[data-v-602ef3c7]{color:var(--primary-blue);letter-spacing:.05em}.progress-track[data-v-602ef3c7]{background:rgba(var(--primary-blue-rgb), .05);border-radius:99px;width:100%;height:6px;overflow:hidden}.progress-fill[data-v-602ef3c7]{background:var(--primary-blue);border-radius:99px;height:100%;transition:width .4s}.intro-view[data-v-602ef3c7],.results-view[data-v-602ef3c7],.question-view[data-v-602ef3c7]{box-sizing:border-box;padding:3rem}.text-center[data-v-602ef3c7]{text-align:center}.big-icon[data-v-602ef3c7]{margin-bottom:1rem;font-size:3rem!important}.header-sub-thai[data-v-602ef3c7]{margin-top:.1rem;margin-bottom:2rem;font-size:1.1rem;font-weight:600}.intro-desc[data-v-602ef3c7]{margin-bottom:1rem;font-size:1.1rem;line-height:1.6}.desc-thai[data-v-602ef3c7]{margin-bottom:2.5rem;font-size:.95rem;line-height:1.6}.action-row[data-v-602ef3c7]{justify-content:center;gap:1.5rem;display:flex}.question-header[data-v-602ef3c7]{border-bottom:1px solid var(--border);text-align:left;margin-bottom:2rem;padding-bottom:1.25rem}.question-header h2[data-v-602ef3c7]{margin:0}.sub-title[data-v-602ef3c7]{font-size:.75rem}.question-body[data-v-602ef3c7]{text-align:left;flex-direction:column;gap:2rem;display:flex}.tts-section[data-v-602ef3c7]{background:rgba(var(--primary-blue-rgb), .02);border:1px solid var(--border);text-align:center;border-radius:.75rem;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem;display:flex}.audio-play-btn[data-v-602ef3c7]{display:inline-flex}.audio-play-btn.playing[data-v-602ef3c7]{animation:1.5s infinite pulse}.audio-hint[data-v-602ef3c7]{margin-bottom:.1rem;font-size:.85rem}.reading-passage[data-v-602ef3c7]{background:rgba(var(--primary-blue-rgb), .03);border-left:4px solid var(--primary-blue);box-sizing:border-box;border-radius:1rem;padding:1.8rem}.passage-text[data-v-602ef3c7]{color:var(--text-main);font-size:1.15rem;font-weight:700;line-height:1.6}.prompt-section[data-v-602ef3c7]{border-bottom:1px dashed var(--border);padding-bottom:1rem}.prompt-eng[data-v-602ef3c7]{color:var(--text-main);font-size:1.2rem;font-weight:700}.prompt-thai[data-v-602ef3c7]{font-size:.95rem}.choices-list[data-v-602ef3c7]{flex-direction:column;gap:1rem;display:flex}.choice-card[data-v-602ef3c7]{background:var(--input-bg);border:1px solid var(--border);color:var(--text-main);cursor:pointer;text-align:left;font-family:var(--sans);border-radius:.75rem;align-items:center;gap:1.2rem;padding:1rem 1.5rem;font-size:1rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.choice-card[data-v-602ef3c7]:hover{background:rgba(var(--primary-blue-rgb), .04);border-color:var(--primary-blue)}.choice-card.selected[data-v-602ef3c7]{background:rgba(var(--primary-blue-rgb), .08);border-color:var(--primary-blue);box-shadow:0 0 12px rgba(var(--primary-blue-rgb), .12)}.choice-marker[data-v-602ef3c7]{background:rgba(var(--primary-blue-rgb), .06);width:28px;height:28px;color:var(--primary-blue);border:1px solid rgba(var(--primary-blue-rgb), .15);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:800;display:flex}.choice-card.selected .choice-marker[data-v-602ef3c7]{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.choice-text[data-v-602ef3c7]{flex:1;font-weight:600}.question-footer[data-v-602ef3c7]{justify-content:flex-end;margin-top:2rem;display:flex}.submit-btn[data-v-602ef3c7]{min-width:200px}.speaking-body[data-v-602ef3c7]{text-align:center;align-items:center}.speech-target[data-v-602ef3c7]{color:var(--text-main);margin-bottom:.5rem;font-size:2.2rem;font-weight:800}.speech-phonetics[data-v-602ef3c7]{color:var(--text-mute);margin-bottom:1.5rem;font-size:1.15rem}.pronunciation-hint-buttons[data-v-602ef3c7]{justify-content:center;gap:1rem;margin-bottom:1.5rem;display:flex}.tts-listen-btn[data-v-602ef3c7]{padding:.5rem 1.2rem}.recording-controls[data-v-602ef3c7]{flex-direction:column;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.record-btn[data-v-602ef3c7]{border:3px solid var(--border);background:var(--glass-bg);width:160px;height:160px;color:var(--text-main);cursor:pointer;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 8px 24px #0028680d}.record-btn[data-v-602ef3c7]:hover{border-color:var(--primary-blue);transform:translateY(-2px)}.record-btn.recording[data-v-602ef3c7]{border-color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .08);animation:1.5s infinite pulse}.record-btn.success[data-v-602ef3c7]{background:#10b98114;border-color:#10b981}.mic-icon[data-v-602ef3c7]{font-size:2.5rem}.transcription-preview[data-v-602ef3c7]{background:rgba(var(--primary-blue-rgb), .03);border:1px dashed var(--border);border-radius:.5rem;width:100%;max-width:400px;padding:1rem 1.5rem}.preview-label[data-v-602ef3c7]{color:var(--text-mute);font-size:.72rem;font-weight:800}.preview-text[data-v-602ef3c7]{color:var(--primary-blue);margin-top:.2rem;font-size:1rem;font-weight:700}.manual-transcription-input[data-v-602ef3c7]{border:1px solid var(--border);width:100%;color:var(--text-main);text-align:center;box-sizing:border-box;background:#ffffff08;border-radius:9999px;outline:none;margin-top:.35rem;padding:.5rem 1rem;font-family:inherit;font-size:.95rem;transition:all .25s}.manual-transcription-input[data-v-602ef3c7]:focus{border-color:var(--primary-blue);background:#ffffff0d}.self-check-section[data-v-602ef3c7]{background:rgba(var(--primary-blue-rgb), .02);border:1px solid var(--border);text-align:left;box-sizing:border-box;border-radius:1rem;width:100%;padding:1.5rem}.checklist-desc[data-v-602ef3c7]{margin-top:.5rem;margin-bottom:1rem;font-size:.88rem;font-weight:600}.checklist-items[data-v-602ef3c7]{flex-direction:column;gap:.75rem;display:flex}.checklist-item-row[data-v-602ef3c7]{cursor:pointer;align-items:flex-start;gap:.75rem;font-size:.9rem;font-weight:500;display:flex}.checklist-item-row input[data-v-602ef3c7]{cursor:pointer;margin-top:.2rem}.loader-spinner[data-v-602ef3c7]{border:3px solid #ffffff1a;border-top:3px solid var(--primary-blue);border-radius:50%;width:30px;height:30px;margin:0 auto;animation:1s linear infinite spin-602ef3c7}@keyframes spin-602ef3c7{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.results-grid[data-v-602ef3c7]{grid-template-columns:1.2fr 1fr;gap:2rem;margin-top:2rem;display:grid}.chart-card[data-v-602ef3c7]{box-sizing:border-box;justify-content:center;align-items:center;min-height:380px;padding:1.5rem;display:flex}.radar-wrapper[data-v-602ef3c7]{width:100%;height:100%;min-height:320px;position:relative}.details-card[data-v-602ef3c7]{text-align:left;flex-direction:column;gap:1.5rem;display:flex}.skill-levels-list[data-v-602ef3c7]{flex-direction:column;gap:.75rem;display:flex}.skill-level-row[data-v-602ef3c7]{background:rgba(var(--primary-blue-rgb), .03);border:1px solid var(--border);border-radius:.75rem;justify-content:space-between;align-items:center;padding:.8rem 1.2rem;font-weight:700;display:flex}.sk-val[data-v-602ef3c7]{color:var(--primary-blue);text-transform:uppercase}.level-desc[data-v-602ef3c7]{background:rgba(var(--primary-blue-rgb), .01);border-left:2px solid var(--border);border-radius:.5rem;padding:1rem;font-size:.85rem}.submit-action-row[data-v-602ef3c7]{flex-direction:column;gap:.75rem;margin-top:auto;display:flex}.complete-btn[data-v-602ef3c7]{flex-direction:column;gap:.1rem;width:100%;display:flex}.btn-sub-thai[data-v-602ef3c7]{opacity:.9;font-size:.65rem}.btn-sub-thai.text-white[data-v-602ef3c7]{color:#ffffffe6}.error-msg[data-v-602ef3c7]{color:var(--secondary-red);text-align:center;font-size:.85rem;font-weight:600}@media (width<=800px){.results-grid[data-v-602ef3c7]{grid-template-columns:1fr}.assessment-container[data-v-602ef3c7]{padding:1rem}}@media (width<=480px){.intro-view[data-v-602ef3c7],.results-view[data-v-602ef3c7],.question-view[data-v-602ef3c7]{padding:1.5rem 1.25rem}.question-header[data-v-602ef3c7]{margin-bottom:1.25rem;padding-bottom:1rem}.choice-card[data-v-602ef3c7]{gap:.75rem;padding:.8rem 1rem}}.segments-list-inline[data-v-602ef3c7]{flex-wrap:wrap;gap:.35rem;display:flex}.segment-badge-inline[data-v-602ef3c7]{font-family:var(--mono,monospace);cursor:pointer;border:1px solid #0000;border-radius:6px;padding:.25rem .5rem;font-size:.9rem;font-weight:700;transition:all .2s;display:inline-block;position:relative}.segment-badge-inline.correct[data-v-602ef3c7]{color:#10b981;background:#10b9811f;border-color:#10b98140}.segment-badge-inline.incorrect[data-v-602ef3c7]{color:var(--secondary-red);background:#dc26261f;border-color:#dc262640}.segment-badge-inline.missing[data-v-602ef3c7]{color:#f59e0b;background:#f59e0b1f;border-color:#f59e0b40}.segment-tooltip-inline[data-v-602ef3c7]{visibility:hidden;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);width:max-content;max-width:180px;color:var(--text-main);text-align:center;opacity:0;pointer-events:none;white-space:normal;word-wrap:break-word;background:#14161ef2;border-radius:6px;padding:.5rem .65rem;font-family:inherit;font-size:.72rem;font-weight:400;transition:opacity .2s,visibility .2s;position:absolute;bottom:130%;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0006}.segment-badge-inline:hover .segment-tooltip-inline[data-v-602ef3c7]{visibility:visible;opacity:1}.segment-tooltip-inline[data-v-602ef3c7]:after{content:"";border:5px solid #0000;border-top-color:#14161ef2;margin-left:-5px;position:absolute;top:100%;left:50%}.writing-container[data-v-13299b77]{flex-direction:column;gap:2rem;width:100%;max-width:900px;margin:0 auto;display:flex}.writing-header[data-v-13299b77]{flex-direction:column;align-items:flex-start;gap:1.25rem;display:flex}.header-titles h1[data-v-13299b77]{margin-bottom:.15rem}.header-thai[data-v-13299b77]{font-size:1rem;font-weight:500}.tab-navigator[data-v-13299b77]{gap:1rem;margin-top:.5rem;display:flex}.tab-btn[data-v-13299b77]{background:var(--glass-bg);border:1px solid var(--border);cursor:pointer;font-family:var(--sans);border-radius:999px;flex-direction:column;align-items:center;gap:.05rem;padding:.6rem 1.4rem;font-weight:700;transition:all .25s;display:flex}.tab-btn.active[data-v-13299b77]{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.tab-btn.active .thai-translation[data-v-13299b77]{color:#fffc}.skeleton-loader-container[data-v-13299b77]{flex-direction:column;gap:1.5rem;display:flex}.skeleton-card[data-v-13299b77]{height:120px}.practice-tab-content[data-v-13299b77]{grid-template-columns:1fr 2fr;gap:2rem;display:grid}@media (width<=800px){.practice-tab-content[data-v-13299b77]{grid-template-columns:1fr}}.prompts-list[data-v-13299b77]{height:fit-content;padding:1.5rem}.prompt-chips[data-v-13299b77]{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.prompt-chip[data-v-13299b77]{border:1px solid var(--border);background:var(--input-bg);color:var(--text-main);cursor:pointer;text-align:left;border-radius:.75rem;flex-direction:column;gap:.2rem;padding:.8rem 1.2rem;transition:all .2s;display:flex}.prompt-chip[data-v-13299b77]:hover{border-color:var(--primary-blue)}.prompt-chip.active[data-v-13299b77]{border-color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .06)}.chip-type[data-v-13299b77]{color:var(--text-mute);text-transform:uppercase;font-size:.72rem;font-weight:800}.chip-target[data-v-13299b77]{font-weight:700}.workspace-area[data-v-13299b77]{flex-direction:column;gap:2rem;padding:2.2rem;display:flex}.workspace-header[data-v-13299b77]{border-bottom:1px solid var(--border);padding-bottom:1.2rem}.badge-row[data-v-13299b77]{gap:.75rem;margin-bottom:.75rem;display:flex}.difficulty-badge[data-v-13299b77],.type-badge[data-v-13299b77]{border-radius:4px;padding:.2rem .6rem;font-size:.68rem;font-weight:800}.difficulty-badge.beginner[data-v-13299b77]{color:#10b981;background:#10b9811a}.difficulty-badge.intermediate[data-v-13299b77]{background:rgba(var(--primary-blue-rgb), .1);color:var(--primary-blue)}.difficulty-badge.advanced[data-v-13299b77]{background:rgba(var(--secondary-red-rgb), .1);color:var(--secondary-red)}.type-badge[data-v-13299b77]{color:var(--text-mute);background:#0000000d}.prompt-instruction-en[data-v-13299b77]{font-size:1.3rem;font-weight:800}.canvas-workspace-wrapper[data-v-13299b77]{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.canvas-box[data-v-13299b77]{border:2px solid var(--border);background:#f8fafc;border-radius:1rem;width:320px;height:320px;position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #00000005}.canvas-box canvas[data-v-13299b77]{cursor:crosshair;touch-action:none;width:100%;height:100%}.success-overlay[data-v-13299b77]{box-sizing:border-box;text-align:center;background:#fffffff2;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:2rem;display:flex;position:absolute;top:0;left:0}.success-check[data-v-13299b77]{margin-bottom:.5rem;font-size:3.5rem}.sentence-builder-workspace[data-v-13299b77]{flex-direction:column;gap:2rem;display:flex}.construction-field[data-v-13299b77],.scrambled-selection[data-v-13299b77]{flex-direction:column;gap:.75rem;display:flex}.field-label[data-v-13299b77]{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:800}.word-slots[data-v-13299b77]{background:var(--input-bg);border:1px solid var(--border);border-radius:.75rem;flex-wrap:wrap;align-items:center;gap:.75rem;min-height:70px;padding:1rem;display:flex}.empty-field-hint[data-v-13299b77]{color:var(--text-mute);text-align:center;width:100%;font-size:.88rem}.word-pill-slot[data-v-13299b77]{background:var(--primary-blue);color:#fff;cursor:pointer;font-weight:700;font-family:var(--sans);border:none;border-radius:999px;padding:.5rem 1.2rem;font-size:.95rem;transition:all .2s}.word-pill-slot[data-v-13299b77]:hover{background:var(--secondary-red);transform:scale(.98)}.scrambled-words-grid[data-v-13299b77]{flex-wrap:wrap;gap:.75rem;display:flex}.word-pill-select[data-v-13299b77]{padding:.5rem 1.2rem;font-size:.95rem}.feedback-panel[data-v-13299b77]{border-radius:.5rem;padding:1rem 1.5rem;font-size:.9rem;font-weight:700}.feedback-panel.success[data-v-13299b77]{color:#10b981;background:#10b98114;border:1px solid #10b98133}.feedback-panel.error[data-v-13299b77]{color:#ef4444;background:#ef444414;border:1px solid #ef444433}.workspace-footer[data-v-13299b77]{justify-content:flex-end;gap:1rem;margin-top:1rem;display:flex}.essay-workspace[data-v-13299b77]{flex-direction:column;gap:1.5rem;display:flex}.essay-textarea[data-v-13299b77]{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text-main);font-size:1.05rem;font-family:var(--sans);box-sizing:border-box;resize:vertical;border-radius:1rem;outline:none;padding:1.5rem;line-height:1.6}.essay-textarea[data-v-13299b77]:focus{border-color:var(--primary-blue)}.essay-meta[data-v-13299b77]{justify-content:space-between;font-size:.8rem;font-weight:700;display:flex}.essay-feedback-container[data-v-13299b77]{margin-top:2rem;padding:2rem}.feedback-header[data-v-13299b77]{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.feedback-header h3[data-v-13299b77]{margin:0}.feedback-body[data-v-13299b77]{flex-direction:column;gap:2rem;display:flex}.comment-text[data-v-13299b77]{background:rgba(var(--primary-blue-rgb), .03);border-left:4px solid var(--primary-blue);border-radius:.5rem;padding:1.2rem;font-weight:500;line-height:1.5}.corrections-list[data-v-13299b77]{flex-direction:column;gap:1.25rem;margin-top:.75rem;display:flex}.correction-card[data-v-13299b77]{background:var(--input-bg);border:1px solid var(--border);border-radius:.75rem;padding:1.2rem}.card-meta[data-v-13299b77]{margin-bottom:.75rem}.error-badge[data-v-13299b77]{background:rgba(var(--secondary-red-rgb), .08);color:var(--secondary-red);text-transform:uppercase;border-radius:4px;padding:.25rem .5rem;font-size:.65rem;font-weight:800}.correction-diff-row[data-v-13299b77]{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.75rem;display:grid}.diff-box[data-v-13299b77]{border:1px solid #0000;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.95rem;display:flex}.original-box[data-v-13299b77]{color:var(--secondary-red);background:#dc26260a;border-color:#dc262626}.corrected-box[data-v-13299b77]{color:#10b981;background:#10b9810a;border-color:#10b98126;font-weight:700}.diff-icon[data-v-13299b77]{font-size:1rem}.diff-text[data-v-13299b77]{font-family:var(--sans)}@media (width<=600px){.correction-diff-row[data-v-13299b77]{grid-template-columns:1fr;gap:.5rem}}.explanation-thai[data-v-13299b77]{color:var(--text-mute);border-top:1px dashed var(--border);margin:0;padding-top:.5rem;font-size:.88rem;line-height:1.4}.model-answer-text[data-v-13299b77]{color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .04);border-radius:.5rem;padding:1.2rem;font-size:1.1rem;font-weight:700}.portfolio-tab-content[data-v-13299b77]{flex-direction:column;gap:1.5rem;display:flex}.empty-portfolio[data-v-13299b77]{text-align:center;padding:3rem}.empty-portfolio h2[data-v-13299b77]{margin-bottom:.5rem}.empty-portfolio p[data-v-13299b77]{max-width:500px;margin-top:1.5rem;margin-left:auto;margin-right:auto}.portfolio-list[data-v-13299b77]{flex-direction:column;gap:1.5rem;display:flex}.portfolio-card[data-v-13299b77]{flex-direction:column;gap:1.2rem;padding:1.8rem;display:flex}.portfolio-meta[data-v-13299b77]{border-bottom:1px dashed var(--border);justify-content:space-between;padding-bottom:.75rem;font-size:.85rem;font-weight:700;display:flex}.sub-date[data-v-13299b77]{color:var(--text-mute)}.prompt-title[data-v-13299b77]{color:var(--primary-blue)}.portfolio-body[data-v-13299b77]{flex-direction:column;gap:1.2rem;display:flex}.section-label[data-v-13299b77]{color:var(--text-mute);text-transform:uppercase;margin-bottom:.4rem;font-size:.72rem;font-weight:800;display:block}.submitted-text[data-v-13299b77]{margin:0;font-size:1.1rem;font-weight:700}.trace-feedback[data-v-13299b77],.builder-feedback[data-v-13299b77],.essay-feedback[data-v-13299b77]{background:rgba(var(--primary-blue-rgb), .02);border:1px solid var(--border);border-radius:.5rem;padding:1rem 1.2rem}.accuracy-score[data-v-13299b77]{color:#10b981;font-size:.85rem;font-weight:800}.result-badge[data-v-13299b77]{font-size:.8rem;font-weight:800}.result-badge.correct[data-v-13299b77]{color:#10b981}.result-badge.incorrect[data-v-13299b77]{color:var(--secondary-red)}.corrected-meta[data-v-13299b77]{margin-bottom:1rem}.corrected-version-text[data-v-13299b77]{color:#10b981;margin:0;font-size:1.05rem;font-weight:700}.portfolio-feedback-comment[data-v-13299b77]{border-top:1px dashed var(--border);padding-top:.8rem}.feedback-comment[data-v-13299b77]{margin:0;font-size:.88rem;line-height:1.4}.vocab-writing-integration[data-v-13299b77]{border-left:4px solid var(--primary-blue);text-align:left;align-items:flex-start;gap:1.25rem;margin-bottom:1.5rem;padding:1.5rem;display:flex}.integration-icon[data-v-13299b77]{font-size:2rem;line-height:1}.integration-body h3[data-v-13299b77]{margin:0 0 .15rem;font-size:1.15rem}.integration-body p[data-v-13299b77]{color:var(--text-mute);margin:.5rem 0 0;font-size:.9rem}.levelup-overlay[data-v-3a4cc091]{-webkit-backdrop-filter:blur(10px)saturate(120%);z-index:10000;box-sizing:border-box;background:#0b0e14d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.levelup-card[data-v-3a4cc091]{z-index:10002;box-sizing:border-box;width:90%;max-width:500px;padding:3rem;animation:.4s cubic-bezier(.34,1.56,.64,1) forwards scaleUp-3a4cc091;position:relative}@keyframes scaleUp-3a4cc091{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.badge-icon[data-v-3a4cc091]{margin-bottom:.5rem;font-size:4rem;animation:2.5s ease-in-out infinite float-3a4cc091;display:block}@keyframes float-3a4cc091{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.levelup-sub-thai[data-v-3a4cc091]{color:var(--primary-blue);margin-top:.1rem;font-size:1.15rem;font-weight:600}.milestone-box[data-v-3a4cc091]{background:rgba(var(--primary-blue-rgb), .05);border:1px solid var(--border);border-radius:1rem;margin:1.5rem 0;padding:1.25rem}.milestone-skill[data-v-3a4cc091]{color:var(--text-mute);letter-spacing:.05em;margin:0;font-size:1.1rem}.level-indicator[data-v-3a4cc091]{color:var(--primary-blue);margin-top:.25rem;font-size:2.2rem;font-weight:800;line-height:1}.competency-detail[data-v-3a4cc091]{border-left:4px solid var(--primary-blue);box-sizing:border-box;text-align:left;background:#ffffff05;border-radius:.5rem;margin-bottom:2rem;padding:1.2rem}.competency-title[data-v-3a4cc091]{color:var(--text-mute);text-transform:uppercase;margin-bottom:.4rem;font-size:.72rem;font-weight:800;display:block}.desc-en[data-v-3a4cc091]{color:var(--text-main);margin:0;font-size:1rem;font-weight:700;line-height:1.45}.desc-th[data-v-3a4cc091]{margin-top:.2rem;font-size:.82rem}.close-btn[data-v-3a4cc091]{width:100%}.confetti-container[data-v-3a4cc091]{pointer-events:none;z-index:10001;width:100%;height:100%;position:absolute;top:0;left:0}.particle[data-v-3a4cc091]{background:var(--color);width:6px;height:12px;left:var(--x);opacity:.8;animation:3.5s linear infinite fall-3a4cc091;animation-delay:var(--delay);border-radius:2px;position:absolute;top:-15px}@keyframes fall-3a4cc091{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(105vh)rotate(360deg)}}.text-center[data-v-3a4cc091]{text-align:center}.badge-overlay[data-v-15ca3252]{-webkit-backdrop-filter:blur(10px)saturate(120%);z-index:10000;box-sizing:border-box;background:#0b0e14d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.badge-card[data-v-15ca3252]{z-index:10002;box-sizing:border-box;width:90%;max-width:450px;padding:3rem;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards scaleUp-15ca3252;position:relative;overflow:hidden}.badge-glow-bg[data-v-15ca3252]{z-index:-1;pointer-events:none;background:radial-gradient(circle at top,#f59e0b26,#0000 70%);width:100%;height:100%;position:absolute;top:0;left:0}@keyframes scaleUp-15ca3252{0%{opacity:0;transform:scale(.85)}60%{opacity:1;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.badge-icon[data-v-15ca3252]{text-shadow:0 0 20px #f59e0b66;margin-bottom:.5rem;font-size:5rem;animation:3s ease-in-out infinite float-15ca3252,2s infinite pulseGlow-15ca3252;display:block}@keyframes float-15ca3252{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulseGlow-15ca3252{0%,to{text-shadow:0 0 10px #f59e0b4d}50%{text-shadow:0 0 30px #f59e0b99}}.badge-sub-thai[data-v-15ca3252]{color:var(--color-accent,#f59e0b);margin-top:.1rem;font-size:1.15rem;font-weight:600}.badge-box[data-v-15ca3252]{background:#f59e0b0d;border:1px solid #f59e0b33;border-radius:1rem;margin:1.5rem 0;padding:1.25rem}.badge-title[data-v-15ca3252]{color:var(--text-main);margin:0;font-size:1.4rem;font-weight:800}.badge-title-thai[data-v-15ca3252]{color:var(--color-accent,#f59e0b);margin-top:.25rem;font-size:.9rem;display:block}.badge-detail[data-v-15ca3252]{border-left:4px solid var(--color-accent,#f59e0b);box-sizing:border-box;text-align:left;background:#ffffff05;border-radius:.5rem;margin-bottom:2rem;padding:1.2rem}.desc-en[data-v-15ca3252]{color:var(--text-main);margin:0;font-size:.95rem;font-weight:700;line-height:1.45}.desc-th[data-v-15ca3252]{color:var(--text-mute);margin-top:.3rem;font-size:.82rem}.close-btn[data-v-15ca3252]{width:100%}.confetti-container[data-v-15ca3252]{pointer-events:none;z-index:10001;width:100%;height:100%;position:absolute;top:0;left:0}.particle[data-v-15ca3252]{background:var(--color);width:8px;height:8px;left:var(--x);opacity:.8;animation:3s linear infinite fall-15ca3252;animation-delay:var(--delay);border-radius:50%;position:absolute;top:-20px}@keyframes fall-15ca3252{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(105vh)scale(.5)}}.text-center[data-v-15ca3252]{text-align:center}.text-left[data-v-15ca3252]{text-align:left}.conversation-container[data-v-a95582d0]{flex-direction:column;gap:2rem;width:100%;max-width:900px;margin:0 auto;display:flex}.conversation-header[data-v-a95582d0]{flex-direction:column;align-items:flex-start;gap:1.25rem;display:flex}.title-section h1[data-v-a95582d0]{margin-bottom:.15rem}.header-thai[data-v-a95582d0]{font-size:1rem;font-weight:500}.back-btn[data-v-a95582d0]{font-size:.85rem}.scenarios-grid[data-v-a95582d0]{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2rem;width:100%;display:grid}.scenario-card[data-v-a95582d0]{text-align:center;box-sizing:border-box;flex-direction:column;align-items:center;gap:.75rem;padding:2.2rem;transition:all .3s;display:flex}.scenario-locked[data-v-a95582d0]{opacity:.55;filter:grayscale(40%)}.scenario-locked .start-roleplay-btn[data-v-a95582d0]{cursor:not-allowed}.level-badge[data-v-a95582d0]{color:var(--color-accent,#00bfff);vertical-align:middle;background:#ffffff14;border-radius:9999px;margin-left:.5rem;padding:.15rem .5rem;font-size:.7rem;display:inline-block}.card-icon[data-v-a95582d0]{margin-bottom:.5rem;font-size:3rem;line-height:1}.scenario-card h2[data-v-a95582d0]{margin:0;font-size:1.35rem;font-weight:800}.scenario-thai-title[data-v-a95582d0]{color:var(--text-mute);font-size:.85rem;font-weight:600}.desc-en[data-v-a95582d0]{color:var(--text-main);margin:.5rem 0 0;font-size:.92rem;line-height:1.45}.desc-thai[data-v-a95582d0]{color:var(--text-mute);margin:0;font-size:.78rem;line-height:1.4}.start-roleplay-btn[data-v-a95582d0]{flex-direction:column;width:100%;height:auto;margin-top:1.5rem;padding:.6rem 1.5rem;line-height:1.25}.chat-room-layout[data-v-a95582d0]{box-sizing:border-box;flex-direction:column;height:600px;display:flex;position:relative;overflow:hidden}.chat-header-bar[data-v-a95582d0]{border-bottom:1px solid var(--border);box-sizing:border-box;justify-content:space-between;align-items:center;padding:1rem 1.5rem;font-size:.85rem;font-weight:700;display:flex}.partner-avatar-badge[data-v-a95582d0]{color:var(--primary-blue)}.scenario-context-tag[data-v-a95582d0]{color:var(--text-mute);font-size:.75rem}.chat-scroll-container[data-v-a95582d0]{box-sizing:border-box;background:#0000000d;flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem;display:flex;overflow-y:auto}.message-row-wrapper[data-v-a95582d0]{flex-direction:column;display:flex}.message-row[data-v-a95582d0]{align-items:flex-start;gap:1rem;max-width:85%;display:flex}.message-row.assistant[data-v-a95582d0]{text-align:left;align-self:flex-start}.message-row.user[data-v-a95582d0]{text-align:right;flex-direction:row;align-self:flex-end}.chat-avatar[data-v-a95582d0]{background:var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.25rem;display:flex}.user-avatar[data-v-a95582d0]{background:var(--primary-blue);color:#fff}.bubble-content-block[data-v-a95582d0]{flex-direction:column;gap:.4rem;max-width:100%;display:flex}.bubble-body[data-v-a95582d0]{box-sizing:border-box;word-break:break-word;border-radius:1.25rem;padding:1rem 1.25rem;font-size:.98rem;line-height:1.5;box-shadow:0 2px 8px #00000026}.assistant-bubble[data-v-a95582d0]{background:var(--input-bg);border:1px solid var(--border);color:var(--text-main);border-top-left-radius:4px}.user-bubble[data-v-a95582d0]{background:var(--primary-blue);color:#fff;border-top-right-radius:4px}.message-text[data-v-a95582d0]{margin:0}.message-text[data-v-a95582d0] ul{margin:.5rem 0;padding-left:1.25rem;list-style-type:disc}.message-text[data-v-a95582d0] ol{margin:.5rem 0;padding-left:1.25rem;list-style-type:decimal}.message-text[data-v-a95582d0] li{margin-bottom:.25rem;line-height:1.45}.bubble-actions[data-v-a95582d0]{align-items:center;gap:1rem;margin-top:.25rem;display:flex}.toggle-translation-btn[data-v-a95582d0]{color:var(--primary-blue);cursor:pointer;background:0 0;border:none;padding:.2rem 0;font-size:.75rem;font-weight:700;transition:all .2s}.toggle-translation-btn[data-v-a95582d0]:hover{text-decoration:underline}.translation-pane[data-v-a95582d0]{margin-top:.5rem}.divider-line[data-v-a95582d0]{border:0;border-top:1px dashed var(--border);margin:.5rem 0}.thai-translation-text[data-v-a95582d0]{color:var(--text-mute);margin:0;font-size:.88rem;font-weight:500}.grammar-coach-alert[data-v-a95582d0]{text-align:left;background:#f59e0b0d;border:1px dashed #f59e0b4d;border-radius:.75rem;max-width:100%;margin-top:.5rem;padding:.8rem 1rem;font-size:.8rem;line-height:1.45}.coach-alert-header[data-v-a95582d0]{color:#f59e0b;align-items:center;gap:.35rem;margin-bottom:.25rem;display:flex}.coach-alert-body[data-v-a95582d0]{color:var(--text-main);margin:0}.status-indicator-bar[data-v-a95582d0]{border-top:1px solid var(--border);box-sizing:border-box;background:#00000005;align-items:center;height:40px;padding:0 1.5rem;font-size:.75rem;font-weight:700;display:flex}.status-msg[data-v-a95582d0]{align-items:center;gap:.5rem;width:100%;display:flex}.status-msg.idle[data-v-a95582d0]{color:var(--text-mute)}.status-msg.recording[data-v-a95582d0]{color:var(--secondary-red)}.status-msg.thinking[data-v-a95582d0]{color:var(--primary-blue)}.status-msg.error[data-v-a95582d0]{color:var(--secondary-red)}.pulsing-red-dot[data-v-a95582d0]{animation:1s infinite alternate pulse-a95582d0}@keyframes pulse-a95582d0{to{opacity:.3}}.mini-spinner[data-v-a95582d0]{border:2px solid var(--border);border-top-color:var(--primary-blue);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin-a95582d0}@keyframes spin-a95582d0{to{transform:rotate(360deg)}}.listening-status-banner[data-v-a95582d0]{color:var(--secondary-red);cursor:pointer;box-sizing:border-box;background:#ef444414;border-top:1px solid #ef444433;border-bottom:1px solid #ef444433;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8rem;font-weight:600;animation:2s ease-in-out infinite banner-pulse-a95582d0;display:flex}@keyframes banner-pulse-a95582d0{0%{background:#ef44440d}50%{background:#ef44441f}to{background:#ef44440d}}.listening-indicator-dot[data-v-a95582d0]{background-color:var(--secondary-red);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1s ease-in-out infinite dot-pulse-a95582d0}@keyframes dot-pulse-a95582d0{0%{opacity:.5;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}to{opacity:.5;transform:scale(.8)}}.chat-footer-controls[data-v-a95582d0]{background:var(--input-bg);border-top:1px solid var(--border);box-sizing:border-box;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex}.record-control-btn[data-v-a95582d0]{height:42px;min-width:unset;background:rgba(var(--secondary-red-rgb), .05);border:1px solid var(--border);color:var(--text-main);cursor:pointer;box-sizing:border-box;padding:.6rem 1.2rem;font-size:.82rem;transition:all .25s}.record-control-btn[data-v-a95582d0]:hover{background:rgba(var(--secondary-red-rgb), .1);border-color:var(--secondary-red)}.record-control-btn.active[data-v-a95582d0]{background:var(--secondary-red);color:#fff;border-color:var(--secondary-red)}.message-text-input[data-v-a95582d0]{background:var(--glass-bg);border:1px solid var(--border);height:42px;color:var(--text-main);font-size:.95rem;font-family:var(--sans);box-sizing:border-box;border-radius:9999px;outline:none;flex:1;padding:0 1.25rem}.message-text-input[data-v-a95582d0]:focus{border-color:var(--primary-blue);background:#00000014}.send-control-btn[data-v-a95582d0]{flex-direction:column;justify-content:center;align-items:center;height:42px;padding:.5rem 1.5rem;line-height:1.2;display:flex}@media (width<=600px){.chat-footer-controls[data-v-a95582d0]{flex-wrap:wrap;gap:.75rem}.message-text-input[data-v-a95582d0]{order:-1;width:100%}.record-control-btn[data-v-a95582d0],.send-control-btn[data-v-a95582d0]{flex:1}}.alphabet-numbers-container[data-v-252a3381]{flex-direction:column;gap:2rem;width:100%;max-width:1050px;margin:0 auto;display:flex}.view-header[data-v-252a3381]{flex-direction:column;align-items:flex-start;gap:1.25rem;display:flex}.back-btn[data-v-252a3381]{font-size:.85rem}.title-section h1[data-v-252a3381]{margin-bottom:.15rem}.header-sub[data-v-252a3381]{font-size:1rem;font-weight:500}.tabs-bar[data-v-252a3381]{border-radius:9999px;align-self:center;gap:.25rem;width:fit-content;padding:.4rem;display:flex}.tab-btn[data-v-252a3381]{color:var(--text-mute);cursor:pointer;font-size:.95rem;font-weight:700;font-family:var(--sans);background:0 0;border:none;border-radius:9999px;padding:.6rem 2rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.tab-btn[data-v-252a3381]:hover{color:var(--text-main);background:#ffffff08}.tab-btn.active[data-v-252a3381]{background:var(--primary-blue);color:#fff}.content-grid[data-v-252a3381]{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:1.5rem;width:100%;display:grid}.card-item[data-v-252a3381]{text-align:center;cursor:pointer;box-sizing:border-box;flex-direction:column;align-items:center;padding:1.5rem 1.25rem;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),border-color .25s;display:flex;position:relative}.card-item[data-v-252a3381]:hover{border-color:var(--primary-blue);box-shadow:0 10px 25px var(--glass-shadow);transform:translateY(-4px)}.card-play-icon[data-v-252a3381]{opacity:.4;font-size:.95rem;transition:opacity .2s;position:absolute;top:.75rem;right:.75rem}.card-item:hover .card-play-icon[data-v-252a3381]{opacity:.85}.card-divider[data-v-252a3381]{border:0;border-top:1px solid var(--border);width:100%;margin:1rem 0}.letter-display-box[data-v-252a3381]{flex-direction:column;align-items:center;gap:.2rem;display:flex}.big-letter[data-v-252a3381]{color:var(--text-main);font-size:2.8rem;font-weight:850;line-height:1.1}.letter-pron[data-v-252a3381]{color:var(--primary-blue);font-size:.8rem;font-weight:700}.letter-word-box[data-v-252a3381]{flex-direction:column;gap:.2rem;display:flex}.word-english[data-v-252a3381]{color:var(--text-main);font-size:1.05rem;font-weight:800}.word-thai-guide[data-v-252a3381]{font-size:.72rem}.big-number[data-v-252a3381]{color:var(--primary-blue);font-size:2.6rem;font-weight:850;line-height:1.1}.number-word-box[data-v-252a3381]{flex-direction:column;gap:.2rem;display:flex}@media (width<=600px){.tabs-bar[data-v-252a3381]{width:100%}.tab-btn[data-v-252a3381]{flex:1;padding:.6rem .5rem;font-size:.85rem}.content-grid[data-v-252a3381]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem}.big-letter[data-v-252a3381]{font-size:2.2rem}.big-number[data-v-252a3381]{font-size:2rem}}.ai-roleplay-step-wrapper[data-v-391ab646]{background:rgba(var(--primary-blue-rgb), .01);box-sizing:border-box;flex-direction:column;height:520px;display:flex;overflow:hidden}.roleplay-header-box[data-v-391ab646]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1.25rem;display:flex}.header-left h3[data-v-391ab646]{margin:.1rem 0;font-size:1.15rem}.roleplay-badge[data-v-391ab646]{color:var(--primary-blue);letter-spacing:.05em;background:rgba(var(--primary-blue-rgb), .08);border-radius:9999px;padding:.2rem .5rem;font-size:.7rem;font-weight:800}.desc[data-v-391ab646]{color:var(--text-mute);margin:0;font-size:.85rem}.turns-progress-circle[data-v-391ab646]{border:2px solid var(--primary-blue);background:rgba(var(--primary-blue-rgb), .05);box-sizing:border-box;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:82px;height:82px;padding:6px;display:flex;box-shadow:0 4px 12px #0000001a}.turn-count[data-v-391ab646]{color:var(--text-main);margin-bottom:2px;font-size:1.15rem;font-weight:800;line-height:1.1}.turn-lbl[data-v-391ab646]{color:var(--text-mute);text-transform:uppercase;text-align:center;word-wrap:break-word;max-width:68px;font-size:.52rem;line-height:1.25}.chat-log-box[data-v-391ab646]{background:#00000026;flex-direction:column;flex:1;gap:1.25rem;padding:1.5rem;display:flex;overflow-y:auto}.chat-bubble-row[data-v-391ab646]{gap:.75rem;max-width:80%;display:flex}.chat-bubble-row.assistant[data-v-391ab646]{align-self:flex-start}.chat-bubble-row.user[data-v-391ab646]{flex-direction:row-reverse;align-self:flex-end}.bubble-avatar[data-v-391ab646]{border:1px solid var(--border);background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:flex;box-shadow:0 2px 8px #00000026}.bubble-message-text[data-v-391ab646]{box-sizing:border-box;text-align:left;border-radius:1rem;padding:.9rem 1.1rem}.chat-bubble-row.assistant .bubble-message-text[data-v-391ab646]{background:rgba(var(--primary-blue-rgb), .08);border-left:4px solid var(--primary-blue);border-top-left-radius:.25rem}.chat-bubble-row.user .bubble-message-text[data-v-391ab646]{border-right:4px solid var(--text-mute);background:#ffffff08;border-top-right-radius:.25rem}.english-text[data-v-391ab646]{color:var(--text-main);margin:0;font-size:.95rem;font-weight:600;line-height:1.45}.english-text[data-v-391ab646] ul{margin:.5rem 0;padding-left:1.25rem;list-style-type:disc}.english-text[data-v-391ab646] ol{margin:.5rem 0;padding-left:1.25rem;list-style-type:decimal}.english-text[data-v-391ab646] li{margin-bottom:.25rem;line-height:1.45}.audio-widget-row[data-v-391ab646]{margin-top:.5rem}.translation-toggle-row[data-v-391ab646]{border-top:1px dashed var(--border);margin-top:.5rem;padding-top:.4rem}.translate-btn[data-v-391ab646]{color:var(--primary-blue);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;font-weight:700;text-decoration:underline}.translate-btn[data-v-391ab646]:hover{opacity:.8}.grammar-tips-box[data-v-391ab646]{background:rgba(var(--primary-blue-rgb), .05);border:1px solid rgba(var(--primary-blue-rgb), .15);margin-top:.6rem;padding:.6rem}.tips-badge[data-v-391ab646]{color:var(--primary-blue);margin-bottom:.15rem;font-size:.72rem;font-weight:800;display:block}.tips-content[data-v-391ab646]{color:var(--text-main);margin:0;font-size:.78rem;line-height:1.35}.loading-bubble[data-v-391ab646]{align-items:center;gap:.3rem;padding:.6rem 1rem;display:flex}.typing-dot[data-v-391ab646]{background:var(--text-mute);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite typing-391ab646}.typing-dot[data-v-391ab646]:nth-child(2){animation-delay:.2s}.typing-dot[data-v-391ab646]:nth-child(3){animation-delay:.4s}@keyframes typing-391ab646{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.chat-control-deck[data-v-391ab646]{border-top:1px solid var(--border);background:var(--bg);padding:1.25rem}.input-row[data-v-391ab646]{gap:.75rem;width:100%;display:flex}.input-field[data-v-391ab646]{border:1px solid var(--border);background:var(--input-bg);color:var(--text-main);border-radius:9999px;flex:1;padding:.5rem 1.25rem;font-size:.9rem}.input-field[data-v-391ab646]:focus{border-color:var(--primary-blue);outline:none}.mic-btn[data-v-391ab646]{color:var(--text-main);border:1px solid var(--border);background:#ffffff0d}.mic-btn.active[data-v-391ab646]{border-color:#0000;animation:1.5s infinite pulse-red-391ab646;background:var(--secondary-red)!important;color:#fff!important}@keyframes pulse-red-391ab646{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}.success-banner[data-v-391ab646]{text-align:left;background:#10b98114;border:1px solid #10b98133;border-radius:1rem;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.success-info h4[data-v-391ab646]{color:#10b981;margin:0;font-size:1.05rem}.success-info p[data-v-391ab646]{color:var(--text-mute);margin:.15rem 0 0;font-size:.8rem}.finish-roleplay-btn[data-v-391ab646]{color:var(--bg)!important;background:#10b981!important}.finish-roleplay-btn[data-v-391ab646]:hover{box-shadow:0 0 15px #10b98166!important}.lesson-wizard-container[data-v-11dbec40]{flex-direction:column;gap:2rem;width:100%;max-width:900px;margin:0 auto;display:flex}.wizard-header[data-v-11dbec40]{flex-direction:column;gap:1.5rem;padding:1.5rem 2rem;display:flex}.wizard-meta[data-v-11dbec40]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.back-btn[data-v-11dbec40]{padding:.4rem 1rem;font-size:.8rem}.lesson-title-badge[data-v-11dbec40]{color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .05);border:1px solid rgba(var(--primary-blue-rgb), .1);border-radius:9999px;padding:.3rem 1rem;font-size:.9rem;font-weight:700}.steps-progress-bar[data-v-11dbec40]{justify-content:space-between;align-items:center;width:100%;padding-bottom:.5rem;display:flex;overflow-x:auto}.step-dot[data-v-11dbec40]{color:var(--text-mute);flex-direction:column;align-items:center;gap:.4rem;min-width:80px;display:flex;position:relative}.dot-num[data-v-11dbec40]{background:var(--input-bg);border:2px solid var(--border);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:800;transition:all .3s;display:flex}.dot-label[data-v-11dbec40]{text-align:center;font-size:.72rem;font-weight:700;line-height:1.2}.thai-label[data-v-11dbec40]{opacity:.7;font-size:.62rem;font-weight:500;display:block}.step-dot.active .dot-num[data-v-11dbec40]{border-color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .05);color:var(--primary-blue);box-shadow:0 0 8px rgba(var(--primary-blue-rgb), .25);transform:scale(1.1)}.step-dot.active[data-v-11dbec40]{color:var(--primary-blue)}.step-dot.completed .dot-num[data-v-11dbec40]{color:#10b981;background:#10b98114;border-color:#10b981}.step-dot.completed[data-v-11dbec40]{color:#10b981}.step-dot.locked[data-v-11dbec40]{opacity:.4}.step-connector[data-v-11dbec40]{background:var(--border);flex-grow:1;min-width:20px;height:3px;margin:-32px .5rem 0;transition:background .3s}.step-connector.filled[data-v-11dbec40]{background:#10b981}.wizard-body[data-v-11dbec40]{width:100%}.step-intro-text[data-v-11dbec40]{text-align:left;margin-bottom:1.5rem}.step-intro-text h2[data-v-11dbec40]{margin-bottom:.2rem}.vocab-cards-slider-container[data-v-11dbec40]{justify-content:center;align-items:center;width:100%;display:flex}.vocab-image-wrapper[data-v-11dbec40]{border-radius:1rem;justify-content:center;align-items:center;margin-left:auto;margin-right:auto;display:flex;position:relative;overflow:hidden}.front-img-size[data-v-11dbec40]{object-fit:cover;width:auto;max-height:200px!important}.image-shimmer[data-v-11dbec40]{background:linear-gradient(90deg,#fff0 0%,#ffffff1a 50%,#fff0 100%) 0 0/200% 100%;width:100%;height:100%;animation:1.5s linear infinite shimmer;position:absolute;top:0;left:0}.wizard-vocab-card[data-v-11dbec40]{box-sizing:border-box;text-align:center;flex-direction:column;gap:1.5rem;width:100%;max-width:600px;padding:2.5rem;display:flex}.vocab-badge-row[data-v-11dbec40]{border-bottom:1px dashed var(--border);justify-content:space-between;align-items:center;padding-bottom:.75rem;display:flex}.category-pill[data-v-11dbec40]{text-transform:uppercase;color:var(--primary-blue);letter-spacing:.05em;font-size:.75rem;font-weight:800}.progress-indicator[data-v-11dbec40]{color:var(--text-mute);font-size:.75rem;font-weight:700}.vocab-main-word[data-v-11dbec40]{margin:1rem 0}.english-target[data-v-11dbec40]{color:var(--text-main);word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;margin:0;font-size:clamp(1.8rem,8vw,3.2rem);font-weight:800;line-height:1.1}.vocab-voice-controls[data-v-11dbec40]{justify-content:center;margin:1.25rem 0;display:flex}.vocab-phonetics-info[data-v-11dbec40]{flex-direction:column;align-items:center;gap:.75rem;display:flex}.phonetic-ipa[data-v-11dbec40]{font-family:var(--mono);color:var(--text-mute);border:1px dashed var(--border);background:#00000008;border-radius:99px;padding:.15rem .6rem;font-size:.88rem}html.dark .phonetic-ipa[data-v-11dbec40]{background:#ffffff08}.syllables-track[data-v-11dbec40]{justify-content:center;gap:.5rem;display:flex}.syllable-pill[data-v-11dbec40]{background:var(--input-bg);border:1px solid var(--border);border-radius:8px;flex-direction:column;align-items:center;min-width:45px;padding:.35rem .75rem;display:flex}.syllable-pill.stressed[data-v-11dbec40]{border-color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .02);transform:translateY(-2px)}.syllable-pill.stressed .en-syl[data-v-11dbec40]{color:var(--secondary-red);font-weight:800}.en-syl[data-v-11dbec40]{color:var(--text-main);font-size:.95rem;font-weight:700}.th-syl[data-v-11dbec40]{color:var(--text-mute);margin-top:.1rem;font-size:.72rem}.thai-meaning-reveal-box[data-v-11dbec40]{justify-content:center;align-items:center;min-height:70px;margin:1.25rem 0;display:flex}.reveal-btn[data-v-11dbec40]{padding:.6rem 1.8rem}.revealed-content[data-v-11dbec40]{flex-direction:column;gap:.25rem;display:flex}.thai-translation-text[data-v-11dbec40]{color:var(--text-main);margin:0;font-size:2.2rem;font-weight:800}.thai-pronunciation-hint[data-v-11dbec40]{color:var(--primary-blue);font-size:.9rem;font-weight:700}.vocab-example-pane[data-v-11dbec40]{background:rgba(var(--primary-blue-rgb), .02);border-left:3px solid var(--primary-blue);text-align:left;border-radius:4px;padding:1rem 1.25rem}.example-header[data-v-11dbec40]{color:var(--text-mute);margin-bottom:.25rem;font-size:.75rem}.ex-phrase-en[data-v-11dbec40]{color:var(--text-main);margin:0;font-size:1rem;font-weight:700}.example-audio-wrapper[data-v-11dbec40]{justify-content:flex-start;width:100%;margin-top:.75rem;margin-bottom:.75rem;display:flex}.ex-phrase-th[data-v-11dbec40]{margin-top:.25rem;margin-bottom:0;font-size:.85rem}.slider-actions[data-v-11dbec40]{margin-top:1rem}.next-vocab-btn[data-v-11dbec40]{width:100%;padding:.8rem}.key-vocab-breakout[data-v-11dbec40]{text-align:left;margin-top:1rem}.key-vocab-breakout h4[data-v-11dbec40]{color:var(--text-mute);margin-bottom:.5rem;font-size:.85rem}.breakout-grid[data-v-11dbec40]{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.breakout-item[data-v-11dbec40]{border-radius:8px;justify-content:space-between;align-items:center;padding:.5rem .8rem;font-size:.82rem;display:flex}.speaking-drill-card[data-v-11dbec40]{text-align:center;flex-direction:column;gap:1.5rem;padding:2.5rem;display:flex}.card-main-target[data-v-11dbec40]{border-bottom:1px solid var(--border);padding-bottom:1.25rem}.drill-tag[data-v-11dbec40]{color:var(--primary-blue);letter-spacing:.08em;font-size:.72rem;font-weight:800}.voice-actions-panel[data-v-11dbec40]{flex-direction:column;align-items:center;gap:1rem;display:flex}.speak-record-btn[data-v-11dbec40]{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue);padding:.8rem 2.2rem}.speak-record-btn.is-recording[data-v-11dbec40]{background:var(--secondary-red);border-color:var(--secondary-red);animation:1.5s infinite pulseRecording-11dbec40}@keyframes pulseRecording-11dbec40{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.visualizer-waves[data-v-11dbec40]{align-items:center;gap:4px;height:24px;display:flex}.wave-bar[data-v-11dbec40]{background:var(--secondary-red);border-radius:2px;width:4px;height:6px;animation:1.2s ease-in-out infinite waveMotion-11dbec40}@keyframes waveMotion-11dbec40{0%,to{height:6px}50%{height:24px}}.wave-bar.delay-1[data-v-11dbec40]{animation-delay:.15s}.wave-bar.delay-2[data-v-11dbec40]{animation-delay:.3s}.wave-bar.delay-3[data-v-11dbec40]{animation-delay:.45s}.ai-coaching-output[data-v-11dbec40]{text-align:left;border-left:3px solid var(--primary-blue);margin-top:1rem;padding:1.25rem}.loading-coaching-spinner[data-v-11dbec40]{color:var(--text-mute);align-items:center;gap:.5rem;margin-top:.5rem;font-size:.8rem;display:flex}.spinner-dot[data-v-11dbec40]{background:var(--primary-blue);border-radius:50%;width:8px;height:8px;animation:.8s infinite alternate bounceDot-11dbec40}@keyframes bounceDot-11dbec40{0%{transform:translateY(0)}to{transform:translateY(-6px)}}.segments-inline[data-v-11dbec40]{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;margin-bottom:.5rem;display:flex}.segment-pill[data-v-11dbec40]{cursor:help;border-radius:4px;padding:.2rem .5rem;font-size:.8rem;font-weight:700;position:relative}.segment-pill.correct[data-v-11dbec40]{color:#10b981;background:#10b98114;border:1px solid #10b98126}.segment-pill.incorrect[data-v-11dbec40]{color:#ef4444;background:#ef444414;border:1px solid #ef444426}.seg-tooltip[data-v-11dbec40]{background:var(--text-main);color:var(--bg);white-space:nowrap;z-index:10;pointer-events:none;border-radius:4px;padding:.3rem .6rem;font-size:.7rem;display:none;position:absolute;bottom:120%;left:50%;transform:translate(-50%)}.segment-pill:hover .seg-tooltip[data-v-11dbec40]{display:block}.general-coach-msg[data-v-11dbec40]{margin-top:.5rem;margin-bottom:0;font-size:.85rem;line-height:1.4}.section-complete-nav[data-v-11dbec40]{justify-content:flex-end;margin-top:1rem;display:flex}.grammar-spot-card[data-v-11dbec40]{text-align:left;border-left:4px solid var(--primary-blue);padding:2.5rem}.grammar-badge-header[data-v-11dbec40]{border-bottom:1px dashed var(--border);align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.spot-icon[data-v-11dbec40]{font-size:1.8rem}.grammar-badge-header h3[data-v-11dbec40]{margin:0;font-size:1.4rem}.grammar-thai-text[data-v-11dbec40]{font-size:1.05rem;line-height:1.6}.quiz-question-card[data-v-11dbec40]{text-align:left;padding:2.2rem}.quiz-status-header[data-v-11dbec40]{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px dashed var(--border);justify-content:space-between;margin-bottom:1.5rem;padding-bottom:.75rem;font-size:.8rem;font-weight:700;display:flex}.quiz-question-text[data-v-11dbec40]{margin-bottom:1.5rem}.quiz-question-text h3[data-v-11dbec40]{margin-bottom:.25rem;font-size:1.3rem}.quiz-choices-grid[data-v-11dbec40]{grid-template-columns:1fr;gap:.75rem;margin-bottom:1.5rem;display:grid}.quiz-choice-btn[data-v-11dbec40]{background:var(--input-bg);border:1px solid var(--border);color:var(--text-main);cursor:pointer;text-align:left;border-radius:10px;align-items:center;gap:1rem;width:100%;padding:.9rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex}.quiz-choice-btn[data-v-11dbec40]:hover:not(:disabled){border-color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .06)}.quiz-choice-btn.selected[data-v-11dbec40]{border-color:var(--primary-blue);background:rgba(var(--primary-blue-rgb), .1)}.quiz-choice-btn.correct[data-v-11dbec40]{color:#10b981;background:#10b98114;border-color:#10b981}.quiz-choice-btn.incorrect[data-v-11dbec40]{color:#ef4444;background:#ef444414;border-color:#ef4444}.choice-abc[data-v-11dbec40]{background:rgba(var(--primary-blue-rgb), .06);width:26px;height:26px;color:var(--primary-blue);border:1px solid rgba(var(--primary-blue-rgb), .15);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.8rem;font-weight:800;transition:all .25s;display:flex}.quiz-choice-btn.selected .choice-abc[data-v-11dbec40]{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue)}.quiz-choice-btn.correct .choice-abc[data-v-11dbec40]{color:#fff;background:#10b981;border-color:#10b981}.quiz-choice-btn.incorrect .choice-abc[data-v-11dbec40]{color:#fff;background:#ef4444;border-color:#ef4444}.quiz-actions-footer[data-v-11dbec40]{justify-content:flex-end;display:flex}.success-celebration-card[data-v-11dbec40]{border-radius:24px;flex-direction:column;align-items:center;gap:1.5rem;padding:3.5rem 2rem;animation:.8s cubic-bezier(.34,1.56,.64,1) forwards celebratePop-11dbec40;display:flex;position:relative;overflow:hidden}@keyframes celebratePop-11dbec40{0%{opacity:0;transform:scale(.8)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.confetti-container[data-v-11dbec40]{pointer-events:none;border-radius:inherit;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.confetti-piece[data-v-11dbec40]{opacity:.85;border-radius:2px;width:8px;height:12px;animation:3.5s linear infinite fall-11dbec40;position:absolute;top:-15px}@keyframes fall-11dbec40{0%{opacity:1;transform:translateY(0)rotate(0)}90%{opacity:.85}to{opacity:0;transform:translateY(550px)rotate(360deg)}}.celebration-particles[data-v-11dbec40]{z-index:2;font-size:2.8rem;animation:4s linear infinite rotateParticles-11dbec40}@keyframes rotateParticles-11dbec40{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-heading[data-v-11dbec40]{z-index:2;margin:0;font-size:2.6rem;font-weight:800}.success-thai[data-v-11dbec40]{z-index:2}.xp-earned-badge[data-v-11dbec40]{z-index:2;background:#f59e0b14;border:1px solid #f59e0b40;border-radius:9999px;flex-direction:column;align-items:center;padding:.75rem 2rem;animation:2s ease-in-out infinite pulseGlow-11dbec40,.5s ease-out scaleIn-11dbec40;display:flex;box-shadow:0 0 15px #f59e0b26}@keyframes pulseGlow-11dbec40{0%,to{transform:scale(1);box-shadow:0 0 15px #f59e0b26}50%{transform:scale(1.05);box-shadow:0 0 25px #f59e0b59}}@keyframes scaleIn-11dbec40{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.xp-val[data-v-11dbec40]{color:#f59e0b;font-size:1.5rem;font-weight:800}.xp-lbl[data-v-11dbec40]{text-transform:uppercase;color:var(--text-mute);letter-spacing:.05em;font-size:.65rem;font-weight:700}.next-lesson-unlock-card[data-v-11dbec40]{text-align:left;opacity:0;z-index:2;border-radius:16px;align-items:center;gap:1.2rem;width:100%;max-width:450px;margin-top:.5rem;padding:1rem 1.5rem;animation:.6s cubic-bezier(.16,1,.3,1) .4s forwards slideUpFade-11dbec40;display:flex;background:#10b98114!important;border:1px solid #10b98140!important}.unlock-icon[data-v-11dbec40]{font-size:2rem;animation:1s ease-in-out infinite alternate wobble-11dbec40}@keyframes wobble-11dbec40{0%{transform:rotate(-5deg)}to{transform:rotate(10deg)}}.unlock-info[data-v-11dbec40]{flex-direction:column;gap:.2rem;display:flex}.unlock-title[data-v-11dbec40]{text-transform:uppercase;color:#10b981;letter-spacing:.05em;font-size:.72rem;font-weight:700}.next-lesson-name[data-v-11dbec40]{color:var(--text-color);font-size:1.1rem;font-weight:800}.next-lesson-thai[data-v-11dbec40]{color:var(--text-mute);font-size:.85rem}@keyframes slideUpFade-11dbec40{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.quiz-score-summary[data-v-11dbec40]{flex-direction:column;gap:.2rem;display:flex}.return-home-btn[data-v-11dbec40]{margin-top:1rem;padding:.8rem 2.5rem}.circular-metric[data-v-11dbec40]{border:6px solid var(--primary-blue);border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;width:90px;height:90px;display:flex}.speaking-feedback-box.fail .circular-metric[data-v-11dbec40]{border-color:var(--secondary-red)}.pct-val[data-v-11dbec40]{color:var(--text-main);font-size:1.3rem;font-weight:800;line-height:1.1}.pct-lbl[data-v-11dbec40]{color:var(--text-mute);font-size:.55rem;font-weight:700}.feedback-grid-info[data-v-11dbec40]{text-align:left;align-items:flex-start;gap:1.5rem;display:flex}.speaking-feedback-box[data-v-11dbec40]{background:rgba(var(--primary-blue-rgb), .02);border-left:4px solid var(--primary-blue);border-radius:12px;margin-top:1rem;padding:1.5rem}.speaking-feedback-box.fail[data-v-11dbec40]{border-left-color:var(--secondary-red);background:rgba(var(--secondary-red-rgb), .02)}.animate-fade-in[data-v-11dbec40]{animation:.4s ease-out forwards fadeIn-11dbec40}@keyframes fadeIn-11dbec40{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up[data-v-11dbec40]{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideUp-11dbec40}@keyframes slideUp-11dbec40{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=600px){.feedback-grid-info[data-v-11dbec40]{text-align:center;flex-direction:column;align-items:center}.wizard-vocab-card[data-v-11dbec40]{padding:1.5rem}.breakout-grid[data-v-11dbec40]{grid-template-columns:1fr}.speaking-feedback-box[data-v-11dbec40]{padding:1.25rem}.segments-inline[data-v-11dbec40]{justify-content:center}.ai-coaching-output[data-v-11dbec40]{text-align:left}}.phonetics-row[data-v-11dbec40]{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;display:flex}.thai-pron-badge[data-v-11dbec40]{background:rgba(var(--primary-blue-rgb), .05);color:var(--primary-blue);border:1px solid rgba(var(--primary-blue-rgb), .15);border-radius:99px;padding:.15rem .65rem;font-size:.88rem;font-weight:600}html.dark .thai-pron-badge[data-v-11dbec40]{color:var(--text-main);border-color:var(--border);background:#ffffff0d}.dictionary-view-container[data-v-d05f3514]{box-sizing:border-box;flex-direction:column;gap:1.5rem;width:100%;max-width:900px;margin:0 auto;padding:1rem 0;display:flex}.dictionary-header[data-v-d05f3514]{flex-direction:column;align-items:flex-start;gap:1rem;width:100%;display:flex}.back-btn[data-v-d05f3514]{gap:.5rem;font-size:.9rem}.header-titles[data-v-d05f3514]{text-align:left;flex-direction:column;display:flex}.dictionary-title[data-v-d05f3514]{color:var(--text-main);margin:0;font-size:2.2rem;font-weight:800;line-height:1.2}.dictionary-subtitle[data-v-d05f3514]{color:var(--text-mute);margin:.35rem 0 0;font-size:1rem;line-height:1.4}.search-box-panel[data-v-d05f3514]{box-sizing:border-box;text-align:left;flex-direction:column;gap:1.25rem;width:100%;padding:1.75rem;display:flex}.search-form[data-v-d05f3514]{gap:1rem;width:100%;display:flex}.search-input-wrapper[data-v-d05f3514]{flex:1;position:relative}.dictionary-input[data-v-d05f3514]{border:1px solid var(--border);width:100%;color:var(--text-main);box-sizing:border-box;background:#ffffff08;border-radius:9999px;outline:none;padding:.8rem 3rem .8rem 1.5rem;font-family:inherit;font-size:1.05rem;transition:all .25s}.dictionary-input[data-v-d05f3514]:focus{border-color:var(--primary-blue);background:#ffffff0d;box-shadow:0 0 12px #00bfff33}.clear-input-btn[data-v-d05f3514]{color:var(--text-mute);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.9rem;transition:color .15s;position:absolute;top:50%;right:1.2rem;transform:translateY(-50%)}.clear-input-btn[data-v-d05f3514]:hover{color:var(--text-main)}.search-submit-btn[data-v-d05f3514]{flex-shrink:0;min-width:120px;font-size:1rem}.history-section[data-v-d05f3514]{border-top:1px solid var(--border);flex-direction:column;gap:.6rem;padding-top:1rem;display:flex}.history-header[data-v-d05f3514]{justify-content:space-between;align-items:center;display:flex}.history-label[data-v-d05f3514]{color:var(--text-mute);font-size:.85rem;font-weight:600}.clear-history-btn[data-v-d05f3514]{color:var(--text-mute);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem;text-decoration:underline}.clear-history-btn[data-v-d05f3514]:hover{color:var(--primary-blue)}.history-pills-container[data-v-d05f3514]{flex-wrap:wrap;gap:.5rem;display:flex}.history-pill[data-v-d05f3514]{font-size:.85rem;padding:.35rem 1rem!important}.result-placeholder-wrapper[data-v-d05f3514],.skeleton-container[data-v-d05f3514]{width:100%}.skeleton-card[data-v-d05f3514]{flex-direction:column;gap:1.25rem;min-height:250px;padding:2rem;display:flex}.skeleton-loader[data-v-d05f3514]{background:#ffffff0d;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-d05f3514}.skeleton-header-line[data-v-d05f3514]{background:#ffffff0f;border-radius:.5rem;width:40%;height:2.2rem}.skeleton-line-long[data-v-d05f3514]{background:#ffffff0a;border-radius:.25rem;width:90%;height:1.2rem}.skeleton-line-med[data-v-d05f3514]{background:#ffffff0a;border-radius:.25rem;width:75%;height:1.2rem}.skeleton-line-short[data-v-d05f3514]{background:#ffffff0a;border-radius:.25rem;width:45%;height:1.2rem}@keyframes pulse-d05f3514{0%,to{opacity:1}50%{opacity:.4}}.idle-panel[data-v-d05f3514]{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:3rem 2rem;display:flex}.idle-icon[data-v-d05f3514]{font-size:3rem}.idle-panel h2[data-v-d05f3514]{color:var(--text-main);margin:0;font-size:1.5rem}.idle-panel p[data-v-d05f3514]{color:var(--text-mute);max-width:600px;margin:0;font-size:.95rem;line-height:1.5}.thai-info[data-v-d05f3514]{opacity:.85;color:var(--primary-blue)!important;font-size:.9rem!important}.error-panel[data-v-d05f3514]{text-align:center;flex-direction:column;align-items:center;gap:1rem;padding:3rem 2rem;display:flex}.error-icon[data-v-d05f3514]{font-size:3rem}.error-panel h2[data-v-d05f3514]{color:#ff6b6b;margin:0;font-size:1.4rem}.error-panel p[data-v-d05f3514]{color:var(--text-mute);max-width:500px;margin:0;font-size:.95rem;line-height:1.5}.retry-btn[data-v-d05f3514]{margin-top:.5rem}.result-panel[data-v-d05f3514]{flex-direction:column;gap:1.5rem;width:100%;display:flex}.word-detail-header[data-v-d05f3514]{text-align:left;justify-content:space-between;align-items:center;padding:1.75rem;display:flex}.word-info-group[data-v-d05f3514]{flex-direction:column;gap:.5rem;display:flex}.word-name[data-v-d05f3514]{color:var(--text-main);text-transform:lowercase;margin:0;font-size:2.5rem;font-weight:800}.bookmark-btn[data-v-d05f3514]{border:1px solid var(--border);color:var(--text-main);cursor:pointer;background:#ffffff1a;border-radius:9999px;align-items:center;gap:.4rem;padding:.3rem .8rem;font-size:.85rem;transition:all .2s;display:flex}.bookmark-btn[data-v-d05f3514]:hover{background:#fff3}.bookmark-btn.bookmarked[data-v-d05f3514]{color:#10b981;background:#10b98126;border-color:#10b981}.phonetics-group[data-v-d05f3514]{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.ipa-badge[data-v-d05f3514]{color:var(--primary-blue);background:#00bfff1a;border:1px solid #00bfff40;border-radius:9999px;padding:.25rem .75rem;font-family:monospace;font-size:1.1rem}.thai-pron-badge[data-v-d05f3514]{color:var(--text-main);border:1px solid var(--border);background:#ffffff0d;border-radius:9999px;padding:.25rem .75rem;font-size:1.1rem;font-weight:500}.audio-player-wrapper[data-v-d05f3514]{width:100%;margin-top:.5rem}.play-audio-btn[data-v-d05f3514]{gap:.5rem;font-size:.85rem;padding:.35rem 1rem!important}.play-audio-btn.playing[data-v-d05f3514]{opacity:.75;box-shadow:0 0 10px #00bfff80}.source-tag[data-v-d05f3514]{border:1px solid var(--border);color:var(--text-mute);background:#ffffff0f;border-radius:.25rem;align-self:flex-start;padding:.25rem .6rem;font-size:.75rem}.meanings-list[data-v-d05f3514]{flex-direction:column;gap:1.5rem;display:flex}.meaning-card[data-v-d05f3514]{text-align:left;flex-direction:column;gap:1.25rem;padding:1.75rem;display:flex}.meaning-card-header[data-v-d05f3514]{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.part-of-speech-badge[data-v-d05f3514]{letter-spacing:.08em;border:1px solid var(--border);color:var(--text-main);background:#ffffff14;border-radius:.5rem;padding:.3rem .8rem;font-size:.75rem;font-weight:800;display:inline-block}.direct-translation-badge[data-v-d05f3514]{color:#0284c7;background:#0284c714;border:1px solid #0284c726;border-radius:9999px;align-items:center;padding:.3rem .85rem;font-size:.85rem;font-weight:600;transition:all .25s;display:inline-flex}html.dark .direct-translation-badge[data-v-d05f3514]{color:#38bdf8;background:#38bdf814;border:1px solid #38bdf826}.definitions-ol[data-v-d05f3514]{flex-direction:column;gap:1.5rem;margin:0;padding-left:1.25rem;display:flex}.definition-item[data-v-d05f3514]{flex-direction:column;gap:.5rem;display:flex}.definition-texts[data-v-d05f3514]{flex-direction:column;gap:.25rem;display:flex}.definition-en[data-v-d05f3514]{color:var(--text-main);margin:0;font-size:1.05rem;line-height:1.45}.definition-th[data-v-d05f3514]{color:var(--primary-blue);margin:0;font-size:1.05rem;font-weight:500;line-height:1.45}.definition-example[data-v-d05f3514]{border-left:2px solid var(--text-mute);background:#ffffff05;border-radius:0 .35rem .35rem 0;gap:.5rem;padding:.5rem .85rem;font-size:.9rem;line-height:1.4;display:flex}.example-label[data-v-d05f3514]{color:var(--text-mute);font-weight:600}.example-text[data-v-d05f3514]{color:var(--text-mute);font-style:italic}@media (width<=600px){.search-form[data-v-d05f3514]{flex-direction:column;gap:.75rem}.search-submit-btn[data-v-d05f3514]{width:100%}.word-detail-header[data-v-d05f3514]{flex-direction:column;align-items:flex-start;gap:1rem}.source-tag[data-v-d05f3514]{align-self:flex-start}.word-name[data-v-d05f3514]{font-size:2rem}}.saved-vocab-container[data-v-dbcd1aa6]{box-sizing:border-box;flex-direction:column;gap:1.5rem;width:100%;max-width:900px;margin:0 auto;padding:1rem 0;display:flex}.dictionary-header[data-v-dbcd1aa6]{flex-direction:column;align-items:flex-start;gap:1rem;width:100%;display:flex}.back-btn[data-v-dbcd1aa6]{gap:.5rem;font-size:.9rem}.header-titles[data-v-dbcd1aa6]{text-align:left;flex-direction:column;display:flex}.dictionary-title[data-v-dbcd1aa6]{color:var(--text-main);margin:0;font-size:2.2rem;font-weight:800;line-height:1.2}.dictionary-subtitle[data-v-dbcd1aa6]{color:var(--text-mute);margin:.35rem 0 0;font-size:1rem}.empty-state[data-v-dbcd1aa6]{text-align:center;border-radius:1rem;flex-direction:column;align-items:center;gap:1rem;padding:4rem 2rem;display:flex}.empty-icon[data-v-dbcd1aa6]{margin-bottom:1rem;font-size:4rem}.words-grid[data-v-dbcd1aa6]{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.word-card[data-v-dbcd1aa6]{cursor:pointer;text-align:center;border-radius:1rem;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;transition:transform .2s,box-shadow .2s;display:flex}.word-card[data-v-dbcd1aa6]:hover{transform:translateY(-4px);box-shadow:0 10px 25px #0003}.word-title[data-v-dbcd1aa6]{color:var(--text-main);text-transform:lowercase;margin:0;font-size:1.4rem;font-weight:700}.lookup-btn[data-v-dbcd1aa6]{width:auto;min-width:0;padding:.3rem 1rem;font-size:.8rem}.admin-dashboard-container[data-v-6a8a6a25]{box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.5rem}.admin-header-nav[data-v-6a8a6a25]{margin-bottom:1.5rem;display:flex}.admin-title-section[data-v-6a8a6a25]{margin-bottom:2rem}.admin-subtitle[data-v-6a8a6a25]{margin-top:.25rem;font-size:.95rem;display:block;color:var(--text-mute)!important;opacity:1!important;text-shadow:none!important}.admin-stack-layout[data-v-6a8a6a25]{flex-direction:column;gap:2rem;margin-top:1.5rem;display:flex}.admin-card-invite-full[data-v-6a8a6a25],.admin-card-list-full[data-v-6a8a6a25]{box-sizing:border-box;text-align:left;padding:2.2rem}.invite-form-horizontal[data-v-6a8a6a25]{flex-wrap:wrap;align-items:flex-end;gap:1.5rem;margin-top:1rem;display:flex}.invite-form-horizontal .form-group[data-v-6a8a6a25]{flex:1;min-width:220px}.invite-form-horizontal .submit-btn-horizontal[data-v-6a8a6a25]{justify-content:center;align-self:flex-end;align-items:center;gap:.5rem;min-width:185px;height:44px;margin-bottom:.1rem;display:flex}.list-header-row[data-v-6a8a6a25]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1.5rem;display:flex}.filter-tabs[data-v-6a8a6a25]{border:1px solid var(--border);background:#ffffff08;border-radius:9999px;gap:.25rem;padding:.25rem;display:flex}.filter-tab-btn[data-v-6a8a6a25]{color:var(--text-mute);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:9999px;padding:.4rem 1.1rem;font-size:.82rem;font-weight:600;transition:all .2s}.filter-tab-btn[data-v-6a8a6a25]:hover{color:var(--text-main);background:#ffffff0d}.filter-tab-btn.active[data-v-6a8a6a25]{background:var(--primary-blue);color:#fff;box-shadow:0 2px 8px rgba(var(--primary-blue-rgb), .3)}h2[data-v-6a8a6a25]{margin-bottom:.25rem;font-size:1.35rem}.invite-form[data-v-6a8a6a25]{flex-direction:column;gap:1.25rem;margin-top:1.5rem;display:flex}.form-group[data-v-6a8a6a25]{flex-direction:column;gap:.5rem;display:flex}.form-group label[data-v-6a8a6a25]{color:var(--text-main);opacity:.9;font-size:.88rem;font-weight:600}.submit-btn[data-v-6a8a6a25]{gap:.5rem;width:100%;margin-top:.5rem}.feedback-msg[data-v-6a8a6a25]{text-align:center;border-radius:9999px;padding:.75rem 1rem;font-size:.88rem;font-weight:500}.feedback-msg.success[data-v-6a8a6a25]{color:#10b981;background:#10b9811a;border:1px solid #10b98133}.feedback-msg.error[data-v-6a8a6a25]{color:#ef4444;background:#ef44441a;border:1px solid #ef444433}.skeleton-list[data-v-6a8a6a25]{flex-direction:column;gap:1rem;margin-top:1.5rem;display:flex}.skeleton-item[data-v-6a8a6a25]{width:100%;height:60px}.empty-state[data-v-6a8a6a25]{text-align:center;color:var(--text-mute);margin-top:2rem;padding:3rem 1rem}.table-scroll-container[data-v-6a8a6a25]{border:1px solid var(--border);border-radius:.75rem;margin-top:1.5rem;overflow-x:auto}.users-table[data-v-6a8a6a25]{border-collapse:collapse;text-align:left;width:100%;font-size:.95rem}.users-table th[data-v-6a8a6a25],.users-table td[data-v-6a8a6a25]{border-bottom:1px solid var(--border);vertical-align:middle;padding:1rem}.users-table th[data-v-6a8a6a25]{background:rgba(var(--primary-blue-rgb), .04);color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;font-size:.88rem;font-weight:600}.users-table tr:hover td[data-v-6a8a6a25]{background:rgba(var(--primary-blue-rgb), .02)}.col-student[data-v-6a8a6a25]{align-items:center;gap:.85rem;min-width:220px;display:flex}.student-avatar[data-v-6a8a6a25]{background:rgba(var(--primary-blue-rgb), .06);border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.5rem;display:flex}.student-info[data-v-6a8a6a25]{flex-direction:column;display:flex}.student-name[data-v-6a8a6a25]{color:var(--text-main);font-weight:600}.student-email[data-v-6a8a6a25]{color:var(--text-mute);font-size:.8rem}.passcode-badge[data-v-6a8a6a25]{font-family:var(--mono);background:rgba(var(--primary-blue-rgb), .06);color:var(--primary-blue);border:1px solid rgba(var(--primary-blue-rgb), .1);text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;border-radius:.25rem;max-width:150px;padding:.25rem .65rem;font-size:.85rem;display:inline-block;overflow:hidden}.age-badge[data-v-6a8a6a25]{background:rgba(var(--primary-blue-rgb), .05);color:var(--text-main);border:1px solid var(--border);border-radius:9999px;padding:.2rem .6rem;font-size:.8rem}.pending-badge[data-v-6a8a6a25]{color:var(--text-mute);font-size:.85rem}.status-indicator[data-v-6a8a6a25]{border-radius:9999px;align-items:center;gap:.4rem;padding:.2rem .6rem;font-size:.82rem;font-weight:600;display:inline-flex}.status-indicator.activated[data-v-6a8a6a25]{color:#10b981;background:#10b9811a}.status-indicator.activated[data-v-6a8a6a25]:before{content:"";background:#10b981;border-radius:50%;width:6px;height:6px}.status-indicator.pending[data-v-6a8a6a25]{color:var(--text-mute);background:#64748b1a}.status-indicator.pending[data-v-6a8a6a25]:before{content:"";background:var(--text-mute);border-radius:50%;width:6px;height:6px}.btn-delete[data-v-6a8a6a25]{cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:.35rem;padding:.3rem;font-size:1.1rem;transition:opacity .2s,transform .2s}.btn-delete[data-v-6a8a6a25]:hover{opacity:1;background:#ef444414;transform:scale(1.15)}.btn-edit[data-v-6a8a6a25]{cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:.35rem;padding:.3rem;font-size:1.1rem;transition:opacity .2s,transform .2s}.btn-edit[data-v-6a8a6a25]:hover{opacity:1;background:#00bfff14;transform:scale(1.15)}.admin-label[data-v-6a8a6a25]{color:var(--text-mute);background:rgba(var(--primary-blue-rgb), .05);border:1px dashed var(--border);border-radius:9999px;padding:.2rem .6rem;font-size:.8rem;font-weight:600}.modal-overlay[data-v-6a8a6a25]{z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-container[data-v-6a8a6a25]{box-sizing:border-box;width:90%;max-width:500px;padding:2.2rem}.modal-message[data-v-6a8a6a25]{color:var(--text-main);margin-top:1rem;margin-bottom:2rem;font-size:.98rem;line-height:1.6}.modal-actions[data-v-6a8a6a25]{justify-content:flex-end;gap:1rem;display:flex}@media (width<=480px){.modal-actions[data-v-6a8a6a25]{flex-direction:column-reverse}.modal-actions button[data-v-6a8a6a25]{width:100%}}.btn-spinner[data-v-6a8a6a25]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s ease-in-out infinite spin-6a8a6a25;display:inline-block}@keyframes spin-6a8a6a25{to{transform:rotate(360deg)}}.kru-fon-chat-widget-wrapper[data-v-30a2e467]{bottom:calc(1.5rem + env(safe-area-inset-bottom));left:calc(1.5rem + env(safe-area-inset-left));z-index:1000;font-family:var(--sans);position:fixed}.chat-open .chat-trigger-pill[data-v-30a2e467]{display:none!important}.chat-trigger-pill[data-v-30a2e467]{white-space:nowrap;box-shadow:0 4px 16px rgba(var(--primary-blue-rgb), .25);cursor:pointer;border:1px solid rgba(var(--primary-blue-rgb), .3);border-radius:9999px;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-size:.88rem;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;bottom:0;left:0}.chat-trigger-pill[data-v-30a2e467]:hover{box-shadow:0 6px 20px rgba(var(--primary-blue-rgb), .35);transform:translateY(-2px)scale(1.02)}.avatar-icon[data-v-30a2e467]{font-size:1.15rem}.status-dot[data-v-30a2e467]{font-size:.65rem}.nudge-badge[data-v-30a2e467]{background:var(--secondary-red);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.72rem;font-weight:800;animation:1.5s infinite pulse-badge-30a2e467;display:flex;position:absolute;top:-6px;left:-4px;box-shadow:0 2px 6px #ef44444d}@keyframes pulse-badge-30a2e467{0%{transform:scale(1);box-shadow:0 0 #ef444480}70%{transform:scale(1.1);box-shadow:0 0 0 6px #ef444400}to{transform:scale(1);box-shadow:0 0 #ef444400}}.chat-room-panel[data-v-30a2e467]{transform-origin:0 100%;box-sizing:border-box;border-radius:16px;flex-direction:column;width:380px;height:520px;display:flex;position:absolute;bottom:0;left:0;overflow:hidden;border:1px solid rgba(var(--primary-blue-rgb), .3)!important;box-shadow:0 16px 40px rgba(var(--primary-blue-rgb), .12), 0 8px 24px #0000001a!important;transition:border-color .25s,box-shadow .25s!important}.chat-room-panel[data-v-30a2e467]:hover{border-color:rgba(var(--primary-blue-rgb), .5)!important;box-shadow:0 16px 44px rgba(var(--primary-blue-rgb), .22), 0 8px 32px #00000026!important}html.dark{border:1px solid rgba(var(--primary-blue-rgb), .35)!important;box-shadow:0 16px 40px rgba(var(--primary-blue-rgb), .2), 0 8px 24px #00000073!important;border-color:rgba(var(--primary-blue-rgb), .55)!important;box-shadow:0 16px 44px rgba(var(--primary-blue-rgb), .35), 0 8px 32px #0000008c!important}.panel-header[data-v-30a2e467]{border-bottom:1px solid var(--border);background:#00000005;justify-content:space-between;align-items:center;padding:.85rem 1.2rem;display:flex}.header-left[data-v-30a2e467]{text-align:left;align-items:center;gap:.65rem;display:flex}.header-avatar[data-v-30a2e467]{font-size:1.6rem}.header-titles h3[data-v-30a2e467]{color:var(--text-main);margin:0;font-size:.95rem;font-weight:800}.header-status[data-v-30a2e467]{color:#10b981;font-size:.68rem;font-weight:700}.header-status.writing[data-v-30a2e467]{color:var(--primary-blue);animation:1.5s ease-in-out infinite pulse-writing-30a2e467}@keyframes pulse-writing-30a2e467{0%,to{opacity:.5}50%{opacity:1}}.header-right[data-v-30a2e467]{align-items:center;gap:.5rem;display:flex}.header-action-btn[data-v-30a2e467]{cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:1.05rem;transition:all .2s;display:flex;color:var(--text-mute)!important;background:0 0!important;border:0!important}.header-action-btn[data-v-30a2e467]:hover{color:var(--text-main)!important;background:#0000000d!important}.header-action-btn.close-btn[data-v-30a2e467]{font-size:.85rem}.panel-messages-container[data-v-30a2e467]{box-sizing:border-box;background:#00000003;flex-direction:column;flex:1;gap:1rem;padding:1.25rem 1rem;display:flex;overflow-y:auto}.chat-empty-state[data-v-30a2e467]{text-align:center;flex-direction:column;align-items:center;max-width:300px;margin:auto;padding:1.5rem;display:flex}.empty-icon[data-v-30a2e467]{margin-bottom:.75rem;font-size:3rem}.chat-empty-state h4[data-v-30a2e467]{color:var(--text-main);margin:0 0 .5rem;font-size:1.05rem;font-weight:800}.chat-empty-state p[data-v-30a2e467]{color:var(--text-mute);margin:.25rem 0;font-size:.78rem;line-height:1.4}.chat-bubble-row[data-v-30a2e467]{align-items:flex-start;gap:.6rem;width:100%;display:flex}.chat-bubble-row.user[data-v-30a2e467]{justify-content:flex-end}.bubble-avatar[data-v-30a2e467]{flex-shrink:0;margin-top:2px;font-size:1.3rem}.bubble-body[data-v-30a2e467]{text-align:left;box-sizing:border-box;border-radius:14px;max-width:75%;padding:.75rem 1rem;font-size:.88rem;line-height:1.45}.bubble-body.assistant[data-v-30a2e467]{background:var(--bg);color:var(--text-main);border:1px solid var(--border);border-top-left-radius:2px;box-shadow:0 2px 8px #00000008}.bubble-body.user[data-v-30a2e467]{background:var(--primary-blue);color:#fff;box-shadow:0 2px 8px rgba(var(--primary-blue-rgb), .15);border-top-right-radius:2px}.english-response[data-v-30a2e467]{margin:0;font-weight:500}.thai-explanation-block[data-v-30a2e467]{width:100%;margin-top:.4rem}.bubble-divider[data-v-30a2e467]{border:0;border-top:1px dashed var(--border);margin:.4rem 0}.thai-explanation[data-v-30a2e467]{color:var(--text-mute);margin:0;font-size:.78rem}.bubble-audio-row[data-v-30a2e467]{justify-content:flex-start;width:100%;margin-top:.6rem;display:flex}.bubble-audio-row[data-v-30a2e467] .audio-player-widget{box-shadow:none;background:#00000005;border-radius:12px;flex-wrap:wrap;gap:.5rem;width:100%;padding:.4rem .6rem;font-size:.72rem}.bubble-audio-row[data-v-30a2e467] .player-left{flex:1}.bubble-audio-row[data-v-30a2e467] .player-right{justify-content:flex-start;width:100%;margin-top:.25rem;display:flex}.bubble-audio-row[data-v-30a2e467] .play-trigger-btn{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important}.bubble-audio-row[data-v-30a2e467] .speed-toggle-btn{border-radius:6px;padding:.15rem .4rem;font-size:.62rem}.user-message-text[data-v-30a2e467]{margin:0;font-weight:500;color:#fff!important}.english-response[data-v-30a2e467] ul,.user-message-text[data-v-30a2e467] ul{margin:.5rem 0;padding-left:1.25rem;list-style-type:disc}.english-response[data-v-30a2e467] ol,.user-message-text[data-v-30a2e467] ol{margin:.5rem 0;padding-left:1.25rem;list-style-type:decimal}.english-response[data-v-30a2e467] li,.user-message-text[data-v-30a2e467] li{margin-bottom:.25rem;line-height:1.45}.thinking-bubble[data-v-30a2e467]{align-items:center;gap:4px;padding:.7rem 1rem;display:flex}.typing-dot[data-v-30a2e467]{background:var(--text-mute);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite typing-30a2e467}.typing-dot[data-v-30a2e467]:nth-child(2){animation-delay:.2s}.typing-dot[data-v-30a2e467]:nth-child(3){animation-delay:.4s}@keyframes typing-30a2e467{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.panel-input-form[data-v-30a2e467]{border-top:1px solid var(--border);background:#00000005;padding:.75rem 1rem}.input-container[data-v-30a2e467]{background:var(--bg);border:1px solid var(--border);box-sizing:border-box;border-radius:9999px;align-items:center;gap:.5rem;width:100%;padding:.2rem .5rem;display:flex}.chat-text-input[data-v-30a2e467]{color:var(--text-main);box-sizing:border-box;background:0 0;border:0;outline:none;flex:1;padding:.4rem .25rem;font-size:.85rem}.chat-text-input[data-v-30a2e467]:disabled{opacity:.6}.listening-status-banner[data-v-30a2e467]{color:var(--secondary-red);cursor:pointer;box-sizing:border-box;background:#ef444414;border-top:1px solid #ef444433;border-bottom:1px solid #ef444433;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8rem;font-weight:600;animation:2s ease-in-out infinite banner-pulse-30a2e467;display:flex}@keyframes banner-pulse-30a2e467{0%{background:#ef44440d}50%{background:#ef44441f}to{background:#ef44440d}}.listening-indicator-dot[data-v-30a2e467]{background-color:var(--secondary-red);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:1s ease-in-out infinite dot-pulse-30a2e467}@keyframes dot-pulse-30a2e467{0%{opacity:.5;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}to{opacity:.5;transform:scale(.8)}}.speech-lang-pill[data-v-30a2e467]{background:rgba(var(--primary-blue-rgb), .1);color:var(--primary-blue);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;align-items:center;margin-right:.15rem;padding:.15rem .35rem;font-size:.68rem;font-weight:700;transition:all .2s;display:inline-flex}.speech-lang-pill[data-v-30a2e467]:hover{background:var(--primary-blue);color:#fff}.mic-trigger-btn[data-v-30a2e467]{cursor:pointer;justify-content:center;align-items:center;padding:.2rem;font-size:1.15rem;transition:all .2s;display:flex;color:var(--text-mute)!important;background:0 0!important;border:0!important}.mic-trigger-btn[data-v-30a2e467]:hover{transform:scale(1.1);color:var(--primary-blue)!important}.mic-trigger-btn.recording-active[data-v-30a2e467]{animation:1.2s infinite rec-pulse-30a2e467;color:var(--secondary-red)!important}@keyframes rec-pulse-30a2e467{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}.rec-animate[data-v-30a2e467]{color:var(--secondary-red)}.send-message-btn[data-v-30a2e467]{cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;transition:all .2s;display:flex;background:var(--primary-blue)!important;color:#fff!important;border:0!important}.send-message-btn[data-v-30a2e467]:hover:not(:disabled){opacity:.9;transform:scale(1.05)}.send-message-btn[data-v-30a2e467]:disabled{cursor:not-allowed;background:var(--border)!important;color:var(--text-mute)!important}.spinner-icon[data-v-30a2e467]{animation:1.2s linear infinite spin-hourglass-30a2e467;display:inline-block}@keyframes spin-hourglass-30a2e467{0%{transform:rotate(0)}50%{transform:rotate(180deg)}to{transform:rotate(360deg)}}.panel-slide-enter-active[data-v-30a2e467]{transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .3s!important}.panel-slide-leave-active[data-v-30a2e467]{transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .2s!important}.panel-slide-enter-from[data-v-30a2e467],.panel-slide-leave-to[data-v-30a2e467]{opacity:0;transform:scale(.05)}@media (width<=480px){.chat-room-panel[data-v-30a2e467]{width:calc(100vw - 2rem);height:480px}.chat-trigger-pill[data-v-30a2e467]{box-shadow:0 4px 16px rgba(var(--primary-blue-rgb), .35);justify-content:center;align-items:center;border-radius:50%!important;width:50px!important;min-width:50px!important;height:50px!important;min-height:50px!important;padding:0!important}.trigger-label[data-v-30a2e467]{display:none!important}.avatar-icon[data-v-30a2e467]{margin:0!important;font-size:1.5rem!important;line-height:1!important}.status-dot[data-v-30a2e467]{background:#0d1117;border-radius:50%;justify-content:center;align-items:center;width:13px;height:13px;margin:0;font-size:.55rem;display:flex;position:absolute;bottom:2px;right:2px}html:not(.dark){background:#fff}.nudge-badge[data-v-30a2e467]{top:-5px;left:auto;right:-5px}}.confirm-overlay[data-v-30a2e467]{-webkit-backdrop-filter:blur(8px);z-index:100;border-radius:inherit;background:#00000073;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:absolute;inset:0}.confirm-card[data-v-30a2e467]{text-align:center;max-width:90%;padding:1.5rem;animation:.2s cubic-bezier(.4,0,.2,1) scaleIn-30a2e467;background:var(--glass-bg,#14161cf2)!important;border:1px solid var(--glass-border,var(--border))!important;box-shadow:0 8px 32px var(--glass-shadow,#0000004d)!important;border-radius:16px!important}@keyframes scaleIn-30a2e467{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.confirm-card h4[data-v-30a2e467]{color:var(--text-main);margin:0;font-size:1.15rem;font-weight:700}.confirm-card .thai-translation[data-v-30a2e467]{color:var(--primary-blue);margin-top:.25rem;font-size:.9rem;display:block}.confirm-card .confirm-desc[data-v-30a2e467]{color:var(--text-mute);margin:1rem 0 .25rem;font-size:.85rem;line-height:1.4}.confirm-card .confirm-desc-thai[data-v-30a2e467]{color:var(--text-mute);margin:0 0 1.5rem;font-size:.8rem;line-height:1.4}.confirm-actions[data-v-30a2e467]{justify-content:center;gap:.75rem;display:flex}.confirm-actions button[data-v-30a2e467]{padding:.4rem 1rem!important;font-size:.85rem!important}.fade-enter-active[data-v-30a2e467],.fade-leave-active[data-v-30a2e467]{transition:opacity .2s}.fade-enter-from[data-v-30a2e467],.fade-leave-to[data-v-30a2e467]{opacity:0}.floating-controls-row[data-v-30a2e467]{align-items:center;gap:.75rem;display:flex}.back-to-top-btn[data-v-30a2e467]{bottom:calc(1.5rem + env(safe-area-inset-bottom));right:calc(1.5rem + env(safe-area-inset-right));z-index:900;cursor:pointer;width:46px;height:46px;color:var(--primary-blue);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:0 4px 16px var(--glass-shadow);justify-content:center;align-items:center;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;border-radius:14px!important;min-width:46px!important;min-height:46px!important;padding:0!important}.back-to-top-icon[data-v-30a2e467]{width:20px;height:20px;transition:transform .2s cubic-bezier(.4,0,.2,1)}.back-to-top-btn[data-v-30a2e467]:hover{background:rgba(var(--primary-blue-rgb), .12);border-color:var(--primary-blue);box-shadow:0 8px 24px rgba(var(--primary-blue-rgb), .25);transform:translateY(-4px)scale(1.05)}.back-to-top-btn:hover .back-to-top-icon[data-v-30a2e467]{transform:translateY(-2px)}.back-to-top-btn[data-v-30a2e467]:active{box-shadow:0 2px 10px rgba(var(--primary-blue-rgb), .15);transform:translateY(-1px)scale(.95)}html.dark{color:#fff}.speech-error-banner[data-v-30a2e467]{color:#f59e0b;cursor:pointer;box-sizing:border-box;white-space:pre-line;text-align:left;background:#f59e0b14;border-top:1px solid #f59e0b40;border-bottom:1px solid #f59e0b40;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.75rem;font-weight:500;display:flex}.speech-error-close[data-v-30a2e467]{opacity:.7;font-size:.8rem;font-weight:800}.speech-error-close[data-v-30a2e467]:hover{opacity:1}.send-error-banner[data-v-30a2e467]{border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;margin:.5rem 1rem;padding:.75rem 1rem;display:flex;background:#bf0a3014!important;border:1px solid #bf0a3033!important}.error-msg[data-v-30a2e467]{color:var(--secondary-red);font-size:.8rem;font-weight:600}.retry-btn[data-v-30a2e467]{padding:.3rem .8rem;font-size:.75rem}.goal-modal-backdrop[data-v-6572f7af]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#080a10d9;justify-content:center;align-items:center;width:100%;height:100%;padding:1.5rem;display:flex;position:fixed;top:0;left:0}.goal-modal-container[data-v-6572f7af]{text-align:center;border-radius:1.5rem;width:100%;max-width:500px;padding:2.5rem 2rem}.modal-header[data-v-6572f7af]{margin-bottom:2rem}.modal-title[data-v-6572f7af]{color:var(--color-text-main);flex-direction:column;gap:.25rem;margin:0;font-size:1.6rem;font-weight:700;display:flex}.thai-subtitle[data-v-6572f7af]{color:var(--color-text-mute);font-size:1.1rem;font-weight:500}.modal-desc[data-v-6572f7af]{color:var(--color-text-mute);flex-direction:column;gap:.15rem;margin-top:.75rem;font-size:.95rem;display:flex}.thai-desc[data-v-6572f7af]{opacity:.85;font-size:.85rem}.options-grid[data-v-6572f7af]{flex-direction:column;gap:1rem;margin-bottom:2rem;display:flex}.goal-card-option[data-v-6572f7af]{border:1px solid var(--color-border);cursor:pointer;background:#ffffff08;border-radius:9999px;justify-content:space-between;align-items:center;padding:1rem 1.5rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.goal-card-option[data-v-6572f7af]:hover{border-color:var(--color-border-hover);background:#ffffff0f;transform:translateY(-2px)}.goal-card-option.selected[data-v-6572f7af]{border-color:var(--color-accent);box-shadow:0 0 15px rgba(var(--color-accent-rgb), .2);background:#00bfff1a}.goal-info[data-v-6572f7af]{flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.goal-label-en[data-v-6572f7af]{color:var(--color-text-main);font-size:1.05rem;font-weight:600}.goal-label-th[data-v-6572f7af]{color:var(--color-text-mute);font-size:.85rem}.goal-xp-badge[data-v-6572f7af]{color:var(--color-accent);background:#ffffff1a;border-radius:9999px;padding:.35rem .85rem;font-size:.85rem;font-weight:600}.goal-card-option.selected .goal-xp-badge[data-v-6572f7af]{background:var(--color-accent);color:var(--color-bg-base)}.modal-actions[data-v-6572f7af]{justify-content:center;margin-top:1.5rem;display:flex}.save-btn[data-v-6572f7af]{width:100%;max-width:250px}.save-btn[data-v-6572f7af]:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.error-msg[data-v-6572f7af]{color:#ff5252;margin:1rem 0;font-size:.9rem}.success-msg[data-v-6572f7af]{color:#4caf50;margin:1rem 0;font-size:.9rem}.loader-container[data-v-6572f7af]{flex-direction:column;align-items:center;gap:1rem;padding:2rem;display:flex}.loader-bar[data-v-6572f7af]{border-radius:3px;width:80%;height:6px}.loader-text[data-v-6572f7af]{color:var(--color-text-mute);font-size:.9rem}.animate-scale-up[data-v-6572f7af]{animation:.3s cubic-bezier(.34,1.56,.64,1) forwards scaleUp-6572f7af}@keyframes scaleUp-6572f7af{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.leaderboard-view-container[data-v-96893c48]{box-sizing:border-box;text-align:left;width:100%;max-width:800px;margin:0 auto;padding:2rem 1.5rem}.header-nav[data-v-96893c48]{margin-bottom:1.5rem}.title-section[data-v-96893c48]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}h1[data-v-96893c48]{color:var(--color-text-main);margin:0;font-size:1.6rem}.week-badge[data-v-96893c48]{color:var(--color-accent);border:1px solid var(--color-accent);background:#00bfff1a;border-radius:9999px;padding:.35rem 1rem;font-size:.85rem;font-weight:600}.leaderboard-card[data-v-96893c48]{border-radius:1.5rem;padding:1.5rem}.table-container[data-v-96893c48]{overflow-x:auto}.leaderboard-table[data-v-96893c48]{border-collapse:collapse;text-align:left;width:100%}.leaderboard-table th[data-v-96893c48],.leaderboard-table td[data-v-96893c48]{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:1.1rem 1rem}.leaderboard-table th[data-v-96893c48]{color:var(--color-text-mute);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.leaderboard-table tr:hover td[data-v-96893c48]{background:#ffffff03}.highlighted-row[data-v-96893c48]{border-left:4px solid var(--color-accent)}.highlighted-row td[data-v-96893c48]{background:#00bfff0f!important}.col-rank[data-v-96893c48]{width:100px;font-size:1.2rem;font-weight:700}.rank-badge[data-v-96893c48]{font-size:1.4rem}.rank-number[data-v-96893c48]{color:var(--color-text-mute)}.col-student[data-v-96893c48]{align-items:center;gap:1rem;min-width:250px;display:flex}.avatar-circle[data-v-96893c48]{border:1px solid var(--color-border);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.avatar-emoji[data-v-96893c48]{font-size:1.3rem}.avatar-initials[data-v-96893c48]{color:var(--color-text-main);font-size:1.05rem;font-weight:700}.student-name[data-v-96893c48]{color:var(--color-text-main);align-items:center;gap:.5rem;font-size:1.05rem;font-weight:600;display:flex}.you-tag[data-v-96893c48]{color:var(--color-accent);font-size:.8rem;font-weight:500}.xp-value[data-v-96893c48]{color:var(--color-text-main);font-size:1.1rem;font-weight:700}.xp-unit[data-v-96893c48]{color:var(--color-text-mute);font-size:.85rem}.streak-value[data-v-96893c48]{font-weight:600}.skeleton-container[data-v-96893c48]{flex-direction:column;gap:1rem;display:flex}.skeleton-row[data-v-96893c48]{width:100%;height:55px}.error-container[data-v-96893c48],.empty-container[data-v-96893c48]{text-align:center;padding:3rem 1.5rem}.error-text[data-v-96893c48],.empty-text[data-v-96893c48]{color:var(--color-text-mute);margin-bottom:1.5rem;font-size:.95rem}.analytics-view-container[data-v-1581bb7a]{box-sizing:border-box;width:100%;max-width:960px;margin:0 auto;padding:2rem 1.5rem}.header-nav[data-v-1581bb7a]{text-align:left;margin-bottom:1.5rem}.title-section[data-v-1581bb7a]{margin-bottom:2rem}h1[data-v-1581bb7a]{color:var(--color-text-main);margin:0 0 .25rem;font-size:1.6rem;font-weight:800}.subtitle-thai[data-v-1581bb7a]{color:var(--color-text-mute);margin:0;font-size:.95rem}.loading-state[data-v-1581bb7a],.error-state[data-v-1581bb7a],.empty-state[data-v-1581bb7a]{border-radius:1.5rem;padding:4rem 2rem}.loading-text[data-v-1581bb7a],.error-text[data-v-1581bb7a],.empty-text[data-v-1581bb7a]{color:var(--color-text-mute);margin-top:1.5rem;font-weight:500}.analytics-dashboard-grid[data-v-1581bb7a]{flex-direction:column;gap:1.75rem;display:flex}.cefr-hero-card[data-v-1581bb7a]{border-radius:1.5rem;align-items:center;gap:2.5rem;padding:2.2rem;display:flex}@media (width<=768px){.cefr-hero-card[data-v-1581bb7a]{text-align:center;flex-direction:column;gap:1.5rem;padding:1.5rem}.cefr-details[data-v-1581bb7a]{text-align:center!important}}.cefr-badge-container[data-v-1581bb7a]{flex-direction:column;align-items:center;gap:.5rem;display:flex}.cefr-badge[data-v-1581bb7a]{color:var(--color-accent,#00bfff);border:1px solid var(--color-accent,#00bfff);background:#00bfff1a;border-radius:2rem;justify-content:center;align-items:center;width:120px;height:120px;font-size:4rem;font-weight:900;display:flex;box-shadow:0 0 20px #00bfff26}.ilr-sub-label[data-v-1581bb7a]{color:var(--color-text-mute);text-transform:uppercase;font-size:.72rem;font-weight:600}.cefr-details[data-v-1581bb7a]{flex:1}.cefr-details h3[data-v-1581bb7a]{color:var(--color-text-main);margin:0 0 .5rem;font-size:1.1rem;font-weight:700}.cefr-title-en[data-v-1581bb7a]{color:var(--color-text-main);margin:0 0 .25rem;font-size:1.3rem;font-weight:800}.cefr-title-th[data-v-1581bb7a]{color:var(--color-text-mute);margin:0 0 1.5rem;font-size:.88rem}.scale-track-container[data-v-1581bb7a]{flex-direction:column;gap:.5rem;display:flex}.scale-ticks[data-v-1581bb7a]{justify-content:space-between;padding:0 .5rem;display:flex}.scale-tick[data-v-1581bb7a]{color:var(--color-text-mute);font-size:.78rem;font-weight:700}.scale-tick.active[data-v-1581bb7a]{color:var(--color-accent,#00bfff);transform:scale(1.2)}.progress-bar-track[data-v-1581bb7a]{background:#ffffff14;border-radius:99px;height:8px;overflow:hidden}.progress-bar-fill[data-v-1581bb7a]{background:linear-gradient(90deg, #10b981, var(--color-accent,#00bfff));border-radius:99px;height:100%;transition:width .8s}.stats-row[data-v-1581bb7a]{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=600px){.stats-row[data-v-1581bb7a]{grid-template-columns:1fr}}.stats-card[data-v-1581bb7a]{border-radius:1.25rem;align-items:flex-start;gap:1.25rem;padding:1.5rem;display:flex}.card-icon[data-v-1581bb7a]{font-size:2.2rem}.stats-text[data-v-1581bb7a]{flex-direction:column;gap:.25rem;display:flex}.stats-num[data-v-1581bb7a]{color:var(--color-text-main);font-size:1.8rem;font-weight:800;line-height:1.1}.stats-num.positive[data-v-1581bb7a]{color:#10b981}.stats-num.negative[data-v-1581bb7a]{color:var(--color-accent,#ef4444)}.stats-desc[data-v-1581bb7a]{text-transform:uppercase;color:var(--color-text-mute);letter-spacing:.03em;font-size:.78rem;font-weight:700}.stats-explain-thai[data-v-1581bb7a]{color:var(--color-text-mute);margin:.25rem 0 0;font-size:.82rem}.charts-container-grid[data-v-1581bb7a]{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=800px){.charts-container-grid[data-v-1581bb7a]{grid-template-columns:1fr}}.chart-container-card[data-v-1581bb7a]{border-radius:1.5rem;flex-direction:column;gap:1.5rem;padding:1.75rem;display:flex}.fullwidth-chart[data-v-1581bb7a]{grid-column:span 2}@media (width<=800px){.fullwidth-chart[data-v-1581bb7a]{grid-column:span 1}}.chart-header h3[data-v-1581bb7a]{color:var(--color-text-main);margin:0 0 .25rem;font-size:1.1rem;font-weight:800}.chart-header .thai-translation[data-v-1581bb7a]{color:var(--color-text-mute);font-size:.82rem}.chart-wrapper[data-v-1581bb7a]{height:250px;position:relative}.phrasal-drill-container[data-v-c41f032e]{flex-direction:column;gap:2rem;max-width:600px;margin:0 auto;padding:1rem;animation:.4s ease-out fadeIn;display:flex}.drill-header[data-v-c41f032e]{align-items:center;gap:1rem;display:flex}.progress-bar[data-v-c41f032e]{background:#ffffff1a;border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-fill[data-v-c41f032e]{background:#10b981;height:100%;transition:width .3s}.drill-card[data-v-c41f032e]{text-align:center;border-radius:1.5rem;flex-direction:column;gap:2rem;padding:2.5rem 2rem;display:flex}.thai-source h2[data-v-c41f032e]{color:#fff;margin-bottom:.5rem;font-size:2rem}.subtitle[data-v-c41f032e]{color:#94a3b8;font-size:.95rem}.options-grid[data-v-c41f032e]{flex-direction:column;gap:1rem;display:flex}.option-btn[data-v-c41f032e]{color:#e2e8f0;background:#ffffff0d;border:2px solid #0000;border-radius:1rem;padding:1.25rem;font-size:1.1rem;transition:all .2s}.option-btn[data-v-c41f032e]:hover:not(.disabled){background:#ffffff1a;transform:translateY(-2px)}.option-btn.selected[data-v-c41f032e]{background:#3b82f61a;border-color:#3b82f6}.option-btn.correct-anim[data-v-c41f032e]{color:#fff;background:#10b98133;border-color:#10b981;animation:.4s pulseSuccess-c41f032e}.option-btn.incorrect-anim[data-v-c41f032e]{color:#fff;background:#ef444433;border-color:#ef4444;animation:.4s shakeError-c41f032e}.feedback-panel[data-v-c41f032e]{text-align:left;background:#0f172a99;border-radius:1rem;margin-top:1rem;padding:1.5rem}.feedback-icon[data-v-c41f032e]{margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.feedback-icon.success[data-v-c41f032e]{color:#10b981}.feedback-icon.error[data-v-c41f032e]{color:#ef4444}.explanation[data-v-c41f032e]{color:#cbd5e1;margin-bottom:1rem;line-height:1.5}.literal-warning[data-v-c41f032e]{color:#f59e0b;background:#f59e0b1a;border-radius:.5rem;padding:.75rem;font-size:.9rem}.drill-footer[data-v-c41f032e]{justify-content:stretch;display:flex}.check-btn[data-v-c41f032e],.next-btn[data-v-c41f032e]{border-radius:1rem;flex:1;padding:1rem;font-size:1.1rem}@keyframes pulseSuccess-c41f032e{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes shakeError-c41f032e{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.fade-enter-active[data-v-c41f032e],.fade-leave-active[data-v-c41f032e]{transition:opacity .3s}.fade-enter-from[data-v-c41f032e],.fade-leave-to[data-v-c41f032e]{opacity:0}.listening-immersion-container[data-v-f40b5b01]{flex-direction:column;gap:2rem;max-width:600px;margin:0 auto;padding:1rem;animation:.4s ease-out fadeIn;display:flex}.drill-header[data-v-f40b5b01]{align-items:center;gap:1rem;display:flex}.progress-bar[data-v-f40b5b01]{background:#ffffff1a;border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-fill[data-v-f40b5b01]{background:#10b981;height:100%;transition:width .3s}.drill-card[data-v-f40b5b01]{text-align:center;border-radius:1.5rem;flex-direction:column;gap:2rem;padding:2.5rem 2rem;display:flex}.instruction h2[data-v-f40b5b01]{color:#fff;margin-bottom:.5rem;font-size:1.8rem}.subtitle[data-v-f40b5b01]{color:#94a3b8;font-size:.95rem}.audio-container[data-v-f40b5b01]{background:#0003;border-radius:1rem;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;display:flex}.hint-btn[data-v-f40b5b01]{color:#3b82f6;cursor:pointer;background:0 0;border:none;font-size:.9rem;text-decoration:underline}.thai-hint[data-v-f40b5b01]{color:#e2e8f0;margin:0;font-weight:500}.options-grid[data-v-f40b5b01]{flex-direction:column;gap:1rem;display:flex}.option-btn[data-v-f40b5b01]{color:#e2e8f0;background:#ffffff0d;border:2px solid #0000;border-radius:1rem;padding:1.25rem;font-size:1.1rem;transition:all .2s}.option-btn[data-v-f40b5b01]:hover:not(.disabled){background:#ffffff1a;transform:translateY(-2px)}.option-btn.selected[data-v-f40b5b01]{background:#3b82f61a;border-color:#3b82f6}.option-btn.correct-anim[data-v-f40b5b01]{color:#fff;background:#10b98133;border-color:#10b981;animation:.4s pulseSuccess-f40b5b01}.option-btn.incorrect-anim[data-v-f40b5b01]{color:#fff;background:#ef444433;border-color:#ef4444;animation:.4s shakeError-f40b5b01}.feedback-panel[data-v-f40b5b01]{text-align:left;background:#0f172a99;border-radius:1rem;flex-direction:column;gap:.75rem;margin-top:1rem;padding:1.5rem;display:flex}.feedback-icon[data-v-f40b5b01]{font-size:1.1rem;font-weight:600}.feedback-icon.success[data-v-f40b5b01]{color:#10b981}.feedback-icon.error[data-v-f40b5b01]{color:#ef4444}.linked-speech-reveal[data-v-f40b5b01]{background:#ffffff0d;border-radius:.5rem;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.formal[data-v-f40b5b01]{color:#fff;font-weight:600}.informal[data-v-f40b5b01]{color:#f59e0b}.explanation[data-v-f40b5b01]{color:#cbd5e1;margin:0;line-height:1.5}.drill-footer[data-v-f40b5b01]{justify-content:stretch;display:flex}.check-btn[data-v-f40b5b01],.next-btn[data-v-f40b5b01]{border-radius:1rem;flex:1;padding:1rem;font-size:1.1rem}@keyframes pulseSuccess-f40b5b01{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes shakeError-f40b5b01{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.fade-enter-active[data-v-f40b5b01],.fade-leave-active[data-v-f40b5b01]{transition:opacity .3s}.fade-enter-from[data-v-f40b5b01],.fade-leave-to[data-v-f40b5b01]{opacity:0}.calque-drill-container[data-v-799a50e5]{flex-direction:column;gap:2rem;max-width:600px;margin:0 auto;padding:1rem;animation:.4s ease-out fadeIn;display:flex}.drill-header[data-v-799a50e5]{align-items:center;gap:1rem;display:flex}.progress-bar[data-v-799a50e5]{background:#ffffff1a;border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-fill[data-v-799a50e5]{background:#10b981;height:100%;transition:width .3s}.drill-card[data-v-799a50e5]{text-align:center;border-radius:1.5rem;flex-direction:column;gap:2rem;padding:2.5rem 2rem;display:flex}.thai-source h2[data-v-799a50e5]{color:#fff;margin-bottom:.5rem;font-size:2rem}.subtitle[data-v-799a50e5]{color:#94a3b8;font-size:.95rem}.options-grid[data-v-799a50e5]{flex-direction:column;gap:1rem;display:flex}.option-btn[data-v-799a50e5]{color:#e2e8f0;background:#ffffff0d;border:2px solid #0000;border-radius:1rem;padding:1.25rem;font-size:1.1rem;transition:all .2s}.option-btn[data-v-799a50e5]:hover:not(.disabled){background:#ffffff1a;transform:translateY(-2px)}.option-btn.selected[data-v-799a50e5]{background:#3b82f61a;border-color:#3b82f6}.option-btn.correct-anim[data-v-799a50e5]{color:#fff;background:#10b98133;border-color:#10b981;animation:.4s pulseSuccess-799a50e5}.option-btn.incorrect-anim[data-v-799a50e5]{color:#fff;background:#ef444433;border-color:#ef4444;animation:.4s shakeError-799a50e5}.feedback-panel[data-v-799a50e5]{text-align:left;background:#0f172a99;border-radius:1rem;margin-top:1rem;padding:1.5rem}.feedback-icon[data-v-799a50e5]{margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.feedback-icon.success[data-v-799a50e5]{color:#10b981}.feedback-icon.error[data-v-799a50e5]{color:#ef4444}.explanation[data-v-799a50e5]{color:#cbd5e1;margin-bottom:1rem;line-height:1.5}.literal-warning[data-v-799a50e5]{color:#f59e0b;background:#f59e0b1a;border-radius:.5rem;padding:.75rem;font-size:.9rem}.drill-footer[data-v-799a50e5]{justify-content:stretch;display:flex}.check-btn[data-v-799a50e5],.next-btn[data-v-799a50e5]{border-radius:1rem;flex:1;padding:1rem;font-size:1.1rem}@keyframes pulseSuccess-799a50e5{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes shakeError-799a50e5{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.fade-enter-active[data-v-799a50e5],.fade-leave-active[data-v-799a50e5]{transition:opacity .3s}.fade-enter-from[data-v-799a50e5],.fade-leave-to[data-v-799a50e5]{opacity:0}.register-drill-container[data-v-0a779c98]{flex-direction:column;gap:2rem;max-width:600px;margin:0 auto;padding:1rem;animation:.4s ease-out fadeIn;display:flex}.drill-header[data-v-0a779c98]{align-items:center;gap:1rem;display:flex}.progress-bar[data-v-0a779c98]{background:#ffffff1a;border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-fill[data-v-0a779c98]{background:#8b5cf6;height:100%;transition:width .3s}.drill-card[data-v-0a779c98]{text-align:center;border-radius:1.5rem;flex-direction:column;gap:1.5rem;padding:2.5rem 2rem;display:flex;position:relative}.context-badge[data-v-0a779c98]{color:#c4b5fd;background:#8b5cf633;border:1px solid #8b5cf64d;align-self:center;margin-bottom:.5rem;padding:.5rem 1rem;font-size:.85rem}.thai-source h2[data-v-0a779c98]{color:#fff;margin-bottom:.5rem;font-size:1.8rem}.subtitle[data-v-0a779c98]{color:#94a3b8;font-size:.95rem}.options-grid[data-v-0a779c98]{flex-direction:column;gap:1rem;display:flex}.option-btn[data-v-0a779c98]{color:#e2e8f0;background:#ffffff0d;border:2px solid #0000;border-radius:1rem;padding:1.25rem;font-size:1.1rem;transition:all .2s}.option-btn[data-v-0a779c98]:hover:not(.disabled){background:#ffffff1a;transform:translateY(-2px)}.option-btn.selected[data-v-0a779c98]{background:#8b5cf61a;border-color:#8b5cf6}.option-btn.correct-anim[data-v-0a779c98]{color:#fff;background:#10b98133;border-color:#10b981;animation:.4s pulseSuccess-0a779c98}.option-btn.incorrect-anim[data-v-0a779c98]{color:#fff;background:#f59e0b33;border-color:#f59e0b;animation:.4s shakeError-0a779c98}.feedback-panel[data-v-0a779c98]{text-align:left;background:#0f172a99;border-radius:1rem;margin-top:1rem;padding:1.5rem}.feedback-icon[data-v-0a779c98]{margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.feedback-icon.success[data-v-0a779c98]{color:#10b981}.feedback-icon.warning[data-v-0a779c98]{color:#f59e0b}.explanation[data-v-0a779c98]{color:#cbd5e1;margin-bottom:1rem;line-height:1.5}.informal-comparison[data-v-0a779c98]{color:#94a3b8;background:#ffffff0d;border-radius:.5rem;padding:.75rem;font-size:.9rem}.drill-footer[data-v-0a779c98]{justify-content:stretch;display:flex}.check-btn[data-v-0a779c98],.next-btn[data-v-0a779c98]{border-radius:1rem;flex:1;padding:1rem;font-size:1.1rem}@keyframes pulseSuccess-0a779c98{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes shakeError-0a779c98{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.fade-enter-active[data-v-0a779c98],.fade-leave-active[data-v-0a779c98]{transition:opacity .3s}.fade-enter-from[data-v-0a779c98],.fade-leave-to[data-v-0a779c98]{opacity:0}.storybook-container[data-v-f47b2abb]{flex-direction:column;gap:2rem;max-width:600px;margin:0 auto;padding:1rem;animation:.4s ease-out fadeIn;display:flex}.story-header[data-v-f47b2abb]{align-items:center;gap:1rem;display:flex}.progress-bar[data-v-f47b2abb]{background:#ffffff1a;border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-fill[data-v-f47b2abb]{background:#10b981;height:100%;transition:width .3s}.story-card[data-v-f47b2abb]{text-align:center;border-radius:1.5rem;flex-direction:column;gap:2rem;padding:2.5rem 2rem;display:flex}.story-title[data-v-f47b2abb]{color:#fff;margin:0;font-size:2rem}.illustration[data-v-f47b2abb]{background:#ffffff0d;border-radius:1rem;justify-content:center;align-items:center;padding:3rem;display:flex}.emoji-art[data-v-f47b2abb]{font-size:5rem}.text-container[data-v-f47b2abb]{min-height:120px;position:relative}.word-flow[data-v-f47b2abb]{color:#e2e8f0;flex-wrap:wrap;justify-content:center;gap:.5rem;font-size:1.5rem;line-height:2;display:flex}.tappable-word[data-v-f47b2abb]{cursor:pointer;border-bottom:2px dashed #fff3;padding:0 .2rem;transition:all .2s}.tappable-word[data-v-f47b2abb]:hover{color:#fff;border-bottom-color:#3b82f6}.tappable-word.active[data-v-f47b2abb]{color:#3b82f6;background:#3b82f61a;border-bottom-color:#3b82f6;border-radius:.25rem}.translation-popover[data-v-f47b2abb]{white-space:nowrap;z-index:10;background:#1e293b;border:1px solid #ffffff1a;border-radius:1rem;align-items:center;gap:.5rem;padding:.75rem 1.5rem;display:flex;position:absolute;bottom:-40px;left:50%;transform:translate(-50%);box-shadow:0 10px 25px #00000080}.thai-gloss[data-v-f47b2abb]{color:#fff;font-size:1.1rem;font-weight:600}.word-type[data-v-f47b2abb]{color:#94a3b8;font-size:.85rem}.audio-controls[data-v-f47b2abb]{flex-direction:column;align-items:center;gap:1rem;margin-top:1rem;display:flex}.full-translation[data-v-f47b2abb]{color:#94a3b8;margin:0;font-size:1rem}.story-footer[data-v-f47b2abb]{gap:1rem;display:flex}.prev-btn[data-v-f47b2abb],.next-btn[data-v-f47b2abb]{border-radius:1rem;flex:1;padding:1rem;font-size:1.1rem}.fade-enter-active[data-v-f47b2abb],.fade-leave-active[data-v-f47b2abb]{transition:opacity .2s}.fade-enter-from[data-v-f47b2abb],.fade-leave-to[data-v-f47b2abb]{opacity:0;transform:translate(-50%,10px)}.spelling-blocks-container[data-v-c500ef87]{flex-direction:column;gap:2rem;max-width:600px;margin:0 auto;padding:1rem;animation:.4s ease-out fadeIn;display:flex}.drill-header[data-v-c500ef87]{align-items:center;gap:1rem;display:flex}.progress-bar[data-v-c500ef87]{background:#ffffff1a;border-radius:4px;flex:1;height:8px;overflow:hidden}.progress-fill[data-v-c500ef87]{background:#10b981;height:100%;transition:width .3s}.drill-card[data-v-c500ef87]{text-align:center;border-radius:1.5rem;flex-direction:column;gap:2rem;padding:2.5rem 2rem;display:flex}.visual-clue[data-v-c500ef87]{background:#ffffff0d;border-radius:1rem;justify-content:center;align-items:center;padding:2rem;display:flex}.emoji-art[data-v-c500ef87]{font-size:5rem}.audio-clue[data-v-c500ef87]{flex-direction:column;align-items:center;gap:.5rem;display:flex}.thai-hint[data-v-c500ef87]{color:#94a3b8;margin:0;font-size:1.1rem}.placed-zone[data-v-c500ef87]{background:#0003;border:2px dashed #fff3;border-radius:1rem;justify-content:center;gap:.5rem;min-height:80px;padding:1rem;display:flex}.placed-zone.correct-anim[data-v-c500ef87]{background:#10b9811a;border-color:#10b981;animation:.5s pulseSuccess-c500ef87}.letter-slot[data-v-c500ef87]{border-bottom:3px solid #ffffff1a;justify-content:center;align-items:flex-end;width:60px;height:60px;display:flex}.available-zone[data-v-c500ef87]{flex-wrap:wrap;justify-content:center;gap:.75rem;min-height:80px;display:flex}.letter-block[data-v-c500ef87]{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:.75rem;justify-content:center;align-items:center;width:60px;height:60px;font-size:2rem;font-weight:700;transition:all .1s;display:flex;box-shadow:0 4px #2563eb}.letter-block[data-v-c500ef87]:active{transform:translateY(4px);box-shadow:0 0 #2563eb}.letter-block.placed[data-v-c500ef87]{color:#0f172a;background:#e2e8f0;transform:translateY(-5px);box-shadow:0 4px #94a3b8}.letter-block.hidden[data-v-c500ef87]{opacity:0;pointer-events:none}.feedback-panel[data-v-c500ef87]{background:#10b98133;border:1px solid #10b981;border-radius:1rem;padding:1rem}.feedback-icon.success[data-v-c500ef87]{color:#10b981;font-size:1.2rem;font-weight:700}.drill-footer[data-v-c500ef87]{justify-content:stretch;display:flex}.next-btn[data-v-c500ef87],.disabled-btn[data-v-c500ef87]{border-radius:1rem;flex:1;padding:1rem;font-size:1.1rem}@keyframes pulseSuccess-c500ef87{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.fade-enter-active[data-v-c500ef87],.fade-leave-active[data-v-c500ef87]{transition:opacity .3s}.fade-enter-from[data-v-c500ef87],.fade-leave-to[data-v-c500ef87]{opacity:0}.video-immersion-container[data-v-c630bbeb]{max-width:900px;margin:0 auto;padding:2rem 1rem}.view-header[data-v-c630bbeb]{margin-bottom:2rem}.back-btn[data-v-c630bbeb]{color:#fff;background:#ffffff1a;border:1px solid #fff3;margin-bottom:1rem}.view-title[data-v-c630bbeb]{color:var(--text-color,#fff);margin:0;font-size:2rem}.guardrail-locked[data-v-c630bbeb]{margin-top:2rem;padding:3rem}.locked-icon[data-v-c630bbeb]{margin-bottom:1rem;font-size:3rem;display:block}.video-active-content[data-v-c630bbeb]{flex-direction:column;gap:1.5rem;display:flex}.video-input-card[data-v-c630bbeb]{padding:1.5rem}.input-row[data-v-c630bbeb]{gap:1rem;display:flex}.ui-704-input[data-v-c630bbeb]{color:#fff;background:#0003;border:1px solid #ffffff1a;border-radius:8px;flex:1;padding:.75rem 1rem;font-size:1rem}.ui-704-input[data-v-c630bbeb]:focus{border-color:var(--primary-blue);outline:none}.loading-state[data-v-c630bbeb]{padding:2rem}.spinner[data-v-c630bbeb]{font-size:2rem;animation:2s linear infinite spin-c630bbeb;display:inline-block}@keyframes spin-c630bbeb{to{transform:rotate(360deg)}}.analysis-results[data-v-c630bbeb]{padding:1.5rem}.cultural-box[data-v-c630bbeb]{background:#10b9811a;border-left:4px solid #10b981;border-radius:4px 8px 8px 4px;margin:1.5rem 0;padding:1rem}.qa-item[data-v-c630bbeb]{background:#0003;border-radius:8px;margin-bottom:1rem;padding:1rem}.q-text[data-v-c630bbeb]{color:var(--primary-blue);margin:0 0 .5rem}.a-text[data-v-c630bbeb]{color:var(--text-color,#fff);opacity:.9;margin:0}.view-enter-active,.view-leave-active{transition:transform .28s cubic-bezier(.4,0,.2,1),opacity .2s}.view-enter-from{opacity:0;transform:translate(30px)}.view-leave-to{opacity:0;transform:translate(-30px)}.offline-status-banner{top:calc(1.5rem + env(safe-area-inset-top));z-index:9999;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);color:var(--text-main);border-radius:9999px;align-items:center;gap:.75rem;padding:.6rem 1.2rem;font-size:.85rem;font-weight:600;transition:all .3s;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #0006}.offline-status-banner.warning{background:#f59e0b26;border-color:#f59e0b59}.offline-status-banner.success{background:#10b98126;border-color:#10b98159}.offline-status-banner.info{background:#3b82f626;border-color:#3b82f659}.toast-slide-enter-active,.toast-slide-leave-active{transition:all .3s cubic-bezier(.16,1,.3,1)}.toast-slide-enter-from,.toast-slide-leave-to{opacity:0;top:-5rem;transform:translate(-50%,-100%)}.app-main{flex-direction:column;flex-grow:1;justify-content:flex-start;align-items:center;width:100%;display:flex}.study-session{flex-direction:column;gap:1.5rem;width:100%;display:flex}.session-nav{flex-direction:column;align-items:flex-start;gap:1rem;display:flex}.study-type-tabs{border-bottom:2px solid var(--border);gap:.5rem;width:100%;margin-top:.5rem;display:flex}.study-tab-btn{cursor:pointer;color:var(--text-mute);background:0 0;border:none;border-bottom:3px solid #0000;justify-content:center;align-items:center;margin-bottom:-2px;padding:.8rem 1.5rem;font-size:.95rem;font-weight:700;transition:all .2s;display:flex}.study-tab-btn.active{color:var(--primary-blue);border-bottom-color:var(--primary-blue)}.ai-generator-trigger-bar{justify-content:flex-start;width:100%;display:flex}.ai-trigger-btn{flex-direction:column;width:auto;height:auto;padding:.5rem 1.25rem;font-size:.85rem;line-height:1.25}.ai-generator-panel{box-sizing:border-box;text-align:left;border-left:5px solid var(--primary-blue);flex-direction:column;gap:.75rem;padding:1.8rem;display:flex}.panel-subtitle{color:var(--text-main);margin:0;font-size:.9rem;font-weight:700}.panel-subtitle-thai{opacity:.8;margin-top:-.5rem;font-size:.78rem}.generator-form{flex-wrap:wrap;align-items:flex-end;gap:1.25rem;margin-top:.5rem;display:flex}.generator-form .form-group{flex-direction:column;flex:1;gap:.4rem;min-width:180px;display:flex}.generator-form .form-group label{color:var(--text-mute);text-transform:uppercase;font-size:.75rem;font-weight:700}.ui-704-input{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text-main);box-sizing:border-box;border-radius:9999px;outline:none;padding:.6rem 1.2rem;font-size:.95rem;transition:all .25s}.ui-704-input:focus{border-color:var(--primary-blue);box-shadow:0 0 10px rgba(var(--primary-blue-rgb), .15)}.build-btn{flex-direction:column;flex-shrink:0;width:180px;height:auto;padding:.5rem 1rem;font-size:.85rem;line-height:1.25}.generator-feedback{color:var(--primary-blue);margin:.25rem 0 0;font-size:.85rem;font-weight:700;animation:2s infinite pulse}.vocab-study-layout{flex-direction:column;align-items:center;width:100%;display:flex}.session-progress-counter{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;text-align:center;margin-bottom:-1rem;font-size:.9rem;font-weight:600}.session-nav-triggers{justify-content:center;gap:1.5rem;width:100%;margin-top:1rem;display:flex}.nav-trigger-btn{flex-direction:column;width:170px;height:auto;padding:.5rem 1rem}.empty-state{box-sizing:border-box;text-align:center;padding:3rem}.app-footer{border-top:1px solid var(--border);text-align:center;box-sizing:border-box;width:100%;max-width:1200px;margin:auto auto 0;padding:1.5rem;font-size:.85rem}.footer-link{color:var(--primary-blue);font-weight:700;text-decoration:none;transition:opacity .2s}.footer-link:hover{opacity:.8;text-decoration:underline}.back-btn{flex-direction:row;align-items:center;gap:.5rem;padding:.6rem 1.5rem;font-size:.9rem}.hero-fullwidth{z-index:10;background-color:#f3f4f6;width:100%;height:220px;margin-bottom:2.2rem;transition:height .4s cubic-bezier(.4,0,.2,1);position:relative}html.dark .hero-fullwidth{background-color:#0f172a}.hero-fullwidth.compact-hero{height:160px}.hero-bg-layer{background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero-fullwidth.compact-hero .hero-bg-layer{background-position:50%!important}.app-content-container{box-sizing:border-box;flex-direction:column;flex-grow:1;width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem 2rem;display:flex}.app-content-container.login-layout{justify-content:center;align-items:center;padding:2rem 1.5rem}.hero-bg-active{z-index:1}.hero-bg-incoming{z-index:2;opacity:0;transition:opacity 3s ease-in-out}.hero-bg-incoming.visible{opacity:1}.hero-gradient-overlay{z-index:3;background:linear-gradient(#0000001f 0%,#00000040 45%,#0000008c 100%);position:absolute;inset:0}.global-nav{z-index:10;box-sizing:border-box;border-radius:1.25rem;justify-content:space-between;align-items:center;gap:.5rem;width:min(96%,1440px);padding:.65rem 1.25rem;display:flex;position:absolute;top:1.25rem;left:50%;transform:translate(-50%);-webkit-backdrop-filter:blur(20px)saturate(140%)!important;background:#ffffff2e!important;border:1px solid #ffffff4d!important}.global-nav:hover{transform:translate(-50%)!important;box-shadow:0 8px 32px #00286814!important}html:not(.dark) .global-nav{background:#ffffffbf!important;border:1px solid #0028682e!important;box-shadow:0 8px 32px #00286814!important}html.dark .global-nav{background:#0a0f1e73!important;border:1px solid #ffffff1a!important}.user-dropdown-wrapper{flex-shrink:0;position:relative}.user-info-btn{cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:9999px;align-items:center;gap:.6rem;padding:.35rem .75rem .35rem .4rem;transition:background .18s;display:flex}.user-info-btn:hover,.user-info-btn.dropdown-open{background:#ffffff26}html:not(.dark) .user-info-btn:hover,html:not(.dark) .user-info-btn.dropdown-open{background:#00286814}.user-avatar{font-size:1.35rem;line-height:1}.user-meta{flex-direction:column;display:flex}.user-name{color:#fff;text-shadow:0 1px 3px #00000059;font-size:.95rem;font-weight:700;line-height:1.2}html:not(.dark) .user-name{color:var(--text-main);text-shadow:none}.user-name-sub{color:#ffffffa6;font-size:.68rem;font-weight:500;line-height:1.2}html:not(.dark) .user-name-sub{color:var(--text-mute)}.user-dropdown{z-index:100;background:#fff;border:1px solid #0000001a;border-radius:.875rem;min-width:200px;position:absolute;top:calc(100% + .6rem);left:0;overflow:hidden;box-shadow:0 8px 32px #00000029}html.dark .user-dropdown{background:#1e2535;border-color:#ffffff1a}.dropdown-item{cursor:pointer;text-align:left;width:100%;font-family:var(--sans);box-sizing:border-box;background:0 0;border:none;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:background .15s;display:flex}.dropdown-item:hover{background:#0028680f}html.dark .dropdown-item:hover{background:#ffffff14}.dropdown-item-danger:hover{background:#bf0a300f}.dropdown-icon{flex-shrink:0;font-size:1.1rem}.dropdown-item-text{flex-direction:column;gap:.05rem;display:flex}.dropdown-label{color:var(--text-main);font-size:.88rem;font-weight:700;line-height:1.2}.dropdown-item-danger .dropdown-label{color:var(--secondary-red)}.dropdown-sub{color:var(--text-mute);font-size:.7rem;font-weight:500}.dropdown-divider{background:var(--border);height:1px;margin:.2rem 0}.dropdown-fade-enter-active,.dropdown-fade-leave-active{transition:opacity .15s,transform .15s}.dropdown-fade-enter-from,.dropdown-fade-leave-to{opacity:0;transform:translateY(-6px)}.nav-links{flex:1;justify-content:center;align-items:center;gap:.2rem;display:flex}.nav-link-btn{cursor:pointer;color:var(--text-main);white-space:nowrap;background:0 0;border:none;border-radius:.5rem;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;padding:.4rem .9rem;transition:all .2s;display:flex}.nav-link-btn>span:first-child{font-size:.88rem;font-weight:700;line-height:1.2}.nav-sub{color:var(--text-mute);font-size:.72rem;font-weight:600;line-height:1.2;transition:color .2s}html:not(.dark) .nav-sub{color:#1e293b;font-weight:700}.nav-link-btn:hover{background:rgba(var(--primary-blue-rgb), .08)}.nav-link-btn.active{background:rgba(var(--primary-blue-rgb), .15);border:1px solid var(--border)}html:not(.dark) .nav-link-btn.active .nav-sub,html.dark .nav-link-btn.active .nav-sub{color:var(--primary-blue)}.header-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.theme-toggle-btn{cursor:pointer;background:#ffffff1f;border:1px solid #ffffff38;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;transition:background .18s;display:flex}.theme-toggle-btn:hover{background:#ffffff38}html:not(.dark) .theme-toggle-btn{background:#0028680f;border-color:#00286826}html:not(.dark) .theme-toggle-btn:hover{background:#0028681f}.hamburger-btn{cursor:pointer;box-sizing:border-box;background:#ffffff1f;border:1px solid #ffffff38;border-radius:.5rem;flex-direction:column;justify-content:center;gap:5px;width:40px;height:36px;padding:0 10px;transition:background .18s;display:none}.hamburger-btn:hover{background:#ffffff38}html:not(.dark) .hamburger-btn{background:#0028680f;border-color:#00286826}html:not(.dark) .hamburger-btn:hover{background:#0028681f}.hb-line{background:#fff;border-radius:2px;width:100%;height:2px;transition:transform .25s,opacity .25s;display:block}html:not(.dark) .hb-line{background:var(--text-main)}.hamburger-btn.is-open .hb-line:first-child{transform:translateY(7px)rotate(45deg)}.hamburger-btn.is-open .hb-line:nth-child(2){opacity:0}.hamburger-btn.is-open .hb-line:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=1100px){.hamburger-btn{display:flex}.nav-links{z-index:99;background:#fff;border:1px solid #0000001a;border-radius:.875rem;flex-direction:column;align-items:stretch;gap:0;padding:.4rem 0;display:none;position:absolute;top:calc(100% + .75rem);left:0;right:0;overflow:hidden;box-shadow:0 8px 32px #00000029}html.dark .nav-links{background:#1e2535;border-color:#ffffff1a}.nav-links.mobile-open{display:flex}.nav-link-btn{color:var(--text-main);border:none;border-radius:0;flex-direction:row;justify-content:flex-start;gap:.75rem;padding:.85rem 1.25rem}.nav-link-btn>span:first-child{color:var(--text-main);font-size:.95rem}.nav-link-btn .nav-sub{color:var(--text-mute);font-size:.75rem}.nav-link-btn:hover{background:#0028680f}.nav-link-btn.active{border:none;border-left:3px solid var(--primary-blue);background:#00286814}.nav-link-btn.active>span:first-child{color:var(--primary-blue)}.nav-link-btn.active .nav-sub{color:var(--text-mute)}html.dark .nav-link-btn:hover{background:#ffffff0f}html.dark .nav-link-btn.active{border-left-color:var(--primary-blue);background:#ffffff14}.user-name-sub{display:none}}.nav-due-badge{background:var(--secondary-red);color:#fff;vertical-align:middle;border-radius:9999px;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;margin-left:.25rem;padding:0 .2rem;font-size:.6rem;font-weight:800;line-height:1;display:inline-flex}.hero-content-wrapper{z-index:5;box-sizing:border-box;justify-content:center;align-items:center;padding:0 2rem;display:flex;position:absolute;inset:80px 0 0}.hero-glass-overlay{box-sizing:border-box;text-align:center;-webkit-backdrop-filter:blur(28px)saturate(160%);background:#ffffff2e;border:1px solid #ffffff4d;border-radius:1.25rem;width:min(90%,640px);padding:2.5rem 3rem;box-shadow:0 8px 40px #0000002e}html.dark .hero-glass-overlay{background:#0a0f1e73;border:1px solid #ffffff1a}.hero-glass-overlay h1{color:#fff;background:0 0;-webkit-background-clip:unset;background-clip:unset;-webkit-text-fill-color:#fff;text-shadow:0 2px 12px #00000059;margin-bottom:0;font-size:2.2rem}.h1-thai{color:#fffc;text-shadow:0 1px 6px #00000040;font-size:1rem;font-weight:500}.mastery-section{text-align:left;flex-direction:column;gap:.35rem;margin-top:1.5rem;display:flex}.mastery-label-row{justify-content:space-between;align-items:baseline;display:flex}.mastery-label{color:#fff;text-shadow:0 1px 4px #0000004d;font-size:1rem;font-weight:700}.mastery-pct{color:#fff;text-shadow:0 1px 4px #0000004d;font-size:1.1rem;font-weight:800}.mastery-thai{margin-top:-.1rem;font-size:.78rem;color:#ffffffb3!important}.mastery-bar-track{background:#fff3;border-radius:9999px;width:100%;height:10px;margin-top:.5rem;overflow:hidden;box-shadow:inset 0 1px 3px #0000001f}.mastery-desc{color:#ffffffe6;text-shadow:0 1px 4px #00000040;margin-top:.6rem;font-size:.85rem;line-height:1.4}.mastery-desc-thai{text-shadow:0 1px 4px #0003;font-size:.75rem;line-height:1.35;color:#ffffffb3!important;margin-top:.15rem!important}.mastery-bar-fill{border-radius:9999px;height:100%;transition:width .8s cubic-bezier(.4,0,.2,1),background-color .6s;box-shadow:0 0 8px #0000001a}.study-filter-bar{box-sizing:border-box;text-align:left;grid-template-columns:1fr 1fr;gap:1.5rem;width:100%;margin-bottom:1.5rem;padding:1.25rem 2rem;display:grid}.filter-group{flex-direction:column;gap:.4rem;display:flex}.filter-group label{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:flex-end;padding-left:.5rem;font-size:.8rem;font-weight:700;display:flex}.ui-704-select{border:1px solid var(--border);background:var(--input-bg);width:100%;color:var(--text-main);font-size:.95rem;font-family:var(--sans);box-sizing:border-box;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'></polyline></svg>");background-position:right 1rem center;background-repeat:no-repeat;background-size:1.2rem;border-radius:9999px;outline:none;padding:.6rem 2.5rem .6rem 1.2rem;transition:all .25s}html.dark .ui-704-select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'></polyline></svg>")}.ui-704-select:focus{border-color:var(--primary-blue);box-shadow:0 0 10px rgba(var(--primary-blue-rgb), .15)}@media (width<=600px){.study-filter-bar{grid-template-columns:1fr;gap:1rem;padding:1.25rem}}.practice-hub-container{text-align:left;box-sizing:border-box;flex-direction:column;gap:1.5rem;width:100%;display:flex}.hub-section-container{flex-direction:column;gap:1rem;width:100%;display:flex}.hub-section-divider{color:var(--text-mute);text-transform:uppercase;letter-spacing:.05em;border-left:3px solid var(--primary-blue);text-align:left;margin:0 0 .5rem;padding-left:.75rem;font-size:1.15rem;font-weight:700}.hub-header{flex-direction:column;gap:.35rem;display:flex}.hub-header h2{color:var(--text-main);margin:0;font-size:2.2rem;font-weight:800;line-height:1.2}.hub-subtitle{color:var(--text-mute);margin:0;font-size:1rem}.hub-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;width:100%;display:grid}.hub-card{cursor:pointer;text-align:left;flex-direction:column;gap:.5rem;padding:2rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}@media (hover:hover){.hub-card:hover{border-color:var(--primary-blue);box-shadow:0 12px 30px rgba(var(--primary-blue-rgb), .12);background:#ffffff14;transform:translateY(-4px)}html.dark .hub-card:hover{background:#0f172a99}}.hub-icon{margin-bottom:.5rem;font-size:2.8rem}.hub-card h3{color:var(--text-main);margin:0;font-size:1.25rem;font-weight:700}.hub-card p{color:var(--text-mute);margin:.5rem 0 0;font-size:.88rem;line-height:1.4}.compact-dashboard-overlay{justify-content:space-between;align-items:center;gap:2rem;width:100%;max-width:1200px;display:flex;border-radius:1rem!important;padding:1rem 2rem!important}.header-welcome-info{text-align:left;flex:1}.welcome-header{color:#fff;text-shadow:0 1px 6px #0000004d;margin:0!important;font-size:1.6rem!important}.h1-thai-compact{color:#ffffffb3;font-size:.85rem;display:block}.header-mastery-status{text-align:left;flex-direction:column;flex:1.2;gap:.25rem;display:flex}.mastery-label-row-compact{color:#fff;justify-content:space-between;font-size:.85rem;font-weight:700;display:flex}.mastery-bar-track-compact{background:#ffffff26;border-radius:4px;width:100%;height:8px;overflow:hidden}.mastery-bar-fill-compact{border-radius:4px;height:100%;transition:width .4s}.mastery-thai-compact{color:#ffffffb3;font-size:.75rem}.header-xp-goal{text-align:left;border-left:1px solid #ffffff26;flex:1;align-items:center;gap:1.5rem;padding-left:1.5rem;display:flex}.xp-goal-ring-wrapper{flex-shrink:0;justify-content:center;align-items:center;width:70px;height:70px;display:flex;position:relative}.progress-ring-svg{transform:rotate(-90deg)}.progress-ring-fg{transform-origin:50%;transition:stroke-dashoffset .35s}.xp-ring-text{flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute}.xp-earned-num{color:#fff;font-size:1.15rem;font-weight:800}.xp-lbl{color:#ffffffb3;text-transform:uppercase;font-size:.65rem;font-weight:800}.xp-goal-labels{flex-direction:column;gap:.15rem;display:flex}.xp-goal-title{color:#fff;font-size:.8rem;font-weight:700}.xp-goal-desc{color:#ffffffb3;font-size:.72rem}.xp-goal-desc.completed{color:#10b981;font-weight:700}@media (width<=850px){.compact-dashboard-overlay{flex-direction:column;align-items:stretch;gap:1rem;padding:1.25rem!important}.header-xp-goal{border-top:1px solid #ffffff26;border-left:none;padding-top:1rem;padding-left:0}}.global-loading-bar{background:rgba(var(--primary-blue-rgb), .1);z-index:99999;pointer-events:none;width:100%;height:4px;position:fixed;top:0;left:0;overflow:hidden}.loading-bar-shimmer{background:linear-gradient(90deg, transparent 0%, var(--primary-blue) 50%, transparent 100%);width:50%;height:100%;animation:1.5s linear infinite loadingBarSlide;position:absolute;top:0;left:-50%}
