@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Dancing+Script:wght@700&display=swap";@import"https://fonts.googleapis.com/css2?family=Merriweather:wght@700&display=swap";.notification-toast[data-v-6de38d1a]{position:fixed;top:20px;right:20px;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;padding:1rem;z-index:1000;border-left:5px solid #4ade80;width:320px}.notification-icon[data-v-6de38d1a]{width:48px;height:48px;margin-right:1rem;-o-object-fit:contain;object-fit:contain;flex-shrink:0}.notification-icon-i[data-v-6de38d1a]{font-size:2rem;margin-right:1rem;color:#4ade80;flex-shrink:0}.notification-content[data-v-6de38d1a]{color:#374151;flex:1}.notification-action-btn[data-v-6de38d1a]{margin-top:.4rem;font-size:.75rem;font-weight:600;color:#2e7d32;background:none;border:1px solid #2e7d32;border-radius:4px;padding:2px 8px;cursor:pointer}.notification-action-btn[data-v-6de38d1a]:hover{background:#2e7d32;color:#fff}.toast-fade-enter-active[data-v-6de38d1a],.toast-fade-leave-active[data-v-6de38d1a]{transition:all .5s ease}.toast-fade-enter-from[data-v-6de38d1a],.toast-fade-leave-to[data-v-6de38d1a]{opacity:0;transform:translate(100%)}.mode-toggle[data-v-bf229018]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.segmented-control[data-v-bf229018]{display:flex;align-items:center;background:#ffffff26;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:999px;padding:4px;gap:0;box-shadow:0 2px 10px #00000026}.sub-toggle[data-v-bf229018]{padding:3px}.sub-toggle .segment[data-v-bf229018]{padding:4px 10px;font-size:.72rem}.segmented-control.disabled[data-v-bf229018]{opacity:.7;cursor:wait}.segment[data-v-bf229018]{display:flex;align-items:center;gap:5px;padding:6px 14px;border:none;border-radius:999px;background:transparent;color:#ffffff8c;font-size:.78rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background .25s ease,color .25s ease,box-shadow .25s ease;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.segment[data-v-bf229018]:disabled{cursor:wait}.segment[data-v-bf229018]:not(:disabled):not(.active):hover{color:#ffffffd9;background:#ffffff1a}.segment.active.bonmot[data-v-bf229018]{background:linear-gradient(135deg,#3a6ec8,#5b8def);color:#fff;box-shadow:0 2px 8px #3a6ec880}.segment.active.jeunes[data-v-bf229018]{background:linear-gradient(135deg,#f5a623,#ffc853);color:#fff;box-shadow:0 2px 8px #f5a62380}.segment.active.vocab[data-v-bf229018]{background:linear-gradient(135deg,#3a6ec8,#5b8def);color:#fff;box-shadow:0 2px 8px #3a6ec880}.segment.active.grammaire[data-v-bf229018]{background:linear-gradient(135deg,#2e7d32,#4caf50);color:#fff;box-shadow:0 2px 8px #2e7d3280}.segment-icon[data-v-bf229018]{font-size:.9rem;flex-shrink:0}.segment-divider[data-v-bf229018]{width:1px;height:20px;background:#fff3;flex-shrink:0}.spin[data-v-bf229018]{animation:spin-bf229018 .8s linear infinite}@keyframes spin-bf229018{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:540px){.main-toggle .segment-label[data-v-bf229018]{display:none}.sub-toggle .segment-label[data-v-bf229018]{display:inline-block}.segment[data-v-bf229018]{padding:6px 10px}.segmented-control[data-v-bf229018]{padding:4px 2px}}.avatar-container[data-v-b21f954d]{cursor:pointer;width:50px;height:50px;border-radius:50%;border:3px solid white;overflow:hidden;box-shadow:0 2px 5px #0003;display:flex;align-items:center;justify-content:center;background-color:#f1f5f9}.avatar-image[data-v-b21f954d]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.voice-selector-container[data-v-e49c01d0]{width:100%}.voice-label[data-v-e49c01d0]{display:block;font-weight:500;margin-bottom:.5rem;color:var(--dark-text);text-align:left}.select-wrapper[data-v-e49c01d0]{position:relative}.voice-select[data-v-e49c01d0]{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:1px solid var(--border-color);border-radius:8px;background-color:#fff;font-size:1rem;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.select-wrapper[data-v-e49c01d0]:after{content:"▼";font-size:.8rem;position:absolute;top:50%;right:1rem;transform:translateY(-50%);pointer-events:none;color:var(--muted-text)}.voice-loading-text[data-v-e49c01d0]{font-style:italic;color:var(--muted-text);text-align:left}.profile-modal-overlay[data-v-018b71f1]{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172a8c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;justify-content:flex-end;align-items:stretch;z-index:1050;animation:fadeIn-018b71f1 .2s ease-out}@keyframes fadeIn-018b71f1{0%{opacity:0}to{opacity:1}}.profile-panel[data-v-018b71f1]{background:#fff;width:100%;max-width:440px;height:100%;display:flex;flex-direction:column;box-shadow:-8px 0 25px #00000026;animation:slideInRight-018b71f1 .25s cubic-bezier(.16,1,.3,1);overflow-y:auto}@keyframes slideInRight-018b71f1{0%{transform:translate(100%)}to{transform:translate(0)}}.panel-header[data-v-018b71f1]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #f1f5f9;background:#fff;position:sticky;top:0;z-index:10}.header-title-wrap[data-v-018b71f1]{display:flex;align-items:center;gap:.6rem}.header-icon[data-v-018b71f1]{color:var(--primary-blue, #3b82f6)}.panel-header h2[data-v-018b71f1]{font-size:1.2rem;font-weight:700;color:#0f172a;margin:0}.panel-close-btn[data-v-018b71f1]{background:transparent;border:1px solid transparent;color:#64748b;width:36px;height:36px;border-radius:8px;display:grid;place-items:center;cursor:pointer;transition:all .2s ease}.panel-close-btn[data-v-018b71f1]:hover{background:#f1f5f9;color:#0f172a;border-color:#e2e8f0}.panel-close-btn[data-v-018b71f1]:focus-visible{outline:2px solid var(--primary-blue, #3b82f6)}.panel-content[data-v-018b71f1]{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;flex-grow:1}.user-profile-banner[data-v-018b71f1]{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}.banner-avatar-wrap[data-v-018b71f1]{transform:scale(1.1);flex-shrink:0}.banner-user-info[data-v-018b71f1]{display:flex;flex-direction:column;gap:.2rem;min-width:0}.user-status-label[data-v-018b71f1]{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:600}.user-display-name[data-v-018b71f1]{font-size:1.15rem;font-weight:700;color:#0f172a;word-break:break-all}.account-verified-badge[data-v-018b71f1]{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:600;color:#166534;margin-top:.15rem}.quick-nav-group[data-v-018b71f1]{display:flex;gap:.75rem}.nav-pill-btn[data-v-018b71f1]{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.6rem .85rem;border-radius:8px;background:#fff;border:1.5px solid #e2e8f0;color:#334155;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit}.nav-pill-btn[data-v-018b71f1]:hover{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;transform:translateY(-1px)}.nav-pill-btn[data-v-018b71f1]:active{transform:translateY(0)}.settings-section[data-v-018b71f1]{display:flex;flex-direction:column;gap:.75rem;border-top:1px solid #f1f5f9;padding-top:1.25rem}.section-title-wrap[data-v-018b71f1]{display:flex;align-items:center;gap:.5rem}.section-icon[data-v-018b71f1]{color:#475569;flex-shrink:0}.settings-section h3[data-v-018b71f1]{margin:0;font-size:1rem;font-weight:700;color:#0f172a}.voice-selector-box[data-v-018b71f1]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem}.pin-overview-card[data-v-018b71f1]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.pin-info[data-v-018b71f1]{display:flex;flex-direction:column;gap:.15rem}.pin-status-title[data-v-018b71f1]{font-size:.925rem;font-weight:600;color:#0f172a}.pin-status-sub[data-v-018b71f1]{font-size:.8rem;color:#475569;line-height:1.35}.pin-change-btn[data-v-018b71f1]{display:inline-flex;align-items:center;justify-content:center;padding:.5rem .9rem;background:#fff;border:1.5px solid #cbd5e1;color:#1e293b;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;font-family:inherit}.pin-change-btn[data-v-018b71f1]:hover{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.pin-edit-card[data-v-018b71f1]{display:flex;flex-direction:column;gap:.65rem;padding:1.1rem;background:#f8fafc;border:1px solid #bfdbfe;border-radius:10px}.pin-edit-label[data-v-018b71f1]{font-size:.875rem;font-weight:600;color:#1e293b}.pin-input-field[data-v-018b71f1]{width:100%;padding:.65rem;font-size:1.5rem;text-align:center;letter-spacing:.5rem;border:1.5px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;outline:none;font-family:inherit;transition:border-color .2s}.pin-input-field[data-v-018b71f1]:focus{border-color:var(--primary-blue, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.pin-feedback-msg[data-v-018b71f1]{margin:0;font-size:.85rem;font-weight:500;text-align:center}.error-msg[data-v-018b71f1]{color:#dc2626}.success-msg[data-v-018b71f1]{color:#166534}.pin-edit-actions[data-v-018b71f1]{display:flex;gap:.5rem;margin-top:.25rem}.pin-cancel-btn[data-v-018b71f1]{flex:1;padding:.55rem;border-radius:6px;background:#fff;border:1px solid #cbd5e1;color:#475569;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;font-family:inherit}.pin-cancel-btn[data-v-018b71f1]:hover:not(:disabled){background:#f1f5f9;color:#0f172a}.pin-save-btn[data-v-018b71f1]{flex:1;padding:.55rem;border-radius:6px;background:var(--primary-blue, #3b82f6);border:none;color:#fff;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s;font-family:inherit}.pin-save-btn[data-v-018b71f1]:hover:not(:disabled){background:#2563eb}.pin-save-btn[data-v-018b71f1]:disabled,.pin-cancel-btn[data-v-018b71f1]:disabled{opacity:.6;cursor:not-allowed}.logout-section[data-v-018b71f1]{margin-top:auto;padding-top:1.5rem}.logout-trigger-btn[data-v-018b71f1]{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;background:#fff;border:1.5px solid #fca5a5;color:#b91c1c;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease;font-family:inherit}.logout-trigger-btn[data-v-018b71f1]:hover{background:#fef2f2;border-color:#ef4444;color:#991b1b}.logout-trigger-btn[data-v-018b71f1]:focus-visible{outline:2px solid #ef4444;outline-offset:2px}.confirm-modal-overlay[data-v-018b71f1]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ab3;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:1100}.confirm-modal-card[data-v-018b71f1]{background:#fff;border-radius:16px;max-width:460px;width:100%;padding:2rem;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid #e2e8f0;animation:modalScale-018b71f1 .2s cubic-bezier(.16,1,.3,1)}@keyframes modalScale-018b71f1{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.confirm-icon-wrap[data-v-018b71f1]{width:56px;height:56px;border-radius:50%;background:#fef3c7;color:#d97706;display:grid;place-items:center;margin-bottom:1rem}.confirm-title[data-v-018b71f1]{margin:0 0 1rem;font-size:1.25rem;font-weight:700;color:#0f172a;line-height:1.35}.logout-warning-box[data-v-018b71f1]{background:#fffbeb;border:1.5px solid #fde68a;border-radius:12px;padding:1rem 1.15rem;margin-bottom:1.5rem;text-align:left;display:flex;flex-direction:column;gap:.65rem;width:100%}.warning-box-header[data-v-018b71f1]{display:flex;align-items:center;gap:.45rem;color:#92400e;font-weight:700;font-size:.925rem}.warning-box-desc[data-v-018b71f1]{margin:0;font-size:.85rem;color:#78350f;line-height:1.45}.login-code-card[data-v-018b71f1]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;background:#fff;border:1.5px solid #fcd34d;border-radius:8px;padding:.65rem .85rem}.code-info[data-v-018b71f1]{display:flex;flex-direction:column;gap:.1rem}.code-label[data-v-018b71f1]{font-size:.725rem;text-transform:uppercase;color:#78350f;font-weight:600;letter-spacing:.04em}.code-value[data-v-018b71f1]{font-size:1.15rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:700;color:#0f172a;letter-spacing:.05em}.copy-code-btn[data-v-018b71f1]{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .75rem;border-radius:6px;background:#fef3c7;border:1px solid #fde68a;color:#92400e;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease;font-family:inherit;white-space:nowrap}.copy-code-btn[data-v-018b71f1]:hover{background:#fde68a;color:#78350f}.copied-indicator[data-v-018b71f1]{display:inline-flex;align-items:center;gap:.3rem;color:#166534}.copy-text-wrap[data-v-018b71f1]{display:inline-flex;align-items:center;gap:.3rem}.warning-reassurance[data-v-018b71f1]{margin:0;font-size:.775rem;color:#166534;font-weight:600}.confirm-modal-actions[data-v-018b71f1]{display:flex;gap:.85rem;width:100%}.confirm-cancel-btn[data-v-018b71f1]{flex:1;padding:.75rem 1rem;border-radius:8px;background:#fff;border:1.5px solid #cbd5e1;color:#334155;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit}.confirm-cancel-btn[data-v-018b71f1]:hover{background:#f8fafc;border-color:#94a3b8;color:#0f172a}.confirm-logout-btn[data-v-018b71f1]{flex:1;padding:.75rem 1rem;border-radius:8px;background:#dc2626;border:1px solid #b91c1c;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;font-family:inherit}.confirm-logout-btn[data-v-018b71f1]:hover{background:#b91c1c}.confirm-logout-btn[data-v-018b71f1]:focus-visible,.confirm-cancel-btn[data-v-018b71f1]:focus-visible{outline:2px solid var(--primary-blue, #3b82f6);outline-offset:2px}@media(max-width:480px){.profile-panel[data-v-018b71f1]{max-width:100%}.confirm-modal-card[data-v-018b71f1]{padding:1.5rem}.confirm-modal-actions[data-v-018b71f1]{flex-direction:column-reverse}}.modal-overlay[data-v-2f14d2f9]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn-2f14d2f9 .3s ease-out}.modal-card[data-v-2f14d2f9]{background:#fff;border-radius:1.5rem;padding:2rem;width:90%;max-width:500px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;position:relative;animation:slideUp-2f14d2f9 .4s cubic-bezier(.16,1,.3,1)}.modal-header[data-v-2f14d2f9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.title[data-v-2f14d2f9]{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0}.close-btn[data-v-2f14d2f9]{background:none;border:none;font-size:1.5rem;color:#9ca3af;cursor:pointer;line-height:1;padding:0}.close-btn[data-v-2f14d2f9]:hover{color:#4b5563}.description[data-v-2f14d2f9]{color:#4b5563;font-size:.95rem;line-height:1.5;margin-bottom:.85rem}.privacy-note[data-v-2f14d2f9]{display:flex;align-items:center;justify-content:center;gap:.5rem;background-color:#f0fdf4;border:1px solid #bbf7d0;color:#166534;padding:.6rem .85rem;border-radius:.6rem;font-size:.85rem;font-weight:500;margin-bottom:1.5rem;text-align:center}.privacy-note i[data-v-2f14d2f9]{font-size:1rem;color:#15803d;flex-shrink:0}.error-msg[data-v-2f14d2f9]{background-color:#fef2f2;color:#ef4444;padding:.75rem;border-radius:.5rem;font-size:.875rem;margin-bottom:1.5rem;border:1px solid #fecaca;text-align:center}.section[data-v-2f14d2f9]{display:flex;flex-direction:column;gap:1rem}.primary-btn[data-v-2f14d2f9]{width:100%;padding:1rem;background-color:#3b82f6;color:#fff;border:none;border-radius:.75rem;font-weight:600;font-size:1rem;cursor:pointer;transition:background-color .2s,transform .1s,box-shadow .2s;box-shadow:0 4px 12px #3b82f640}.primary-btn[data-v-2f14d2f9]:hover:not(:disabled){background-color:#2563eb;box-shadow:0 6px 16px #3b82f659}.primary-btn[data-v-2f14d2f9]:active:not(:disabled){transform:scale(.98)}.primary-btn[data-v-2f14d2f9]:disabled{opacity:.7;cursor:not-allowed;box-shadow:none}.secondary-btn[data-v-2f14d2f9]{width:100%;padding:.875rem 1rem;background-color:#f8fafc;color:#2563eb;border:1.5px solid #bfdbfe;border-radius:.75rem;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease}.secondary-btn[data-v-2f14d2f9]:hover:not(:disabled){background-color:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.secondary-btn[data-v-2f14d2f9]:active:not(:disabled){transform:scale(.98)}.secondary-btn[data-v-2f14d2f9]:disabled{opacity:.6;cursor:not-allowed}.divider[data-v-2f14d2f9]{position:relative;text-align:center;margin:1.5rem 0}.divider[data-v-2f14d2f9]:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e5e7eb}.divider span[data-v-2f14d2f9]{position:relative;background:#fff;padding:0 .75rem;color:#9ca3af;font-size:.875rem}.input-row[data-v-2f14d2f9]{display:flex;gap:.5rem}.input-row input[data-v-2f14d2f9]{flex:1;padding:.75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.95rem;outline:none;transition:border-color .2s}.input-row input[data-v-2f14d2f9]:focus,.pin-input[data-v-2f14d2f9]:focus{border-color:#3b82f6}.input-row input[type=password][data-v-2f14d2f9]{flex:0 0 100px}.pin-input[data-v-2f14d2f9]{width:100%;padding:1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:1.25rem;text-align:center;letter-spacing:.5rem;outline:none;transition:border-color .2s;box-sizing:border-box}.username-input[data-v-2f14d2f9]{letter-spacing:normal;font-size:1.1rem}.credentials-box[data-v-2f14d2f9]{background:#eff6ff;border:1px solid #bfdbfe;padding:1.5rem;border-radius:.5rem;text-align:center}.credentials-box p[data-v-2f14d2f9]{margin:.5rem 0;color:#1e3a8a;font-size:1.1rem}.skip-section[data-v-2f14d2f9]{text-align:center;margin-top:1.5rem}.skip-link[data-v-2f14d2f9]{background:none;border:none;color:#6b7280;font-size:.85rem;cursor:pointer;text-decoration:underline}.skip-link[data-v-2f14d2f9]:hover{color:#4b5563}@keyframes fadeIn-2f14d2f9{0%{opacity:0}to{opacity:1}}@keyframes slideUp-2f14d2f9{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}:root{--header-blue: #4a90e2;--primary-blue: #3b82f6;--light-blue: #dbeafe;--xp-color: #fbbf24;--streak-bg: #fff7ed;--streak-text: #9a3412;--streak-icon: #f97316;--dark-text: #1f2937;--muted-text: #6b7280;--card-background: #ffffff;--border-color: #e5e7eb;--page-background: #f9fafb;--success-color: #198754}body{font-family:Inter,sans-serif;background-color:var(--page-background);color:var(--dark-text);margin:0;font-size:1.1rem;line-height:1.7}.view-container{padding:2rem;max-width:900px;margin:0 auto}.svo-level-view{max-width:960px;margin:0 auto;padding:1.5rem 1rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.card{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}h1{font-size:2.25rem;font-weight:700;color:var(--dark-text);margin-bottom:.5rem}.topic-card h2{font-size:1.5rem!important;font-weight:700!important}.category-selector{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:2rem}.btn-category{padding:1.4rem 1.5rem;border-radius:12px;border:2px solid var(--border-color);background-color:var(--card-background);font-size:1.2rem;font-weight:600;text-align:center;cursor:pointer;transition:all .2s ease-in-out;color:var(--dark-text);display:flex;align-items:center;justify-content:center;min-width:220px;text-decoration:none;flex-grow:1}.btn-category:hover{border-color:var(--primary-blue);color:var(--primary-blue)}.btn-category.active{background-color:var(--primary-blue);color:#fff;border-color:var(--primary-blue);transform:translateY(-2px);box-shadow:0 12px 25px #3b82f640}@media(max-width:640px){.btn-category{min-width:100%}}.app-layout{position:relative;background-size:cover;background-position:center;background-attachment:fixed;min-height:100vh;transition:background-image .5s ease-in-out}.background-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#f9fafb80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1}.app-content-wrapper{position:relative;z-index:2;display:flex;flex-direction:column;min-height:100vh}.main-content{flex-grow:1}.app-header{color:#fff;padding:.65rem 2rem;box-shadow:0 2px 8px #00000026;transition:background .4s ease}.header-content{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;gap:1rem}.logo-title{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.logo-home-link{display:flex;align-items:center;gap:.75rem;color:inherit;text-decoration:none}.logo-home-link:hover,.logo-home-link:visited,.logo-home-link:active{color:inherit;text-decoration:none}.header-logo-svg{width:32px;height:32px}.header-title-text{font-size:1.4rem;font-weight:700;font-family:Merriweather,serif;white-space:nowrap}.header-center{display:flex;align-items:center;justify-content:center;flex:1}.header-right{display:flex;align-items:center;gap:1rem;flex-shrink:0}.header-user-btn{background:#ffffff26;border:1px solid rgba(255,255,255,.35);cursor:pointer;display:flex;align-items:center;gap:.35rem;padding:.2rem .4rem .2rem .75rem;border-radius:999px;color:#fff;transition:all .2s ease;font-family:inherit}.header-user-btn:hover{background:#ffffff40;border-color:#ffffff8c;transform:translateY(-1px)}.header-user-btn:active{transform:translateY(0)}.header-user-btn:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.header-username{font-weight:600;font-size:.95rem;opacity:.95;margin-right:.15rem}.header-avatar{transform:scale(.8)}.header-guest-action{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.header-guest-action:hover{background:#ffffff4d}@media(max-width:840px){.app-header{padding:.65rem 1rem}.header-content{flex-wrap:wrap}.header-center{order:3;width:100%;justify-content:center;flex:unset}.header-title-text{font-size:1.1rem}}@media(max-width:520px){.header-title-text{display:none}.header-logo-svg{width:28px;height:28px}}.loading-screen{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;z-index:1000;transition:background-color .3s ease}.loading-screen .logo-container{display:flex;align-items:center;gap:1.5rem;color:#fff}.loading-screen .loading-logo-svg{width:80px;height:80px}.loading-screen h1{font-size:3.5rem;font-weight:700;line-height:1;color:#fff;font-family:Merriweather,serif}.app-footer{padding:1rem;text-align:center;font-size:.85rem;color:var(--muted-text);background-color:transparent;border-top:1px solid var(--border-color)}.footer-link{color:var(--muted-text);text-decoration:none}.footer-link:hover{text-decoration:underline}.welcome-card[data-v-1bb8d015]{margin-bottom:2rem;padding:2rem;position:relative;z-index:30}.welcome-card h1[data-v-1bb8d015]{font-size:1.8rem;color:var(--primary-blue, #3b82f6);margin-top:0;margin-bottom:1.5rem;line-height:1.2}.welcome-content[data-v-1bb8d015]{display:flex;gap:2rem;align-items:flex-end}.welcome-text[data-v-1bb8d015]{flex:2}.welcome-text h2[data-v-1bb8d015]{font-size:1.3rem;color:var(--text-color, #1f2937);margin-bottom:1rem;margin-top:0;font-weight:600;line-height:1.4}.welcome-text h2 a[data-v-1bb8d015]{color:var(--primary-blue, #3b82f6);text-decoration:none}.welcome-text h2 a[data-v-1bb8d015]:hover{text-decoration:underline}.welcome-text p[data-v-1bb8d015]{font-size:1.05rem;line-height:1.6;color:var(--muted-text, #4b5563);margin:0}.welcome-image[data-v-1bb8d015]{flex:1;display:flex;justify-content:flex-end}.welcome-image img[data-v-1bb8d015]{max-width:100%;height:auto;border-radius:8px;transform:scaleX(-1);display:block}@media(max-width:768px){.welcome-content[data-v-1bb8d015]{flex-direction:column;text-align:center;align-items:center}.welcome-image[data-v-1bb8d015]{width:100%;margin-top:1rem;justify-content:center}.welcome-card h1[data-v-1bb8d015]{font-size:1.5rem;text-align:center}.welcome-text h2[data-v-1bb8d015]{font-size:1.1rem}}.mode-selection-container[data-v-bb921a99]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1rem}.mode-card[data-v-bb921a99]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2.5rem 1.5rem;border:none;border-radius:16px;cursor:pointer;background-color:#fff;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.mode-card[data-v-bb921a99]:hover:not(:disabled){transform:translateY(-5px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.mode-card[data-v-bb921a99]:disabled{opacity:.7;cursor:wait}.vocab-card[data-v-bb921a99]{background-color:#3b82f6;color:#fff}.vocab-card[data-v-bb921a99]:hover:not(:disabled){background-color:#2563eb}.grammar-card[data-v-bb921a99]{background-color:#10b981;color:#fff}.grammar-card[data-v-bb921a99]:hover:not(:disabled){background-color:#059669}.icon-wrapper[data-v-bb921a99]{font-size:3rem;margin-bottom:1rem}.mode-card h2[data-v-bb921a99]{font-size:1.8rem;margin:0 0 .5rem;color:#fff}.mode-card p[data-v-bb921a99]{color:#ffffffe6;font-size:1rem;margin:0}.spin[data-v-bb921a99]{animation:spin-bb921a99 1s linear infinite}@keyframes spin-bb921a99{to{transform:rotate(360deg)}}.alert-box[data-v-7c3fd9fa]{border-radius:12px;padding:1.15rem 1.25rem;margin-bottom:1.25rem;text-align:left;border-left:5px solid;box-shadow:0 2px 8px #0000000a;animation:fadeIn-7c3fd9fa .25s ease-out}@keyframes fadeIn-7c3fd9fa{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.alert-error[data-v-7c3fd9fa]{background-color:#fef2f2;border-left-color:#ef4444;border-top:1px solid #fee2e2;border-right:1px solid #fee2e2;border-bottom:1px solid #fee2e2}.alert-error .alert-title[data-v-7c3fd9fa]{color:#991b1b}.alert-error .alert-message[data-v-7c3fd9fa]{color:#7f1d1d}.alert-warning[data-v-7c3fd9fa]{background-color:#fffbeb;border-left-color:#f59e0b;border-top:1px solid #fef3c7;border-right:1px solid #fef3c7;border-bottom:1px solid #fef3c7}.alert-warning .alert-title[data-v-7c3fd9fa]{color:#92400e}.alert-warning .alert-message[data-v-7c3fd9fa]{color:#78350f}.alert-info[data-v-7c3fd9fa]{background-color:#eff6ff;border-left-color:#3b82f6;border-top:1px solid #dbeafe;border-right:1px solid #dbeafe;border-bottom:1px solid #dbeafe}.alert-info .alert-title[data-v-7c3fd9fa]{color:#1e40af}.alert-info .alert-message[data-v-7c3fd9fa]{color:#1e3a8a}.alert-success[data-v-7c3fd9fa]{background-color:#f0fdf4;border-left-color:#22c55e;border-top:1px solid #dcfce7;border-right:1px solid #dcfce7;border-bottom:1px solid #dcfce7}.alert-success .alert-title[data-v-7c3fd9fa]{color:#166534}.alert-success .alert-message[data-v-7c3fd9fa]{color:#14532d}.alert-header[data-v-7c3fd9fa]{display:flex;align-items:flex-start;gap:.85rem}.alert-icon-wrapper[data-v-7c3fd9fa]{font-size:1.35rem;line-height:1.2;flex-shrink:0;margin-top:.1rem}.alert-title-group[data-v-7c3fd9fa]{flex:1}.alert-title[data-v-7c3fd9fa]{font-size:1.05rem;font-weight:700;margin:0 0 .35rem;line-height:1.3}.alert-message[data-v-7c3fd9fa]{font-size:.925rem;line-height:1.45;margin:0}.alert-close-btn[data-v-7c3fd9fa]{background:none;border:none;font-size:1.4rem;line-height:1;color:#9ca3af;cursor:pointer;padding:.2rem .4rem;border-radius:4px}.alert-close-btn[data-v-7c3fd9fa]:hover{color:#4b5563;background-color:#0000000d}.alert-steps-section[data-v-7c3fd9fa]{margin-top:.85rem;padding-top:.75rem;border-top:1px dashed rgba(0,0,0,.12)}.steps-heading[data-v-7c3fd9fa]{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;margin:0 0 .6rem;color:inherit;opacity:.85}.steps-list[data-v-7c3fd9fa]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.step-item[data-v-7c3fd9fa]{display:flex;align-items:flex-start;gap:.65rem;font-size:.9rem;line-height:1.4;color:inherit}.step-badge[data-v-7c3fd9fa]{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:.75rem;font-weight:700;background:#0000001f;color:inherit;flex-shrink:0;margin-top:.1rem}.step-text[data-v-7c3fd9fa] .step-code{background-color:#00000014;padding:.15rem .4rem;border-radius:4px;font-family:monospace;font-size:.85em;font-weight:600}.alert-actions[data-v-7c3fd9fa]{margin-top:.85rem}.alert-retry-btn[data-v-7c3fd9fa]{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .95rem;background-color:#fff;border:1px solid rgba(0,0,0,.18);border-radius:6px;font-size:.875rem;font-weight:600;color:inherit;cursor:pointer;box-shadow:0 1px 2px #0000000d;transition:all .15s ease}.alert-retry-btn[data-v-7c3fd9fa]:hover{background-color:#f9fafb;border-color:#0000004d;transform:translateY(-1px)}.alert-details-section[data-v-7c3fd9fa]{margin-top:.75rem;padding-top:.5rem}.details-toggle[data-v-7c3fd9fa]{background:none;border:none;padding:0;font-size:.775rem;font-family:inherit;color:inherit;opacity:.7;cursor:pointer;text-decoration:underline}.details-toggle[data-v-7c3fd9fa]:hover{opacity:1}.details-code-wrapper[data-v-7c3fd9fa]{margin-top:.5rem;background:#0000000f;border-radius:6px;padding:.6rem;overflow-x:auto}.details-code[data-v-7c3fd9fa]{margin:0;font-family:monospace;font-size:.775rem;white-space:pre-wrap;word-break:break-all;color:#374151}.achievement-container[data-v-edd07934]{position:relative;display:inline-block;cursor:pointer;z-index:1}.achievement-container[data-v-edd07934]:hover{z-index:50}.achievement-icon[data-v-edd07934]{width:48px;height:48px;border-radius:50%;background-color:#f8fafc;display:flex;justify-content:center;align-items:center;border:2px solid #e2e8f0;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease-in-out,border-color .25s ease;position:relative;z-index:2}.achievement-image[data-v-edd07934]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;border-radius:50%;transition:filter .25s ease,opacity .25s ease}.achievement-container.is-locked .achievement-image[data-v-edd07934]{filter:grayscale(100%);opacity:.5}.achievement-container.is-locked .achievement-icon[data-v-edd07934]{background-color:#f1f5f9;border-color:#cbd5e1}.achievement-container.is-locked:hover .achievement-image[data-v-edd07934]{filter:grayscale(50%);opacity:.85}.achievement-container.is-locked:hover .achievement-icon[data-v-edd07934]{border-color:#94a3b8}.achievement-container:hover .achievement-icon[data-v-edd07934]{transform:scale(2.2);box-shadow:0 12px 30px #0f172a26;border-color:var(--primary-blue, #3b82f6)}.lock-indicator[data-v-edd07934]{position:absolute;bottom:-2px;right:-2px;width:18px;height:18px;background-color:#475569;color:#fff;border:2px solid #ffffff;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:3;pointer-events:none;box-shadow:0 1px 3px #00000040;transition:opacity .2s ease,transform .2s ease}.achievement-container:hover .lock-indicator[data-v-edd07934]{opacity:0;transform:scale(.5)}.achievement-tooltip[data-v-edd07934]{visibility:hidden;width:230px;background-color:#0f172af2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#f8fafc;text-align:center;border-radius:12px;padding:12px 14px;position:absolute;top:100%;left:50%;transform:translate(-50%) translateY(10px);margin-top:35px;opacity:0;transition:all .3s cubic-bezier(.34,1.56,.64,1);pointer-events:none;box-shadow:0 15px 35px #0003;border:1px solid rgba(255,255,255,.1);z-index:60}.achievement-tooltip[data-v-edd07934]:after{content:"";position:absolute;bottom:100%;left:50%;margin-left:-6px;border-width:6px;border-style:solid;border-color:transparent transparent rgba(15,23,42,.95) transparent}.achievement-container:hover .achievement-tooltip[data-v-edd07934]{visibility:visible;opacity:1;transform:translate(-50%) translateY(0)}.tooltip-badge-row[data-v-edd07934]{margin-bottom:8px}.badge-status[data-v-edd07934]{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:700;padding:.15rem .55rem;border-radius:999px;letter-spacing:.02em}.badge-unlocked[data-v-edd07934]{background:#22c55e33;color:#86efac;border:1px solid rgba(34,197,94,.35)}.badge-locked[data-v-edd07934]{background:#94a3b833;color:#cbd5e1;border:1px solid rgba(148,163,184,.3)}.font-bold[data-v-edd07934]{font-weight:600;margin-bottom:4px;font-size:.95rem;letter-spacing:.01em;color:#fff}.text-xs[data-v-edd07934]{font-size:.8rem;line-height:1.4;color:#cbd5e1;margin:0}[data-v-b7c2019b]:root{--primary-blue: #3b82f6;--streak-bg: #fff7ed;--streak-text: #9a3412;--streak-icon: #f97316;--background-color: #f8f9fa;--border-color: #e5e7eb;--muted-text: #475569;--text-color: #1f2937;--card-background: #ffffff}.learning-calendar[data-v-b7c2019b]{display:flex;flex-direction:column;gap:.75rem}.calendar-header[data-v-b7c2019b]{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.calendar-eyebrow[data-v-b7c2019b]{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;color:var(--muted-text);margin:0 0 .2rem}.calendar-header h4[data-v-b7c2019b]{margin:0;font-size:1.1rem}.calendar-nav[data-v-b7c2019b]{display:inline-flex;gap:.4rem}.calendar-nav-btn[data-v-b7c2019b]{border:1px solid var(--border-color);background:#fff9;border-radius:999px;width:34px;height:34px;display:grid;place-items:center;cursor:pointer;transition:background .15s ease,border-color .15s ease}.calendar-nav-btn[data-v-b7c2019b]:hover{background:#3b82f61a;border-color:var(--primary-blue);color:var(--primary-blue)}.calendar-grid[data-v-b7c2019b]{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem}.weekday-label[data-v-b7c2019b]{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--muted-text);text-align:center}.calendar-day[data-v-b7c2019b]{background:var(--card-background, #f9fafb);border-radius:.75rem;padding:.65rem .35rem;min-height:68px;display:flex;flex-direction:column;align-items:center;gap:.35rem;color:var(--text-color);font-weight:600;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.calendar-day.is-outside[data-v-b7c2019b]{opacity:.35}.calendar-day.is-active[data-v-b7c2019b]{background:#ff8a4c1f;box-shadow:inset 0 0 0 1px #ff8a4c66}.calendar-day.is-today[data-v-b7c2019b]{box-shadow:inset 0 0 0 2px var(--primary-blue)}.calendar-day[data-v-b7c2019b]:hover{transform:translateY(-2px);box-shadow:0 12px 25px #0f172a1f}.day-xp-pill[data-v-b7c2019b]{display:inline-flex;align-items:center;gap:.2rem;font-size:.7rem;font-weight:700;padding:.15rem .4rem;border-radius:999px;color:#fff;background:linear-gradient(120deg,#ff9d4c,#ff5e62);box-shadow:0 6px 12px #ff5e6259}.chapter-indicators[data-v-b7c2019b]{display:flex;align-items:center;gap:.15rem;margin-top:.2rem}.chapter-dot[data-v-b7c2019b]{width:4px;height:4px;border-radius:50%;background-color:var(--primary-blue);opacity:.7}.chapter-more[data-v-b7c2019b]{font-size:.6rem;color:var(--muted-text);font-weight:600}.calendar-tooltip[data-v-b7c2019b]{position:fixed;z-index:1000;pointer-events:none}.tooltip-content[data-v-b7c2019b]{background:#2d3748;color:#fff;padding:.75rem 1rem;border-radius:8px;box-shadow:0 10px 25px #0003;max-width:250px;font-size:.875rem;line-height:1.4}.tooltip-title[data-v-b7c2019b]{font-weight:600;margin-bottom:.5rem;color:#e2e8f0}.tooltip-chapters[data-v-b7c2019b]{display:flex;flex-direction:column;gap:.25rem}.tooltip-chapter[data-v-b7c2019b]{color:#fff;font-weight:500}.tooltip-arrow[data-v-b7c2019b]{position:absolute;top:100%;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #2d3748}.tooltip-fade-enter-active[data-v-b7c2019b],.tooltip-fade-leave-active[data-v-b7c2019b]{transition:opacity .15s ease,transform .15s ease}.tooltip-fade-enter-from[data-v-b7c2019b],.tooltip-fade-leave-to[data-v-b7c2019b]{opacity:0;transform:translate(-50%) translateY(-100%) scale(.95)}.tooltip-fade-enter-to[data-v-b7c2019b],.tooltip-fade-leave-from[data-v-b7c2019b]{opacity:1;transform:translate(-50%) translateY(-100%) scale(1)}.progress-summary-card[data-v-3d87f68f]{margin-bottom:2rem;padding:1.5rem;position:relative;z-index:30;overflow:visible}.progress-header[data-v-3d87f68f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.progress-title[data-v-3d87f68f]{margin:0;font-size:1.5rem}.details-link[data-v-3d87f68f]{color:var(--primary-blue, #3b82f6);text-decoration:none;font-weight:600;font-size:.95rem}.details-link[data-v-3d87f68f]:hover{text-decoration:underline}.progress-content[data-v-3d87f68f]{display:flex;flex-wrap:nowrap;gap:1.5rem;align-items:flex-start;justify-content:space-between}.progress-left-section[data-v-3d87f68f]{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem;flex-grow:1;min-width:0}.progress-right-section[data-v-3d87f68f]{flex-shrink:0}.fixed-info[data-v-3d87f68f]{display:flex;flex-direction:column;gap:1rem;flex-shrink:0;flex-grow:1;min-width:250px}.level-display[data-v-3d87f68f]{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.level-tag[data-v-3d87f68f]{background-color:var(--primary-blue, #3b82f6);color:#fff;padding:.2rem .6rem;border-radius:6px;font-weight:700}.xp-bar-container[data-v-3d87f68f]{flex-grow:1;background-color:#e9ecef;height:10px;border-radius:5px;min-width:120px;overflow:hidden}.xp-bar-fill[data-v-3d87f68f]{height:100%;background-color:var(--xp-color, #fbbf24);border-radius:5px;transition:width .5s ease-out}.xp-wrapper[data-v-3d87f68f]{display:flex;align-items:center;gap:.5rem}.xp-text[data-v-3d87f68f]{font-size:.9rem;font-weight:500;color:var(--muted-text, #6b7280);white-space:nowrap}.streak-wrapper[data-v-3d87f68f]{position:relative;display:inline-flex}.streak-display[data-v-3d87f68f]{display:flex;align-items:center;gap:.75rem;justify-content:center;background-color:var(--streak-bg, #fff7ed);color:var(--streak-text, #9a3412);padding:.5rem;border-radius:8px;cursor:pointer;box-shadow:0 15px 30px #12263f14;transition:transform .2s ease,box-shadow .2s ease}.streak-display[data-v-3d87f68f]:focus-visible{outline:2px solid var(--primary-blue, #3b82f6);outline-offset:3px}.streak-display[data-v-3d87f68f]:hover{transform:translateY(-2px);box-shadow:0 20px 40px #12263f1f}.streak-icon[data-v-3d87f68f]{color:var(--streak-icon, #f97316);font-size:1.5rem}.streak-display p[data-v-3d87f68f]{margin:0;font-weight:500}.achievements-container[data-v-3d87f68f]{display:flex;align-items:center;justify-content:flex-end;min-height:60px}.achievements-display[data-v-3d87f68f]{display:flex;gap:.5rem;align-items:center;overflow:visible}.no-achievements[data-v-3d87f68f]{font-style:italic;color:var(--muted-text, #6b7280);font-size:.85rem;white-space:nowrap}.more-achievements-link[data-v-3d87f68f]{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;background-color:#f8f9fa;border:2px dashed #e5e7eb;border-radius:50%;font-size:1.2rem;color:#6b7280;text-decoration:none;font-weight:700;transition:all .2s;flex-shrink:0}.more-achievements-link[data-v-3d87f68f]:hover{background-color:#e5e7eb;color:#1f2937;border-style:solid}.streak-calendar-popover[data-v-3d87f68f]{position:absolute;top:calc(100% + .75rem);left:50%;transform:translate(-50%);background:var(--card-background, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:1rem;padding:1.25rem;width:min(360px,80vw);box-shadow:0 25px 45px #0f172a2e;z-index:60}.fade-scale-enter-active[data-v-3d87f68f],.fade-scale-leave-active[data-v-3d87f68f]{transition:opacity .2s ease,transform .2s ease}.fade-scale-enter-from[data-v-3d87f68f],.fade-scale-leave-to[data-v-3d87f68f]{opacity:0;transform:translate(-50%) translateY(-8px) scale(.96)}.level-mascot[data-v-3d87f68f]{display:flex;flex-direction:column;align-items:center;gap:.5rem}.level-mascot__image[data-v-3d87f68f]{width:110px;height:auto}.level-mascot__bubble[data-v-3d87f68f]{background:#fff7db;border:2px solid #f7c948;border-radius:16px;padding:.5rem .95rem;font-weight:600;color:#92400e;box-shadow:0 10px 25px #f4bb4459;position:relative;max-width:240px;line-height:1.25;text-align:center}.level-mascot__bubble[data-v-3d87f68f]:after{content:"";position:absolute;top:100%;left:50%;width:18px;height:18px;background:#fff7db;border-right:2px solid #f7c948;border-bottom:2px solid #f7c948;transform:translate(-50%,-9px) rotate(45deg)}.celebration-fox[data-v-3d87f68f]{position:absolute;top:-20px;right:-90px;width:190px;pointer-events:none;z-index:50}.celebration-fox img[data-v-3d87f68f]{width:100%;height:auto;animation:fox-bounce-3d87f68f 1.9s ease-in-out infinite}.fox-pop-enter-active[data-v-3d87f68f],.fox-pop-leave-active[data-v-3d87f68f]{transition:opacity .35s ease,transform .35s ease}.fox-pop-enter-from[data-v-3d87f68f],.fox-pop-leave-to[data-v-3d87f68f]{opacity:0;transform:translateY(-20px) scale(.9)}@keyframes fox-bounce-3d87f68f{0%{transform:translateY(0)}50%{transform:translateY(-12px)}to{transform:translateY(0)}}@media(max-width:992px){.progress-content[data-v-3d87f68f]{flex-wrap:wrap}.progress-left-section[data-v-3d87f68f]{flex-direction:column;align-items:stretch}.achievements-container[data-v-3d87f68f]{justify-content:flex-start}}@media(max-width:768px){.celebration-fox[data-v-3d87f68f]{top:-130px;right:auto;left:50%;margin-left:-70px;width:150px}.level-mascot[data-v-3d87f68f]{margin:1.25rem auto 0;max-width:220px}.level-mascot__image[data-v-3d87f68f]{width:90px}.level-mascot__bubble[data-v-3d87f68f]{font-size:.9rem}}.card[data-v-371e076e]{padding:1.5rem}.page-title[data-v-371e076e]{text-align:center;font-size:2rem;margin:2.5rem 0 1.5rem;color:#4a90e2}.topics-container[data-v-371e076e]{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.topic-card[data-v-371e076e]{text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s;text-align:center}.topic-card[data-v-371e076e]:hover{transform:translateY(-5px);box-shadow:0 8px 15px #00000014}.topic-card h2[data-v-371e076e]{margin-top:0;color:#3b82f6}.utility-section[data-v-371e076e]{margin-top:2rem}.utility-title[data-v-371e076e]{text-align:center;font-size:1.25rem;margin-bottom:1rem}.utility-buttons[data-v-371e076e]{display:flex;justify-content:center;gap:1rem}.btn-utility[data-v-371e076e]{flex-grow:1;background-color:#eef2ff;color:#4338ca;border:1px solid #c7d2fe;padding:.75rem;border-radius:8px;font-weight:500;transition:background-color .2s;cursor:pointer}.btn-utility[data-v-371e076e]:hover{background-color:#e0e7ff}.search-container[data-v-371e076e]{display:flex;gap:.5rem;margin-bottom:1rem;max-width:600px;margin-left:auto;margin-right:auto}.search-input[data-v-371e076e]{flex-grow:1;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:1rem}.btn-search[data-v-371e076e]{background-color:#3b82f6;color:#fff;border:none;padding:.5rem 1.5rem;border-radius:8px;cursor:pointer}.search-results-container[data-v-371e076e]{padding:1rem;margin-top:-1.5rem;margin-bottom:2rem}.search-result-item[data-v-371e076e]{padding:.75rem;border-top:1px solid #e5e7eb}.search-result-item[data-v-371e076e]:first-child{border-top:none}.context-link[data-v-371e076e]{background:none;border:none;padding:0;color:#3b82f6;text-decoration:underline;cursor:pointer}.btn-back[data-v-f18eb8b5]{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:8px;border:1px solid transparent;font-weight:600;background-color:transparent;color:var(--muted-text, #6b7280);cursor:pointer;transition:all .2s;width:-moz-fit-content;width:fit-content}.btn-back[data-v-f18eb8b5]:hover{background-color:#0000000d;color:var(--dark-text, #111)}.btn-full-width[data-v-f18eb8b5]{width:100%;max-width:320px;margin-left:auto;margin-right:auto;display:block}.chapters-grid[data-v-3fa73fc5]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media(max-width:1200px){.chapters-grid[data-v-3fa73fc5]{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.chapters-grid[data-v-3fa73fc5]{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.chapters-grid[data-v-3fa73fc5]{grid-template-columns:1fr}}.chapter-btn[data-v-3fa73fc5]{width:100%;height:100%;display:flex;align-items:center;text-align:left;padding:1rem;border-radius:8px;box-shadow:0 1px 3px #0000001a;transition:all .2s;border-width:1px;border-style:solid}.chapter-title[data-v-3fa73fc5]{font-weight:400;font-size:1.1rem;color:#1f2937}.status-default[data-v-3fa73fc5]{background-color:#fff;border-color:#e5e7eb}.status-default[data-v-3fa73fc5]:hover{background-color:#f9fafb;border-color:#d1d5db}.status-started[data-v-3fa73fc5]{background-color:#fef9c3;border-color:#fde047;color:#713f12}.status-started[data-v-3fa73fc5]:hover{background-color:#fef08a}.status-completed[data-v-3fa73fc5]{background-color:#dcfce7;border-color:#4ade80;color:#15803d}.status-completed[data-v-3fa73fc5]:hover{background-color:#bbf7d0}.top-bar{text-align:left;margin-bottom:1.5rem}.back-link{display:inline-block;font-weight:500;color:var(--muted-text, #64748b);text-decoration:none;margin-bottom:1.5rem}.back-link:hover{color:var(--primary-blue, #3b82f6);text-decoration:underline}.page-title{font-size:2.2rem;font-weight:800;color:var(--primary-blue, #3b82f6);text-align:center;margin-bottom:2rem;background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 15px #0000000d}@media(max-width:640px){.page-title{font-size:1.75rem;padding:1rem;margin-bottom:1.5rem}}.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:3rem}@media(max-width:640px){.card-grid{grid-template-columns:1fr}}.category-card{position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding:2rem;text-align:center;text-decoration:none;color:var(--dark-text);background-color:var(--card-background, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;transition:transform .2s ease,box-shadow .2s ease;height:100%}.category-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001a}.card-title{font-size:1.5rem;margin:0 0 .5rem;color:var(--primary-blue)}.card-description{color:var(--muted-text);font-size:1rem;line-height:1.5}.subtitle-list{margin:.5rem 0 0;padding-left:1.5rem;text-align:left;list-style-type:disc;width:100%}.subtitle-list li{margin-bottom:.2rem}.levels-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.adj-level-card{background:#fff;border-radius:16px;box-shadow:0 10px 24px #00000014;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}.level-header h2{margin:.4rem 0;color:var(--primary-blue);font-size:1.6rem}.level-description{color:var(--muted-text);font-size:1rem;margin:0}.level-example{color:var(--muted-text);font-size:.95rem;margin:0;font-style:italic}.level-number{display:inline-block;background:var(--card-background, #f4f6fb);color:var(--primary-blue);font-weight:700;padding:.35rem .8rem;border-radius:999px;font-size:.95rem}.button-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.task-btn{display:flex;align-items:center;justify-content:center;text-decoration:none;font-weight:600;color:#fff;border-radius:12px;transition:all .2s ease-in-out;font-size:1.05rem;padding:1rem .75rem;margin:0}.task-btn:hover{transform:translateY(-3px);box-shadow:0 8px 18px #00000026}@media(max-width:768px){.levels-grid{grid-template-columns:1fr}}:root{--primary-blue: #3b82f6;--primary-blue-dark: #2563eb;--background-color-light: #f8fafc;--border-color: #e2e8f0}*,*:before,*:after{box-sizing:border-box;margin:0;position:relative;font-weight:400}.fas:before,.far:before,.fab:before,.fa:before,.fal:before,.fad:before{font-weight:inherit}html{overflow-y:scroll}.btn{padding:.85rem 2rem;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;margin:.5rem;transition:all .2s ease;min-width:180px}.btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 2rem;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;background-color:var(--primary-blue, #3b82f6);color:#fff}.btn-start-exercise{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 2.5rem;border-radius:8px;background-color:var(--primary-blue, #3b82f6);color:#fff!important;font-size:1.1rem;font-weight:700;text-align:center;transition:all .2s ease;text-decoration:none;border:none;cursor:pointer}.btn-start-exercise:hover{transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 4px 10px #3b82f64d}.btn-primary:hover:not(:disabled){background-color:var(--primary-blue-dark, #2563eb);transform:translateY(-2px)}.btn-primary:disabled{opacity:.65;cursor:not-allowed;background-color:var(--muted-text, #64748b);transform:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 2rem;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;background-color:#f1f5f9;color:#334155;border:1px solid #cbd5e1}.btn-secondary:hover:not(:disabled){background-color:#e2e8f0;border-color:#94a3b8;transform:translateY(-2px)}.btn-secondary:disabled{opacity:.65;cursor:not-allowed;transform:none}.btn-theory,.task-btn-theory{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.5rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;color:#fff;background-color:var(--success-color, #198754)}.btn-theory:hover:not(:disabled),.task-btn-theory:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 6px 15px #1987544d}.btn-theory:disabled,.task-btn-theory:disabled{background-color:#a3d9b8;cursor:not-allowed;opacity:.7;filter:grayscale(50%)}.btn-theory:disabled:hover,.task-btn-theory:disabled:hover{transform:none;filter:grayscale(50%);box-shadow:none}.btn-exercise,.task-btn-exercise{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.5rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;color:#fff;background-color:var(--primary-blue, #3b82f6)}.btn-exercise:hover:not(:disabled),.task-btn-exercise:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 6px 15px #3b82f64d}.btn-exercise:disabled,.task-btn-exercise:disabled{background-color:#a5b4fc;cursor:not-allowed;opacity:.7;filter:grayscale(50%)}.btn-exercise:disabled:hover,.task-btn-exercise:disabled:hover{transform:none;filter:grayscale(50%);box-shadow:none}.task-btn-translation{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.5rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;color:#fff;background-color:#8b5cf6}.task-btn-translation:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 6px 15px #8b5cf64d}.task-btn-disabled{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.5rem;border:none;border-radius:10px;font-size:1rem;font-weight:600;text-decoration:none;background-color:#d1d5db;color:#4b5563;cursor:not-allowed;box-shadow:none}.task-btn-disabled:hover{transform:none;box-shadow:none}.filter-container{max-width:600px;margin:0 auto}.challenge-container{margin-bottom:2rem;width:100%}.challenge-description{text-align:center;margin-bottom:2rem}.challenge-description p{color:var(--dark-text, #111);font-size:1.1rem}.sentence-display{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem;font-size:1.4rem;font-weight:500;color:var(--dark-text, #111);margin-bottom:2rem;padding:1.5rem;background-color:var(--background-color-light, #f8fafc);border-radius:12px;border:2px solid var(--border-color, #e2e8f0)}.sentence-part{color:var(--dark-text, #111)}.feedback-container{margin-top:1rem;width:100%}.feedback-item{padding:1.5rem;border-radius:8px;margin-bottom:1rem}.feedback-item.correct{background-color:#f0fdf4;border:2px solid #22c55e}.feedback-item.incorrect{background-color:#fef2f2;border:2px solid #ef4444}.feedback-header{display:flex;align-items:flex-start;gap:.75rem}.feedback-icon{font-size:1.2rem;font-weight:700;margin-top:.1rem}.feedback-item.correct .feedback-icon{color:#22c55e}.feedback-item.incorrect .feedback-icon{color:#ef4444}.feedback-text{flex:1}.feedback-text pre{margin:0;font-family:inherit;font-size:1.1rem;white-space:pre-line;line-height:1.5;font-weight:600}.feedback-actions{margin-top:2rem;text-align:center}.theory-container{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-color)}.btn-warning{background-color:#ffc107;color:#212529;border:1px solid #e0a800;padding:.75rem 1.5rem;border-radius:6px;font-weight:500;cursor:pointer;transition:background-color .2s;width:100%}.btn-warning:hover{background-color:#e0a800}.btn-warning:disabled{background-color:#fff3cd;color:#664d03;border-color:#ffc107;cursor:not-allowed;opacity:.7}.step-eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;color:var(--primary-blue);margin:0 0 .25rem;font-weight:600}.topic-title{font-size:2.2rem;font-weight:800;color:var(--primary-blue, #3b82f6)!important;text-align:center;margin-bottom:2rem;background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 15px #0000000d}.theory-title:before{content:"Theorie";display:block;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:var(--muted-text);margin-bottom:.5rem;font-weight:700}@media(max-width:640px){.topic-title{font-size:1.75rem;padding:1rem;margin-bottom:1.5rem}}.theory-card h2{font-size:clamp(1.3rem,3vw,1.6rem)!important;color:var(--primary-blue, #3b82f6)!important;font-weight:700!important;margin:0 0 1rem!important;padding-bottom:.5rem!important;border-bottom:2px solid rgba(59,130,246,.15)!important}.theory-card h3{font-size:clamp(1.1rem,2.5vw,1.3rem)!important;color:var(--dark-text, #111)!important;font-weight:600!important;margin:1.5rem 0 .75rem!important;padding-bottom:.25rem!important;border-bottom:1px solid rgba(15,23,42,.1)!important}.theory-card h4{font-size:1.05rem!important;color:var(--primary-blue, #3b82f6)!important;font-weight:600!important;margin:1.2rem 0 .5rem!important}.theory-card h2+h3,.theory-card h3+h4{margin-top:0!important}.structure-formula{background:#3b82f614;color:var(--primary-blue);font-weight:600;padding:.85rem 1.25rem;border-radius:12px;border-left:4px solid var(--primary-blue);margin:.5rem 0}.verb-chip-grid,.verb-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin:1.5rem 0}.verb-chip-item,.verb-chip{border:1px solid var(--border-color, #e2e8f0);border-radius:12px;padding:.65rem .8rem;background:#fff;text-transform:none;cursor:pointer;transition:all .2s ease;font-weight:500;text-align:center}.verb-chip-item.active,.verb-chip.active{border-color:var(--primary-blue, #3b82f6);background:#3b82f61f;color:var(--primary-blue, #3b82f6)}.select-all-row{display:flex;justify-content:flex-start;margin-bottom:.75rem}.select-all-button{border:1px dashed var(--border-color, #e2e8f0);border-radius:999px;padding:.35rem 1rem;background:transparent;color:var(--primary-blue, #3b82f6);font-weight:600;cursor:pointer;transition:border-color .2s ease,color .2s ease}.select-all-button:hover:not(:disabled){border-color:var(--primary-blue, #3b82f6);color:var(--primary-blue-dark, #2563eb)}.select-all-button:disabled{opacity:.6;cursor:not-allowed}.exercise-action-bar,.exercise-actions,.action-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;width:100%}.primary-btn,.btn-primary{border:none;border-radius:12px;padding:.7rem 1.6rem;background:var(--primary-blue, #3b82f6);color:#fff;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;text-decoration:none}.primary-btn:hover:not(:disabled),.btn-primary:hover:not(:disabled){background-color:var(--primary-blue-dark, #2563eb);transform:translateY(-1px)}.primary-btn:disabled,.btn-primary:disabled{opacity:.5;cursor:not-allowed}.ghost-btn{border:none;background:transparent;color:var(--muted-text, #64748b);text-decoration:none;font-weight:600;cursor:pointer;transition:color .2s ease}.ghost-btn:hover:not(:disabled){color:var(--primary-blue-dark, #2563eb)}.btn-secondary{border:1px solid var(--border-color, #e2e8f0);border-radius:12px;padding:.7rem 1.6rem;background:#f8fafc;color:var(--primary-blue-dark, #0f172a);font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:#f1f5f9}.link-btn{border:none;background:transparent;color:var(--primary-blue, #3b82f6);font-weight:600;cursor:pointer;transition:color .2s ease}.link-btn:hover:not(:disabled){color:var(--primary-blue-dark, #2563eb)}.exercise-card{padding:clamp(1.35rem,4vw,2.25rem);display:flex;flex-direction:column;gap:1.25rem;background:#fff;border-radius:22px;box-shadow:0 18px 45px #0f172a14;border:1px solid rgba(15,23,42,.08)}.instruction{margin:0;color:var(--muted-text, #64748b);font-weight:600}.action-row{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;width:100%}.prompt-panel{border:1px solid var(--border-color, #e2e8f0);border-radius:1rem;padding:1.1rem;display:flex;flex-direction:column;gap:.4rem}.prompt-header{display:flex;justify-content:space-between;align-items:center}.prompt-label{margin:0;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;color:var(--primary-blue, #3b82f6)}.prompt-text{margin:0;font-size:1.15rem;font-weight:800}.prompt-note{font-size:.85rem;color:var(--muted-text, #64748b);margin-top:.25rem;font-style:italic}.svo-overview{max-width:960px;margin:0 auto;padding:2rem 1rem 3rem}.svo-overview .back-link{display:inline-flex;align-items:center;margin-bottom:1.5rem;color:var(--muted-text);font-weight:600}.svo-hero,.svo-hero.hero,.svo-hero.hero.card,.svo-overview .hero.svo-hero{position:relative;padding:clamp(1.05rem,2.8vw,1.75rem);margin-bottom:1.4rem;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.7rem}.svo-hero-top-row{display:flex;justify-content:space-between;padding-right:clamp(200px,28vw,320px);gap:1rem;align-items:flex-start;flex-wrap:wrap}.svo-hero-title-group{display:flex;flex-direction:column;gap:.25rem;width:100%;max-width:100%}.svo-hero-eyebrow,.svo-overview .eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:var(--primary-blue);margin:0}.svo-hero-title,.svo-hero h1{margin:0;font-size:clamp(1.4rem,3vw,2rem);line-height:1.14}.svo-hero-progress{margin:0;color:var(--muted-text);font-size:1rem;line-height:1.4}.svo-hero-description,.svo-hero .hero-description,.svo-overview .lead{margin:0;color:var(--muted-text);font-size:1.02rem;line-height:1.45}.svo-hero-description-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(205px,.8fr);gap:1.1rem;align-items:flex-start}.svo-hero-description-col{min-width:0;display:flex;flex-direction:column;gap:.65rem}.svo-hero-mascot{justify-self:end;display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-top:-.95rem;text-align:center}.svo-hero-mascot-bubble{position:relative;min-width:205px;max-width:290px;padding:.75rem 1.05rem;background:#fff;border-radius:20px;border:1px solid rgba(15,23,42,.12);box-shadow:0 10px 25px #0f172a1f;font-size:.92rem;line-height:1.4;font-style:italic;color:var(--primary-blue);text-align:left}.svo-hero-mascot-bubble:after,.svo-hero-mascot-bubble:before{content:"";position:absolute;left:55%;transform:translate(-50%);width:0;height:0}.svo-hero-mascot-bubble:after{bottom:-15px;border-top:16px solid rgba(15,23,42,.12);border-left:14px solid transparent;border-right:14px solid transparent}.svo-hero-mascot-bubble:before{bottom:-14px;border-top:16px solid #fff;border-left:13px solid transparent;border-right:13px solid transparent;z-index:1}.svo-hero-mascot-image{width:clamp(92px,10vw,126px);height:auto;-o-object-fit:contain;object-fit:contain;transform:scaleX(-1)}.ordering-mascot__line{margin:0;font-size:.95rem;line-height:1.45}.ordering-mascot__line--primary{font-weight:400;font-style:italic;color:var(--dark-text, #1f2937)}.svo-hero-actions,.svo-overview .cta-row{display:flex;flex-direction:column;gap:.4rem;align-items:flex-start}.svo-overview .cta-row{flex-direction:row;align-items:center;flex-wrap:wrap;margin-top:.5rem;gap:.75rem}.svo-btn,.svo-overview .btn{border-radius:999px;padding:.75rem 1.65rem;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid transparent}.svo-overview .btn-light{border:1px solid var(--border-color);color:var(--dark-text);background:#fff}.svo-overview .exercise-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.svo-overview .exercise-column{display:flex;flex-direction:column;position:relative;padding-bottom:3.5rem}.svo-overview .exercise-card{display:flex;flex-direction:column;flex:1;text-decoration:none;padding:1.75rem;border-radius:16px;border:1px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;color:inherit;position:relative}.svo-overview .exercise-card[data-warning]:after{content:attr(data-warning);position:absolute;top:.75rem;right:.75rem;background:#fef08a;color:#854d0e;font-weight:600;font-size:.95rem;padding:.35rem .65rem;border-radius:6px;box-shadow:0 6px 20px #b4530940;transform:rotate(-2deg);border:1px solid rgba(202,138,4,.35)}.svo-overview .exercise-card:not(.coming-soon):hover{transform:translateY(-6px);border-color:var(--primary-blue);box-shadow:0 12px 25px #0f172a1f}.svo-overview .exercise-card.coming-soon{opacity:.65;cursor:not-allowed}.svo-overview .exercise-icon{font-size:2.5rem;margin-bottom:.75rem}.svo-overview .exercise-card-title{margin:.25rem 0 .35rem;font-size:1.35rem}.svo-overview .exercise-card-description{margin:0;color:var(--muted-text)}.svo-overview .coming-soon-badge{display:inline-block;margin-top:.75rem;padding:.35rem .75rem;border-radius:999px;background:#3b82f61f;color:var(--primary-blue);font-size:.85rem;font-weight:600}.svo-overview .exercise-card-wrapper{display:flex;flex-direction:column;height:100%;gap:.75rem}.svo-overview .next-level-link{position:absolute;bottom:0;left:0;font-weight:600;text-decoration:none;color:var(--primary-blue);padding-left:.25rem;line-height:1.4}.svo-overview .next-level-link:hover{text-decoration:underline}.svo-toggle-stack{display:flex;flex-direction:column;gap:.45rem;align-items:flex-start}.svo-toggle-stack .btn-toggle{width:-moz-fit-content;width:fit-content}.btn-toggle{display:inline-flex;align-items:center;gap:.5rem;border:1px solid rgba(59,130,246,.35);border-radius:999px;padding:.5rem 1.25rem;background:#3b82f614;color:var(--primary-blue);font-weight:600;font-size:.95rem;line-height:1.2;cursor:pointer;text-decoration:none;transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .15s ease}.btn-toggle i{font-size:.9rem}.btn-toggle:hover,.btn-toggle:focus-visible{background:#3b82f629;border-color:var(--primary-blue);color:var(--primary-blue);box-shadow:0 8px 24px #3b82f62e}.btn-toggle:active{transform:translateY(1px)}.btn-toggle.is-active,.btn-toggle[aria-pressed=true]{background:var(--primary-blue);color:#fff;border-color:var(--primary-blue);box-shadow:0 10px 25px #3b82f640}.hint-toggle{display:flex;justify-content:flex-end}.hint-toggle-btn{border:1px solid rgba(15,23,42,.15);border-radius:999px;padding:.35rem .75rem;background:#fff;display:inline-flex;align-items:center;gap:.5rem;font-weight:600;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.hint-toggle-btn:hover,.hint-toggle-btn:focus-visible{border-color:var(--primary-blue);box-shadow:0 0 0 2px #3b82f626}.toggle-slider{width:38px;height:20px;border-radius:999px;background:#0f172a26;position:relative;transition:background .2s ease}.toggle-slider:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0f172a26;transition:transform .2s ease}.toggle-slider.active{background:var(--primary-blue)}.toggle-slider.active:after{transform:translate(18px)}.hint-panel{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.5rem;border:1px solid var(--border-color);border-radius:16px;background:#0f172a06;text-align:center}.hint-translation{margin:0;color:var(--muted-text);font-style:italic}.tense-hints{display:flex;flex-direction:column;gap:.5rem;text-align:left}.tense-hint{margin:0;font-weight:600;color:var(--muted-text)}.palette-panel{margin:.75rem 0;display:flex;justify-content:center}.svo-hero .round-controls,.svo-round-controls,.round-controls{margin-top:.5rem;border:1px solid rgba(15,23,42,.1);border-radius:18px;padding:1rem 1.25rem;background:#3b82f60a;display:flex;flex-direction:column;gap:.75rem}.round-controls__header{display:flex;flex-direction:column;gap:.15rem}.round-controls__body{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.control-label{margin:0;font-weight:700;text-transform:uppercase;font-size:.8rem;letter-spacing:.08em;color:var(--primary-blue)}.control-subtitle{margin:0;color:var(--muted-text);font-size:.9rem}.option-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.option-button{border:1px solid rgba(15,23,42,.15);border-radius:999px;padding:.35rem .95rem;background:#fff;font-weight:600;transition:all .2s ease;cursor:pointer;color:#000}.translation-exercise-view{max-width:1080px;margin:0 auto;padding:1.5rem 1rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.translation-exercise-view .back-link{color:var(--muted-text);font-weight:600}.translation-exercise-view .story-meta{margin:0;font-weight:600}.translation-exercise-view .theory-panel{animation:translationFadeIn .2s ease}.translation-exercise-view .translation-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;align-items:flex-start}.translation-exercise-view .card{border-radius:20px;border:1px solid rgba(15,23,42,.08);background:#fff;box-shadow:0 18px 45px #0f172a14}.translation-exercise-view .translation-empty{padding:1.75rem;display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.translation-exercise-view .translation-empty__text{margin:0;color:var(--muted-text)}.translation-exercise-view .context-panel{padding:1.75rem;display:flex;flex-direction:column;gap:1rem}.translation-exercise-view .context-panel__head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.translation-exercise-view .context-label{margin:0;text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;color:var(--muted-text)}.translation-exercise-view .progress-chip{border-radius:999px;padding:.3rem .9rem;font-weight:600;background:#3b82f61f;color:var(--primary-blue)}.translation-exercise-view .context-list{display:flex;flex-direction:column;gap:.75rem;max-height:480px;overflow-y:auto;padding-right:.5rem}.translation-exercise-view .context-item{padding:.85rem 1rem;border-radius:14px;border:1px solid rgba(15,23,42,.1);background:#f8fafcb3;transition:border-color .2s ease,background .2s ease}.translation-exercise-view .context-item.active{border-color:var(--primary-blue);background:#3b82f614}.translation-exercise-view .context-item.state-correct{border-color:#10b98180;background:#10b9811f}.translation-exercise-view .context-item.state-incorrect{border-color:#ef444466;background:#ef44441f}.translation-exercise-view .context-german{margin:0;font-weight:600;color:#0f172a}.translation-exercise-view .context-french{margin:.25rem 0 0;color:var(--muted-text);font-style:italic}.translation-exercise-view .work-panel{padding:1.75rem;display:flex;flex-direction:column;gap:1rem}.translation-exercise-view .work-panel__head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.translation-exercise-view .current-label{text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;color:var(--muted-text);margin:0 0 .25rem}.translation-exercise-view .current-german{margin:0;font-size:clamp(1.2rem,3vw,1.6rem);font-weight:600;color:#0f172a}.translation-exercise-view .score-pill{border-radius:999px;padding:.3rem .9rem;font-weight:600;background:#0f172a0a;color:var(--muted-text)}.translation-exercise-view .answer-input{width:100%;border:2px solid rgba(15,23,42,.12);border-radius:16px;padding:.85rem 1rem;font-size:1.1rem;font-family:inherit;min-height:140px;resize:vertical}.translation-exercise-view .answer-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 2px #3b82f626}.translation-exercise-view .input-hint{margin:-.25rem 0 0;font-size:.85rem;color:var(--muted-text)}.translation-exercise-view .feedback{margin:0;border-radius:14px;padding:.85rem 1rem;border:1px solid rgba(15,23,42,.08);background:#0f172a08;color:#0f172a}.translation-exercise-view .feedback.success{border-color:#10b98173;background:#10b9811f}.translation-exercise-view .tense-mistakes li{display:flex;flex-wrap:wrap;gap:.35rem;align-items:baseline;background:#ef444414;border-radius:12px;padding:.4rem .75rem;font-size:.95rem}.translation-exercise-view .tense-mistakes .wrong-form{font-weight:700}.translation-exercise-view .tense-mistakes .arrow{color:var(--muted-text)}.translation-exercise-view .tense-mistakes .message{color:#0f172a}.translation-exercise-view .correction-card{border-radius:16px;border:1px solid rgba(15,23,42,.1);padding:.85rem 1rem;background:#0f172a05}.translation-exercise-view .correction-label{margin:0;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted-text)}.translation-exercise-view .correction-text{margin:.35rem 0 0;font-weight:600;color:#0f172a}.translation-exercise-view .exercise-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.translation-exercise-view .ghost-btn,.translation-exercise-view .primary-btn{border-radius:999px;padding:.6rem 1.5rem;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease,opacity .2s ease}.translation-exercise-view .ghost-btn{border:1px solid rgba(15,23,42,.2);background:transparent}.translation-exercise-view .primary-btn{border:none;background:var(--primary-blue);color:#fff}.translation-exercise-view .primary-btn:disabled{opacity:.6;cursor:not-allowed}.translation-exercise-view .summary-wrapper{display:flex;flex-direction:column;gap:1.5rem;grid-column:1 / -1}@media(max-width:720px){.translation-exercise-view .context-list{max-height:none}.translation-exercise-view .exercise-actions{flex-direction:column;align-items:stretch}}@keyframes translationFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.option-button.active{background:var(--primary-blue);color:#000!important;border-color:var(--primary-blue);box-shadow:0 8px 20px #3b82f640}.btn-secondary{border-radius:999px;border:1px solid rgba(15,23,42,.15);padding:.55rem 1.25rem;background:#fff;font-weight:600;color:var(--primary-blue);cursor:pointer;transition:all .2s ease}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.svo-round-controls__body,.round-controls__body{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.svo-round-controls .option-buttons,.round-controls .option-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.svo-round-controls .option-button,.round-controls .option-button{border:1px solid rgba(15,23,42,.15);border-radius:999px;padding:.35rem .95rem;background:#fff;font-weight:600;cursor:pointer;transition:all .2s ease}.svo-round-controls .option-button.active,.round-controls .option-button.active{background:var(--primary-blue);color:#000!important;border-color:var(--primary-blue);box-shadow:0 8px 20px #3b82f640}@media(max-width:640px){.svo-overview .exercise-card{padding:1.25rem}.svo-hero-top-row{flex-direction:column;padding-right:0}.svo-hero-title-group{flex:1;max-width:100%}.svo-hero-title,.svo-hero h1{font-size:clamp(1.2rem,5vw,1.55rem);line-height:1.18}.svo-hero-actions{width:100%;align-items:flex-start}.svo-hero-description-row{grid-template-columns:1fr;gap:.8rem}.svo-hero-mascot{justify-self:flex-start;align-items:flex-start;margin-top:.15rem}.svo-hero-mascot-bubble{min-width:auto;max-width:100%;padding:.65rem .9rem}}.negation-filter-view header.hero,.negation-mode-view header.hero,.negation-exercise-view header.hero,.negation-translation-view header.hero,.negation-questions-view header.hero,.negation-theory-view header.hero{padding:clamp(1.5rem,4vw,2.5rem);margin-bottom:2rem;display:flex;flex-direction:column;gap:1rem;text-align:left}.negation-filter-view header.hero .hero-eyebrow,.negation-mode-view header.hero .hero-eyebrow,.negation-exercise-view header.hero .hero-eyebrow,.negation-translation-view header.hero .hero-eyebrow,.negation-questions-view header.hero .hero-eyebrow,.negation-theory-view header.hero .hero-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.85rem;color:var(--primary-blue);margin:0}@media(max-width:640px){.negation-filter-view header.hero,.negation-mode-view header.hero,.negation-exercise-view header.hero,.negation-translation-view header.hero,.negation-questions-view header.hero,.negation-theory-view header.hero{margin-bottom:1.5rem}}.selection-summary{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}.summary-eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;color:var(--primary-blue);margin:0 0 .35rem}.filter-badges{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0}.filter-badges li{padding:.4rem .9rem;border-radius:999px;background:#3b82f61f;color:var(--primary-blue);font-weight:600}.count-selector{display:flex;flex-direction:column;gap:.85rem}.count-selector-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.per-tag-label{font-weight:600;color:var(--muted-text);font-size:.85rem;background:#0f172a0a;padding:.2rem .6rem;border-radius:6px}.count-option-grid{display:flex;flex-wrap:wrap;gap:.75rem}.count-option{padding:.6rem 1.25rem;border:1px solid var(--border-color);background:#fff;border-radius:12px;cursor:pointer;font-weight:600;color:var(--muted-text);transition:all .2s ease}.count-option:hover{border-color:var(--primary-blue);color:var(--primary-blue)}.count-option.active,.count-option[aria-pressed=true]{background:var(--primary-blue);border-color:var(--primary-blue);color:#fff}.topic-view{max-width:960px;margin:0 auto;padding:2rem 1rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.topic-view .back-link{display:inline-flex;align-items:center;justify-content:flex-start;margin:0 0 1.5rem;font-weight:500;color:var(--muted-text)}.topic-view .back-link:hover{color:var(--dark-text)}.topic-view .topic-title{font-size:clamp(2.2rem,5vw,3.2rem);margin:0 auto 2rem;text-align:center;background:#fff;border-radius:24px;padding:1rem 2rem;box-shadow:0 20px 45px #0f172a14}.topic-view .category-selector{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:2rem}.topic-view .btn-category{padding:1.4rem 1.5rem;border-radius:12px;border:2px solid var(--border-color);background-color:var(--card-background);font-size:1.1rem;font-weight:600;text-align:center;cursor:pointer;transition:all .2s ease-in-out;color:var(--dark-text);display:flex;align-items:center;justify-content:center;min-width:220px}.topic-view .btn-category:hover{border-color:var(--primary-blue);color:var(--primary-blue)}.topic-view .btn-category.active{background-color:var(--primary-blue);color:#fff;border-color:var(--primary-blue);transform:translateY(-2px);box-shadow:0 12px 25px #3b82f640}@media(max-width:640px){.topic-view .btn-category{min-width:100%}}.topic-view .levels-container{border-radius:24px;padding:2.25rem}.topic-view .levels-header{margin-bottom:1.5rem}.topic-view .section-eyebrow{text-transform:uppercase;font-size:.8rem;font-weight:700;color:var(--primary-blue);letter-spacing:.08em;margin:0}.topic-view .selected-category-title{margin:.25rem 0;font-size:2.5rem;font-weight:800;color:var(--header-blue)}.topic-view .levels-list{display:flex;flex-direction:column}.topic-view .level-card{display:flex;justify-content:space-between;gap:1.5rem;padding:1.25rem 0;border-bottom:1px solid var(--border-color)}.topic-view .level-card:last-child{border-bottom:none}.topic-view .level-info{flex:1;min-width:0}.topic-view .title-wrapper{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}.topic-view .level-number{font-size:.85rem;font-weight:700;color:var(--primary-blue);letter-spacing:.05em}.topic-view .level-title{margin:0;font-size:1.35rem}.topic-view .notes-list{margin:.75rem 0 0;padding-left:1.25rem;color:var(--muted-text)}.topic-view .level-links{margin-top:.75rem;display:flex;flex-wrap:wrap;gap:.5rem}.topic-view .link-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .9rem;border-radius:999px;background:#3b82f61f;color:var(--primary-blue);text-decoration:none;font-weight:600;font-size:.9rem}.topic-view .coming-soon-label{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:999px;background:#0f172a14;color:var(--muted-text);font-weight:700}.topic-view .level-actions{display:flex;flex-direction:column;gap:.6rem;align-items:stretch;min-width:140px}.topic-view .btn{display:inline-flex;align-items:center;justify-content:center;padding:.65rem 1.5rem;border-radius:10px;border:none;font-weight:600;color:#fff;cursor:pointer;opacity:.9;text-decoration:none}.topic-view .btn-theory{background-color:var(--success-color)}.topic-view .btn-exercise{background-color:var(--primary-blue)}.topic-view .btn:disabled{cursor:not-allowed}.topic-view .sublevel-stack{margin-top:1.25rem;padding-top:1.25rem;border-top:1px dashed rgba(15,23,42,.2);display:flex;flex-direction:column;gap:1rem}.topic-view .sublevel-card{display:flex;justify-content:space-between;background:#f1f5f999;border-radius:12px;padding:1rem 1.25rem;gap:1rem;flex-wrap:wrap}.topic-view .sublevel-label{font-weight:600;color:var(--primary-blue)}.topic-view .sublevel-actions{display:flex;gap:.5rem}.topic-view .empty-state{text-align:center;padding:2rem 0;color:var(--muted-text)}@media(max-width:768px){.topic-view .level-card{flex-direction:column;padding:1.5rem 0}.topic-view .level-actions{flex-direction:row;justify-content:center;min-width:auto}}.pronoun-exercise-selection{max-width:960px;margin:0 auto;padding:2rem 1rem 3rem}.pronoun-exercise-selection .back-link{display:inline-flex;align-items:center;margin-bottom:1.5rem;color:var(--muted-text);font-weight:600}.pronoun-exercise-selection .selection-title{font-size:clamp(2rem,4vw,2.8rem);margin:0 auto .75rem;text-align:center;background:#fff;border-radius:20px;padding:1rem 2rem;box-shadow:0 18px 40px #0f172a1a;color:var(--header-blue)}.pronoun-exercise-selection .selection-subtitle{text-align:center;color:var(--muted-text);margin-bottom:2rem}.pronoun-exercise-selection .exercise-cards-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.pronoun-exercise-selection .exercise-card{display:block;text-decoration:none;padding:1.75rem;border-radius:16px;border:1px solid var(--border-color);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;color:inherit;background:#fff}.pronoun-exercise-selection .exercise-card:hover{transform:translateY(-6px);border-color:var(--primary-blue);box-shadow:0 12px 25px #0f172a1f}.pronoun-exercise-selection .exercise-icon{font-size:2.5rem;margin-bottom:.75rem}.pronoun-exercise-selection .exercise-card-title{margin:.25rem 0 .35rem;font-size:1.35rem}.pronoun-exercise-selection .exercise-card-description{margin:0;color:var(--muted-text)}.pronoun-exercise-selection .card-placeholder{padding:2rem;text-align:center;border:1px dashed var(--border-color);border-radius:12px;margin-top:2rem;background:#0f172a05}.pronoun-exercise-view{max-width:960px;margin:0 auto;padding:2rem 1rem 3rem}.pronoun-exercise-view .exercise-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.pronoun-exercise-view .exercise-header .back-link{font-weight:600;color:var(--muted-text)}.pronoun-exercise-view .exercise-header .back-link:hover{color:var(--primary-blue)}.pronoun-exercise-view .right-header-controls{display:flex;align-items:center;gap:1.25rem}.pronoun-exercise-view .btn-theory-toggle{border-radius:12px;border:1px solid var(--border-color);padding:.65rem 1.25rem;font-weight:600}.pronoun-exercise-view .exercise-title{text-align:center;margin-bottom:2.5rem;font-size:clamp(2.1rem,4vw,2.8rem);color:var(--header-blue);background:#fff;border-radius:20px;padding:1rem 2rem;box-shadow:0 18px 40px #0f172a1a}.pronoun-exercise-view .card-placeholder{padding:2rem;text-align:center;border:1px dashed var(--border-color);border-radius:12px;margin-top:2rem}.pronoun-exercise-view .next-action-bar{margin-top:2rem;text-align:center}.pronoun-exercise-view .btn-primary{padding:1rem 3rem;font-size:1.2rem;border-radius:12px}.pronoun-exercise-view .feedback-container-global{border-radius:16px;box-shadow:0 20px 45px #0f172a14}.pronoun-exercise-view .theory-container{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-color)}.pronoun-theory-view{max-width:960px;margin:0 auto;padding:2rem 1rem 3rem}.pronoun-theory-view .hero{text-align:center;margin-bottom:2rem;padding:clamp(1.5rem,4vw,2.5rem);border-radius:24px;box-shadow:0 20px 45px #0f172a14}.pronoun-theory-view .btn-back{border-radius:12px;border:1px solid var(--border-color);padding:.65rem 1.25rem;font-weight:600}.pronoun-theory-view .theory-card{border-radius:24px;padding:2.25rem;box-shadow:0 20px 45px #0f172a14}
