:root{--brand:#5c4ee5;--brand-light:#7c6ef0;--brand-dark:#3d32b8;--brand-tint:rgba(92,78,229,0.1);--brand-tint-2:rgba(92,78,229,0.06);--green:#25d366;--green-bg:#eafaf1;--green-border:#a8e6c3;--red:#ff3b30;--red-bg:#fff0ef;--red-border:#ffb3ae;--amber:#ff9f0a;--amber-bg:#fff8e7;--bg:#f2f2f7;--surface:#fff;--surface-2:#f8f8fb;--text:#1c1c1e;--text-2:#3a3a3c;--text-secondary:rgba(60,60,67,0.55);--text-tertiary:rgba(60,60,67,0.3);--border:rgba(60,60,67,0.18);--border-opaque:#d1d1d6;--shadow-xs:0 1px 2px rgba(0,0,0,0.04);--shadow-sm:0 1px 4px rgba(0,0,0,0.06),0 2px 8px rgba(0,0,0,0.04);--shadow-md:0 2px 12px rgba(0,0,0,0.08),0 4px 20px rgba(0,0,0,0.05);--shadow-lg:0 8px 32px rgba(0,0,0,0.12),0 2px 8px rgba(0,0,0,0.06);--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:18px;--r-xl:24px;--r-full:999px;--radius:var(--r-lg);--radius-sm:var(--r-md);--spring:cubic-bezier(.34,1.56,.64,1);--ease-out:cubic-bezier(.16,1,.3,1);--dur-fast:120ms;--dur-norm:240ms;--dur-slow:380ms;--transition:200ms ease;--tap:44px;--tab-h:60px;--tab-total:calc(var(--tab-h) + env(safe-area-inset-bottom))}*,:after,:before{box-sizing:border-box}#root,body,html{min-height:100%}body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Roboto","Segoe UI",system-ui,sans-serif;background:radial-gradient(1200px 420px at 50% -160px,rgba(92,78,229,.18),rgba(92,78,229,0) 60%),linear-gradient(180deg,#f9f9fe,#f2f2f7 42%);background:radial-gradient(1200px 420px at 50% -160px,rgba(92,78,229,.18),rgba(92,78,229,0) 60%),linear-gradient(180deg,#f9f9fe,var(--bg) 42%);color:#1c1c1e;color:var(--text);margin:0;overflow-x:hidden;line-height:1.45;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-farsi{font-family:"Vazirmatn","Tahoma",sans-serif}.font-hebrew{font-family:"Heebo","Arial Hebrew",sans-serif}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:100;background:#5c4ee5;background:var(--brand);color:#fff;padding:max(14px,calc(10px + env(safe-area-inset-top))) max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left));box-shadow:0 1px 0 rgba(0,0,0,.12),0 4px 16px rgba(92,78,229,.25)}.topbar-row{display:flex;align-items:center;grid-gap:10px;gap:10px;max-width:980px;margin:0 auto;flex-wrap:wrap}.topbar-title{font-size:22px;font-weight:900;letter-spacing:-.5px;white-space:nowrap;flex-shrink:0}.nav-tab,.nav-tabs{display:none}@media (min-width:1024px){.nav-tabs{display:flex;grid-gap:4px;gap:4px;background:hsla(0,0%,100%,.12);border-radius:10px;border-radius:var(--r-sm);padding:3px}.nav-tab{display:block;background:transparent;border:none;color:hsla(0,0%,100%,.72);padding:9px 18px;border-radius:8px;cursor:pointer;font-size:15px;font-weight:600;text-decoration:none;transition:all .12s ease;transition:all var(--dur-fast) ease}.nav-tab:hover{color:#fff;background:hsla(0,0%,100%,.12)}.nav-tab.active{background:hsla(0,0%,100%,.22);color:#fff}}.topbar-select{border:1.5px solid hsla(0,0%,100%,.28);border-radius:10px;border-radius:var(--r-sm);background:hsla(0,0%,100%,.16);color:#fff;height:44px;height:var(--tap);padding:0 10px;font-size:14px;font-weight:700;letter-spacing:.3px;flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;min-width:78px;transition:background .12s ease;transition:background var(--dur-fast) ease}.topbar-select:focus{outline:none;background:hsla(0,0%,100%,.26);border-color:hsla(0,0%,100%,.55)}.topbar-select option{color:#000}.topbar-search{flex:1 1;min-width:160px;border:1.5px solid hsla(0,0%,100%,.28);border-radius:999px;border-radius:var(--r-full);background:hsla(0,0%,100%,.16);color:#fff;height:44px;height:var(--tap);padding:0 16px;font-size:max(16px,1rem);transition:background .12s ease,border-color .12s ease;transition:background var(--dur-fast) ease,border-color var(--dur-fast) ease}.topbar-search::-webkit-input-placeholder{color:hsla(0,0%,100%,.56)}.topbar-search:-ms-input-placeholder{color:hsla(0,0%,100%,.56)}.topbar-search::-ms-input-placeholder{color:hsla(0,0%,100%,.56)}.topbar-search::placeholder{color:hsla(0,0%,100%,.56)}.topbar-search:focus{outline:none;background:hsla(0,0%,100%,.24);border-color:hsla(0,0%,100%,.55)}.icon-btn{border:none;background:hsla(0,0%,100%,.16);color:#fff;cursor:pointer;font-size:18px;width:44px;width:var(--tap);height:44px;height:var(--tap);border-radius:10px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;transition:background .12s ease;transition:background var(--dur-fast) ease;flex-shrink:0}.icon-btn:hover{background:hsla(0,0%,100%,.26)}.icon-btn:active{transform:scale(.94)}@media (max-width:640px){.topbar-title{font-size:20px;flex:1 1;font-weight:900}.topbar-search{order:4;flex:unset;width:100%;min-width:0}.topbar-select{font-size:13px;min-width:72px;padding:0 8px}}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:200;height:calc(60px + env(safe-area-inset-bottom));height:var(--tab-total);display:flex;justify-content:space-around;align-items:flex-start;padding:8px max(4px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(4px,env(safe-area-inset-left));background:rgba(252,252,255,.94);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-top:1px solid rgba(60,60,67,.18);box-shadow:0 -2px 12px rgba(0,0,0,.06)}@media (min-width:1024px){.mobile-bottom-nav{display:none}}.mobile-bottom-tab{flex:1 1;max-width:120px;display:flex;flex-direction:column;align-items:center;grid-gap:3px;gap:3px;padding:4px 8px;border-radius:14px;border-radius:var(--r-md);text-decoration:none;color:rgba(60,60,67,.72);transition:color .12s ease;transition:color var(--dur-fast) ease;-webkit-tap-highlight-color:transparent}.mobile-bottom-tab:active{transform:scale(.92)}.mobile-bottom-tab.active{color:#5c4ee5;color:var(--brand)}.tab-icon-wrap{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:6px;border-radius:var(--r-xs);transition:background .12s ease,transform .12s cubic-bezier(.34,1.56,.64,1);transition:background var(--dur-fast) ease,transform var(--dur-fast) var(--spring)}.mobile-bottom-tab.active .tab-icon-wrap{background:rgba(92,78,229,.16);transform:translateY(-1px)}.tab-icon-wrap svg{width:26px;height:26px;stroke-width:1.8}.mobile-bottom-tab-label{font-size:11px;font-weight:700;letter-spacing:.3px}.mobile-bottom-tab.active .mobile-bottom-tab-label{font-weight:800}.page-container{max-width:980px;margin:0 auto;padding:16px max(16px,env(safe-area-inset-right)) calc(156px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));padding:16px max(16px,env(safe-area-inset-right)) calc(var(--tab-total) + 96px) max(16px,env(safe-area-inset-left))}@media (min-width:1024px){.page-container{padding-bottom:40px}}.word-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding:0 2px}.word-list-count{font-size:13px;font-weight:600;color:rgba(60,60,67,.55);color:var(--text-secondary);background:rgba(92,78,229,.06);background:var(--brand-tint-2);border:1px solid rgba(60,60,67,.18);border:1px solid var(--border);border-radius:999px;border-radius:var(--r-full);padding:4px 12px}.word-list-gesture-hint{font-size:12px;color:rgba(60,60,67,.3);color:var(--text-tertiary)}.word-list-empty{display:flex;flex-direction:column;align-items:center;padding:64px 24px;text-align:center;grid-gap:12px;gap:12px}.word-list-empty-icon{font-size:56px;line-height:1;-webkit-filter:drop-shadow(0 4px 8px rgba(0,0,0,.12));filter:drop-shadow(0 4px 8px rgba(0,0,0,.12))}.word-list-empty h3{font-size:22px;font-weight:700;color:#1c1c1e;color:var(--text);margin:0}.word-list-empty p{font-size:15px;color:rgba(60,60,67,.55);color:var(--text-secondary);margin:0;max-width:260px}.word-list-shell{background:transparent}.word-row{padding:4px 0}.word-row-btn{width:100%;height:100%;background:#fff;background:var(--surface);border:1px solid rgba(60,60,67,.16);border-left:4px solid rgba(92,78,229,.1);border-left:4px solid var(--brand-tint);border-radius:18px;border-radius:var(--r-lg);text-align:left;padding:14px;display:flex;align-items:center;grid-gap:14px;gap:14px;cursor:pointer;box-shadow:0 2px 9px rgba(28,28,30,.06);transition:box-shadow .12s ease,transform .12s ease,border-left-color .12s ease;transition:box-shadow var(--dur-fast) ease,transform var(--dur-fast) ease,border-left-color var(--dur-fast) ease;-webkit-tap-highlight-color:transparent}.word-row-btn:hover{box-shadow:0 2px 12px rgba(0,0,0,.08),0 4px 20px rgba(0,0,0,.05);box-shadow:var(--shadow-md);transform:translateY(-1px);border-left-color:#7c6ef0;border-left-color:var(--brand-light)}.word-row-btn:active{transform:scale(.985);box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:var(--shadow-xs);border-left-color:#5c4ee5;border-left-color:var(--brand)}.word-row-content{flex:1 1;min-width:0}.word-row-primary{font-size:19px;font-weight:700;color:#1c1c1e;color:var(--text);letter-spacing:-.2px}.word-row-primary,.word-row-secondary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.word-row-secondary{font-size:15px;font-weight:500;color:rgba(60,60,67,.78);margin-top:3px}.word-row-transliteration{font-size:14px;color:#7c6ef0;color:var(--brand-light);font-style:italic;margin-top:2px}.word-row-tags{display:flex;flex-wrap:wrap;grid-gap:4px;gap:4px;margin-top:6px}.word-row-tag{background:rgba(92,78,229,.1);background:var(--brand-tint);color:#3d32b8;color:var(--brand-dark);border-radius:999px;border-radius:var(--r-full);padding:2px 8px;font-size:11px;font-weight:600;letter-spacing:.3px}.word-row-actions{display:flex;align-items:center;grid-gap:10px;gap:10px;flex-shrink:0}.word-row-media-icon{font-size:18px}.word-row-chevron{font-size:18px;color:#d1d1d6;color:var(--border-opaque);font-weight:300;line-height:1}@media (max-width:640px){.word-row{padding:5px 0}.word-row-btn{border-radius:24px;border-radius:var(--r-xl);border-left-width:5px}.word-row-primary{font-size:20px;font-weight:800}.word-row-secondary{font-size:16px;font-weight:500}}.fab-add{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:calc(76px + env(safe-area-inset-bottom));bottom:calc(var(--tab-total) + 16px);width:56px;height:56px;border-radius:50%;border:none;background:linear-gradient(145deg,#7c6ef0,#3d32b8);background:linear-gradient(145deg,var(--brand-light),var(--brand-dark));color:#fff;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 4px 18px rgba(92,78,229,.45),0 2px 6px rgba(0,0,0,.12);transition:transform .12s cubic-bezier(.34,1.56,.64,1),box-shadow .12s ease;transition:transform var(--dur-fast) var(--spring),box-shadow var(--dur-fast) ease;z-index:150;display:flex;align-items:center;justify-content:center}.fab-add:hover{transform:scale(1.08);box-shadow:0 6px 24px rgba(92,78,229,.55)}.fab-add:active{transform:scale(.93)}@media (min-width:1024px){.fab-add{bottom:24px}}.overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:400;-webkit-animation:fadeIn .12s ease;animation:fadeIn .12s ease;-webkit-animation:fadeIn var(--dur-fast) ease;animation:fadeIn var(--dur-fast) ease}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{width:min(620px,92vw);background:#fff;background:var(--surface);border-radius:24px;border-radius:var(--r-xl);padding:24px;box-shadow:0 8px 32px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.06);box-shadow:var(--shadow-lg);-webkit-animation:slideUpModal .24s cubic-bezier(.16,1,.3,1);animation:slideUpModal .24s cubic-bezier(.16,1,.3,1);-webkit-animation:slideUpModal var(--dur-norm) var(--ease-out);animation:slideUpModal var(--dur-norm) var(--ease-out);max-height:92dvh;overflow-y:auto}@-webkit-keyframes slideUpModal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpModal{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.overlay{align-items:flex-end}.modal{width:100%;border-radius:24px 24px 0 0;border-radius:var(--r-xl) var(--r-xl) 0 0;padding:8px 20px calc(20px + env(safe-area-inset-bottom));-webkit-animation:slideUpFull .24s cubic-bezier(.16,1,.3,1);animation:slideUpFull .24s cubic-bezier(.16,1,.3,1);-webkit-animation:slideUpFull var(--dur-norm) var(--ease-out);animation:slideUpFull var(--dur-norm) var(--ease-out)}.modal:before{content:"";display:block;width:40px;height:5px;background:#d1d1d6;background:var(--border-opaque);border-radius:999px;border-radius:var(--r-full);margin:4px auto 16px}}@-webkit-keyframes slideUpFull{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpFull{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.modal-title{margin:0 0 4px;font-size:20px;font-weight:700;color:#1c1c1e;color:var(--text)}.modal-subtitle{font-size:14px;font-weight:500;color:rgba(60,60,67,.55);color:var(--text-secondary);margin:0 0 18px}.form-col{grid-gap:16px;gap:16px}.form-col,.form-group{display:flex;flex-direction:column}.form-group{grid-gap:5px;gap:5px}.form-label{font-size:13px;font-weight:600;color:#1c1c1e;color:var(--text);letter-spacing:.2px}.form-label .required{color:#ff3b30;color:var(--red)}.form-hint{font-size:11px;color:rgba(60,60,67,.55);color:var(--text-secondary);margin-top:2px}.field{width:100%;border:1.5px solid #d1d1d6;border:1.5px solid var(--border-opaque);border-radius:14px;border-radius:var(--r-md);padding:11px 14px;font-size:max(16px,1rem);font-weight:600;background:#fff;background:var(--surface);color:#1c1c1e;color:var(--text);transition:border-color .12s ease,box-shadow .12s ease;transition:border-color var(--dur-fast) ease,box-shadow var(--dur-fast) ease}.field:focus{outline:none;border-color:#5c4ee5;border-color:var(--brand);box-shadow:0 0 0 3px rgba(92,78,229,.1);box-shadow:0 0 0 3px var(--brand-tint)}.field-sm{padding:8px 11px;font-size:15px}.field-textarea{min-height:88px;resize:vertical}.row,.row-between{display:flex;grid-gap:10px;gap:10px;align-items:center}.row-between{justify-content:space-between}.btn{border:1.5px solid #d1d1d6;border:1.5px solid var(--border-opaque);border-radius:14px;border-radius:var(--r-md);background:#fff;background:var(--surface);color:#1c1c1e;color:var(--text);min-height:44px;min-height:var(--tap);padding:10px 18px;cursor:pointer;font-size:15px;font-weight:700;transition:all .12s ease;transition:all var(--dur-fast) ease;-webkit-tap-highlight-color:transparent;display:inline-flex;align-items:center;grid-gap:6px;gap:6px;box-shadow:0 1px 3px rgba(28,28,30,.05)}.btn:hover{background:#f8f8fb;background:var(--surface-2)}.btn:active{transform:scale(.97)}.btn-primary{background:#5c4ee5;background:var(--brand);border-color:#5c4ee5;border-color:var(--brand);color:#fff}.btn-primary:hover{background:#7c6ef0;background:var(--brand-light);border-color:#7c6ef0;border-color:var(--brand-light);box-shadow:0 2px 12px rgba(92,78,229,.35)}.btn-danger{color:#ff3b30;color:var(--red);border-color:#ffb3ae;border-color:var(--red-border)}.btn-danger:hover{background:#fff0ef;background:var(--red-bg)}.btn-danger-fill{background:#ff3b30;background:var(--red);border-color:#ff3b30;border-color:var(--red);color:#fff}.btn-danger-fill:hover{background:#e0352a}.btn-sm{min-height:36px;padding:7px 13px;font-size:13px;border-radius:10px;border-radius:var(--r-sm)}.btn-save-flash{background:#25d366!important;background:var(--green)!important;border-color:#25d366!important;border-color:var(--green)!important;color:#fff!important}.btn:disabled{opacity:.4;cursor:default;pointer-events:none}.btn-ai{background:linear-gradient(135deg,#f59e0b,#f97316);border-color:#f59e0b;color:#fff}.btn-ai:hover{box-shadow:0 2px 10px rgba(245,158,11,.35);-webkit-filter:brightness(1.05);filter:brightness(1.05)}.btn-ai:disabled{opacity:.5;pointer-events:none}.btn-mic{background:rgba(92,78,229,.1);background:var(--brand-tint);border-color:#7c6ef0;border-color:var(--brand-light);color:#5c4ee5;color:var(--brand)}.btn-mic:hover{background:rgba(92,78,229,.16)}.btn-mic-active{background:#ff3b30!important;background:var(--red)!important;border-color:#ff3b30!important;border-color:var(--red)!important;color:#fff!important;-webkit-animation:pulse-rec 1s ease-in-out infinite;animation:pulse-rec 1s ease-in-out infinite}@-webkit-keyframes pulse-rec{0%,to{opacity:1}50%{opacity:.65}}@keyframes pulse-rec{0%,to{opacity:1}50%{opacity:.65}}.ai-actions-row{display:flex;flex-wrap:wrap;grid-gap:6px;gap:6px;margin-top:4px}.ai-result-card{margin-top:10px;padding:12px;background:#fff8e7;background:var(--amber-bg);border:1px solid #fde68a;border-radius:10px;border-radius:var(--r-sm);font-size:13px;color:#1c1c1e;color:var(--text);line-height:1.5}.ai-progress-banner{display:flex;align-items:center;grid-gap:8px;gap:8px;padding:9px 11px;border:1px solid #fcd34d;border-radius:10px;border-radius:var(--r-sm);background:#fffbeb;color:#92400e;font-size:13px;font-weight:700}.ai-progress-dot{width:10px;height:10px;border-radius:50%;background:#f59e0b;-webkit-animation:ai-pulse 1.1s ease-in-out infinite;animation:ai-pulse 1.1s ease-in-out infinite;flex-shrink:0}@-webkit-keyframes ai-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.7);opacity:.5}}@keyframes ai-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.7);opacity:.5}}.bulk-import-panel{padding:12px;background:linear-gradient(180deg,#fff9f0,#fff);border:1px solid #fde8c7;border-radius:14px;border-radius:var(--r-md)}.bulk-preview-list{margin-top:8px;border:1px solid rgba(60,60,67,.18);border:1px solid var(--border);border-radius:10px;border-radius:var(--r-sm);background:#fff;background:var(--surface);max-height:240px;overflow:auto}.bulk-preview-toolbar{justify-content:space-between;padding:8px 10px;background:#f8f8fb;background:var(--surface-2);font-size:12px;font-weight:700;color:rgba(60,60,67,.55);color:var(--text-secondary)}.bulk-preview-item,.bulk-preview-toolbar{display:flex;align-items:center;grid-gap:8px;gap:8px;border-bottom:1px solid rgba(60,60,67,.18);border-bottom:1px solid var(--border)}.bulk-preview-item{padding:7px 10px;font-size:13px;cursor:pointer}.bulk-preview-item.selected{background:rgba(92,78,229,.1);background:var(--brand-tint)}.bulk-preview-select{flex-shrink:0}.bulk-preview-content{display:flex;align-items:center;grid-gap:8px;gap:8px;min-width:0}.bulk-preview-content em,.bulk-preview-content span,.bulk-preview-content strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bulk-preview-item:last-child{border-bottom:none}.bulk-preview-item em,.bulk-preview-more{color:rgba(60,60,67,.55);color:var(--text-secondary)}.bulk-preview-more{padding:8px 10px;font-size:12px;font-weight:700;background:#f8f8fb;background:var(--surface-2)}.bulk-options-grid{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px;margin-top:8px}.bulk-option-toggle{display:flex;align-items:center;grid-gap:8px;gap:8px;font-size:13px;font-weight:600;color:#1c1c1e;color:var(--text)}.bulk-save-progress{margin-top:8px;border:1px solid #fde8c7;border-radius:10px;border-radius:var(--r-sm);background:#fffcf4;padding:9px 10px}.bulk-save-progress-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#7c4a11}.bulk-save-progress-track{margin-top:6px;width:100%;height:8px;border-radius:999px;border-radius:var(--r-full);background:#fdeccf;overflow:hidden}.bulk-save-progress-fill{height:100%;border-radius:999px;border-radius:var(--r-full);background:linear-gradient(90deg,#f59e0b,#f97316);transition:width .2s ease}.bulk-save-progress-meta{margin-top:6px;font-size:12px;color:#92400e}.drawer-wrap{position:fixed;inset:0;z-index:300;-webkit-animation:fadeIn .12s ease;animation:fadeIn .12s ease;-webkit-animation:fadeIn var(--dur-fast) ease;animation:fadeIn var(--dur-fast) ease}.drawer-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.4);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.drawer-panel{position:absolute;top:0;right:0;width:min(440px,96vw);height:100%;background:#fff;background:var(--surface);display:flex;flex-direction:column;box-shadow:-6px 0 32px rgba(0,0,0,.14);-webkit-animation:slideInRight .24s cubic-bezier(.16,1,.3,1);animation:slideInRight .24s cubic-bezier(.16,1,.3,1);-webkit-animation:slideInRight var(--dur-norm) var(--ease-out);animation:slideInRight var(--dur-norm) var(--ease-out);touch-action:pan-y;border-left:1px solid rgba(60,60,67,.14)}@-webkit-keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@media (max-width:768px){.drawer-panel{top:auto;right:0;bottom:0;left:0;width:100%;height:auto;max-height:92dvh;border-radius:24px 24px 0 0;border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:0 -8px 40px rgba(0,0,0,.18);-webkit-animation:slideUpFull .24s cubic-bezier(.16,1,.3,1);animation:slideUpFull .24s cubic-bezier(.16,1,.3,1);-webkit-animation:slideUpFull var(--dur-norm) var(--ease-out);animation:slideUpFull var(--dur-norm) var(--ease-out)}}.drawer-swipe-handle-wrap{display:flex;justify-content:center;padding:14px 0 8px;flex-shrink:0;touch-action:none;cursor:-webkit-grab;cursor:grab}.drawer-swipe-handle{width:54px;height:6px;background:rgba(92,78,229,.28);border-radius:999px;border-radius:var(--r-full)}@media (min-width:769px){.drawer-swipe-handle-wrap{display:none}}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 14px;border-bottom:.5px solid rgba(60,60,67,.18);border-bottom:.5px solid var(--border);flex-shrink:0}.drawer-title{margin:0;font-size:22px;font-weight:800;color:#1c1c1e;color:var(--text);letter-spacing:-.3px}.drawer-mobile-hint{font-size:12px;color:rgba(60,60,67,.55);color:var(--text-secondary);margin-left:auto;margin-right:8px}@media (min-width:769px){.drawer-mobile-hint{display:none}}.drawer-swipe-tip{display:none}@media (max-width:768px){.drawer-swipe-tip{display:flex;justify-content:space-between;padding:6px 18px;border-bottom:.5px solid rgba(60,60,67,.18);border-bottom:.5px solid var(--border);color:#5c4ee5;color:var(--brand);font-size:12px;font-weight:700;letter-spacing:.3px;background:rgba(92,78,229,.06);background:var(--brand-tint-2);flex-shrink:0}}.drawer-close-btn{border:none;background:#f8f8fb;background:var(--surface-2);font-size:20px;color:rgba(60,60,67,.55);color:var(--text-secondary);cursor:pointer;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .12s ease;transition:background var(--dur-fast) ease;flex-shrink:0}.drawer-close-btn:hover{background:#f2f2f7;background:var(--bg)}.drawer-body{flex:1 1;overflow-y:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;padding:0 22px 28px}@media (max-width:640px){.drawer-header{padding:14px 16px 12px}.drawer-body{padding:0 16px calc(16px + env(safe-area-inset-bottom))}}.drawer-section{padding:16px 0;border-bottom:.5px solid rgba(60,60,67,.18);border-bottom:.5px solid var(--border)}.drawer-section:last-child{border-bottom:none}.drawer-section-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:#3a3a3c;color:var(--text-2);margin:0 0 14px}.drawer-empty-text{font-size:14px;color:rgba(60,60,67,.55);color:var(--text-secondary);margin:0;font-style:italic}.drawer-footer{display:flex;justify-content:space-between;align-items:center;grid-gap:10px;gap:10px;padding:14px 22px;border-top:.5px solid rgba(60,60,67,.18);border-top:.5px solid var(--border);background:#f8f8fb;background:var(--surface-2);flex-shrink:0}@media (max-width:640px){.drawer-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom));flex-wrap:wrap}.drawer-footer .row{width:100%}.drawer-footer .row .btn{flex:1 1}}.confirm-delete{display:flex;align-items:center;grid-gap:8px;gap:8px}.confirm-delete-text{font-size:13px;color:#ff3b30;color:var(--red);font-weight:500}.media-preview-item{display:flex;align-items:center;grid-gap:10px;gap:10px;padding:10px 14px;background:#f2f2f7;background:var(--bg);border:1px solid rgba(60,60,67,.18);border:1px solid var(--border);border-radius:14px;border-radius:var(--r-md)}.media-icon{font-size:18px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:10px;border-radius:var(--r-sm)}.media-icon-audio{background:#ede9fe;color:#5c4ee5;color:var(--brand)}.media-icon-image{background:#fef3c7}.media-filename{flex:1 1;font-size:13px;color:#1c1c1e;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-upload-label{display:block;cursor:pointer}.file-upload-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.chips{display:flex;flex-wrap:wrap;grid-gap:6px;gap:6px;margin-top:6px}.chip{background:rgba(92,78,229,.1);background:var(--brand-tint);border:1px solid rgba(92,78,229,.2);border-radius:999px;border-radius:var(--r-full);padding:6px 12px;font-size:13px;font-weight:500}.chip,.chip button{color:#3d32b8;color:var(--brand-dark)}.chip button{margin-left:6px;background:transparent;font-weight:700}.audio-btn,.chip button{border:none;cursor:pointer}.audio-btn{background:rgba(92,78,229,.1);background:var(--brand-tint);color:#5c4ee5;color:var(--brand);font-size:16px;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .12s ease;transition:background var(--dur-fast) ease}.audio-btn:hover{background:rgba(92,78,229,.18)}.study-container{max-width:540px;margin:0 auto;padding:24px max(16px,env(safe-area-inset-right)) calc(140px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));padding:24px max(16px,env(safe-area-inset-right)) calc(var(--tab-total) + 80px) max(16px,env(safe-area-inset-left));display:flex;flex-direction:column;align-items:center;min-height:calc(100dvh - 80px)}@media (min-width:1024px){.study-container{padding-bottom:60px}}.study-empty{text-align:center;padding:64px 20px;color:rgba(60,60,67,.55);color:var(--text-secondary)}.study-empty h2{font-size:22px;font-weight:700;color:#1c1c1e;color:var(--text);margin-bottom:8px}.study-progress{width:100%;display:flex;align-items:center;grid-gap:12px;gap:12px;margin-bottom:20px}.study-progress-bar{flex:1 1;height:8px;background:#d1d1d6;background:var(--border-opaque);overflow:hidden}.study-progress-bar,.study-progress-fill{border-radius:999px;border-radius:var(--r-full)}.study-progress-fill{height:100%;background:linear-gradient(90deg,#5c4ee5,#7c6ef0);background:linear-gradient(90deg,var(--brand),var(--brand-light));transition:width .38s cubic-bezier(.16,1,.3,1);transition:width var(--dur-slow) var(--ease-out)}.study-progress-text{font-size:14px;font-weight:600;color:rgba(60,60,67,.55);color:var(--text-secondary);white-space:nowrap;min-width:48px;text-align:right}.flashcard-shell{width:100%;position:relative;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;margin-bottom:20px}.flashcard-swipe-indicator{position:absolute;top:50%;z-index:5;padding:8px 16px;border-radius:999px;border-radius:var(--r-full);font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:1px;opacity:0;pointer-events:none;transition:opacity 80ms ease}.flashcard-swipe-indicator.visible{opacity:1}.flashcard-swipe-know{left:14px;top:50%;transform:translateY(-50%) rotate(-12deg);background:#25d366;background:var(--green);color:#fff;border:2.5px solid #17a84f}.flashcard-swipe-skip{right:14px;top:50%;transform:translateY(-50%) rotate(12deg);background:#ff3b30;background:var(--red);color:#fff;border:2.5px solid #c0392b}.flashcard{width:100%;min-height:240px;perspective:900px;cursor:pointer;-webkit-tap-highlight-color:transparent}@media (min-height:700px){.flashcard{min-height:290px}}.flashcard-inner{position:relative;width:100%;min-height:240px;transition:transform .46s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}@media (min-height:700px){.flashcard-inner{min-height:290px}}.flashcard.flipped .flashcard-inner{transform:rotateY(180deg)}.flashcard-back,.flashcard-front{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:#fff;background:var(--surface);border:.5px solid rgba(60,60,67,.18);border:.5px solid var(--border);border-radius:24px;border-radius:var(--r-xl);box-shadow:0 2px 12px rgba(0,0,0,.08),0 4px 20px rgba(0,0,0,.05);box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 28px;text-align:center}.flashcard-back{transform:rotateY(180deg)}.flashcard-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;color:#5c4ee5;color:var(--brand);margin-bottom:14px;background:rgba(92,78,229,.1);background:var(--brand-tint);padding:4px 12px;border-radius:999px;border-radius:var(--r-full)}.flashcard-word{font-size:38px;font-weight:900;color:#1c1c1e;color:var(--text);line-height:1.25;letter-spacing:-.5px}@media (max-width:375px){.flashcard-word{font-size:32px}}.flashcard-transliteration{font-size:18px;color:rgba(60,60,67,.55);color:var(--text-secondary);margin-top:10px;font-style:italic}.flashcard-hint{font-size:12px;color:rgba(60,60,67,.3);color:var(--text-tertiary);margin-top:20px}.study-swipe-hint{display:flex;justify-content:space-between;width:100%;padding:0 8px;margin-bottom:14px;font-size:12px;font-weight:600}.study-swipe-hint-know{color:#25d366;color:var(--green)}.study-swipe-hint-skip{color:#ff3b30;color:var(--red)}.study-actions{display:flex;grid-gap:12px;gap:12px;width:100%}.study-btn{flex:1 1;border-radius:24px;border-radius:var(--r-xl);padding:17px 12px;cursor:pointer;font-size:16px;font-weight:800;border:1.5px solid;transition:all .12s ease;transition:all var(--dur-fast) ease;-webkit-tap-highlight-color:transparent}.study-btn:active{transform:scale(.96)}.study-btn-know{background:#eafaf1;background:var(--green-bg);border-color:#a8e6c3;border-color:var(--green-border);color:#17643a}.study-btn-know:hover{background:#d2f5e5}.study-btn-skip{background:#fff8e7;background:var(--amber-bg);border-color:#fcd34d;color:#78410d}.study-btn-skip:hover{background:#fde9b0}.study-btn-unsure{background:#fff0ef;background:var(--red-bg);border-color:#ffb3ae;border-color:var(--red-border);color:#8b1c1c}.study-btn-unsure:hover{background:#ffe0de}.study-complete{text-align:center;padding:32px 20px;display:flex;flex-direction:column;align-items:center;grid-gap:14px;gap:14px;width:100%}.study-complete h2{font-size:26px;font-weight:800;margin:0}.study-complete p{color:rgba(60,60,67,.55);color:var(--text-secondary);margin:0;font-size:16px}.study-score{font-size:72px;font-weight:900;background:linear-gradient(135deg,#5c4ee5,#ff9f0a);background:linear-gradient(135deg,var(--brand),var(--amber));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;-webkit-animation:bounceIn .5s cubic-bezier(.34,1.56,.64,1);animation:bounceIn .5s cubic-bezier(.34,1.56,.64,1);-webkit-animation:bounceIn .5s var(--spring);animation:bounceIn .5s var(--spring)}@-webkit-keyframes bounceIn{0%{transform:scale(.8);opacity:0}60%{transform:scale(1.06);opacity:1}to{transform:scale(1)}}@keyframes bounceIn{0%{transform:scale(.8);opacity:0}60%{transform:scale(1.06);opacity:1}to{transform:scale(1)}}.study-complete-stats{display:flex;grid-gap:20px;gap:20px;background:#f8f8fb;background:var(--surface-2);border-radius:18px;border-radius:var(--r-lg);padding:16px 28px;border:1px solid rgba(60,60,67,.18);border:1px solid var(--border);width:100%;justify-content:center}.study-stat{display:flex;flex-direction:column;align-items:center;grid-gap:4px;gap:4px}.study-stat-value{font-size:26px;font-weight:800;color:#1c1c1e;color:var(--text)}.study-stat-label{font-size:11px;font-weight:700;color:rgba(60,60,67,.55);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.chat-container{max-width:700px;margin:0 auto;padding:0 max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));display:flex;flex-direction:column;height:calc(100dvh - 60px - env(safe-area-inset-bottom) - 64px);height:calc(100dvh - var(--tab-total) - 64px)}@media (min-width:1024px){.chat-container{height:calc(100dvh - 64px)}}.chat-header{display:flex;align-items:center;grid-gap:12px;gap:12px;padding:14px 0 10px;flex-shrink:0}.chat-header-title{font-size:19px;font-weight:700;margin:0;color:#1c1c1e;color:var(--text)}.chat-header-subtitle{font-size:14px;color:rgba(60,60,67,.55);color:var(--text-secondary);margin:0;flex:1 1;font-weight:500}.chat-messages{flex:1 1;overflow-y:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;padding:8px 0;display:flex;flex-direction:column;grid-gap:8px;gap:8px}.chat-empty{text-align:center;padding:32px 16px;color:rgba(60,60,67,.55);color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;grid-gap:10px;gap:10px}.chat-empty-icon{font-size:52px;line-height:1}.chat-empty h3{font-size:20px;font-weight:700;color:#1c1c1e;color:var(--text);margin:0}.chat-empty p{font-size:14px;margin:0;max-width:260px}.chat-suggestions{display:flex;flex-wrap:wrap;justify-content:center;grid-gap:8px;gap:8px;margin-top:4px}.chat-bubble{max-width:82%;padding:12px 15px;border-radius:18px;font-size:17px;line-height:1.5}.chat-bubble-user{align-self:flex-end;background:#5c4ee5;background:var(--brand);color:#fff;border-bottom-right-radius:4px;box-shadow:0 2px 8px rgba(92,78,229,.3)}.chat-bubble-assistant{align-self:flex-start;background:#fff;background:var(--surface);border:1px solid rgba(60,60,67,.18);border:1px solid var(--border);color:#1c1c1e;color:var(--text);border-bottom-left-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:var(--shadow-xs)}.chat-bubble-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;opacity:.65}.chat-bubble-text{white-space:pre-wrap;word-break:break-word}.chat-typing{opacity:.55;font-style:italic}.chat-input-bar{display:flex;grid-gap:10px;gap:10px;align-items:flex-end;padding:10px 0 calc(10px + env(safe-area-inset-bottom));flex-shrink:0;border-top:.5px solid rgba(60,60,67,.18);border-top:.5px solid var(--border)}.chat-input{flex:1 1}.chat-send-btn{width:46px;height:46px;min-height:unset;padding:0;border-radius:50%;font-size:20px;display:flex;align-items:center;justify-content:center;align-self:flex-end;flex-shrink:0}.sentences-list{margin-top:8px;display:flex;flex-direction:column;grid-gap:8px;gap:8px}.sentence-card{padding:12px 14px;background:#f0f4ff;border:1px solid #c7d2fe;border-radius:14px;border-radius:var(--r-md);font-size:13px;line-height:1.55}.sentence-text{font-weight:600;color:#1c1c1e;color:var(--text);direction:rtl}.sentence-translit{font-style:italic;color:#7c6ef0;color:var(--brand-light);font-size:12px;margin-top:3px}.sentence-translation{color:rgba(60,60,67,.55);color:var(--text-secondary);margin-top:3px}.admin-panel{background:transparent;border:none;box-shadow:none;padding:0;max-width:680px;margin:4px auto 0}.admin-page-wrap{min-height:calc(100dvh - 60px - env(safe-area-inset-bottom) - 90px);min-height:calc(100dvh - var(--tab-total) - 90px);padding-bottom:calc(230px + env(safe-area-inset-bottom));padding-bottom:calc(var(--tab-total) + 170px)}.admin-title{margin:0 0 4px;font-size:32px;font-weight:900;letter-spacing:-.6px;color:#1c1c1e;color:var(--text)}.admin-subtitle{margin:0 0 28px;color:rgba(60,60,67,.55);color:var(--text-secondary);font-size:15px;font-weight:500}.admin-form{background:#fff;background:var(--surface);border-radius:18px;border-radius:var(--r-lg);border:.5px solid rgba(60,60,67,.18);border:.5px solid var(--border);box-shadow:0 1px 4px rgba(0,0,0,.06),0 2px 8px rgba(0,0,0,.04);box-shadow:var(--shadow-sm);padding:20px;display:flex;flex-direction:column;grid-gap:16px;gap:16px;margin-bottom:12px}.admin-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:rgba(60,60,67,.55);color:var(--text-secondary)}.admin-input{width:100%;font-size:17px}.admin-default-row{display:flex;grid-gap:6px;gap:6px;align-items:baseline;font-size:13px;font-weight:500;color:rgba(60,60,67,.55);color:var(--text-secondary);flex-wrap:wrap}.admin-default-value{font-weight:700;color:#3a3a3c;color:var(--text-2);word-break:break-all}.admin-actions{display:flex;grid-gap:10px;gap:10px;flex-wrap:wrap}.admin-actions .btn{min-height:46px;font-weight:700}.admin-segment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-radius:14px;border-radius:var(--r-md);border:1px solid rgba(60,60,67,.18);background:#f2f2f8;padding:4px;grid-gap:4px;gap:4px}.admin-segment-btn{border:none;min-height:38px;border-radius:10px;border-radius:var(--r-sm);font-size:13px;font-weight:700;color:#3a3a3c;color:var(--text-2);background:transparent;cursor:pointer;transition:all .12s ease;transition:all var(--dur-fast) ease}.admin-segment-btn.active{background:#fff;box-shadow:0 2px 6px rgba(28,28,30,.1);color:#3d32b8;color:var(--brand-dark)}.admin-status-row{background:#fff;background:var(--surface);border-radius:18px;border-radius:var(--r-lg);border:.5px solid rgba(60,60,67,.18);border:.5px solid var(--border);box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:var(--shadow-xs);padding:14px 20px;margin-top:0;display:flex;align-items:center;grid-gap:10px;gap:10px;font-size:15px;font-weight:600;color:#3a3a3c;color:var(--text-2)}.admin-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.admin-status-dot.online{background:#25d366;background:var(--green)}.admin-status-dot.offline{background:#ff3b30;background:var(--red)}.admin-diagnostics-card{background:#fff;background:var(--surface);border-radius:18px;border-radius:var(--r-lg);border:.5px solid rgba(60,60,67,.18);border:.5px solid var(--border);box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:var(--shadow-xs);padding:6px 16px;margin-top:12px}.admin-diagnostics-row{display:flex;align-items:center;justify-content:space-between;grid-gap:10px;gap:10px;padding:12px 0;border-bottom:.5px solid rgba(60,60,67,.18);border-bottom:.5px solid var(--border)}.admin-diagnostics-row:last-child{border-bottom:none}.admin-diagnostics-key{color:rgba(60,60,67,.55);color:var(--text-secondary);font-size:13px;font-weight:600}.admin-diagnostics-value{color:#1c1c1e;color:var(--text);font-size:14px;font-weight:700;text-align:right;word-break:break-all}.admin-pill{display:inline-flex;align-items:center;justify-content:center;min-width:76px;padding:6px 10px;border-radius:999px;border-radius:var(--r-full);font-size:12px;font-weight:800;letter-spacing:.4px;text-transform:uppercase}.admin-pill.online{background:#eafaf1;background:var(--green-bg);color:#17643a;border:1px solid #a8e6c3;border:1px solid var(--green-border)}.admin-pill.offline{background:#fff0ef;background:var(--red-bg);color:#8b1c1c;border:1px solid #ffb3ae;border:1px solid var(--red-border)}.admin-help-card{background:linear-gradient(180deg,#fff,#f7f7fb);border-radius:18px;border-radius:var(--r-lg);border:.5px solid rgba(60,60,67,.18);border:.5px solid var(--border);box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:var(--shadow-xs);padding:18px 16px;margin-top:12px}.admin-help-title{margin:0 0 10px;color:#1c1c1e;color:var(--text);font-size:16px;font-weight:800;letter-spacing:-.1px}.admin-help-item{margin:0 0 10px;color:#3a3a3c;color:var(--text-2);font-size:14px;line-height:1.45;font-weight:500}.admin-help-item:last-child{margin-bottom:0}.admin-sticky-actions{position:fixed;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));bottom:calc(70px + env(safe-area-inset-bottom));bottom:calc(var(--tab-total) + 10px);z-index:210;display:flex;grid-gap:10px;gap:10px;padding:10px;border-radius:18px;border-radius:var(--r-lg);border:1px solid rgba(60,60,67,.14);background:hsla(0,0%,100%,.9);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);box-shadow:0 2px 12px rgba(0,0,0,.08),0 4px 20px rgba(0,0,0,.05);box-shadow:var(--shadow-md)}.admin-sticky-primary,.admin-sticky-secondary{flex:1 1;justify-content:center}.admin-message{margin-top:12px;padding:12px 16px;border-radius:14px;border-radius:var(--r-md);font-size:14px;font-weight:500;border:1px solid transparent}.admin-message.success{background:#eafaf1;background:var(--green-bg);border-color:#a8e6c3;border-color:var(--green-border);color:#1f6f3b}.admin-message.error{background:#fff0ef;background:var(--red-bg);border-color:#ffb3ae;border-color:var(--red-border);color:#8a1f17}@media (max-width:640px){.admin-page-wrap{min-height:calc(100dvh - 60px - env(safe-area-inset-bottom) - 76px);min-height:calc(100dvh - var(--tab-total) - 76px);padding-bottom:calc(248px + env(safe-area-inset-bottom));padding-bottom:calc(var(--tab-total) + 188px)}.admin-title{font-size:30px}.admin-diagnostics-card,.admin-form,.admin-help-card,.admin-status-row{border-radius:24px;border-radius:var(--r-xl)}.admin-actions .btn{flex:1 1;justify-content:center}.admin-sticky-actions{border-radius:24px;border-radius:var(--r-xl)}}@media (min-width:1024px){.admin-page-wrap{padding-bottom:160px}.admin-sticky-actions{max-width:680px;margin:0 auto;left:50%;right:auto;width:calc(100% - 32px);transform:translateX(-50%);bottom:18px}}@-webkit-keyframes card-lift-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes card-lift-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.word-row{-webkit-animation:card-lift-in .12s ease;animation:card-lift-in .12s ease;-webkit-animation:card-lift-in var(--dur-fast) ease;animation:card-lift-in var(--dur-fast) ease}.chat-bubble{-webkit-animation:fadeIn .12s ease;animation:fadeIn .12s ease;-webkit-animation:fadeIn var(--dur-fast) ease;animation:fadeIn var(--dur-fast) ease}@media (prefers-reduced-motion:reduce){.chat-bubble,.word-row{-webkit-animation:none;animation:none}.btn,.fab-add,.flashcard-inner,.icon-btn,.mobile-bottom-tab,.study-progress-fill{transition:none}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.login-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{background:#fff;background:var(--surface);border-radius:24px;border-radius:var(--r-xl);box-shadow:0 8px 32px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.06);box-shadow:var(--shadow-lg);padding:40px 32px;max-width:380px;width:100%;text-align:center}.login-logo{font-size:56px;margin-bottom:12px}.login-title{font-size:28px;font-weight:700;color:#1c1c1e;color:var(--text);margin:0 0 8px}.login-subtitle{color:rgba(60,60,67,.55);color:var(--text-secondary);font-size:15px;margin:0 0 28px}.btn-github{display:flex;align-items:center;justify-content:center;grid-gap:10px;gap:10px;background:#24292f;color:#fff;border:none;border-radius:14px;border-radius:var(--r-md);padding:12px 20px;font-size:15px;font-weight:600;cursor:pointer;width:100%;transition:background .2s ease;transition:background var(--transition)}.btn-github:hover:not(:disabled){background:#1a1f24}.btn-github:disabled{opacity:.6;cursor:not-allowed}.login-error{margin-top:14px;color:#ff3b30;color:var(--red);font-size:13px}.study-kpi-bar{display:flex;grid-gap:10px;gap:10px;margin-bottom:12px;justify-content:center}.study-kpi-item{display:flex;flex-direction:column;align-items:center;background:#fff;background:var(--surface);border-radius:14px;border-radius:var(--r-md);padding:10px 18px;box-shadow:0 1px 2px rgba(0,0,0,.04);box-shadow:var(--shadow-xs);flex:1 1;max-width:110px}.study-kpi-value{font-size:22px;font-weight:700}.study-kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:rgba(60,60,67,.55);color:var(--text-secondary);margin-top:2px}.study-kpi-mastered .study-kpi-value{color:#25d366;color:var(--green)}.study-kpi-learning .study-kpi-value{color:#ff9f0a;color:var(--amber)}.study-kpi-new .study-kpi-value{color:#5c4ee5;color:var(--brand)}.study-filter-bar{display:flex;grid-gap:8px;gap:8px;flex-wrap:wrap;margin-bottom:14px;justify-content:center}.study-filter-chip{background:#fff;background:var(--surface);border:1.5px solid #d1d1d6;border:1.5px solid var(--border-opaque);border-radius:999px;border-radius:var(--r-full);padding:5px 14px;font-size:13px;font-weight:500;color:#3a3a3c;color:var(--text-2);cursor:pointer;transition:all .2s ease;transition:all var(--transition);white-space:nowrap}.study-filter-chip:hover{border-color:#5c4ee5;border-color:var(--brand);color:#5c4ee5;color:var(--brand)}.study-filter-chip.active{background:#5c4ee5;background:var(--brand);border-color:#5c4ee5;border-color:var(--brand);color:#fff}.study-mastery-row{display:flex;grid-gap:6px;gap:6px;justify-content:center;margin:8px 0 4px}.study-mastery-dot{width:10px;height:10px;border-radius:50%;background:#d1d1d6;background:var(--border-opaque);display:inline-block;transition:background .2s ease;transition:background var(--transition)}.study-mastery-dot.filled{background:#5c4ee5;background:var(--brand)}
/*# sourceMappingURL=main.87f08dc6.chunk.css.map */