@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Roboto:ital,wght@0,300;0,400;0,500;0,700;1,400&display=swap);:root{--accent:#fbbc04;--accent-hover:#f2a600;--accent-light:#feefc3;--accent-mid:#fbbc0440;--primary-500:var(--accent);--primary-600:var(--accent-hover);--primary-700:#d49a00;--secondary-500:var(--accent);--secondary-600:var(--accent-hover);--gray-0:#fff;--gray-50:#fff;--gray-100:#f1f3f4;--gray-200:#e8eaed;--gray-300:#e0e0e0;--gray-400:#dadce0;--gray-500:#5f6368;--gray-700:#3c4043;--gray-900:#202124;--slate-50:var(--gray-50);--slate-100:var(--gray-100);--slate-200:var(--gray-200);--slate-300:var(--gray-300);--slate-500:var(--gray-500);--slate-700:var(--gray-700);--slate-800:var(--gray-900);--slate-900:var(--gray-900);--bg-main:var(--gray-50);--surface:var(--gray-0);--surface-hover:var(--gray-100);--sidebar-bg:var(--gray-0);--topbar-bg:#fffffff2;--border:var(--gray-300);--border-subtle:#0000000d;--grad-primary:var(--accent);--grad-premium:linear-gradient(135deg,var(--accent),#ffca28);--grad-subtle:var(--gray-100);--glass-bg:#ffffffe6;--glass-border:#0000000d;--glass-blur:blur(8px);--font-display:"Outfit","Google Sans","Roboto",sans-serif;--font-main:"Roboto",system-ui,-apple-system,sans-serif;--font-serif:"Georgia","Times New Roman",serif;--font-mono:"Roboto Mono",ui-monospace,"Courier New",monospace;--text-display-lg:3.5625rem;--text-display-md:2.8125rem;--text-display-sm:2.25rem;--text-headline-lg:2rem;--text-headline-md:1.75rem;--text-headline-sm:1.5rem;--text-title-lg:1.375rem;--text-title-md:1.0625rem;--text-title-sm:0.9375rem;--text-body-lg:0.9375rem;--text-body-md:0.875rem;--text-body-sm:0.8125rem;--text-label-lg:0.875rem;--text-label-md:0.8125rem;--text-label-sm:0.75rem;--lh-display:1.12;--lh-headline:1.2;--lh-title:1.3;--lh-body:1.6;--lh-label:1.4;--ls-display:-0.02em;--ls-headline:-0.02em;--ls-title:-0.01em;--ls-body:0;--ls-label:0;--shadow-sm:0 1px 2px 0 #3c40434d,0 1px 3px 1px #3c404326;--shadow-md:0 1px 3px 0 #3c40434d,0 4px 8px 3px #3c404326;--shadow-lg:0 4px 10px 0 #3c40434d,0 8px 16px 6px #3c404326;--shadow-xl:0 8px 16px 0 #3c40434d,0 16px 24px 8px #3c404326;--shadow-premium:0 2px 6px 0 #3c404326;--radius-sm:4px;--radius-md:8px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:9999px;--transition-fast:120ms cubic-bezier(0.4,0,0.2,1);--transition-soft:220ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms ease}*{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--bg-main);color:#202124;color:var(--gray-900);color:var(--slate-800);font-family:Roboto,system-ui,-apple-system,sans-serif;font-family:var(--font-main);font-size:.9375rem;font-size:var(--text-body-lg);font-weight:400;letter-spacing:0;letter-spacing:var(--ls-body);line-height:1.6;line-height:var(--lh-body);margin:0;transition:background-color var(--transition-base),color var(--transition-base)}*{box-sizing:border-box}h1{font-family:var(--font-display);font-size:var(--text-headline-lg);font-weight:700;letter-spacing:var(--ls-headline);line-height:var(--lh-headline)}h2{font-size:var(--text-headline-md)}h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:var(--ls-headline);line-height:var(--lh-headline)}h3{font-size:var(--text-headline-sm)}h4,h5,h6{font-family:var(--font-display);font-size:var(--text-title-lg);font-weight:500;letter-spacing:var(--ls-title);line-height:var(--lh-title)}button,input,select,textarea{font-family:var(--font-display);font-size:var(--text-label-lg);letter-spacing:var(--ls-label)}::selection{background-color:var(--primary-600);color:#fff}.glass-panel{backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow-premium)}.mission-layout{background-color:var(--surface);display:flex;min-height:100vh}.main-content{background:var(--surface);display:flex;flex:1 1;flex-direction:column;min-width:0;position:relative;z-index:101}.view-container{flex:1 1;padding:0 1.5rem 2rem}@media (max-width:768px){.mission-layout{flex-direction:column}.view-container{padding:1rem 1rem 5.5rem}}.view-enter{opacity:0;transform:translateY(6px)}.view-enter-active{opacity:1;transform:translateY(0);transition:opacity .2s,transform .2s}::selection{background-color:var(--accent-light);color:var(--gray-900)}.live-chat-floating-bubble{align-items:center;background:#fbbc04;background:var(--accent,#fbbc04);border:none;border-radius:50%;bottom:24px;box-shadow:0 4px 16px #00000026,0 2px 4px #0000001a;color:#202124;color:var(--gray-900,#202124);cursor:pointer;display:flex;height:60px;justify-content:center;position:fixed;right:24px;transition:transform .2s cubic-bezier(.34,1.56,.64,1),background-color .2s,box-shadow .2s;width:60px;z-index:4999}.live-chat-floating-bubble:hover{background:#f2a600;background:var(--accent-hover,#f2a600);box-shadow:0 8px 24px #0003,0 3px 8px #00000026;transform:scale(1.08) translateY(-2px)}.live-chat-floating-bubble:active{transform:scale(.95)}@media (max-width:768px){.live-chat-floating-bubble{display:none!important}}.mission-sidebar{background:var(--surface);border-right:none;display:flex;flex-direction:column;height:100vh;padding:1.5rem 0 1rem;position:sticky;top:0;transition:width .2s cubic-bezier(.4,0,.2,1);width:280px;z-index:100}.mission-sidebar.collapsed{padding:1.5rem 0 1rem;width:72px}.sidebar-brand{align-items:center;display:flex;gap:.75rem;margin-bottom:1.75rem;padding:0 1.5rem;transition:gap .2s,padding .2s}.mission-sidebar.collapsed .sidebar-brand{gap:0;justify-content:center;padding:0}.brand-icon{align-items:center;background:#0000;border-radius:50%;color:var(--accent);display:flex;flex-shrink:0;font-size:1.25rem;height:40px;justify-content:center;width:40px}.brand-name{color:var(--gray-500);font-family:var(--font-display);font-size:1.375rem;font-weight:500;letter-spacing:-.01em;max-width:200px;opacity:1;transition:opacity .15s,max-width .15s,visibility .15s;visibility:visible;white-space:nowrap}.mission-sidebar.collapsed .brand-name{max-width:0;opacity:0;visibility:hidden}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:4px}.nav-item{align-items:center;background:#0000;border:none;border-radius:0 24px 24px 0;color:var(--gray-700);cursor:pointer;display:flex;font-family:var(--font-main);font-size:.875rem;font-weight:500;gap:1.5rem;margin-right:12px;padding:.75rem 1.5rem;text-align:left;transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap;width:calc(100% - 12px)}.mission-sidebar.collapsed .nav-item{border-radius:50%;gap:0;height:48px;justify-content:center;margin:0 auto;padding:.75rem;width:48px}.nav-label{max-width:200px;opacity:1;transition:opacity .15s,max-width .15s,visibility .15s;visibility:visible}.mission-sidebar.collapsed .nav-label{max-width:0;opacity:0;visibility:hidden}.nav-item:hover{background:var(--gray-100);color:var(--gray-900)}.nav-item.active{background:var(--accent-light);color:var(--gray-900)}.nav-item.active .nav-icon{color:var(--accent)}.nav-item.disabled{cursor:not-allowed;opacity:.35;pointer-events:none}.nav-item.disabled:hover{background:#0000;color:var(--gray-500)}.nav-icon{align-items:center;display:flex;flex-shrink:0;height:18px;justify-content:center;width:18px}.sidebar-footer{border-top:1px solid var(--border-subtle);margin-top:auto;padding-top:.75rem}.user-profile-card{background:#0000;border-radius:var(--radius-md);flex-direction:column;gap:.5rem;padding:.75rem .5rem}.user-info,.user-profile-card{display:flex;transition:all .25s}.user-info{align-items:center;gap:.625rem;overflow:hidden}.user-avatar{color:var(--gray-500);flex-shrink:0}.user-email{color:var(--gray-700);font-size:var(--text-body-sm);font-weight:500;max-width:200px;opacity:1;overflow:hidden;text-overflow:ellipsis;transition:opacity .2s,max-width .2s,visibility .2s;visibility:visible;white-space:nowrap}.mission-sidebar.collapsed .user-email{max-width:0;opacity:0;visibility:hidden}.logout-btn{background:#0000;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--gray-500);cursor:pointer;font-size:var(--text-label-md);font-weight:500;padding:.4375rem .75rem;text-align:center;transition:all var(--transition-fast);width:100%}.logout-btn:hover{background:var(--gray-100);border-color:var(--gray-400);color:var(--gray-900)}.collapse-toggle-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--gray-400);cursor:pointer;display:flex;font-family:var(--font-main);font-size:var(--text-body-lg);font-weight:500;gap:.75rem;margin-bottom:.75rem;margin-top:.25rem;padding:.5625rem .75rem;text-align:left;transition:all .25s;width:100%}.collapse-toggle-btn:hover{background:var(--gray-100);color:var(--gray-700)}.mission-sidebar.collapsed .collapse-toggle-btn{gap:0;justify-content:center;padding:.5625rem}.collapse-toggle-btn span{max-width:200px;opacity:1;transition:opacity .2s,max-width .2s,visibility .2s;visibility:visible;white-space:nowrap}.mission-sidebar.collapsed .collapse-toggle-btn span{max-width:0;opacity:0;visibility:hidden}.mission-sidebar.collapsed .user-profile-card{align-items:center;padding:.75rem .25rem}.mission-sidebar.collapsed .user-info{gap:0;justify-content:center}.logout-icon-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--gray-400);cursor:pointer;display:flex;height:32px;justify-content:center;margin-top:.25rem;padding:6px;transition:all var(--transition-fast);width:32px}.logout-icon-btn:hover{background:var(--accent-light);color:var(--accent)}.user-profile-actions{align-items:center;display:flex;gap:.5rem;margin-top:.125rem;width:100%}.profile-action-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--gray-500);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:all var(--transition-fast);width:32px}.profile-action-btn:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}@media (max-width:768px){.mission-sidebar{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fffffff2;border-right:none;border-top:1px solid var(--border-subtle);bottom:0;box-shadow:0 -1px 0 var(--border-subtle);flex-direction:row;height:56px;left:0;padding:0;position:fixed;right:0;top:auto;width:100vw;z-index:999}.mission-sidebar.collapsed{height:56px!important;padding:0!important;width:100vw!important}.sidebar-brand{display:none!important}.sidebar-nav{flex-direction:row;gap:0;justify-content:space-around;width:100%}.nav-item,.sidebar-nav{align-items:center;height:100%}.nav-item{border-radius:0;flex:1 1;flex-direction:column;font-size:.6875rem;font-weight:500;gap:2px;justify-content:center;padding:4px 0;text-align:center}.mission-sidebar.collapsed .nav-item{align-items:center!important;flex-direction:column!important;gap:2px!important;justify-content:center!important;padding:4px 0!important}.nav-item.active{background:#0000;color:var(--accent)}.nav-icon svg{height:18px;width:18px}.collapse-toggle-btn,.sidebar-footer{display:none!important}.nav-item-dashboard{display:flex!important}}.nav-item-dashboard{display:none!important}.mission-topbar{background:var(--surface);border-bottom:1px solid var(--border);height:64px;justify-content:space-between;padding:.75rem 2rem;position:sticky;top:0;z-index:50}.mission-topbar,.topbar-left{align-items:center;display:flex}.topbar-left{gap:1rem}.page-title{color:var(--gray-500);font-family:var(--font-display);font-size:1.375rem;font-weight:500;letter-spacing:0}.search-wrapper{width:260px}.search-icon{left:.625rem}.search-input{background:var(--gray-100);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--gray-900);font-family:var(--font-main);font-size:var(--text-body-md);padding:.4375rem .75rem .4375rem 2rem;transition:var(--transition-fast);width:100%}.search-input::placeholder{color:var(--gray-400)}.search-input:focus{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}.topbar-right{gap:.5rem}.topbar-btn,.topbar-right{align-items:center;display:flex}.topbar-btn{background:#0000;border:1px solid var(--border);border-radius:var(--radius-full);color:var(--gray-500);cursor:pointer;height:34px;justify-content:center;transition:var(--transition-fast);width:34px}.topbar-btn:hover{background:var(--gray-100);color:var(--gray-900)}.topbar-btn svg{display:block}.user-profile{margin-left:.125rem}.user-avatar{align-items:center;background:var(--accent);border-radius:var(--radius-full);color:#fff;display:flex;font-size:.75rem;font-weight:600;height:30px;justify-content:center;width:30px}@media (max-width:768px){.mission-topbar{padding:.625rem 1rem}.search-wrapper{display:none}.topbar-left{gap:.5rem}.page-title{font-size:var(--text-body-lg)}}.tutor-gemini-container{align-items:center;animation:view-enter .5s var(--transition-soft);background:var(--bg-main);box-sizing:border-box;display:flex;flex-direction:column;font-family:var(--font-main);justify-content:space-between;min-height:calc(100vh - 120px);overflow:hidden;padding:3rem 2rem}.tutor-minimal-title{color:var(--slate-800);font-size:2.5rem;font-weight:800;letter-spacing:-1px;margin-bottom:1rem}.blue-gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent),#ff8f00);-webkit-background-clip:text}.tutor-main-stage{align-items:center;display:flex;flex:1 1;justify-content:center;transition:transform .5s cubic-bezier(.2,.8,.2,1);width:100%}.tutor-main-stage.centered,.tutor-main-stage.split{flex-direction:column;gap:2.5rem}.tutor-main-stage.split{transform:translateX(-180px)}.tutor-orb-section{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:2rem;justify-content:center}.tutor-orb-wrapper{height:230px;width:230px}.tutor-gemini-orb,.tutor-orb-wrapper{align-items:center;display:flex;justify-content:center;position:relative}.tutor-gemini-orb{border:none;border-radius:50%;box-shadow:0 10px 40px #1a73e84d;cursor:pointer;height:160px;outline:none;transition:transform .08s cubic-bezier(.1,.8,.3,1),background .5s ease,box-shadow .5s ease;width:160px;z-index:5}.orb-pulse-ring-1,.orb-pulse-ring-2{background:#0000;border-radius:50%;height:160px;pointer-events:none;position:absolute;transition:all .5s ease;width:160px;z-index:1}.tutor-gemini-orb.inactive{background:radial-gradient(circle at 35% 35%,#4285f4,#1a73e8 60%,#1557b0);box-shadow:0 10px 35px #1a73e859}.tutor-gemini-orb.inactive:hover{transform:scale(1.05)!important}.tutor-gemini-orb.inactive+.orb-pulse-ring-1{animation:orb-radar 3s linear infinite;border:1px solid #1a73e84d}.tutor-gemini-orb.inactive~.orb-pulse-ring-2{animation:orb-radar 3s linear 1.5s infinite;border:1px solid #1a73e826}.tutor-gemini-orb.speaking{animation:orb-morph 5s linear infinite alternate;background:linear-gradient(135deg,#4285f4,#9b72f8,#12b5cb);box-shadow:0 0 50px #9b72f880}.tutor-gemini-orb.speaking+.orb-pulse-ring-1{animation:orb-radar 2.5s linear infinite;border:1px solid #9b72f866}.tutor-gemini-orb.listening{animation:orb-breathe 2s ease-in-out infinite;background:radial-gradient(circle at 35% 35%,#12b5cb,#0097a7 60%,#006064);box-shadow:0 0 45px #12b5cb66}.tutor-gemini-orb.listening+.orb-pulse-ring-1{animation:orb-radar 3s linear infinite;border:1px solid #12b5cb59}.tutor-gemini-orb.user-speaking{background:linear-gradient(135deg,#34a853,#12b5cb,#4285f4);box-shadow:0 0 60px #34a853a6}.tutor-gemini-orb.thinking{animation:orb-rotate-pulse 2s linear infinite;background:linear-gradient(135deg,#1a73e8,#9b72f8);box-shadow:0 0 50px #9b72f873}.tutor-gemini-orb.standby{background:radial-gradient(circle at 35% 35%,#f0a000,#d08000 60%,#905000);box-shadow:0 10px 40px #f0a00073}.tutor-gemini-orb.standby+.orb-pulse-ring-1{animation:orb-radar 3s linear infinite;border:1px solid #f0a00066}.tutor-gemini-orb.standby~.orb-pulse-ring-2{animation:orb-radar 3s linear 1.5s infinite;border:1px solid #f0a00033}.tutor-gemini-orb.standby:hover{transform:scale(1.05)!important}.orb-core{align-items:center;border-radius:50%;display:flex;height:100%;justify-content:center;width:100%}.orb-mic-svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.orb-mic-svg,.orb-play-svg{fill:#fff;height:54px;width:54px}.orb-play-svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.15));margin-left:6px}.orb-wave-container{align-items:center;display:flex;gap:8px;justify-content:center}.orb-wave-container .wave-bar{animation:orb-wave-bounce .8s ease-in-out infinite;background-color:#fff;border-radius:3px;height:25px;width:5px}.orb-wave-container .wave-bar.bar-1{animation-delay:.1s}.orb-wave-container .wave-bar.bar-2{animation-delay:.3s}.orb-wave-container .wave-bar.bar-3{animation-delay:.2s}.orb-wave-container.green .wave-bar{animation-duration:.5s;background-color:#fff}.orb-pulse-dot{animation:orb-dot-pulse 1.5s ease-in-out infinite;background-color:#fff;border-radius:50%;height:24px;width:24px}.orb-spinner{animation:orb-spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:48px;width:48px}.tutor-status-label{color:var(--slate-500);font-size:1.1rem;font-weight:600;letter-spacing:-.2px;line-height:1.4;max-width:280px;min-height:24px;text-align:center}.tutor-side-transcript{backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);background:#ffffffd1;border-bottom:1px solid #dadce099;border-left:1px solid #dadce099;border-radius:var(--radius-lg) 0 0 var(--radius-lg);border-top:1px solid #dadce099;bottom:25px;box-shadow:-10px 0 30px #3c404314;display:flex;flex-direction:column;opacity:0;overflow:hidden;position:fixed;right:0;top:90px;transform:translateX(100%);transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .5s cubic-bezier(.2,.8,.2,1);width:400px;z-index:100}.tutor-side-transcript.open{opacity:1;transform:translateX(0)}.side-transcript-header{border-bottom:1px solid #dadce080;color:var(--slate-800);font-size:1.05rem;font-weight:800;letter-spacing:.5px;padding:1.5rem 1.5rem 1rem;text-transform:uppercase}.transcript-scroll-area{display:flex;flex:1 1;flex-direction:column;gap:1.25rem;overflow-y:auto;padding:1.25rem 1.5rem;scroll-behavior:smooth}.transcript-scroll-area::-webkit-scrollbar{width:6px}.transcript-scroll-area::-webkit-scrollbar-track{background:#0000}.transcript-scroll-area::-webkit-scrollbar-thumb{background:var(--slate-300);border-radius:var(--radius-full)}.transcript-scroll-area::-webkit-scrollbar-thumb:hover{background:var(--slate-400)}.transcript-bubble{animation:message-fade-in .3s ease forwards;display:flex;flex-direction:column;gap:.25rem}.transcript-bubble.bot{align-items:flex-start}.transcript-bubble.user{align-items:flex-end}.bubble-speaker{color:var(--slate-500);font-size:.75rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.bubble-text{background-color:var(--slate-100);border-radius:var(--radius-lg);color:var(--slate-800);font-size:.95rem;line-height:1.45;max-width:90%;padding:.75rem 1rem;word-break:break-word}.bot .bubble-text{background-color:var(--slate-50);border:1px solid var(--border);border-top-left-radius:4px}.user .bubble-text{background:var(--accent-light);border:1px solid #fbbc0459;border-top-right-radius:4px;color:var(--gray-900)}.transcript-evaluation{background-color:#fef7e0;border:1px solid #feefc3;border-radius:var(--radius-md);color:#b06000;font-size:.8rem;line-height:1.4;margin-top:.4rem;padding:6px 10px;width:90%}.tutor-minimal-tips{background-color:var(--slate-100);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--slate-500);font-size:.85rem;padding:.6rem 1.25rem;text-align:center}.tutor-resume-btn{background:linear-gradient(135deg,#f0a000,#d08000);border:none;border-radius:var(--radius-full);box-shadow:0 4px 14px #f0a00059;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;outline:none;padding:.75rem 2.25rem;transition:all .2s cubic-bezier(.4,0,.2,1);z-index:10}.tutor-resume-btn:hover{box-shadow:0 6px 18px #f0a00080;transform:translateY(-2px)}.tutor-resume-btn:active{transform:translateY(0)}.tutor-transcript-toggle-btn{align-items:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background-color:#ffffffbf;border:1px solid var(--border);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:var(--slate-600);cursor:pointer;display:flex;font-size:.85rem;font-weight:700;gap:6px;outline:none;padding:.5rem 1.25rem;transition:all .2s ease;z-index:10}.tutor-transcript-toggle-btn:hover{background-color:var(--slate-100);border-color:var(--slate-400);color:var(--slate-800);transform:translateY(-1px)}.tutor-transcript-toggle-btn:active{transform:translateY(0)}.tutor-transcript-toggle-btn.active{background-color:var(--slate-200);border-color:var(--slate-400);color:var(--slate-800)}@keyframes view-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes message-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes orb-radar{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@keyframes orb-morph{0%{border-radius:50% 50% 50% 50%/50% 50% 50% 50%}33%{border-radius:56% 44% 62% 38%/48% 62% 38% 52%}66%{border-radius:44% 56% 38% 62%/62% 38% 56% 44%}to{border-radius:50% 50% 50% 50%/50% 50% 50% 50%}}@keyframes orb-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes orb-rotate-pulse{0%{transform:rotate(0deg) scale(1)}50%{transform:rotate(180deg) scale(1.06)}to{transform:rotate(1turn) scale(1)}}@keyframes orb-wave-bounce{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1.3)}}@keyframes orb-dot-pulse{0%,to{opacity:.7;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}@keyframes orb-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.tutor-minimal-title{font-size:2rem}.tutor-main-stage.split{transform:translateY(0)}.tutor-side-transcript{border:1px solid #dadce0cc;border-radius:var(--radius-lg);bottom:10px;box-shadow:0 -10px 30px #3c40431a;height:320px;left:10px;opacity:0;position:fixed;right:10px;top:auto;transform:translateY(120%);transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .5s ease;width:auto}.tutor-side-transcript.open{opacity:1;transform:translateY(0)}.tutor-orb-section{gap:1.5rem}.orb-pulse-ring-1,.orb-pulse-ring-2,.tutor-gemini-orb{height:140px;width:140px}}.summary-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a80;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:1000}.summary-modal-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:90vh;max-width:700px;overflow:hidden;position:relative;width:100%}.summary-modal-header{align-items:center;background:var(--slate-50);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1.25rem 1.75rem}.summary-modal-header h2{color:var(--slate-800);font-size:1.4rem;font-weight:700;letter-spacing:-.2px;margin:0}.summary-modal-header .close-btn{background:none;border:none;color:var(--slate-500);cursor:pointer;font-size:2rem;line-height:1;padding:0;transition:color var(--transition-fast)}.summary-modal-header .close-btn:hover{color:var(--slate-900)}.summary-modal-body{display:flex;flex-direction:column;gap:1.75rem;overflow-y:auto;padding:1.75rem}.summary-modal-body::-webkit-scrollbar{width:8px}.summary-modal-body::-webkit-scrollbar-track{background:#0000}.summary-modal-body::-webkit-scrollbar-thumb{background:var(--slate-300);border-radius:var(--radius-full)}.summary-modal-body::-webkit-scrollbar-thumb:hover{background:var(--slate-500)}.summary-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.card-header{flex-wrap:wrap;justify-content:space-between}.card-header,.card-title-group{align-items:center;display:flex;gap:.5rem}.card-icon{font-size:1.25rem}.card-header h3{color:var(--slate-800);font-size:1.05rem;font-weight:700;margin:0}.status-badge{border-radius:var(--radius-full);font-size:.8rem;font-weight:700;letter-spacing:.5px;padding:.25rem .75rem;text-transform:uppercase}.status-badge.success{background:#e6f4ea;color:#137333}.status-badge.warning{background:#fef7e0;color:#b06000}.status-badge.level-wysokie{background:#e8f0fe;border:1px solid #1a73e833;color:#1a73e8}.status-badge.level-średnie{background:#e2f1f8;color:#0288d1}.status-badge.level-niskie{background:#f1f3f4;color:#5f6368}.progress-bar-container{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.5rem}.progress-bar-label{color:var(--slate-500);display:flex;font-size:.85rem;justify-content:space-between}.progress-track{background:var(--slate-200);height:8px;overflow:hidden}.progress-fill,.progress-track{border-radius:var(--radius-full)}.progress-fill{background:var(--primary-500);transition:width .5s ease-out}.feedback-text{color:var(--slate-700);font-size:.95rem;line-height:1.5;margin:0}.stats-row{display:flex;gap:1rem;margin-bottom:.25rem}.stat-box{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex:1 1;flex-direction:column;gap:.15rem;padding:.75rem;text-align:center}.stat-num{color:var(--primary-600);font-size:1.5rem;font-weight:700}.stat-lbl{color:var(--slate-500);font-size:.8rem;font-weight:600}.summary-section{border-top:1px solid var(--border);display:flex;flex-direction:column;gap:1rem;padding-top:1.5rem}.section-title-wrapper{align-items:center;display:flex;gap:.5rem}.section-title-icon{font-size:1.25rem}.section-title-wrapper h3{color:var(--slate-800);font-size:1.1rem;font-weight:700;margin:0}.drills-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.drill-word-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.35rem;padding:1rem;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.drill-word-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.drill-word-card.mispronounced{background:#fff9f9;border-left:4px solid;border-color:#fadbd8}.drill-word-card.mispronounced .drill-word{color:#c5221f}.drill-word-card.mispronounced .drill-count-badge{background:#fce8e6;color:#c5221f;font-weight:700}.drill-card-top{align-items:center;display:flex;justify-content:space-between}.drill-word{color:var(--slate-800);font-size:1.1rem;font-weight:700}.drill-count-badge{background:var(--slate-100);border-radius:var(--radius-sm);color:var(--slate-700);font-size:.75rem;font-weight:700;padding:.15rem .5rem}.drill-translation{color:var(--primary-600);font-size:.95rem;font-weight:600;margin:0}.drill-example{background:var(--slate-50);border-left:2px solid var(--slate-300);border-radius:var(--radius-sm);color:var(--slate-600);font-size:.85rem;margin-top:.25rem;padding:.5rem}.vocab-sub-layout{display:flex;flex-direction:column;gap:1.5rem}.added-words-container h4,.forgotten-words-container h4{color:var(--slate-700);font-size:.95rem;font-weight:700;margin-bottom:.75rem}.added-words-chips{display:flex;flex-wrap:wrap;gap:.5rem}.added-word-chip{background:#e6f4ea;border-radius:var(--radius-full);color:#137333;font-size:.85rem;font-weight:600;padding:.35rem .75rem}.no-data-subtext,.no-data-text{color:var(--slate-500);font-size:.9rem;font-style:italic;margin:0}.no-data-subtext.success-msg{color:#137333;font-style:normal;font-weight:500}.forgotten-words-list{display:flex;flex-direction:column;gap:.75rem}.forgotten-word-card{background:#fff9f9;border:1px solid #fadbd8;border-left:4px solid #e74c3c;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.35rem;padding:1rem}.forgotten-card-header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between}.forgotten-word-title{color:#c0392b;font-size:1.1rem;font-weight:700;margin:0}.forgotten-translation{color:#7b241c;font-size:.9rem;font-weight:600}.btn-save-forgotten{background:var(--primary-500);border:none;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-size:.8rem;font-weight:700;padding:.35rem .75rem;transition:all var(--transition-fast);white-space:nowrap}.btn-save-forgotten:hover:not(:disabled){background:var(--primary-600);transform:translateY(-1px)}.btn-save-forgotten.saved{background:#27ae60;box-shadow:none;color:#fff;cursor:default}.forgotten-example{background:#fff;border:1px solid #f2d7d5;border-radius:var(--radius-sm);color:var(--slate-700);font-size:.85rem;margin-top:.25rem;padding:.5rem}.forgotten-reason{background:#e74c3c0d;border-radius:var(--radius-sm);color:#7b241c;font-size:.85rem;margin:0;padding:.35rem .5rem}.email-report-section{border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.75rem;padding-top:1.5rem}.email-report-section h3{color:var(--slate-800);font-size:1.05rem;font-weight:700;margin:0}.email-form{display:flex;gap:.75rem}.premium-text-input{background:var(--surface);border:1px solid var(--slate-300);color:var(--slate-800);flex:1 1;outline:none;padding:.6rem .9rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.btn-send-report{background:var(--primary-500);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-family:var(--font-main);font-size:.9rem;font-weight:600;padding:.6rem 1.25rem;transition:background var(--transition-fast)}.btn-send-report:hover:not(:disabled){background:var(--primary-600)}.btn-send-report:disabled{cursor:not-allowed;opacity:.6}.status-msg{font-size:.85rem;font-weight:600;margin:0}.status-msg.success{color:#137333}.status-msg.error{color:#c0392b}.summary-modal-footer{background:var(--slate-50);border-top:1px solid var(--border);display:flex;justify-content:flex-end;padding:1rem 1.75rem}.btn-close-footer{padding:.6rem 1.25rem}@keyframes zoom{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.animate-zoom{animation:zoom .2s cubic-bezier(.16,1,.3,1)}.workspace-layout{animation:view-enter .5s var(--transition-soft);display:flex;gap:2rem;height:100%;position:relative}@media (max-width:768px){.workspace-layout{flex-direction:column;gap:1rem}}.workspace-main{display:flex;flex:1 1;flex-direction:column;gap:2rem}.workspace-header{background-color:var(--bg-main);border-bottom:1px solid var(--border);margin-bottom:1.25rem;padding-bottom:.75rem;padding-top:.75rem;position:sticky;top:0;z-index:100}.header-left-group{align-items:center;display:flex;gap:.75rem;width:100%}.workspace-header h1{color:var(--slate-800);font-size:1.5rem;font-weight:700;margin:0}.header-actions-group{align-items:center;display:flex;gap:.5rem;margin-left:auto}.header-action-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-full);color:var(--gray-500);cursor:pointer;display:flex;height:34px;justify-content:center;padding:0;transition:all var(--transition-fast);width:34px}.header-action-btn svg{height:16px;width:16px}.header-action-btn:hover{background:var(--gray-100);border-color:var(--gray-400);color:var(--gray-900)}.header-action-btn.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.header-action-btn.clear-btn:hover{background:#fff5f5;border-color:#f5c6cb;color:#c0392b}.header-action-text-btn{align-items:center;background:var(--gray-100);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--gray-700);cursor:pointer;display:flex;font-family:var(--font-main);font-size:var(--text-label-lg);font-weight:500;gap:.4rem;height:34px;justify-content:center;padding:0 1rem;transition:all var(--transition-fast);white-space:nowrap}.header-action-text-btn svg{height:15px;width:15px}.header-action-text-btn:hover{background:var(--gray-200);border-color:var(--gray-400);color:var(--gray-900)}.header-action-text-btn.mastery-btn{background:var(--accent);border-color:var(--accent);color:var(--gray-900);font-weight:600;gap:.5rem;height:36px;padding:0 1.125rem}.header-action-text-btn.mastery-btn svg{height:16px;width:16px}.header-action-text-btn.mastery-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--gray-900);transform:none}.apple-player-controls-floating{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fffc;border:1px solid #e2e8f0cc;border-radius:var(--radius-full);box-shadow:0 10px 30px -5px #00000014,0 8px 15px -6px #0000000d;display:flex;gap:.5rem;left:50%;padding:.35rem .75rem .35rem .5rem;position:fixed;top:1.5rem;transform:translateX(-50%);transition:box-shadow .2s ease,border-color .2s ease;-webkit-user-select:none;user-select:none;z-index:1000}.apple-player-controls-floating.dragging{border-color:var(--primary-300);box-shadow:0 15px 35px -5px #0000001f,0 10px 20px -6px #00000014}.drag-handle{align-items:center;color:var(--slate-400);cursor:grab;display:flex;height:20px;justify-content:center;margin-right:.15rem;transition:color .2s ease;width:20px}.drag-handle:hover{color:var(--slate-600)}.apple-player-controls-floating.dragging .drag-handle{color:var(--primary-500);cursor:grabbing}.drag-handle svg{height:14px;width:14px}.player-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-full);color:var(--slate-600);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all var(--transition-fast);width:32px}.player-btn svg{height:16px;width:16px}.player-btn:hover:not(:disabled){background:var(--slate-200);color:var(--slate-900)}.player-btn:disabled{color:var(--slate-300);cursor:not-allowed}.player-btn.play-pause-btn.playing{background:var(--primary-500);color:#fff}.player-btn.play-pause-btn.playing:hover{background:var(--primary-600)}.back-btn-inline{align-items:center;background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--slate-500);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all var(--transition-fast);width:32px}.back-btn-inline:hover{background:var(--slate-100);border-color:var(--primary-200);color:var(--primary-600);transform:translateX(-2px)}.back-btn-inline svg{height:16px;width:16px}.modal-overlay{align-items:center;animation:modal-fade-in .2s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#00000052;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:5000}.modal-content{animation:modal-zoom-in .25s cubic-bezier(.34,1.56,.64,1);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:450px;padding:2.5rem;text-align:center;width:90%}.modal-content h3{color:var(--gray-900);font-size:var(--text-headline-sm);font-weight:700;letter-spacing:var(--ls-headline);margin-bottom:1.25rem;margin-top:0}.modal-content p{color:var(--gray-500);line-height:var(--lh-body)}.modal-content p,.premium-input{font-size:var(--text-body-md);margin-bottom:1.5rem}.premium-input{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--gray-900);font-family:var(--font-main);outline:none;padding:.75rem 1rem;transition:all var(--transition-fast);width:100%}.premium-input:focus{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.modal-actions,.modal-actions button{justify-content:center}.modal-actions button{align-items:center;border-radius:var(--radius-full);cursor:pointer;display:inline-flex;font-family:var(--font-display);font-size:var(--text-label-lg);font-weight:600;padding:.625rem 1.25rem;transition:all var(--transition-fast)}.modal-actions .btn-primary{background:var(--accent);border:1px solid var(--accent);color:var(--gray-900)}.modal-actions .btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.modal-actions .btn-secondary{background:#0000;border:1px solid var(--border);color:var(--gray-500)}.modal-actions .btn-secondary:hover:not(:disabled){background:var(--gray-100);color:var(--gray-700)}.modal-actions button:disabled{cursor:not-allowed;opacity:.5}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-zoom-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu{animation:context-menu-fade-in .2s cubic-bezier(.4,0,.2,1);background:#fff;background:var(--surface,#fff);border:1px solid #dadce0;border:1px solid var(--border,#dadce0);border-radius:8px;border-radius:var(--radius-md,8px);box-shadow:0 4px 20px #0000001f,0 2px 8px #0000000f;font-family:var(--font-main);padding:12px 16px;pointer-events:auto;position:absolute;width:300px;z-index:10000}@keyframes context-menu-fade-in{0%{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.context-menu-actions{display:flex;flex-wrap:wrap;gap:6px}.context-menu button{align-items:center;background-color:#f1f3f4;background-color:var(--slate-100,#f1f3f4);border:none;border-radius:4px;border-radius:var(--radius-sm,4px);color:#3c4043;color:var(--slate-700,#3c4043);cursor:pointer;display:inline-flex;flex:1 1;font-size:.8rem;font-weight:500;gap:5px;justify-content:center;min-width:calc(50% - 4px);padding:5px 8px;transition:all .15s;transition:all var(--transition-fast,.15s);white-space:nowrap}.context-menu button:hover{background-color:#e8eaed;background-color:var(--slate-200,#e8eaed);color:#202124;color:var(--slate-900,#202124)}.context-menu button.ctx-translate-btn{background-color:#1a73e81a;color:#1a73e8}.context-menu button.ctx-translate-btn:hover{background-color:#1a73e833}.context-menu button.ctx-speak-btn{background-color:#fb8c001a;color:#e65100}.context-menu button.ctx-speak-btn:hover{background-color:#fb8c0033}.context-menu button.ctx-vocab-btn{background-color:#1987541a;color:#198754}.context-menu button.ctx-vocab-btn:hover{background-color:#19875433}.context-menu button.ctx-practice-btn{background-color:var(--accent-light);border:1px solid #fbbc0440;color:var(--gray-700);flex:0 0 100%}.context-menu button.ctx-practice-btn:hover{background-color:var(--accent-mid)}.context-menu button svg{flex-shrink:0;height:13px;width:13px}.saved-stories-section{border-top:1px solid var(--border);margin-top:3rem;padding-top:2rem}.saved-stories-section h3{color:var(--slate-900);font-size:1.15rem;font-weight:800;letter-spacing:.5px;margin-bottom:1.5rem;text-transform:uppercase}.stories-history-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.story-history-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1rem;justify-content:space-between;padding:1.5rem;transition:all var(--transition-fast)}.story-history-card:hover{border-color:var(--primary-500);box-shadow:var(--shadow-md);transform:translateY(-2px)}.story-card-header{display:flex;flex-direction:column;gap:.25rem}.story-card-title{color:var(--slate-900);font-size:1.05rem;font-weight:800;margin:0}.story-card-date{color:var(--slate-400);font-size:.75rem;font-weight:600}.story-card-snippet{color:var(--slate-600);font-size:.85rem;line-height:1.5;margin:0}.story-card-actions{align-items:center;border-top:1px solid var(--slate-100);display:flex;justify-content:space-between;margin-top:auto;padding-top:.75rem}.read-story-btn{background:var(--grad-primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-size:.8rem;font-weight:700;padding:.5rem 1rem;transition:all var(--transition-fast)}.read-story-btn:hover{box-shadow:0 4px 12px #7c3aed33;filter:brightness(1.05)}.delete-story-btn{align-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius-full);color:var(--slate-400);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all var(--transition-fast);width:32px}.delete-story-btn:hover{background:var(--slate-50);border-color:var(--secondary-500);color:var(--secondary-500)}.no-stories-state{background:var(--slate-50);border:1px dashed var(--border);border-radius:var(--radius-lg);color:var(--slate-500);font-size:.9rem;padding:2.5rem;text-align:center}.chapter-tabs{border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding-bottom:1rem}.chapter-tab{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-600);cursor:pointer;font-family:var(--font-main);font-size:.85rem;font-weight:600;padding:.6rem 1.25rem;transition:all var(--transition-fast)}.chapter-tab:hover{background:var(--slate-100);border-color:var(--slate-300);color:var(--slate-800)}.chapter-tab.active{background:var(--slate-900);border-color:var(--slate-900);box-shadow:var(--shadow-sm);color:#fff}.chapter-tab.continue-tab{background:#0000;border-color:var(--primary-400);border-style:dashed;color:var(--primary-600)}.chapter-tab.continue-tab:hover{background:#7c3aed0d;border-color:var(--primary-500)}.chapter-tab.continue-tab.active{background:var(--primary-600);border-color:var(--primary-600);border-style:solid;color:#fff}.continuation-actions{align-items:center;display:flex;margin-top:1.5rem}.cancel-continuation-btn{background:#fff;border:1px solid var(--border);color:var(--slate-700);cursor:pointer;font-weight:600;transition:all var(--transition-fast)}.cancel-continuation-btn:hover{background:var(--slate-50);border-color:var(--slate-400);color:var(--slate-900)}.spinner-inline{animation:spin-btn .8s linear infinite;border:2px solid #0000001a;border-radius:50%;border-top-color:initial;display:inline-block;height:16px;margin-right:8px;width:16px}@keyframes spin-btn{to{transform:rotate(1turn)}}.flashcards-container{align-items:center;display:flex;flex-direction:column;gap:2rem;margin:0 auto;max-width:500px;padding:2rem}.progress-bar{background:var(--slate-200);border-radius:3px;height:6px;overflow:hidden;width:100%}.progress-fill{background:var(--primary-600);height:100%;transition:width .3s ease}.flashcards-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem;width:100%}.close-btn{background:none;border:none;color:var(--slate-400);cursor:pointer;font-size:1.5rem}.flashcard-scene{cursor:pointer;height:450px;perspective:1000px;width:350px}.flashcard-card{height:100%;position:relative;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1);width:100%}.is-flipped .flashcard-card{transform:rotateY(180deg)}.flashcard-face{align-items:center;backface-visibility:hidden;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-premium);display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;position:absolute;text-align:center;width:100%}.back{box-shadow:inset 0 0 40px #6366f10d;transform:rotateY(180deg)}.card-label{color:var(--slate-500);font-size:.8rem;letter-spacing:.1em;position:absolute;text-transform:uppercase;top:2rem}.card-text{color:var(--slate-800);font-family:var(--font-serif);font-size:2rem;font-weight:700}.tap-hint{animation:pulse 2s infinite;bottom:2rem;color:var(--primary-600);font-size:.8rem;position:absolute}.evaluation-buttons{display:flex;gap:1rem;width:100%}.eval-btn{border:none;border-radius:var(--radius-md);flex:1 1;font-weight:600;padding:1rem}.eval-btn.primary{background:var(--primary-600);color:#fff}.eval-btn.secondary{background:var(--slate-200);color:var(--slate-700)}.flashcards-results{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);gap:2rem;margin:3rem auto;max-width:400px;padding:3rem 2rem 2.5rem;text-align:center}.flashcards-results,.results-header{align-items:center;display:flex;flex-direction:column}.results-header{gap:.5rem}.results-emoji{font-size:2.25rem;line-height:1;margin-bottom:.25rem}.results-title{color:var(--gray-900);font-family:var(--font-display);font-size:var(--text-title-lg);font-weight:700;letter-spacing:var(--ls-headline);margin:0}.results-subtitle{color:var(--gray-500);font-size:var(--text-body-md);line-height:var(--lh-body);margin:0;max-width:280px}.results-score-ring{align-items:center;display:flex;height:128px;justify-content:center;position:relative;width:128px}.score-ring-svg{height:128px;left:0;position:absolute;top:0;width:128px}.score-ring-label{align-items:baseline;display:flex;gap:2px;position:relative;z-index:1}.score-ring-num{color:var(--gray-900);font-family:var(--font-display);font-size:2.25rem;font-weight:800;line-height:1}.score-ring-total{color:var(--gray-400);font-size:1rem;font-weight:500;line-height:1}.results-stats{background:var(--gray-50);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);gap:0;padding:1rem 1.5rem;width:100%}.results-stat,.results-stats{align-items:center;display:flex}.results-stat{flex:1 1;flex-direction:column;gap:.2rem}.results-stat-val{color:var(--gray-900);font-family:var(--font-display);font-size:var(--text-title-lg);font-weight:700;line-height:1.1}.results-stat-lbl{color:var(--gray-400);font-size:var(--text-label-sm);font-weight:500;letter-spacing:.06em;text-transform:uppercase}.results-stat-divider{background:var(--border-subtle);flex-shrink:0;height:36px;width:1px}.results-actions{width:100%}.results-btn-primary{background:var(--accent);border:none;border-radius:var(--radius-full);color:var(--gray-900);cursor:pointer;font-family:var(--font-display);font-size:var(--text-label-lg);font-weight:600;letter-spacing:0;padding:.75rem 1.5rem;transition:background var(--transition-fast);width:100%}.results-btn-primary:hover{background:var(--accent-hover);color:var(--gray-900)}.story-generator{animation:view-enter .5s var(--transition-soft);background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1.5rem;margin:2rem 0 3rem;max-width:900px;padding:2rem}.generation-progress-overlay{align-items:center;display:flex;justify-content:center;min-height:340px;padding:3rem 2rem}.gen-progress-card{align-items:center;animation:view-enter .4s ease;animation:view-enter .4s var(--transition-soft,ease);display:flex;flex-direction:column;gap:1.25rem;text-align:center}.gen-progress-ring-wrapper{height:120px;position:relative;width:120px}.gen-progress-ring{height:120px;transform:rotate(-90deg);width:120px}.gen-progress-ring-track{stroke:#f1f3f4;stroke:var(--slate-100,#f1f3f4)}.gen-progress-ring-fill{stroke:url(#genGrad);stroke:#7c3aed;stroke:var(--primary-500,#7c3aed);transition:stroke-dashoffset .9s cubic-bezier(.4,0,.2,1)}.gen-progress-pct{align-items:center;color:#202124;color:var(--slate-800,#202124);display:flex;font-family:var(--font-main);font-size:1.6rem;font-weight:800;inset:0;justify-content:center;letter-spacing:-1px;position:absolute}.gen-progress-label{color:#7c3aed;color:var(--primary-500,#7c3aed);font-size:.85rem;font-weight:600;letter-spacing:.6px;min-height:1.2em;text-transform:uppercase;transition:opacity .3s ease}.gen-progress-title{color:#202124;color:var(--slate-800,#202124);font-family:var(--font-main);font-size:1.3rem;font-weight:800}.gen-progress-subtitle{color:#9aa0a6;color:var(--slate-400,#9aa0a6);font-size:.85rem}.generator-header h2{color:var(--slate-800);font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.generator-header p{color:var(--slate-500);font-size:.95rem}.topic-grid{display:flex;flex-wrap:wrap;gap:.65rem;margin:1.25rem 0;padding:.5rem 0}.topic-chip{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:linear-gradient(135deg,#ffffffe6,#f8fafcb3);border:1.5px solid #e2e8f0;border:1.5px solid var(--slate-200,#e2e8f0);border-radius:9999px;box-shadow:0 2px 5px #00000008;color:#334155;color:var(--slate-700,#334155);cursor:pointer;display:inline-flex;font-family:Inter,sans-serif;font-family:var(--font-main,"Inter",sans-serif);font-size:.88rem;font-weight:600;gap:.5rem;padding:.6rem 1.15rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.topic-chip-icon{font-size:1.05rem;line-height:1;transition:transform .25s ease}.topic-chip:hover .topic-chip-icon{transform:scale(1.2) rotate(6deg)}.topic-chip-text{letter-spacing:-.2px}.topic-chip-check{align-items:center;animation:popIn .25s cubic-bezier(.175,.885,.32,1.275);background:#ffffff40;border-radius:50%;color:#fff;display:inline-flex;font-size:.75rem;font-weight:800;height:18px;justify-content:center;margin-left:.15rem;width:18px}@keyframes popIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.topic-chip:hover{background:linear-gradient(135deg,#fff,#f1f5f9);border-color:#a78bfa;border-color:var(--primary-400,#a78bfa);box-shadow:0 6px 16px #7c3aed24;color:#5b21b6;color:var(--primary-700,#5b21b6);transform:translateY(-2px)}.topic-chip.selected{background:linear-gradient(135deg,#7c3aed,#6366f1);background:linear-gradient(135deg,var(--primary-600,#7c3aed),var(--primary-500,#6366f1));border-color:#0000;box-shadow:0 6px 18px #7c3aed59;color:#fff;transform:translateY(-1px) scale(1.02)}.details-composer textarea{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);font-family:var(--font-main);font-size:.95rem;padding:1rem;resize:vertical;transition:var(--transition-fast);width:100%}.details-composer textarea:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #1a73e826;outline:none}.generate-story-btn{align-items:center;background:var(--primary-500);border:none;border-radius:var(--radius-md);color:var(--gray-900);cursor:pointer;display:flex;font-family:var(--font-main);font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 2rem;transition:var(--transition-fast);width:fit-content}.generate-story-btn:hover:not(:disabled){background:var(--primary-600);color:var(--gray-900)}.generate-story-btn:disabled{cursor:not-allowed;opacity:.5}.generator-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.generate-default-btn{align-items:center;background:linear-gradient(135deg,var(--accent) 0,#ff8f00 100%);border:none;border-radius:var(--radius-md);box-shadow:0 4px 10px #fbbc0426;color:var(--gray-900);cursor:pointer;display:flex;font-family:var(--font-main);font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 2rem;transition:all .2s var(--transition-soft);width:fit-content}.generate-default-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--accent-hover) 0,#e65100 100%);box-shadow:0 6px 14px #fbbc0440;color:var(--gray-900);transform:translateY(-1px)}.generate-default-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.btn-icon{align-items:center;display:flex;justify-content:center}.settings-toggle-container{display:flex;justify-content:flex-start}.settings-toggle-btn{align-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-700);cursor:pointer;display:flex;font-family:var(--font-main);font-size:.85rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all var(--transition-fast)}.settings-toggle-btn:hover{background:var(--slate-50)}.settings-toggle-btn.active{background:var(--slate-100);border-color:var(--slate-300)}.generator-settings-panel{animation:slide-down .4s var(--transition-soft);background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.5rem}.settings-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.setting-group{display:flex;flex-direction:column;gap:.5rem}.setting-group label{color:var(--slate-500);font-size:.7rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.setting-chips{display:flex;gap:.45rem}.setting-chip{background:#fff;border:1.5px solid #e2e8f0;border:1.5px solid var(--slate-200,#e2e8f0);border-radius:var(--radius-md);box-shadow:0 1px 3px #00000005;color:#475569;color:var(--slate-600,#475569);cursor:pointer;flex:1 1;font-family:var(--font-main);font-size:.78rem;font-weight:600;padding:.55rem .4rem;text-align:center;transition:all .25s cubic-bezier(.4,0,.2,1)}.setting-chip:hover{background:linear-gradient(135deg,#fff,#f8fafc);border-color:#c4b5fd;border-color:var(--primary-300,#c4b5fd);color:#5b21b6;color:var(--primary-700,#5b21b6);transform:translateY(-1px)}.setting-chip.active{background:linear-gradient(135deg,#7c3aed,#6366f1);background:linear-gradient(135deg,var(--primary-600,#7c3aed),var(--primary-500,#6366f1));border-color:#0000;box-shadow:0 4px 12px #7c3aed47;color:#fff;transform:translateY(-1px)}.premium-text-input{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-900);font-family:var(--font-main);font-size:.9rem;font-weight:500;padding:.5rem .75rem;transition:all var(--transition-fast)}.premium-text-input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #1a73e826;outline:none}.premium-select{color:var(--slate-900);cursor:pointer;font-size:.9rem;padding:.5rem .75rem}.checkbox-group{align-items:flex-start;display:flex;justify-content:flex-end}.switch-label{align-items:center;color:var(--slate-700);cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:.5rem;margin-top:1.5rem}.switch-label input[type=checkbox]{accent-color:var(--primary-500);cursor:pointer;height:16px;width:16px}.checkbox-text{-webkit-user-select:none;user-select:none}.popular-science-section{align-items:flex-start;display:flex;flex-direction:column;gap:.75rem;grid-column:1/-1;justify-content:flex-start;margin-top:.5rem}.main-popular-science-switch{margin-top:.5rem}.popular-science-suboptions{animation:fade-in .3s ease-out;border-left:2px solid var(--primary-200);display:flex;flex-direction:column;gap:.5rem;margin-top:.25rem;padding-left:1.5rem}.sub-checkbox-label{color:var(--slate-600);font-size:.8rem;margin-top:0!important}.sub-checkbox-label input[type=checkbox]{height:14px;width:14px}.generator-top-tabs{border-bottom:2px solid #f1f5f9;border-bottom:2px solid var(--slate-100,#f1f5f9);display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem;padding-bottom:.75rem}.gen-tab-btn{align-items:center;background:#f8fafc;background:var(--slate-50,#f8fafc);border:1.5px solid #e2e8f0;border:1.5px solid var(--slate-200,#e2e8f0);border-radius:9999px;color:#475569;color:var(--slate-600,#475569);cursor:pointer;display:inline-flex;font-family:Inter,sans-serif;font-family:var(--font-main,"Inter",sans-serif);font-size:.95rem;font-weight:600;gap:.5rem;padding:.65rem 1.25rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.gen-tab-btn:hover{background:var(--accent-light);border-color:var(--accent);color:var(--gray-900);transform:translateY(-1px)}.gen-tab-btn.active{background:var(--accent);border-color:#0000;box-shadow:0 4px 12px #fbbc0440;color:var(--gray-900)}.gen-tab-icon{font-size:1.15rem}.gen-tab-badge{background:#fff3;border-radius:9999px;font-size:.75rem;font-weight:700;letter-spacing:.3px;padding:.15rem .6rem;text-transform:uppercase}.gen-tab-btn:not(.active) .gen-tab-badge{background:#e2e8f0;background:var(--slate-200,#e2e8f0);color:#334155;color:var(--slate-700,#334155)}.paste-quick-trigger-banner{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1.5px dashed var(--accent);border-radius:12px;border-radius:var(--radius-md,12px);cursor:pointer;margin-top:1rem;padding:1.1rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.paste-quick-trigger-banner:hover{background:linear-gradient(135deg,var(--gray-0),var(--accent-light));border-color:var(--accent-hover);box-shadow:0 8px 20px #fbbc041f;transform:translateY(-2px)}.trigger-content{align-items:center;display:flex;gap:1rem}.trigger-icon{font-size:1.8rem}.trigger-content strong{color:#5b21b6;color:var(--primary-700,#5b21b6);font-size:1.05rem}.trigger-content p{color:#64748b;color:var(--slate-500,#64748b);font-size:.88rem;font-weight:500;margin:.2rem 0 0}.paste-mode-panel{animation:fade-in .35s cubic-bezier(.16,1,.3,1);background:#ffffffe6;border:1px solid #ddd6fe;border:1px solid var(--primary-200,#ddd6fe);border-radius:16px;border-radius:var(--radius-md,16px);box-shadow:0 10px 30px -5px #7c3aed14;display:flex;flex-direction:column;gap:1.5rem;padding:1.75rem}.paste-header h3{color:#1e293b;color:var(--slate-800,#1e293b);font-size:1.45rem;font-weight:800;margin-bottom:.35rem}.paste-header p{color:#475569;color:var(--slate-600,#475569);font-size:.95rem;line-height:1.55;margin:0}.paste-form-group{display:flex;flex-direction:column;gap:.5rem}.paste-form-group label{color:#334155;color:var(--slate-700,#334155);font-size:.95rem;font-weight:700}.paste-form-group label,.paste-textarea-label{align-items:center;display:flex;justify-content:space-between}.paste-textarea-label{width:100%}.paste-counter-badge{background:#ede9fe;background:var(--primary-100,#ede9fe);border-radius:9999px;color:#6d28d9;color:var(--primary-700,#6d28d9);font-size:.8rem;font-weight:700;padding:.25rem .75rem}.paste-textarea{background:#f8fafc;background:var(--slate-50,#f8fafc);border:1.5px solid #e2e8f0;border:1.5px solid var(--slate-200,#e2e8f0);border-radius:12px;border-radius:var(--radius-md,12px);color:#1e293b;color:var(--slate-800,#1e293b);font-family:Inter,sans-serif;font-family:var(--font-main,"Inter",sans-serif);font-size:.98rem;line-height:1.6;min-height:220px;padding:1rem;resize:vertical;transition:all .2s ease;width:100%}.paste-textarea:focus{background:#fff;border-color:#7c3aed;border-color:var(--primary-500,#7c3aed);box-shadow:0 0 0 4px #7c3aed1f;outline:none}.paste-actions{align-items:center;display:flex;gap:1rem}.load-pasted-btn{align-items:center;background:var(--accent);border:none;border-radius:12px;border-radius:var(--radius-md,12px);box-shadow:0 4px 14px #fbbc0440;color:var(--gray-900);cursor:pointer;display:inline-flex;font-size:1.05rem;font-weight:700;gap:.65rem;justify-content:center;padding:.85rem 1.75rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.load-pasted-btn:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 8px 22px #fbbc0459;color:var(--gray-900);transform:translateY(-2px)}.load-pasted-btn:disabled{cursor:not-allowed;opacity:.6}.paste-clear-btn{background:#0000;border:1.5px solid #cbd5e1;border:1.5px solid var(--slate-300,#cbd5e1);border-radius:12px;border-radius:var(--radius-md,12px);color:#475569;color:var(--slate-600,#475569);cursor:pointer;font-size:.95rem;font-weight:600;padding:.85rem 1.4rem;transition:all .2s ease}.paste-clear-btn:hover:not(:disabled){background:#f1f5f9;background:var(--slate-100,#f1f5f9);color:#1e293b;color:var(--slate-800,#1e293b)}.paste-clear-btn:disabled{cursor:not-allowed;opacity:.4}@media (max-width:768px){.story-generator{gap:1rem;padding:1rem}.generator-header h2{font-size:1.5rem}.settings-grid{gap:1rem;grid-template-columns:1fr}.switch-label{margin-top:.5rem}.generate-default-btn,.generate-story-btn,.load-pasted-btn,.paste-clear-btn{width:100%}.paste-actions{flex-direction:column}}.reader-container{animation:view-enter .5s var(--transition-soft);display:flex;flex-direction:column;gap:2rem;padding:0}.reader-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.mastery-btn{background:var(--primary-500);border:1px solid #0000;border-radius:var(--radius-md);box-shadow:none;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:var(--transition-fast)}.mastery-btn:hover{background:var(--primary-600)}.toggle-controls{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-700);cursor:pointer;font-weight:600;padding:.6rem 1.2rem;transition:var(--transition-fast)}.toggle-controls:hover{background:var(--slate-100)}.audio-dashboard{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:none;display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem}.control-group label{color:var(--slate-500);display:block;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.premium-select{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-800);font-family:var(--font-main);font-weight:500;outline:none;padding:.75rem;width:100%}.premium-select:focus{border-color:var(--primary-500)}.sliders-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.slider-label{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.slider-label span:first-child{color:var(--slate-700);font-size:.85rem;font-weight:600}.value-chip{background:#1a73e81a;border-radius:var(--radius-sm);color:var(--primary-500);font-size:.75rem;font-weight:700;padding:.15rem .5rem}input[type=range]{accent-color:var(--primary-500);background:var(--slate-200);border-radius:2px;height:4px;width:100%}.playback-actions{display:flex;gap:.75rem;margin-top:.25rem}.playback-btn{align-items:center;background:var(--primary-500);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;flex:2 1;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.25rem;transition:var(--transition-fast)}.playback-btn:hover{background:var(--primary-600)}.playback-btn.active{background:#34a853}.playback-btn.active:hover{background:#2e9447}.stop-btn{align-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-700);cursor:pointer;display:flex;flex:1 1;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.25rem;transition:var(--transition-fast)}.stop-btn:hover:not(:disabled){background:var(--slate-50)}.playback-btn-icon{fill:currentColor;flex-shrink:0;height:18px;width:18px}.story-typography{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:none;color:var(--slate-800);font-size:1.25rem;line-height:1.8;padding:2rem;white-space:pre-wrap}.story-sentence{border-radius:6px;cursor:pointer;padding:2px 6px;position:relative;transition:all .3s ease}.story-sentence:hover{background:#6366f114}.reading-now{color:var(--primary-600)}.header-controls-wrapper{align-items:center;display:flex;gap:.75rem}.clear-story-btn{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);color:#dc2626;cursor:pointer;font-weight:600;padding:.6rem 1.2rem;transition:var(--transition-fast)}.clear-story-btn:hover{background:#fee2e2;border-color:#ef444433;color:#b91c1c}.sentence-hover-popup-wrapper{animation:popup-slide-up .25s cubic-bezier(.16,1,.3,1) forwards;bottom:100%;display:inline-flex;justify-content:center;left:50%;padding-bottom:8px;pointer-events:auto;position:absolute;transform:translateX(-50%);z-index:50}.sentence-hover-popup{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fffffffa;border:1px solid #e2e8f0e6;border-radius:30px;box-shadow:0 10px 25px -5px #00000014,0 8px 16px -6px #0000000a,0 0 0 1px #6366f10d;display:flex;gap:.4rem;padding:.35rem .5rem;white-space:nowrap}.sentence-hover-popup:after{border:6px solid #0000;border-top-color:#fffffffa;content:"";left:50%;pointer-events:none;position:absolute;top:100%;transform:translateX(-50%)}.sentence-hover-btn{align-items:center;background:#0000;border:none;border-radius:20px;color:var(--slate-700);cursor:pointer;display:inline-flex;font-family:var(--font-main);font-size:.75rem;font-weight:700;gap:.35rem;padding:.4rem .8rem;transition:all .2s var(--transition-fast)}.sentence-hover-btn:hover{background:var(--slate-100);color:var(--slate-900)}.sentence-hover-btn.active{background:var(--primary-600);color:#fff!important}.sentence-hover-btn.active:hover{background:var(--primary-700)}.sentence-hover-btn.play-btn:hover:not(.active){background:#6366f11a;color:var(--primary-700)}.sentence-hover-btn.play-all-btn:hover:not(.active){background:#10b9811a;color:#059669}.sentence-hover-btn.stop-btn:hover{background:#fee2e2;color:#dc2626}.sentence-hover-btn:disabled{cursor:not-allowed;opacity:.4}.sentence-hover-btn:disabled:hover{background:#0000;color:var(--slate-700)}.hover-btn-icon{flex-shrink:0;height:12px;width:12px}.btn-text{font-family:var(--font-main)}@keyframes popup-slide-up{0%{opacity:0;transform:translateX(-50%) translateY(8px) scale(.95)}to{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}}@media (max-width:768px){.reader-container{gap:1.25rem}.reader-header{align-items:stretch;flex-direction:column;gap:.75rem}.header-controls-wrapper{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr}.clear-story-btn,.mastery-btn,.toggle-controls{font-size:.85rem;padding:.6rem .8rem;text-align:center}.audio-dashboard{gap:1rem;padding:1rem}.sliders-row{gap:1rem;grid-template-columns:1fr}.playback-actions{flex-direction:column;gap:.5rem}.playback-btn,.stop-btn{font-size:.9rem;padding:.7rem;width:100%}.story-typography{border-radius:var(--radius-md);font-size:1.1rem;line-height:1.6;padding:1.25rem 1rem}}.reader-word{border-radius:4px;border-radius:var(--radius-sm,4px);cursor:pointer;display:inline-block;margin:-1px -3px;padding:1px 3px;position:relative;transition:background-color .25s cubic-bezier(.4,0,.2,1),color .2s ease,transform .2s ease}.reader-word:hover{background-color:#fb8c0026}.reader-word.active-highlight{background-color:#fb8c00!important;box-shadow:0 2px 6px #fb8c0066;color:#fff!important;font-weight:500;transform:scale(1.05);z-index:5}.word-translation-tooltip{animation:tooltip-fade-in .2s cubic-bezier(.4,0,.2,1);background:#fff;background:var(--surface,#fff);border:1px solid #dadce0;border:1px solid var(--border,#dadce0);border-radius:8px;border-radius:var(--radius-md,8px);box-shadow:0 4px 20px #0000001f,0 2px 8px #0000000f;font-family:var(--font-main);padding:12px 16px;pointer-events:auto;position:absolute;width:300px;z-index:10000}@keyframes tooltip-fade-in{0%{opacity:0;transform:translate(-50%,-90%) scale(.95)}to{opacity:1;transform:translate(-50%,-100%) scale(1)}}.word-translation-tooltip .tooltip-content{display:flex;flex-direction:column;gap:8px}.word-translation-tooltip .tooltip-loading-wrapper{align-items:center;display:flex;justify-content:center;padding:8px 0}.word-translation-tooltip .tooltip-loading-spinner{animation:tooltip-spinner .6s linear infinite;border:3px solid #fb8c0033;border-radius:50%;border-top-color:#fb8c00;height:24px;width:24px}@keyframes tooltip-spinner{to{transform:rotate(1turn)}}.word-translation-tooltip .tooltip-original{color:#5f6368;color:var(--slate-500,#5f6368);font-size:.75rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.word-translation-tooltip .tooltip-translation{word-wrap:break-word;color:#202124;color:var(--slate-800,#202124);font-size:1.05rem;font-weight:600;line-height:1.4;margin-bottom:4px;white-space:pre-line}.word-translation-tooltip .tooltip-actions{border-top:1px solid #dadce0;border-top:1px solid var(--border,#dadce0);display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;padding-top:8px}.word-translation-tooltip .tooltip-btn{align-items:center;border:none;border-radius:4px;border-radius:var(--radius-sm,4px);cursor:pointer;display:inline-flex;flex:1 1;font-size:.8rem;font-weight:500;gap:5px;justify-content:center;min-width:calc(50% - 4px);padding:5px 8px;transition:all .15s;transition:all var(--transition-fast,.15s);white-space:nowrap}.word-translation-tooltip .tooltip-btn.read-btn{background-color:#fb8c001a;color:#e65100}.word-translation-tooltip .tooltip-btn.read-btn:hover{background-color:#fb8c0033}.word-translation-tooltip .tooltip-btn.read-btn svg{height:14px;width:14px}.word-translation-tooltip .tooltip-btn.close-btn{background-color:#f1f3f4;background-color:var(--slate-100,#f1f3f4);color:#3c4043;color:var(--slate-700,#3c4043);flex:0 0 100%}.word-translation-tooltip .tooltip-btn.close-btn:hover{background-color:#e8eaed;background-color:var(--slate-200,#e8eaed)}.word-translation-tooltip .tooltip-btn.vocab-btn{background-color:#1987541a;color:#198754}.word-translation-tooltip .tooltip-btn.vocab-btn:hover{background-color:#19875433}.word-translation-tooltip .tooltip-btn.vocab-btn svg{height:14px;width:14px}.word-translation-tooltip:after{border-color:#fff #0000 #0000;border-color:var(--surface,#fff) #0000 #0000 #0000;border-style:solid;border-width:8px 8px 0;z-index:2}.word-translation-tooltip:after,.word-translation-tooltip:before{content:"";display:block;left:50%;position:absolute;top:100%;transform:translateX(-50%);width:0}.word-translation-tooltip:before{border-color:#dadce0 #0000 #0000;border-color:var(--border,#dadce0) #0000 #0000 #0000;border-style:solid;border-width:9px 9px 0;z-index:1}.practice-overlay{align-items:center;background:#20212499;display:flex;height:100%;justify-content:center;left:0;padding:2rem;position:fixed;top:0;width:100%;z-index:3000}.practice-content{animation:modalEnter .4s var(--transition-soft);background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;height:auto;max-height:90vh;max-width:1000px;min-height:550px;overflow:hidden;width:100%}@keyframes modalEnter{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.practice-header{align-items:center;background:var(--slate-50);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1rem 2rem}.phase-indicator{display:flex;gap:.5rem}.phase-indicator .dot{align-items:center;background:#fff;border:1.5px solid #e2e8f0;border:1.5px solid var(--slate-200,#e2e8f0);border-radius:50%;box-shadow:0 2px 4px #00000005;color:#64748b;color:var(--slate-500,#64748b);cursor:pointer;display:flex;font-size:.85rem;font-weight:700;height:32px;justify-content:center;transition:all .25s cubic-bezier(.4,0,.2,1);width:32px}.phase-indicator .dot:hover{border-color:var(--accent);color:var(--accent-hover);transform:translateY(-2px)}.phase-indicator .dot.active{background:var(--accent-light);border-color:var(--accent);color:var(--gray-700)}.phase-indicator .dot.current{background:var(--accent);border-color:#0000;box-shadow:0 4px 12px #fbbc044d;color:var(--gray-900);transform:scale(1.08)}.header-titles h2{color:var(--slate-800);font-size:1.1rem;font-weight:700;margin:0}.sub-hint{color:var(--slate-500);font-size:.7rem;font-weight:600;margin-top:.1rem;text-transform:uppercase}.practice-body{background:#fff;display:flex;flex:1 1;flex-direction:column;overflow-x:hidden;overflow-y:auto;padding:1.5rem 2rem}.phase-1-controls{display:flex;gap:.5rem;margin-bottom:1.25rem}.step-btn{background:#fff;border:1.5px solid #e2e8f0;border:1.5px solid var(--slate-200,#e2e8f0);border-radius:9999px;box-shadow:0 1px 3px #00000005;color:#475569;color:var(--slate-600,#475569);cursor:pointer;font-family:Inter,sans-serif;font-family:var(--font-main,"Inter",sans-serif);font-size:.88rem;font-weight:600;padding:.55rem 1.4rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.step-btn:hover{background:linear-gradient(135deg,#fff,#f8fafc);border-color:var(--accent)}.step-btn.active,.step-btn:hover{color:var(--gray-900);transform:translateY(-1px)}.step-btn.active{background:var(--accent);border-color:#0000;box-shadow:0 4px 12px #fbbc0440}.training-area{display:flex;flex:1 1;flex-direction:column;gap:1rem;min-height:0}.training-text-scroll{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-700);flex:1 1;font-family:var(--font-main);font-size:1.35rem;line-height:1.6;max-height:36vh;min-height:140px;overflow-y:auto;padding:1.5rem}.training-sentence{border-bottom:2px solid #0000;cursor:pointer;padding:0 2px;transition:all .2s ease}.training-sentence:hover{border-color:var(--primary-200);color:var(--primary-500)}.training-sentence.active{border-bottom-color:var(--primary-500);color:var(--primary-600)}.sentence-controller{align-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;gap:1.5rem;justify-content:space-between;margin-top:auto;padding:1rem 1.5rem}.controller-info{display:flex;flex:1 1;flex-direction:column;gap:.5rem}.index-badge{background:var(--slate-700);border-radius:var(--radius-sm);color:#fff;font-size:.65rem;font-weight:700;padding:.25rem .5rem;text-transform:uppercase;width:fit-content}.speak-progress-container{background:var(--slate-100);border-radius:2px;height:4px;overflow:hidden}.speak-progress-bar{background:var(--primary-500);height:100%;transition:width .1s linear;width:0}.speak-progress-bar.pulse{animation:recPulse 1.5s infinite;background:#d93025}@keyframes recPulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.controller-actions{gap:.75rem}.controller-actions,.ctrl-btn{align-items:center;display:flex}.ctrl-btn{background:#fff;border:1px solid var(--border);border-radius:50%;color:var(--slate-700);cursor:pointer;height:40px;justify-content:center;transition:all var(--transition-fast);width:40px}.ctrl-btn:hover:not(:disabled){background:var(--slate-50);border-color:var(--primary-500);color:var(--primary-500)}.ctrl-btn.next-main{background:var(--primary-500);border:none;border-radius:var(--radius-md);color:#fff;font-family:var(--font-main);font-size:.9rem;font-weight:600;padding:0 1.25rem;width:auto}.ctrl-btn.next-main:hover{background:var(--primary-600)}.record-btn.active{background:#d93025;border-color:#d93025;color:#fff}.evaluation-result-box{align-items:center;background:var(--slate-50);border-left:4px solid var(--primary-500);border-radius:var(--radius-md);display:flex;gap:1rem;padding:1rem}.eval-score-circle{align-items:center;background:var(--slate-700);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1rem;font-weight:700;height:48px;justify-content:center;width:48px}.eval-feedback p{margin:0}.eval-transcription{color:var(--slate-500);font-size:.75rem}.eval-corrections{color:var(--slate-800);font-size:.85rem;font-weight:600;margin:.1rem 0}.eval-tip{color:var(--slate-500);font-size:.75rem}.practice-footer{background:var(--slate-50);border-top:1px solid var(--border);display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 2rem}.exit-btn{align-items:center;background:#0000;border:none;color:var(--slate-500);cursor:pointer;display:flex;justify-content:center;padding:.25rem}.exit-btn:hover{color:#d93025}.practice-live-chat-section{animation:modalEnter .5s cubic-bezier(.16,1,.3,1);margin-top:1.25rem;width:100%}.practice-live-chat-trigger{align-items:center;background:linear-gradient(135deg,#fffffff2,#f3f4f6e6);border:1.5px solid #a78bfa73;border-radius:var(--radius-lg);box-shadow:0 10px 30px #7c3aed1f,inset 0 1px 2px #fffc;cursor:pointer;display:flex;gap:1.25rem;justify-content:space-between;padding:1.25rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.practice-live-chat-trigger:hover{border-color:#6366f1;border-color:var(--primary-500,#6366f1);box-shadow:0 14px 38px #7c3aed38;transform:translateY(-3px) scale(1.01)}.live-chat-trigger-orb{align-items:center;display:flex;flex-shrink:0;justify-content:center}.tutor-gemini-orb.mini-orb{box-shadow:0 4px 16px #f0a00059}.tutor-gemini-orb.mini-orb,.tutor-gemini-orb.mini-orb+.orb-pulse-ring-1,.tutor-gemini-orb.mini-orb~.orb-pulse-ring-2{height:64px!important;width:64px!important}.live-chat-trigger-text{flex:1 1}.live-chat-trigger-title{align-items:center;display:flex;gap:.6rem;margin-bottom:.35rem}.live-chat-trigger-title h4{color:#0f172a;color:var(--slate-900,#0f172a);font-size:1.05rem;font-weight:800;margin:0}.read-percent-badge{background:#ede9fe;background:var(--primary-100,#ede9fe);border-radius:9999px;color:#6d28d9;color:var(--primary-700,#6d28d9);font-size:.7rem;font-weight:800;letter-spacing:.03em;padding:.2rem .55rem}.live-dot-pulse{animation:pulseGreen 2s ease-in-out infinite;background-color:#10b981;border-radius:50%;box-shadow:0 0 0 3px #10b98140;display:inline-block;height:10px;width:10px}@keyframes pulseGreen{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.3)}}.live-chat-trigger-text p{color:#475569;color:var(--slate-600,#475569);font-size:.88rem;line-height:1.45;margin:0}.live-chat-trigger-btn{align-items:center;background:linear-gradient(135deg,var(--accent) 0,#ff8f00 100%);border-radius:var(--radius-md);box-shadow:0 4px 12px #fbbc0433;color:var(--gray-900);display:flex;flex-shrink:0;font-size:.9rem;font-weight:700;gap:.5rem;padding:.65rem 1.1rem;transition:all .2s ease}.practice-live-chat-trigger:hover .live-chat-trigger-btn{background:linear-gradient(135deg,var(--accent-hover) 0,#e65100 100%);box-shadow:0 6px 14px #fbbc044d;color:var(--gray-900);transform:translateX(3px)}.practice-live-chat-stage{background:#fffffff5;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 16px 40px #0000001f;display:flex;flex-direction:column;overflow:hidden}.practice-live-header{align-items:center;background:#f8fafc;background:var(--slate-50,#f8fafc);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--slate-200,#e2e8f0);display:flex;justify-content:space-between;padding:1rem 1.5rem}.live-title-row{align-items:center;display:flex;gap:.6rem}.live-title-row h4{color:#1e293b;color:var(--slate-800,#1e293b);font-size:1.05rem;font-weight:800;margin:0}.close-live-chat-btn{background:#0000;border:1px solid #cbd5e1;border:1px solid var(--slate-300,#cbd5e1);border-radius:6px;color:#475569;color:var(--slate-600,#475569);cursor:pointer;font-size:.8rem;font-weight:700;padding:.35rem .85rem;transition:all .2s ease}.close-live-chat-btn:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.practice-live-orb-container{align-items:center;background:radial-gradient(circle at center,#f3f4f6cc,#0000 70%);display:flex;flex-direction:column;justify-content:center;padding:2rem 1.5rem 1.5rem}.practice-live-orb-container .tutor-gemini-orb{align-items:center;border:none;border-radius:50%;cursor:pointer;display:flex;height:120px;justify-content:center;outline:none;position:relative;transition:transform .1s ease,background .5s ease,box-shadow .5s ease;width:120px;z-index:5}.practice-live-orb-container .tutor-gemini-orb+.orb-pulse-ring-1,.practice-live-orb-container .tutor-gemini-orb~.orb-pulse-ring-2{border-radius:50%;height:120px;pointer-events:none;position:absolute;width:120px;z-index:1}.practice-live-orb-container .tutor-gemini-orb.inactive,.practice-live-orb-container .tutor-gemini-orb.standby{background:radial-gradient(circle at 35% 35%,#f0a000,#d08000 60%,#905000);box-shadow:0 8px 30px #f0a00066}.practice-live-orb-container .tutor-gemini-orb.speaking{animation:orb-morph 5s linear infinite alternate;background:linear-gradient(135deg,#4285f4,#9b72f8,#12b5cb);box-shadow:0 0 45px #9b72f88c}.practice-live-orb-container .tutor-gemini-orb.listening{animation:orb-breathe 2s ease-in-out infinite;background:radial-gradient(circle at 35% 35%,#12b5cb,#0097a7 60%,#006064);box-shadow:0 0 45px #12b5cb80}.practice-live-orb-container .tutor-gemini-orb.thinking{animation:orb-rotate-pulse 2s linear infinite;background:linear-gradient(135deg,#1a73e8,#9b72f8);box-shadow:0 0 45px #9b72f873}.practice-live-status-label{color:#334155;color:var(--slate-700,#334155);font-size:.95rem;font-weight:700;margin-top:1.1rem;text-align:center}.practice-live-chat-history{background:#f8fafc;background:var(--slate-50,#f8fafc);border-top:1px solid #e2e8f0;border-top:1px solid var(--slate-200,#e2e8f0);display:flex;flex-direction:column;gap:1rem;max-height:280px;overflow-y:auto;padding:1.25rem 1.5rem}.live-chat-msg{align-items:flex-start;display:flex;gap:.75rem;max-width:88%}.live-chat-msg.user-msg{align-self:flex-end;flex-direction:row-reverse}.msg-avatar{align-items:center;background:#1e293b;background:var(--slate-800,#1e293b);border-radius:50%;box-shadow:0 2px 6px #00000026;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;font-weight:800;height:34px;justify-content:center;width:34px}.live-chat-msg.bot-msg .msg-avatar{background:linear-gradient(135deg,var(--accent) 0,#ff8f00 100%);color:var(--gray-900)}.live-chat-msg.user-msg .msg-avatar{background:var(--accent-hover);color:var(--gray-900)}.msg-content{display:flex;flex-direction:column;gap:.5rem}.msg-bubble{border-radius:var(--radius-md);box-shadow:0 2px 8px #0000000a;font-size:.92rem;line-height:1.45;padding:.85rem 1.15rem}.live-chat-msg.bot-msg .msg-bubble{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--slate-200,#e2e8f0);border-top-left-radius:2px;color:#1e293b;color:var(--slate-800,#1e293b)}.live-chat-msg.user-msg .msg-bubble{background:var(--accent-light);border:1px solid #fbbc0459;border-top-right-radius:2px;color:var(--gray-900)}.chat-eval-card{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--slate-200,#e2e8f0);border-radius:8px;box-shadow:0 2px 6px #00000008;padding:.65rem .85rem}.chat-eval-header{margin-bottom:.35rem}.eval-status-badge{border-radius:4px;font-size:.75rem;font-weight:800;padding:.15rem .5rem}.eval-status-badge.correct{background:#d1fae5;color:#065f46}.eval-status-badge.needs-work{background:#fef3c7;color:#92400e}.chat-eval-feedback{color:#475569;color:var(--slate-600,#475569);font-size:.82rem;line-height:1.4;margin:0}.chat-insertions-card{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:.65rem .85rem}.insertions-title{color:#1e40af;display:block;font-size:.76rem;font-weight:700;margin-bottom:.4rem}.insertions-list{display:flex;flex-wrap:wrap;gap:.4rem}.insertion-chip{background:#fff;border:1px solid #93c5fd;border-radius:6px;color:#1e3a8a;font-size:.75rem;font-weight:600;padding:.15rem .55rem}@media (max-width:768px){.practice-overlay{padding:0}.practice-content{border:none;border-radius:0;height:100vh}.practice-header{padding:.75rem 1rem}.practice-body{padding:1rem}.training-text-scroll{font-size:1.15rem;padding:1rem}.sentence-controller{flex-direction:column;gap:.75rem;padding:1rem}.controller-actions{justify-content:space-between;width:100%}.ctrl-btn.next-main{flex:1 1;justify-content:center}}.notebook-sidebar{align-self:flex-start;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1rem;height:calc(100vh - 180px);padding:1.5rem;position:sticky;top:2rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:320px}.sidebar-header{align-items:center;display:flex;justify-content:space-between}.sidebar-header h2{color:var(--slate-800);font-size:1.15rem;font-weight:700}.header-actions{display:flex;gap:.35rem}.action-icon-btn{align-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-500);cursor:pointer;display:flex;height:32px;justify-content:center;transition:var(--transition-fast);width:32px}.action-icon-btn:hover:not(:disabled){background:var(--slate-50);border-color:var(--primary-500);color:var(--primary-600)}.action-icon-btn.practice{background:var(--primary-500);border:1px solid var(--primary-500);color:var(--gray-900)}.action-icon-btn.practice:hover:not(:disabled){background:var(--primary-600);border-color:var(--primary-600);color:var(--gray-900)}.action-icon-btn.summary{background:#e65100;border:none;color:#fff}.action-icon-btn.summary:hover:not(:disabled){background:#bf360c;color:#fff}.word-count{background:#e8f0fe;border-radius:var(--radius-full);color:var(--primary-600);font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase;width:fit-content}.notebook-scroll-area{flex:1 1;margin:0 -.25rem;overflow-y:auto;padding:0 .25rem}.notebook-scroll-area::-webkit-scrollbar{width:4px}.notebook-scroll-area::-webkit-scrollbar-thumb{background:var(--slate-200);border-radius:2px}.notebook-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}.notebook-card{align-items:center;background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;justify-content:space-between;padding:.75rem;transition:var(--transition-fast)}.notebook-card:hover{background:#fff;border-color:var(--primary-500);box-shadow:var(--shadow-sm)}.word-content{display:flex;flex-direction:column;gap:.1rem}.original-word{font-size:.9rem;font-weight:600}.translated-word{color:var(--slate-500);font-size:.8rem}.card-actions{align-items:center;display:flex;gap:.35rem;position:relative}.menu-trigger-btn{align-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius-full);color:var(--slate-500);cursor:pointer;display:flex;height:28px;justify-content:center;transition:var(--transition-fast);width:28px}.menu-trigger-btn:hover{background:var(--slate-50);border-color:var(--primary-500);color:var(--primary-500)}.card-dropdown-menu{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-premium);display:flex;flex-direction:column;min-width:120px;padding:.35rem 0;position:absolute;right:0;top:calc(100% + 4px);z-index:1000}.dropdown-item{align-items:center;background:#0000;border:none;color:var(--slate-700);cursor:pointer;display:flex;font-family:var(--font-main);font-size:.8rem;font-weight:600;gap:.5rem;padding:.5rem .85rem;text-align:left;transition:var(--transition-fast);width:100%}.dropdown-item:hover{background:var(--slate-50);color:var(--primary-600)}.dropdown-icon{color:var(--slate-400);flex-shrink:0;transition:var(--transition-fast)}.dropdown-item:hover .dropdown-icon{color:inherit}.dropdown-item.delete:hover{background:#fce8e6;color:#d93025}.dropdown-item.delete:hover .dropdown-icon{color:#d93025}.empty-state{color:var(--slate-400);padding:2rem 1rem;text-align:center}.empty-icon{color:var(--slate-300);margin-bottom:.5rem}.hint{font-size:.75rem;margin-top:.25rem}@media (max-width:768px){.notebook-sidebar{box-shadow:none;height:auto;margin-top:1rem;padding:1rem;position:relative;top:0;width:100%}}.explanation-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#11182766;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:6000}.explanation-modal-card{animation:modal-pop .3s cubic-bezier(.34,1.56,.64,1);background:#fff;border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-premium);display:flex;flex-direction:column;max-height:80vh;max-width:90%;overflow-y:auto;padding:1.5rem 2rem;width:500px}.explanation-modal-card::-webkit-scrollbar{width:6px}.explanation-modal-card::-webkit-scrollbar-thumb{background:var(--slate-200);border-radius:3px}@keyframes modal-pop{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.explanation-modal-header{align-items:center;border-bottom:1px solid var(--slate-100);display:flex;justify-content:space-between;padding-bottom:.75rem}.modal-back-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--slate-500);cursor:pointer;display:flex;font-family:var(--font-main);font-size:.85rem;font-weight:700;gap:.35rem;padding:.25rem .5rem;transition:var(--transition-fast)}.modal-back-btn:hover{background:var(--slate-50);color:var(--primary-600)}.modal-close-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-full);color:var(--slate-400);cursor:pointer;display:flex;height:32px;justify-content:center;transition:var(--transition-fast);width:32px}.modal-close-btn:hover{background:var(--slate-100);color:var(--slate-800)}.explanation-modal-body{padding-top:1.5rem}.explanation-title-container{margin-bottom:1.25rem}.word-title{color:var(--slate-900);font-size:2rem;font-weight:800;letter-spacing:-.03em;margin:0;text-transform:capitalize}.phrase-title-interactive{display:flex;flex-wrap:wrap;gap:.25rem .5rem}.interactive-word-span{border:1px solid #0000;border-radius:var(--radius-md);color:var(--slate-900);cursor:pointer;font-size:1.75rem;font-weight:800;letter-spacing:-.02em;padding:.1rem .4rem;transition:all .2s ease}.interactive-word-span:hover{background:#1a73e814;color:var(--primary-600);transform:translateY(-1px)}.interactive-hint{color:var(--slate-400);font-size:.75rem;font-weight:500;margin-bottom:0;margin-top:.4rem}.direct-translations-wrapper{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.direct-label{color:var(--slate-400);font-size:.85rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.direct-translations-list{display:flex;flex-wrap:wrap;gap:.4rem}.direct-trans-chip{background:#1a73e814;border-radius:var(--radius-md);color:var(--primary-600);font-size:.95rem;font-weight:700;padding:.25rem .65rem;text-transform:lowercase}.phonetics-wrapper{margin-bottom:1.25rem}.phonetic-text{background:#e8f0fe;border-radius:var(--radius-full);color:var(--primary-600);font-family:monospace;font-size:.95rem;font-weight:600;padding:.25rem .75rem}.meanings-list{display:flex;flex-direction:column;gap:1.5rem}.meaning-item{border-bottom:1px solid var(--slate-100);padding-bottom:1.5rem}.meaning-item:last-child{border-bottom:none;padding-bottom:0}.part-of-speech-badge{background:var(--slate-900);border-radius:var(--radius-sm);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:.2rem .6rem;text-transform:uppercase}.meaning-definitions{display:flex;flex-direction:column;gap:.6rem;margin-top:.75rem}.definition-row{align-items:flex-start;display:flex;gap:.75rem}.lang-label{align-items:center;background:var(--slate-100);border-radius:4px;color:var(--slate-500);display:flex;flex-shrink:0;font-size:.65rem;font-weight:800;height:20px;justify-content:center;margin-top:.15rem;width:24px}.definition-text{color:var(--slate-800);font-size:.95rem;line-height:1.5;margin:0}.definition-text.en{color:var(--slate-600)}.examples-section{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);margin-top:1rem;padding:.85rem 1rem}.examples-section h4{color:var(--slate-400);font-size:.75rem;font-weight:700;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase}.examples-list{display:flex;flex-direction:column;gap:.6rem;list-style:none;margin:0;padding:0}.example-item{border-bottom:1px dashed var(--slate-200);padding-bottom:.5rem}.example-item:last-child{border-bottom:none;padding-bottom:0}.example-en{color:var(--slate-700);font-size:.85rem;font-style:italic;margin:0}.example-pl{color:var(--slate-500);font-size:.8rem;margin:.15rem 0 0}.no-meanings{color:var(--slate-400);font-size:.9rem;font-style:italic}.explanation-loading-container{display:flex;flex-direction:column;gap:.85rem;padding:1.5rem 0}.skeleton-line{animation:loading-pulse 1.5s infinite;background:linear-gradient(90deg,var(--slate-100) 25%,var(--slate-200) 50%,var(--slate-100) 75%);background-size:200% 100%;border-radius:4px;height:14px}.skeleton-line.title{height:24px;width:45%}.skeleton-line.short{width:60%}@keyframes loading-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.explanation-error-container{padding:2rem 0;text-align:center}.error-message{color:#d93025;font-size:.95rem;font-weight:500;margin-bottom:1rem}.practice-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a80;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:1010}.practice-modal-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-width:600px;overflow:hidden;width:100%}.practice-modal-header{align-items:center;background:var(--slate-50);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.practice-modal-header h3{color:var(--slate-800);font-size:1.25rem;font-weight:700;margin:0}.practice-modal-header .close-btn{background:none;border:none;color:var(--slate-500);cursor:pointer;font-size:1.75rem;line-height:1;padding:0;transition:color var(--transition-fast)}.practice-modal-header .close-btn:hover{color:var(--slate-900)}.practice-modal-body{display:flex;flex-direction:column;gap:1.5rem;max-height:70vh;overflow-y:auto;padding:1.5rem}.target-text-container{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem}.target-label{color:var(--slate-500);font-size:.8rem;font-weight:700;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.target-text{color:var(--slate-800);font-size:1.15rem;font-style:italic;font-weight:600;line-height:1.5;margin:0}.practice-actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn-record-voice,.btn-tts-listen{align-items:center;border:none;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;font-family:var(--font-main);font-size:.95rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all var(--transition-soft)}.btn-tts-listen{background:var(--slate-100);border:1px solid var(--slate-300);color:var(--slate-700)}.btn-tts-listen:hover{background:var(--slate-200);color:var(--slate-900)}.btn-tts-listen.playing{background:#e8f0fe;border-color:var(--primary-300);color:var(--primary-500)}.btn-record-voice{background:var(--primary-500);color:#fff}.btn-record-voice:hover:not(:disabled){background:var(--primary-600);transform:translateY(-1px)}.btn-record-voice.recording{animation:pulse-red 1.5s infinite;background:#ea4335;box-shadow:0 0 0 4px #ea43354d}.record-pulse-dot{background:#fff;border-radius:var(--radius-full);display:inline-block;height:10px;margin-right:.25rem;width:10px}@keyframes pulse-red{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.practice-evaluating{align-items:center;background:var(--slate-50);border:1px dashed var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:1.5rem}.practice-evaluating .spinner{animation:spin 1s linear infinite;border:4px solid var(--slate-200);border-radius:50%;border-top-color:var(--primary-500);height:36px;width:36px}.practice-evaluating p{color:var(--slate-600);font-size:.95rem;font-weight:600;margin:0}.evaluation-results-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem}.evaluation-score-row{align-items:center;display:flex;flex-wrap:wrap;gap:1.25rem}.score-ring{align-items:center;border-radius:var(--radius-full);box-shadow:inset 0 0 0 5px #fff;display:flex;flex-direction:column;font-weight:700;height:80px;justify-content:center;width:80px}.score-ring.excellent{background:#e6f4ea;border:5px solid #34a853;color:#137333}.score-ring.good{background:#e8f0fe;border:5px solid #4285f4;color:#1a73e8}.score-ring.needs-practice{background:#fce8e6;border:5px solid #ea4335;color:#c5221f}.score-number{font-size:1.5rem;line-height:1}.score-label{font-size:.7rem;letter-spacing:.5px;opacity:.8;text-transform:uppercase}.evaluation-tip-box{flex:1 1;min-width:200px}.evaluation-tip-box h4{color:var(--slate-800);font-size:.95rem;font-weight:700;margin:0 0 .25rem}.evaluation-tip{color:var(--slate-600);font-size:.9rem;line-height:1.4;margin:0}.evaluation-detail-section{border-top:1px solid var(--border);display:flex;flex-direction:column;gap:.35rem;padding-top:.75rem}.evaluation-detail-section strong{color:var(--slate-500);font-size:.85rem;letter-spacing:.5px;text-transform:uppercase}.transcription-text{color:var(--slate-700);font-size:.95rem;font-style:italic;margin:0}.corrections-text{color:#c5221f;font-size:.95rem;line-height:1.4;margin:0}.mispronounced-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.mispronounced-chip{background:#fce8e6;border:1px solid #fadbd8;border-radius:var(--radius-sm);color:#c5221f;font-size:.8rem;font-weight:600;padding:.25rem .6rem}.perfect-text{background:#e6f4ea;border:1px solid #c4e1a4;border-radius:var(--radius-md);color:#137333;font-weight:600;margin:0;padding:.75rem;text-align:center}.practice-modal-footer{background:var(--slate-50);border-top:1px solid var(--border);display:flex;justify-content:flex-end;padding:1rem 1.5rem}.btn-close-footer{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-700);cursor:pointer;font-family:var(--font-main);font-weight:600;padding:.5rem 1.25rem;transition:all var(--transition-fast)}.btn-close-footer:hover{background:var(--slate-100);color:var(--slate-900)}.saved-stories-container{animation:view-enter .5s var(--transition-soft);display:flex;flex-direction:column;gap:1.5rem;height:100%}.saved-stories-header{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between}.header-meta h2{color:var(--slate-800);font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.header-meta .subtitle{color:var(--slate-500);font-size:.9rem;font-weight:500}.search-wrapper{max-width:320px;position:relative;width:100%}.story-search-input{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--slate-900);font-family:var(--font-main);font-size:.85rem;font-weight:500;padding:.5rem 1rem .5rem 2.25rem;transition:all var(--transition-fast);width:100%}.story-search-input:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #1a73e826;outline:none}.search-icon{align-items:center;color:var(--slate-500);display:flex;justify-content:center;top:50%;transform:translateY(-50%)}.search-icon svg{display:block}.error-banner{background:#fce8e6;border:1px solid #d93025;border-radius:var(--radius-md);color:#d93025;font-size:.85rem;font-weight:600;padding:.75rem 1.25rem;text-align:center}.loading-state{align-items:center;color:var(--slate-500);display:flex;flex-direction:column;font-weight:500;gap:1rem;justify-content:center;padding:4rem 0}.spinner{animation:spin 1s linear infinite;border:3px solid var(--slate-200);border-radius:50%;border-top-color:var(--primary-500);height:32px;width:32px}.stories-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));overflow-y:auto;padding-bottom:2rem}.story-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:all var(--transition-fast)}.story-card:hover{border-color:var(--primary-500);box-shadow:var(--shadow-md)}.story-card-body{display:flex;flex-direction:column;gap:.5rem;padding:1.25rem}.story-card-title-row{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.story-title{color:var(--slate-800);font-size:1.05rem;font-weight:700;line-height:1.4;margin:0}.delete-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:50%;color:var(--slate-500);cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;transition:all var(--transition-fast);width:24px}.delete-btn:hover{background:#fce8e6;border-color:#d93025;color:#d93025}.story-date{color:var(--slate-400);font-size:.7rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.story-snippet{color:var(--slate-600);font-size:.85rem;line-height:1.5;margin:.25rem 0 0}.story-card-footer{background:var(--slate-50);border-top:1px solid var(--border);display:flex;justify-content:flex-end;padding:.75rem 1.25rem}.read-action-text{color:var(--primary-600);font-size:.75rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.empty-stories-state{background:#fff;border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--slate-400);margin:2rem auto;max-width:500px;padding:4rem 1.5rem;text-align:center}.empty-stories-state .empty-icon{align-items:center;color:var(--slate-300);display:flex;justify-content:center;margin-bottom:1rem}.empty-stories-state h3{color:var(--slate-800);font-size:1.1rem;font-weight:700;margin-bottom:.25rem}.empty-stories-state p{color:var(--slate-500);font-size:.85rem;line-height:1.5;margin:0 auto;max-width:360px}.card-actions-wrapper{gap:.35rem}.card-actions-wrapper,.edit-btn{align-items:center;display:flex;flex-shrink:0}.edit-btn{background:#0000;border:1px solid var(--border);border-radius:50%;color:var(--slate-500);cursor:pointer;height:24px;justify-content:center;transition:all var(--transition-fast);width:24px}.edit-btn:hover{background:var(--slate-50);border-color:var(--primary-500);color:var(--primary-500)}.editing-row{align-items:center;display:flex;gap:.5rem;width:100%}.edit-title-input{background:var(--slate-50);border:1px solid var(--primary-500);border-radius:var(--radius-sm);color:var(--slate-900);flex:1 1;font-family:var(--font-main);font-size:1rem;font-weight:600;line-height:1.4;padding:.25rem .5rem;width:100%}.edit-title-input:focus{background:#fff;box-shadow:0 0 0 3px #1a73e826;outline:none}.edit-actions{display:flex;gap:.25rem}.cancel-btn,.save-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:50%;cursor:pointer;display:flex;height:24px;justify-content:center;transition:all var(--transition-fast);width:24px}.save-btn:hover{background:#e6f4ea;border-color:#137333;color:#137333}.cancel-btn:hover{background:#fce8e6;border-color:#d93025;color:#d93025}.story-card.editing{border-color:var(--primary-500);box-shadow:var(--shadow-sm);cursor:default}@media (max-width:768px){.saved-stories-header{align-items:stretch;flex-direction:column;gap:1rem}.search-wrapper{max-width:100%}.stories-grid{gap:1rem;grid-template-columns:1fr}}.auth-wrapper{align-items:center;background-color:#f8f9fa;background-image:radial-gradient(circle at center,#fbbc0414 0,#f1f3f466 100%);display:flex;font-family:var(--font-main);height:100vh;justify-content:center;left:0;overflow:hidden;padding:1.5rem;position:fixed;top:0;width:100vw;z-index:5000}.auth-glow-orb-1{animation:orbFloat 14s ease-in-out infinite alternate;background:radial-gradient(circle,#fbbc041f 0,#0000 70%);filter:blur(60px);height:450px;left:-100px;top:-100px;width:450px}.auth-glow-orb-1,.auth-glow-orb-2{pointer-events:none;position:absolute}.auth-glow-orb-2{animation:orbFloat 18s ease-in-out infinite alternate-reverse;background:radial-gradient(circle,#fbbc0414 0,#0000 70%);bottom:-150px;filter:blur(80px);height:500px;right:-100px;width:500px}@keyframes orbFloat{0%{transform:translate(0) scale(1)}50%{transform:translate(30px,45px) scale(1.05)}to{transform:translate(-15px,-20px) scale(.95)}}.auth-card{align-items:stretch;animation:cardEnter .6s cubic-bezier(.16,1,.3,1);background:#fff;background:var(--surface,#fff);border:1px solid #e0e0e0;border:1px solid var(--gray-300,#e0e0e0);border-radius:20px;box-shadow:0 10px 30px #3c404314,0 1px 8px #3c40430a;display:flex;flex-direction:column;max-width:440px;padding:3rem 2.5rem;position:relative;width:100%;z-index:10}@keyframes cardEnter{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-brand{margin-bottom:2rem;text-align:center}.auth-brand h2.brand-title{color:#202124;color:var(--gray-900,#202124);font-family:var(--font-display);font-size:2.6rem;font-weight:700;letter-spacing:-.5px;margin-bottom:.15rem}.brand-subtitle.italic-subtitle{color:#5f6368;color:var(--gray-500,#5f6368);font-size:1.05rem;font-style:italic;opacity:.95}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.auth-error-banner{background:#fdf2f2;border:1px solid #f8b4b4;border-radius:8px;color:#c81e1e;font-size:.85rem;font-weight:500;line-height:1.4;padding:.875rem;text-align:center}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{color:#3c4043;color:var(--gray-700,#3c4043);font-size:.75rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.input-group input{border:1px solid #dadce0;border:1px solid var(--gray-400,#dadce0);border-radius:8px;color:#202124;color:var(--gray-900,#202124);font-family:var(--font-main);font-size:.95rem;padding:.875rem 1.25rem;transition:all .2s;transition:all var(--transition-fast,.2s)}.input-group input,.input-group input:focus{background:#fff;background:var(--surface,#fff)}.input-group input:focus{border-color:#fbbc04;border-color:var(--accent,#fbbc04);box-shadow:0 0 0 3px #fbbc0426;outline:none}.auth-submit-btn{align-items:center;background:#fbbc04;background:var(--grad-premium,#fbbc04);border:none;border-radius:8px;box-shadow:0 4px 12px #fbbc0433;color:#202124;cursor:pointer;display:flex;font-size:1rem;font-weight:700;justify-content:center;margin-top:.5rem;padding:1rem;transition:all .2s;transition:all var(--transition-fast,.2s)}.auth-submit-btn:hover:not(:disabled){background:#f2a600;background:var(--accent-hover,#f2a600);box-shadow:0 6px 16px #fbbc044d;transform:translateY(-1px)}.auth-submit-btn:active:not(:disabled){transform:translateY(0)}.auth-submit-btn:disabled{background:#e8eaed;background:var(--gray-200,#e8eaed);box-shadow:none;cursor:not-allowed;opacity:.6}.auth-submit-btn:disabled,.auth-toggle{color:#5f6368;color:var(--gray-500,#5f6368)}.auth-toggle{font-size:.85rem;margin-top:1.5rem;text-align:center}.auth-toggle button{background:none;border:none;color:#f2a600;color:var(--accent-hover,#f2a600);cursor:pointer;font-weight:700;margin-left:.25rem;padding:0;text-decoration:underline;transition:color .2s;transition:color var(--transition-fast,.2s)}.auth-toggle button:hover{color:#d49a00;color:var(--primary-700,#d49a00)}.vocabulary-dashboard{color:var(--gray-900);display:flex;flex-direction:column;font-family:var(--font-main);gap:1.75rem;margin:0 auto;max-width:1200px;min-height:calc(100vh - 80px);padding:2rem 1.5rem}.vocab-header-panel{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.vocab-title-block h1{color:var(--gray-900);font-size:var(--text-headline-sm);font-weight:700;letter-spacing:var(--ls-headline);margin:0 0 .25rem}.vocab-subtitle{color:var(--gray-500);font-size:var(--text-body-md);margin:0}.vocab-header-actions{display:flex;flex-wrap:wrap;gap:.5rem}.action-premium-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-full);color:var(--gray-700);cursor:pointer;display:flex;font-family:var(--font-display);font-size:var(--text-label-lg);font-weight:500;gap:.4rem;padding:.5rem 1rem;transition:all var(--transition-fast)}.action-premium-btn.flashcards-btn{background:var(--accent);border-color:var(--accent);color:var(--gray-900);font-weight:600}.action-premium-btn.flashcards-btn:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.action-premium-btn.email-btn{background:#0000;color:var(--gray-700)}.action-premium-btn.email-btn:hover:not(:disabled){background:var(--gray-100)}.action-premium-btn:disabled{cursor:not-allowed;opacity:.4}.action-premium-btn.secondary-btn{background:#0000;border-color:var(--border);color:var(--gray-500)}.action-premium-btn.secondary-btn:hover{background:var(--gray-100);color:var(--gray-700)}.vocab-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.vocab-stat-card{align-items:center;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;gap:1rem;padding:1.25rem 1.5rem;position:relative;transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.vocab-stat-card:before{display:none}.vocab-stat-card:hover{box-shadow:var(--shadow-md)}.vocab-stat-card.clickable{cursor:pointer}.vocab-stat-card.clickable:hover{border-color:var(--accent);box-shadow:var(--shadow-premium)}.vocab-stat-card.active-filter{background:var(--accent-light);border-color:var(--accent)}.stat-icon{align-items:center;background:var(--gray-100);border-radius:var(--radius-md);display:flex;flex-shrink:0;font-size:1.5rem;height:44px;justify-content:center;width:44px}.vocab-stat-card.active-filter .stat-icon{background:var(--accent-mid)}.stat-content{display:flex;flex-direction:column;flex-grow:1}.stat-value{color:var(--gray-900);font-family:var(--font-display);font-size:1.625rem;font-weight:700;line-height:1}.stat-label{color:var(--gray-500);font-size:var(--text-label-md);font-weight:500;margin-top:3px}.stat-sub{bottom:.75rem;color:var(--gray-400);font-size:var(--text-label-sm);position:absolute;right:1rem}.vocab-controls-bar{align-items:center;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:.75rem 1rem}.search-input-wrapper{align-items:center;display:flex;flex-grow:1;max-width:440px;position:relative}.search-icon{color:var(--gray-400);font-size:1rem;left:.75rem;pointer-events:none;position:absolute}.search-input-wrapper input{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--gray-900);font-family:var(--font-main);font-size:var(--text-body-md);padding:.5rem 2.25rem;transition:all var(--transition-fast);width:100%}.search-input-wrapper input::placeholder{color:var(--gray-400)}.search-input-wrapper input:focus{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light);outline:none}.clear-search-btn{background:#0000;border:none;color:var(--gray-400);cursor:pointer;font-size:.85rem;line-height:1;padding:4px;position:absolute;right:.75rem}.clear-search-btn:hover{color:var(--gray-700)}.filters-group{display:flex;flex-wrap:wrap;gap:1rem}.select-wrapper{align-items:center;color:var(--gray-500);display:flex;gap:.4rem}.select-wrapper,.select-wrapper select{font-size:var(--text-label-lg);font-weight:500}.select-wrapper select{appearance:none;background:var(--gray-50);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a8a8a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:.875rem;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--gray-700);cursor:pointer;font-family:var(--font-main);outline:none;padding:.4rem 2rem .4rem .75rem;transition:border-color var(--transition-fast)}.select-wrapper select:focus{border-color:var(--accent)}.vocab-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.vocab-word-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1rem;justify-content:space-between;padding:1.25rem;transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.vocab-word-card:hover{border-color:var(--gray-300);box-shadow:var(--shadow-md)}.card-top{align-items:center;display:flex;justify-content:space-between}.word-tag{background:var(--accent-light);border-radius:var(--radius-sm);color:var(--accent);font-weight:600;letter-spacing:.06em;padding:2px 8px;text-transform:uppercase}.word-date,.word-tag{font-size:var(--text-label-sm)}.word-date{color:var(--gray-400);font-weight:400}.word-display-area{display:flex;flex-direction:column;gap:.35rem}.original-text{color:var(--gray-900);font-family:var(--font-display);font-size:1.125rem;font-weight:700;letter-spacing:-.01em;margin:0;word-break:break-word}.translated-text{color:var(--gray-500);font-size:var(--text-body-md);line-height:var(--lh-body);margin:0;word-break:break-word}.card-actions-bar{border-top:1px solid var(--border-subtle);display:flex;gap:.25rem;justify-content:space-between;padding-top:.75rem}.card-action-icon-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--gray-400);cursor:pointer;display:flex;height:34px;justify-content:center;transition:all var(--transition-fast);width:34px}.card-action-icon-btn svg{height:16px;width:16px}.card-action-icon-btn:hover{background:var(--gray-100);color:var(--gray-700)}.card-action-icon-btn.speaking{animation:pulse-tts 1.2s ease-in-out infinite;background:var(--accent-light);color:var(--accent)}.card-action-icon-btn.practice-btn:hover{background:#15803d14;color:#15803d}.card-action-icon-btn.delete-btn:hover{background:#b91c1c14;color:#b91c1c}@keyframes pulse-tts{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.vocab-empty-state{align-items:center;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-xl);display:flex;flex-direction:column;justify-content:center;margin:1.5rem auto;max-width:520px;padding:4rem 2rem;text-align:center}.empty-state-illustration{font-size:3rem;margin-bottom:1.25rem}.vocab-empty-state h3{color:var(--gray-900);font-size:var(--text-title-lg);font-weight:700;margin:0 0 .5rem}.vocab-empty-state p{color:var(--gray-500);font-size:var(--text-body-md);line-height:var(--lh-body);margin:0 0 1.25rem;max-width:380px}.vocab-loading-wrapper{color:var(--gray-500);justify-content:center;padding:4rem 0}.vocab-error-wrapper,.vocab-loading-wrapper{align-items:center;display:flex;flex-direction:column}.vocab-error-wrapper{gap:1rem;margin:2rem auto;max-width:500px;padding:3rem;text-align:center}.error-text{color:#b91c1c;font-weight:600}.vocab-modal-overlay{align-items:center;animation:fade-in .2s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#00000052;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:1000}.vocab-modal-card{animation:zoom-in .25s cubic-bezier(.34,1.56,.64,1);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;gap:1rem;max-width:460px;padding:2rem;width:100%}.vocab-modal-card h3{color:var(--gray-900);font-size:var(--text-title-lg);font-weight:700;letter-spacing:var(--ls-title);margin:0}.modal-description{color:var(--gray-500);font-size:var(--text-body-md);line-height:var(--lh-body);margin:0}.premium-modal-input{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--gray-900);font-family:var(--font-main);font-size:var(--text-body-md);outline:none;padding:.625rem 1rem;transition:all var(--transition-fast);width:100%}.premium-modal-input:focus{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.modal-actions{display:flex;gap:.75rem;margin-top:.25rem}.email-status-text{border-radius:var(--radius-md);font-size:var(--text-label-lg);font-weight:600;padding:6px 12px}.email-status-text.loading{background:var(--accent-light);color:var(--accent)}.email-status-text.success{background:#15803d14;color:#15803d}.email-status-text.error{background:#b91c1c14;color:#b91c1c}.flashcards-fullpage-overlay{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0006;bottom:0;display:flex;justify-content:center;left:0;padding:1.5rem;position:fixed;right:0;top:0;z-index:1000}.flashcards-wrapper-modal{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:90vh;max-width:640px;overflow-y:auto;padding:2rem;position:relative;width:100%}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes zoom-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fade-in .35s ease-out both}.delay-1{animation-delay:.08s}.delay-2{animation-delay:.16s}.mnemonic-trigger-btn{align-items:center;background:#0000;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--gray-500);cursor:pointer;display:inline-flex;font-size:var(--text-label-md);font-weight:500;gap:.35rem;margin-top:.5rem;padding:.3rem .7rem;transition:all var(--transition-fast)}.mnemonic-trigger-btn:hover{background:var(--gray-100);border-color:var(--gray-400);color:var(--gray-700)}.mnemonic-trigger-btn.active{background:var(--accent);border-color:var(--accent);color:var(--gray-900)}.mnemonic-accordion-content{border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem;padding-top:.75rem;width:100%}.mnemonic-loading{align-items:center;color:var(--gray-400);display:flex;font-size:var(--text-body-sm);gap:.5rem;padding:.5rem 0}.spinner-mini{animation:spin .8s linear infinite;border:2px solid var(--gray-200);border-radius:50%;border-top-color:var(--accent);height:14px;width:14px}.mnemonic-error{color:#b91c1c;font-size:var(--text-body-sm);padding:.5rem 0}.mnemonic-data{gap:.5rem}.mnemonic-data,.mnemonic-section{display:flex;flex-direction:column}.mnemonic-section{gap:.15rem}.mnemonic-label{color:var(--gray-400);font-size:var(--text-label-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.mnemonic-val{color:var(--gray-700);font-size:var(--text-body-md);line-height:var(--lh-body);margin:0}.audio-anchor-section{background:var(--accent-light);border-left:3px solid var(--accent);border-radius:var(--radius-sm);padding:.4rem .65rem}.anchor-val{color:var(--accent);font-weight:700}.anchor-val,.scene-val{font-size:var(--text-body-md)}.scene-val{font-style:italic;line-height:1.45}.bold-uppercase-term{background:var(--accent-light);border-radius:3px;color:var(--accent);font-weight:700;padding:.05rem .2rem}@keyframes spin{to{transform:rotate(1turn)}}.animate-slide-down{animation:slideDown .25s cubic-bezier(.4,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.vocabulary-dashboard{gap:1.25rem;padding:1rem 1rem 80px}.vocab-header-panel{align-items:flex-start;flex-direction:column}.vocab-header-actions{width:100%}.action-premium-btn{flex:1 1;justify-content:center}.vocab-controls-bar{align-items:stretch;flex-direction:column}.filters-group{justify-content:space-between}.select-wrapper{flex:1 1}.select-wrapper select{width:100%}}.vocabulary-drawer-trigger{align-items:center;background:var(--accent);border:1px solid var(--border);border-radius:var(--radius-md) 0 0 var(--radius-md);border-right:none;box-shadow:var(--shadow-md);color:var(--gray-900);cursor:pointer;display:flex;flex-direction:column;gap:.4rem;padding:.85rem .6rem;position:fixed;right:0;top:50%;transform:translateY(-50%);transition:all var(--transition-fast);z-index:990}.vocabulary-drawer-trigger:hover{background:var(--accent-hover);box-shadow:var(--shadow-lg);padding-right:.85rem}.vocabulary-drawer-trigger .trigger-icon{align-items:center;display:flex;justify-content:center}.vocabulary-drawer-trigger .trigger-badge{background:var(--gray-900);border-radius:var(--radius-full);box-shadow:0 1px 3px #0003;color:var(--gray-0);font-size:var(--text-label-sm);font-weight:700;min-width:1.5rem;padding:.15rem .4rem;text-align:center}.vocabulary-drawer-trigger .trigger-label{color:var(--gray-900);font-family:var(--font-display);font-size:var(--text-label-sm);font-weight:600;letter-spacing:.05em;margin-top:.2rem;text-orientation:mixed;text-transform:uppercase;writing-mode:vertical-rl}.vocabulary-drawer-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000026;height:100vh;left:0;opacity:0;pointer-events:none;position:fixed;top:0;transition:opacity var(--transition-soft);width:100vw;z-index:1000}.vocabulary-drawer-overlay.open{opacity:1;pointer-events:auto}.vocabulary-drawer-panel{background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-xl);color:var(--gray-900);display:flex;flex-direction:column;font-family:var(--font-main);height:100vh;position:fixed;right:-420px;top:0;transition:right var(--transition-soft);width:min(420px,100vw);z-index:1001}.vocabulary-drawer-panel.open{right:0}.drawer-header{background:var(--gray-50);border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:.75rem;padding:1.25rem 1.5rem}.drawer-title-row{align-items:center;display:flex;justify-content:space-between}.drawer-title-row h2{color:var(--gray-900);font-family:var(--font-display);font-size:var(--text-title-lg);font-weight:700;margin:0}.drawer-close-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-full);color:var(--gray-500);cursor:pointer;display:flex;justify-content:center;padding:.25rem;transition:all var(--transition-fast)}.drawer-close-btn:hover{background:var(--gray-200);color:var(--gray-900)}.drawer-quick-actions{display:flex;gap:.5rem}.drawer-action-btn{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--gray-700);cursor:pointer;display:flex;flex:1 1;font-family:var(--font-display);font-size:var(--text-label-md);font-weight:500;gap:.4rem;justify-content:center;padding:.5rem .75rem;transition:all var(--transition-fast)}.drawer-action-btn:hover:not(:disabled){background:var(--gray-100);color:var(--gray-900)}.drawer-action-btn:disabled{cursor:not-allowed;opacity:.5}.drawer-action-btn.accent-action{background:var(--accent-light);border-color:var(--accent);color:var(--gray-900);font-weight:600}.drawer-action-btn.accent-action:hover:not(:disabled){background:var(--accent)}.drawer-filter-bar{background:var(--surface);border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1.5rem}.drawer-search-wrapper{position:relative;width:100%}.drawer-search-input{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--gray-900);font-size:var(--text-body-md);outline:none;padding:.5rem 2rem .5rem .75rem;transition:all var(--transition-fast);width:100%}.drawer-search-input:focus{background:var(--surface);border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-mid)}.drawer-search-clear{align-items:center;background:#0000;border:none;border-radius:var(--radius-full);color:var(--gray-500);cursor:pointer;display:flex;justify-content:center;padding:.15rem;position:absolute;right:.5rem;top:50%;transform:translateY(-50%)}.drawer-search-clear:hover{background:var(--gray-200);color:var(--gray-900)}.drawer-type-tabs{background:var(--gray-100);border-radius:var(--radius-md);display:flex;gap:.25rem;padding:.2rem}.drawer-type-tab{background:#0000;border:none;border-radius:var(--radius-sm);color:var(--gray-500);cursor:pointer;flex:1 1;font-size:var(--text-label-sm);font-weight:500;padding:.35rem;text-align:center;transition:all var(--transition-fast)}.drawer-type-tab.active{background:var(--surface);box-shadow:0 1px 3px #0000001a;color:var(--gray-900);font-weight:600}.drawer-content{flex:1 1;gap:.75rem;overflow-y:auto;padding:1rem 1.5rem}.drawer-card,.drawer-content{display:flex;flex-direction:column}.drawer-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;gap:.5rem;padding:.85rem 1rem;position:relative;transition:all var(--transition-fast)}.drawer-card:hover{background:var(--gray-50);border-color:var(--border);box-shadow:var(--shadow-premium)}.drawer-card.expanded{background:var(--surface);border-color:var(--accent);box-shadow:var(--shadow-sm)}.drawer-card-header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between}.drawer-card-text{display:flex;flex-direction:column;gap:.15rem}.drawer-word-original{color:var(--gray-900);font-size:var(--text-title-sm);font-weight:700;line-height:var(--lh-title)}.drawer-word-translated{color:var(--gray-500);font-size:var(--text-body-md)}.drawer-card-header-actions{align-items:center;display:flex;gap:.25rem}.drawer-icon-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-full);color:var(--gray-500);cursor:pointer;display:flex;justify-content:center;padding:.3rem;transition:all var(--transition-fast)}.drawer-icon-btn:hover{background:var(--gray-200);color:var(--gray-900)}.drawer-icon-btn.delete-btn:hover{background:#fce8e6;color:#c5221f}.drawer-icon-btn.playing{animation:pulse-active 1.2s infinite;color:var(--accent-hover)}.drawer-card-details{animation:slide-down .2s ease-out;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;font-size:var(--text-body-sm);gap:.6rem;padding-top:.75rem}.drawer-detail-section{display:flex;flex-direction:column;gap:.15rem}.drawer-detail-label{color:var(--gray-500);font-size:var(--text-label-sm);font-weight:700;letter-spacing:.02em;text-transform:uppercase}.drawer-context-text{color:var(--gray-700);font-style:italic;line-height:var(--lh-body)}.drawer-mnemonic-wrapper{background:var(--accent-light);border-left:3px solid var(--accent);border-radius:var(--radius-sm);color:var(--gray-900);padding:.5rem .75rem;position:relative}.drawer-mnemonic-btn{background:#0000;border:1px dashed var(--accent-hover);border-radius:var(--radius-sm);color:var(--accent-hover);cursor:pointer;font-family:var(--font-display);font-size:var(--text-label-sm);font-weight:600;padding:.35rem .5rem;text-align:center;transition:all var(--transition-fast)}.drawer-mnemonic-btn:hover{background:var(--accent);border-style:solid;color:var(--gray-900)}.drawer-details-actions{display:flex;gap:.4rem;margin-top:.25rem}.drawer-details-btn{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--gray-700);cursor:pointer;display:flex;flex:1 1;font-size:var(--text-label-sm);font-weight:600;gap:.3rem;justify-content:center;padding:.4rem;transition:all var(--transition-fast)}.drawer-details-btn:hover{background:var(--gray-100);border-color:var(--gray-500);color:var(--gray-900)}.drawer-details-btn.practice-btn{background:var(--accent-light);border-color:var(--accent);color:var(--gray-900)}.drawer-details-btn.practice-btn:hover{background:var(--accent)}.drawer-empty{align-items:center;color:var(--gray-500);display:flex;flex-direction:column;gap:.75rem;justify-content:center;padding:3rem 1.5rem;text-align:center}.drawer-empty-icon{color:var(--gray-300)}.drawer-empty-text{color:var(--gray-900);font-size:var(--text-title-sm);font-weight:600}.drawer-empty-hint{color:var(--gray-500);font-size:var(--text-body-sm);line-height:var(--lh-body)}@keyframes pulse-active{0%{opacity:1}50%{opacity:.5}to{opacity:1}}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mediabuddy-container{animation:fadeIn .4s ease-out;display:flex;flex-direction:column;gap:1.5rem;margin:0 auto;max-width:1300px;padding:1.5rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.media-selector-bar{align-items:stretch;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem 2rem}.media-selector-title{color:var(--slate-800);font-size:1.15rem;font-weight:700;margin:0}.media-selector-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.video-tile{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:var(--transition-soft)}.video-tile:hover{border-color:var(--slate-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.video-tile.active{border-color:var(--primary-500);box-shadow:0 0 0 2px #1a73e826}.video-tile-thumbnail-wrapper{aspect-ratio:16/9;background:#000;overflow:hidden;position:relative;width:100%}.video-tile-thumbnail{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.video-tile:hover .video-tile-thumbnail{transform:scale(1.05)}.video-tile-active-badge{background:var(--grad-premium);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);color:var(--gray-900);font-size:.7rem;font-weight:700;left:.5rem;padding:.2rem .5rem;position:absolute;top:.5rem}.video-tile-delete-btn{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-weight:700;height:24px;justify-content:center;opacity:0;position:absolute;right:.5rem;top:.5rem;transition:opacity .2s,background-color .2s;width:24px;z-index:10}.video-tile:hover .video-tile-delete-btn{opacity:1}.video-tile-delete-btn:hover{background:#dc2626e6}.video-tile-info{display:flex;flex-direction:column;flex-grow:1;justify-content:center;padding:.75rem 1rem}.video-tile-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--slate-800);display:-webkit-box;font-size:.85rem;font-weight:600;line-height:1.4;margin:0;overflow:hidden}.media-workspace-grid{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:1.2fr 1fr}@media (max-width:1024px){.media-workspace-grid{grid-template-columns:1fr}}.media-left-column,.media-right-column{display:flex;flex-direction:column;gap:1.5rem}.video-player-wrapper{aspect-ratio:16/9;background:#000;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.youtube-iframe{border:0;display:block;height:100%;width:100%}.glass-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem;transition:var(--transition-soft)}.glass-panel:hover{box-shadow:var(--shadow-md)}.panel-header{align-items:center;border-bottom:2px solid var(--slate-100);color:var(--slate-800);display:flex;font-size:1.1rem;font-weight:700;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.transcript-panel{display:flex;flex-direction:column;max-height:480px}.transcript-list{display:flex;flex:1 1;flex-direction:column;gap:.75rem;overflow-y:auto;padding-right:.5rem}.transcript-list::-webkit-scrollbar{width:6px}.transcript-list::-webkit-scrollbar-track{background:var(--slate-50);border-radius:var(--radius-full)}.transcript-list::-webkit-scrollbar-thumb{background:var(--slate-200);border-radius:var(--radius-full)}.transcript-segment-card{background:var(--slate-50);border:1px solid var(--slate-200);border-radius:var(--radius-md);cursor:pointer;display:flex;gap:1rem;padding:1rem;transition:var(--transition-soft)}.transcript-segment-card:hover{background:#fdfdfd;border-color:var(--primary-500);box-shadow:0 4px 10px #0000000a;transform:translateX(4px)}.transcript-segment-card.active{background:linear-gradient(135deg,#1a73e814,#12b5cb14);border-color:var(--primary-500);box-shadow:0 4px 12px #1a73e826;transform:translateX(6px)}.segment-left-col{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:.35rem}.segment-time-badge{background:var(--slate-200);border-radius:var(--radius-sm);color:var(--slate-500);font-size:.75rem;font-weight:700;padding:.15rem .4rem;transition:var(--transition-fast)}.transcript-segment-card.active .segment-time-badge{background:#1a73e81a;color:var(--primary-600)}.segment-content{display:flex;flex:1 1;flex-direction:column;gap:.75rem}.segment-text-line{color:var(--slate-800);font-size:1.05rem;font-weight:500;line-height:1.5}.media-interactive-word{border-radius:var(--radius-sm);cursor:pointer;display:inline-block;padding:0 .15rem;transition:var(--transition-fast)}.media-interactive-word:hover{background:#12b5cb26;color:var(--secondary-600);transform:scale(1.08)}.segment-actions{display:flex;gap:.5rem}.segment-action-btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-full);cursor:pointer;display:flex;font-family:var(--font-main);font-size:.8rem;font-weight:600;gap:.25rem;padding:.4rem .8rem;transition:var(--transition-fast)}.segment-action-btn.explain{background:#1a73e814;color:var(--primary-500)}.segment-action-btn.explain:hover{background:var(--primary-500);color:var(--gray-900)}.segment-action-btn.practice{background:#12b5cb14;color:var(--secondary-600)}.segment-action-btn.practice:hover{background:var(--secondary-500);color:var(--gray-900)}.quick-dictionary-panel{display:flex;flex-direction:column}.dictionary-placeholder{color:var(--slate-500);font-size:.95rem;line-height:1.6;padding:2rem 1rem;text-align:center}.word-translate-result{display:flex;flex-direction:column;gap:1rem;padding:.5rem 0}.word-header-row{align-items:center;display:flex;justify-content:space-between}.original-word{color:var(--slate-800);font-size:1.4rem;font-weight:800}.word-details-btn{background:#0000;border:1px solid var(--primary-500);border-radius:var(--radius-full);color:var(--primary-500);cursor:pointer;font-family:var(--font-main);font-size:.8rem;font-weight:600;padding:.35rem .75rem;transition:var(--transition-fast)}.word-details-btn:hover{background:var(--primary-500);color:var(--gray-900)}.translated-text{background:var(--slate-50);border-left:4px solid var(--secondary-500);border-radius:var(--radius-md);color:var(--slate-700);font-size:1.15rem;font-weight:500;padding:.75rem 1rem;white-space:pre-line}.btn-save-vocabulary{background:var(--primary-500);border:1px solid var(--primary-500);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--gray-900);cursor:pointer;font-family:var(--font-main);font-size:.9rem;font-weight:700;padding:.65rem 1rem;transition:var(--transition-soft)}.btn-save-vocabulary:hover{background:var(--primary-600);border-color:var(--primary-600);color:var(--gray-900)}.btn-save-vocabulary.saved{background:#15803d;border-color:#15803d;color:#fff;cursor:default}.mini-loader{color:var(--slate-500);font-size:.9rem;font-style:italic}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-up{animation:slideUp .35s cubic-bezier(.4,0,.2,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.animate-pulse{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.phrase-translate-result{display:flex;flex-direction:column;gap:.75rem}.phrase-header-row{align-items:center;display:flex;justify-content:space-between}.phrase-label{color:var(--secondary-600);font-size:.85rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.phrase-status-badge{background:#d9770614;border-radius:var(--radius-sm);color:#d97706;font-size:.75rem;font-weight:600;padding:.15rem .4rem}.phrase-english-text{border-left:3px solid var(--slate-300);color:var(--slate-700);font-size:1rem;font-style:italic;font-weight:600;line-height:1.4;margin:.25rem 0;padding-left:.75rem}.phrase-translated{background:#12b5cb0a;border-left-color:var(--secondary-500)}.custom-video-loader{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.75rem;padding:1.25rem 2rem}.loader-title{color:var(--slate-800);font-size:1rem;font-weight:700;margin:0}.loader-form{display:flex;gap:.75rem}.loader-input{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-800);flex:1 1;font-family:var(--font-main);font-size:.9rem;outline:none;padding:.6rem 1rem;transition:var(--transition-fast)}.loader-input:focus{background:#fff;border-color:var(--primary-500);box-shadow:0 0 0 3px #1a73e826}.loader-btn{background:var(--grad-premium);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--gray-900);cursor:pointer;font-family:var(--font-main);font-size:.9rem;font-weight:700;padding:.6rem 1.5rem;transition:var(--transition-soft)}.loader-btn:hover{box-shadow:var(--shadow-premium);transform:translateY(-1px)}.loader-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.loader-error{color:#dc2626;font-size:.85rem;font-weight:600;margin:0}.manual-paste-section{border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:1rem;margin-top:1.25rem;padding-top:1.25rem}.manual-paste-info{background:#1a73e80a;border:1px solid #1a73e826;border-radius:var(--radius-md);color:var(--slate-600);font-size:.9rem;line-height:1.5;padding:1rem}.manual-paste-info ol{margin:.5rem 0 0 1.25rem;padding:0}.manual-paste-info li{margin-bottom:.25rem}.manual-paste-form{display:flex;flex-direction:column;gap:.75rem}.manual-paste-textarea{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-800);font-family:monospace;font-size:.85rem;line-height:1.4;outline:none;padding:.75rem 1rem;resize:vertical;transition:var(--transition-fast);width:100%}.manual-paste-textarea:focus{background:#fff;border-color:var(--primary-500);box-shadow:0 0 0 3px #1a73e826}.manual-paste-btn{align-self:flex-start;background:#10b981;border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;font-family:var(--font-main);font-size:.9rem;font-weight:700;padding:.6rem 1.5rem;transition:var(--transition-soft)}.manual-paste-btn:hover{background:#059669;box-shadow:0 4px 12px #10b98133;transform:translateY(-1px)}.manual-paste-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.curated-suggestions-section{border-top:1px solid var(--border);display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem;padding-top:1.5rem}.suggestions-title{color:var(--slate-700);font-size:.95rem;font-weight:700;margin:0}.suggestions-controls{display:flex;gap:.75rem}.suggestions-select{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--slate-800);cursor:pointer;flex:1 1;font-family:var(--font-main);font-size:.9rem;outline:none;padding:.6rem 1rem;transition:var(--transition-fast)}.suggestions-select:focus{background:#fff;border-color:var(--primary-500);box-shadow:0 0 0 3px #1a73e826}.suggestions-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:.5rem}.suggestion-item-card{background:var(--slate-50);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;gap:.75rem;padding:.75rem;transition:var(--transition-soft)}.suggestion-item-card:hover{background:#fff;border-color:var(--slate-300);box-shadow:var(--shadow-sm)}.suggestion-thumbnail-wrapper{aspect-ratio:16/9;background:#000;border-radius:var(--radius-sm);flex-shrink:0;overflow:hidden;width:90px}.suggestion-thumbnail{height:100%;object-fit:cover;width:100%}.suggestion-info{display:flex;flex:1 1;flex-direction:column;gap:.35rem}.suggestion-video-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--slate-800);display:-webkit-box;font-size:.85rem;font-weight:700;line-height:1.3;margin:0;overflow:hidden}.suggestion-video-desc{color:var(--slate-500);font-size:.75rem;line-height:1.4;margin:0}.suggestion-load-btn{align-self:flex-start;background:var(--primary-500);border:none;border-radius:var(--radius-sm);color:var(--gray-900);cursor:pointer;font-family:var(--font-main);font-size:.75rem;font-weight:700;margin-top:auto;padding:.35rem .75rem;transition:var(--transition-fast)}.suggestion-load-btn:hover{background:var(--primary-600);color:var(--gray-900);transform:translateY(-.5px)}.suggestion-load-btn:disabled{background:var(--slate-300);color:var(--slate-500);cursor:not-allowed;transform:none}.media-loading-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a99;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}.media-loading-card{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;gap:1.5rem;max-width:400px;padding:3rem;text-align:center}.media-spinner{animation:spin 1.5s linear infinite;border:4px solid var(--slate-200);border-radius:50%;border-top-color:var(--primary-500);height:50px;width:50px}.media-loading-text{color:var(--slate-700);font-size:1rem;font-weight:600;margin:0}.media-selector-row{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.media-selector-row:last-child{margin-bottom:0}.media-selector-row-title{align-items:center;color:var(--slate-700);display:flex;font-size:.9rem;font-weight:700;gap:.5rem}.media-selector-scroll{-webkit-overflow-scrolling:touch;display:flex;gap:1.25rem;overflow-x:auto;padding:.25rem .25rem .75rem;scroll-behavior:smooth}.media-selector-scroll::-webkit-scrollbar{height:6px}.media-selector-scroll::-webkit-scrollbar-track{background:#0000000d;border-radius:10px}.media-selector-scroll::-webkit-scrollbar-thumb{background:var(--slate-300);border-radius:10px}.media-selector-scroll::-webkit-scrollbar-thumb:hover{background:var(--slate-400)}.media-selector-scroll .video-tile{flex:0 0 240px;max-width:240px}.media-selector-empty-text{color:var(--slate-400);font-size:.85rem;font-style:italic;padding:1.5rem 0}.video-tile-progress-bar-wrapper{background:#0003;bottom:0;height:4px;left:0;position:absolute;width:100%}.video-tile-progress-bar{background:var(--primary-500);height:100%;transition:width .3s ease}.media-selector-scroll-wrapper{align-items:center;display:flex;position:relative;width:100%}.scroll-btn{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:50%;box-shadow:var(--shadow-md);color:var(--slate-700);cursor:pointer;display:flex;font-size:1.5rem;height:38px;justify-content:center;line-height:1;outline:none;position:absolute;top:calc(50% - 14px);transform:translateY(-50%);transition:var(--transition-soft);-webkit-user-select:none;user-select:none;width:38px;z-index:15}.scroll-btn:hover{background:var(--slate-50);border-color:var(--slate-400);box-shadow:var(--shadow-lg);color:var(--primary-600);transform:translateY(-50%) scale(1.05)}.scroll-btn:active{transform:translateY(-50%) scale(.95)}.scroll-btn.left{left:-19px}.scroll-btn.right{right:-19px}.media-selector-scroll{margin:0 -.5rem;padding:.5rem .5rem 1rem}.media-selector-row-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:.5rem}.media-selector-sort-controls{align-items:center;display:flex;gap:.5rem}.sort-label{color:var(--slate-500);font-size:.8rem;font-weight:600}.sort-toggle-btn{background:var(--slate-100);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--slate-700);cursor:pointer;font-size:.75rem;font-weight:600;padding:.35rem .75rem;transition:var(--transition-fast)}.sort-toggle-btn:hover{background:var(--slate-200);color:var(--slate-900)}.sort-toggle-btn.active{background:var(--primary-500);border-color:var(--primary-500);color:#fff}.autoscroll-toggle-btn{align-items:center;background:var(--slate-100);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--slate-700);cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:.25rem;padding:.25rem .6rem;transition:var(--transition-fast)}.autoscroll-toggle-btn:hover{background:var(--slate-200);color:var(--slate-900)}.autoscroll-toggle-btn.active{background:var(--primary-500);border-color:var(--primary-500);color:#fff}.transcript-mode-toggle-container{align-items:center;display:flex;font-size:.85rem;gap:1rem;margin-top:.75rem}.toggle-label-text{color:var(--slate-600);font-weight:500}.toggle-switch-wrapper{background:var(--slate-100);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;padding:2px}.toggle-option-btn{background:none;border:none;border-radius:var(--radius-sm);color:var(--slate-600);cursor:pointer;font-size:.8rem;font-weight:600;padding:.35rem .75rem;transition:var(--transition-fast)}.toggle-option-btn:hover{color:var(--slate-800)}.toggle-option-btn.active{background:#fff;box-shadow:var(--shadow-sm);color:var(--primary-600)}.toggle-option-btn.rapidapi-active{background:#fff3cd;box-shadow:0 0 0 2px #ffc10740;color:#856404}.rapidapi-warning-banner{align-items:flex-start;animation:fade-in .3s ease;background:linear-gradient(135deg,#fff8e1,#fff3cd);border:1.5px solid #ffc107;border-left:4px solid #ff8f00;border-radius:var(--radius-md);display:flex;gap:.75rem;margin-top:.75rem;padding:.85rem 1rem}.rapidapi-warning-icon{flex-shrink:0;font-size:1.4rem;line-height:1}.rapidapi-warning-content{flex:1 1;min-width:0}.rapidapi-warning-content strong{color:#7b4f00;display:block;font-size:.88rem;margin-bottom:.3rem}.rapidapi-warning-content p{color:#856404;font-size:.8rem;line-height:1.5;margin:0}.rapidapi-warning-close{background:#ff8f00;border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;flex-shrink:0;font-size:.78rem;font-weight:700;padding:.35rem .75rem;transition:var(--transition-fast);white-space:nowrap}.rapidapi-warning-close:hover{background:#e65100}
/*# sourceMappingURL=main.04b473f5.css.map*/