:root{--blue: #2563eb;--blue-dark: #1d4ed8;--blue-light: #eff6ff;--green: #16a34a;--green-light: #f0fdf4;--red: #dc2626;--red-light: #fef2f2;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-700: #334155;--gray-900: #0f172a;--white: #ffffff;--radius: 12px;--radius-sm: 8px;--bottom-nav-height: max(68px, calc(62px + env(safe-area-inset-bottom)) );font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--gray-50);color:var(--gray-900);--fs-10: 10px;--fs-11: 11px;--fs-12: 12px;--fs-13: 13px;--fs-14: 14px;--fs-15: 15px;--fs-16: 16px;--fs-17: 17px;--fs-18: 18px;--fs-19: 19px;--fs-20: 20px;--fs-22: 22px;--fs-24: 24px;--fs-25: 25px;--fs-26: 26px;--fs-28: 28px;--fs-30: 30px;--fs-36: 36px;--fs-48: 48px;--fs-56: 56px;--fs-64: 64px}html[data-theme=dark]{color-scheme:dark;--blue: #6f91ff;--blue-dark: #91a9ff;--blue-light: #172554;--green: #4ade80;--green-light: #0d2818;--red: #fb7185;--red-light: #35131b;--gray-50: #0b1220;--gray-100: #111b2e;--gray-200: #24324a;--gray-300: #34445f;--gray-400: #71809a;--gray-500: #9aa8bd;--gray-700: #d4dbea;--gray-900: #f5f7fb;--white: #151f32;background:#0b1220}html[data-theme=dark] body{background:#0b1220}html[data-font=large]{--fs-10: 11px;--fs-11: 13px;--fs-12: 14px;--fs-13: 15px;--fs-14: 16px;--fs-15: 17px;--fs-16: 18px;--fs-17: 19px;--fs-18: 20px;--fs-19: 21px;--fs-20: 22px;--fs-22: 24px;--fs-24: 26px;--fs-25: 27px;--fs-26: 28px;--fs-28: 30px;--fs-30: 32px;--fs-36: 39px;--fs-48: 52px;--fs-56: 60px;--fs-64: 68px}*{box-sizing:border-box;margin:0;padding:0}body,html,#root{min-height:100%;min-height:100dvh}body{font-size:var(--fs-16)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.app-shell{display:grid;grid-template-rows:1fr auto;min-height:100vh;min-height:100dvh;max-width:480px;margin:0 auto;background:var(--gray-50)}.app-content{overflow-y:auto;padding-bottom:72px}.app-topbar{display:flex;align-items:center;justify-content:space-between;padding:6px 14px;padding-top:max(6px,env(safe-area-inset-top));background:var(--white);border-bottom:1px solid var(--gray-100);min-height:44px;position:relative}.app-topbar-logo{display:flex;align-items:center;gap:7px}.app-topbar-logo-flag{width:24px;height:24px;object-fit:contain;display:block}.app-topbar-logo-text{font-size:var(--fs-14);font-weight:700;color:var(--gray-900);letter-spacing:-.01em}.app-topbar-right{position:relative}.app-topbar-avatar{width:32px;height:32px;background:var(--blue);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-13);font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s;flex-shrink:0}.app-topbar-avatar:hover{background:var(--blue-dark)}.avatar-menu{position:absolute;top:calc(100% + 8px);right:0;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);box-shadow:0 4px 20px #0f172a1f;min-width:164px;z-index:300;overflow:hidden;animation:fadeInUp .15s ease both}.avatar-menu-name{padding:11px 14px 8px;font-size:var(--fs-11);font-weight:700;color:var(--gray-400);text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--gray-100)}.avatar-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:11px 14px;text-align:left;background:none;border:none;font-size:var(--fs-14);color:var(--red);cursor:pointer;transition:background .15s}.avatar-menu-item:hover{background:var(--red-light)}.auth-shell{display:flex;align-items:center;justify-content:center;padding:24px 16px}.auth-card{width:100%;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);padding:24px 20px 20px;box-shadow:0 2px 12px #0f172a0f}.auth-logo{font-size:var(--fs-36);text-align:center;margin-bottom:8px}.auth-logo img{width:88px;height:72px;object-fit:contain}.auth-title{font-size:var(--fs-22);font-weight:800;margin-bottom:4px;text-align:center}.auth-subtitle{color:var(--gray-500);font-size:var(--fs-14);margin-bottom:20px;text-align:center}.auth-card label{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;color:var(--gray-700);font-size:var(--fs-13);font-weight:700}.auth-card input,.auth-card select{width:100%;padding:12px;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:var(--fs-15);outline:none}.auth-card input:focus,.auth-card select:focus{border-color:var(--blue)}.auth-error{background:var(--red-light);color:var(--red);border:1px solid var(--red);border-radius:var(--radius-sm);padding:10px 12px;margin-bottom:12px;font-size:var(--fs-13);font-weight:700}.auth-forgot{display:block;width:100%;text-align:center;background:none;border:none;color:var(--gray-400);font-size:var(--fs-13);cursor:pointer;padding:8px 0 0;transition:color .15s}.auth-forgot:hover{color:var(--blue)}.auth-submit{width:100%;margin-top:4px}.auth-submit:disabled{opacity:.65;cursor:wait}.auth-switch{display:block;width:100%;margin-top:10px;padding:12px;border:2px solid var(--blue);border-radius:var(--radius);background:none;color:var(--blue);font-weight:700;cursor:pointer;font-size:var(--fs-14);transition:background .15s}.auth-switch:hover{background:var(--blue-light)}.app-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;display:flex;background:var(--white);border-top:1px solid var(--gray-200);z-index:100;padding-bottom:env(safe-area-inset-bottom)}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px 8px;text-decoration:none;color:var(--gray-400);font-size:var(--fs-10);font-weight:500;transition:color .15s;cursor:pointer;background:none;border:none}.nav-item.active,.nav-item:hover{color:var(--blue)}.nav-item.active{font-weight:700}.nav-item.active .nav-icon{font-size:var(--fs-25)}.nav-icon-wrap{padding:4px 14px;border-radius:16px;transition:background .2s;line-height:1}.nav-item.active .nav-icon-wrap,.nav-item:hover .nav-icon-wrap{background:var(--blue-light)}.nav-icon{font-size:var(--fs-22);line-height:1;display:block}.more-backdrop{position:fixed;inset:0 0 var(--bottom-nav-height);background:#00000059;z-index:200;animation:fadeIn .18s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.more-drawer{position:fixed;bottom:var(--bottom-nav-height);left:50%;transform:translate(-50%);width:100%;max-width:480px;background:var(--white);border-radius:20px 20px 0 0;padding:8px 16px 16px;z-index:201;animation:slideUp .22s cubic-bezier(.32,.72,0,1)}@keyframes slideUp{0%{transform:translate(-50%) translateY(100%)}to{transform:translate(-50%) translateY(0)}}.more-drawer-handle{width:36px;height:4px;background:var(--gray-200);border-radius:2px;margin:0 auto 12px}.more-drawer-title{font-size:var(--fs-12);font-weight:600;color:var(--gray-400);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;padding:0 4px}.more-drawer-nav{display:flex;flex-direction:column;gap:2px}.more-drawer-item{display:flex;align-items:center;gap:14px;padding:13px 12px;border-radius:var(--radius-sm);text-decoration:none;color:var(--gray-700);font-size:var(--fs-15);font-weight:500;transition:background .12s,color .12s}.more-drawer-item:hover,.more-drawer-item.active{background:var(--blue-light);color:var(--blue)}.more-drawer-item.active{font-weight:700}.more-drawer-icon{font-size:var(--fs-22);line-height:1}.settings-navigation{padding-bottom:12px}.settings-navigation-hint{padding:0 16px 12px;color:var(--gray-500);font-size:var(--fs-12);line-height:1.4}.settings-navigation-group+.settings-navigation-group{margin-top:12px;padding-top:12px;border-top:1px solid var(--gray-100)}.settings-navigation-group-title{padding:0 16px 6px;color:var(--gray-700);font-size:var(--fs-13);font-weight:700}.settings-navigation-item{min-height:48px;padding:5px 12px 5px 16px;display:flex;align-items:center;gap:10px}.settings-navigation-icon{width:26px;font-size:var(--fs-20);text-align:center}.settings-navigation-label{min-width:0;flex:1;font-size:var(--fs-14);font-weight:600}.settings-navigation-actions{display:flex;align-items:center;gap:4px}.settings-navigation-actions button{min-width:32px;min-height:32px;padding:5px 8px;border:1px solid var(--gray-200);border-radius:8px;background:var(--white);color:var(--gray-700);cursor:pointer;font-size:var(--fs-13)}.settings-navigation-actions button:hover:not(:disabled){border-color:var(--blue);color:var(--blue)}.settings-navigation-actions button:disabled{opacity:.35;cursor:not-allowed}.settings-navigation-actions .settings-navigation-transfer{max-width:104px;color:var(--blue);line-height:1.15}.settings-dashboard-trigger>span:first-child{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:2px}.settings-dashboard-trigger small{color:var(--gray-500);font-size:var(--fs-12);font-weight:400}.settings-dashboard-chevron{color:var(--gray-500);font-size:var(--fs-18)}.settings-dashboard-editor{padding-bottom:8px;border-top:1px solid var(--gray-100)}.settings-dashboard-editor .settings-navigation-hint{padding-top:12px}.settings-navigation-editor{padding-bottom:4px}.settings-navigation-item.is-hidden{color:var(--gray-500)}.settings-navigation-actions .settings-dashboard-toggle{min-width:76px;color:var(--blue)}@media(max-width:390px){.settings-navigation-item{padding-left:12px;gap:6px}.settings-navigation-actions{gap:2px}.settings-navigation-actions button{min-width:30px;padding:4px 6px}.settings-navigation-actions .settings-navigation-transfer{max-width:82px;font-size:var(--fs-11)}}.practice-intro{margin:12px;padding:16px;border-radius:var(--radius);background:var(--blue-light);display:flex;flex-direction:column;gap:5px}.practice-intro b{font-size:var(--fs-16)}.practice-intro span{color:var(--gray-500);font-size:var(--fs-13)}.practice-intro-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.practice-intro-title button{width:28px;height:28px;flex:0 0 28px;padding:0;border:1px solid #93c5fd;border-radius:50%;background:var(--white);color:var(--blue);font-weight:800;cursor:pointer}.practice-info-content{margin:0;padding:18px;color:var(--gray-700);font-size:var(--fs-14);line-height:1.55}.practice-levels{display:flex;flex-direction:column;gap:8px;padding:0 12px 16px}.practice-level{width:100%;border:1px solid var(--gray-200);background:var(--white);border-radius:var(--radius);padding:12px;display:flex;align-items:center;gap:12px;color:var(--gray-900);text-align:left;cursor:pointer}.practice-level:not(.locked):hover{border-color:var(--blue);background:var(--blue-light)}.practice-level.locked{opacity:.55;cursor:default}.practice-level-number{width:38px;height:38px;flex:0 0 38px;border-radius:50%;display:grid;place-items:center;background:var(--blue-light);color:var(--blue);font-weight:800}.practice-level span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:2px}.practice-level small{color:var(--gray-500);font-size:var(--fs-11)}.practice-level-score{color:var(--blue);font-size:var(--fs-12);font-weight:700}.practice-summary{padding:28px 14px 20px;text-align:center}.practice-summary-mark{width:64px;height:64px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;background:var(--green-light);color:var(--green);font-size:var(--fs-36);font-weight:800}.practice-summary h1{font-size:var(--fs-24)}.practice-summary>p{margin-top:6px;color:var(--gray-500);font-size:var(--fs-13)}.practice-summary-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0}.practice-summary-stats div{min-width:0;padding:16px 6px;border:1px solid var(--gray-200);border-radius:var(--radius);background:var(--white)}.practice-summary-stats strong{display:block;color:var(--blue);font-size:var(--fs-24);line-height:1.1}.practice-summary-stats span{display:block;margin-top:6px;color:var(--gray-500);font-size:var(--fs-11);line-height:1.25}.practice-summary-replay{width:100%}.practice-summary-levels{width:100%;margin-top:10px;padding:12px;border:2px solid var(--blue);border-radius:var(--radius);background:var(--white);color:var(--blue);font-size:var(--fs-14);font-weight:700;cursor:pointer}.practice-summary-levels:hover{background:var(--blue-light)}.practice-header{display:flex;align-items:center;justify-content:space-between}.practice-header button{border:0;background:none;color:#fff;font-size:var(--fs-22);cursor:pointer}.practice-header b{font-size:var(--fs-13)}.practice-levels-header{display:flex;align-items:center;justify-content:space-between}.practice-settings-trigger{width:38px;height:38px;border:1px solid var(--gray-200);border-radius:50%;background:var(--white);color:var(--blue);font-size:var(--fs-20);cursor:pointer}.practice-settings-content{display:grid;gap:10px;padding:16px 18px 22px}.practice-setting{display:flex;align-items:center;gap:12px;padding:13px;border:1px solid var(--gray-200);border-radius:var(--radius);cursor:pointer}.practice-setting input{width:20px;height:20px;flex:0 0 20px;accent-color:var(--blue)}.practice-setting span{display:grid;gap:3px}.practice-setting b{color:var(--gray-900);font-size:var(--fs-14)}.practice-setting small{color:var(--gray-500);font-size:var(--fs-11)}.practice-setting.disabled{background:var(--gray-100);cursor:default}.practice-task{padding:20px 14px}.practice-prompt{display:flex;align-items:center;justify-content:center;gap:8px;margin:8px 0}.practice-translation{font-size:var(--fs-19);font-weight:700;text-align:center}.practice-audio{flex:0 0 auto}.practice-topic{font-size:var(--fs-11);color:var(--gray-400);text-align:center;min-height:30px;display:flex;align-items:center;justify-content:center;gap:7px}.practice-theory-trigger{width:24px;height:24px;flex:0 0 24px;padding:0;border:1px solid #93c5fd;border-radius:50%;background:var(--blue-light);color:var(--blue);font-weight:800;cursor:pointer}.practice-theory-trigger:hover{background:#dbeafe}.practice-theory-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;display:flex;align-items:flex-end;justify-content:center;padding:16px;background:#0f172a85}.practice-theory-modal{width:min(100%,520px);max-height:min(78vh,640px);overflow-y:auto;border-radius:18px 18px 12px 12px;background:var(--white);box-shadow:0 20px 45px #0f172a3d}.practice-theory-header{position:sticky;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 18px 12px;background:var(--white);border-bottom:1px solid var(--gray-100)}.practice-theory-header small{color:var(--blue);font-size:var(--fs-11);font-weight:800;letter-spacing:.06em}.practice-theory-header h2{margin:4px 0 0;color:var(--gray-900);font-size:var(--fs-19)}.practice-theory-header button{width:32px;height:32px;flex:0 0 32px;padding:0;border:0;border-radius:50%;background:var(--gray-100);color:var(--gray-700);font-size:24px;line-height:1;cursor:pointer}.practice-theory-content{padding:16px 18px 22px;color:var(--gray-700);font-size:var(--fs-15);line-height:1.55;white-space:pre-line}.practice-theory-content p{margin:0}.practice-theory-content code{padding:2px 5px;border-radius:5px;background:var(--blue-light);color:var(--blue-dark);font-family:inherit;font-size:.94em;font-weight:700;white-space:normal}@media(min-width:600px){.practice-theory-backdrop{align-items:center}.practice-theory-modal{border-radius:18px}}.practice-answer{min-height:92px;border:2px dashed var(--gray-200);border-radius:var(--radius);padding:10px;margin:16px 0;display:flex;flex-wrap:wrap;align-content:flex-start;gap:7px}.practice-answer>span{margin:auto;color:var(--gray-400);font-size:var(--fs-13)}.practice-answer button,.practice-tiles button{border:1px solid var(--gray-200);border-radius:8px;padding:9px 11px;background:var(--white);color:var(--gray-900);font-size:var(--fs-15);cursor:pointer;box-shadow:0 1px 2px #0000000f}.practice-answer button{border-color:#93c5fd;background:var(--blue-light)}.practice-tiles{min-height:96px;display:flex;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:8px}.practice-check{width:100%;margin-top:18px}.practice-check:disabled{opacity:.45;cursor:default}.practice-feedback{border-radius:var(--radius);margin-top:18px;padding:13px;text-align:center;font-weight:700}.practice-feedback.correct{color:var(--green);background:var(--green-light)}.practice-feedback.wrong{color:var(--red);background:var(--red-light)}.practice-feedback small{display:block;color:var(--gray-700);font-size:var(--fs-13);margin-top:7px}.practice-modes{padding-bottom:24px}.practice-mode-grid{display:grid;gap:12px;padding:16px 12px}.practice-mode-grid button{display:flex;flex-direction:row;align-items:center;gap:14px;min-height:80px;padding:16px 18px;border:1px solid var(--gray-200);border-radius:var(--radius);background:var(--white);color:var(--gray-900);text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.practice-mode-grid button:hover,.practice-mode-grid button:focus-visible{border-color:var(--blue);background:var(--blue-light)}.practice-mode-grid strong{font-size:var(--fs-16);display:block}.practice-mode-grid .tc-mode-text span{font-size:var(--fs-13);color:var(--gray-500);display:block;margin-top:3px}.tc-mode-icon{font-size:20px;flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--gray-100);border-radius:10px;font-style:normal}.tc-mode-text{flex:1}.tc-card{display:grid;gap:18px;margin:14px 12px;padding:18px;border:1px solid var(--gray-200);border-radius:var(--radius);background:var(--white)}.tc-card h1{margin:0;font-size:var(--fs-22)}.tc-card fieldset{min-width:0;margin:0;padding:12px;border:1px solid var(--gray-200);border-radius:10px}.tc-card legend{padding:0 5px;font-weight:700}.tc-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.tc-option{display:flex;align-items:center;gap:7px;min-height:36px}.tc-option small{margin-left:auto;color:var(--gray-400)}.tc-level{display:flex;align-items:center;justify-content:space-between;font-weight:700}.tc-level select{min-width:88px;padding:8px;border:1px solid var(--gray-200);border-radius:8px;background:var(--white)}.tc-status{display:flex;justify-content:space-between;gap:8px;margin-bottom:18px;color:var(--gray-500);font-size:var(--fs-12);font-weight:700}.tc-error{margin:0;color:var(--red)}.tc-abandon{display:block;margin:14px auto 0;padding:8px;border:0;background:transparent;color:var(--gray-500);cursor:pointer}@media(min-width:720px){.practice-mode-grid{grid-template-columns:repeat(2,1fr)}.tc-card{max-width:680px;margin:20px auto}}.page-header{background:var(--blue);color:var(--white);padding:11px 16px;font-size:var(--fs-18);font-weight:700}.card{background:var(--white);border-radius:var(--radius);padding:16px;margin:12px 12px 0;border:1px solid var(--gray-100);box-shadow:0 1px 2px #0000000a}.card-sm{background:var(--white);border-radius:var(--radius-sm);padding:12px}.home-hero{background:linear-gradient(135deg,#1e3a8a,#2563eb);color:var(--white);padding:20px 16px 16px}.home-greeting{font-size:var(--fs-20);font-weight:700;margin-bottom:2px}.home-tagline{font-size:var(--fs-13);opacity:.8;margin-bottom:0}.home-word-card{width:calc(100% - 24px);margin:0 12px 20px;padding:16px;border:1px solid var(--gray-200);border-radius:var(--radius);background:var(--white);color:var(--gray-900);display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer;animation:fadeInUp .25s ease both}.home-word-icon{font-size:var(--fs-26)}.home-word-content{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.home-word-content strong{font-size:var(--fs-17)}.home-word-content span{color:var(--gray-500);font-size:var(--fs-13)}.home-word-arrow{color:var(--gray-300);font-size:var(--fs-24)}.home-stats-row{display:flex;align-items:stretch;gap:8px;padding-top:12px}.home-stat{flex:1;background:#fffffff2;border-radius:var(--radius);padding:10px 8px;text-align:center;box-shadow:0 1px 4px #00000014}.home-stat-icon{font-size:var(--fs-18);line-height:1;margin-bottom:4px}.home-stat-num{font-size:var(--fs-22);font-weight:800;line-height:1;color:var(--gray-900)}.home-stat-label{font-size:var(--fs-11);color:var(--gray-500);margin-top:3px}.home-section-label{font-size:var(--fs-11);font-weight:700;color:var(--gray-400);text-transform:uppercase;letter-spacing:.07em;padding:14px 16px 6px}.home-continue-card{margin:0 12px;background:var(--white);border-radius:var(--radius);padding:14px 16px;border:1px solid var(--gray-200);width:calc(100% - 24px);box-shadow:none;animation:fadeInUp .25s ease both}.home-cta-btn{display:block;width:100%;margin-top:12px;padding:13px;background:var(--blue);color:var(--white);border:none;border-radius:var(--radius-sm);font-size:var(--fs-16);font-weight:700;cursor:pointer;transition:background .15s,transform .1s;text-align:center;letter-spacing:.01em}.home-cta-btn:hover{background:var(--blue-dark)}.home-cta-btn:active{transform:scale(.99)}.home-continue-inner{display:flex;align-items:center;gap:12px;margin-bottom:10px}.home-continue-emoji{font-size:var(--fs-28)}.home-continue-info{flex:1}.home-continue-name{font-weight:700;font-size:var(--fs-15);color:var(--gray-900)}.home-continue-sub{font-size:var(--fs-12);color:var(--gray-500);margin-top:2px}.home-continue-arrow{font-size:var(--fs-22);color:var(--gray-300)}.home-continue-progress{height:4px;background:var(--gray-100);border-radius:99px;overflow:hidden}.home-continue-fill{height:100%;background:var(--blue);border-radius:99px;transition:width .5s ease}.home-all-done-card{margin:0 12px;background:var(--green-light);border:1px solid #bbf7d0;border-radius:var(--radius);padding:14px 16px;display:flex;align-items:center;gap:12px;animation:fadeInUp .25s ease both}.home-all-done-icon{font-size:var(--fs-28)}.home-all-done-title{font-weight:700;font-size:var(--fs-15);color:var(--green)}.home-all-done-sub{font-size:var(--fs-12);color:var(--gray-500);margin-top:2px}.home-goal-card{display:flex;align-items:center;gap:12px;margin:8px 12px 0;background:var(--blue-light);border:1px solid #bfdbfe;border-radius:var(--radius);padding:12px 16px;cursor:pointer;width:calc(100% - 24px);text-align:left;transition:transform .1s,border-color .15s;animation:fadeInUp .25s ease .08s both}.home-goal-card:hover{border-color:var(--blue)}.home-goal-card:active{transform:scale(.99)}.home-goal-icon{font-size:var(--fs-24)}.home-goal-text{flex:1}.home-goal-title{font-weight:700;font-size:var(--fs-14);color:#1d4ed8}.home-goal-sub{font-size:var(--fs-12);color:var(--gray-500);margin-top:2px}.home-goal-arrow{font-size:var(--fs-20);color:#93c5fd}.home-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 12px 12px;animation:fadeInUp .25s ease .12s both}.home-tile{background:var(--white);border-radius:var(--radius);padding:16px 12px;text-align:center;cursor:pointer;border:1px solid var(--gray-200);box-shadow:none;transition:transform .1s,background .1s;color:var(--gray-900);display:flex;flex-direction:column;align-items:center;gap:6px}.home-tile:hover{background:var(--gray-50)}.home-tile:active{transform:scale(.97)}.home-tile-icon{font-size:var(--fs-30)}.home-tile-label{font-size:var(--fs-13);font-weight:600;display:flex;align-items:center;gap:4px}.home-tile-sub{font-size:var(--fs-11);color:var(--gray-400);font-weight:400;margin-top:-2px}.badge{background:var(--red);color:var(--white);border-radius:99px;font-size:var(--fs-11);font-weight:700;padding:2px 7px;min-width:20px;text-align:center}.section-title{font-size:var(--fs-13);font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;padding:16px 16px 8px}.search-bar{margin:12px 12px 0;position:relative}.search-bar input{width:100%;padding:10px 40px 10px 14px;border:1px solid var(--gray-200);border-radius:var(--radius);font-size:var(--fs-15);background:var(--white);outline:none}.search-bar input:focus{border-color:var(--blue)}.search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:var(--fs-18);cursor:pointer;color:var(--gray-500);padding:0}.pb-section{margin:12px 12px 0}.pb-section-header{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--white);border-radius:var(--radius) var(--radius) 0 0;border:1px solid var(--gray-200);cursor:pointer;-webkit-user-select:none;user-select:none}.pb-section-header.open{border-bottom:none;border-radius:var(--radius) var(--radius) 0 0}.pb-section-name{font-weight:700;font-size:var(--fs-15);flex:1}.pb-section-count{font-size:var(--fs-12);color:var(--gray-500)}.pb-section-chevron{transition:transform .2s;color:var(--gray-400);font-size:var(--fs-18);line-height:1}.pb-section-chevron.open{transform:rotate(90deg)}.pb-phrase-list{background:var(--white);border:1px solid var(--gray-200);border-top:none;border-radius:0 0 var(--radius) var(--radius);overflow:hidden}.pb-row{display:flex;align-items:center;padding:12px;border-bottom:1px solid var(--gray-50);gap:10px}.pb-row:last-child{border-bottom:none}.pb-row-text{flex:1;min-width:0}.pb-row-sr{font-weight:600;font-size:var(--fs-14);color:var(--gray-900)}.pb-row-ru{font-size:var(--fs-12);color:var(--gray-400);margin-top:1px}.pb-actions{display:flex;gap:4px;flex-shrink:0}.btn-icon{background:none;border:none;cursor:pointer;font-size:var(--fs-20);min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;transition:background .15s,transform .1s;line-height:1;flex-shrink:0}.btn-icon:hover{background:var(--gray-100)}.btn-icon:active{animation:pop .2s ease}.btn-icon.playing{background:var(--gray-100)}.search-results{margin:8px 12px 0}.search-result-item{background:var(--white);border-radius:var(--radius-sm);padding:10px 12px;margin-bottom:6px;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--gray-200)}.search-result-sr{font-weight:600;font-size:var(--fs-14)}.search-result-ru{font-size:var(--fs-13);color:var(--gray-500);margin-top:2px}.module-list{padding:12px;display:flex;flex-direction:column;gap:10px}.module-card{background:var(--white);border-radius:var(--radius);padding:16px;border:1px solid var(--gray-200);cursor:pointer;transition:border-color .15s,transform .1s;animation:fadeInUp .2s ease both}.module-list .module-card:nth-child(1){animation-delay:0ms}.module-list .module-card:nth-child(2){animation-delay:40ms}.module-list .module-card:nth-child(3){animation-delay:80ms}.module-list .module-card:nth-child(4){animation-delay:.12s}.module-list .module-card:nth-child(5){animation-delay:.16s}.module-card:hover:not(.locked){border-color:var(--blue)}.module-card:active:not(.locked){transform:scale(.99)}.module-card.locked{opacity:.45;cursor:not-allowed}.module-card.active{border-color:var(--green)}.module-card-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}.module-card.locked .module-card-top{margin-bottom:0}.module-emoji{font-size:var(--fs-28)}.module-info{flex:1}.module-name{font-weight:700;font-size:var(--fs-16)}.module-progress-text{font-size:var(--fs-12);color:var(--gray-500);margin-top:2px}.module-progress-bar{height:5px;background:var(--gray-100);border-radius:99px;overflow:hidden}.module-progress-fill{height:100%;background:var(--blue);border-radius:99px;transition:width .4s ease}.module-progress-fill.done{background:var(--green)}.lock-icon{font-size:var(--fs-20);flex-shrink:0}.back-btn{display:flex;align-items:center;gap:6px;padding:12px 16px;background:none;border:none;font-size:var(--fs-15);color:var(--blue);cursor:pointer;font-weight:600}.scenario-list{padding:0 12px 12px;display:flex;flex-direction:column;gap:8px}.scenario-card{background:var(--white);border-radius:var(--radius);padding:14px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;border:1px solid var(--gray-200);width:100%;text-align:left;transition:transform .1s,border-color .15s}.scenario-card:hover{border-color:var(--blue)}.scenario-card:active{transform:scale(.99)}.scenario-title{font-weight:600;font-size:var(--fs-15);flex:1}.scenario-status{font-size:var(--fs-20)}.dialogue-screen{padding:12px 12px 80px;animation:fadeInUp .2s ease both}.context-bubble{opacity:.6;margin-bottom:8px;font-size:var(--fs-13)}.dialogue-container{padding:0 12px 80px}.dialogue-header{padding:12px 16px 0;font-weight:700;font-size:var(--fs-15);color:var(--gray-700)}.dialogue-bubble{margin:12px 0 0;padding:12px 14px;border-radius:var(--radius);max-width:85%;font-size:var(--fs-15);line-height:1.5}.bubble-npc{background:var(--gray-100);color:var(--gray-900);margin-left:0;border-radius:4px var(--radius) var(--radius) var(--radius)}.bubble-npc .bubble-sr{font-weight:700}.bubble-npc .bubble-ru{font-size:var(--fs-13);color:var(--gray-500);margin-top:4px}.bubble-user-task{background:var(--blue-light);border:1.5px solid var(--blue);border-radius:var(--radius) 4px var(--radius) var(--radius);margin-left:auto;padding:12px 14px;max-width:90%;font-size:var(--fs-14)}.task-label{font-size:var(--fs-12);color:var(--blue);font-weight:700;margin-bottom:8px}.task-ru{font-size:var(--fs-13);color:var(--gray-500);margin-bottom:10px;font-style:italic}.assembled-area{min-height:40px;background:var(--white);border:1.5px dashed var(--gray-300);border-radius:var(--radius-sm);padding:8px;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.assembled-word{background:var(--blue);color:var(--white);padding:5px 10px;border-radius:99px;font-size:var(--fs-14);font-weight:600;cursor:pointer;border:none;transition:transform .1s}.assembled-word:active{transform:scale(.95)}.tile-pool{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.word-tile{background:var(--white);border:1.5px solid var(--gray-300);color:var(--gray-900);padding:6px 12px;border-radius:99px;font-size:var(--fs-14);font-weight:500;cursor:pointer;transition:background .1s,border-color .1s,transform .1s}.word-tile:hover{background:var(--gray-100)}.word-tile:active{transform:scale(.95)}.word-tile.used{opacity:.3;cursor:default}.check-btn{width:100%;padding:12px;background:var(--blue);color:var(--white);border:none;border-radius:var(--radius-sm);font-size:var(--fs-15);font-weight:700;cursor:pointer;transition:background .15s}.check-btn:hover{background:var(--blue-dark)}.check-btn:disabled{opacity:.4;cursor:not-allowed}.feedback-correct{background:var(--green-light);border:1.5px solid var(--green);border-radius:var(--radius-sm);padding:10px 12px;color:var(--green);font-weight:700;font-size:var(--fs-14);margin-top:8px}.feedback-wrong{background:var(--red-light);border:1.5px solid var(--red);border-radius:var(--radius-sm);padding:10px 12px;color:var(--red);font-weight:700;font-size:var(--fs-14);margin-top:8px}.feedback-wrong .correct-answer{font-weight:400;font-size:var(--fs-13);margin-top:4px;color:var(--gray-700)}.next-btn{margin-top:10px;width:100%;padding:12px;background:var(--green);color:var(--white);border:none;border-radius:var(--radius-sm);font-size:var(--fs-15);font-weight:700;cursor:pointer}.complete-screen{display:flex;flex-direction:column;align-items:center;padding:40px 20px;text-align:center;animation:fadeInUp .3s ease}.complete-emoji{font-size:var(--fs-64);margin-bottom:16px}.complete-title{font-size:var(--fs-24);font-weight:800;margin-bottom:8px}.complete-sub{color:var(--gray-500);margin-bottom:24px}.btn-primary{background:var(--blue);color:var(--white);border:none;border-radius:var(--radius);padding:14px 28px;font-size:var(--fs-16);font-weight:700;cursor:pointer;transition:background .15s,transform .1s}.btn-primary:hover{background:var(--blue-dark)}.btn-primary:active{transform:scale(.98)}.btn-outline{background:none;color:var(--blue);border:2px solid var(--blue);border-radius:var(--radius);padding:12px 28px;font-size:var(--fs-15);font-weight:700;cursor:pointer;margin-top:10px;transition:background .15s}.btn-outline:hover{background:var(--blue-light)}.btn-cta{margin-top:16px;background:var(--blue);color:var(--white);border:none;border-radius:var(--radius);padding:12px 24px;font-size:var(--fs-15);font-weight:700;cursor:pointer;transition:background .15s,transform .1s}.btn-cta:hover{background:var(--blue-dark)}.btn-cta:active{transform:scale(.98)}.dict-list{padding:0 12px 12px;display:flex;flex-direction:column;gap:6px}.dict-item{background:var(--white);border-radius:var(--radius-sm);padding:12px 14px;display:flex;align-items:center;gap:10px;border:1px solid var(--gray-200)}.dict-item-text{flex:1}.dict-item-sr{font-weight:700;font-size:var(--fs-15)}.dict-item-ru{font-size:var(--fs-13);color:var(--gray-500);margin-top:2px}.dict-item-source{font-size:var(--fs-11);color:var(--gray-300);margin-top:2px}.delete-btn{background:none;border:none;color:var(--gray-300);font-size:var(--fs-20);cursor:pointer;padding:4px;border-radius:6px;transition:color .15s,background .15s;line-height:1}.delete-btn:hover{color:var(--red);background:var(--red-light)}.lexicon-intro{padding:0 16px 12px;color:var(--gray-500);font-size:var(--fs-13);line-height:1.45}.lexicon-search-wrap{margin:0 12px 10px;padding:10px 12px;display:flex;gap:8px;align-items:center;background:var(--white);border:1px solid var(--gray-200);border-radius:12px}.lexicon-search-wrap input{min-width:0;flex:1;border:0;outline:0;font:inherit;background:transparent}.lexicon-search-wrap button{border:0;background:none;font-size:var(--fs-20);color:var(--gray-500)}.lexicon-count{padding:0 16px 7px;color:var(--gray-500);font-size:var(--fs-12)}.lexicon-table{margin:0 12px 20px;overflow:hidden;border:1px solid var(--gray-200);border-radius:12px;background:var(--white)}.lexicon-table-head,.lexicon-table-row{display:grid;grid-template-columns:minmax(90px,32%) 1fr;gap:12px}.lexicon-table-head{padding:9px 12px;background:var(--gray-100);color:var(--gray-500);font-size:var(--fs-11);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.lexicon-table-row{padding:11px 12px;border-top:1px solid var(--gray-200);align-items:start}.lexicon-table-row strong{color:var(--gray-900);font-size:var(--fs-15);overflow-wrap:anywhere}.lexicon-table-row span{color:var(--gray-500);font-size:var(--fs-13);line-height:1.45}.lexicon-empty{padding:40px 12px;text-align:center;color:var(--gray-500)}.empty-state{text-align:center;padding:60px 20px 40px;color:var(--gray-500);display:flex;flex-direction:column;align-items:center}.empty-state-icon{font-size:var(--fs-48);margin-bottom:12px}.empty-state-text{font-size:var(--fs-15);line-height:1.5}.review-container{padding:12px}.review-card{background:var(--white);border-radius:var(--radius);padding:28px 20px;text-align:center;border:1px solid var(--gray-200);margin-bottom:16px;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:fadeInUp .2s ease}.review-sr{font-size:var(--fs-26);font-weight:800;margin-bottom:8px}.review-hint{font-size:var(--fs-13);color:var(--gray-500)}.review-translation{font-size:var(--fs-20);font-weight:600;color:var(--blue);margin-top:12px}.review-actions{display:flex;gap:10px}.btn-known{flex:1;padding:14px;background:var(--green);color:var(--white);border:none;border-radius:var(--radius);font-size:var(--fs-15);font-weight:700;cursor:pointer;transition:transform .1s}.btn-known:active{transform:scale(.98)}.btn-unknown{flex:1;padding:14px;background:var(--red);color:var(--white);border:none;border-radius:var(--radius);font-size:var(--fs-15);font-weight:700;cursor:pointer;transition:transform .1s}.btn-unknown:active{transform:scale(.98)}.reveal-btn{width:100%;padding:14px;background:var(--gray-100);color:var(--gray-900);border:1px solid var(--gray-200);border-radius:var(--radius);font-size:var(--fs-15);font-weight:600;cursor:pointer;margin-bottom:10px;transition:background .15s}.reveal-btn:hover{background:var(--gray-200)}.choices-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.choice-btn{padding:14px 8px;background:var(--white);border:1.5px solid var(--gray-200);border-radius:var(--radius-sm);font-size:var(--fs-14);font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.choice-btn:hover{background:var(--blue-light);border-color:var(--blue)}.choice-btn.correct{background:var(--green-light);border-color:var(--green);color:var(--green)}.choice-btn.wrong{background:var(--red-light);border-color:var(--red);color:var(--red)}.review-progress{display:flex;align-items:center;gap:10px;padding:12px 0;font-size:var(--fs-13);color:var(--gray-500)}.review-bar{flex:1;height:6px;background:var(--gray-200);border-radius:99px;overflow:hidden}.review-bar-fill{height:100%;background:var(--blue);border-radius:99px;transition:width .3s ease}.results-screen{text-align:center;padding:40px 20px;animation:fadeInUp .3s ease}.results-emoji{font-size:var(--fs-56);margin-bottom:12px}.results-title{font-size:var(--fs-22);font-weight:800;margin-bottom:6px}.results-sub{color:var(--gray-500);margin-bottom:8px}.results-stats{display:flex;justify-content:center;gap:24px;margin:16px 0}.result-stat{text-align:center}.result-stat-num{font-size:var(--fs-28);font-weight:800}.result-stat-label{font-size:var(--fs-12);color:var(--gray-500)}.toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%) translateY(0);background:var(--gray-900);color:var(--white);padding:10px 18px;border-radius:99px;font-size:var(--fs-14);font-weight:600;z-index:200;white-space:nowrap;animation:toast-in .2s ease;max-width:calc(100% - 40px)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.update-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--blue);color:var(--white);padding:10px 16px;font-size:var(--fs-13);font-weight:600}.sync-banner{position:sticky;top:0;z-index:40;padding:8px 16px;text-align:center;font-size:13px;font-weight:600}.sync-banner.offline{color:#6a4a00;background:#fff0bd}.sync-banner.syncing{color:#124c37;background:#dff4ea}.update-banner button{background:var(--white);color:var(--blue);border:none;border-radius:99px;padding:5px 16px;font-size:var(--fs-13);font-weight:700;cursor:pointer;flex-shrink:0;transition:opacity .15s}.update-banner button:hover{opacity:.85}.settings-profile{display:flex;flex-direction:column;align-items:center;padding:28px 16px 16px;gap:10px}.settings-avatar-circle{width:64px;height:64px;background:var(--blue);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-26);font-weight:800}.settings-username{font-size:var(--fs-18);font-weight:700;color:var(--gray-900)}.settings-email{display:flex;align-items:center;gap:8px;margin-top:-6px;padding:0;border:0;background:none;color:var(--gray-500);font-size:var(--fs-13);cursor:pointer}.settings-email span{color:var(--blue);font-size:var(--fs-12)}.settings-email-form{width:min(100%,320px)}.settings-email-form input{width:100%;padding:10px 12px;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:var(--fs-14)}.settings-email-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.settings-email-actions button{padding:7px 12px;border:1px solid var(--blue);border-radius:var(--radius-sm);background:var(--white);color:var(--blue);cursor:pointer}.settings-email-actions button[type=submit]{background:var(--blue);color:var(--white)}.settings-email-actions button:disabled{opacity:.6;cursor:wait}.settings-email-error,.settings-email-success{margin-top:8px;font-size:var(--fs-12)}.settings-email-error{color:var(--red)}.settings-email-success{color:var(--green)}.settings-group{margin:8px 12px 0;background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);overflow:hidden}.settings-group-label{padding:10px 14px 6px;font-size:var(--fs-11);font-weight:700;color:var(--gray-400);text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--gray-100)}.settings-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:14px;font-size:var(--fs-15);color:var(--gray-900);border:none;background:none;width:100%;text-align:left;cursor:default;border-bottom:1px solid var(--gray-100)}.settings-row:last-child{border-bottom:none}.settings-row-danger{color:var(--red);cursor:pointer;transition:background .15s}.settings-row-danger:hover{background:var(--red-light)}.settings-row-danger:disabled{opacity:.6;cursor:wait}.settings-action-error{padding:10px 16px 14px;color:var(--red);font-size:var(--fs-13);line-height:1.4}.settings-row-install{color:var(--blue);cursor:pointer;transition:background .15s}.settings-row-install:hover{background:var(--blue-light)}.settings-row-btn{cursor:pointer;transition:background .15s}.settings-row-btn:hover:not(:disabled){background:var(--gray-50)}.settings-row-btn:disabled{opacity:.55;cursor:not-allowed}.settings-toggle{font-size:var(--fs-11);font-weight:700;background:var(--gray-200);color:var(--gray-500);padding:3px 10px;border-radius:99px;flex-shrink:0;transition:background .2s,color .2s}.settings-toggle.on{background:var(--green);color:var(--white)}.settings-lang-toggle{display:inline-flex;flex-shrink:0;margin-left:auto;gap:2px;padding:2px;border-radius:10px;background:var(--gray-100)}.settings-lang-btn{padding:6px 10px;border:0;border-radius:8px;background:transparent;color:var(--gray-500);font:inherit;font-size:var(--fs-12);font-weight:700;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.settings-lang-btn:hover:not(.active){color:var(--gray-900)}.settings-lang-btn.active{background:var(--white);color:var(--blue);box-shadow:0 1px 3px #0f172a24}.settings-lang-btn:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.settings-install-hint{font-size:var(--fs-13);color:var(--gray-500);padding:10px 14px;background:var(--blue-light);border-bottom:1px solid var(--gray-200)}.settings-tag{font-size:var(--fs-11);font-weight:700;background:var(--gray-100);color:var(--gray-500);padding:3px 8px;border-radius:99px;flex-shrink:0}.settings-tag-active{background:var(--green-100, #dcfce7);color:var(--green-700, #15803d)}.settings-row-hint{font-size:var(--fs-12);color:var(--gray-400);padding:0 16px 12px;margin-top:-8px}.settings-about{display:flex;flex-direction:column;align-items:center;padding:28px 16px 40px;gap:4px;color:var(--gray-400)}.settings-about-logo{font-size:var(--fs-28)}.settings-about-name{font-size:var(--fs-13);font-weight:700}.settings-about-sub{font-size:var(--fs-12)}.app-topbar-avatar.settings-active{background:var(--gray-200);color:var(--gray-700);font-size:var(--fs-18)}.settings-feedback-panel{padding:12px 14px 14px;border-bottom:1px solid var(--gray-100);background:var(--gray-50)}.settings-feedback-textarea{width:100%;box-sizing:border-box;border:1px solid var(--gray-200);border-radius:8px;padding:10px 12px;font-size:var(--fs-14);font-family:inherit;color:var(--gray-900);background:var(--white);resize:none;outline:none;transition:border-color .15s}.settings-feedback-textarea:focus{border-color:var(--blue)}.settings-feedback-contact{width:100%;box-sizing:border-box;border:1px solid var(--gray-200);border-radius:8px;padding:8px 12px;font-size:var(--fs-13);font-family:inherit;color:var(--gray-900);background:var(--white);outline:none;margin-top:8px;transition:border-color .15s}.settings-feedback-contact:focus{border-color:var(--blue)}.settings-feedback-footer{display:flex;align-items:center;justify-content:space-between;margin-top:8px}.settings-feedback-count{font-size:var(--fs-12);color:var(--gray-400)}.settings-feedback-send{background:var(--blue);color:var(--white);border:none;border-radius:8px;padding:8px 20px;font-size:var(--fs-14);font-weight:600;cursor:pointer;transition:opacity .15s}.settings-feedback-send:disabled{opacity:.45;cursor:not-allowed}.settings-feedback-success{font-size:var(--fs-14);color:var(--green);font-weight:600;text-align:center;padding:8px 0}.avatar-news-badge{position:absolute;top:-2px;right:-2px;width:10px;height:10px;background:var(--red);border:2px solid var(--white);border-radius:50%;pointer-events:none}.settings-news-dot{display:inline-block;width:8px;height:8px;background:var(--red);border-radius:50%;margin-left:6px;vertical-align:middle;flex-shrink:0}.settings-news-panel{padding:4px 0 8px}.settings-news-empty{font-size:var(--fs-14);color:var(--gray-400);padding:12px 16px}.settings-news-item{padding:12px 16px;border-top:1px solid var(--gray-100)}.settings-news-item:first-child{border-top:none}.settings-news-item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.settings-news-item-date{font-size:var(--fs-12);color:var(--gray-400)}.settings-news-item-title{font-size:var(--fs-14);font-weight:700;color:var(--gray-900);margin-bottom:4px}.settings-news-item-body{font-size:var(--fs-14);color:var(--gray-700);line-height:1.5;white-space:pre-wrap}.android-test-news-item{display:block;width:100%;border-right:0;border-bottom:0;border-left:0;background:transparent;text-align:left;cursor:pointer;font:inherit}.android-test-news-item:hover{background:var(--gray-50)}.android-test-news-cta{display:inline-block;margin-top:10px;color:var(--blue);font-size:var(--fs-14);font-weight:700}.pb-chips-row{display:flex;gap:6px;overflow-x:auto;padding:10px 12px 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.pb-chips-row::-webkit-scrollbar{display:none}.pb-chip{flex-shrink:0;padding:6px 14px;border-radius:99px;border:1.5px solid var(--gray-200);background:var(--white);font-size:var(--fs-13);font-weight:500;color:var(--gray-700);cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}.pb-chip:hover{border-color:var(--blue);color:var(--blue)}.pb-chip.active{background:var(--blue);border-color:var(--blue);color:var(--white);font-weight:700}.search-highlight{background:#fef08a;color:inherit;border-radius:2px;font-weight:700;padding:0 1px}.install-banner{display:flex;align-items:center;gap:10px;background:var(--gray-900);color:var(--white);padding:11px 14px;font-size:var(--fs-13);animation:fadeInUp .25s ease}.install-banner-ios{background:#1e293b}.install-banner-icon{font-size:var(--fs-22);flex-shrink:0;line-height:1}.install-banner-body{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.install-banner-body strong{font-size:var(--fs-13);font-weight:700;white-space:nowrap}.install-banner-body span{font-size:var(--fs-11);opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.install-banner-btn{background:var(--blue);color:var(--white);border:none;border-radius:99px;padding:6px 16px;font-size:var(--fs-13);font-weight:700;cursor:pointer;flex-shrink:0;transition:opacity .15s;white-space:nowrap}.install-banner-btn:hover{opacity:.85}.install-banner-close{background:none;border:none;color:var(--white);opacity:.55;font-size:var(--fs-16);cursor:pointer;padding:4px;flex-shrink:0;line-height:1;transition:opacity .15s}.install-banner-close:hover{opacity:1}.home-level-card{margin:10px 12px 0;background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius);padding:10px 14px 12px;animation:fadeInUp .25s ease both}.home-level-top{display:flex;align-items:center;gap:8px;margin-bottom:8px}.home-level-badge{background:var(--blue);color:var(--white);font-size:var(--fs-11);font-weight:800;padding:3px 9px;border-radius:99px;flex-shrink:0}.home-level-name{font-size:var(--fs-13);font-weight:600;color:var(--gray-700);flex:1}.home-level-xp{font-size:var(--fs-11);color:var(--gray-400);font-weight:600}.home-level-bar{height:6px;background:var(--gray-100);border-radius:99px;overflow:hidden}.home-level-fill{height:100%;background:linear-gradient(90deg,#2563eb,#60a5fa);border-radius:99px;transition:width .9s cubic-bezier(.4,0,.2,1)}.home-streak-card{margin:8px 12px 0;background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius);padding:10px 14px 12px;animation:fadeInUp .25s ease .06s both}.home-streak-header{margin-bottom:10px}.home-streak-title{font-size:var(--fs-11);font-weight:700;color:var(--gray-400);text-transform:uppercase;letter-spacing:.06em}.home-streak-days{display:flex;justify-content:space-between}.home-streak-day{display:flex;flex-direction:column;align-items:center;gap:4px}.home-streak-dot{width:30px;height:30px;border-radius:50%;background:var(--gray-100);display:flex;align-items:center;justify-content:center;font-size:var(--fs-15);line-height:1;transition:background .2s}.home-streak-dot.active{background:#fef3c7}.home-streak-day-label{font-size:var(--fs-10);color:var(--gray-400);font-weight:500}.stage-list{padding:12px;display:flex;flex-direction:column;gap:10px}.stage-card{background:var(--white);border-radius:var(--radius);padding:14px 16px 12px;border:1px solid var(--gray-200);cursor:pointer;transition:border-color .15s,transform .1s;animation:fadeInUp .2s ease both}.stage-list .stage-card:nth-child(1){animation-delay:0ms}.stage-list .stage-card:nth-child(2){animation-delay:40ms}.stage-list .stage-card:nth-child(3){animation-delay:80ms}.stage-list .stage-card:nth-child(4){animation-delay:.12s}.stage-list .stage-card:nth-child(5){animation-delay:.16s}.stage-list .stage-card:nth-child(6){animation-delay:.2s}.stage-list .stage-card:nth-child(7){animation-delay:.24s}.stage-list .stage-card:nth-child(8){animation-delay:.28s}.stage-card:hover:not(.locked){border-color:var(--blue)}.stage-card:active:not(.locked){transform:scale(.99)}.stage-card.locked{opacity:.45;cursor:not-allowed}.stage-card.completed{border-color:var(--green)}.stage-card-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}.stage-card.locked .stage-card-top{margin-bottom:0}.stage-emoji{font-size:var(--fs-28);flex-shrink:0}.stage-info{flex:1}.stage-name{font-weight:700;font-size:var(--fs-15);color:var(--gray-900)}.stage-sub{font-size:var(--fs-12);color:var(--gray-500);margin-top:2px}.stage-progress-bar{height:4px;background:var(--gray-100);border-radius:99px;overflow:hidden;margin-bottom:10px}.stage-progress-fill{height:100%;background:var(--blue);border-radius:99px;transition:width .4s ease}.stage-progress-fill.done{background:var(--green)}.stage-modules-preview{display:flex;flex-wrap:wrap;gap:4px}.stage-module-chip{background:var(--gray-100);color:var(--gray-700);border-radius:99px;font-size:var(--fs-11);padding:3px 10px;font-weight:500;white-space:nowrap}.step-indicator{display:flex;align-items:center;justify-content:center;padding:10px 16px 4px;gap:0}.step-item{font-size:var(--fs-13);font-weight:600;color:var(--gray-400);padding:4px 12px;border-radius:20px;border:none;background:none;cursor:default;transition:color .2s,background .2s}.step-item.active{color:var(--blue);background:var(--blue-light)}.step-item.done{color:var(--blue);opacity:.65;cursor:pointer}.step-item.done:hover{opacity:1}.step-connector{flex:1;max-width:32px;height:1px;background:var(--gray-200)}.step-next-container{display:flex;justify-content:center;padding:24px 0 80px}.scenario-prep{padding:8px 16px 80px}.prep-section{margin-bottom:16px}.prep-phrases-title{font-size:var(--fs-13);font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.prep-done-badge{font-size:var(--fs-14);font-weight:600;color:var(--green);padding:6px 0 10px}.btn-link{background:none;border:none;color:var(--blue);font-size:var(--fs-14);font-weight:500;cursor:pointer;padding:8px 0;display:block;text-align:left}.btn-link:hover{opacity:.75}.line-counter{padding:10px 16px 2px;font-size:var(--fs-12);font-weight:600;color:var(--gray-400);letter-spacing:.03em}.scenario-info{padding:16px 16px 0}.info-title{font-size:var(--fs-14);font-weight:700;color:var(--gray-700);margin-bottom:12px}.info-checklist{list-style:none;display:flex;flex-direction:column;gap:10px}.info-checklist-item{display:flex;align-items:flex-start;gap:10px;background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-sm);padding:12px;font-size:var(--fs-14);color:var(--gray-900);line-height:1.4}.info-check{color:var(--green);font-size:var(--fs-14);font-weight:800;flex-shrink:0;margin-top:1px}.home-continue-stage-badge{display:inline-flex;align-items:center;gap:4px;background:var(--blue-light);color:var(--blue);border-radius:99px;font-size:var(--fs-11);font-weight:700;padding:3px 10px;margin-bottom:10px}.pb-chips-wrap{padding:8px 12px 4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.pb-chips-wrap::-webkit-scrollbar{display:none}.pb-chips-wrap .pb-chips-row{display:flex;gap:6px;padding:0;flex-wrap:nowrap;align-items:center}.pb-chip-group{display:contents}.pb-chip-stage{background:var(--gray-100);border-color:var(--gray-200);color:var(--gray-700);font-weight:700;font-size:var(--fs-11);padding:5px 12px}.pb-chip-stage.active{background:var(--blue);border-color:var(--blue);color:var(--white)}.nav-icon-wrap{padding:4px 10px}.kcard-page{padding:0 0 16px;animation:fadeInUp .25s ease}.kcard-subtitle{font-size:var(--fs-13);color:var(--gray-500);padding:4px 16px 12px}.kcard-tabs{display:flex;gap:6px;padding:0 16px 12px;border-bottom:1px solid var(--gray-200);margin-bottom:4px}.kcard-tab{flex:1;padding:7px 8px;border-radius:var(--radius-sm);border:1px solid var(--gray-200);background:var(--white);color:var(--gray-500);font-size:var(--fs-12);font-weight:600;cursor:pointer;transition:all .15s}.kcard-tab.active{background:var(--blue);border-color:var(--blue);color:var(--white)}.kcard-categories{padding:8px 0}.kcard-category{border-bottom:1px solid var(--gray-100)}.kcard-category-header{width:100%;display:flex;align-items:center;gap:8px;padding:12px 16px;background:none;border:none;cursor:pointer;text-align:left;font-size:var(--fs-14);font-weight:700;color:var(--gray-900)}.kcard-category-count{margin-left:auto;font-size:var(--fs-12);color:var(--gray-400);font-weight:400;background:var(--gray-100);border-radius:99px;padding:2px 8px}.kcard-category-chevron{font-size:var(--fs-10);color:var(--gray-400)}.kcard-category-list{padding:0 0 4px}.kcard-item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 16px;background:none;border:none;cursor:pointer;text-align:left;border-bottom:1px solid var(--gray-100);transition:background .1s}.kcard-item:hover{background:var(--gray-50)}.kcard-item-emoji{font-size:var(--fs-20);flex-shrink:0;width:32px;text-align:center}.kcard-item-body{flex:1;min-width:0}.kcard-item-sub{font-size:var(--fs-11);color:var(--gray-400);font-weight:500;margin-bottom:1px}.kcard-item-title{font-size:var(--fs-14);color:var(--gray-900);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kcard-item-fav{font-size:var(--fs-14)}.kcard-item-arrow{color:var(--gray-300);font-size:var(--fs-18);flex-shrink:0}.kcard-flat-list{padding:4px 0}.kcard-detail{padding:0 0 24px}.kcard-detail-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--gray-100)}.kcard-back-btn{background:none;border:none;color:var(--blue);font-size:var(--fs-14);font-weight:600;cursor:pointer;padding:4px 0}.kcard-fav-btn{background:none;border:none;font-size:var(--fs-22);cursor:pointer;padding:4px;line-height:1;transition:transform .15s}.kcard-fav-btn:hover{transform:scale(1.2)}.kcard-detail-category{display:flex;align-items:center;gap:6px;padding:12px 16px 4px;font-size:var(--fs-12);color:var(--gray-400);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.kcard-detail-title{font-size:var(--fs-20);font-weight:800;color:var(--gray-900);padding:4px 16px 16px;line-height:1.3}.kcard-detail-explanation{font-size:var(--fs-15);line-height:1.65;color:var(--gray-700);padding:0 16px 16px}.kcard-detail-section{padding:0 16px 16px}.kcard-section-label{font-size:var(--fs-11);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-400);margin-bottom:10px}.kcard-examples{display:flex;flex-direction:column;gap:10px}.kcard-example{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-sm);padding:10px 12px}.kcard-example-sr{font-size:var(--fs-16);font-weight:700;color:var(--blue);margin-bottom:2px}.kcard-example-note{font-size:var(--fs-11);color:var(--gray-400);margin-bottom:2px}.kcard-example-ru{font-size:var(--fs-13);color:var(--gray-500)}.kcard-variants{background:var(--blue-light);border:1px solid #bfdbfe;border-radius:var(--radius-sm);padding:14px}.kcard-variants-phrase{font-size:var(--fs-18);font-weight:700;color:var(--blue-dark);margin-bottom:8px}.kcard-variants-arrow{font-size:var(--fs-18);color:var(--gray-400);margin-bottom:8px}.kcard-variant-response{font-size:var(--fs-15);color:var(--gray-700);padding:5px 0;border-bottom:1px solid #bfdbfe}.kcard-variant-response:last-child{border-bottom:none}.kcard-tip{display:flex;gap:8px;align-items:flex-start;margin-bottom:10px;font-size:var(--fs-14);line-height:1.5;color:var(--gray-700)}.kcard-tip-icon{flex-shrink:0}.kcard-related{display:flex;flex-wrap:wrap;gap:6px}.kcard-related-badge{background:var(--green-light);color:var(--green);border-radius:99px;font-size:var(--fs-12);font-weight:600;padding:4px 12px}.home-daily-card{margin:0 16px 16px;background:linear-gradient(135deg,#1e40af,#2563eb);border-radius:var(--radius);padding:16px;border:none;cursor:pointer;text-align:left;width:calc(100% - 32px);color:var(--white);transition:transform .15s,box-shadow .15s}.home-daily-card:hover{transform:translateY(-1px);box-shadow:0 4px 16px #2563eb4d}.home-daily-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.home-daily-card-badge{font-size:var(--fs-11);font-weight:700;background:var(--blue-light);color:var(--blue);border-radius:99px;padding:3px 10px}.home-daily-card-cat{font-size:var(--fs-11);color:var(--gray-500)}.home-daily-card-title{font-size:var(--fs-17);font-weight:800;line-height:1.3;margin-bottom:6px;color:var(--gray-900)}.home-daily-card-preview{font-size:var(--fs-13);color:var(--gray-500);line-height:1.5;margin-bottom:12px}.home-daily-card-cta{font-size:var(--fs-13);font-weight:700;color:var(--blue)}.empty-state-sub{font-size:var(--fs-13);color:var(--gray-400);margin-top:6px;text-align:center}@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.25)}to{transform:scale(1)}}.landing-shell{min-height:100vh;min-height:100dvh;overflow-y:auto;background:var(--gray-50);max-width:480px;margin:0 auto}.landing-hero{background:linear-gradient(160deg,#1a306e,#2563eb);color:var(--white);padding:max(48px,calc(env(safe-area-inset-top) + 32px)) 20px 36px;text-align:center;display:flex;flex-direction:column;align-items:center}.landing-hero-flag{font-size:var(--fs-56);line-height:1;margin-bottom:14px}.landing-hero-badge{max-width:320px;margin-bottom:14px;padding:6px 11px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:#ffffff1a;color:#ffffffeb;font-size:var(--fs-11);font-weight:700;letter-spacing:.035em;text-transform:uppercase}.landing-hero-title{font-size:var(--fs-30);font-weight:800;letter-spacing:-.025em;line-height:1.18;margin-bottom:12px;text-wrap:balance}.landing-hero-sub{font-size:var(--fs-15);opacity:.8;line-height:1.55;max-width:290px;margin-bottom:28px}.landing-hero-cta{width:100%;max-width:300px;padding:15px;font-size:var(--fs-16);font-weight:800;background:var(--white);color:var(--blue-dark);border:none;border-radius:var(--radius);cursor:pointer;margin-bottom:14px;letter-spacing:.01em;transition:opacity .15s,transform .1s}.landing-hero-cta:hover{opacity:.92}.landing-hero-cta:active{transform:scale(.98);opacity:.85}.landing-hero-login{background:none;border:none;color:#ffffffa6;font-size:var(--fs-14);cursor:pointer;padding:8px;text-decoration:underline;text-underline-offset:3px;transition:color .15s}.landing-hero-login:hover{color:var(--white)}.landing-hero-trust{font-size:var(--fs-12);color:#ffffff80;margin-bottom:10px;letter-spacing:.02em}.landing-section-label{font-size:var(--fs-11);font-weight:700;color:var(--gray-400);text-transform:uppercase;letter-spacing:.07em;padding:20px 16px 10px}.landing-features{padding:16px 12px 4px;display:flex;flex-direction:column;gap:8px}.landing-feature-card{background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius);padding:14px 16px;display:flex;align-items:flex-start;gap:14px;box-shadow:0 1px 2px #00000008}.landing-feature-icon{font-size:var(--fs-26);line-height:1;flex-shrink:0;margin-top:1px}.landing-feature-title{font-size:var(--fs-15);font-weight:700;color:var(--gray-900);margin-bottom:3px}.landing-feature-sub{font-size:var(--fs-13);color:var(--gray-500);line-height:1.45}.landing-phrases{padding:0 12px;display:flex;flex-direction:column;gap:6px}.landing-phrase-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-sm);padding:11px 14px;display:flex;align-items:center;gap:8px}.landing-phrase-sr{font-weight:700;font-size:var(--fs-15);color:var(--gray-900);flex:1}.landing-phrase-sep{color:var(--gray-300);font-size:var(--fs-13);flex-shrink:0}.landing-phrase-ru{font-size:var(--fs-13);color:var(--gray-500);flex:1;text-align:right}.landing-phrases-more{text-align:center;font-size:var(--fs-13);color:var(--gray-400);padding:4px 0 0;font-style:italic}.landing-stages{padding:0 12px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.landing-stage-item{background:var(--white);border:1px solid var(--gray-100);border-radius:var(--radius-sm);padding:10px 12px;display:flex;align-items:center;gap:8px}.landing-stage-emoji{font-size:var(--fs-20);line-height:1;flex-shrink:0}.landing-stage-name{font-size:var(--fs-12);font-weight:600;color:var(--gray-700);line-height:1.3}.landing-stages-hint{font-size:var(--fs-13);color:var(--gray-400);line-height:1.5;padding:8px 16px 0;text-align:center}.landing-cta-block{padding:24px 16px calc(40px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px}.landing-cta-btn{width:100%;padding:15px;font-size:var(--fs-16)}.landing-cta-block .btn-outline{margin-top:0;padding:13px}.landing-cta-note{text-align:center;font-size:var(--fs-12);color:var(--gray-400);padding-top:2px}.auth-back-link{display:block;width:100%;text-align:center;background:none;border:none;color:var(--gray-400);font-size:var(--fs-13);cursor:pointer;padding:12px 0 0;transition:color .15s}.auth-back-link:hover{color:var(--gray-700)}.legal-shell{min-height:100vh;min-height:100dvh;padding:24px 16px 48px;background:var(--gray-50)}.legal-card{max-width:760px;margin:0 auto;padding:28px clamp(20px,5vw,48px);background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius);color:var(--gray-700);line-height:1.65}.legal-card h1{margin:18px 0 4px;color:var(--gray-900);line-height:1.2}.legal-card h2{margin:28px 0 8px;color:var(--gray-900);font-size:var(--fs-18)}.legal-card p,.legal-card ul,.legal-card ol{margin:0 0 14px}.legal-card li+li{margin-top:6px}.legal-back{color:var(--blue);font-weight:700;text-decoration:none}.legal-updated{color:var(--gray-400);font-size:var(--fs-13)}.legal-warning,.legal-success{margin:20px 0;padding:14px 16px;border-radius:var(--radius-sm)}.legal-warning{color:#991b1b;background:var(--red-light);border:1px solid #fecaca}.legal-success{color:#166534;background:var(--green-light);border:1px solid #bbf7d0}.legal-success h2{margin-top:0;color:inherit}.legal-delete-form{display:grid;gap:16px;margin:22px 0 32px}.legal-delete-form label:not(.legal-confirm){display:grid;gap:6px;font-weight:700;color:var(--gray-900)}.legal-delete-form input:not([type=checkbox]){width:100%;padding:12px;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font:inherit}.legal-delete-form input:focus{outline:2px solid var(--blue-light);border-color:var(--blue)}.legal-confirm{display:flex;align-items:flex-start;gap:10px;font-size:var(--fs-14)}.legal-confirm input{margin-top:5px}.legal-delete-button{padding:13px 16px;border:0;border-radius:var(--radius-sm);background:var(--red);color:var(--white);font:inherit;font-weight:800;cursor:pointer}.legal-delete-button:disabled{opacity:.5;cursor:not-allowed}.legal-error{color:var(--red);font-size:var(--fs-14)}.legal-footer{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:36px;padding-top:18px;border-top:1px solid var(--gray-200);font-size:var(--fs-13)}.legal-footer a{color:var(--blue)}.landing-legal-links{display:flex;gap:16px;margin-top:12px;font-size:var(--fs-11)}.landing-legal-links a{color:#ffffffb3}.landing-lang-bar{display:flex;gap:4px;align-self:flex-end;margin-bottom:20px}.landing-lang-btn{background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:#ffffffb3;border-radius:6px;font-size:var(--fs-11);font-weight:700;letter-spacing:.04em;padding:4px 10px;cursor:pointer;transition:background .15s,color .15s}.landing-lang-btn.active{background:#ffffff47;color:var(--white);border-color:#ffffff80}.landing-lang-btn:hover:not(.active){background:#ffffff2e;color:var(--white)}.landing-platforms{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 16px 4px}.landing-platform-item{background:var(--white);border:1px solid var(--gray-200);border-radius:10px;padding:10px 12px;font-size:var(--fs-13);font-weight:600;color:var(--gray-700);text-align:center}.landing-platform-soon{grid-column:1 / -1;color:var(--blue);border-color:var(--blue);background:color-mix(in srgb,var(--blue) 6%,var(--white))}:root{--blue: #2f5bea;--blue-dark: #2448c8;--blue-light: #f0f4ff;--green: #22a06b;--green-light: #ecfdf3;--red: #e5484d;--red-light: #fff1f2;--gray-50: #f6f8fc;--gray-100: #f0f2f6;--gray-200: #e3e8f0;--gray-300: #d0d5dd;--gray-400: #98a2b3;--gray-500: #667085;--gray-700: #344054;--gray-900: #172033;--radius: 16px;--radius-sm: 12px;--app-shadow: 0 2px 8px rgba(16, 24, 40, .08)}body{background:var(--gray-50);color:var(--gray-900)}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(47,91,234,.22);outline-offset:2px}.app-shell:not(.landing-shell){width:100%;max-width:560px;background:var(--gray-50)}.app-content{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.app-topbar{min-height:60px;padding:8px 16px;padding-top:max(8px,env(safe-area-inset-top));border-color:var(--gray-200);position:sticky;top:0;z-index:90}.app-topbar-logo{gap:10px}.app-topbar-logo-flag{width:32px;height:32px}.app-topbar-logo-text{font-size:var(--fs-15)}.app-topbar-avatar{width:40px;height:40px;background:var(--blue-light);color:var(--blue);border:1px solid #dde7ff}.app-topbar-avatar:hover,.app-topbar-avatar.settings-active{background:var(--blue);color:var(--white)}.page-header{padding:20px 16px 8px;background:transparent;color:var(--gray-900);font-size:var(--fs-20);line-height:1.3}.home-hero{margin:12px 12px 0;padding:22px 20px;border-radius:var(--radius);background:linear-gradient(135deg,#2448c8,#2f5bea);box-shadow:var(--app-shadow)}.home-page{container-type:inline-size;display:grid;grid-template-columns:minmax(0,1fr);align-content:start;min-height:calc(100dvh - 64px);padding-bottom:max(20px,env(safe-area-inset-bottom))}.home-panel{min-width:0;display:flex;flex-direction:column}.home-dashboard-item{display:contents}.home-page>.home-panel:first-child .home-section-label{padding-top:16px}.home-greeting{font-size:var(--fs-24)}.home-tagline{margin-top:6px;font-size:var(--fs-14);opacity:.88}.home-section-label,.section-title,.settings-group-label,.kcard-section-label{padding:24px 16px 8px;color:var(--gray-500);font-size:var(--fs-12);font-weight:600;letter-spacing:.04em}.card,.home-continue-card,.home-word-card,.home-daily-card,.home-streak-card,.home-level-card,.stage-card,.practice-level,.dict-item,.game-card,.settings-group,.kcard-category,.kcard-item,.kcard-example,.review-card{border-color:var(--gray-200);border-radius:var(--radius);box-shadow:none}.home-continue-card,.home-word-card,.home-daily-card,.home-streak-card,.home-level-card{margin-left:12px;margin-right:12px;width:calc(100% - 24px)}@container (min-width: 560px){.home-page{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(12px,2.5cqw,24px);padding:0 clamp(20px,3.5cqw,32px) max(28px,env(safe-area-inset-bottom))}.home-page .home-hero{grid-column:1 / -1;margin:20px 24px 4px;padding:clamp(28px,4cqw,40px)}.home-page .home-section-label{padding-right:4px;padding-left:4px}.home-page .home-continue-card,.home-page .home-word-card,.home-page .home-daily-card,.home-page .home-streak-card,.home-page .home-level-card{width:calc(100% - 48px);flex:1;margin-right:24px;margin-left:24px}.home-page .home-streak-days{gap:clamp(4px,1cqw,10px)}.home-page .home-streak-day{min-width:0;flex:1}.home-page .home-streak-dot{width:clamp(28px,5cqw,36px);height:clamp(28px,5cqw,36px)}}@media(max-height:740px){.home-page .home-hero{margin-top:8px;padding-top:16px;padding-bottom:16px}.home-page .home-greeting{font-size:var(--fs-20)}.home-page .home-tagline{margin-top:2px;font-size:var(--fs-13)}.home-page .home-section-label{padding-top:12px;padding-bottom:5px}.home-page .home-continue-card,.home-page .home-word-card,.home-page .home-daily-card,.home-page .home-streak-card{padding-top:10px;padding-bottom:10px}.home-page .home-cta-btn{min-height:42px;margin-top:9px}.home-page .home-streak-header,.home-page .home-continue-inner{margin-bottom:7px}}@media(orientation:landscape)and (max-height:600px){.home-page{padding-bottom:max(12px,env(safe-area-inset-bottom))}.home-page .home-hero{padding-top:12px;padding-bottom:12px}.home-page .home-section-label{padding-top:8px}}.home-streak-card,.home-level-card,.home-daily-card,.home-word-card{background:var(--white)}.home-word-card,.home-daily-card,.stage-card,.practice-level,.game-card{transition:border-color .16s ease,background .16s ease,transform .16s ease}.home-word-card:hover,.home-daily-card:hover,.stage-card:hover:not(.locked),.practice-level:not(.locked):hover,.game-card:hover{border-color:#b8c8ff;background:var(--blue-light)}.home-word-card:active,.home-daily-card:active,.stage-card:active:not(.locked),.practice-level:not(.locked):active{transform:scale(.99)}.home-continue-progress,.home-level-bar,.stage-progress-bar{height:6px;background:var(--gray-100)}.home-continue-fill,.home-level-fill,.stage-progress-fill{background:var(--blue)}.btn-primary,.btn-cta,.home-cta-btn,.practice-check,.settings-feedback-send,.legal-delete-button{min-height:48px;padding:0 16px;border:0;border-radius:12px;background:var(--blue);color:var(--white);font-size:var(--fs-15);font-weight:600;box-shadow:none}.btn-primary:hover,.btn-cta:hover,.home-cta-btn:hover,.practice-check:hover:not(:disabled),.settings-feedback-send:hover:not(:disabled){background:var(--blue-dark)}.btn-outline,.auth-switch,.practice-summary-levels{min-height:48px;border:1px solid var(--gray-200);border-radius:12px;background:var(--white);color:var(--blue);font-weight:600}.search-bar input,.auth-card input,.settings-email-form input,.settings-feedback-textarea,.settings-feedback-contact,.legal-delete-form input:not([type=checkbox]){min-height:48px;padding:12px 14px;border:1px solid var(--gray-200);border-radius:12px;background:var(--white)}.search-bar input:focus,.auth-card input:focus,.settings-email-form input:focus,.settings-feedback-textarea:focus,.settings-feedback-contact:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2f5bea1a;outline:none}.search-bar{margin:8px 12px 0}.pb-section-header,.pb-phrase-list,.dict-list,.settings-group,.kcard-tabs{border-color:var(--gray-200);box-shadow:none}.pb-section-header{min-height:52px;border-radius:var(--radius)}.pb-section-header.open{border-radius:var(--radius) var(--radius) 0 0}.pb-row{min-height:60px;border-color:var(--gray-100)}.btn-icon,.delete-btn,.audio-btn,.kcard-back-btn,.kcard-fav-btn{min-width:44px;min-height:44px;border-radius:12px}.practice-intro{margin:12px;padding:16px;border:1px solid #dde7ff;border-radius:var(--radius);background:var(--blue-light)}.practice-answer{border:1px dashed var(--gray-300);border-radius:var(--radius);background:#ffffff8c}.practice-answer button,.practice-tiles button{min-height:44px;border-color:var(--gray-200);border-radius:12px;box-shadow:none}.practice-feedback{border-radius:var(--radius);font-weight:600}.settings-profile,.settings-about{background:transparent}.settings-row{min-height:56px;border-color:var(--gray-100)}.settings-lang-btn{min-height:40px;border-radius:10px}.empty-state{margin:40px 16px;padding:32px 20px;border:1px dashed var(--gray-300);border-radius:var(--radius);background:var(--white)}.toast{bottom:calc(88px + env(safe-area-inset-bottom));border-radius:12px;box-shadow:var(--app-shadow)}.app-nav{max-width:560px;min-height:68px;padding:6px 8px env(safe-area-inset-bottom);border-color:var(--gray-200);box-shadow:0 -2px 8px #1018280a}.nav-item{min-height:56px;justify-content:center;gap:4px;padding:5px 2px;border-radius:12px;color:var(--gray-500);font-size:var(--fs-11)}.nav-icon-wrap{padding:3px 14px}.nav-item.active .nav-icon-wrap{background:#dde7ff}.nav-item.active .nav-icon{font-size:var(--fs-22)}.nav-item.active{color:var(--blue)}.more-drawer{max-width:560px;border:1px solid var(--gray-200);border-bottom:0;border-radius:24px 24px 0 0;box-shadow:0 -8px 32px #1018281f}.auth-shell:not(.landing-shell){max-width:none;min-height:100dvh;background:radial-gradient(circle at 50% 0,#dde7ff 0,transparent 36rem),var(--gray-50)}.auth-card{max-width:420px;padding:28px 24px 24px;border-color:var(--gray-200);border-radius:20px;box-shadow:var(--app-shadow)}@media(min-width:760px){.more-backdrop,.more-drawer{bottom:0}.app-shell:not(.landing-shell):not(.auth-shell){max-width:1040px;grid-template-columns:220px minmax(0,1fr);grid-template-rows:1fr;gap:0;border-left:1px solid var(--gray-200);border-right:1px solid var(--gray-200)}.app-content{grid-column:2;padding-bottom:40px}.app-topbar{padding:12px 24px}.app-nav{position:sticky;top:0;bottom:auto;left:auto;grid-column:1;grid-row:1;align-self:start;transform:none;width:220px;height:100vh;height:100dvh;min-height:100dvh;padding:84px 12px 24px;flex-direction:column;justify-content:flex-start;gap:4px;border:0;border-right:1px solid var(--gray-200);box-shadow:none}.nav-item{flex:0 0 auto;width:100%;min-height:48px;padding:8px 12px;flex-direction:row;justify-content:flex-start;gap:12px;font-size:var(--fs-14);text-align:left}.nav-icon-wrap{width:32px;padding:0;display:grid;place-items:center;background:transparent!important}.nav-item.active{background:#dde7ff}.home-hero{margin:20px 24px 0;padding:28px 24px}.home-section-label,.section-title{padding-left:28px;padding-right:28px}.home-continue-card,.home-word-card,.home-daily-card,.home-streak-card,.home-level-card{margin-left:24px;margin-right:24px;width:calc(100% - 48px)}.search-bar,.pb-section,.settings-group,.card{margin-left:24px;margin-right:24px}.stage-list,.practice-levels{padding-left:24px;padding-right:24px}.practice-intro,.lexicon-search-wrap,.lexicon-table{margin-left:24px;margin-right:24px}.lexicon-intro,.lexicon-count{padding-left:28px;padding-right:28px}.dict-list{padding-left:24px;padding-right:24px}.home-grid{grid-template-columns:repeat(4,1fr);padding-left:24px;padding-right:24px}}@media(prefers-reduced-motion:reduce){.app-shell:not(.landing-shell) *,.auth-shell *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.landing-redesign{max-width:none;overflow:hidden;background:#f7f8f5;color:#17201b}.landing-nav{height:76px;padding:0 clamp(22px,6vw,88px);display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e8ebe7}.landing-brand{display:flex;align-items:center;gap:10px;border:0;background:none;color:#17201b;font-size:18px;font-weight:850;cursor:pointer}.landing-brand img{width:34px;height:34px;border-radius:9px;box-shadow:0 3px 10px #17201b20}.landing-nav-actions{display:flex;align-items:center;gap:18px}.landing-redesign .landing-lang-bar{margin:0;align-self:auto}.landing-redesign .landing-lang-btn{color:#667168;border-color:#dde2dc;background:#f5f6f4}.landing-redesign .landing-lang-btn.active{color:#fff;border-color:#163d2a;background:#163d2a}.landing-nav-login{border:0;background:none;color:#173d2b;font-size:13px;font-weight:750;cursor:pointer}.landing-redesign .landing-hero{min-height:660px;padding:70px clamp(24px,7vw,110px);display:grid;grid-template-columns:minmax(300px,.9fr) minmax(360px,1.1fr);align-items:center;gap:60px;color:#17201b;text-align:left;background:radial-gradient(circle at 78% 22%,#dcebdc 0,transparent 28%),linear-gradient(135deg,#f7f8f5 35%,#eef3ec)}.landing-hero-copy{max-width:600px}.landing-eyebrow,.landing-heading>span,.landing-device-copy>span{margin-bottom:20px;color:#a54635;font-size:12px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.landing-eyebrow span{color:#e0644d;font-size:9px}.landing-hero-copy h1{margin:0 0 24px;font-family:Georgia,Times New Roman,serif;font-size:clamp(54px,6vw,88px);font-weight:500;letter-spacing:-.055em;line-height:.96}.landing-hero-copy p{max-width:560px;margin:0 0 34px;color:#5e6961;font-size:18px;line-height:1.65}.landing-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.landing-primary,.landing-secondary{min-height:52px;padding:0 24px;border-radius:8px;font-weight:800;cursor:pointer}.landing-primary{border:1px solid #173d2b;color:#fff;background:#173d2b;box-shadow:0 10px 28px #173d2b28}.landing-primary:hover{background:#24523c}.landing-primary span{margin-left:20px}.landing-secondary{border:1px solid #d4dad4;color:#173d2b;background:#fff}.landing-visual{position:relative;min-height:550px;display:grid;place-items:center}.landing-phone{position:relative;z-index:2;width:282px;padding:12px 17px 20px;border:8px solid #18221d;border-radius:38px;background:#fff;box-shadow:0 35px 80px #173d2b33;transform:rotate(2deg)}.landing-phone-bar,.landing-phone-head{display:flex;align-items:center;justify-content:space-between}.landing-phone-bar{padding:0 6px 13px;font-size:9px;font-weight:800}.landing-phone-head{margin:0 -17px;padding:10px 17px;border-top:1px solid #edf0ed;border-bottom:1px solid #edf0ed}.landing-phone-head img{width:24px;height:24px;border-radius:6px}.landing-phone-head strong{font-size:13px}.landing-phone-head span{font-size:10px}.landing-phone-progress{height:5px;margin:18px 0;overflow:hidden;border-radius:8px;background:#e8ece8}.landing-phone-progress i{display:block;width:62%;height:100%;background:#d95c45}.landing-phone small{color:#89928b;font-size:8px;font-weight:800;letter-spacing:.1em}.landing-phone h3{margin:10px 0 20px;font-size:17px;line-height:1.3}.landing-word{margin-bottom:16px;padding:18px 12px;border-radius:10px;color:#173d2b;background:#eef5ef;font-size:16px;font-weight:800;text-align:center}.landing-phone>button{width:100%;margin:0 0 8px;padding:10px;border:1px solid #e0e4e0;border-radius:8px;color:#4d5850;background:#fff;font-size:10px;text-align:left}.landing-phone>button:first-of-type{border-color:#e37964;color:#963b2b;background:#fff5f2}.landing-phone-next{margin-top:8px;padding:11px;border-radius:8px;color:#fff;background:#173d2b;font-size:11px;font-weight:800;text-align:center}.landing-float-card{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;padding:13px 16px;border:1px solid #e1e5df;border-radius:10px;background:#fff;box-shadow:0 15px 40px #173d2b20}.landing-float-card b{color:#d35c46;font-size:20px}.landing-float-card span{max-width:100px;color:#687269;font-size:10px;font-weight:700;line-height:1.2}.landing-float-top{top:72px;right:5%}.landing-float-bottom{bottom:68px;left:2%}.landing-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:0 clamp(24px,7vw,110px);padding:34px 0;border-top:1px solid #dce1dc;border-bottom:1px solid #dce1dc}.landing-stats div{display:flex;flex-direction:column;align-items:center;gap:5px;border-right:1px solid #dce1dc}.landing-stats div:last-child{border:0}.landing-stats strong{color:#173d2b;font-family:Georgia,serif;font-size:36px}.landing-stats span{color:#727d74;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.landing-showcase{padding:110px clamp(24px,7vw,110px)}.landing-heading{margin:0 auto 52px;text-align:center}.landing-heading>span{display:block;margin-bottom:12px}.landing-heading h2,.landing-device-copy h2,.landing-final h2{margin:0 0 14px;font-family:Georgia,serif;font-size:clamp(38px,4vw,58px);font-weight:500;letter-spacing:-.035em}.landing-heading p,.landing-device-copy p{color:#69736b;font-size:16px}.landing-screen-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:1100px;margin:auto}.landing-screen{overflow:hidden;border:1px solid #dee3dd;border-radius:16px;background:#fff;box-shadow:0 16px 50px #173d2b12}.landing-screen-wide{grid-column:1 / -1}.landing-browser{height:38px;padding:0 14px;display:flex;align-items:center;gap:6px;border-bottom:1px solid #e8ebe7;background:#f2f4f1}.landing-browser i{width:7px;height:7px;border-radius:50%;background:#c6ccc6}.landing-browser span{width:45%;margin:auto;padding:5px;border-radius:5px;color:#8b948d;background:#fff;font-size:9px;text-align:center}.landing-dashboard{min-height:330px;display:grid;grid-template-columns:170px 1fr}.landing-dashboard aside{padding:24px;display:flex;flex-direction:column;gap:18px;color:#738077;background:#173d2b;font-size:11px}.landing-dashboard aside b{width:34px;padding:9px 0;border-radius:8px;color:#173d2b;background:#fff;text-align:center}.landing-dashboard>div{padding:42px 6%}.landing-dashboard small,.landing-feature-preview small{color:#a54635;font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.landing-dashboard h3{margin:8px 0 22px;font-family:Georgia,serif;font-size:28px;font-weight:500}.landing-progress-card{padding:20px;display:grid;gap:12px;border:1px solid #e4e8e3;border-radius:10px}.landing-progress-card i{height:5px;border-radius:5px;background:#edf0ed}.landing-progress-card em{display:block;width:68%;height:100%;background:#d95c45}.landing-progress-card button{justify-self:start;padding:8px 12px;border:0;border-radius:6px;color:#fff;background:#173d2b;font-size:10px}.landing-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.landing-mini-grid span{padding:14px;border-radius:8px;background:#f5f7f4;font-size:11px}.landing-feature-preview{padding:34px}.landing-feature-preview.accent{background:#173d2b;color:#fff}.landing-preview-icon{width:42px;height:42px;margin-bottom:24px;display:grid;place-items:center;border-radius:9px;color:#fff;background:#d75e47;font-family:Georgia,serif;font-size:20px}.landing-feature-preview h3{min-height:48px;margin:8px 0 24px;font-family:Georgia,serif;font-size:22px;font-weight:500}.landing-phrase-preview,.landing-dictionary-word{padding:13px 0;display:grid;grid-template-columns:1fr 1fr auto;border-top:1px solid #e7eae6;font-size:12px}.landing-phrase-preview span,.landing-dictionary-word span{color:#849087}.landing-dictionary-word{border-color:#ffffff20}.landing-dictionary-word em{color:#f3bb55;font-style:normal}.landing-devices{padding:100px clamp(24px,7vw,110px);display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:80px;color:#fff;background:#183d2c}.landing-device-art{position:relative;min-height:360px;display:grid;place-items:center}.landing-laptop{width:82%;padding:14px 14px 26px;border:6px solid #d9ddd8;border-radius:10px 10px 4px 4px;background:#212b26;box-shadow:0 30px 60px #07130d88}.landing-laptop div{height:260px;padding:42px;display:flex;flex-direction:column;gap:12px;color:#173d2b;background:linear-gradient(135deg,#fff,#e7efe7)}.landing-laptop b{font-family:Georgia,serif;font-size:28px}.landing-laptop span{color:#6f7b71;font-size:12px}.landing-small-phone{position:absolute;right:3%;bottom:-5px;width:120px;height:220px;padding:70px 14px 0;display:flex;flex-direction:column;gap:8px;border:6px solid #111b16;border-radius:24px;color:#173d2b;background:#fff;box-shadow:0 20px 50px #07130d88}.landing-small-phone span{color:#758078;font-size:10px}.landing-device-copy>span{display:block;color:#ef9b88}.landing-device-copy p{max-width:520px;color:#c6d2c9;line-height:1.65}.landing-device-tags{margin-top:28px;display:flex;flex-wrap:wrap;gap:9px}.landing-device-tags b{padding:10px 12px;border:1px solid #ffffff25;border-radius:7px;background:#ffffff0d;font-size:11px}.landing-final{padding:110px 24px;text-align:center;background:#f0eee8}.landing-final>span{display:block;margin-bottom:22px;font-size:36px}.landing-final h2{margin-bottom:30px}.landing-final p{margin-top:16px;color:#7d867e;font-size:11px}.landing-footer{min-height:110px;padding:24px clamp(24px,7vw,110px);display:flex;align-items:center;justify-content:space-between;gap:20px;color:#7b857d;background:#fff;font-size:11px}.landing-footer>div:nth-child(2){display:flex;gap:20px}.landing-footer a{color:#667168}@media(max-width:760px){.landing-nav{height:66px;padding:0 16px}.landing-nav-login{display:none}.landing-brand{font-size:15px}.landing-brand img{width:30px;height:30px}.landing-redesign .landing-hero{min-height:auto;padding:54px 20px 68px;grid-template-columns:1fr;gap:36px;text-align:center}.landing-eyebrow{margin-bottom:15px}.landing-hero-copy h1{font-size:clamp(46px,14vw,66px)}.landing-hero-copy p{font-size:16px}.landing-actions{justify-content:center}.landing-secondary{display:none}.landing-visual{min-height:490px}.landing-phone{width:248px}.landing-float-top{right:-3%}.landing-float-bottom{left:-2%}.landing-stats{margin:0 20px}.landing-stats strong{font-size:27px}.landing-stats span{font-size:8px;text-align:center}.landing-showcase{padding:80px 18px}.landing-screen-grid{grid-template-columns:1fr}.landing-screen-wide{grid-column:auto}.landing-dashboard{grid-template-columns:64px 1fr}.landing-dashboard aside{padding:16px 10px}.landing-dashboard aside span{font-size:0}.landing-dashboard aside span:first-letter{font-size:12px}.landing-dashboard>div{padding:28px 16px}.landing-dashboard h3{font-size:21px}.landing-devices{padding:74px 22px;grid-template-columns:1fr;gap:48px}.landing-device-art{min-height:280px}.landing-laptop{width:95%}.landing-laptop div{height:190px;padding:28px}.landing-small-phone{width:100px;height:185px;padding-top:56px}.landing-device-copy{text-align:center}.landing-device-tags{justify-content:center}.landing-footer{flex-direction:column;text-align:center}}.landing-redesign{--landing-primary: #2f5bea;--landing-primary-pressed: #2448c8;--landing-primary-soft: #dde7ff;--landing-primary-surface: #f0f4ff;--landing-background: #f6f8fc;--landing-surface: #fff;--landing-text: #172033;--landing-secondary-text: #667085;--landing-muted: #98a2b3;--landing-border: #e3e8f0;max-width:none;overflow:hidden;color:var(--landing-text);background:var(--landing-background);font-family:Inter,Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.landing-redesign button{font:inherit}.landing-redesign .landing-nav{position:relative;z-index:10;height:72px;padding:0 clamp(24px,6vw,88px);background:#fffffff0;border-bottom:1px solid var(--landing-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.landing-redesign .landing-brand{gap:12px;color:var(--landing-text);font-size:16px;font-weight:700}.landing-redesign .landing-brand img{width:36px;height:36px;object-fit:contain;border-radius:10px;box-shadow:none}.landing-redesign .landing-nav-actions{gap:20px}.landing-redesign .landing-lang-bar{gap:4px;padding:4px;border:1px solid var(--landing-border);border-radius:12px;background:var(--landing-background)}.landing-redesign .landing-lang-btn{min-width:38px;min-height:32px;padding:0 8px;color:var(--landing-secondary-text);background:transparent;border:0;border-radius:8px;font-size:12px;font-weight:600}.landing-redesign .landing-lang-btn.active{color:var(--landing-primary);background:var(--landing-primary-soft);border:0}.landing-redesign .landing-lang-btn:hover:not(.active){color:var(--landing-text);background:var(--landing-surface)}.landing-redesign .landing-nav-login{min-height:44px;color:var(--landing-primary);font-size:14px;font-weight:600}.landing-redesign .landing-nav-register{min-height:44px;padding:0 16px;color:#fff;background:var(--landing-primary);border:1px solid var(--landing-primary);border-radius:12px;font-size:14px;font-weight:600;cursor:pointer}.landing-redesign .landing-nav-register:hover,.landing-redesign .landing-nav-register:active{background:var(--landing-primary-pressed);border-color:var(--landing-primary-pressed)}.landing-redesign .landing-hero{min-height:680px;padding:72px clamp(24px,7vw,110px);grid-template-columns:minmax(300px,.95fr) minmax(360px,1.05fr);gap:64px;color:var(--landing-text);text-align:left;background:radial-gradient(circle at 83% 18%,rgb(221 231 255 / 85%) 0,transparent 30%),linear-gradient(180deg,var(--landing-surface),var(--landing-background))}.landing-redesign .landing-hero-copy{max-width:610px}.landing-redesign .landing-eyebrow,.landing-redesign .landing-heading>span,.landing-redesign .landing-device-copy>span{margin-bottom:16px;color:var(--landing-secondary-text);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:none}.landing-redesign .landing-eyebrow{width:fit-content;padding:8px 12px;color:var(--landing-primary);background:var(--landing-primary-surface);border-radius:999px}.landing-redesign .landing-hero-copy h1{margin:0 0 24px;color:var(--landing-text);font-family:inherit;font-size:clamp(40px,4.4vw,60px);font-weight:700;letter-spacing:-.045em;line-height:1.02}.landing-redesign .landing-hero-copy p{max-width:570px;margin:0 0 32px;color:var(--landing-secondary-text);font-size:17px;line-height:1.65}.landing-redesign .landing-actions{gap:12px}.landing-redesign .landing-primary,.landing-redesign .landing-secondary{min-height:48px;padding:0 18px;border-radius:12px;font-size:14px;font-weight:600;box-shadow:none}.landing-redesign .landing-primary{color:#fff;background:var(--landing-primary);border:1px solid var(--landing-primary)}.landing-redesign .landing-primary:hover{background:var(--landing-primary-pressed)}.landing-redesign .landing-primary:active{background:var(--landing-primary-pressed);transform:translateY(1px)}.landing-redesign .landing-primary span{margin-left:16px}.landing-redesign .landing-secondary{color:var(--landing-primary);background:var(--landing-surface);border:1px solid var(--landing-border)}.landing-redesign .landing-secondary:hover{background:var(--landing-primary-surface)}.landing-redesign .landing-visual{min-height:540px;isolation:isolate}.landing-redesign .landing-orbit{position:absolute;z-index:-1;border:1px solid #cdd9ff;border-radius:50%}.landing-redesign .landing-orbit-one{width:470px;height:470px}.landing-redesign .landing-orbit-two{width:350px;height:350px;background:#f0f4ffb3}.landing-redesign .landing-phone{width:284px;padding:12px 16px 20px;color:var(--landing-text);background:var(--landing-surface);border:7px solid var(--landing-text);border-radius:36px;box-shadow:0 2px 8px #10182814;transform:rotate(1.5deg)}.landing-redesign .landing-phone-bar{padding-bottom:12px}.landing-redesign .landing-phone-head{border-color:var(--landing-border);margin:0 -16px;padding:10px 16px}.landing-redesign .landing-phone-head img{object-fit:contain}.landing-redesign .landing-phone-progress{background:#e9edf5}.landing-redesign .landing-phone-progress i{background:var(--landing-primary)}.landing-redesign .landing-phone small{color:var(--landing-secondary-text);font-size:9px;font-weight:600;letter-spacing:.04em}.landing-redesign .landing-phone h3{color:var(--landing-text);font-weight:600}.landing-redesign .landing-word{color:var(--landing-primary);background:var(--landing-primary-surface);border-radius:12px}.landing-redesign .landing-phone>button{min-height:40px;color:var(--landing-secondary-text);background:var(--landing-surface);border-color:var(--landing-border);border-radius:8px}.landing-redesign .landing-phone>button.selected{color:var(--landing-primary);background:var(--landing-primary-surface);border-color:var(--landing-primary)}.landing-redesign .landing-phone-next{color:#fff;background:var(--landing-primary);border-radius:12px}.landing-redesign .landing-float-card{border-color:var(--landing-border);border-radius:12px;box-shadow:0 2px 8px #10182814}.landing-redesign .landing-float-card b{color:var(--landing-primary)}.landing-redesign .landing-float-card span{color:var(--landing-secondary-text)}.landing-redesign .landing-stats{margin:0 clamp(24px,7vw,110px);padding:32px 0;border-color:var(--landing-border)}.landing-redesign .landing-stats div{border-color:var(--landing-border)}.landing-redesign .landing-stats strong{color:var(--landing-primary);font-family:inherit;font-size:32px;font-weight:700}.landing-redesign .landing-stats span{color:var(--landing-secondary-text);font-size:12px;font-weight:500;letter-spacing:0;text-transform:none}.landing-redesign .landing-showcase{padding:96px clamp(24px,7vw,110px)}.landing-redesign .landing-heading{max-width:680px;margin-bottom:48px}.landing-redesign .landing-heading h2,.landing-redesign .landing-device-copy h2,.landing-redesign .landing-final h2{margin:0 0 16px;color:var(--landing-text);font-family:inherit;font-size:clamp(34px,4vw,52px);font-weight:700;letter-spacing:-.035em;line-height:1.1}.landing-redesign .landing-heading p,.landing-redesign .landing-device-copy p{color:var(--landing-secondary-text);font-size:16px;line-height:1.6}.landing-redesign .landing-screen-grid{gap:16px}.landing-redesign .landing-screen{color:var(--landing-text);background:var(--landing-surface);border:1px solid var(--landing-border);border-radius:16px;box-shadow:none}.landing-redesign .landing-browser{background:var(--landing-background);border-color:var(--landing-border)}.landing-redesign .landing-browser i{background:#c9d1df}.landing-redesign .landing-browser span{color:var(--landing-muted);background:var(--landing-surface)}.landing-redesign .landing-dashboard aside{color:#b9c8f5;background:var(--landing-primary)}.landing-redesign .landing-dashboard aside b{color:var(--landing-primary);border-radius:8px}.landing-redesign .landing-dashboard small,.landing-redesign .landing-feature-preview small{color:var(--landing-secondary-text);font-size:10px;font-weight:600;letter-spacing:.04em}.landing-redesign .landing-dashboard h3,.landing-redesign .landing-feature-preview h3{color:var(--landing-text);font-family:inherit;font-weight:600}.landing-redesign .landing-progress-card{border-color:var(--landing-border);border-radius:16px}.landing-redesign .landing-progress-card i{background:#e9edf5}.landing-redesign .landing-progress-card em{background:var(--landing-primary)}.landing-redesign .landing-progress-card button{min-height:36px;color:#fff;background:var(--landing-primary);border-radius:8px}.landing-redesign .landing-mini-grid span{background:var(--landing-background);border-radius:8px}.landing-redesign .landing-feature-preview{padding:32px}.landing-redesign .landing-preview-icon{margin-bottom:20px;color:var(--landing-primary);background:var(--landing-primary-soft);border-radius:12px;font-family:inherit}.landing-redesign .landing-phrase-preview,.landing-redesign .landing-dictionary-word{border-color:var(--landing-border)}.landing-redesign .landing-phrase-preview span,.landing-redesign .landing-dictionary-word span{color:var(--landing-secondary-text)}.landing-redesign .landing-dictionary-word em{color:#f5a524}.landing-redesign .landing-devices{padding:96px clamp(24px,7vw,110px);color:var(--landing-text);background:var(--landing-primary-surface)}.landing-redesign .landing-laptop{padding:12px 12px 24px;background:var(--landing-text);border-color:#c9d1df;box-shadow:0 2px 8px #10182814}.landing-redesign .landing-laptop div{color:var(--landing-text);background:var(--landing-surface);border-radius:4px}.landing-redesign .landing-laptop div>span{color:var(--landing-secondary-text);font-size:12px;font-weight:600}.landing-redesign .landing-laptop b{font-family:inherit;font-size:24px}.landing-redesign .landing-laptop small{color:var(--landing-secondary-text)}.landing-redesign .landing-laptop i{height:8px;margin-top:16px;background:#e9edf5;border-radius:999px}.landing-redesign .landing-laptop em{display:block;width:68%;height:100%;background:var(--landing-primary);border-radius:inherit}.landing-redesign .landing-small-phone{color:var(--landing-text);background:var(--landing-surface);border-color:var(--landing-text);box-shadow:0 2px 8px #10182814}.landing-redesign .landing-small-phone span{color:var(--landing-secondary-text)}.landing-redesign .landing-device-copy>span{color:var(--landing-primary)}.landing-redesign .landing-device-copy p{color:var(--landing-secondary-text)}.landing-redesign .landing-device-tags b{color:var(--landing-primary);background:var(--landing-surface);border-color:var(--landing-border);border-radius:8px}.landing-redesign .landing-final{padding:96px 24px;background:var(--landing-surface)}.landing-redesign .landing-final>span{font-size:36px}.landing-redesign .landing-final p{color:var(--landing-secondary-text);font-size:12px}.landing-redesign .landing-footer{color:var(--landing-muted);background:var(--landing-background);border-top:1px solid var(--landing-border)}.landing-redesign .landing-footer a{color:var(--landing-secondary-text)}.landing-redesign .landing-footer-meta{display:flex;align-items:flex-end;flex-direction:column;gap:6px}.landing-redesign .landing-footer-meta a{color:var(--landing-primary);font-weight:600;text-decoration:none}.landing-redesign .landing-footer-meta a:hover{text-decoration:underline}@media(max-width:760px){.landing-redesign .landing-nav{height:64px;padding:0 16px}.landing-redesign .landing-nav .landing-brand span{display:none}.landing-redesign .landing-brand img{width:32px;height:32px}.landing-redesign .landing-nav-actions{gap:8px}.landing-redesign .landing-nav-login{display:none}.landing-redesign .landing-nav-register{min-height:40px;padding:0 12px;font-size:12px}.landing-redesign .landing-lang-btn{min-width:36px;min-height:32px}.landing-redesign .landing-hero{min-height:auto;padding:48px 16px 64px;grid-template-columns:1fr;gap:40px;text-align:left}.landing-redesign .landing-eyebrow{margin:0 0 16px}.landing-redesign .landing-hero-copy h1{font-size:clamp(38px,11vw,52px)}.landing-redesign .landing-hero-copy p{font-size:16px}.landing-redesign .landing-actions{align-items:stretch;flex-direction:column}.landing-redesign .landing-secondary{display:block}.landing-redesign .landing-visual{min-height:500px}.landing-redesign .landing-phone{width:min(270px,calc(100vw - 72px))}.landing-redesign .landing-orbit-one{width:390px;height:390px}.landing-redesign .landing-orbit-two{width:290px;height:290px}.landing-redesign .landing-float-top{top:58px;right:-6px}.landing-redesign .landing-float-bottom{bottom:52px;left:-4px}.landing-redesign .landing-stats{margin:0 16px;gap:12px}.landing-redesign .landing-stats strong{font-size:24px}.landing-redesign .landing-stats span{font-size:10px;text-align:center}.landing-redesign .landing-showcase{padding:72px 16px}.landing-redesign .landing-screen-grid{grid-template-columns:1fr}.landing-redesign .landing-screen-wide{grid-column:auto}.landing-redesign .landing-dashboard{grid-template-columns:54px 1fr}.landing-redesign .landing-dashboard aside{padding:16px 10px}.landing-redesign .landing-dashboard aside span{font-size:0}.landing-redesign .landing-dashboard aside span:first-letter{font-size:12px}.landing-redesign .landing-dashboard>div{padding:24px 14px}.landing-redesign .landing-dashboard h3{font-size:20px}.landing-redesign .landing-mini-grid{grid-template-columns:1fr}.landing-redesign .landing-devices{padding:72px 16px;grid-template-columns:1fr;gap:48px}.landing-redesign .landing-device-art{min-height:260px}.landing-redesign .landing-laptop{width:94%}.landing-redesign .landing-laptop div{height:180px;padding:24px}.landing-redesign .landing-small-phone{width:100px;height:180px;padding-top:54px}.landing-redesign .landing-device-copy{text-align:left}.landing-redesign .landing-device-tags{justify-content:flex-start}.landing-redesign .landing-final{padding:72px 16px}.landing-redesign .landing-footer{flex-direction:column;text-align:center}.landing-redesign .landing-footer-meta{align-items:center}}.tc-text-answer{width:100%;min-height:52px;box-sizing:border-box;border:1.5px solid var(--gray-200);border-radius:12px;padding:12px 14px;font:inherit;font-size:var(--fs-15);color:var(--gray-900);background:var(--white);margin-bottom:4px}.tc-text-answer:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-light)}.tc-text-answer:disabled{opacity:.6;background:var(--gray-50)}.tc-page{display:flex;flex-direction:column;min-height:100%}.tc-timer-wrap{position:sticky;top:0;z-index:21;height:3px;background:var(--gray-200);overflow:hidden;flex-shrink:0}.tc-timer-fill{height:100%;background:var(--blue);transition:width .45s linear,background .4s}.tc-timer-fill--urgent{background:var(--red)}@media(prefers-reduced-motion:reduce){.tc-timer-fill{transition:none}}.tc-round-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--white);border-bottom:1px solid var(--gray-100);flex-shrink:0}.tc-round-back{border:none;background:none;font-size:var(--fs-20);cursor:pointer;padding:4px 6px;color:var(--gray-500);line-height:1;flex-shrink:0}.tc-round-back:hover{color:var(--gray-900)}.tc-round-progress{flex:1;display:flex;flex-direction:column;gap:5px}.tc-round-stage{color:var(--gray-700);font-size:var(--fs-12);font-weight:700;line-height:1.2}.tc-progress-track{height:4px;background:var(--gray-200);border-radius:2px;overflow:hidden}.tc-progress-fill{height:100%;background:var(--blue);border-radius:2px;transition:width .3s}.tc-progress-label{font-size:var(--fs-11);color:var(--gray-500);font-weight:600;letter-spacing:.02em}.tc-round-badges{display:flex;gap:6px;flex-shrink:0}.tc-badge{display:inline-flex;align-items:center;gap:3px;padding:4px 9px;border-radius:999px;font-size:var(--fs-12);font-weight:700;background:var(--gray-100);color:var(--gray-400);font-variant-numeric:tabular-nums}.tc-badge--streak{background:var(--gray-100);color:var(--gray-400)}.tc-badge--streak-on{background:#fff8ed;color:#92400e}.tc-badge--score{background:var(--blue-light);color:var(--blue)}.tc-badge--timer{background:var(--gray-100);color:var(--gray-600);font-variant-numeric:tabular-nums}.tc-badge--urgent{background:#fee2e2;color:#b91c1c}.tc-exercise{padding:20px 16px;display:flex;flex-direction:column}.tc-prompt{font-size:var(--fs-16);font-weight:500;color:var(--gray-500);margin-bottom:6px;line-height:1.4}.tc-context{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:var(--fs-12);color:var(--gray-400);font-weight:500;margin-bottom:20px}.tc-context-sep{color:var(--gray-300)}.tc-context-neg{color:var(--red);font-weight:600}.tc-meaning{margin:0 0 8px;font-size:var(--fs-15);color:var(--gray-700);font-style:italic;line-height:1.4}.tc-choices{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.tc-choice{padding:13px 16px;border-radius:var(--radius-sm);border:1.5px solid var(--gray-200);background:var(--white);font-size:var(--fs-15);font-weight:500;cursor:pointer;color:var(--gray-700);line-height:1.4;text-align:left;transition:border-color .12s,background .12s,color .12s}.tc-choice:hover:not(:disabled){border-color:var(--blue);background:var(--blue-light);color:var(--blue)}.tc-choice--selected{border-color:var(--blue);background:var(--blue-light);color:var(--blue);font-weight:600}.tc-choice--correct{border-color:var(--green)!important;background:var(--green-light)!important;color:var(--green)!important;font-weight:600}.tc-choice--wrong{border-color:var(--red)!important;background:var(--red-light)!important;color:var(--red)!important}.tc-choice:disabled{cursor:default}.tc-answer-zone{min-height:56px;border:1.5px dashed var(--gray-300);border-radius:var(--radius);padding:10px 12px;display:flex;flex-wrap:wrap;gap:7px;align-content:flex-start;margin-bottom:12px;background:var(--gray-50);transition:border-color .2s}.tc-answer-hint{color:var(--gray-300);font-size:var(--fs-14);align-self:center;pointer-events:none}.tc-tile-pool{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;justify-content:center}.tc-tile{padding:8px 15px;border-radius:999px;border:1.5px solid var(--gray-200);background:var(--white);font-size:var(--fs-15);font-weight:500;cursor:pointer;color:var(--gray-700);line-height:1.3;transition:border-color .12s,background .12s,color .12s}.tc-tile:hover:not(:disabled){border-color:var(--blue);background:var(--blue-light);color:var(--blue)}.tc-tile--placed{border-color:var(--blue);background:var(--blue-light);color:var(--blue)}.tc-tile--placed:hover:not(:disabled){border-color:var(--blue-dark)}.tc-tile:disabled{cursor:default}.tc-check-btn{position:sticky;bottom:max(8px,env(safe-area-inset-bottom));z-index:10;width:100%;margin-top:0;margin-bottom:8px;box-shadow:0 8px 24px #0f172a29}.tc-feedback{border-radius:var(--radius);padding:14px 16px;margin-bottom:12px;outline:none}.tc-feedback--correct{background:var(--green-light);border:1px solid #bbf7d0}.tc-feedback--wrong{background:var(--red-light);border:1px solid #fecaca}.tc-feedback-top{display:flex;align-items:center;gap:8px;margin-bottom:4px}.tc-feedback-icon{font-size:var(--fs-15);font-weight:800}.tc-feedback--correct .tc-feedback-icon{color:var(--green)}.tc-feedback--wrong .tc-feedback-icon{color:var(--red)}.tc-feedback-verdict{font-size:var(--fs-15);font-weight:700}.tc-feedback--correct .tc-feedback-verdict{color:var(--green)}.tc-feedback--wrong .tc-feedback-verdict{color:var(--red)}.tc-feedback-msg{font-size:var(--fs-13);color:var(--gray-500);margin-bottom:10px;line-height:1.4}.tc-feedback-ref{font-size:var(--fs-15);font-weight:600;color:var(--gray-700);padding-top:10px;border-top:1px solid rgba(0,0,0,.07);line-height:1.4}.tc-abandon{display:block;margin:10px auto 0;padding:10px;border:0;background:transparent;color:var(--gray-400);cursor:pointer;font-size:var(--fs-13)}.tc-abandon:hover{color:var(--gray-700)}.tc-back-link{display:block;margin:12px auto 0;padding:10px;border:0;background:transparent;color:var(--gray-400);cursor:pointer;font-size:var(--fs-13)}.tc-back-link:hover{color:var(--gray-700)}.tc-setup{padding:16px;display:flex;flex-direction:column;gap:24px}.tc-setup-hero{padding:18px;border-radius:var(--radius);background:linear-gradient(145deg,var(--blue-light),var(--white));border:1px solid var(--gray-100);display:flex;flex-direction:column;gap:16px}.tc-setup-hero h1{margin:4px 0 6px;color:var(--gray-900);font-size:var(--fs-22);line-height:1.2}.tc-setup-hero p{margin:0;color:var(--gray-600);font-size:var(--fs-14);line-height:1.45}.tc-eyebrow{color:var(--blue);font-size:var(--fs-11);font-weight:800;letter-spacing:.07em;text-transform:uppercase}.btn-cta small{display:block;margin-top:3px;font-size:var(--fs-11);font-weight:600;opacity:.82}.tc-quick-start{width:100%}.tc-section{display:flex;flex-direction:column}.tc-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.tc-section-label{font-size:var(--fs-11);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--gray-500)}.tc-selection-count{color:var(--blue);background:var(--blue-light);border-radius:999px;padding:3px 8px;font-size:var(--fs-11);font-weight:800}.tc-pills{display:flex;flex-wrap:wrap;gap:8px}.tc-pill{min-height:44px;padding:8px 14px;border-radius:999px;border:1.5px solid var(--gray-200);background:var(--white);font-size:var(--fs-13);font-weight:500;cursor:pointer;color:var(--gray-600, #475569);line-height:1.4;transition:border-color .12s,background .12s,color .12s;display:inline-flex;align-items:center;gap:6px}.tc-pill--on{border-color:var(--blue);background:var(--blue-light);color:var(--blue);font-weight:600}.tc-pill:hover:not(.tc-pill--on){border-color:var(--gray-300);background:var(--gray-50)}.tc-pill:focus-visible,.tc-choice:focus-visible,.tc-tile:focus-visible,.tc-round-back:focus-visible{outline:3px solid var(--blue-light);outline-offset:2px}.tc-show-more{align-self:flex-start;margin-top:10px;padding:7px 2px;border:0;background:none;color:var(--blue);font-size:var(--fs-13);font-weight:700;cursor:pointer}.tc-seg{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid var(--gray-200);border-radius:var(--radius-sm);overflow:hidden}.tc-seg--3{grid-template-columns:1fr 1fr 1fr}.tc-seg-btn{padding:11px 8px;border:none;background:var(--white);font-size:var(--fs-13);font-weight:500;cursor:pointer;color:var(--gray-400);transition:background .12s,color .12s;line-height:1.3;text-align:center}.tc-seg-btn+.tc-seg-btn{border-left:1.5px solid var(--gray-200)}.tc-seg-btn--on{background:var(--blue-light);color:var(--blue);font-weight:700}.tc-level-row{display:flex;gap:8px}.tc-level-btn{flex:1;min-height:44px;border-radius:var(--radius-sm);border:1.5px solid var(--gray-200);background:var(--white);font-size:var(--fs-16);font-weight:600;cursor:pointer;color:var(--gray-400);transition:border-color .12s,background .12s,color .12s}.tc-level-btn--on{border-color:var(--blue);background:var(--blue-light);color:var(--blue)}.tc-level-btn:hover:not(.tc-level-btn--on){border-color:var(--gray-300);color:var(--gray-700)}.tc-error{color:var(--red);font-size:var(--fs-13)}.tc-summary-screen{padding:40px 20px 32px;display:flex;flex-direction:column;align-items:center}.tc-summary-mark{width:64px;height:64px;border-radius:50%;background:var(--green-light);color:var(--green);font-size:28px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:14px;border:1px solid #bbf7d0}.tc-summary-title{font-size:var(--fs-22);font-weight:700;margin-bottom:28px;text-align:center}.tc-summary-stats{display:flex;gap:10px;margin-bottom:28px;width:100%}.tc-summary-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 8px;border:1px solid var(--gray-200);border-radius:var(--radius);background:var(--white)}.tc-summary-stat strong{font-size:var(--fs-22);font-weight:700;font-variant-numeric:tabular-nums;color:var(--gray-900)}.tc-summary-stat span{font-size:var(--fs-11);color:var(--gray-400);font-weight:600;text-align:center;letter-spacing:.02em}.tc-setup>.btn-cta,.tc-summary-screen>.btn-cta{width:100%}.tc-phase-bar{display:flex;align-items:stretch;gap:6px;padding:8px 16px;border-bottom:1px solid var(--gray-100)}.tc-phase-seg{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:8px;background:var(--gray-100);color:var(--gray-400);font-size:var(--fs-12);font-weight:700;transition:background .15s}.tc-phase-seg--done{background:var(--green-light);color:var(--green)}.tc-phase-seg--active{background:var(--blue-light);color:var(--blue);flex:1}.tc-phase-num{font-size:var(--fs-11);font-weight:800}.tc-phase-label{font-size:var(--fs-12);font-weight:600}.tc-phases-preview{display:flex;flex-direction:column;gap:8px;padding:12px 16px;background:var(--gray-50);border-radius:var(--radius);border:1px solid var(--gray-100)}.tc-phase-preview-row{display:flex;align-items:center;gap:10px;font-size:var(--fs-13);color:var(--gray-700)}.tc-phase-dot{width:22px;height:22px;border-radius:50%;background:var(--gray-200);color:var(--gray-600);font-size:var(--fs-11);font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tc-pill--dim{opacity:.48;cursor:not-allowed}.tc-abandon--end{margin-top:4px;font-size:var(--fs-12)}.tc-user-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tc-user-stat{min-width:0;padding:12px;border:1px solid var(--gray-100);border-radius:var(--radius);background:var(--gray-50);display:flex;flex-direction:column;gap:3px}.tc-user-stat strong{color:var(--blue);font-size:var(--fs-20);font-weight:800;font-variant-numeric:tabular-nums}.tc-user-stat span{color:var(--gray-500);font-size:var(--fs-11);font-weight:700;line-height:1.25}.tc-leaderboard{width:100%;margin:0 0 24px}.tc-lb-title{font-size:var(--fs-16);font-weight:700;margin:0 0 12px;text-align:center}.tc-lb-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:10px;border-radius:12px;background:var(--gray-100)}.tc-lb-tabs button{min-height:40px;border:0;border-radius:9px;background:transparent;color:var(--gray-500);font:inherit;font-size:var(--fs-13);font-weight:700;cursor:pointer}.tc-lb-tabs button[aria-selected=true]{background:var(--white);color:var(--blue);box-shadow:0 1px 4px #0f172a14}.tc-lb-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tc-lb-col{background:var(--gray-50);border:1px solid var(--gray-100);border-radius:var(--radius);padding:12px 10px;display:flex;flex-direction:column;gap:4px}.tc-lb-col-head{font-size:var(--fs-11);font-weight:700;color:var(--gray-400);letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px}.tc-lb-user-rank{display:flex;align-items:baseline;gap:6px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--gray-200)}.tc-lb-rank-num{font-size:var(--fs-20);font-weight:800;color:var(--blue);font-variant-numeric:tabular-nums}.tc-lb-rank-score{font-size:var(--fs-13);color:var(--gray-500);font-weight:600}.tc-lb-row{display:flex;align-items:center;gap:6px;font-size:var(--fs-12);padding:3px 0}.tc-lb-row--top .tc-lb-row-rank{color:var(--yellow, #ca8a04);font-weight:800}.tc-lb-row-rank{width:18px;text-align:right;color:var(--gray-400);font-weight:700;font-size:var(--fs-11);flex-shrink:0}.tc-lb-row-name{flex:1;color:var(--gray-700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tc-lb-row-score{color:var(--gray-500);font-weight:700;font-variant-numeric:tabular-nums;flex-shrink:0}.tc-more-actions{position:relative;align-self:center;margin:2px 0;text-align:center}.tc-more-actions summary{width:44px;height:40px;display:grid;place-items:center;border-radius:999px;color:var(--gray-500);cursor:pointer;list-style:none;letter-spacing:2px}.tc-more-actions summary::-webkit-details-marker{display:none}.tc-more-actions[open]{width:100%}.tc-more-actions .tc-abandon{margin-top:0}@media(min-width:640px){.tc-setup-hero{flex-direction:row;align-items:center;justify-content:space-between}.tc-quick-start{width:auto;min-width:190px}}.reader-page{padding:20px 16px 28px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reader-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.reader-page-header h1{margin:0;font-size:var(--fs-24)}.reader-info-btn{width:32px;height:32px;border:1px solid var(--gray-300);border-radius:50%;background:var(--white);color:var(--gray-500);font:700 italic var(--fs-16) Georgia,serif;cursor:pointer}.reader-info-btn:hover{border-color:var(--gray-400);color:var(--gray-900)}.reader-start-controls{display:flex;gap:8px;padding:12px;margin-bottom:16px;border-radius:12px;background:#111}.reader-start-message{padding:0 4px 14px;color:var(--gray-500);font-size:var(--fs-14)}.reader-start-message--error{color:var(--red)}.reader-start-history{overflow:hidden;border:1px solid #292929;border-radius:12px;background:#171717}.reader-start-history>h2{margin:0;padding:14px 16px;border-bottom:1px solid #292929;color:#eee;font-size:var(--fs-17)}.reader-reading-title{min-width:0;flex:1;overflow:hidden;color:#aaa;text-overflow:ellipsis;white-space:nowrap;font:500 var(--fs-14) -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.reader-reading-progress{min-width:3.25em;flex-shrink:0;color:#aaa;font:600 var(--fs-13) -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;text-align:right;font-variant-numeric:tabular-nums}.reader-progress-track{height:2px;flex-shrink:0;background:#222}.reader-progress-fill{height:100%;background:#d95c45;transition:width 80ms linear}.reader-help-modal .reader-onboarding-list{padding:20px;color:#d0d0d0}.reader-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:250;background:#0a0a0a;color:#e4e4e4;display:flex;flex-direction:column;overflow:hidden;font-family:Georgia,Times New Roman,serif}.reader-topbar{display:flex;align-items:center;gap:8px;min-height:56px;padding:max(10px,env(safe-area-inset-top)) 12px 10px;background:#111;border-bottom:1px solid #222;flex-shrink:0}.reader-back-btn{width:44px;height:44px;display:grid;place-items:center;background:#242424;border:1px solid #444;color:#fff;font-size:var(--fs-24);cursor:pointer;padding:0;border-radius:12px;flex-shrink:0;line-height:1}.reader-back-btn:hover{background:#303030;border-color:#666}.reader-url-form{display:flex;flex:1;gap:6px}.reader-url-input{flex:1;min-width:0;background:#1a1a1a;border:1px solid #333;border-radius:8px;color:#e4e4e4;padding:8px 12px;font-size:var(--fs-14);outline:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reader-url-input:focus{border-color:#555}.reader-url-input::placeholder{color:#555}.reader-go-btn{background:#2a2a2a;border:1px solid #444;color:#e4e4e4;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:var(--fs-16);flex-shrink:0}.reader-go-btn:hover:not(:disabled){background:#383838}.reader-go-btn:disabled{opacity:.35;cursor:default}.reader-file-input{display:none}.reader-file-btn{background:none;border:1px solid #333;color:#aaa;width:38px;height:38px;border-radius:8px;cursor:pointer;flex-shrink:0;font-size:var(--fs-20);line-height:1}.reader-file-btn:hover:not(:disabled){background:#222;color:#fff}.reader-file-btn:disabled{opacity:.35;cursor:default}.reader-history-btn{background:none;border:1px solid #333;color:#aaa;width:38px;height:38px;border-radius:8px;cursor:pointer;flex-shrink:0;font-size:var(--fs-20);line-height:1}.reader-history-btn:hover{background:#222;color:#fff}.reader-doc-title{font-size:var(--fs-12);color:#555;padding:6px 20px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reader-content{flex:1;overflow-y:auto;padding:20px 24px max(28px,env(safe-area-inset-bottom));line-height:1.85;font-size:var(--fs-18);-webkit-overflow-scrolling:touch;overscroll-behavior-x:none;touch-action:pan-y}.reader-para{margin:0;text-align:justify;-webkit-hyphens:auto;hyphens:auto}.reader-para-wrap{margin:0 0 1.1em}.reader-translate-para-btn{display:block;margin:2px 0 0 auto;padding:2px 5px;background:transparent;border:0;border-radius:5px;color:#606060;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:var(--fs-12);line-height:1.3;cursor:pointer}.reader-translate-para-btn:hover{color:#ddd;background:#202020}.reader-word{border-radius:3px;cursor:pointer;transition:background .1s}.reader-word:hover{background:#ffffff1a}.reader-word:active{background:#ffffff2e}.reader-nav-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px 18px;flex-shrink:0}.reader-nav-btn{background:#1e1e1e;border:1px solid #333;color:#e4e4e4;width:44px;height:44px;border-radius:10px;font-size:var(--fs-18);cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reader-nav-btn:hover:not(:disabled){background:#2a2a2a}.reader-nav-btn:disabled{opacity:.25;cursor:default}.reader-page-counter{font-size:var(--fs-13);color:#555;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reader-state{flex:1;display:flex;align-items:center;justify-content:center;color:#555;font-size:var(--fs-15);text-align:center;padding:40px 32px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reader-state--error{color:#c55}.reader-onboarding{flex-direction:column;gap:22px;color:#777}.reader-onboarding-title{color:#aaa;font-size:var(--fs-18);font-weight:600}.reader-onboarding-list{width:min(100%,360px);display:flex;flex-direction:column;gap:14px;text-align:left}.reader-onboarding-list>div{display:flex;align-items:flex-start;gap:12px;line-height:1.4}.reader-onboarding-icon{width:28px;height:28px;flex:0 0 28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #333;border-radius:8px;color:#aaa;font-size:var(--fs-12);font-weight:600}.reader-tooltip{position:fixed;background:#1c1c1c;border:1px solid #333;border-radius:10px;padding:10px 14px;z-index:200;min-width:110px;max-width:240px;box-shadow:0 6px 24px #000000b3;pointer-events:auto}.reader-tooltip-word{font-size:var(--fs-11);color:#666;margin-bottom:5px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reader-tooltip-body{font-size:var(--fs-15);color:#e4e4e4;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reader-tooltip-body--dim{color:#777;font-weight:400}.reader-tooltip-body--err{color:#c55;font-weight:400}.reader-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:20px;background:#000000b8;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reader-modal{width:min(100%,560px);max-height:min(80vh,680px);overflow:hidden;display:flex;flex-direction:column;background:#171717;border:1px solid #333;border-radius:14px;box-shadow:0 18px 60px #000000b3}.reader-modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid #2b2b2b}.reader-modal-header h2{margin:0;color:#eee;font-size:var(--fs-17)}.reader-modal-close{border:0;background:none;color:#888;font-size:var(--fs-24);cursor:pointer;line-height:1}.reader-modal-close:hover{color:#fff}.reader-translation-source{padding:16px 18px;color:#888;font-family:Georgia,Times New Roman,serif;line-height:1.55;border-bottom:1px solid #292929;overflow-y:auto}.reader-translation-result{padding:18px;color:#f0f0f0;font-size:var(--fs-17);line-height:1.55;overflow-y:auto}.reader-translation-result--dim{color:#777}.reader-translation-result--error{color:#c55}.reader-history-list{overflow-y:auto}.reader-history-row{display:flex;align-items:stretch;border-bottom:1px solid #292929}.reader-history-row:last-child{border-bottom:0}.reader-history-link{min-width:0;flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:14px 16px;border:0;background:none;color:inherit;text-align:left;cursor:pointer}.reader-history-link:hover{background:#202020}.reader-history-title{width:100%;color:#e2e2e2;font-size:var(--fs-15);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-history-meta{color:#686868;font-size:var(--fs-12)}.reader-history-url{width:100%;color:#505050;font-size:var(--fs-11);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-history-delete{width:48px;flex-shrink:0;border:0;background:none;color:#666;font-size:var(--fs-20);cursor:pointer}.reader-history-delete:hover{background:#2a1717;color:#d77}.reader-history-empty{padding:36px 20px;color:#777;text-align:center}@media(max-width:480px){.reader-page{padding-inline:12px}.reader-topbar{padding-inline:8px}.reader-content{padding-inline:18px}.reader-modal-backdrop{align-items:flex-end;padding:10px}.reader-modal{border-radius:14px 14px 8px 8px;max-height:84vh}}@media(max-width:380px){.reader-start-controls{flex-wrap:wrap}.reader-start-controls .reader-url-form{flex-basis:100%}}.app-topbar-right{display:flex;align-items:center;gap:8px}.app-topbar-back,.app-topbar-news{position:relative;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--gray-200);border-radius:12px;background:var(--white);color:var(--gray-900);font-size:var(--fs-20);cursor:pointer}.app-topbar-back{margin-right:auto}.app-topbar-news .avatar-news-badge{top:5px;right:5px}.app-topbar-news.has-unread{border-color:var(--gray-200);background:var(--white);color:var(--gray-900);box-shadow:none}.app-topbar-news.has-unread:after{content:"!";position:absolute;top:-7px;right:-7px;width:20px;height:20px;display:grid;place-items:center;border:2px solid var(--white);border-radius:50%;background:var(--red);color:#fff;font-size:13px;font-weight:900;line-height:1}.app-topbar-avatar{border:0}.settings-danger-zone{margin-top:28px;border:1px solid #fecaca}.settings-app-version{padding:14px 16px 24px;color:var(--gray-400);font-size:var(--fs-11);line-height:1;text-align:center}.settings-danger-zone:before{content:"";display:block;height:8px;background:var(--gray-50)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:18px;background:#0f172a94}.confirm-dialog,.onboarding-dialog{width:min(100%,420px);box-sizing:border-box;padding:22px;border-radius:18px;background:var(--white);box-shadow:0 24px 70px #0f172a40}.confirm-dialog h2,.onboarding-dialog h2{margin:0 0 10px;font-size:var(--fs-22)}.confirm-dialog p,.onboarding-dialog p{color:var(--gray-600);line-height:1.55}.confirm-dialog label{display:grid;gap:7px;font-weight:700}.confirm-dialog input,.auth-forgot-panel input{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid var(--gray-300);border-radius:10px}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.confirm-dialog-actions button{min-height:42px;padding:0 16px;border:0;border-radius:10px;cursor:pointer}.confirm-dialog-actions button:disabled{cursor:not-allowed;opacity:.5}.confirm-dialog-danger{background:var(--red);color:var(--white);font-weight:700}.android-test-dialog{position:relative}.android-test-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:50%;background:var(--gray-100);color:var(--gray-600);font-size:24px;line-height:1;cursor:pointer}.android-test-dialog h2{padding-right:32px}.android-test-submit{background:var(--blue);color:var(--white);font-weight:700}.android-test-error{margin-top:10px;color:var(--red);font-size:var(--fs-13)}.android-test-success{color:var(--green)!important;font-weight:700}.auth-forgot-panel{display:grid;gap:10px;padding:12px;border:1px solid var(--gray-200);border-radius:12px;background:var(--gray-50)}.auth-forgot-panel label{display:grid;gap:7px;text-align:left}.auth-forgot-panel .btn-primary{min-height:42px}.news-page-list{margin:8px 12px 24px;border:1px solid var(--gray-200);border-radius:var(--radius);overflow:hidden}.news-page-list .settings-news-item-title{margin:6px 0;font-size:var(--fs-17)}.onboarding-dialog{text-align:center}.onboarding-step{color:var(--gray-500);font-size:var(--fs-12);font-weight:700}.onboarding-icon{margin:18px 0 10px;font-size:48px}.onboarding-dots{display:flex;justify-content:center;gap:7px;margin-top:18px}.onboarding-dots i{width:7px;height:7px;border-radius:50%;background:var(--gray-200)}.onboarding-dots i.active{width:20px;border-radius:99px;background:var(--blue)}.practice-level-info{min-width:0}.practice-level-progress{width:100%;height:4px;margin-top:5px;overflow:hidden;border-radius:99px;background:var(--gray-100)}.practice-level-progress i{display:block;height:100%;border-radius:inherit;background:var(--blue)}.practice-level-progress i.done{background:var(--green)}.practice-skeleton{display:grid;gap:12px;padding:28px 12px}.skeleton-line,.skeleton-card{border-radius:var(--radius);background:linear-gradient(90deg,var(--gray-100) 25%,var(--gray-50) 50%,var(--gray-100) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.3s infinite linear}.skeleton-title{width:45%;height:28px}.skeleton-card{height:66px}@keyframes skeleton-shimmer{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton-line,.skeleton-card{animation:none}}.toast{display:flex;align-items:center;gap:14px}.toast button{border:0;background:transparent;color:#93c5fd;font-weight:800;cursor:pointer}html[data-theme=dark] .btn-primary,html[data-theme=dark] .btn-cta,html[data-theme=dark] .home-cta-btn,html[data-theme=dark] .practice-check,html[data-theme=dark] .settings-feedback-send,html[data-theme=dark] .legal-delete-button,html[data-theme=dark] .settings-toggle.on,html[data-theme=dark] .app-topbar-avatar:hover,html[data-theme=dark] .app-topbar-avatar.settings-active,html[data-theme=dark] .confirm-dialog-danger,html[data-theme=dark] .nav-item.active .nav-icon-wrap{color:#fff}html[data-theme=dark] .app-topbar-avatar,html[data-theme=dark] .practice-intro,html[data-theme=dark] .home-word-card:hover,html[data-theme=dark] .home-daily-card:hover,html[data-theme=dark] .stage-card:hover:not(.locked),html[data-theme=dark] .practice-level:not(.locked):hover,html[data-theme=dark] .game-card:hover{border-color:#344b78}html[data-theme=dark] .practice-answer{background:#151f32b8}html[data-theme=dark] .search-highlight{background:#665719;color:#fff3b0}html[data-theme=dark] .install-banner{background:#151f32f5}html[data-theme=dark] .legal-warning{color:#fda4af;border-color:#7f1d2d}html[data-theme=dark] .legal-success{color:#86efac;border-color:#166534}html[data-theme=dark] .tc-badge--streak-on{background:#39260e;color:#fcd34d}html[data-theme=dark] .tc-badge--urgent{background:#3b151c;color:#fda4af}html[data-theme=dark] .tc-feedback--correct,html[data-theme=dark] .tc-summary-mark{border-color:#166534}html[data-theme=dark] .tc-feedback--wrong{border-color:#7f1d2d}html[data-theme=dark] .app-topbar-news.has-unread{border-color:var(--gray-200);background:var(--white);color:var(--gray-900);box-shadow:none}html[data-theme=dark] .app-topbar-news.has-unread:after{border-color:var(--gray-50)}.onboarding-tour{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;pointer-events:auto;touch-action:none;overscroll-behavior:contain}.onboarding-highlight{position:fixed;z-index:1201;border:3px solid #f59e0b;border-radius:16px;box-shadow:0 0 0 9999px #080f1cb8,0 0 0 5px #f59e0b38;transition:inset .24s ease,width .24s ease,height .24s ease;pointer-events:none}.onboarding-coachmark{position:fixed;right:max(14px,calc((100vw - 560px)/2 + 14px));bottom:calc(var(--bottom-nav-height) + 18px);left:max(14px,calc((100vw - 560px)/2 + 14px));z-index:1202;max-width:532px;padding:18px;border:1px solid var(--gray-200);border-radius:18px;background:var(--white);color:var(--gray-900);box-shadow:0 18px 60px #02061757;text-align:left;pointer-events:auto}.onboarding-coachmark.is-top{top:max(14px,env(safe-area-inset-top));bottom:auto}.onboarding-coachmark .onboarding-icon{display:inline-block;margin:8px 8px 6px 0;font-size:30px;vertical-align:middle}.onboarding-coachmark h2{display:inline;margin:0;font-size:var(--fs-20);vertical-align:middle}.onboarding-coachmark p{margin-top:10px;color:var(--gray-500);font-size:var(--fs-14);line-height:1.5}.onboarding-coachmark .confirm-dialog-actions{margin-top:14px}@media(max-height:650px){.onboarding-coachmark{padding:14px}.onboarding-coachmark .onboarding-icon{margin-top:4px;font-size:24px}.onboarding-coachmark p{line-height:1.35}}.public-learning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:1100px;margin:auto}.public-learning-grid>a{color:inherit;text-decoration:none}.public-learning-grid>a:hover{border-color:var(--primary-600, #2F5BEA)}.public-learning-grid p{line-height:1.6}.public-learning-cta{margin:24px auto;padding:16px;border:1px solid var(--border, #E3E8F0);border-radius:16px}.public-learning-links .public-learning-cta{max-width:1100px;text-align:center}.public-learning-cta p{margin:0 0 16px;line-height:1.6}.public-learning-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.public-learning-nav a{color:var(--primary-600, #2F5BEA)}.public-learning-nav a[aria-current=page]{font-weight:700}.public-learning-nav button{min-height:44px;padding:8px 12px}.public-learning-nav .landing-lang-btn{color:var(--gray-700);background:var(--gray-100);border:1px solid var(--gray-200)}.public-learning-nav .landing-lang-btn.active{color:var(--blue);background:var(--blue-light);border-color:var(--blue)}.public-learning-shell h1{font-size:24px}.app-shell.public-learning-shell{display:block}.public-learning-shell .app-content{padding:24px 16px}.public-learning-shell [hidden]{display:none}.public-card summary{cursor:pointer;list-style:disclosure-closed}.public-card[open] summary{list-style:disclosure-open}@media(max-width:760px){.public-learning-grid{grid-template-columns:1fr}}.reader-daily-news-date{margin-left:8px;color:#686868;font-weight:400}.reader-news-extra{margin-top:28px;padding-top:18px;border-top:1px solid #292929;line-height:1.5;font-size:var(--fs-15)}.reader-news-glossary h2{margin:0 0 10px;color:#aaa;font-size:var(--fs-13);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.reader-news-glossary dl{margin:0;display:grid;gap:6px}.reader-news-glossary dl>div{display:flex;flex-wrap:wrap;gap:4px 10px}.reader-news-glossary dt{color:#e2e2e2;font-weight:600}.reader-news-glossary dd{margin:0;color:#999}.reader-news-source{margin:22px 0 0;color:#777;font-size:var(--fs-13)}.reader-news-source a{color:#9ab;overflow-wrap:anywhere}.reader-tabs{display:flex;gap:4px;margin:0 0 14px;padding:4px;border-radius:10px;background:#1b1b1b}.reader-tab{flex:1;min-width:0;padding:9px 6px;border:0;border-radius:7px;background:none;color:#8a8a8a;font-size:var(--fs-14);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.reader-tab:hover{color:#d0d0d0}.reader-tab--active{background:#2e2e2e;color:#f0f0f0}
