@import url(https://fonts.googleapis.com/css2?family=Knewave&family=Lilita+One&display=swap);*,:after,:before{box-sizing:border-box}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}body,canvas,html,img,svg,video{max-width:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.lesson-markdown-body{color:#2d3748;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:1rem;line-height:1.6}.lesson-markdown-body h1,.lesson-markdown-body h2,.lesson-markdown-body h3{color:#1a202c;font-weight:700;margin-bottom:.75rem;margin-top:1.5rem}.lesson-markdown-body h1{border-bottom:2px solid #e2e8f0;font-size:1.75rem;padding-bottom:.5rem}.lesson-markdown-body h2{font-size:1.4rem}.lesson-markdown-body h3{font-size:1.15rem}.lesson-markdown-body p{margin-bottom:1rem;margin-top:0}.lesson-markdown-body ol,.lesson-markdown-body ul{margin-bottom:1rem;margin-top:0;padding-left:1.5rem}.lesson-markdown-body li{margin-bottom:.25rem}.lesson-markdown-body table{-webkit-overflow-scrolling:touch;border-collapse:collapse;border-radius:6px;box-shadow:0 1px 3px #0000000d;display:block;font-size:.95rem;margin-bottom:1.5rem;margin-top:1rem;max-width:100%;overflow-x:auto;width:100%}.lesson-markdown-body td,.lesson-markdown-body th{border-bottom:1px solid #edf2f7;padding:10px 12px;text-align:left}.lesson-markdown-body th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;color:#4a5568;font-weight:600}.lesson-markdown-body tr:last-child td{border-bottom:none}.lesson-markdown-body tr:nth-child(2n){background-color:#fcfdfd}.lesson-markdown-body strong{color:#2b6cb0;font-weight:600}.lesson-markdown-body code{background-color:#ebf8ff;border-radius:4px;color:#2b6cb0;font-family:source-code-pro,Menlo,Monaco,Consolas,monospace;font-size:.9rem;padding:2px 6px}@media (max-width:480px){.lesson-markdown-body table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto;width:100%}.lesson-markdown-body h1{font-size:1.5rem}.lesson-markdown-body h2{font-size:1.25rem}.lesson-markdown-body h3{font-size:1.1rem}}.session-complete-fflash{background:#fff;min-height:100vh;padding:0;position:relative}.session-complete-title-fflash{color:#111;font-size:2.4rem;font-weight:800;letter-spacing:1px;margin-bottom:32px;margin-top:18px;text-align:center}.session-complete-card-fflash{align-items:center;animation:popin .5s cubic-bezier(.68,-.55,.27,1.55);background:#fff;border-radius:24px;box-shadow:0 8px 32px #1e3c7221,0 2px 24px 0 #eaf0fa;display:flex;flex-direction:column;margin:0 auto 32px;max-width:900px;min-width:340px;padding:38px 32px 32px}.session-complete-icon-fflash{margin-bottom:10px;margin-top:-18px}.session-summary-title-fflash{color:#43e97b;font-size:1.35rem;font-weight:700;margin-bottom:10px;text-align:center}.session-summary-list-fflash{color:#2a5298;font-size:1.13rem;list-style:none;margin:0 0 10px;padding:0;text-align:center}.session-summary-label-fflash{color:#234;font-weight:700}.session-summary-value-fflash{color:#155724;font-weight:600;margin-left:4px}.session-complete-message-fflash{color:#155724;font-size:1.13rem;font-weight:600;margin-top:18px;text-align:center}.loading-screen-fflash{background:#f5f6fa;height:100vh;margin:0;min-height:0;overflow:hidden;padding:0;position:relative}.settings-btn-fflash{background:none;padding:0;right:24px}.dashboard-btn-fflash,.settings-btn-fflash{border:none;cursor:pointer;position:absolute;top:18px;z-index:1001}.dashboard-btn-fflash{background:#2a5298;border-radius:8px;box-shadow:0 2px 8px #2a52982e;color:#fff;font-size:1rem;font-weight:600;left:24px;padding:8px 18px;transition:background .2s,transform .1s}.dashboard-btn-fflash:hover{background:#1e3c72;transform:scale(1.04)}.dashboard-btn-fflash--centered{margin-top:24px;position:static}.loading-center-fflash{align-items:center;display:flex;flex-direction:column;height:100vh;justify-content:center;margin:0;padding:0}.loading-title-fflash{color:#222c3a;font-size:2.1rem;letter-spacing:2px;margin-bottom:18px}body,html{box-sizing:border-box;height:100%;margin:0;overflow-x:hidden;padding:0}.easy-progress-bar-container{align-items:center;background:#0000;border-radius:16px;box-shadow:0 4px 16px #43e97b1a;display:flex;flex-direction:column;margin:0 auto 24px;max-width:90vw;padding:0;width:360px}.easy-progress-bar{background:#e0e0e0;border-radius:16px;box-shadow:0 2px 8px #43e97b1f;height:22px;margin-bottom:4px;overflow:hidden;position:relative;width:100%}.easy-progress-bar-fill{background:#43e97b;border-radius:16px 0 0 16px;box-shadow:0 2px 8px #43e97b2e;height:100%;transition:width .4s cubic-bezier(.68,-.55,.27,1.55)}.easy-progress-bar-text{color:#155724;font-size:1.05rem;font-weight:700;left:50%;letter-spacing:1px;line-height:22px;position:absolute;text-shadow:0 1px 4px #43e97b1f;top:0;transform:translateX(-50%);z-index:2}.new-icon{align-items:center;animation:popin .5s cubic-bezier(.68,-.55,.27,1.55);background:#38f9d7;border-radius:12px;box-shadow:0 1px 4px #38f9d71f;color:#155724;display:inline-flex;font-size:.95rem;font-weight:600;letter-spacing:.5px;margin-bottom:2px;margin-left:10px;padding:2px 10px 2px 7px}.new-icon svg{font-size:1.1em;margin-right:4px}.error{background:#e74c3c;border:2px solid #c0392b;border-radius:12px;box-shadow:0 4px 16px #e74c3c26;color:#fff;font-weight:700;margin-left:auto;margin-right:auto;margin-top:20px;padding:20px;text-align:center;width:50%}.flashcard-game{align-items:center;background:#f5f6fa;box-sizing:border-box;display:flex;flex-direction:column;font-family:Segoe UI,Roboto,Arial,sans-serif;height:100vh;justify-content:flex-start;margin:0;overflow-x:hidden;padding-top:32px}.flashcard-game h1{color:#222c3a;font-size:2.3rem;letter-spacing:1px;margin-bottom:8px;margin-top:0;text-shadow:none}.flashcard-mode-badge{align-items:center;background:#e0f2fe;border:1px solid #0369a126;border-radius:20px;color:#0369a1;display:inline-flex;font-size:.82rem;font-weight:700;gap:8px;letter-spacing:1.2px;margin-bottom:10px;padding:6px 14px;text-transform:uppercase}.mode-badge-dot{background:#0284c7;border-radius:50%;height:8px;width:8px}.flashcard-subtitle{color:#4a5876;font-size:1.05rem;font-weight:400;line-height:1.5;margin-bottom:24px;max-width:520px;text-align:center}.flashcard-box{align-items:center;animation:popin .5s cubic-bezier(.68,-.55,.27,1.55);background:#fff;border-radius:18px;border-top:5px solid #0284c7;box-shadow:0 10px 32px #0284c71f,0 2px 8px #0000000a;display:flex;flex-direction:column;margin-bottom:32px;max-width:90vw;min-width:340px;padding:40px 32px 32px}@keyframes popin{0%{opacity:0;transform:scale(.85) translateY(40px)}to{opacity:1;transform:scale(1) translateY(0)}}.flashcard-prompt{color:#2a5298;font-size:1.5rem;font-weight:600;margin-bottom:24px;text-align:center}.flashcard-translation{color:#16a085;font-size:1.3rem;font-weight:500;margin-bottom:18px;text-align:center}@keyframes fadein{0%{opacity:0}to{opacity:1}}.show-translation-btn{background:#16a085;border:none;border-radius:8px;box-shadow:0 2px 8px #16a0851f;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-bottom:10px;padding:12px 32px;transition:background .2s,transform .1s}.show-translation-btn:hover{background:#27ae60;transform:scale(1.04)}.rating-section{align-items:center;display:flex;flex-direction:column;margin-top:18px}.rating-section p{color:#2a5298;font-size:1.1rem;font-weight:500;margin-bottom:12px}.rating-buttons{display:flex;flex-direction:row;gap:12px;margin-bottom:8px}.rating-section button{border:none;border-radius:8px;box-shadow:0 1px 4px #1e3c7214;cursor:pointer;font-size:1rem;font-weight:600;margin:0;padding:10px 28px;transition:background .18s,color .18s,transform .1s}.btn-easy{background:#43e97b;color:#000}.btn-easy:hover{background:#38f9d7;color:#000;transform:scale(1.04)}.btn-good{background:#cdff59;color:#000}.btn-good:hover{background:#a0c711;color:#000;transform:scale(1.04)}.btn-hard{background:#ffb347;color:#000}.btn-hard:hover{background:#fc3;color:#4d3200;transform:scale(1.04)}.btn-noclue{background:#e74c3c;color:#fff}.btn-noclue:hover{background:#8e0e00;color:#fff;transform:scale(1.04)}.exit-btn{background:#280c24;border:none;border-radius:8px;box-shadow:0 2px 8px #e74c3c1f;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:24px;padding:10px 32px;transition:background .2s,transform .1s}.exit-btn:hover{background:#000;transform:scale(1.04)}.speaker-btn{align-items:center;background:none;border:1.5px solid #2a529840;border-radius:50%;color:#2a5298;cursor:pointer;display:inline-flex;flex-shrink:0;height:36px;justify-content:center;padding:0;transition:background .18s,border-color .18s,transform .12s;width:36px}.speaker-btn:hover{background:#2a529814;border-color:#2a5298;transform:scale(1.1)}.speaker-btn:active{transform:scale(.96)}.speaker-btn--card-front{margin-left:10px}.speaker-btn--card-back{margin-left:8px}.flashcard-prompt,.flashcard-translation{align-items:center;display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.flashcard-translation{animation:fadein .4s}@media (max-width:768px){.flashcard-game{padding-top:76px}.flashcard-game h1{font-size:1.8rem;letter-spacing:1px;padding:0 80px;text-align:center}.dashboard-btn-fflash{font-size:.85rem;left:12px;padding:6px 14px;top:12px}.flashcard-box,.session-complete-card-fflash{max-width:340px;min-width:0;min-width:auto;padding:28px 20px 24px;width:90vw}.rating-buttons{flex-wrap:wrap;justify-content:center}.rating-buttons button,.rating-section button{flex-basis:calc(50% - 8px);flex-grow:1;flex-shrink:1;font-size:.95rem;max-width:calc(50% - 8px);min-width:0;padding:10px 8px}.speaker-btn{height:44px;width:44px}.easy-progress-bar-container{max-width:360px;width:90vw}.session-complete-title-fflash{font-size:1.8rem}}@media (max-width:480px){.flashcard-game{padding-top:68px}.flashcard-game h1{font-size:1.4rem;margin-bottom:8px;padding:0 70px;text-align:center}.flashcard-subtitle{font-size:1rem;margin-bottom:18px}.flashcard-box,.session-complete-card-fflash{padding:20px 14px 18px}.flashcard-prompt{font-size:1.25rem}.flashcard-translation{font-size:1.1rem}.rating-buttons{gap:8px}.rating-buttons button,.rating-section button{font-size:.9rem;padding:10px 6px}.easy-progress-bar-text{font-size:.9rem}.session-complete-title-fflash{font-size:1.5rem}.loading-title-fflash{font-size:1.6rem}.error{width:85%}}.flashcard-game,.loading-screen-fflash,.session-complete-fflash{box-sizing:border-box;height:auto;min-height:100vh;min-height:100dvh;padding-bottom:32px;padding-left:clamp(10px,3vw,24px);padding-right:clamp(10px,3vw,24px);width:100%}.loading-center-fflash{box-sizing:border-box;height:auto;min-height:calc(100dvh - 64px);padding:68px 12px 24px;text-align:center}.flashcard-box,.session-complete-card-fflash{box-sizing:border-box;max-width:100%;min-width:0;padding:clamp(20px,4vw,38px) clamp(14px,3.5vw,32px);width:min(100%,540px)}.easy-progress-bar-container{max-width:100%;width:min(100%,360px)}.flashcard-prompt,.flashcard-translation{overflow-wrap:break-word;word-break:break-word}@media (max-width:900px){.flashcard-game{padding-top:68px}.flashcard-game h1{font-size:clamp(1.35rem,4.5vw,2rem);padding:0 12px}}@media (max-width:360px){.rating-buttons button,.rating-section button{flex:1 1 100%;max-width:100%}.exit-btn,.show-translation-btn{padding:12px 16px;width:100%}}.loading-screen-fflash.loading-screen-fflash--inline{background:#0000;height:auto;margin:0;min-height:0;overflow:visible;padding:0;width:100%}.loading-center-fflash.loading-center-fflash--inline{height:auto;margin:0;min-height:120px;padding:28px 16px}.loading-center-fflash.loading-center-fflash--compact{min-height:36px;padding:4px 0}.loading-title-fflash.loading-title-fflash--inline{color:#222c3a;font-size:1.25rem;font-weight:600;letter-spacing:.5px;margin-bottom:12px;text-align:center}.back-to-dashboard-btn{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;color:#334155;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.9rem;font-weight:600;gap:6px;height:40px;justify-content:center;line-height:1;min-height:40px;padding:0 14px;text-decoration:none;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .1s ease;white-space:nowrap}.back-to-dashboard-btn:hover{background:#e2e8f0;border-color:#cbd5e1;color:#0f172a}.back-to-dashboard-btn:active{transform:translateY(1px)}.back-to-dashboard-btn:focus-visible{outline:2px solid #2a5298;outline-offset:2px}.back-to-dashboard-btn__icon{display:block;flex-shrink:0}.back-to-dashboard-btn--floating{left:24px;position:absolute;top:18px;z-index:1001}.back-to-dashboard-btn--centered{margin:12px auto 0}.in-game-settings-btn,.settings-btn-fflash,.sual-settings-btn{align-items:center;background:none;border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;display:inline-flex;height:40px;justify-content:center;line-height:0;min-height:40px;min-width:40px;padding:0;position:absolute;right:24px;top:18px;transition:transform .15s ease,opacity .15s ease;width:40px;z-index:1001}.in-game-settings-btn:hover,.settings-btn-fflash:hover,.sual-settings-btn:hover{opacity:.85;transform:rotate(15deg)}.in-game-settings-btn:focus-visible,.settings-btn-fflash:focus-visible,.sual-settings-btn:focus-visible{outline:2px solid #2a5298;outline-offset:2px}.in-game-settings-backdrop,.settings-overlay-fflash{align-items:center;animation:inGameSettingsFadeIn .2s ease-out;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);background:#0f172a73;display:flex;height:100vh;inset:0;justify-content:center;position:fixed;width:100vw;z-index:2000}.in-game-settings-dialog,.settings-dialog-fflash,.settings-menu-fflash{animation:inGameSettingsScaleUp .22s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:14px;bottom:auto;box-shadow:0 10px 25px -5px #00000026,0 8px 10px -6px #0000001a;box-sizing:border-box;color:#1e293b;display:flex;flex-direction:column;left:auto;max-height:85vh;max-width:420px;overflow:hidden;position:relative;right:auto;top:auto;width:90vw}.in-game-settings-header{align-items:center;background:#fff;border-bottom:1px solid #f1f5f9;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.in-game-settings-title,.settings-title-fflash{align-items:center;color:#1e293b;display:flex;font-size:1.15rem;font-weight:700;gap:8px;letter-spacing:-.01em;margin:0}.in-game-settings-dismiss-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:1.35rem;height:32px;justify-content:center;line-height:1;padding:0;transition:background-color .15s ease,color .15s ease;width:32px}.in-game-settings-dismiss-btn:hover{background:#f1f5f9;color:#0f172a}.in-game-settings-dismiss-btn:focus-visible{outline:2px solid #2a5298;outline-offset:1px}.in-game-settings-body{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:18px 20px}.in-game-settings-section,.settings-section-fflash{color:#1e293b;display:flex;flex-direction:column;gap:4px}.in-game-settings-checkbox-label,.settings-checkbox-label-fflash{align-items:center;color:#1e293b;cursor:pointer;display:flex;font-size:.975rem;font-weight:500;gap:10px;line-height:1.4;-webkit-user-select:none;user-select:none}.in-game-settings-checkbox,.settings-checkbox-fflash{accent-color:#2a5298;cursor:pointer;flex-shrink:0;height:17px;margin:0;width:17px}.in-game-settings-desc,.settings-desc-fflash{color:#64748b;font-size:.85rem;line-height:1.4;margin-left:27px}.in-game-settings-range,.sual-range{accent-color:#2a5298;cursor:pointer;margin:6px 0 4px;width:100%}.in-game-settings-length-row,.sual-length-row{align-items:center;display:flex;gap:8px;margin:6px 0 4px}.in-game-settings-number-input,.sual-length-input{border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;color:#1e293b;font:inherit;font-size:.925rem;padding:6px 8px;transition:border-color .15s ease;width:64px}.in-game-settings-number-input:focus,.sual-length-input:focus{border-color:#2a5298;box-shadow:0 0 0 2px #2a529826;outline:none}.in-game-settings-action-btn,.sual-slow-btn{background:#e2e8f0;border:none;border-radius:6px;color:#1e293b;cursor:pointer;flex-shrink:0;font-size:.875rem;font-weight:600;padding:6px 14px;transition:background-color .15s ease,opacity .15s ease}.in-game-settings-action-btn:hover:not(:disabled),.sual-slow-btn:hover:not(:disabled){background:#cbd5e1}.in-game-settings-action-btn:disabled,.sual-slow-btn:disabled{cursor:not-allowed;opacity:.6}.in-game-settings-feedback,.sual-settings-message{color:#166534;font-size:.875rem;font-weight:500;margin-top:2px}.in-game-settings-footer{background:#fff;border-top:1px solid #f1f5f9;display:flex;flex-shrink:0;justify-content:flex-end;padding:12px 20px 16px}.in-game-settings-close-btn,.settings-close-btn-fflash{background:#2a5298;border:none;border-radius:8px;box-shadow:0 1px 3px #2a529833;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:8px 22px;transition:background-color .15s ease,transform .1s ease}.in-game-settings-close-btn:hover,.settings-close-btn-fflash:hover{background:#1e3c72;transform:translateY(-1px)}.in-game-settings-close-btn:focus-visible,.settings-close-btn-fflash:focus-visible{outline:2px solid #2a5298;outline-offset:2px}@keyframes inGameSettingsFadeIn{0%{opacity:0}to{opacity:1}}@keyframes inGameSettingsScaleUp{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.back-to-dashboard-btn--floating{left:12px;top:12px}.in-game-settings-btn,.settings-btn-fflash,.sual-settings-btn{right:12px;top:12px}}@media (max-width:480px){.in-game-settings-dialog,.settings-dialog-fflash,.settings-menu-fflash{border-radius:12px;max-height:88vh;width:calc(100vw - 28px)}.in-game-settings-header{padding:14px 16px}.in-game-settings-body{gap:14px;padding:16px}.in-game-settings-footer{padding:10px 16px 14px}.back-to-dashboard-btn{font-size:.85rem;padding:0 12px}}.session-complete-screen{background:#f8fafc;justify-content:center;min-height:100vh;min-height:100dvh;padding:clamp(16px,4vw,32px);width:100%}.session-complete-card,.session-complete-screen{align-items:center;box-sizing:border-box;display:flex}.session-complete-card{animation:inGameSettingsScaleUp .25s cubic-bezier(.16,1,.3,1);background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 12px 32px -8px #0f172a14,0 4px 12px -4px #0f172a0a;flex-direction:column;gap:20px;padding:clamp(24px,5vw,36px);text-align:center;width:min(100%,420px)}.session-complete-card__icon{align-items:center;background:#ecfdf5;border:1px solid #d1fae5;border-radius:50%;color:#10b981;display:flex;flex-shrink:0;height:56px;justify-content:center;width:56px}.session-complete-card__title{color:#0f172a;font-size:clamp(1.35rem,4vw,1.65rem);font-weight:700;letter-spacing:-.01em;line-height:1.25;margin:0}.session-complete-card__stats{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0;width:100%}.session-complete-card__stat-row{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-sizing:border-box;display:flex;flex-wrap:wrap;font-size:.95rem;gap:8px 12px;justify-content:space-between;padding:12px 16px}.session-complete-card__stat-row--highlight{background:#f0fdf4;border-color:#bbf7d0}.session-complete-card__stat-label{color:#64748b;font-weight:500;text-align:left}.session-complete-card__stat-row--highlight .session-complete-card__stat-label{color:#166534}.session-complete-card__stat-value{color:#0f172a;font-weight:700;text-align:right}.session-complete-card__stat-row--highlight .session-complete-card__stat-value{color:#15803d}.session-complete-card__back-btn{font-size:.95rem;height:44px;margin-top:4px;min-height:44px;width:100%}.top-nav{background:#fff;border-bottom:1px solid #94a3b840;box-shadow:0 1px 4px #0f172a0f;box-sizing:border-box;height:64px;justify-content:space-between;left:0;padding:0 32px;position:fixed;right:0;top:0;width:100%;z-index:100}.top-nav,.top-nav__left{align-items:center;display:flex}.top-nav__left{flex:0 0 auto;gap:8px;height:100%}.top-nav__logo{align-items:center;background:none;border:none;color:#2c3e50;cursor:pointer;display:inline-flex;font-size:1.125rem;font-weight:600;gap:10px;margin:0;padding:8px 0;text-decoration:none;transition:transform .2s ease,opacity .2s ease}.top-nav__logo:hover{transform:scale(1.02)}.top-nav__logo:active{transform:scale(.98)}.top-nav__logo-mark{border-radius:6px;display:inline-block;flex-shrink:0;height:32px;object-fit:contain;transition:box-shadow .2s ease,transform .2s ease;width:32px}.top-nav__logo:hover .top-nav__logo-mark{box-shadow:0 2px 8px #3498db59}.top-nav__logo-text{pointer-events:none}.top-nav__center{align-items:center;display:flex;flex:1 1;gap:24px;justify-content:center}.top-nav__link{color:#6b7280;font-size:.95rem;padding:6px 0;position:relative;text-decoration:none;transition:color .2s ease,transform .15s ease}.top-nav__link:after{background:#3498db;bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .2s ease;width:0}.top-nav__link:hover{color:#374151}.top-nav__link:hover:after{width:100%}.top-nav__right{align-items:center;display:flex;flex:0 0 auto;gap:16px}.top-nav__action{background:none;border:none;border-radius:6px;color:#4b5563;cursor:pointer;font-size:.9rem;padding:6px 12px;transition:background-color .2s ease,color .2s ease,transform .15s ease}.top-nav__action:hover{background-color:#3498db14;color:#2563eb;transform:translateY(-1px)}.top-nav__action:active{transform:translateY(0)}.side-nav{background:#f8f9fa;border-right:1px solid #e9ecef;bottom:0;box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - 64px);left:0;position:fixed;top:64px;width:240px;z-index:99}.side-nav__primary{flex:1 1;overflow-y:auto;padding:20px 0}.side-nav__list{list-style:none;margin:0;padding:0}.side-nav__list li{margin:0}.side-nav__item{background:none;border:none;box-sizing:border-box;color:#495057;cursor:pointer;display:block;font-size:.9375rem;padding:10px 20px;position:relative;text-align:left;text-decoration:none;transition:color .28s cubic-bezier(.4,0,.2,1),background .28s cubic-bezier(.4,0,.2,1),padding-left .28s cubic-bezier(.4,0,.2,1),transform .28s cubic-bezier(.4,0,.2,1);width:100%;will-change:transform,padding-left,color,font-size}.side-nav__label{display:inline-block;position:relative}.side-nav__label:after{background:#3498db;border-radius:1px;bottom:-8px;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:left;transition:transform .22s cubic-bezier(.4,0,.2,1);width:100%}.side-nav__item.nav-item--active:hover .side-nav__label:after,.side-nav__item:hover .side-nav__label:after{transform:scaleX(1)}.side-nav__item:hover{background:#0000000a;color:#212529}.side-nav__item:focus{outline:none}.side-nav__item:focus-visible{background:#0d6efd0f;color:#0d6efd;padding-left:24px}.side-nav__item.nav-item--active,.side-nav__item.nav-item--active:hover{background:#3498db14;color:#3498db;font-weight:600}.side-nav__item.nav-item--active:focus-visible{background:#3498db1f}.side-nav__bottom{background:#f8f9fa;border-top:1px solid #e9ecef;flex-shrink:0;padding:20px 16px}.side-nav__pathway-label{color:#6c757d;display:block;font-size:.6875rem;font-weight:600;letter-spacing:.05em;margin-bottom:12px}.side-nav__language-switch{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:6px;color:#212529;cursor:pointer;display:flex;font-size:.875rem;gap:10px;padding:10px 12px;text-align:left;transition:border-color .28s cubic-bezier(.4,0,.2,1),background .28s cubic-bezier(.4,0,.2,1),box-shadow .28s cubic-bezier(.4,0,.2,1),transform .28s cubic-bezier(.4,0,.2,1);width:100%}.side-nav__language-switch:hover{background:#f8f9fa;border-color:#adb5bd;box-shadow:0 4px 12px #0000000f;transform:translateY(-2px)}.side-nav__language-switch:active{transform:translateY(0)}.side-nav__language-switch:focus{outline:none}.side-nav__language-switch:focus-visible{border-color:#0d6efd;box-shadow:0 0 0 2px #0d6efd40}.side-nav__flag{flex-shrink:0;height:18px;object-fit:cover;width:24px}.settings-modal-backdrop{align-items:center;animation:fadeIn .2s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#0f172a80;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:10000}.settings-modal-content{animation:slideUp .25s cubic-bezier(.16,1,.3,1);background:#fff;border:1px solid #e2e8f0e6;border-radius:16px;box-shadow:0 20px 48px -10px #0f172a2e,0 0 1px #0f172a1a;box-sizing:border-box;display:flex;flex-direction:column;max-height:calc(100vh - 48px);max-width:520px;overflow:hidden;width:100%}.settings-modal-header{align-items:center;background:#fff;border-bottom:1px solid #f1f5f9;display:flex;flex-shrink:0;justify-content:space-between;padding:18px 24px}.settings-modal-title{color:#1e293b;font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin:0}.settings-close-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:1.35rem;height:34px;justify-content:center;line-height:1;padding:0;transition:background-color .15s ease,color .15s ease;width:34px}.settings-close-btn:hover{background:#f1f5f9;color:#0f172a}.settings-close-btn:focus-visible{box-shadow:0 0 0 2px #3b82f6;outline:none}.settings-modal-body{box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;gap:24px;overflow-x:hidden;overflow-y:auto;padding:20px 24px}.settings-alert{animation:fadeIn .2s ease-out;border-radius:8px;font-size:.875rem;font-weight:500;line-height:1.4;padding:12px 16px}.settings-alert--success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.settings-alert--error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.settings-confirm-card{animation:fadeIn .2s ease-out;background:#fff1f2;border:1px solid #fecdd3;border-radius:12px;padding:16px}.settings-confirm-title{color:#be123c;font-size:.95rem;font-weight:600;margin:0 0 6px}.settings-confirm-desc{color:#475569;font-size:.875rem;line-height:1.45;margin:0 0 14px}.settings-confirm-actions{display:flex;flex-wrap:wrap;gap:10px}.settings-section{display:flex;flex-direction:column}.settings-section-title{color:#1e293b;font-size:1rem;font-weight:600;margin:0 0 4px}.settings-help-text{color:#64748b;font-size:.8125rem;line-height:1.4;margin:0 0 12px}.settings-language-list{display:flex;flex-direction:column;gap:8px}.settings-language-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;justify-content:space-between;padding:10px 14px;transition:border-color .15s ease}.settings-language-item:hover{border-color:#cbd5e1}.settings-language-item-left{align-items:center;display:flex;gap:12px;min-width:0}.settings-language-flag{border-radius:3px;box-shadow:0 1px 2px #0000001a;flex-shrink:0;height:18px;object-fit:cover;width:26px}.settings-language-name{color:#1e293b;font-size:.9375rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap}.settings-btn{align-items:center;border:1px solid #0000;border-radius:8px;box-sizing:border-box;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;justify-content:center;line-height:1.25;padding:9px 16px;text-decoration:none;transition:all .15s ease;white-space:nowrap}.settings-btn:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px #3b82f6;outline:none}.settings-btn:disabled{cursor:not-allowed;opacity:.55;pointer-events:none}.settings-btn--primary{background:#2563eb;border-color:#2563eb;color:#fff}.settings-btn--primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.settings-btn--primary:active:not(:disabled){background:#1e40af}.settings-btn--secondary{background:#f1f5f9;border-color:#cbd5e1;color:#334155}.settings-btn--secondary:hover:not(:disabled){background:#e2e8f0;color:#0f172a}.settings-btn--danger{background:#dc2626;border-color:#dc2626;color:#fff}.settings-btn--danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.settings-btn--danger-soft{background:#fef2f2;border-color:#fecaca;color:#dc2626}.settings-btn--danger-soft:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5;color:#b91c1c}.settings-btn--sm{border-radius:6px;font-size:.8125rem;padding:6px 12px}.settings-btn--lg{font-size:.9375rem;padding:10px 22px}.settings-form-row{box-sizing:border-box;display:flex;gap:10px;width:100%}.settings-form-row--inline{align-items:stretch}.settings-input,.settings-select{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#1e293b;flex:1 1;font-size:.9375rem;max-width:100%;min-width:0;outline:none;padding:9px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.settings-input:focus,.settings-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.settings-select{cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-card-group{display:flex;flex-direction:column;gap:12px}.settings-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-sizing:border-box;padding:14px 16px}.settings-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.settings-card-label{color:#334155;font-size:.875rem;font-weight:600}.settings-grid{grid-gap:12px;display:grid;gap:12px;width:100%}.settings-grid--2col{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-field{display:flex;flex-direction:column;gap:6px;min-width:0}.settings-field-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.settings-input-group{align-items:center;display:flex;min-width:0;position:relative;width:100%}.settings-input-group .settings-input{padding-right:52px;width:100%}.settings-input-addon{color:#94a3b8;font-size:.8125rem;pointer-events:none;position:absolute;right:12px;-webkit-user-select:none;user-select:none}.settings-field-error{color:#dc2626;font-size:.8125rem;font-weight:500;margin-top:8px}.settings-card-actions{display:flex;justify-content:flex-end;margin-top:14px}.settings-slider-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.settings-badge-pill{align-items:center;background:#eff6ff;border:1px solid #dbeafe;border-radius:9999px;color:#2563eb;display:inline-flex;font-size:.8125rem;font-weight:600;padding:3px 8px}.settings-slider-row{align-items:center;display:flex;gap:10px}.settings-slider-bound{color:#94a3b8;font-size:.75rem;font-weight:500;-webkit-user-select:none;user-select:none}.settings-range-slider{-webkit-appearance:none;appearance:none;background:#e2e8f0;border-radius:3px;cursor:pointer;flex:1 1;height:6px;margin:0;outline:none}.settings-range-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#2563eb;border-radius:50%;box-shadow:0 1px 4px #2563eb66;cursor:pointer;height:18px;-webkit-transition:transform .15s ease,background-color .15s ease;transition:transform .15s ease,background-color .15s ease;width:18px}.settings-range-slider::-webkit-slider-thumb:hover{background:#1d4ed8;transform:scale(1.15)}.settings-range-slider::-moz-range-thumb{background:#2563eb;border:none;border-radius:50%;box-shadow:0 1px 4px #2563eb66;cursor:pointer;height:18px;-moz-transition:transform .15s ease,background-color .15s ease;transition:transform .15s ease,background-color .15s ease;width:18px}.settings-range-slider::-moz-range-thumb:hover{background:#1d4ed8;transform:scale(1.15)}.settings-field-note{color:#94a3b8;font-size:.75rem;line-height:1.4;margin:10px 0 0}.settings-key-active-card{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;justify-content:space-between;margin-bottom:10px;padding:10px 14px}.settings-key-info{align-items:center;display:flex;gap:10px;min-width:0}.settings-status-badge{background:#dcfce7;border-radius:4px;color:#15803d;flex-shrink:0;font-size:.6875rem;font-weight:700;letter-spacing:.05em;padding:2px 7px;text-transform:uppercase}.settings-key-masked{color:#334155;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-empty-state{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;font-size:.875rem;padding:14px;text-align:center}.settings-modal-footer{background:#fff;border-top:1px solid #f1f5f9;display:flex;flex-shrink:0;justify-content:flex-end;padding:14px 24px}@media (max-width:640px){.settings-modal-backdrop{align-items:flex-end;padding:12px}.settings-modal-content{border-radius:16px 16px 14px 14px;max-height:90vh;max-width:100%}.settings-modal-header{padding:16px 18px}.settings-modal-body{gap:20px;padding:16px 18px}.settings-close-btn{font-size:1.5rem;height:44px;width:44px}.settings-form-row--inline{flex-direction:column;gap:8px}.settings-form-row--inline .settings-btn{min-height:44px;width:100%}.settings-input,.settings-select{font-size:16px;min-height:44px}.settings-grid--2col{grid-template-columns:1fr}.settings-modal-footer{padding:12px 18px}.settings-modal-footer .settings-btn{min-height:44px;width:100%}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.side-nav__lang-dropdown{animation:slideUpDropdown .2s cubic-bezier(.16,1,.3,1);background:#fff;border:1px solid #94a3b833;border-radius:12px;bottom:100%;box-shadow:0 -10px 25px #0f172a1f,0 4px 10px #0000000a;left:12px;margin-bottom:8px;overflow:hidden;position:absolute;right:12px;z-index:200}.side-nav__lang-dropdown-list{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:6px}.side-nav__lang-dropdown-item{align-items:center;background:none;border:none;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;padding:10px 12px;text-align:left;transition:background .15s,color .15s;width:100%}.side-nav__lang-dropdown-item:hover{background:#f1f5f9;color:#1e293b}.side-nav__lang-dropdown-empty{color:#94a3b8;font-size:.8rem;font-style:italic;padding:12px;text-align:center}@keyframes slideUpDropdown{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hamburger-btn{-webkit-tap-highlight-color:transparent;align-items:center;background:none;border:none;border-radius:8px;color:#374151;cursor:pointer;display:none;font-size:1.5rem;height:48px;justify-content:center;margin:0 4px 0 -8px;min-height:48px;min-width:48px;padding:0;transition:background-color .2s ease,color .2s ease;width:48px;z-index:1001}.hamburger-btn:hover{background-color:#0000000f}.hamburger-btn:active{background-color:#0000001a}.mobile-backdrop,.side-nav__mobile-links{display:none}.side-nav__divider{background-color:#94a3b833;height:1px;margin:16px 20px}@media (max-width:768px){.hamburger-btn{display:flex}.top-nav__center,.top-nav__right{display:none}.top-nav{padding:0 12px}.side-nav{box-shadow:none;height:100vh;left:0;padding-top:64px;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:280px;z-index:1000}.side-nav--mobile-open,body.mobile-nav-open .side-nav{box-shadow:4px 0 24px #0f172a2e;transform:translateX(0)}.side-nav__item{align-items:center;display:flex;min-height:48px;padding:12px 20px}.side-nav__language-switch{min-height:48px}.mobile-backdrop{-webkit-tap-highlight-color:transparent;animation:fadeIn .25s ease-out;background:#0f172a80;display:block;inset:0;position:fixed;z-index:999}.side-nav__mobile-links{display:block}}body.mobile-nav-open{overflow:hidden}.top-nav__mobile-lang-container{display:none}@media (max-width:768px){.top-nav__mobile-lang-container{display:block;margin-left:auto;margin-right:8px}.top-nav__mobile-lang-btn{align-items:center;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;display:flex;gap:6px;padding:6px 8px;transition:background .2s,border-color .2s}.top-nav__mobile-lang-btn:hover{background:#e2e8f0}.top-nav__mobile-flag{border-radius:2px;box-shadow:0 1px 2px #0000001a;height:16px;object-fit:cover;width:24px}.top-nav__mobile-lang-arrow{color:#64748b;font-size:.65rem}.top-nav__mobile-dropdown{animation:slideUpDropdown .2s cubic-bezier(.16,1,.3,1);background:#fff;border:1px solid #94a3b833;border-radius:10px;box-shadow:0 10px 25px #0f172a1f;margin-top:8px;min-width:160px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1002}.top-nav__mobile-dropdown-list{display:flex;flex-direction:column;gap:2px;list-style:none;margin:0;padding:4px}.top-nav__mobile-dropdown-item{align-items:center;background:none;border:none;border-radius:6px;color:#475569;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:10px;padding:8px 12px;text-align:left;transition:background .15s,color .15s;width:100%}.top-nav__mobile-dropdown-item:hover{background:#f1f5f9;color:#1e293b}.top-nav__mobile-dropdown-flag{border-radius:2px;height:14px;object-fit:cover;width:20px}.top-nav__mobile-dropdown-empty{color:#94a3b8;font-size:.8rem;font-style:italic;padding:10px;text-align:center}}.settings-status-badge--active{background:#dcfce7;color:#15803d}.settings-status-badge--configured{background:#e0f2fe;color:#0369a1}.settings-status-badge--unset{background:#f1f5f9;color:#64748b}.settings-provider-list{display:flex;flex-direction:column;gap:12px;margin-top:14px}.settings-provider-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px;transition:border-color .15s ease}.settings-provider-card--active{background:#f8faff;border-color:#3b82f6}.settings-provider-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.settings-provider-title-wrap{align-items:center;display:flex;gap:8px}.settings-provider-title{color:#1e293b;font-size:.9375rem;font-weight:600;margin:0}@media (max-width:768px){.top-nav.top-nav--standalone .top-nav__right{display:flex;gap:6px}.top-nav.top-nav--standalone .top-nav__action{font-size:.85rem;padding:6px 10px}}.top-nav{gap:8px;padding:0 clamp(8px,3vw,32px)}.top-nav__left{min-width:0}.top-nav__logo{font-size:clamp(.95rem,2.5vw,1.125rem);gap:clamp(6px,1.5vw,10px)}.top-nav__right{gap:clamp(6px,1.5vw,16px)}@media (max-width:400px){.top-nav__logo-mark{height:26px;width:26px}.top-nav.top-nav--standalone .top-nav__action{font-size:.78rem;padding:5px 8px;white-space:nowrap}.side-nav{width:min(280px,85vw)}}.header-bar{background-color:#fff;box-shadow:0 2px 8px #15355514;height:80px;justify-content:space-between;left:0;padding:0 5%;position:fixed;top:0;width:100%;z-index:1000}.header-bar,.home-container{align-items:center;box-sizing:border-box;display:flex}.home-container{background:linear-gradient(270deg,#f8f9fa 0,#fff);justify-content:flex-start;margin:0;min-height:100vh;padding-left:10%;padding-top:80px}.home-content{text-align:left}.home-content>h1{color:#2c3e50;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:3.5rem;font-weight:600;margin:0}.home-content>p{color:#7f8c8d;font-size:1.5rem;margin:1rem 0 2rem}.get-started-button{background-color:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1.4rem;padding:20px 40px;transition:background-color .3s ease}.get-started-button:hover{background-color:#226a9a}.learnmore-button{background-color:initial;border:2px solid #3498db;border-radius:5px;color:#3498db;cursor:pointer;font-size:1.4rem;margin-left:1rem;padding:19px 39px;transition:all .3s ease}.learnmore-button:hover{background-color:rgba(40,117,169,.202);border-color:#2980b9;color:#2980b9}.highlight{color:#3498db;font-weight:600}.about-section{align-items:center;background:linear-gradient(180deg,#f8fafd,#f1f5f9);box-sizing:border-box;display:flex;justify-content:center;margin:0;padding:clamp(1.75rem,3.5vh,3.5rem) clamp(1rem,3vw,1.5rem)}.about-content{box-sizing:border-box;margin:0 auto;max-width:860px;width:100%}.about-header{margin-bottom:clamp(1.25rem,2.5vh,2rem);text-align:center}.about-header h1{color:#1e293b;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:clamp(2rem,3.5vw,2.5rem);font-weight:700;letter-spacing:-.02em;margin:0;text-align:center}.about-editorial-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 10px 30px -10px #0f172a12,0 4px 12px #0f172a08;box-sizing:border-box;padding:clamp(1.75rem,3vh,2.75rem) clamp(1.75rem,3vw,3rem);transition:box-shadow .3s ease}.about-editorial-card:hover{box-shadow:0 16px 36px -10px #0f172a1a,0 6px 16px #0f172a0a}.about-lead{color:#334155;font-size:clamp(1rem,1.1vw,1.15rem);font-weight:400;line-height:1.75;margin:0}.about-divider{background:linear-gradient(90deg,#0000,#e2e8f0 20%,#e2e8f0 80%,#0000);height:1px;margin:clamp(1.25rem,2.2vh,2.25rem) 0}.about-creator-section{align-items:center;display:flex;gap:clamp(1.25rem,2.5vw,2rem)}.about-avatar-wrapper{flex-shrink:0}.about-avatar-link{cursor:pointer;display:block;line-height:0;transition:transform .25s ease,box-shadow .25s ease}.about-avatar-link:hover{transform:translateY(-2px)}.about-avatar-img{background:#f1f5f9;border-radius:0;box-sizing:border-box;display:block;height:clamp(160px,16vw,200px);object-fit:cover;object-position:center 20%;width:clamp(160px,16vw,200px)}.about-creator-details{flex:1 1;min-width:0}.about-creator-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:.5rem}.about-creator-name{color:#1e293b;font-size:1.35rem;font-weight:700;margin:0}.about-creator-badge{background:#e0f2fe;border-radius:6px;color:#0369a1;font-size:.78rem;font-weight:600;letter-spacing:.02em;padding:3px 10px}.about-creator-bio{color:#475569;font-size:.98rem;line-height:1.6;margin:0 0 1.25rem}.about-social-links{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.about-social-pill{align-items:center;border-radius:9999px;box-sizing:border-box;display:inline-flex;font-size:.88rem;font-weight:600;gap:8px;padding:8px 16px;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1)}.about-social-pill .social-icon{flex-shrink:0;height:16px;width:16px}.about-social-pill.linkedin{background-color:#0077b5;color:#fff}.about-social-pill.linkedin:hover{background-color:#005f93;box-shadow:0 4px 12px #0077b54d;transform:translateY(-2px)}.about-social-pill.instagram{background:linear-gradient(45deg,#f09433,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888);color:#fff}.about-social-pill.instagram:hover{box-shadow:0 4px 14px #dc274359;transform:translateY(-2px)}.about-social-pill.email{background-color:#f8fafc;border:1px solid #cbd5e1;color:#334155}.about-social-pill.email:hover{background-color:#e2e8f0;border-color:#94a3b8;box-shadow:0 4px 10px #0000000d;color:#0f172a;transform:translateY(-2px)}.login-nav-button{background-color:initial;border:2px solid #3498db;border-radius:5px;color:#3498db;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 24px;transition:all .3s ease}.login-nav-button:hover{background-color:#3498db;color:#fff}@media (max-width:768px){.header-bar{height:60px;padding:0 3%}.home-container{padding-left:5%;padding-right:5%;padding-top:60px}.home-content>h1{font-size:2.4rem}.home-content>p{font-size:1.2rem}.get-started-button{font-size:1.1rem;padding:14px 28px}.learnmore-button{font-size:1.1rem;padding:13px 27px}.about-section{min-height:calc(100vh - 64px);padding:2.5rem 1.25rem;scroll-margin-top:64px}.about-header h1{font-size:2.1rem}.about-editorial-card{padding:2rem 1.75rem}.about-lead{font-size:1.05rem;line-height:1.75}.about-creator-section{flex-direction:column;gap:1.5rem;text-align:center}.about-avatar-img{height:200px;width:200px}.about-creator-header,.about-social-links{justify-content:center}.login-nav-button{font-size:.9rem;padding:8px 18px}}@media (max-width:480px){.header-bar{height:50px;padding:0 4%}.home-container{justify-content:center;padding-left:4%;padding-right:4%;padding-top:50px}.home-container,.home-content{text-align:center}.home-content>h1{font-size:1.8rem}.home-content>p{font-size:1rem;margin:.75rem 0 1.5rem}.get-started-button{padding:12px 24px}.get-started-button,.learnmore-button{box-sizing:border-box;font-size:1rem;width:100%}.learnmore-button{margin-left:0;margin-top:.5rem;padding:11px 23px}.about-section{min-height:calc(100vh - 64px);padding:2rem 1rem;scroll-margin-top:64px}.about-header{margin-bottom:1.25rem}.about-header h1{font-size:1.75rem}.about-editorial-card{border-radius:16px;padding:1.5rem 1.25rem}.about-lead{font-size:.98rem;line-height:1.65;text-align:left}.about-divider{margin:1.5rem 0}.about-creator-section{flex-direction:column;gap:1.25rem;text-align:center}.about-avatar-img{height:200px;max-width:100%;width:200px}.about-creator-header{justify-content:center}.about-creator-bio{font-size:.92rem;margin-bottom:1rem}.about-social-links{justify-content:center}.about-social-pill{font-size:.82rem;padding:7px 14px}.login-nav-button{font-size:.85rem;padding:8px 14px}}.home-container{padding-left:clamp(16px,8vw,10%);padding-right:clamp(16px,5vw,8%);padding-top:64px}.home-content{max-width:100%}.home-content>h1{font-size:clamp(1.75rem,5vw,3.5rem);overflow-wrap:break-word}.home-content>p{font-size:clamp(1rem,2.5vw,1.5rem)}.about-section{min-height:calc(100vh - 64px);scroll-margin-top:64px}.home-footer{align-items:center;background-color:#fff;border-top:1px solid #e2e8f0;box-sizing:border-box;color:#718096;display:flex;font-size:.95rem;justify-content:space-between;padding:24px 5%;width:100%}.home-footer-copy{margin:0}.home-footer-links{display:flex;gap:20px}.home-footer-links a{color:#3498db;font-weight:600;text-decoration:none;transition:color .2s ease}.home-footer-links a:hover{color:#226a9a;text-decoration:underline}@media (max-width:768px){.home-footer{flex-direction:column;gap:12px;padding:20px 4%;text-align:center}}.body{margin:0;min-height:100%;width:100%}.get-started-page{background:linear-gradient(135deg,#e0eafc,#cfdef3);font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;justify-content:center;margin:0;min-height:100vh;min-height:100dvh;padding:32px 16px}.get-started-page,.question-container{align-items:center;box-sizing:border-box;display:flex;width:100%}.question-container{background:#fff;border:1px solid #ffffffb3;border-radius:20px;box-shadow:0 10px 30px -5px #1e293b1f,0 4px 12px -2px #1e293b0f;flex-direction:column;max-width:660px;min-height:480px;padding:36px 36px 32px;transition:box-shadow .3s ease}.question-container:hover{box-shadow:0 16px 40px -5px #1e293b29,0 6px 16px -2px #1e293b14}.signup-stepper{box-sizing:border-box;justify-content:space-between;margin-bottom:28px;max-width:440px;padding:0 8px;width:100%}.signup-stepper,.stepper-item{align-items:center;display:flex}.stepper-item{flex-direction:column;gap:6px;position:relative;z-index:1}.stepper-circle{align-items:center;background:#f1f5f9;border:2px solid #cbd5e1;border-radius:50%;color:#64748b;display:flex;font-size:.85rem;font-weight:700;height:32px;justify-content:center;transition:all .25s ease;width:32px}.stepper-item.active .stepper-circle{background:#2563eb;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb2e;color:#fff}.stepper-item.completed .stepper-circle{background:#10b981;border-color:#10b981;color:#fff}.stepper-title{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;transition:color .25s ease}.stepper-item.active .stepper-title{color:#1e293b;font-weight:700}.stepper-divider{background:#e2e8f0;flex:1 1;height:2px;margin:0 10px 20px;transition:background .3s ease}.stepper-divider.filled{background:#2563eb}.step-panel{align-items:center;animation:fadeInPanel .25s ease-out;display:flex;flex-direction:column;width:100%}@keyframes fadeInPanel{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.step-heading{color:#0f172a;font-size:1.65rem;font-weight:700;margin:0 0 6px;text-align:center}.step-subheading{color:#64748b;font-size:.95rem;margin:0 0 24px;max-width:480px;text-align:center}.flag-form{grid-gap:12px;box-sizing:border-box;display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:24px;width:100%}.flag,.flag-card{margin:0;padding:0;width:100%}.flag-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:100%;min-height:144px;overflow:hidden;text-align:center;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease,background-color .15s ease}.flag-card:hover{border-color:#37eb52;box-shadow:0 6px 16px -2px #3dff3a40;transform:translateY(-2px)}.flag-card.selected,.flag-card[data-selected=true]{background-color:#fff;border-color:#37eb52;box-shadow:0 0 0 3px #37eb5259,0 4px 14px #3dff3a73}.flag-card-img-wrap{align-items:center;aspect-ratio:4/3;background:#f1f5f9;display:flex;justify-content:center;overflow:hidden;position:relative;width:100%}.flag-card-img{border-top-left-radius:10px;border-top-right-radius:10px;display:block;height:100%;object-fit:cover;width:100%}.flag-card-check{align-items:center;animation:popCheck .15s ease-out;background:#37eb52;border-radius:50%;box-shadow:0 2px 6px #00000040;color:#fff;display:flex;height:20px;justify-content:center;position:absolute;right:6px;top:6px;width:20px}@keyframes popCheck{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.flag-card-text-wrap{align-items:center;box-sizing:border-box;display:flex;flex:1 1;justify-content:center;padding:10px 6px;width:100%}.flag-card-name{color:#1e293b;font-size:.88rem;font-weight:600;line-height:1.25;margin:0;transition:color .15s ease}.flag-card.selected .flag-card-name{color:#0f172a;font-weight:700}.get-started-form{box-sizing:border-box;display:flex;flex-direction:column;gap:18px;margin:0 auto;max-width:440px;width:100%}.form-group{box-sizing:border-box;gap:6px;text-align:left}.form-label{color:#1e293b;display:block;margin:0}.form-input{background:#f8fafc;border:1.5px solid #cbd5e1;color:#0f172a;font-size:.95rem;min-height:44px;padding:10px 14px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.form-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.form-input::placeholder{color:#94a3b8}.dob-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:80px 1fr 100px}.dob-row,.dob-select{box-sizing:border-box;width:100%}.dob-select{background-color:#f8fafc;border:1.5px solid #cbd5e1;border-radius:8px;color:#0f172a;cursor:pointer;font-size:.95rem;min-height:44px;padding:10px;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.dob-select:focus{background-color:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26;outline:none}.input-with-toggle{align-items:center;display:flex;position:relative;width:100%}.input-with-toggle .form-input{padding-right:64px}.password-toggle-btn{background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;font-size:.8rem;font-weight:600;padding:6px 10px;position:absolute;right:8px;transition:color .15s ease,background-color .15s ease}.password-toggle-btn:hover{background-color:#f1f5f9;color:#0f172a}.field-hint{color:#64748b;font-size:.78rem;margin-top:-2px}.terms-checkbox-container{box-sizing:border-box;margin:2px 0;width:100%}.terms-checkbox-label{align-items:flex-start;color:#475569;cursor:pointer;display:flex;font-size:.88rem;gap:10px;line-height:1.45;text-align:left;-webkit-user-select:none;user-select:none}.terms-checkbox-label input[type=checkbox]{accent-color:#2563eb;cursor:pointer;height:18px;margin-top:2px;min-width:18px;width:18px}.terms-checkbox-label a{color:#2563eb;font-weight:600;text-decoration:underline;transition:color .15s ease}.terms-checkbox-label a:hover{color:#1d4ed8}.formerror{align-items:center;animation:fadeInError .2s ease-out;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;box-sizing:border-box;color:#b91c1c;display:flex;font-size:.9rem;font-weight:500;gap:8px;margin:4px 0 0;padding:10px 14px;text-align:left;width:100%}@keyframes fadeInError{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.error-icon{display:block;flex-shrink:0;height:16px;width:16px}.step-actions{justify-content:center}.buttonBar,.step-actions{display:flex;margin-top:8px;width:100%}.buttonBar{align-items:center;box-sizing:border-box;flex-direction:row;gap:12px;justify-content:space-between}button.next{align-items:center;background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:8px;box-shadow:0 4px 12px #2563eb40;color:#fff;cursor:pointer;display:inline-flex;flex:1 1;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;min-height:46px;padding:12px 28px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}button.next:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 6px 16px #2563eb59;transform:translateY(-1px)}button.next:active:not(:disabled){box-shadow:0 2px 8px #2563eb33;transform:translateY(0)}button.next:disabled{cursor:not-allowed;opacity:.65;transform:none}button.back{align-items:center;background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:8px;color:#475569;cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;min-height:46px;padding:12px 24px;transition:background-color .15s ease,color .15s ease,border-color .15s ease}button.back:hover:not(:disabled){background:#e2e8f0;border-color:#94a3b8;color:#0f172a}button.back:disabled{cursor:not-allowed;opacity:.6}.btn-arrow{font-size:1.1rem;line-height:1}.login-prompt-container{color:#64748b;font-size:.9rem;margin-top:24px;text-align:center}.login-prompt-link{color:#2563eb;font-weight:600;margin-left:4px;text-decoration:none;transition:color .15s ease,-webkit-text-decoration .15s ease;transition:color .15s ease,text-decoration .15s ease;transition:color .15s ease,text-decoration .15s ease,-webkit-text-decoration .15s ease}.login-prompt-link:hover{color:#1d4ed8;text-decoration:underline}@media (max-width:680px){.question-container{min-height:auto;padding:28px 20px 24px}.step-heading{font-size:1.4rem}.flag-form{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:480px){.get-started-page{padding:16px 12px}.question-container{border-radius:16px;padding:24px 16px 20px}.signup-stepper{margin-bottom:20px}.stepper-circle{font-size:.75rem;height:28px;width:28px}.stepper-title{font-size:.7rem}.step-heading{font-size:1.25rem}.step-subheading{font-size:.85rem;margin-bottom:18px}.flag-form{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.flag-form>.flag:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - 5px)}.flag-card{min-height:auto}.flag-card-name{font-size:.82rem}.dob-row{gap:6px;grid-template-columns:70px 1fr 90px}.buttonBar{flex-direction:row;gap:8px}button.back,button.next{font-size:.9rem;padding:10px 16px}}.login-page{background:linear-gradient(135deg,#e0eafc,#cfdef3);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0;min-height:100vh;min-height:100dvh;padding:20px 10px;width:100%}.login-container,.login-page{align-items:center;box-sizing:border-box;display:flex;justify-content:center}.login-container{background:#f3f3f3;border:1.5px solid #8b8a96;border-radius:20px;box-shadow:0 8px 32px 0 #2c3e5026,0 1.5px 4px 0 #6c63ff1a;flex-direction:column;max-width:90vw;min-height:380px;padding:40px 32px;transition:all .3s ease;width:400px}.login-container:hover{box-shadow:0 12px 40px 0 #2c3e5038,0 2px 8px 0 #6c63ff2e}.login-title{color:#2c3e50;font-size:2.2rem;font-weight:700;margin:0 0 8px;text-align:center}.login-subtitle{color:#7f8c8d;font-size:1rem;margin:0 0 32px;text-align:center}.login-form{gap:20px}.form-group,.login-form{display:flex;flex-direction:column;width:100%}.form-group{gap:8px}.form-label{color:#2c3e50;font-size:.9rem;font-weight:600;text-align:left}.form-input{background:#f8f9fa;border:1px solid #bdbdbd;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:12px 16px;transition:all .2s ease;width:100%}.form-input:focus{background:#fff;border-color:#6c63ff;outline:none}.login-error{color:#db3734;font-size:.9rem;font-weight:500;margin-top:-8px;text-align:center;width:100%}.login-btn{background:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:10px;padding:14px;transition:all .2s ease}.login-btn:hover{background:#226a9a}.signup-link-container{color:#7f8c8d;font-size:.9rem;margin-top:24px;text-align:center}.signup-link{color:#3498db;font-weight:600;margin-left:5px;text-decoration:none;transition:color .2s ease}.signup-link:hover{color:#226a9a;text-decoration:underline}@media (max-width:480px){.login-container{border-radius:12px;max-width:100vw;padding:28px 16px;width:100%}.login-title{font-size:1.6rem}.login-subtitle{font-size:.9rem;margin:0 0 20px}.login-form{gap:16px}.form-input{box-sizing:border-box;padding:10px 14px;width:100%}.form-input,.login-btn{font-size:1rem;min-height:44px}.login-btn{padding:12px}.signup-link-container{margin-top:16px}}.stories-dashboard-root{display:flex;flex-direction:column;gap:24px}.stories-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:16px}.story-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #fff6;border-radius:16px;box-shadow:0 8px 32px 0 #1f26870d;display:flex;flex-direction:column;justify-content:space-between;min-height:220px;overflow:hidden;padding:24px;position:relative;transition:transform .3s cubic-bezier(.25,.8,.25,1),box-shadow .3s ease}.story-card:hover{box-shadow:0 12px 36px 0 #1f268726;transform:translateY(-5px)}.story-card:before{background:linear-gradient(180deg,#3498db,#2c3e50);content:"";height:100%;left:0;position:absolute;top:0;width:6px}.story-card--completed:before{background:linear-gradient(180deg,#2ecc71,#27ae60)}.story-card__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.story-card__badge{background:#3498db1a;border-radius:20px;color:#2980b9;font-size:.75rem;font-weight:700;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase}.story-card__badge--completed{background:#2ecc711a;color:#27ae60}.story-card__badge--unlocked{background:#f1c40f1a;color:#d35400}.story-card__title{color:#2c3e50;font-size:1.25rem;font-weight:700;line-height:1.3;margin:0 0 8px}.story-card__subtitle{color:#7f8c8d;flex-grow:1;font-size:.9rem;margin:0 0 16px}.story-card__footer{display:flex;flex-direction:column;gap:12px;margin-top:auto}.story-card__progress-container{display:flex;flex-direction:column;gap:4px}.story-card__progress-label{color:#95a5a6;display:flex;font-size:.75rem;font-weight:600;justify-content:space-between}.story-card__progress-bar{background:#e2e8f0;border-radius:3px;height:6px;overflow:hidden}.story-card__progress-fill{background:linear-gradient(90deg,#3498db,#2980b9);border-radius:3px;height:100%;transition:width .3s ease}.story-card__progress-fill--completed{background:linear-gradient(90deg,#2ecc71,#27ae60)}.story-card__btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;justify-content:center;padding:10px;transition:background .2s ease,transform .1s ease;width:100%}.story-card__btn--primary{background:#2a5298;color:#fff}.story-card__btn--primary:hover{background:#1e3c72}.story-card__btn--secondary{background:#f1f2f6;border:1px solid #dfe4ea;color:#2c3e50}.story-card__btn--secondary:hover{background:#e4e7eb}.story-card--locked{background:#f5f6fab3;border:1px dashed #94a3b866;pointer-events:none}.story-card--locked:before{background:#95a5a6}.story-card--locked *{opacity:.6}.story-card__lock-icon-wrapper{align-items:center;background:#95a5a626;border-radius:50%;color:#7f8c8d;display:flex;height:32px;justify-content:center;width:32px}.story-page-container{align-items:center;background:linear-gradient(135deg,#f5f7fb,#e4ebf5);box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh;padding:40px 20px}.story-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px;max-width:800px;width:100%}.story-header__back-btn{align-items:center;background:none;border:none;color:#2c3e50;cursor:pointer;display:flex;font-weight:600;gap:8px;transition:transform .2s ease}.story-header__back-btn:hover{transform:translateX(-3px)}.story-header__title-area{flex-grow:1;text-align:center}.story-header__title{color:#2a5298;font-size:1.5rem;font-weight:700;margin:0}.story-header__progress-bar{background:#dcdde1;border-radius:3px;height:6px;overflow:hidden;width:100px}.story-header__progress-fill{background:#2a5298;height:100%;transition:width .3s ease}.book-container{background:#fff;border:1px solid #00000005;border-radius:20px;box-shadow:0 15px 45px #0000000d,0 5px 15px #00000005;box-sizing:border-box;display:flex;flex-direction:column;gap:30px;max-width:800px;padding:40px 48px;position:relative;width:100%}@media (max-width:600px){.book-container{padding:24px}}.story-segment{animation:fadeIn .5s ease-out forwards}.story-segment__text{color:#2c3e50;font-family:Georgia,Merriweather,Cambria,serif;font-size:1.2rem;line-height:1.8;margin:0 0 24px;white-space:pre-line}.audio-action-row,.story-segment__text p{margin-bottom:20px}.audio-action-row{display:flex;justify-content:flex-end}.tts-btn{align-items:center;background:#3498db14;border:1px solid #3498db26;border-radius:20px;color:#2980b9;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:8px;padding:8px 16px;transition:all .2s ease}.tts-btn:hover{background:#3498db26;transform:translateY(-1px)}.tts-btn--playing{background:#2980b9;border-color:#2980b9;color:#fff}.tts-btn--playing:hover{background:#2471a3}.story-nav-actions{align-items:center;border-top:1px solid #f1f2f6;display:flex;justify-content:space-between;margin-top:12px;padding-top:24px}.read-all-toggle{align-items:center;color:#7f8c8d;cursor:pointer;display:flex;font-size:.9rem;gap:8px;-webkit-user-select:none;user-select:none}.read-all-toggle input{cursor:pointer}.story-nav-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s ease}.story-nav-btn--prev{background:#f1f2f6;border:1px solid #dfe4ea;color:#2c3e50}.story-nav-btn--prev:hover{background:#e4e7eb}.story-nav-btn--next{background:#2a5298;color:#fff}.story-nav-btn--next:hover{background:#1e3c72}.question-box{animation:slideInUp .4s cubic-bezier(.16,1,.3,1) forwards;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;box-sizing:border-box;margin:24px 0;padding:24px}.question-box__badge{color:#64748b;display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.08em;margin-bottom:8px;text-transform:uppercase}.question-box__prompt{color:#1e293b;font-size:1.1rem;font-weight:600;margin:0 0 16px}.options-list{display:flex;flex-direction:column;gap:12px}.option-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#334155;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;justify-content:space-between;padding:14px 18px;text-align:left;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.option-btn:hover:not(:disabled){background:#2a529808;border-color:#2a5298;transform:translateX(4px)}.option-btn--selected{background:#2a52980d;border-color:#2a5298}.option-btn--correct{background:#2ecc711a!important;border-color:#2ecc71!important;box-shadow:0 0 8px #2ecc7133;color:#27ae60!important;font-weight:600}.option-btn--incorrect{animation:shake .3s ease-in-out;background:#e74c3c14!important;border-color:#e74c3c!important;color:#c0392b!important}.option-indicator{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:.75rem;height:20px;justify-content:center;width:20px}.option-indicator--correct{background:#2ecc71}.option-indicator--incorrect{background:#e74c3c}.question-feedback-row{animation:fadeIn .3s ease;display:flex;justify-content:flex-end;margin-top:16px}.quiz-intro-card{align-items:center;animation:fadeIn .5s ease;display:flex;flex-direction:column;gap:16px;padding:20px 0;text-align:center}.quiz-intro-card__title{color:#2c3e50;font-size:1.6rem;font-weight:700;margin:0}.quiz-intro-card__text{color:#7f8c8d;font-size:1rem;line-height:1.5;margin:0;max-width:500px}.completion-card{align-items:center;animation:scaleIn .5s cubic-bezier(.34,1.56,.64,1) forwards;display:flex;flex-direction:column;gap:24px;text-align:center}.completion-card__icon-wrapper{align-items:center;background:#2ecc711a;border-radius:50%;color:#2ecc71;display:flex;height:80px;justify-content:center;width:80px}.completion-card__title{color:#2c3e50;font-size:1.8rem;font-weight:800;margin:0}.completion-card__subtitle{color:#7f8c8d;font-size:1rem;margin:0}.score-display{align-items:center;display:flex;flex-direction:column;gap:8px;margin:16px 0}.score-display__circle{align-items:center;border:8px solid #f1f2f6;border-radius:50%;border-top-color:#2ecc71;box-shadow:0 4px 10px #0000000d;color:#2c3e50;display:flex;font-size:2rem;font-weight:800;height:120px;justify-content:center;width:120px}.score-display__label{color:#95a5a6;font-size:.85rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}.interactive-sentence{border-radius:4px;cursor:pointer;padding:2px 0;transition:background-color .2s ease,color .2s ease}.interactive-sentence:hover{background-color:#3498db1a}.tagged-word{border-bottom:2px dashed #2980b966;color:#2980b9;cursor:pointer;font-weight:600;position:relative;transition:all .2s ease}.tagged-word:hover{background-color:#2980b91a;border-bottom-color:#1e3c72;border-radius:2px;color:#1e3c72}.translation-tooltip{animation:scaleIn .2s cubic-bezier(.16,1,.3,1) forwards;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 10px 25px #0000001a;display:flex;flex-direction:column;gap:4px;min-width:100px;padding:10px 14px;position:fixed;text-align:center;transform:translateX(-50%);z-index:1000}.translation-tooltip:before{background:#fff;border-left:1px solid #e2e8f0;border-top:1px solid #e2e8f0;content:"";height:12px;left:50%;position:absolute;top:-6px;transform:translateX(-50%) rotate(45deg);width:12px}.translation-tooltip__word{color:#95a5a6;font-size:.85rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.translation-tooltip__trans{color:#2c3e50;font-size:1.1rem;font-weight:700}@media (max-width:768px){.story-page-container{padding:24px 12px}.book-container{border-radius:14px;padding:28px 20px}.story-header{flex-wrap:wrap;gap:8px}.story-header__title{font-size:1.25rem}.story-segment__text{font-size:1.05rem;line-height:1.7}.question-box{margin:16px 0;padding:18px}.question-box__prompt{font-size:1rem}.option-btn{font-size:.9rem;padding:12px 14px}.story-nav-actions{gap:8px}.story-nav-btn{font-size:.85rem;padding:8px 14px}.quiz-intro-card__title{font-size:1.3rem}.completion-card__title{font-size:1.4rem}.score-display__circle{font-size:1.6rem;height:100px;width:100px}.stories-grid{gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media (max-width:480px){.story-page-container{padding:16px 8px}.book-container{border-radius:10px;gap:20px;padding:20px 14px}.story-header__title{font-size:1.1rem}.story-header__back-btn{font-size:.85rem;gap:4px}.story-segment__text{font-size:.95rem;line-height:1.65}.question-box{border-radius:8px;margin:12px 0;padding:14px}.question-box__prompt{font-size:.95rem}.option-btn{font-size:.85rem;padding:10px 12px}.story-nav-actions{flex-direction:column;gap:12px}.story-nav-btn{justify-content:center;width:100%}.read-all-toggle{font-size:.8rem}.quiz-intro-card__title{font-size:1.15rem}.quiz-intro-card__text{font-size:.9rem}.completion-card__title{font-size:1.2rem}.completion-card__subtitle{font-size:.9rem}.score-display__circle{border-width:6px;font-size:1.3rem;height:80px;width:80px}.tts-btn{font-size:.8rem;padding:6px 12px}.story-card{min-height:180px;padding:18px}.story-card__title{font-size:1.1rem}.stories-grid{gap:12px;grid-template-columns:1fr}.translation-tooltip{min-width:80px;padding:8px 10px}}.stories-grid{gap:clamp(14px,2vw,24px);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.story-header{flex-wrap:wrap;gap:10px}.story-header__title-area{flex:1 1 160px;min-width:0}.story-header__title{font-size:clamp(1.1rem,3vw,1.5rem);overflow-wrap:break-word;word-break:break-word}.story-header__right{align-items:center;display:flex;flex-shrink:0;justify-content:flex-end}.story-nav-actions{flex-wrap:wrap;gap:12px}.translation-tooltip{box-sizing:border-box;max-width:calc(100vw - 24px)}.music-dashboard-root{display:flex;flex-direction:column;gap:24px}.music-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:16px}.song-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffe6;border:1px solid #ffffff80;border-radius:16px;box-shadow:0 8px 24px 0 #1f268712;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;min-height:200px;overflow:hidden;padding:20px;position:relative;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s ease}.song-card:hover{box-shadow:0 14px 32px 0 #1f268724;transform:translateY(-4px)}.song-card__cover{align-items:center;border-radius:12px;box-shadow:inset 0 0 20px #00000026;color:#fff;display:flex;height:110px;justify-content:center;margin-bottom:14px;overflow:hidden;position:relative}.song-card__image{display:block;height:100%;object-fit:cover;transition:transform .4s ease;width:100%}.song-card:hover .song-card__image{transform:scale(1.05)}.song-card__vinyl{align-items:center;background:radial-gradient(circle,#333 25%,#111 26%,#222 70%,#000 100%);border:3px solid #fff6;border-radius:50%;box-shadow:0 4px 12px #00000040;display:flex;height:60px;justify-content:center;transition:transform .6s ease;width:60px}.song-card:hover .song-card__vinyl{transform:rotate(180deg)}.song-card__vinyl-inner{background:#e74c3c;border:2px solid #fff;border-radius:50%;height:18px;width:18px}.song-card__info{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.song-card__title{color:#2c3e50;font-size:1.15rem;font-weight:700;line-height:1.3;margin:0}.song-card__artist{color:#7f8c8d;font-size:.92rem;margin:0}.song-card__footer{align-items:center;border-top:1px solid #0000000f;display:flex;justify-content:space-between;padding-top:10px}.song-card__meta-tags{display:flex;gap:8px}.song-card__tag{background:#2a529814;border-radius:6px;color:#2a5298;font-size:.78rem;font-weight:600;padding:3px 8px}.song-card__play-btn{align-items:center;background:#2a5298;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.88rem;font-weight:600;gap:6px;padding:8px 16px;transition:background .2s,transform .1s}.song-card__play-btn:hover{transform:scale(1.03)}.song-player-root{background:#f8fafc;color:#1e293b;display:flex;flex-direction:column;font-family:inherit;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;min-height:100vh;overflow:hidden}.song-player-top-bar{background:#fff;box-shadow:0 4px 6px -1px #0000000d;display:flex;flex-direction:column;flex-shrink:0;position:-webkit-sticky;position:sticky;top:0;z-index:50}.song-player-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:16px 24px}.song-player-header__left{align-items:center;display:flex;gap:16px}.song-player-header__back-btn{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:6px;padding:8px 14px;transition:background .2s}.song-player-header__back-btn:hover{background:#e2e8f0;color:#0f172a}.song-player-header__cover{border-radius:8px;box-shadow:0 2px 8px #00000026;flex-shrink:0;height:44px;object-fit:cover;width:44px}.song-player-header__title-block{display:flex;flex-direction:column}.song-player-header__title{color:#0f172a;font-size:1.25rem;font-weight:700;margin:0}.song-player-header__subtitle{color:#64748b;font-size:.85rem;margin:0}.song-player-header__controls{align-items:center;display:flex;gap:12px}.toggle-switch-btn{background:#fff;border:1px solid #cbd5e1;border-radius:20px;color:#475569;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:8px;padding:8px 14px;transition:all .2s ease}.toggle-switch-btn--active{background:#3b82f6;border-color:#3b82f6;color:#fff}.toggle-switch-btn--active:hover{background:#2563eb}.audio-control-bar{background:#fff;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:8px;padding:12px 24px}.audio-control-bar__seeker-row{align-items:center;display:flex;gap:12px}.audio-control-bar__time{font-feature-settings:"tnum";color:#64748b;font-size:.82rem;font-variant-numeric:tabular-nums;font-weight:600;min-width:40px}.audio-control-bar__slider{-webkit-appearance:none;background:#e2e8f0;border-radius:3px;cursor:pointer;flex:1 1;height:6px;outline:none}.audio-control-bar__slider::-webkit-slider-thumb{-webkit-appearance:none;background:#3b82f6;border-radius:50%;box-shadow:0 1px 4px #0000004d;cursor:pointer;height:16px;-webkit-transition:transform .1s;transition:transform .1s;width:16px}.audio-control-bar__slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.audio-control-bar__actions-row{align-items:center;display:flex;justify-content:space-between}.audio-control-bar__main-btns{align-items:center;display:flex;gap:16px}.play-pause-btn{align-items:center;background:#2563eb;border:none;border-radius:50%;box-shadow:0 4px 10px #3b82f64d;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;transition:transform .15s,background .15s;width:44px}.play-pause-btn:hover{transform:scale(1.06)}.seek-step-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:background .2s,color .2s}.seek-step-btn:hover{background:#f1f5f9;color:#0f172a}.audio-control-bar__sub-controls{align-items:center;display:flex;gap:12px}.audio-control-bar__speed-control{align-items:center;display:flex;gap:10px}.audio-control-bar__speed-label{color:#64748b;font-size:.82rem;font-weight:500;white-space:nowrap}.audio-control-bar__speed-label strong{color:#1e293b;display:inline-block;font-weight:700;min-width:32px}.audio-control-bar__speed-slider{-webkit-appearance:none;background:#e2e8f0;border-radius:3px;cursor:pointer;height:6px;outline:none;width:105px}.audio-control-bar__speed-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#3b82f6;border-radius:50%;box-shadow:0 1px 3px #00000040;cursor:pointer;height:15px;-webkit-transition:transform .1s,background-color .15s;transition:transform .1s,background-color .15s;width:15px}.audio-control-bar__speed-slider::-webkit-slider-thumb:hover{background:#2563eb;transform:scale(1.2)}.audio-control-bar__speed-slider::-moz-range-thumb{background:#3b82f6;border:none;border-radius:50%;box-shadow:0 1px 3px #00000040;cursor:pointer;height:15px;width:15px}.audio-control-bar__sync-control{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:8px;padding:3px 8px}.audio-control-bar__sync-label{color:#64748b;font-size:.8rem;font-weight:500;white-space:nowrap}.audio-control-bar__sync-label strong{color:#4f46e5;display:inline-block;font-weight:700;min-width:34px}.audio-control-bar__sync-btns{align-items:center;display:flex;gap:4px}.sync-adjust-btn{background:#fff;border:1px solid #cbd5e1;border-radius:4px;color:#334155;cursor:pointer;font-size:.75rem;font-weight:600;padding:2px 6px;transition:all .15s ease}.sync-adjust-btn:hover{background:#e0e7ff;border-color:#a5b4fc;color:#4338ca}.sync-adjust-btn--reset{background:#fee2e2;border-color:#fca5a5;color:#dc2626;padding:2px 5px}.sync-adjust-btn--reset:hover{background:#fecaca;color:#b91c1c}.lyrics-viewport{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:36px 20px 80px;scroll-behavior:smooth}.lyrics-container{display:flex;flex-direction:column;gap:14px;max-width:720px;width:100%}.lyric-line-row{align-items:center;background:#0000;border:1px solid #0000;border-radius:14px;box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;padding:16px 20px;position:relative;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.lyric-line-row:hover{background:#f1f5f9cc;border-color:#e2e8f0}.lyric-line-row--active{background:#eff6ff!important;border-color:#bfdbfe!important;box-shadow:0 4px 14px #3b82f614}.lyric-line-row__text-block{display:flex;flex:1 1;flex-direction:column;gap:4px}.lyric-line-row__foreign{color:#334155;font-size:1.25rem;font-weight:600;line-height:1.85rem;transition:color .2s ease,font-size .2s ease}.lyric-line-row--active .lyric-line-row__foreign{color:#1d4ed8;font-size:1.32rem;font-weight:700;line-height:1.85rem}.lyric-line-row__english{color:#64748b;font-size:.96rem;font-style:italic;font-weight:500;line-height:1.35}.lyric-line-row--active .lyric-line-row__english{color:#3b82f6}.lyric-line-row__actions{align-items:center;display:flex;gap:8px;margin-left:16px;opacity:.5;transition:opacity .2s}.lyric-line-row--active .lyric-line-row__actions,.lyric-line-row--bookmarked .lyric-line-row__actions,.lyric-line-row:hover .lyric-line-row__actions{opacity:1}.lyric-line-row__time-tag{font-feature-settings:"tnum";color:#94a3b8;font-size:.78rem;font-variant-numeric:tabular-nums;font-weight:500}.lyric-bookmark-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:50%;color:#64748b;cursor:pointer;display:flex;height:34px;justify-content:center;transition:all .2s;width:34px}.lyric-bookmark-btn:hover{background:#f1f5f9;border-color:#facc15;color:#eab308;transform:scale(1.1)}.lyric-bookmark-btn--saved{background:#fef08a!important;border-color:#eab308!important;color:#ca8a04!important}.toast-notice{align-items:center;animation:toastSlideUp .25s ease-out;background:#0f172a;border-radius:10px;bottom:24px;box-shadow:0 10px 25px #0003;color:#fff;display:flex;font-size:.9rem;font-weight:500;gap:10px;padding:12px 20px;position:fixed;right:24px;z-index:100}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.song-player-body{display:flex;height:calc(100vh - 160px);overflow:hidden;position:relative}.song-player-body .lyrics-viewport{flex:1 1;min-width:0}.lyric-word{border:1px solid #0000;border-radius:5px;box-sizing:border-box;cursor:pointer;display:inline-block;margin:0 1px;padding:1px 4px;transition:background-color .15s ease,color .15s ease;-webkit-user-select:none;user-select:none}.lyric-word:hover{background-color:#3b82f626;color:#2563eb}.lyric-word--saved{background-color:#fef08a!important;border:1px solid #eab30866;box-shadow:0 1px 4px #ca8a0440;color:#854d0e!important;font-weight:700}.lyric-word--saved:hover{background-color:#fde047!important;color:#713f12!important}.lyric-punct{-webkit-user-select:none;user-select:none}.song-saved-sidebar{background:#fff;border-left:1px solid #e2e8f0;box-shadow:-4px 0 16px #00000008;display:flex;flex-direction:column;height:100%;min-width:300px;width:330px;z-index:10}.saved-sidebar__header{background:#fcfcfd;border-bottom:1px solid #e2e8f0;padding:18px 20px}.saved-sidebar__title-wrap{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.saved-sidebar__title{color:#1e293b;font-size:1.12rem;font-weight:700;margin:0}.saved-sidebar__count-badge{background:#3b82f6;border-radius:9999px;color:#fff;font-size:.8rem;font-weight:700;padding:2px 8px}.saved-sidebar__subtitle{color:#64748b;font-size:.82rem;margin:0}.saved-sidebar__list{gap:10px;overflow-y:auto;padding:14px 16px}.saved-sidebar__empty,.saved-sidebar__list{display:flex;flex:1 1;flex-direction:column}.saved-sidebar__empty{align-items:center;color:#94a3b8;justify-content:center;padding:30px 20px;text-align:center}.saved-sidebar__empty p{color:#64748b;font-size:.95rem;font-weight:600;margin:0 0 6px}.saved-sidebar__empty small{font-size:.82rem;line-height:1.4}.saved-sidebar__item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:10px;justify-content:space-between;padding:12px 14px;transition:all .2s ease}.saved-sidebar__item:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 8px #0000000a}.saved-sidebar__item-info{display:flex;flex:1 1;flex-direction:column;gap:3px;min-width:0}.saved-sidebar__word-row{align-items:center;display:flex;gap:8px}.saved-sidebar__word{color:#1e293b;font-size:1.05rem;font-weight:700;word-break:break-word}.saved-sidebar__speak-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:3px;transition:color .15s,background .15s}.saved-sidebar__speak-btn:hover{background:#eff6ff;color:#2563eb}.saved-sidebar__trans{color:#475569;font-size:.86rem;font-style:italic;word-break:break-word}.saved-sidebar__remove-btn{background:#0000;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;font-size:.95rem;line-height:1;padding:4px 6px;transition:all .15s}.saved-sidebar__remove-btn:hover{background:#fee2e2;color:#ef4444}.saved-sidebar__footer{background:#fcfcfd;border-top:1px solid #e2e8f0;padding:16px 20px}.practice-words-btn{align-items:center;background:#2563eb;border:none;border-radius:12px;box-shadow:0 4px 12px #2563eb40;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:12px 18px;transition:transform .15s,box-shadow .15s,opacity .15s;width:100%}.practice-words-btn:hover:not(:disabled){box-shadow:0 6px 16px #2563eb59;transform:translateY(-1px)}.practice-words-btn:disabled{background:#cbd5e1;box-shadow:none;color:#94a3b8;cursor:not-allowed}.toggle-switch-btn--mobile-only{display:none}.song-saved-drawer-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;bottom:0;display:flex;justify-content:flex-end;left:0;position:fixed;right:0;top:0;z-index:1000}.song-saved-drawer-mobile{animation:drawerSlideIn .25s cubic-bezier(.16,1,.3,1);background:#fff;box-shadow:-8px 0 24px #0003;display:flex;flex-direction:column;height:100%;max-width:360px;width:85%}.saved-drawer__close-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:1.25rem;padding:6px}.saved-drawer__close-btn:hover{background:#f1f5f9;color:#0f172a}@keyframes drawerSlideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}@media (max-width:960px){.song-saved-sidebar{display:none}.toggle-switch-btn--mobile-only{display:flex}}@media (max-width:640px){.audio-control-bar__actions-row{flex-wrap:wrap;gap:12px;justify-content:center}.audio-control-bar__sub-controls{justify-content:center;width:100%}}.music-dash-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.music-storage-badge{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#475569;display:inline-flex;font-size:.85rem;font-weight:500;gap:8px;padding:6px 14px}.music-dash-nav-tabs{border-bottom:2px solid #e2e8f0;display:flex;gap:10px;margin-bottom:24px;padding-bottom:2px}.music-nav-tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:-2px;padding:10px 18px;transition:all .2s ease}.music-nav-tab-btn:hover{color:#0f172a}.music-nav-tab-btn.active{border-bottom-color:#4f46e5;color:#4f46e5}.music-search-section{margin-bottom:28px}.music-search-bar{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;display:flex;gap:12px;padding:6px 14px;transition:border-color .2s ease,box-shadow .2s ease}.music-search-bar:focus-within{border-color:#6366f1;box-shadow:0 4px 12px #6366f126}.music-search-input{border:none;color:#1e293b;flex:1 1;font-size:1rem;outline:none;padding:8px 0}.music-search-submit-btn{background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.92rem;font-weight:600;padding:8px 18px;transition:background .15s ease}.music-search-submit-btn:hover:not(:disabled){background:#4338ca}.music-search-submit-btn:disabled{cursor:not-allowed;opacity:.6}.music-search-loading{align-items:center;color:#64748b;display:flex;font-size:.92rem;gap:12px;padding:16px}.music-search-results-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 14px #0000000d;margin-top:14px;padding:16px}.music-search-results-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.music-search-results-header h4{color:#0f172a;font-size:1rem;margin:0}.music-search-results-close{background:none;border:none;color:#64748b;cursor:pointer;font-size:.85rem;font-weight:500}.music-search-results-close:hover{color:#0f172a}.music-search-results-list{display:flex;flex-direction:column;gap:10px;max-height:400px;overflow-y:auto}.music-search-result-item{align-items:center;background:#f8fafc;border:1px solid #f1f5f9;border-radius:8px;display:flex;gap:14px;padding:8px;transition:background .15s ease}.music-search-result-item:hover{background:#f1f5f9}.music-search-result-thumb{border-radius:6px;height:48px;object-fit:cover;width:72px}.music-search-result-info{flex:1 1;min-width:0}.music-search-result-title{color:#0f172a;font-size:.95rem;font-weight:600;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.music-search-result-meta{color:#64748b;display:flex;font-size:.8rem;gap:6px}.music-search-result-add-btn{align-items:center;background:#4f46e5;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:600;gap:6px;padding:6px 14px;transition:background .15s ease}.music-search-result-add-btn:hover{background:#4338ca}.music-custom-library-section{margin-top:10px}.music-section-subhead{align-items:center;display:flex;gap:10px;margin-bottom:16px}.music-section-subhead__title{color:#0f172a;font-size:1.15rem;font-weight:700;margin:0}.music-section-subhead__count{background:#e0e7ff;border-radius:12px;color:#4338ca;font-size:.8rem;font-weight:600;padding:2px 8px}.music-dash-status-msg{color:#64748b;font-style:italic;padding:16px 0}.music-dash-empty-state{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;color:#64748b;padding:40px 20px;text-align:center}.music-dash-empty-state h3{color:#1e293b;margin:0 0 8px}.music-dash-cta-btn{align-items:center;background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:6px;margin-top:14px;padding:10px 20px}.song-card__custom-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#4f46e5e6;border-radius:4px;color:#fff;font-size:.72rem;font-weight:700;left:8px;letter-spacing:.5px;padding:3px 8px;position:absolute;text-transform:uppercase;top:8px}.song-card__actions{align-items:center;display:flex;gap:6px}.song-card__download-btn{align-items:center;background:#0284c7;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:600;gap:5px;padding:6px 12px;transition:background .15s ease}.song-card__download-btn:hover:not(:disabled){background:#0369a1}.song-card__delete-btn{align-items:center;background:#fee2e2;border:none;border-radius:6px;color:#dc2626;cursor:pointer;display:inline-flex;height:28px;justify-content:center;transition:background .15s ease;width:28px}.song-card__delete-btn:hover{background:#fca5a5;color:#b91c1c}.song-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172aa6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:999}.song-review-modal{animation:modalPop .2s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 40px #00000040;display:flex;flex-direction:column;max-height:90vh;max-width:720px;overflow:hidden;width:100%}@keyframes modalPop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.song-review-modal__header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:16px 24px}.song-review-modal__title{color:#0f172a;font-size:1.2rem;font-weight:700;margin:0}.song-review-modal__close-btn{background:none;border:none;border-radius:6px;color:#64748b;cursor:pointer;padding:4px}.song-review-modal__close-btn:hover{background:#f1f5f9;color:#0f172a}.song-review-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:48px 24px;text-align:center}.song-review-spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#4f46e5;height:36px;margin-bottom:16px;width:36px}@keyframes spin{to{transform:rotate(1turn)}}.song-review-loading__text{color:#0f172a;font-size:1.05rem;font-weight:600;margin:0 0 6px}.song-review-loading__subtext{color:#64748b;font-size:.88rem;margin:0;max-width:440px}.song-review-body{display:flex;flex-direction:column;gap:16px;overflow-y:auto;padding:20px 24px}.song-review-track-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:16px;padding:12px}.song-review-track-thumb{border-radius:8px;height:80px;object-fit:cover;width:120px}.song-review-fields{display:flex;flex:1 1;flex-direction:column;gap:8px}.song-review-field{display:flex;flex-direction:column;gap:4px}.song-review-field label{color:#64748b;font-size:.75rem;font-weight:600;text-transform:uppercase}.song-review-input{border:1px solid #cbd5e1;border-radius:6px;color:#0f172a;font-size:.92rem;outline:none;padding:6px 10px}.song-review-input:focus{border-color:#6366f1}.song-review-lang-banner{align-items:center;border-radius:8px;display:flex;font-size:.88rem;gap:10px;padding:10px 14px}.song-review-lang-banner--match{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.song-review-lang-banner--warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.song-review-tabs{border-bottom:1px solid #e2e8f0;display:flex;gap:10px}.song-review-tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;font-size:.9rem;font-weight:600;padding:8px 14px}.song-review-tab-btn.active{border-bottom-color:#4f46e5;color:#4f46e5}.song-review-lyrics-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;max-height:240px;overflow-y:auto}.song-review-lyrics-table{display:flex;flex-direction:column}.song-review-line-row{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;gap:14px;padding:8px 12px}.song-review-line-row:last-child{border-bottom:none}.song-review-line-time{background:#f1f5f9;border-radius:4px;color:#64748b;font-family:monospace;font-size:.8rem;padding:2px 6px;white-space:nowrap}.song-review-line-content{flex:1 1}.song-review-line-foreign{color:#0f172a;font-size:.9rem;font-weight:600;margin-bottom:2px}.song-review-line-english{color:#64748b;font-size:.85rem}.song-review-empty-lyrics{color:#64748b;padding:32px;text-align:center}.song-review-manual-container{display:flex;flex-direction:column;gap:10px}.song-review-manual-hint{color:#64748b;font-size:.85rem;margin:0}.song-review-textarea{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:.9rem;outline:none;padding:10px;resize:vertical;width:100%}.song-review-textarea:focus{border-color:#6366f1}.song-review-footer{border-top:1px solid #e2e8f0;display:flex;gap:10px;justify-content:flex-end;padding-top:10px}.song-review-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.92rem;font-weight:600;gap:6px;padding:8px 18px;transition:background .15s ease}.song-review-btn--cancel{background:#f1f5f9;color:#475569}.song-review-btn--cancel:hover{background:#e2e8f0}.song-review-btn--secondary{background:#e0e7ff;color:#4338ca}.song-review-btn--secondary:hover:not(:disabled){background:#c7d2fe}.song-review-btn--primary{background:#16a34a;color:#fff}.song-review-btn--primary:hover:not(:disabled){background:#15803d}.song-review-btn:disabled{cursor:not-allowed;opacity:.6}.music-dash-toast{animation:toastSlideUp .2s ease-out;background:#0f172a;border-radius:8px;box-shadow:0 4px 12px #00000026;color:#fff;font-size:.9rem;font-weight:500;margin-bottom:16px;padding:10px 18px}.song-confirm-popup{animation:modalPop .18s ease-out;background:#fff;border-radius:14px;box-shadow:0 20px 30px #00000040;box-sizing:border-box;display:flex;flex-direction:column;gap:14px;max-width:440px;padding:24px;width:100%}.song-confirm-popup__title{color:#0f172a;font-size:1.2rem;font-weight:700;margin:0}.song-confirm-popup__text{color:#475569;font-size:.95rem;line-height:1.5;margin:0}.song-confirm-popup__actions{display:flex;gap:10px;justify-content:flex-end;margin-top:6px}.song-confirm-popup__btn{border:none;border-radius:8px;cursor:pointer;font-size:.92rem;font-weight:600;padding:8px 18px;transition:background-color .15s ease}.song-confirm-popup__btn--cancel{background:#f1f5f9;color:#475569}.song-confirm-popup__btn--cancel:hover{background:#e2e8f0}.song-confirm-popup__btn--delete{background:#dc2626;color:#fff}.song-confirm-popup__btn--delete:hover{background:#b91c1c}@media (max-width:640px){.music-dashboard-root{gap:16px}.music-dash-top-bar{gap:10px;margin-bottom:12px}.music-dash-nav-tabs{gap:4px;width:100%}.music-nav-tab-btn{flex:1 1;font-size:.9rem;padding:10px 8px;text-align:center}.music-storage-badge{font-size:.78rem;padding:4px 10px}.music-search-section{margin-bottom:18px}.music-search-bar{gap:8px;padding:6px 10px}.music-search-input{font-size:.95rem;min-width:0}.music-search-submit-btn{flex-shrink:0;font-size:.85rem;padding:8px 12px}.music-search-results-panel{padding:12px}.music-search-results-list{gap:10px;max-height:62vh}.music-search-result-item{align-items:flex-start;flex-wrap:wrap;gap:10px;padding:10px}.music-search-result-thumb{flex-shrink:0;height:44px;width:64px}.music-search-result-info{flex-basis:calc(100% - 80px);flex-grow:1;flex-shrink:1;min-width:0}.music-search-result-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:.9rem;line-height:1.3;white-space:normal}.music-search-result-meta{flex-wrap:wrap;font-size:.78rem}.music-search-result-add-btn{font-size:.88rem;justify-content:center;min-height:40px;padding:10px 14px;width:100%}.song-modal-overlay{align-items:flex-end;padding:10px}.song-review-modal{border-radius:14px;max-height:92vh}.song-review-modal__header{padding:12px 16px}.song-review-body{gap:12px;padding:14px 16px}.song-review-track-card{align-items:stretch;flex-direction:column;gap:10px}.song-review-track-thumb{height:130px;width:100%}.song-review-input{font-size:16px;min-height:40px}.song-review-line-row{flex-direction:column;gap:6px;padding:8px 10px}.song-review-footer{flex-direction:column-reverse;gap:8px}.song-review-btn{justify-content:center;min-height:42px;width:100%}.song-player-header{gap:8px;padding:10px 12px}.song-player-header__left{gap:10px;min-width:0;width:100%}.song-player-header__cover{height:38px;width:38px}.song-player-header__title-block{flex:1 1;min-width:0}.song-player-header__title{font-size:1rem}.song-player-header__subtitle,.song-player-header__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.song-player-header__subtitle{font-size:.78rem}.song-player-header__controls{flex-wrap:wrap;gap:6px;justify-content:flex-start;width:100%}.toggle-switch-btn{flex:1 1 auto;font-size:.78rem;height:36px;min-height:36px;padding:0 10px}.audio-control-bar{padding:10px 12px}.audio-control-bar__sub-controls{flex-wrap:wrap;gap:8px}.lyrics-viewport{padding:20px 12px 60px}.lyric-line-row{padding:12px 14px}.lyric-line-row__foreign{font-size:1.08rem;line-height:1.6rem}.lyric-line-row--active .lyric-line-row__foreign{font-size:1.14rem;line-height:1.6rem}}.music-grid{gap:20px;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}.toggle-switch-btn{align-items:center;border-radius:8px;box-sizing:border-box;display:inline-flex;height:40px;justify-content:center;min-height:40px;padding:0 14px}.song-player-body{flex:1 1;height:auto;min-height:0}.music-dash-top-bar{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px;padding-bottom:2px}.music-dash-top-bar .music-dash-nav-tabs{border-bottom:none;margin-bottom:0;padding-bottom:0}.music-dash-top-bar .music-storage-badge{margin-bottom:6px}@media (max-width:640px){.toggle-switch-btn{flex:1 1 auto;font-size:.78rem;height:36px;min-height:36px;padding:0 10px}}.audio-control-bar__speed-control,.audio-control-bar__sync-control,.song-card__actions,.song-card__footer,.song-card__meta-tags{flex-wrap:wrap}@media (max-width:400px){.audio-control-bar__seeker-row{gap:8px}.audio-control-bar__speed-slider{width:80px}}.pronunciation-practice{align-items:center;display:flex;flex-direction:column;gap:12px;margin-top:8px}.pronunciation-prompt{color:#2a5298;font-size:1.1rem;text-align:center}.pronunciation-controls{align-items:center;display:flex;gap:12px;justify-content:center}.pronunciation-mic-btn{align-items:center;background:none;border:1.5px solid #2a529840;border-radius:50%;color:#2a5298;cursor:pointer;display:inline-flex;flex-shrink:0;height:36px;justify-content:center;padding:0;transition:background .18s,border-color .18s,transform .12s;width:36px}.pronunciation-mic-btn:hover{background:#2a529814;border-color:#2a5298;transform:scale(1.1)}.pronunciation-mic-btn:active{transform:scale(.96)}.pronunciation-mic-btn--recording{animation:pronunciation-pulse 1.2s ease-in-out infinite;border-color:#c0392b;color:#c0392b}@keyframes pronunciation-pulse{0%,to{box-shadow:0 0 0 0 #c0392b59}50%{box-shadow:0 0 0 6px #c0392b00}}.pronunciation-loading{align-items:center;display:flex;justify-content:center;min-height:40px}.pronunciation-error{color:#c0392b;font-size:.9rem;text-align:center}.pronunciation-overall-score{color:#2a5298;font-size:2rem;font-weight:700}.pronunciation-overall-label{color:#666;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}.pronunciation-words{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:420px}.pronunciation-word{border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;padding:4px 10px;transition:transform .15s ease,filter .15s ease}.pronunciation-word:hover{filter:brightness(.92);transform:scale(1.05)}.pronunciation-word:active{transform:scale(.97)}.pronunciation-word--good{background:#27ae6026;color:#1e8449}.pronunciation-word--ok{background:#f1c40f33;color:#9a7d0a}.pronunciation-word--poor{background:#c0392b1f;color:#922b21}.pronunciation-word--omission{background:#7f7f7f1f;color:#888;text-decoration:line-through}.pronunciation-word-container{display:inline-block;position:relative}.pronunciation-word-container:hover .pronunciation-phonemes-tooltip{display:flex}.pronunciation-phonemes-tooltip{background:#fff;border:1px solid #e2e8f0;border-radius:6px;bottom:100%;box-shadow:0 4px 12px #0000001a;display:none;gap:4px;left:50%;margin-bottom:6px;padding:6px;position:absolute;transform:translateX(-50%);z-index:100}.pronunciation-phonemes-tooltip .pronunciation-word{cursor:default;filter:none!important;font-size:.85rem;padding:2px 6px;pointer-events:none;transform:none!important}@media (max-width:480px){.pronunciation-mic-btn{height:44px;width:44px}.pronunciation-overall-score{font-size:1.6rem}.pronunciation-prompt{font-size:1rem}.pronunciation-words{gap:6px;max-width:100%}.pronunciation-word{font-size:.9rem;padding:4px 8px}.pronunciation-phonemes-tooltip{padding:4px}.pronunciation-phonemes-tooltip .pronunciation-word{font-size:.75rem;padding:2px 4px}}.alphabet-dash-root{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 8px 32px 0 #1f268714;color:#333;display:flex;flex-direction:column;gap:24px;padding:24px}.alphabet-tabs{border-bottom:2px solid #0000000d;display:flex;gap:12px;padding-bottom:12px}.alphabet-tab-btn{background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 24px;transition:all .3s ease}.alphabet-tab-btn:hover{background:#1e3c720d;color:#1e3c72}.alphabet-tab-btn--active{background:#1e3c72;box-shadow:0 4px 15px #1e3c724d;color:#fff}.alphabet-grid-container{padding:12px 0}.alphabet-grid--rtl{direction:rtl;text-align:right}.alphabet-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.alphabet-card{align-items:center;background:#fff;border:1px solid #0000000d;border-radius:12px;box-shadow:0 4px 12px #0000000d;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:20px 16px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.alphabet-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-5px)}.alphabet-card__main-char{color:#1e3c72;font-size:2.2rem;font-weight:700;margin-bottom:8px}.alphabet-card__name{color:#333;font-size:.95rem;font-weight:600}.alphabet-card__translit{color:#777;font-size:.85rem;margin-top:2px}.alphabet-card__audio-btn{align-items:center;background:#1e3c721a;border:none;border-radius:50%;bottom:8px;color:#1e3c72;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:8px;transition:background .2s ease;width:28px}.alphabet-card__audio-btn:hover{background:#1e3c7233}.alphabet-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.alphabet-modal{animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:16px;box-shadow:0 10px 30px #0003;max-width:500px;padding:30px;position:relative;width:90%}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.alphabet-modal__close{background:#0000;border:none;color:#999;cursor:pointer;font-size:2rem;line-height:1;position:absolute;right:20px;top:15px}.alphabet-modal__close:hover{color:#333}.alphabet-modal__header{align-items:center;border-bottom:2px dashed #0000000d;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:16px}.alphabet-modal__char{color:#1e3c72;font-size:3.5rem;font-weight:700;margin:0}.alphabet-modal__speaker-btn{align-items:center;background:#eef2f7;border:none;border-radius:30px;color:#1e3c72;cursor:pointer;display:flex;font-weight:700;gap:8px;padding:10px 16px;transition:background .2s ease}.alphabet-modal__speaker-btn:hover{background:#e1e7f0}.alphabet-modal__details{display:flex;flex-direction:column;gap:16px}.alphabet-modal__detail-item{display:flex;font-size:1.1rem;justify-content:space-between}.detail-label{color:#666;font-weight:600}.detail-value{color:#333;font-weight:700}.alphabet-positional-section{border-top:1px solid #0000000d;margin-top:15px;padding-top:15px}.alphabet-positional-section h3{color:#555;font-size:1.1rem;margin:0 0 10px}.alphabet-positional-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.positional-card{align-items:center;background:#f8fafc;border:1px solid #0000000d;border-radius:8px;display:flex;flex-direction:column;padding:10px 4px}.positional-shape{color:#1e3c72;font-size:1.8rem;font-weight:700}.positional-label{color:#777;font-size:.75rem;margin-top:4px}.alphabet-modal__example{border-top:1px solid #0000000d;margin-top:10px;padding-top:15px}.alphabet-modal__example h3{color:#555;font-size:1.1rem;margin:0 0 10px}.example-word-card{align-items:center;background:#eef2f7;border-radius:10px;display:flex;justify-content:space-between;padding:12px 16px}.example-word-main{align-items:center;display:flex;gap:12px}.example-word-text{color:#1e3c72;font-size:1.4rem;font-weight:700}.example-word-audio{align-items:center;background:#0000;border:none;color:#2a5298;cursor:pointer;display:flex;justify-content:center}.example-word-translit{color:#666;font-size:1rem}.alphabet-practice-root{background:#fff;border-radius:16px;box-shadow:0 4px 15px #00000008;display:flex;flex-direction:column;gap:20px;padding:24px}.alphabet-practice-header{align-items:center;display:flex;gap:15px;justify-content:space-between}.alphabet-progressbar-container{background:#e0e0e0;border-radius:6px;flex-grow:1;height:12px;overflow:hidden}.alphabet-progressbar-fill{background:linear-gradient(90deg,#11998e,#38ef7d);border-radius:6px;height:100%;transition:width .3s ease}.alphabet-question-count{color:#666;font-size:.9rem;font-weight:700}.alphabet-practice-prompt{color:#333;font-size:1.3rem;margin-bottom:20px;text-align:center}.alphabet-question-card{color:#1e3c72;font-size:4.5rem;font-weight:700;margin:20px 0;text-align:center}.alphabet-audio-hint-btn{align-items:center;background:#1e3c7214;border:none;border-radius:20px;color:#1e3c72;cursor:pointer;display:flex;font-weight:700;gap:8px;margin:0 auto 30px;padding:8px 16px}.alphabet-options-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-bottom:40px}.alphabet-option-btn{background:#fff;border:2px solid #e0e0e0;border-radius:12px;box-shadow:0 4px 6px #00000005;color:#444;cursor:pointer;font-size:1.1rem;font-weight:600;padding:16px;transition:all .2s ease}.alphabet-option-btn--large-char{color:#1e3c72;font-size:2.2rem;font-weight:700}.alphabet-option-btn:hover:not(:disabled){background:#2a529805;border-color:#2a5298}.alphabet-option-btn--selected{background:#2a529814;border-color:#2a5298;color:#2a5298}.alphabet-big-audio-btn{align-items:center;background:#1e3c720d;border:2px dashed #2a5298;border-radius:16px;color:#2a5298;cursor:pointer;display:flex;flex-direction:column;font-weight:700;gap:10px;margin:30px auto;padding:24px}.matching-question{margin-bottom:30px}.matching-columns{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.matching-col{display:flex;flex-direction:column;gap:12px}.matching-col h4{color:#666;margin:0 0 10px;text-align:center}.matching-item-btn{background:#fff;border:2px solid #e0e0e0;border-radius:10px;cursor:pointer;font-size:1.2rem;font-weight:700;min-height:50px;padding:12px;text-align:center;transition:all .2s ease}.matching-item-btn--selected{background:#2a529814;border-color:#2a5298;color:#2a5298}.matching-item-btn--matched{background:#2ecc7114;border-color:#2ecc71;color:#27ae60;cursor:not-allowed;opacity:.6}.alphabet-action-banner{border-top:1px solid #0000000d;display:flex;justify-content:flex-end;padding-top:20px}.alphabet-verify-btn{background:#1e3c72;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:12px 30px;transition:opacity .2s ease}.alphabet-verify-btn:disabled{background:#ccc;cursor:not-allowed}.alphabet-banner-content{align-items:center;display:flex;justify-content:space-between;width:100%}.alphabet-banner-msg{display:flex;flex-direction:column;font-size:1.1rem;font-weight:700}.alphabet-banner-msg--correct{color:#27ae60}.alphabet-banner-msg--incorrect{color:#c0392b}.correct-answer-text{color:#7f8c8d;font-size:.9rem;margin-top:4px}.alphabet-continue-btn{background:#27ae60;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:12px 30px}.alphabet-continue-btn:hover{background:#2ecc71}.alphabet-pronunciation-question{align-items:center;display:flex;flex-direction:column;gap:20px;margin-bottom:20px}.pronunciation-hint-card{background:#f8fafc;border:1px solid #0000000d;border-radius:12px;max-width:400px;padding:20px;text-align:center;width:100%}.pronunciation-hint-char{color:#1e3c72;font-size:3.5rem;font-weight:700;margin-bottom:10px}.pronunciation-target-word{color:#2a5298;font-size:2.2rem;font-weight:700;margin:8px 0}.pronunciation-target-trans{color:#777;font-size:1.1rem}.alphabet-practice-finished{background:#fff;border-radius:16px;padding:40px 20px;text-align:center}.alphabet-score-circle{align-items:center;border:6px solid #27ae60;border-radius:50%;display:flex;font-size:2rem;font-weight:700;height:120px;justify-content:center;margin:20px auto;width:120px}.alphabet-score-num{color:#27ae60}.alphabet-score-max{color:#999}.alphabet-practice-finished__desc{color:#555;font-size:1.1rem;margin-bottom:30px}.alphabet-practice-finished__btn{background:#1e3c72;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:12px 30px}.alphabet-loading{align-items:center;color:#666;display:flex;flex-direction:column;font-weight:600;justify-content:center;padding:60px 0}.alphabet-error-container{padding:40px;text-align:center}.alphabet-error-text{color:#c0392b;font-weight:700;margin-bottom:20px}.alphabet-retry-btn{background:#2a5298;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:8px 20px}@media (max-width:768px){.alphabet-positional-grid{grid-template-columns:repeat(2,1fr)}.matching-columns{gap:20px;grid-template-columns:1fr}.alphabet-question-card{font-size:3rem}.alphabet-card__audio-btn{height:44px;width:44px}.alphabet-modal__char{font-size:2.8rem}.alphabet-dash-root{gap:18px;padding:16px}.alphabet-tabs{flex-wrap:wrap;gap:8px}.alphabet-tab-btn{font-size:.95rem;padding:8px 16px}.alphabet-practice-root{padding:16px}.pronunciation-hint-char{font-size:2.8rem}.pronunciation-target-word{font-size:1.8rem}}@media (max-width:480px){.alphabet-question-card{font-size:2.5rem;margin:12px 0}.alphabet-practice-prompt{font-size:1.1rem}.alphabet-options-grid{gap:10px;margin-bottom:24px}.alphabet-option-btn{font-size:1rem;padding:12px}.alphabet-option-btn--large-char{font-size:1.8rem}.alphabet-big-audio-btn{margin:20px auto;padding:18px}.matching-item-btn{font-size:1.05rem;min-height:44px;padding:10px}.alphabet-modal{padding:20px}.alphabet-modal__char{font-size:2.4rem}.alphabet-modal__detail-item{font-size:1rem}.positional-shape{font-size:1.5rem}.alphabet-dash-root{gap:14px;padding:12px}.alphabet-card{padding:14px 10px}.alphabet-card__main-char{font-size:1.8rem}.pronunciation-hint-char{font-size:2.4rem}.pronunciation-target-word{font-size:1.6rem}.alphabet-continue-btn,.alphabet-verify-btn{font-size:1rem;padding:12px 20px}.alphabet-score-circle{font-size:1.6rem;height:100px;width:100px}}.alphabet-grid{gap:clamp(10px,2vw,20px);grid-template-columns:repeat(auto-fill,minmax(min(100%,120px),1fr))}.alphabet-options-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr))}.alphabet-modal{box-sizing:border-box;max-height:90dvh;overflow-y:auto;padding:clamp(16px,4vw,30px);width:min(92vw,500px)}.alphabet-banner-content,.alphabet-modal__header,.alphabet-practice-header,.example-word-card{flex-wrap:wrap;gap:10px}@media (max-width:480px){.alphabet-continue-btn,.alphabet-verify-btn{width:100%}}.initial-loading{align-items:center;display:flex;flex-direction:column;gap:10px;height:100vh;justify-content:center;margin:0;width:100vw}.initial-loading>h1{color:#000;font-size:2rem;font-weight:600}.error-loading-courses,.initial-loading>.loading-spinner{align-items:center;display:flex;justify-content:center}.error-loading-courses{flex-direction:column;gap:10px;height:100vh;width:100vw}.error-loading-courses>h1{color:red;font-size:2rem;font-weight:600}.error-loading-courses>h2{color:#505050;font-size:1.5rem;font-weight:400;text-align:center;width:60%}.learning-dashboard-root{background-color:#f5f7fb;color:#2c3e50;margin-top:64px;min-height:100vh}.learning-dashboard-shell{display:flex;margin-left:240px;min-height:calc(100vh - 64px)}@media (max-width:768px){.learning-dashboard-shell{margin-left:0}.learning-dashboard-main{padding:16px}}@media (max-width:480px){.learning-dashboard-main{padding:12px}}.learning-dashboard-main{flex:1 1;padding:24px 32px}.learning-dashboard-main>.dashboard-page-title{font-size:1.8rem;font-weight:600;margin:0 0 16px}.vocab-tiles-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-top:12px}@media (max-width:1100px){.vocab-tiles-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.vocab-tiles-grid{gap:16px;grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.vocab-tiles-grid{grid-template-columns:1fr}}.vocab-tile{background-color:#fff;border:1px solid #94a3b84d;border-radius:12px;box-shadow:0 1px 4px #0f172a0f;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:16px 18px;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.vocab-tile:hover{border-color:#3498db99;box-shadow:0 6px 18px #0f172a1f;transform:translateY(-2px)}.vocab-tile-header{align-items:center;display:flex;gap:8px;justify-content:space-between}.vocab-tile-sequence{background-color:#f3f4f6;color:#6b7280;font-size:.8rem}.vocab-tile-badge,.vocab-tile-sequence{border-radius:999px;font-weight:600;padding:4px 8px}.vocab-tile-badge{background-color:#3498db1f;color:#2563eb;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.vocab-tile-title{color:#111827;font-size:1rem;font-weight:600;margin:0}.vocab-tile-subtitle{color:#6b7280;font-size:.9rem;margin:0}.placeholder-section{background:#fff9;border:1px dashed #94a3b880;border-radius:12px;color:#6b7280;font-size:.95rem;margin-top:12px;padding:24px}.placeholder-section__text{margin:0}.placeholder-section strong{color:#374151}.dashboard-instructional-header{background:#eaf3fb;border-radius:12px;box-shadow:0 1px 4px #3498db0f;margin-bottom:32px;padding:24px 32px 16px}.dashboard-instructional-title{color:#2563eb;font-size:1.3rem;font-weight:700;margin:0 0 8px}.dashboard-instructional-text{color:#374151;font-size:1rem;margin:0}.dashboard-units-list{display:flex;flex-direction:column;gap:40px}.dashboard-unit-section{background:#f7fafd;border-radius:14px;box-shadow:0 1px 6px #3498db0a;margin-bottom:0;padding:24px 24px 16px}.dashboard-unit-header{align-items:center;display:flex;gap:12px;margin-bottom:18px}.dashboard-unit-title{color:#226a9a;font-size:1.15rem;font-weight:700;margin:0}.dashboard-unit-tiles-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(4,1fr)}@media (max-width:1100px){.dashboard-unit-tiles-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.dashboard-unit-tiles-grid{gap:16px;grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.dashboard-unit-tiles-grid{grid-template-columns:1fr}}.lesson-tile{background:#fff;border:1.5px solid #dbeafe;border-radius:14px;box-shadow:0 1px 4px #3498db14;display:flex;flex-direction:column;gap:10px;min-width:0;padding:20px 18px 18px;position:relative;transition:box-shadow .15s,border-color .15s,background .15s}.lesson-tile__header{align-items:center;display:flex;gap:10px;margin-bottom:2px}.lesson-tile__sequence{background:#eaf3fb;border-radius:999px;color:#2563eb;font-size:.9rem;font-weight:600;padding:4px 10px}.lesson-tile__badge{background:#2563eb;border-radius:6px;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.08em;margin-left:4px;padding:2px 10px;text-transform:uppercase}.lesson-tile__lock{color:#b0b7c3;font-size:1.1rem;margin-left:6px}.lesson-tile__title{color:#1e293b;font-size:1.1rem;font-weight:700;margin:0 0 2px}.lesson-tile__subtitle{color:#64748b;font-size:.97rem;margin:0 0 6px}.lesson-progress-bar{background:#eaf3fb;border-radius:4px;height:7px;margin-bottom:8px;overflow:hidden;width:100%}.lesson-progress-bar__fill{background:#0284c7;border-radius:4px;height:100%;transition:width .25s}.lesson-tile__actions{display:flex;gap:8px;margin-top:auto}.lesson-tile__btn{border:none;border-radius:6px;cursor:pointer;font-size:.97rem;font-weight:600;padding:7px 16px;transition:background .15s,color .15s,border .15s}.lesson-tile__btn--primary{background:#2563eb;box-shadow:0 1px 4px #3498db1a;color:#fff}.lesson-tile__btn--primary:hover{background:#174ea6}.lesson-tile__btn--secondary{background:#fff;border:1.5px solid #2563eb;color:#2563eb}.lesson-tile__btn--secondary:hover{background:#eaf3fb}.lesson-tile__btn--tertiary{background:none;color:#64748b;padding:7px 8px;text-decoration:underline}.lesson-tile__btn--tertiary:hover{color:#2563eb}.dashboard-flashcard-header{align-items:flex-start;background:#f0f9ff;border-left:4px solid #0284c7;border-radius:12px;box-shadow:0 2px 8px #0284c70a;display:flex;gap:16px;margin-bottom:24px;padding:20px 24px}.dashboard-flashcard-header__icon{align-items:center;background:#e0f2fe;border-radius:10px;color:#0284c7;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.dashboard-flashcard-title{color:#0369a1;font-size:1.3rem;font-weight:700;margin:0 0 6px}.dashboard-flashcard-text{color:#334155;font-size:.96rem;line-height:1.5;margin:0}.dashboard-unit-section--flashcard{background:#f8fafc;border:1px solid #e2e8f0}.dashboard-unit-section--flashcard .dashboard-unit-title{color:#0369a1}.lesson-tile--flashcard{background:#fff;border:1.5px solid #bae6fd;border-top:4px solid #0ea5e9;box-shadow:0 2px 8px #0ea5e914}.lesson-tile--flashcard .lesson-tile__sequence{align-items:center;background:#e0f2fe;color:#0284c7;display:inline-flex}.lesson-progress-bar--flashcard .lesson-progress-bar__fill{background:#0284c7}.lesson-tile__btn--flashcard{background:#0284c7;box-shadow:0 2px 6px #0284c733;color:#fff}.lesson-tile__btn--flashcard:hover{background:#0369a1}.dashboard-test-header{align-items:flex-start;background:#eef2ff;border-left:4px solid #4338ca;border-radius:12px;box-shadow:0 2px 8px #4338ca0d;display:flex;gap:16px;margin-bottom:24px;padding:20px 24px}.dashboard-test-header__icon{align-items:center;background:#e0e7ff;border-radius:10px;color:#4338ca;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.dashboard-test-title{color:#312e81;font-size:1.3rem;font-weight:700;margin:0 0 6px}.dashboard-test-text{color:#334155;font-size:.96rem;line-height:1.5;margin:0}.dashboard-unit-section--test{background:#fafafa;border:1px solid #e0e7ff}.dashboard-unit-section--test .dashboard-unit-title{color:#312e81}.lesson-tile--test{background:#fff;border:1.5px solid #c7d2fe;border-top:4px solid #4338ca;box-shadow:0 2px 8px #4338ca14}.lesson-tile--test .lesson-tile__sequence{align-items:center;background:#e0e7ff;color:#4338ca;display:inline-flex}.lesson-tile__score-pill{background:#f5f3ff;border:1px solid #c7d2fe;border-radius:12px;color:#4338ca;font-size:.76rem;font-weight:700;margin-left:auto;padding:2px 8px}.lesson-progress-bar--test .lesson-progress-bar__fill{background:#4338ca}.lesson-tile__btn--test{background:#4338ca;box-shadow:0 2px 6px #4338ca33;color:#fff}.lesson-tile__btn--test:hover{background:#3730a3}.dashboard-listening-header{align-items:flex-start;background:#eaf3fb;border-left:4px solid #2563eb;border-radius:12px;box-shadow:0 2px 8px #2563eb0d;display:flex;gap:16px;margin-bottom:24px;padding:20px 24px}.dashboard-listening-header__icon{align-items:center;background:#dbeafe;border-radius:10px;color:#2563eb;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.dashboard-listening-title{color:#1e3c72;font-size:1.3rem;font-weight:700;margin:0 0 6px}.dashboard-listening-text{color:#334155;font-size:.96rem;line-height:1.5;margin:0}.listening-units-list{display:flex;flex-direction:column;gap:16px}.listening-unit-card{align-items:center;background:#fff;border:1.5px solid #dbeafe;border-left:5px solid #2563eb;border-radius:14px;box-shadow:0 2px 8px #2563eb0f;display:flex;gap:20px;padding:20px 24px;transition:transform .15s,box-shadow .15s}.listening-unit-card:hover{box-shadow:0 6px 18px #2563eb1f}.listening-unit-card--locked{background:#f8fafc;border-color:#e2e8f0 #e2e8f0 #e2e8f0 #94a3b8;opacity:.65}.listening-unit-card--locked:hover{box-shadow:0 2px 10px #0000000a}.listening-unit-card__visual{flex-shrink:0}.listening-unit-card__icon-wrap{align-items:center;background:#eff6ff;border:1.5px solid #bfdbfe;border-radius:50%;color:#2563eb;display:flex;height:52px;justify-content:center;width:52px}.listening-unit-card--locked .listening-unit-card__icon-wrap{background:#e2e8f0;border-color:#cbd5e1;color:#64748b}.listening-unit-card__content{flex-grow:1;min-width:0}.listening-unit-card__top{align-items:center;display:flex;gap:10px;margin-bottom:6px}.listening-unit-card__badge{background:#eff6ff;border:1px solid #dbeafe;border-radius:999px;color:#2563eb;font-size:.78rem;font-weight:700;letter-spacing:.8px;padding:3px 10px;text-transform:uppercase}.listening-unit-card--locked .listening-unit-card__badge{background:#f1f5f9;border-color:#e2e8f0;color:#64748b}.listening-unit-card__lock-badge{align-items:center;color:#64748b;display:inline-flex;font-size:.78rem;font-weight:600;gap:4px}.listening-unit-card__title{color:#1e293b;font-size:1.15rem;font-weight:700;margin:0 0 8px}.listening-unit-card__meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.listening-meta-pill{background:#f1f5f9;border-radius:6px;color:#475569;font-size:.82rem;font-weight:600;padding:3px 10px}.listening-meta-pill--accent{background:#eff6ff;border:1px solid #dbeafe;color:#2563eb}.listening-progress-bar{background:#e2e8f0;border-radius:4px;height:7px;overflow:hidden;width:100%}.listening-progress-bar__fill{background:#2563eb;border-radius:4px;height:100%;transition:width .25s}.listening-soundwave-bars{align-items:center;display:inline-flex;gap:2.5px;height:16px;margin-left:2px}.soundwave-bar{background:#2563eb;border-radius:2px;display:inline-block;width:3px}.soundwave-bar--1{height:6px}.soundwave-bar--2{height:14px}.soundwave-bar--3{height:9px}.soundwave-bar--4{height:15px}.listening-unit-card__action{flex-shrink:0}.listening-unit-card__btn{background:#2563eb;border:none;border-radius:8px;box-shadow:0 2px 6px #2563eb33;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 22px;transition:background .15s,box-shadow .15s;white-space:nowrap}.listening-unit-card__btn:hover{background:#1d4ed8}.listening-unit-card__btn--disabled{align-items:center;background:#94a3b8;box-shadow:none;color:#f1f5f9;cursor:not-allowed;display:inline-flex;gap:6px}.dashboard-status-msg{color:#64748b;font-size:1rem;padding:24px;text-align:center}.dashboard-status-msg--error{color:#dc2626}@media (max-width:680px){.listening-unit-card{align-items:flex-start;flex-direction:column;gap:16px;padding:18px}.listening-unit-card__action{width:100%}.listening-unit-card__btn{justify-content:center;text-align:center;width:100%}}.lesson-tile--mandatory{background:#f0f6ff;border:2.5px solid #2563eb;box-shadow:0 4px 16px #3498db21;grid-column:span 2}.lesson-tile--mandatory .lesson-tile__badge{background:#e67e22;color:#fff}.lesson-tile--mandatory .lesson-tile__sequence{background:#dbeafe;color:#e67e22}.lesson-tile--locked{background:#f3f4f6;border-color:#cbd5e1;opacity:.6;pointer-events:none}.lesson-tile--locked .lesson-tile__btn{cursor:not-allowed;opacity:.7}.lesson-tile--locked .lesson-tile__lock{color:#b91c1c}@media (max-width:768px){.learning-dashboard-shell{margin-left:0}.learning-dashboard-main{padding:16px}.dashboard-instructional-header,.learning-dashboard-main>.dashboard-page-title{margin-bottom:20px;text-align:center}.dashboard-instructional-header{padding:16px 16px 12px}.dashboard-unit-header{justify-content:center}.dashboard-unit-section{padding:16px 12px 12px}.lesson-tile--mandatory{grid-column:span 1}.lesson-tile__header{justify-content:center}.lesson-tile__subtitle,.lesson-tile__title{text-align:center}.lesson-tile__actions{justify-content:center}}@media (max-width:480px){.learning-dashboard-main{padding:12px}.dashboard-instructional-header{margin-bottom:16px;padding:12px 12px 10px}.dashboard-instructional-title{font-size:1.1rem}.dashboard-unit-section{padding:12px 10px 10px}.dashboard-unit-title{font-size:1rem}.lesson-tile{padding:14px 12px 12px}}.review-dash-root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:900px;padding:24px}.review-loading{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;padding:100px 40px}.review-loading p{color:#7f8c8d;font-size:1.1rem;margin:0}.review-error{background:#fff;border:1px solid #ebf0f5;border-radius:16px;box-shadow:0 4px 20px #00000005;margin:40px auto;max-width:600px;padding:80px 40px;text-align:center}.review-error h3{color:#e74c3c;font-size:1.3rem;margin:0 0 10px}.review-error p{color:#7f8c8d;margin:0}.review-empty-caughtup{background:linear-gradient(135deg,#fff,#f9fbfd);border:1px solid #ebf0f5cc;border-radius:24px;box-shadow:0 10px 30px #00000008;margin:40px auto;max-width:600px;padding:80px 40px;text-align:center}.review-empty-caughtup__icon{align-items:center;background:#2ecc711a;border-radius:40px;display:flex;height:80px;justify-content:center;margin:0 auto 24px;width:80px}.review-empty-caughtup h2{color:#2c3e50;font-size:1.8rem;font-weight:700;margin:0 0 12px}.review-empty-caughtup p{color:#7f8c8d;font-size:1.05rem;line-height:1.6;margin:0 0 30px}.review-back-btn{background:#3498db;border:none;border-radius:12px;box-shadow:0 4px 15px #3498db33;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 28px}.review-header-card{background:linear-gradient(135deg,#fff,#fcfdfe);border:1px solid #ebf0f5cc;border-radius:20px;box-shadow:0 10px 30px #1f268708;margin-bottom:24px;padding:30px}.review-header-row{align-items:flex-start;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.review-header-text{flex:1 1 300px}.review-header-text h2{color:#2c3e50;font-size:1.8rem;font-weight:700;margin:0 0 8px}.review-header-text p{color:#7f8c8d;font-size:1rem;line-height:1.5;margin:0}.review-start-btn{align-items:center;background:#e74c3c;border:none;border-radius:12px;box-shadow:0 6px 20px #e74c3c40;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.1rem;font-weight:600;gap:10px;justify-content:center;padding:16px 32px;width:100%}@media (min-width:481px){.review-start-btn{width:auto}}.review-stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:30px}.review-stat-card{align-items:center;background:#fff;border:1px solid #ebf0f5cc;border-radius:16px;box-shadow:0 4px 15px #00000003;display:flex;gap:16px;padding:20px}.review-stat-icon{align-items:center;border-radius:12px;display:flex;justify-content:center;padding:12px}.review-stat-label{color:#7f8c8d;font-size:.85rem;font-weight:500}.review-stat-value{color:#2c3e50;font-size:1.5rem;font-weight:700;margin-top:2px}.review-controls-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.review-search-wrap{flex:1 1 300px;position:relative}.review-search-icon{align-items:center;display:flex;left:14px;position:absolute;top:50%;transform:translateY(-50%)}.review-search-input{border:1px solid #e0e0e0cc;border-radius:12px;box-shadow:0 2px 8px #00000003;box-sizing:border-box;color:#2c3e50;font-size:.95rem;outline:none;padding:12px 16px 12px 42px;width:100%}.review-search-input:focus{border:1px solid #e74c3c;box-shadow:0 2px 10px #e74c3c1a}.review-sort-wrap{align-items:center;display:flex;flex-shrink:0;gap:10px;width:100%}@media (min-width:481px){.review-sort-wrap{width:auto}}.review-sort-select{background:#fff;border:1px solid #e0e0e0cc;border-radius:12px;box-shadow:0 2px 8px #00000003;color:#2c3e50;cursor:pointer;flex:1 1;font-size:.95rem;min-width:0;outline:none;padding:12px 16px}.review-word-list{display:flex;flex-direction:column}.word-card-item{background:#fff;border:1px solid #ebf0f5cc;border-radius:16px;box-shadow:0 4px 15px #00000003;margin-bottom:12px;overflow:hidden;transition:all .2s ease-in-out}.word-card-item:hover{border-color:#dce1eb;box-shadow:0 8px 25px #0000000a;transform:translateY(-2px)}.word-header-click{cursor:pointer;flex-wrap:wrap;justify-content:space-between;padding:20px;-webkit-user-select:none;user-select:none}.word-header-click,.word-header-left{align-items:center;display:flex;gap:16px}.word-header-title{color:#2c3e50;font-size:1.25rem;font-weight:700}.word-status-badge{border-radius:6px;font-size:.75rem;font-weight:700;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.word-header-right{align-items:center;display:flex;flex-wrap:wrap;gap:30px}.familiarity-bar-wrap{display:flex;flex-direction:column;gap:6px;width:130px}.familiarity-bar-labels{color:#7f8c8d;display:flex;font-size:.75rem;justify-content:space-between}.familiarity-bar-track{background:#f0f3f6;border-radius:3px;height:6px;overflow:hidden;width:100%}.familiarity-bar-fill{border-radius:3px;height:100%;transition:width .3s ease}.error-count-badge{background:#e74c3c14;border:1px solid #e74c3c26;border-radius:12px;color:#c0392b;font-size:.85rem;font-weight:600;min-width:110px;padding:6px 12px;text-align:center}.word-expanded-panel{background:#fafbfc;border-top:1px solid #f0f3f6;padding:0 20px 20px}.word-expanded-inner{background:#fff;border:1px solid #ebf0f5;border-radius:12px;display:flex;flex-direction:column;gap:12px;margin-top:16px;padding:16px}.word-expanded-heading{color:#7f8c8d;font-size:.8rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.prompt-list{display:flex;flex-direction:column;gap:8px}.prompt-row{align-items:center;background:#fff;border:1px solid #f0f3f6;border-radius:8px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:10px 14px}.prompt-info{flex:1 1;min-width:160px}.prompt-info__text{color:#2c3e50;font-size:.95rem;font-weight:600}.prompt-info__translation{color:#7f8c8d;font-size:.85rem;margin-top:2px}.prompt-meta{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.prompt-meta__date{color:#95a5a6;font-size:.8rem}.familiar-badge{border-radius:6px;font-size:.75rem;font-weight:700;padding:4px 8px}.review-empty-search{background:#fff;border:1px solid #ebf0f5cc;border-radius:16px;box-shadow:0 4px 15px #00000003;color:#7f8c8d;padding:60px 40px;text-align:center}.review-empty-search svg{margin-bottom:16px}.review-empty-search h3{color:#2c3e50;font-size:1.2rem;font-weight:600;margin:0 0 8px}.review-empty-search p{font-size:.95rem;margin:0}.pagination-row{align-items:center;border-top:1px solid #f0f3f6;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:24px;padding-top:16px}.pagination-info{color:#7f8c8d;font-size:.9rem;font-weight:500;text-align:center}.pagination-btn{align-items:center;background:#fff;border:1px solid #e0e0e0cc;border-radius:8px;color:#7f8c8d;cursor:pointer;display:flex;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#f8fafc;border-color:#e74c3c;color:#e74c3c}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.review-dash-root{padding:16px}.review-header-card{padding:20px}.review-header-row,.word-header-click{align-items:stretch;flex-direction:column}.word-header-right{gap:16px;justify-content:space-between}.familiarity-bar-wrap{flex:1 1 100px;width:auto}.error-count-badge{min-width:0}.pagination-row{justify-content:center}}@media (max-width:480px){.review-dash-root{padding:12px}.review-header-card{border-radius:14px;padding:16px}.review-stats-grid{grid-template-columns:1fr}.word-header-right{align-items:stretch;flex-direction:column;gap:10px}.familiarity-bar-wrap{width:100%}}.review-action-bar{display:flex;justify-content:flex-end;margin-bottom:20px}@media (max-width:480px){.review-action-bar .review-start-btn{width:100%}}.learning-dashboard-main{box-sizing:border-box;max-width:100%;min-width:0;padding:clamp(12px,2.5vw,32px)}.dashboard-unit-tiles-grid,.vocab-tiles-grid{gap:clamp(14px,2vw,24px);grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}@media (max-width:960px){.lesson-tile--mandatory{grid-column:span 1}}.lesson-tile__actions,.lesson-tile__header{flex-wrap:wrap}.lesson-tile__subtitle,.lesson-tile__title{overflow-wrap:break-word;word-break:break-word}.review-dash-root{box-sizing:border-box;padding:clamp(10px,2.5vw,24px);width:100%}.review-stats-grid{gap:clamp(12px,2vw,20px);grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}.review-search-wrap{flex:1 1 min(100%,260px);min-width:0}.prompt-info{min-width:min(100%,160px)}.review-empty-caughtup,.review-empty-search,.review-error{padding:clamp(28px,6vw,80px) clamp(16px,4vw,40px)}.test-prompt{color:#2a5298;font-size:2rem;font-weight:700;margin-bottom:0;text-align:center}.test-prompt-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:24px}.test-prompt-row .speaker-btn--card-front{margin-left:0}.test-listen-area{align-items:center;display:flex;flex-direction:column;margin-bottom:24px}.test-listen-hint{color:#6b7280;font-size:.95rem;margin-top:10px}.test-pronunciation-wrap .pronunciation-prompt,.test-pronunciation-wrap--feedback .pronunciation-overall-label,.test-pronunciation-wrap--feedback .pronunciation-overall-score,.test-pronunciation-wrap--feedback .pronunciation-words{display:none}.test-feedback-prompt{color:#2a5298;font-size:1.25rem;font-weight:600;margin-bottom:12px;text-align:center}.test-feedback-answer-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:left;margin-bottom:12px}.test-feedback-answer-row .test-feedback-answer,.test-feedback-answer-row--prompt .test-feedback-prompt{margin-bottom:0}.test-pronunciation-feedback{align-items:center;display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.test-pronunciation-word-list{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:8px;max-width:420px}.test-pronunciation-word-item{align-items:center;display:flex;flex-direction:column;gap:4px}.test-pronunciation-word-score{color:#666;font-size:.8rem;font-weight:600}.speaker-btn--listen{height:72px;width:72px}.test-input{border:1.5px solid #b0b7c3;border-radius:8px;box-sizing:border-box;font-size:1.1rem;margin-bottom:16px;padding:10px 14px;width:100%}.test-answer-area{background:#f8faff;border:2px dashed #b0b7c3;border-radius:8px}.test-answer-area,.test-word-bank{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;min-height:48px;padding:8px}.test-word-bank{background:#fff;border:2px solid #b0b7c3;border-radius:8px}.test-feedback{font-size:1.1rem;font-weight:600;margin:12px 0}.test-feedback--correct{color:#27ae60}.test-feedback--wrong{color:#e74c3c}.test-feedback-answer{color:#555;font-weight:400;margin-bottom:12px}.test-word-chip{background:#eaf3fb;border:1.5px solid #2563eb;border-radius:6px;cursor:pointer;font-size:1rem;padding:6px 14px}.test-word-chip--selected{background:#2563eb;color:#fff}.test-submit-btn{background:#16a085;border:none;border-radius:8px;box-shadow:0 2px 8px #16a0851f;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-bottom:10px;padding:10px 24px;transition:background .2s,transform .1s;white-space:nowrap}.test-submit-btn:hover{background:#27ae60;transform:scale(1.04)}.test-submit-btn:disabled{cursor:not-allowed;opacity:.55;transform:none}.test-feedback-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:8px}.test-feedback-actions .test-redo-btn,.test-feedback-actions .test-submit-btn{box-sizing:border-box;flex:1 1;margin-bottom:0;max-width:160px;min-width:130px}.test-redo-btn{background:#fff;border:1.5px solid #2a5298;border-radius:8px;box-sizing:border-box;color:#2a5298;cursor:pointer;font-size:1.1rem;font-weight:600;padding:10px 24px;transition:background .2s,transform .1s;white-space:nowrap}.test-redo-btn:hover{background:#eaf3fb;transform:scale(1.04)}.vocab-test{align-items:center;background:#f1f3f9;box-sizing:border-box;display:flex;flex-direction:column;font-family:Segoe UI,Roboto,Arial,sans-serif;justify-content:flex-start;min-height:100vh;padding-bottom:48px;padding-top:28px;position:relative}.vocab-test-mode-badge{align-items:center;background:#4f46e5;border-radius:20px;box-shadow:0 2px 8px #4f46e540;color:#fff;display:inline-flex;font-size:.82rem;font-weight:700;gap:8px;letter-spacing:1.2px;margin-bottom:10px;padding:6px 14px;text-transform:uppercase}.vocab-test h1{color:#1e1b4b;font-size:2.3rem;letter-spacing:1px;margin-bottom:8px;margin-top:0}.vocab-test-box{animation:popin .5s cubic-bezier(.68,-.55,.27,1.55);background:#fff;border-radius:18px;border-top:5px solid #4f46e5;box-shadow:0 10px 35px #4f46e51f,0 2px 10px #0000000a;margin-bottom:24px;max-width:90vw;min-width:340px;padding:36px 32px 32px;width:480px}.vocab-test-progress{background:#4f46e517;border-radius:12px;color:#4338ca;display:inline-block;font-size:.95rem;font-weight:700;margin:0 auto 20px;padding:5px 16px;text-align:center}.vocab-test-loading{align-items:center;background:#f5f6fa;display:flex;flex-direction:column;height:100vh;justify-content:center;position:relative}.vocab-test-loading h1{color:#222c3a;font-size:2.1rem;margin-bottom:18px}.vocab-test-loading button{background:#2a5298;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;left:24px;padding:8px 18px;position:absolute;top:18px}@media (max-width:768px){.vocab-test{padding-top:76px}.vocab-test h1{font-size:1.8rem;letter-spacing:1px;padding:0 80px;text-align:center}.dashboard-btn-fflash{font-size:.85rem;left:12px;padding:6px 14px;top:12px}.vocab-test-box{max-width:480px;min-width:0;min-width:auto;padding:28px 20px 24px;width:90vw}.vocab-test-progress{max-width:360px;width:90vw}.vocab-test-loading h1{font-size:1.7rem}}@media (max-width:480px){.vocab-test{padding-bottom:32px;padding-top:68px}.vocab-test h1{font-size:1.4rem;margin-bottom:8px;padding:0 70px;text-align:center}.vocab-test-box{padding:20px 14px 18px}.test-prompt{font-size:1.6rem}.vocab-test-loading h1{font-size:1.5rem}}.vocab-test,.vocab-test-loading{box-sizing:border-box;height:auto;min-height:100vh;min-height:100dvh;padding-bottom:36px;padding-left:clamp(10px,3vw,24px);padding-right:clamp(10px,3vw,24px);width:100%}.vocab-test-loading{padding-top:68px;text-align:center}.vocab-test-box{box-sizing:border-box;max-width:100%;min-width:0;padding:clamp(20px,4vw,36px) clamp(14px,3.5vw,32px);width:min(100%,520px)}.vocab-test-progress{max-width:100%;width:auto}.test-prompt{font-size:clamp(1.35rem,4vw,2rem);overflow-wrap:break-word;word-break:break-word}.test-feedback-actions .test-redo-btn,.test-feedback-actions .test-submit-btn{max-width:220px;min-width:min(100%,120px)}@media (max-width:900px){.vocab-test{padding-top:68px}.vocab-test h1{font-size:clamp(1.35rem,4.5vw,2rem);padding:0 12px}}.sual-root{margin:0 auto;max-width:720px;padding:24px 20px 60px;position:relative;text-align:center}.sual-root h1{color:#2a5298;margin-top:48px}.sual-stats-bar{background:#f1f5f9;border-radius:10px;color:#475569;display:flex;flex-wrap:wrap;font-size:.9rem;gap:8px 18px;justify-content:center;margin:18px auto 24px;max-width:560px;padding:10px 16px}.sual-loading{gap:14px;padding:40px 0}.sual-feedback,.sual-loading,.sual-round{align-items:center;display:flex;flex-direction:column}.sual-feedback,.sual-round{gap:16px}.sual-answer-input{font-family:inherit;max-width:480px;resize:vertical;width:100%}.sual-slow-btn{background:none;border:1px solid #cbd5e1;border-radius:999px;color:#475569;cursor:pointer;font-size:.85rem;margin-top:8px;padding:5px 14px}.sual-slow-btn:hover{background:#f1f5f9}.sual-hint{color:#94a3b8;font-size:.82rem;margin:0}.sual-reveal{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;max-width:520px;padding:14px 18px;text-align:left;width:100%}.sual-reveal p{margin:6px 0}.sual-word-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:560px}.sual-word-chip{border:1px solid #0000;border-radius:999px;cursor:pointer;font-size:.95rem;padding:6px 14px;transition:transform .1s ease}.sual-word-chip:hover{transform:translateY(-1px)}.sual-word-chip--yes{background:#dcfce7;border-color:#86efac;color:#166534}.sual-word-chip--no{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.sual-word-chip--skipped{background:#f1f5f9;border-color:#cbd5e1;color:#64748b}.sual-word-chip__solid{font-size:.75rem;margin-left:6px}.sual-ai-feedback{color:#475569;font-style:italic;margin:0;max-width:520px}.sual-round-score{color:#2a5298;font-weight:600;margin:0}.sual-end-btn{background:#e2e8f0;border:none;border-radius:8px;color:#475569;cursor:pointer;font-weight:600;padding:12px 22px}.sual-end-btn:hover{background:#cbd5e1}.sual-voice-warning{background:#fef3c7;border:1px solid #fcd34d;border-radius:10px;color:#92400e;font-size:.88rem;margin:16px auto 0;max-width:560px;padding:12px 16px}.sual-error-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 4px 16px #0f172a0f;margin:100px auto 0;max-width:480px;padding:26px 24px}.sual-error-card h2{color:#e11d48;font-size:1.2rem;margin:0 0 10px}.sual-error-hint{color:#64748b;font-size:.88rem}@media (max-width:600px){.sual-root{padding:16px 12px 48px}.sual-root h1{font-size:1.5rem;margin-top:56px}.sual-stats-bar{font-size:.82rem}}.sual-root{box-sizing:border-box;min-height:100vh;min-height:100dvh;padding:68px clamp(10px,3vw,24px) 48px;width:100%}.sual-root h1{font-size:clamp(1.4rem,4.5vw,2.2rem);margin-top:8px}.sual-answer-input,.sual-error-card,.sual-reveal,.sual-stats-bar,.sual-word-chips{box-sizing:border-box;max-width:min(100%,560px);width:100%}.terms-page{background:linear-gradient(135deg,#e0eafc,#cfdef3);flex-direction:column;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;min-height:100dvh;width:100%}.terms-main,.terms-page{box-sizing:border-box;display:flex}.terms-main{align-items:flex-start;flex:1 1;justify-content:center;padding:100px 20px 48px}.terms-card{background:#fff;border:1.5px solid #dcdfe6;border-radius:16px;box-shadow:0 10px 30px #2c3e501f,0 2px 6px #6c63ff0f;box-sizing:border-box;color:#2c3e50;line-height:1.7;max-width:860px;padding:40px 48px;width:100%}.terms-header{border-bottom:1.5px solid #edf2f7;margin-bottom:28px;padding-bottom:20px}.terms-badge{background-color:#ebf5fb;border-radius:20px;color:#2980b9;display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.8px;margin-bottom:12px;padding:4px 12px;text-transform:uppercase}.terms-title{color:#1e293b;font-size:2rem;font-weight:700;line-height:1.25;margin:0 0 8px}.terms-updated{color:#64748b;font-size:.95rem;margin:0}.terms-callout{background-color:#fff8e6;border-left:4px solid #f39c12;border-radius:6px;color:#7d5203;font-size:.95rem;margin-bottom:28px;padding:14px 18px}.terms-callout p{margin:0}.terms-section{margin-bottom:28px}.terms-section h2{border-bottom:1px solid #f1f5f9;color:#2c3e50;font-size:1.3rem;font-weight:700;margin:24px 0 12px;padding-bottom:6px}.terms-section p{color:#334155;font-size:1rem;margin:0 0 12px}.terms-section ol,.terms-section ul{color:#334155;margin:8px 0 16px 24px;padding:0}.terms-section li{font-size:.98rem;line-height:1.6;margin-bottom:8px}.terms-contact{font-size:1.05rem;margin-top:8px}.terms-link{color:#3498db;font-weight:600;text-decoration:none;transition:color .2s ease}.terms-link:hover{color:#226a9a;text-decoration:underline}.terms-actions{border-top:1.5px solid #edf2f7;display:flex;gap:14px;margin-top:36px;padding-top:24px}.terms-btn{border-radius:8px;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:600;padding:11px 24px;transition:all .2s ease}.terms-btn-primary{background-color:#3498db;border:1.5px solid #3498db;color:#fff}.terms-btn-primary:hover{background-color:#226a9a;border-color:#226a9a}.terms-btn-secondary{background-color:#fff;border:1.5px solid #cbd5e1;color:#475569}.terms-btn-secondary:hover{background-color:#f8fafc;border-color:#94a3b8;color:#1e293b}@media (max-width:768px){.terms-main{padding:80px 14px 32px}.terms-card{border-radius:12px;padding:24px 20px}.terms-title{font-size:1.45rem}.terms-section h2{font-size:1.15rem}.terms-actions{flex-direction:column}.terms-btn{text-align:center;width:100%}}.notfound-page{background:linear-gradient(135deg,#e0eafc,#cfdef3);flex-direction:column;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;min-height:100dvh}.notfound-header,.notfound-page{box-sizing:border-box;display:flex;width:100%}.notfound-header{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#fffffff2;box-shadow:0 2px 10px #15355514;height:72px;justify-content:space-between;left:0;padding:0 6%;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.notfound-brand{align-items:center;background:none;border:none;cursor:pointer;display:flex;gap:12px;padding:0;text-decoration:none}.notfound-brand img{border-radius:8px;box-shadow:0 2px 6px #0000001f;height:38px;object-fit:cover;width:38px}.notfound-brand h2{color:#2c3e50;font-size:1.5rem;font-weight:700;letter-spacing:-.5px;margin:0}.notfound-brand .brand-highlight{color:#3498db}.notfound-nav-actions{align-items:center;display:flex;gap:12px}.notfound-nav-btn{border:1.5px solid #0000;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:9px 20px;transition:all .2s ease}.notfound-nav-btn.primary{background-color:#3498db;color:#fff}.notfound-nav-btn.primary:hover{background-color:#226a9a;transform:translateY(-1px)}.notfound-nav-btn.outline{background-color:initial;border-color:#3498db;color:#3498db}.notfound-nav-btn.outline:hover{background-color:#3498db1a}.notfound-main{align-items:center;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:104px 20px 60px}.notfound-subtitle{color:#475569;font-size:1.15rem;font-weight:500;margin:8px 0 28px}.notfound-card{animation:notFoundFadeUp .5s ease-out;background:#fff;border:1.5px solid #e2e8f0;border-radius:24px;box-shadow:0 20px 45px -10px #2c3e502e,0 8px 16px -4px #3498db1f;box-sizing:border-box;max-width:640px;padding:48px 40px;position:relative;text-align:center;width:100%}@keyframes notFoundFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.notfound-badge{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:9999px;color:#dc2626;display:inline-flex;font-size:.85rem;font-weight:700;gap:6px;letter-spacing:1px;margin-bottom:20px;padding:6px 14px;text-transform:uppercase}.notfound-code{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3498db,#1e40af);-webkit-background-clip:text;font-size:clamp(4.5rem,12vw,7.5rem);font-weight:900;letter-spacing:-2px;line-height:1;margin:0 0 10px}.notfound-definition-box{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:14px;margin:20px 0 28px;padding:18px 24px;text-align:left}.notfound-word-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}.notfound-word-title{color:#1e293b;font-size:1.25rem;font-weight:700}.notfound-word-phonetic{color:#64748b;font-size:.95rem;font-style:italic}.notfound-word-pos{background:#eff6ff;border-radius:6px;color:#3b82f6;font-size:.8rem;font-weight:600;padding:2px 8px}.notfound-definition{color:#475569;font-size:1rem;line-height:1.5;margin:6px 0 0}.notfound-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:32px}.notfound-actions,.notfound-btn{align-items:center;justify-content:center}.notfound-btn{border-radius:10px;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:8px;min-width:160px;padding:13px 26px;text-decoration:none;transition:all .25s ease}.notfound-btn-primary{background-color:#3498db;border:none;box-shadow:0 4px 14px #3498db59;color:#fff}.notfound-btn-primary:hover{background-color:#226a9a;box-shadow:0 6px 18px #3498db73;transform:translateY(-2px)}.notfound-btn-secondary{background-color:#fff;border:1.5px solid #cbd5e1;color:#475569}.notfound-btn-secondary:hover{background-color:#f1f5f9;border-color:#94a3b8;color:#1e293b;transform:translateY(-1px)}.notfound-suggestions{border-top:1px solid #edf2f7;padding-top:24px;text-align:center}.notfound-suggestions-title{color:#94a3b8;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 14px;text-transform:uppercase}.notfound-links-grid{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.notfound-chip-link{align-items:center;background-color:#f1f5f9;border:1px solid #0000;border-radius:9999px;color:#334155;display:inline-flex;font-size:.9rem;font-weight:500;gap:6px;padding:8px 16px;text-decoration:none;transition:all .2s ease}.notfound-chip-link:hover{background-color:#e2e8f0;border-color:#cbd5e1;color:#1e40af;transform:translateY(-1px)}.notfound-footer{color:#64748b;font-size:.85rem;margin-top:24px;text-align:center}@media (max-width:600px){.notfound-card{border-radius:18px;padding:32px 20px}.notfound-actions{flex-direction:column;width:100%}.notfound-btn{width:100%}.notfound-links-grid{gap:8px}.notfound-chip-link{font-size:.85rem;padding:6px 12px}}
/*# sourceMappingURL=main.109a15ad.css.map*/