.ml-loader[data-v-3d604090]{--loader-size: 64px;--loader-dot-size: calc(var(--loader-size) * .09);--loader-dot-gap: calc(var(--loader-size) * .075);--loader-duration: 2.8s;--loader-ease: cubic-bezier(.76, 0, .24, 1);--loader-color-base: #f97316;--loader-color-overlay: #000000;--loader-color-dot: #f97316;position:relative;width:var(--loader-size);height:var(--loader-size);overflow:hidden;flex-shrink:0}.ml-loader__base[data-v-3d604090]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--loader-color-base)}.ml-loader__overlay[data-v-3d604090]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--loader-color-overlay);transform-origin:left center;will-change:transform;animation:ml-rotate-3d604090 var(--loader-duration) var(--loader-ease) infinite}.ml-loader__dots[data-v-3d604090]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:center;justify-content:center;gap:var(--loader-dot-gap);pointer-events:none}.ml-loader__dot[data-v-3d604090]{display:block;width:var(--loader-dot-size);height:var(--loader-dot-size);border-radius:50%;background:var(--loader-color-dot);will-change:transform,opacity;opacity:0;animation:ml-dot-bounce-3d604090 .72s ease-in-out infinite,ml-dot-appear-3d604090 var(--loader-duration) ease-in-out infinite}@keyframes ml-rotate-3d604090{0%,10%{transform:perspective(calc(var(--loader-size) * 3)) rotateY(-90deg)}42%,58%{transform:perspective(calc(var(--loader-size) * 3)) rotateY(0)}90%,to{transform:perspective(calc(var(--loader-size) * 3)) rotateY(90deg)}}@keyframes ml-dot-appear-3d604090{0%,38%{opacity:0}46%,54%{opacity:1}62%,to{opacity:0}}@keyframes ml-dot-bounce-3d604090{0%,55%,to{transform:translateY(0)}27%{transform:translateY(calc(var(--loader-size) * -.13))}}.loading-overlay[data-v-7122c278]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#000000b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loading-overlay-enter-active[data-v-7122c278],.loading-overlay-leave-active[data-v-7122c278]{transition:opacity .2s ease}.loading-overlay-enter-from[data-v-7122c278],.loading-overlay-leave-to[data-v-7122c278]{opacity:0}#app-container{position:relative}.sidebar[data-v-6633b4ae]{width:260px;min-height:100vh;background:#fffdf7eb;border-right:1px solid rgba(226,232,240,.6);display:flex;flex-direction:column;flex-shrink:0;transition:width .25s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:relative;z-index:10}.sidebar--collapsed[data-v-6633b4ae]{width:72px}.sidebar-header[data-v-6633b4ae]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1rem;border-bottom:1px solid rgba(226,232,240,.5);min-height:64px;box-sizing:border-box}.sidebar--collapsed .sidebar-header[data-v-6633b4ae]{justify-content:center}.sidebar-logo[data-v-6633b4ae]{display:flex;align-items:center;gap:.5rem}.sidebar-logo-img[data-v-6633b4ae]{height:20px;width:auto}.logo-text[data-v-6633b4ae]{font-size:1.25rem;font-weight:800;background:linear-gradient(135deg,#7c3aed,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px;font-family:Inter,sans-serif}.collapse-btn[data-v-6633b4ae]{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:transparent;border:1px solid #e2e8f0;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none;flex-shrink:0;transition:background .15s,color .15s}.collapse-btn[data-v-6633b4ae]:hover{background:#f1f5f9;color:#0f172a}.collapse-btn[data-v-6633b4ae]:active{transform:scale(.9)}.sidebar-search[data-v-6633b4ae]{margin:.875rem .75rem 0;display:flex;flex-direction:column;gap:.35rem}.search-label[data-v-6633b4ae]{font-size:.6875rem;font-weight:600;color:#94a3b8;letter-spacing:.06em;text-transform:uppercase;padding-left:.25rem;font-family:Inter,sans-serif}.search-input-wrap[data-v-6633b4ae]{position:relative;display:flex;align-items:center}.sidebar-search .search-icon[data-v-6633b4ae]{position:absolute;left:.625rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none;flex-shrink:0}.sidebar-search input[data-v-6633b4ae]{width:100%;padding:.45rem .75rem .45rem 2rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.8125rem;color:#0f172a;background:#fffc;font-family:Inter,sans-serif;transition:border-color .15s,box-shadow .15s}.sidebar-search input[data-v-6633b4ae]:focus{outline:none;border-color:#a5b4fc;box-shadow:0 0 0 3px #7c3aed1a}.sidebar-search input[data-v-6633b4ae]::placeholder{color:#94a3b8}.sidebar-nav[data-v-6633b4ae]{flex:1;padding:.75rem;display:flex;flex-direction:column;gap:.25rem}.sidebar-footer[data-v-6633b4ae]{padding:.75rem;border-top:1px solid rgba(226,232,240,.5)}.nav-item[data-v-6633b4ae]{display:flex;align-items:center;gap:.75rem;width:100%;padding:.625rem .875rem;border-radius:10px;background:transparent;border:none;color:#64748b;font-size:.925rem;font-weight:500;font-family:Inter,sans-serif;cursor:pointer;text-align:left;margin:0;box-shadow:none;position:relative;overflow:hidden;transition:background .2s cubic-bezier(.34,1.56,.64,1),color .15s ease,transform .2s cubic-bezier(.34,1.56,.64,1)}.nav-item[data-v-6633b4ae]:hover{background:#7c3aed0f;color:#7c3aed;transform:translate(4px)}.nav-item[data-v-6633b4ae]:active{transform:translate(2px) scale(.97)}.nav-item--active[data-v-6633b4ae]{background:linear-gradient(135deg,#7c3aed1f,#f59e0b14);color:#7c3aed;font-weight:600;transform:none}.nav-item--active[data-v-6633b4ae]:hover{background:linear-gradient(135deg,#7c3aed29,#f59e0b1a);transform:none}.nav-item--active[data-v-6633b4ae]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.55) 50%,transparent 100%);transform:translate(-100%);animation:shimmer-nav-6633b4ae 3.5s ease infinite;pointer-events:none}@keyframes shimmer-nav-6633b4ae{0%{transform:translate(-100%)}55%{transform:translate(100%)}to{transform:translate(100%)}}.nav-indicator[data-v-6633b4ae]{margin-left:auto;width:6px;height:6px;border-radius:50%;background:#7c3aed;flex-shrink:0}.sidebar--collapsed .nav-item[data-v-6633b4ae]{justify-content:center;padding:.75rem}.nav-label[data-v-6633b4ae]{white-space:nowrap;overflow:hidden;flex:1}.page-header[data-v-d3fa9e79]{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1.75rem}.header-left[data-v-d3fa9e79]{display:flex;flex-direction:column;gap:.2rem}.section-title[data-v-d3fa9e79]{margin:0;font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,var(--section-color, #7c3aed),var(--section-color-2, #ec4899));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.4px;font-family:Inter,sans-serif}.period-label[data-v-d3fa9e79]{font-size:.8125rem;color:#94a3b8;font-family:Inter,sans-serif}.period-tabs[data-v-d3fa9e79]{display:flex;gap:.25rem;background:#f1f5f9;border-radius:8px;padding:.2rem}.period-btn[data-v-d3fa9e79]{padding:.3rem .75rem;border-radius:6px;border:none;background:transparent;font-size:.8125rem;font-weight:500;color:#64748b;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,color .15s}.period-btn.active[data-v-d3fa9e79]{background:#fff;color:#0f172a;box-shadow:0 1px 3px #00000014}.period-btn[data-v-d3fa9e79]:hover:not(.active){color:#374151}.summary-cards[data-v-d3fa9e79]{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem;margin-bottom:1.25rem}.summary-card[data-v-d3fa9e79]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.25rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.4rem;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s}.summary-card[data-v-d3fa9e79]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000012}.summary-card.card-action[data-v-d3fa9e79]:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0000001f}.card-stripe[data-v-d3fa9e79]{position:absolute;top:0;left:0;right:0;height:3px;border-radius:14px 14px 0 0}.card-students .card-stripe[data-v-d3fa9e79]{background:linear-gradient(90deg,#059669,#10b981)}.card-courses .card-stripe[data-v-d3fa9e79]{background:linear-gradient(90deg,#7c3aed,#8b5cf6)}.card-active .card-stripe[data-v-d3fa9e79]{background:linear-gradient(90deg,#d97706,#f59e0b)}.card-homework .card-stripe[data-v-d3fa9e79]{background:linear-gradient(90deg,#2563eb,#3b82f6)}.card-icon[data-v-d3fa9e79]{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;margin-top:.15rem}.card-students .card-icon[data-v-d3fa9e79]{background:#d1fae5;color:#059669}.card-courses .card-icon[data-v-d3fa9e79]{background:#ede9fe;color:#7c3aed}.card-active .card-icon[data-v-d3fa9e79]{background:#fef3c7;color:#d97706}.card-homework .card-icon[data-v-d3fa9e79]{background:#dbeafe;color:#2563eb}.card-body[data-v-d3fa9e79]{display:flex;flex-direction:column}.card-value[data-v-d3fa9e79]{font-size:2rem;font-weight:800;color:#0f172a;font-family:Inter,sans-serif;line-height:1}.card-label[data-v-d3fa9e79]{font-size:.8125rem;color:#64748b;font-family:Inter,sans-serif;margin-top:.15rem}.card-foot[data-v-d3fa9e79]{margin-top:auto}.card-trend[data-v-d3fa9e79]{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:600;font-family:Inter,sans-serif;padding:.15rem .4rem;border-radius:99px}.trend-up[data-v-d3fa9e79]{background:#d1fae5;color:#059669}.trend-down[data-v-d3fa9e79]{background:#fee2e2;color:#dc2626}.trend-warn[data-v-d3fa9e79]{background:#fef3c7;color:#d97706}.trend-neutral[data-v-d3fa9e79]{background:#f1f5f9;color:#64748b}.trend-action[data-v-d3fa9e79]{background:#dbeafe;color:#2563eb}.overview-card[data-v-d3fa9e79]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;margin-bottom:1.25rem}.card-title-row[data-v-d3fa9e79]{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.card-title[data-v-d3fa9e79]{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:700;color:#0f172a;margin:0;font-family:Inter,sans-serif}.warn-title[data-v-d3fa9e79]{color:#92400e}.card-title-hint[data-v-d3fa9e79]{font-size:.75rem;font-weight:400;color:#94a3b8;margin-left:.25rem}.sort-btns[data-v-d3fa9e79]{display:flex;gap:.25rem}.sort-btn[data-v-d3fa9e79]{padding:.2rem .6rem;border-radius:6px;border:1px solid #e2e8f0;font-size:.75rem;font-weight:500;color:#64748b;cursor:pointer;background:#fff;font-family:Inter,sans-serif;transition:all .15s}.sort-btn.active[data-v-d3fa9e79]{border-color:var(--section-color, #7c3aed);color:var(--section-color, #7c3aed);background:#faf5ff}.sort-btn[data-v-d3fa9e79]:hover:not(.active){background:#f8fafc}.progress-table[data-v-d3fa9e79]{display:flex;flex-direction:column;gap:0}.table-header[data-v-d3fa9e79]{display:grid;grid-template-columns:2fr 1fr 2fr 1.5fr;gap:.75rem;padding:0 .5rem .5rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-family:Inter,sans-serif;border-bottom:1px solid #f1f5f9}.table-row[data-v-d3fa9e79]{display:grid;grid-template-columns:2fr 1fr 2fr 1.5fr;gap:.75rem;padding:.625rem .5rem;align-items:center;border-bottom:1px solid #f8fafc;transition:background .15s;cursor:pointer}.table-row[data-v-d3fa9e79]:hover{background:#f8fafc;border-radius:8px}.table-row[data-v-d3fa9e79]:last-child{border-bottom:none}.table-student[data-v-d3fa9e79]{display:flex;align-items:center;gap:.625rem;min-width:0}.student-name[data-v-d3fa9e79]{font-size:.875rem;font-weight:500;color:#0f172a;font-family:Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inactive-dot[data-v-d3fa9e79]{width:6px;height:6px;border-radius:50%;background:#f59e0b;flex-shrink:0;margin-left:.25rem}.table-courses[data-v-d3fa9e79]{font-size:.875rem;font-weight:600;color:#64748b;font-family:Inter,sans-serif}.table-progress[data-v-d3fa9e79]{display:flex;align-items:center;gap:.5rem}.mini-bar-bg[data-v-d3fa9e79]{flex:1;height:6px;background:#e2e8f0;border-radius:99px;overflow:hidden}.mini-bar-fill[data-v-d3fa9e79]{height:100%;background:linear-gradient(90deg,var(--section-color, #7c3aed),var(--section-color-2, #ec4899));border-radius:99px;transition:width .4s ease}.mini-pct[data-v-d3fa9e79]{font-size:.75rem;font-weight:700;color:#374151;font-family:Inter,sans-serif;flex-shrink:0}.table-access[data-v-d3fa9e79]{font-size:.8125rem;color:#94a3b8;font-family:Inter,sans-serif}.secondary-grid[data-v-d3fa9e79]{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem}@media (max-width: 860px){.secondary-grid[data-v-d3fa9e79]{grid-template-columns:1fr}}.enrollment-list[data-v-d3fa9e79]{display:flex;flex-direction:column;gap:.75rem}.enrollment-row[data-v-d3fa9e79]{display:flex;flex-direction:column;gap:.3rem}.enrollment-info[data-v-d3fa9e79]{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.enrollment-title[data-v-d3fa9e79]{font-size:.875rem;font-weight:500;color:#0f172a;font-family:Inter,sans-serif;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.enrollment-status[data-v-d3fa9e79]{font-size:.7rem;font-weight:600;padding:.1rem .45rem;border-radius:99px;flex-shrink:0;font-family:Inter,sans-serif}.status-pub[data-v-d3fa9e79]{background:#d1fae5;color:#059669}.status-draft[data-v-d3fa9e79]{background:#f1f5f9;color:#64748b}.enrollment-bar-wrap[data-v-d3fa9e79]{display:flex;align-items:center;gap:.5rem}.enrollment-bar-bg[data-v-d3fa9e79]{flex:1;height:8px;background:#e2e8f0;border-radius:99px;overflow:hidden}.enrollment-bar-fill[data-v-d3fa9e79]{height:100%;background:linear-gradient(90deg,var(--section-color, #7c3aed),var(--section-color-2, #ec4899));border-radius:99px;transition:width .5s ease}.enrollment-count[data-v-d3fa9e79]{font-size:.8125rem;font-weight:700;color:#374151;font-family:Inter,sans-serif;min-width:20px;text-align:right}.inactive-list[data-v-d3fa9e79]{display:flex;flex-direction:column;gap:.625rem}.inactive-row[data-v-d3fa9e79]{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;transition:background .15s}.inactive-row[data-v-d3fa9e79]:hover{background:#fef3c7}.inactive-info[data-v-d3fa9e79]{display:flex;flex-direction:column;gap:.1rem;flex:1;min-width:0}.inactive-date[data-v-d3fa9e79]{font-size:.75rem;color:#92400e;font-family:Inter,sans-serif}.inactive-badge[data-v-d3fa9e79]{font-size:.75rem;font-weight:700;color:#d97706;background:#fef3c7;padding:.2rem .5rem;border-radius:99px;font-family:Inter,sans-serif;flex-shrink:0}.empty-inactive[data-v-d3fa9e79]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;text-align:center;color:#6ee7b7}.empty-inactive p[data-v-d3fa9e79]{margin:0;font-size:.875rem;color:#059669;font-family:Inter,sans-serif}.activity-card[data-v-d3fa9e79]{margin-bottom:0}.activity-list[data-v-d3fa9e79]{display:flex;flex-direction:column;gap:0}.activity-item[data-v-d3fa9e79]{display:flex;align-items:center;gap:.75rem;padding:.5rem .25rem;border-bottom:1px solid #f8fafc}.activity-item[data-v-d3fa9e79]:last-child{border-bottom:none}.activity-dot[data-v-d3fa9e79]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-homework_submitted[data-v-d3fa9e79]{background:#2563eb}.dot-lesson_completed[data-v-d3fa9e79]{background:#059669}.dot-course_enrolled[data-v-d3fa9e79]{background:#7c3aed}.activity-body[data-v-d3fa9e79]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.05rem}.activity-student[data-v-d3fa9e79]{font-size:.8125rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-label[data-v-d3fa9e79]{font-size:.75rem;color:#64748b;font-family:Inter,sans-serif}.activity-time[data-v-d3fa9e79]{font-size:.75rem;color:#94a3b8;font-family:Inter,sans-serif;flex-shrink:0}.mini-avatar[data-v-d3fa9e79]{width:30px;height:30px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:700;font-family:Inter,sans-serif;flex-shrink:0}.overview-loading[data-v-d3fa9e79]{display:flex;flex-direction:column;gap:1.25rem}.skeleton-cards[data-v-d3fa9e79]{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.skeleton[data-v-d3fa9e79]{background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9);background-size:200% 100%;animation:skeleton-shimmer-d3fa9e79 1.4s ease-in-out infinite;border-radius:12px}.skeleton-card[data-v-d3fa9e79]{height:110px}.skeleton-block[data-v-d3fa9e79]{height:220px}.short-block[data-v-d3fa9e79]{height:160px}@keyframes skeleton-shimmer-d3fa9e79{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-small[data-v-d3fa9e79]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;text-align:center;color:#cbd5e1}.empty-small p[data-v-d3fa9e79]{margin:0;font-size:.875rem;color:#94a3b8;font-family:Inter,sans-serif}.error-state[data-v-d3fa9e79]{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:4rem;text-align:center;color:#f59e0b}.error-state p[data-v-d3fa9e79]{margin:0;font-size:.875rem;color:#64748b;font-family:Inter,sans-serif}.btn-retry[data-v-d3fa9e79]{padding:.5rem 1.25rem;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#374151;font-size:.875rem;cursor:pointer;font-family:Inter,sans-serif}.onboarding-shell[data-v-d3fa9e79]{display:flex;justify-content:center;padding:3rem 1rem}.onboarding-card[data-v-d3fa9e79]{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:2.5rem;text-align:center;max-width:420px;width:100%;box-shadow:0 4px 24px #0000000f}.onboarding-icon[data-v-d3fa9e79]{font-size:3rem;margin-bottom:.75rem}.onboarding-card h2[data-v-d3fa9e79]{margin:0 0 .5rem;font-size:1.25rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif}.onboarding-card p[data-v-d3fa9e79]{margin:0 0 1.5rem;color:#64748b;font-size:.875rem;font-family:Inter,sans-serif}.onboarding-list[data-v-d3fa9e79]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem;text-align:left}.onboarding-item[data-v-d3fa9e79]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;font-size:.875rem;color:#374151;font-family:Inter,sans-serif}.onboarding-item.done[data-v-d3fa9e79]{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.check-icon[data-v-d3fa9e79]{font-size:1rem;width:20px;flex-shrink:0}.modal-overlay[data-v-d3fa9e79]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.quick-modal[data-v-d3fa9e79]{background:#fff;border-radius:18px;box-shadow:0 20px 60px #0003;width:100%;max-width:440px;overflow:hidden;font-family:Inter,sans-serif;display:flex;flex-direction:column}.quick-header[data-v-d3fa9e79]{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid #f1f5f9}.quick-avatar[data-v-d3fa9e79]{width:44px;height:44px;border-radius:50%;color:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700}.quick-info[data-v-d3fa9e79]{flex:1;min-width:0}.quick-info h3[data-v-d3fa9e79]{margin:0;font-size:1rem;font-weight:700;color:#0f172a}.quick-sub[data-v-d3fa9e79]{font-size:.8125rem;color:#64748b}.btn-close[data-v-d3fa9e79]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:#64748b;cursor:pointer;padding:0;flex-shrink:0;transition:background .15s}.btn-close[data-v-d3fa9e79]:hover{background:#f1f5f9;color:#0f172a}.quick-loading[data-v-d3fa9e79]{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}.skeleton-line[data-v-d3fa9e79]{height:16px;border-radius:6px}.skeleton-line.short[data-v-d3fa9e79]{width:60%}.quick-courses[data-v-d3fa9e79]{padding:1rem 1.5rem;display:flex;flex-direction:column;gap:1rem;max-height:320px;overflow-y:auto}.qc-row[data-v-d3fa9e79]{display:flex;flex-direction:column;gap:.35rem}.qc-top[data-v-d3fa9e79]{display:flex;align-items:center;justify-content:space-between}.qc-title[data-v-d3fa9e79]{font-size:.875rem;font-weight:600;color:#0f172a}.qc-pct[data-v-d3fa9e79]{font-size:.8125rem;font-weight:700;color:#374151}.qc-bar-bg[data-v-d3fa9e79]{height:6px;background:#e2e8f0;border-radius:99px;overflow:hidden}.qc-bar-fill[data-v-d3fa9e79]{height:100%;background:linear-gradient(90deg,var(--section-color, #7c3aed),var(--section-color-2, #ec4899));border-radius:99px;transition:width .4s ease}.qc-meta[data-v-d3fa9e79]{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.qc-badge[data-v-d3fa9e79]{font-size:.7rem;font-weight:600;padding:.1rem .45rem;border-radius:99px}.badge-done[data-v-d3fa9e79]{background:#d1fae5;color:#059669}.badge-progress[data-v-d3fa9e79]{background:#ede9fe;color:#7c3aed}.qc-access[data-v-d3fa9e79]{font-size:.75rem;color:#94a3b8}.quick-empty[data-v-d3fa9e79]{font-size:.875rem;color:#94a3b8;text-align:center;padding:1rem 0}.quick-footer[data-v-d3fa9e79]{padding:1rem 1.5rem;border-top:1px solid #f1f5f9;display:flex;justify-content:flex-end}.btn-full-profile[data-v-d3fa9e79]{display:flex;align-items:center;gap:.4rem;padding:.5rem 1.1rem;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-full-profile[data-v-d3fa9e79]:hover{background:#f8fafc}.modal-fade-enter-active[data-v-d3fa9e79],.modal-fade-leave-active[data-v-d3fa9e79]{transition:opacity .2s ease}.modal-fade-enter-from[data-v-d3fa9e79],.modal-fade-leave-to[data-v-d3fa9e79]{opacity:0}.skeleton-grid[data-v-73057eca]{display:grid;gap:1.5rem}.skeleton-grid--course[data-v-73057eca]{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.skeleton-grid--student[data-v-73057eca]{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.skeleton-grid--resource[data-v-73057eca]{grid-template-columns:repeat(3,1fr)}.skeleton-card[data-v-73057eca]{background:#fff;border:1px solid #f1f5f9;border-radius:12px;overflow:hidden;padding:1.5rem;display:flex;flex-direction:column;gap:.875rem}.skeleton-grid--student .skeleton-card[data-v-73057eca]{align-items:center;border-radius:16px;padding:1.75rem 1.5rem}.skeleton-grid--resource .skeleton-card[data-v-73057eca]{padding:0}.sk[data-v-73057eca]{border-radius:8px;background:linear-gradient(90deg,var(--section-light, #f1f5f9) 0%,rgba(255,255,255,.85) 50%,var(--section-light, #f1f5f9) 100%);background-size:200% 100%;animation:sk-shimmer-73057eca 1.6s ease-in-out infinite}@keyframes sk-shimmer-73057eca{0%{background-position:200% 0}to{background-position:-200% 0}}.sk-thumb[data-v-73057eca]{height:140px;border-radius:0;margin:0}.sk-avatar[data-v-73057eca]{width:60px;height:60px;border-radius:50%}.sk-title[data-v-73057eca]{height:16px;width:70%}.sk-meta[data-v-73057eca]{height:13px;width:45%;animation-delay:.1s}.sk-footer[data-v-73057eca]{height:32px;border-radius:8px;animation-delay:.2s}.skeleton-grid--resource .sk-title[data-v-73057eca]{margin:0 1rem;width:calc(60% - 2rem)}.skeleton-grid--resource .sk-meta[data-v-73057eca]{margin:0 1rem;width:calc(40% - 2rem)}.skeleton-grid--resource .sk-footer[data-v-73057eca]{margin:0 1rem 1rem}.modal-overlay[data-v-078fa81a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-078fa81a]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:480px;overflow:hidden;font-family:Inter,sans-serif}.modal-header[data-v-078fa81a]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2[data-v-078fa81a]{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0;font-family:Inter,sans-serif}.btn-close[data-v-078fa81a]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:0;margin:0;transition:background .15s}.btn-close[data-v-078fa81a]:hover{background:#f1f5f9;color:#0f172a}.modal-form[data-v-078fa81a]{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.form-field[data-v-078fa81a]{display:flex;flex-direction:column;gap:.375rem}.form-field label[data-v-078fa81a]{font-size:.875rem;font-weight:500;color:#374151;font-family:Inter,sans-serif}.required[data-v-078fa81a]{color:#ef4444}.field-hint[data-v-078fa81a]{color:#94a3b8;font-weight:400;font-size:.8rem}.form-field input[data-v-078fa81a],.form-field textarea[data-v-078fa81a]{width:100%;padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.925rem;color:#0f172a;background:#fff;box-sizing:border-box;margin:0;font-family:Inter,sans-serif;transition:border-color .15s,box-shadow .15s;resize:vertical}.form-field input[data-v-078fa81a]:focus,.form-field textarea[data-v-078fa81a]:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526}.form-field input[data-v-078fa81a]::placeholder,.form-field textarea[data-v-078fa81a]::placeholder{color:#94a3b8}.thumbnail-input-row[data-v-078fa81a]{display:flex;gap:.75rem;align-items:center}.thumbnail-input-row input[data-v-078fa81a]{flex:1}.thumbnail-preview[data-v-078fa81a]{width:48px;height:48px;border-radius:8px;flex-shrink:0;background-size:cover;background-position:center;border:1px solid #e2e8f0}.form-error[data-v-078fa81a]{font-size:.875rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.625rem .875rem;font-family:Inter,sans-serif}.modal-actions[data-v-078fa81a]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.25rem}.btn-cancel[data-v-078fa81a]{padding:.575rem 1.25rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.925rem;font-weight:500;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-078fa81a]:hover{background:#f8fafc}.btn-submit[data-v-078fa81a]{padding:.575rem 1.5rem;border-radius:8px;background:#4f46e5;border:none;color:#fff;font-size:.925rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:background .15s}.btn-submit[data-v-078fa81a]:hover{background:#4338ca}.btn-submit[data-v-078fa81a]:disabled{opacity:.6;cursor:not-allowed}.organizer-overlay[data-v-5b766005]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem}.organizer-modal[data-v-5b766005]{background:#fff;box-shadow:0 20px 60px #00000040;width:96vw;max-width:1280px;height:90vh;display:flex;flex-direction:column;overflow:hidden;border-radius:16px}.organizer-header[data-v-5b766005]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0}.organizer-title[data-v-5b766005]{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.95rem;color:#1e293b}.course-name-chip[data-v-5b766005]{background:#e2e8f0;color:#475569;font-size:.78rem;font-weight:500;padding:.2rem .6rem;border-radius:4px}.organizer-header-actions[data-v-5b766005]{display:flex;align-items:center;gap:.5rem}.unsaved-badge[data-v-5b766005]{font-size:.75rem;color:#d97706;font-weight:500;background:#fef3c7;padding:.2rem .6rem;border-radius:4px}.btn-secondary[data-v-5b766005]{padding:.45rem .9rem;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:.83rem;font-weight:500;cursor:pointer;border-radius:6px;transition:background .15s}.btn-secondary[data-v-5b766005]:hover{background:#f1f5f9}.btn-secondary[data-v-5b766005]:disabled{opacity:.5;cursor:not-allowed}.btn-primary[data-v-5b766005]{display:flex;align-items:center;gap:.35rem;padding:.45rem .9rem;border:none;background:#3b82f6;color:#fff;font-size:.83rem;font-weight:500;cursor:pointer;border-radius:6px;transition:background .15s}.btn-primary[data-v-5b766005]:hover:not(:disabled){background:#2563eb}.btn-primary[data-v-5b766005]:disabled{opacity:.5;cursor:not-allowed}.organizer-body[data-v-5b766005]{flex:1;display:flex;overflow:hidden}.library-panel[data-v-5b766005]{width:300px;min-width:260px;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;overflow:hidden;background:#fafafa}.panel-heading[data-v-5b766005]{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;padding:.75rem 1rem .4rem}.type-tabs[data-v-5b766005]{display:flex;flex-wrap:wrap;gap:.25rem;padding:0 .75rem .5rem}.type-tab[data-v-5b766005]{display:flex;align-items:center;gap:.25rem;padding:.25rem .55rem;border:1px solid #e2e8f0;background:#fff;font-size:.72rem;color:#64748b;cursor:pointer;border-radius:4px;transition:all .15s}.type-tab[data-v-5b766005]:hover{background:#f1f5f9}.type-tab.active[data-v-5b766005]{background:#dbeafe;border-color:#93c5fd;color:#1d4ed8;font-weight:600}.library-search[data-v-5b766005]{position:relative;margin:0 .75rem .5rem}.search-icon[data-v-5b766005]{position:absolute;left:.6rem;top:50%;transform:translateY(-50%);color:#94a3b8}.library-search input[data-v-5b766005]{width:100%;box-sizing:border-box;padding:.4rem .6rem .4rem 1.8rem;border:1px solid #e2e8f0;font-size:.8rem;outline:none;background:#fff;border-radius:6px}.library-search input[data-v-5b766005]:focus{border-color:#93c5fd}.library-loading[data-v-5b766005]{padding:1.5rem 1rem;text-align:center;font-size:.82rem;color:#94a3b8}.library-list[data-v-5b766005]{flex:1;overflow-y:auto;padding:.25rem .5rem 1rem}.library-item[data-v-5b766005]{display:flex;align-items:center;gap:.4rem;padding:.45rem .5rem;cursor:grab;-webkit-user-select:none;user-select:none;transition:background .1s;margin-bottom:2px;border-radius:4px}.library-item[data-v-5b766005]:hover{background:#f1f5f9}.library-item[data-v-5b766005]:active{cursor:grabbing}.library-item.is-used[data-v-5b766005]{opacity:.65}.drag-handle[data-v-5b766005]{color:#cbd5e1;flex-shrink:0}.library-item:hover .drag-handle[data-v-5b766005]{color:#94a3b8}.lib-item-title[data-v-5b766005]{flex:1;font-size:.8rem;color:#334155;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.used-in-label[data-v-5b766005]{display:flex;align-items:center;gap:3px;flex-shrink:0;max-width:90px}.used-icon[data-v-5b766005]{color:#22c55e;flex-shrink:0}.used-in-module-name[data-v-5b766005]{font-size:.68rem;color:#22c55e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70px}.library-empty[data-v-5b766005]{text-align:center;color:#94a3b8;font-size:.82rem;padding:2rem 1rem}.lib-type-badge[data-v-5b766005],.org-type-badge[data-v-5b766005]{font-size:.65rem;font-weight:600;padding:.15rem .4rem;flex-shrink:0;text-transform:uppercase;letter-spacing:.02em;border-radius:3px}.type-video[data-v-5b766005]{background:#dbeafe;color:#1d4ed8}.type-exercise[data-v-5b766005]{background:#d1fae5;color:#065f46}.type-text[data-v-5b766005]{background:#f1f5f9;color:#475569}.type-audio[data-v-5b766005]{background:#ede9fe;color:#6d28d9}.type-vocabulary[data-v-5b766005]{background:#fef3c7;color:#92400e}.structure-panel[data-v-5b766005]{flex:1;overflow-y:auto;padding:.75rem 1rem 1.5rem}.structure-empty[data-v-5b766005]{text-align:center;color:#94a3b8;font-size:.85rem;margin-top:3rem}.modules-list[data-v-5b766005]{display:flex;flex-direction:column;gap:.75rem}.org-module[data-v-5b766005]{border:2px solid #e2e8f0;border-radius:8px;overflow:hidden;transition:border-color .15s,background .15s}.org-module.drop-target[data-v-5b766005]{border-color:#6366f1;background:#eef2ff}.org-module.module-reorder-over[data-v-5b766005]{border-color:#f59e0b;background:#fffbeb}.org-module.is-module-dragging[data-v-5b766005]{opacity:.4}.org-module-header[data-v-5b766005]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fff;border-bottom:1px solid #e2e8f0;cursor:grab}.org-module-header[data-v-5b766005]:active{cursor:grabbing}.org-module.drop-target .org-module-header[data-v-5b766005]{background:#e0e7ff}.org-module.module-reorder-over .org-module-header[data-v-5b766005]{background:#fef3c7}.module-drag-handle[data-v-5b766005]{color:#94a3b8;flex-shrink:0;cursor:grab}.module-drag-handle[data-v-5b766005]:active{cursor:grabbing}.org-module-icon[data-v-5b766005]{color:#6366f1}.org-module-title-input[data-v-5b766005]{flex:1;font-size:.85rem;font-weight:600;color:#1e293b!important;background:#fff!important;border:1px solid #e2e8f0!important;padding:.25rem .5rem!important;outline:none;font-family:inherit;min-width:0;margin-bottom:0!important;border-radius:4px;transition:border-color .15s}.org-module-title-input[data-v-5b766005]:hover:not(:disabled){border-color:#a5b4fc!important}.org-module-title-input[data-v-5b766005]:focus{border-color:#6366f1!important}.org-module-title-input[data-v-5b766005]:disabled{opacity:.45;cursor:not-allowed;background:#f8fafc!important}.lesson-count-chip[data-v-5b766005]{font-size:.72rem;color:#64748b;background:#e2e8f0;padding:.15rem .5rem;border-radius:3px}.org-lessons[data-v-5b766005]{padding:.4rem .5rem .5rem}.org-lesson[data-v-5b766005]{display:flex;align-items:center;gap:.4rem;padding:.4rem .5rem;cursor:grab;-webkit-user-select:none;user-select:none;transition:background .1s,opacity .15s;margin-bottom:2px;position:relative;border-radius:4px}.org-lesson[data-v-5b766005]:hover{background:#f8fafc}.org-lesson[data-v-5b766005]:active{cursor:grabbing}.org-lesson.is-dragging[data-v-5b766005]{opacity:.35}.org-lesson.is-deleted[data-v-5b766005]{opacity:.4;text-decoration:line-through}.org-lesson.is-new[data-v-5b766005]{background:#f0fdf4}.org-lesson.drop-before[data-v-5b766005]:before{content:"";position:absolute;top:-2px;left:0;right:0;height:3px;background:#6366f1;border-radius:2px}.org-lesson-title[data-v-5b766005]{flex:1;font-size:.8rem;color:#334155;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-badge[data-v-5b766005]{font-size:.62rem;font-weight:700;background:#dcfce7;color:#15803d;padding:.1rem .35rem;letter-spacing:.03em;flex-shrink:0;border-radius:3px}.btn-delete-module[data-v-5b766005],.btn-delete-lesson[data-v-5b766005]{display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#94a3b8;cursor:pointer;flex-shrink:0;transition:background .1s,color .1s;border-radius:4px}.btn-delete-module[data-v-5b766005]{width:24px;height:24px;margin-left:.25rem}.btn-delete-lesson[data-v-5b766005]{width:22px;height:22px}.btn-delete-module[data-v-5b766005]:hover,.btn-delete-lesson[data-v-5b766005]:hover{background:#fee2e2;color:#ef4444}.module-deleted .btn-delete-module[data-v-5b766005]:hover,.is-deleted .btn-delete-lesson[data-v-5b766005]:hover{background:#d1fae5;color:#059669}.org-module.module-deleted[data-v-5b766005]{border-color:#fca5a5;opacity:.6}.org-module.module-deleted .org-module-header[data-v-5b766005]{background:#fff5f5;text-decoration:line-through;color:#ef4444}.module-drop-zone[data-v-5b766005]{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem;border:2px dashed #e2e8f0;color:#cbd5e1;font-size:.78rem;margin-top:4px;transition:all .15s;border-radius:6px}.module-drop-zone.active[data-v-5b766005]{border-color:#6366f1;background:#eef2ff;color:#6366f1}.org-inline[data-v-5b766005]{display:flex;flex-direction:column;font-family:Inter,sans-serif}.inline-save-bar[data-v-5b766005]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.625rem 1.125rem;border-bottom:1px solid #f1f5f9;background:#fff;position:sticky;top:0;z-index:1}.inline-unsaved[data-v-5b766005]{display:flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:500;color:#d97706;font-family:Inter,sans-serif}.inline-saved-hint[data-v-5b766005]{font-size:.75rem;color:#94a3b8;font-family:Inter,sans-serif}.btn-inline-save[data-v-5b766005]{display:flex;align-items:center;gap:.35rem;padding:.4rem .875rem;background:#7c3aed;color:#fff;border:none;border-radius:7px;font-size:.8rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:opacity .15s;white-space:nowrap}.btn-inline-save[data-v-5b766005]:hover:not(:disabled){opacity:.88}.btn-inline-save[data-v-5b766005]:disabled{opacity:.45;cursor:not-allowed}.inline-expand-bar[data-v-5b766005]{display:flex;gap:.4rem;padding:.3rem .75rem 0}.btn-expand-all[data-v-5b766005]{font-size:.72rem;color:#64748b;background:none;border:none;cursor:pointer;padding:.1rem .3rem;border-radius:3px;transition:color .15s,background .15s}.btn-expand-all[data-v-5b766005]:hover{color:#4f46e5;background:#ede9fe}.inline-empty[data-v-5b766005]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1.5rem;text-align:center}.inline-empty-icon[data-v-5b766005]{color:#c4b5fd}.inline-empty-title[data-v-5b766005]{margin:0;font-size:.9375rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif}.inline-empty-hint[data-v-5b766005]{margin:0;font-size:.8rem;color:#94a3b8;font-family:Inter,sans-serif}.btn-create-first[data-v-5b766005]{display:flex;align-items:center;gap:.35rem;margin-top:.25rem;padding:.5rem 1rem;background:#7c3aed;color:#fff;border:none;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:opacity .15s}.btn-create-first[data-v-5b766005]:hover{opacity:.88}.inline-mods[data-v-5b766005]{display:flex;flex-direction:column;padding:.75rem 1.125rem;gap:.5rem}.inline-mod[data-v-5b766005]{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;transition:border-color .15s}.inline-mod[data-v-5b766005]:hover:not(.mod-deleted){border-color:#c4b5fd}.inline-mod.mod-drop-target[data-v-5b766005]{border-color:#7c3aed;box-shadow:0 0 0 2px #ede9fe}.inline-mod.module-reorder-over[data-v-5b766005]{border-color:#f59e0b;box-shadow:0 0 0 2px #fef3c7}.inline-mod.is-module-dragging[data-v-5b766005]{opacity:.4}.inline-mod.mod-deleted[data-v-5b766005]{opacity:.55;border-color:#fca5a5}.imod-header .module-drag-handle[data-v-5b766005]{color:#94a3b8;flex-shrink:0;margin-right:-.15rem}.imod-header[data-v-5b766005]{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem .5rem .5rem;background:#f8fafc;cursor:pointer;transition:background .15s;-webkit-user-select:none;user-select:none}.imod-header[data-v-5b766005]:hover:not(.imod-header-collapsed){background:#f1f0fe}.imod-header-collapsed[data-v-5b766005]{border-radius:10px}.imod-header[data-v-5b766005]:not(.imod-header-collapsed){border-bottom:1px solid #e2e8f0}.imod-chevron[data-v-5b766005]{color:#94a3b8;flex-shrink:0;transition:transform .2s ease}.imod-chevron.chevron-open[data-v-5b766005]{transform:rotate(90deg);color:#7c3aed}.imod-pkg-icon[data-v-5b766005]{color:#7c3aed;flex-shrink:0}.imod-title-input[data-v-5b766005]{flex:1;min-width:0;background:transparent;border:1px solid transparent;font-size:.875rem;font-weight:600;color:#0f172a;padding:.2rem .375rem;border-radius:5px;font-family:Inter,sans-serif;outline:none;cursor:text;transition:border-color .15s,background .15s}.imod-title-input[data-v-5b766005]:hover:not(:disabled){border-color:#c4b5fd;background:#fff}.imod-title-input[data-v-5b766005]:focus{border-color:#7c3aed;background:#fff}.imod-title-input[data-v-5b766005]:disabled{opacity:.5;cursor:not-allowed}.imod-count[data-v-5b766005]{font-size:.7rem;font-weight:700;color:#7c3aed;background:#ede9fe;padding:.1rem .45rem;border-radius:99px;flex-shrink:0;font-family:Inter,sans-serif}.imod-del-btn[data-v-5b766005]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;flex-shrink:0;background:transparent;border:1px solid transparent;color:#94a3b8;cursor:pointer;margin:0;transition:all .15s}.imod-del-btn[data-v-5b766005]:hover{background:#fef2f2;border-color:#fecaca;color:#ef4444}.mod-deleted .imod-del-btn[data-v-5b766005]:hover{background:#f0fdf4;border-color:#bbf7d0;color:#059669}.imod-lessons[data-v-5b766005]{padding:.375rem .5rem .5rem;display:flex;flex-direction:column;gap:2px}.imod-lesson[data-v-5b766005]{display:flex;align-items:center;gap:.375rem;padding:.375rem .5rem;border-radius:7px;cursor:grab;-webkit-user-select:none;user-select:none;transition:background .1s,opacity .15s;position:relative}.imod-lesson[data-v-5b766005]:hover{background:#f8fafc}.imod-lesson[data-v-5b766005]:active{cursor:grabbing}.imod-lesson.lesson-new[data-v-5b766005]{background:#f0fdf4}.imod-lesson.lesson-deleted[data-v-5b766005]{opacity:.4;text-decoration:line-through}.imod-lesson.lesson-dragging[data-v-5b766005]{opacity:.3}.imod-lesson.lesson-drop-before[data-v-5b766005]:before{content:"";position:absolute;top:-2px;left:0;right:0;height:2px;background:#7c3aed;border-radius:2px}.lesson-grip[data-v-5b766005]{color:#d1d5db;flex-shrink:0;transition:color .1s}.imod-lesson:hover .lesson-grip[data-v-5b766005]{color:#94a3b8}.lesson-type-badge[data-v-5b766005]{font-size:.6rem;font-weight:700;padding:.1rem .35rem;flex-shrink:0;text-transform:uppercase;letter-spacing:.03em;border-radius:3px}.lesson-title-text[data-v-5b766005]{flex:1;min-width:0;font-size:.8125rem;color:#374151;font-family:Inter,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge-new[data-v-5b766005]{font-size:.6rem;font-weight:700;color:#15803d;background:#dcfce7;padding:.1rem .35rem;border-radius:3px;flex-shrink:0;font-family:Inter,sans-serif}.btn-lesson-del[data-v-5b766005]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:5px;flex-shrink:0;background:transparent;border:1px solid transparent;color:#d1d5db;cursor:pointer;margin:0;transition:all .15s}.btn-lesson-del[data-v-5b766005]:hover{background:#fef2f2;border-color:#fecaca;color:#ef4444}.lesson-deleted .btn-lesson-del[data-v-5b766005]:hover{background:#f0fdf4;border-color:#bbf7d0;color:#059669}.imod-drop-zone[data-v-5b766005]{display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.4rem;border:2px dashed #e2e8f0;border-radius:6px;color:#d1d5db;font-size:.75rem;font-family:Inter,sans-serif;margin:2px 0;transition:all .15s}.imod-drop-zone.active[data-v-5b766005]{border-color:#7c3aed;background:#faf5ff;color:#7c3aed}.btn-add-lesson[data-v-5b766005]{display:flex;align-items:center;gap:.3rem;width:100%;padding:.4rem .5rem;margin-top:.25rem;background:transparent;border:1px dashed #c4b5fd;border-radius:7px;color:#7c3aed;font-size:.8rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,border-color .15s}.btn-add-lesson[data-v-5b766005]:hover,.btn-add-lesson.picker-open[data-v-5b766005]{background:#faf5ff;border-color:#7c3aed;border-style:solid}.picker-arrow[data-v-5b766005]{margin-left:auto;color:#a78bfa;flex-shrink:0;transition:transform .2s ease}.picker-arrow-open[data-v-5b766005]{transform:rotate(90deg)}.mini-picker[data-v-5b766005]{margin-top:.375rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;overflow:hidden;box-shadow:0 4px 16px #7c3aed14}.picker-type-row[data-v-5b766005]{display:flex;flex-wrap:wrap;gap:2px;padding:.4rem .5rem;border-bottom:1px solid #f1f5f9;background:#faf5ff}.picker-type-btn[data-v-5b766005]{display:flex;align-items:center;gap:.2rem;padding:.2rem .5rem;background:#fff;border:1px solid #e2e8f0;border-radius:4px;font-size:.7rem;color:#64748b;cursor:pointer;font-family:Inter,sans-serif;transition:all .1s}.picker-type-btn[data-v-5b766005]:hover{background:#f8fafc}.picker-type-btn.active[data-v-5b766005]{background:#ede9fe;border-color:#c4b5fd;color:#7c3aed;font-weight:600}.picker-search-wrap[data-v-5b766005]{display:flex;align-items:center;gap:.375rem;padding:.375rem .5rem;border-bottom:1px solid #f1f5f9;position:relative}.picker-search-icon[data-v-5b766005]{color:#94a3b8;flex-shrink:0}.picker-search-input[data-v-5b766005]{flex:1;border:none;outline:none;background:transparent;font-size:.8rem;color:#0f172a;font-family:Inter,sans-serif}.picker-search-input[data-v-5b766005]::placeholder{color:#94a3b8}.picker-search-clear[data-v-5b766005]{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#94a3b8;cursor:pointer;padding:2px;border-radius:3px;flex-shrink:0}.picker-search-clear[data-v-5b766005]:hover{color:#ef4444}.picker-loading[data-v-5b766005],.picker-empty[data-v-5b766005]{padding:1rem;text-align:center;font-size:.8rem;color:#94a3b8;font-family:Inter,sans-serif}.picker-list[data-v-5b766005]{max-height:200px;overflow-y:auto}.picker-item[data-v-5b766005]{display:flex;align-items:center;gap:.375rem;padding:.45rem .625rem;cursor:pointer;transition:background .1s;border-bottom:1px solid #f8fafc}.picker-item[data-v-5b766005]:last-child{border-bottom:none}.picker-item[data-v-5b766005]:hover{background:#faf5ff}.picker-item.picker-item-used[data-v-5b766005]{opacity:.6}.picker-type-badge[data-v-5b766005]{font-size:.6rem;font-weight:700;padding:.1rem .35rem;border-radius:3px;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.picker-item-title[data-v-5b766005]{flex:1;font-size:.8rem;color:#374151;font-family:Inter,sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-add-icon[data-v-5b766005]{color:#94a3b8;flex-shrink:0;transition:color .1s}.picker-used-icon[data-v-5b766005]{color:#22c55e;flex-shrink:0}.picker-item:hover .picker-add-icon[data-v-5b766005]{color:#7c3aed}.btn-new-mod[data-v-5b766005]{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;margin-top:.25rem;background:#fff;border:1px dashed #e2e8f0;border-radius:10px;color:#64748b;font-size:.8rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:all .15s;justify-content:center}.btn-new-mod[data-v-5b766005]:hover{background:#faf5ff;border-color:#c4b5fd;color:#7c3aed}.courses-workspace[data-v-05912b2f]{display:flex;gap:1.5rem;align-items:flex-start;min-height:100%}.courses-pane[data-v-05912b2f]{flex:1;min-width:0}.page-header[data-v-05912b2f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;gap:1rem;flex-wrap:wrap}.header-left[data-v-05912b2f]{display:flex;align-items:center;gap:.75rem}.section-title[data-v-05912b2f]{margin:0;font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,var(--section-color, #7c3aed),var(--section-color-2, #ec4899));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.4px;font-family:Inter,sans-serif}.total-badge[data-v-05912b2f]{background:#f1f5f9;color:#64748b;font-size:.8rem;font-weight:700;padding:.15rem .6rem;border-radius:99px;font-family:Inter,sans-serif}.header-right[data-v-05912b2f]{display:flex;align-items:center;gap:.5rem}.btn-primary[data-v-05912b2f]{display:inline-flex;align-items:center;gap:.375rem;padding:.55rem 1.125rem;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:background .15s;white-space:nowrap}.btn-primary[data-v-05912b2f]:hover{background:#4338ca}.btn-primary[data-v-05912b2f]:active{transform:scale(.95)}.btn-secondary[data-v-05912b2f]{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#fff;color:#64748b;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:all .15s}.btn-secondary[data-v-05912b2f]:hover{background:#f8fafc}.search-bar[data-v-05912b2f]{display:flex;gap:.5rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.search-input-wrap[data-v-05912b2f]{position:relative;flex:1;min-width:180px}.search-icon[data-v-05912b2f]{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.search-input[data-v-05912b2f]{width:100%;padding:.5rem 2rem .5rem 2.25rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-family:Inter,sans-serif;color:#0f172a;background:#fff;box-sizing:border-box;margin:0;transition:border-color .15s}.search-input[data-v-05912b2f]:focus{outline:none;border-color:#7c3aed}.search-clear[data-v-05912b2f]{position:absolute;right:.55rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#94a3b8;cursor:pointer;padding:.2rem;border-radius:4px;display:flex;align-items:center}.search-clear[data-v-05912b2f]:hover{color:#ef4444}.status-filter-group[data-v-05912b2f]{display:flex}.status-filter-btn[data-v-05912b2f]{padding:.45rem .75rem;background:#fff;color:#64748b;border:1px solid #e2e8f0;font-size:.8rem;font-weight:500;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:all .15s}.status-filter-btn[data-v-05912b2f]:first-child{border-radius:8px 0 0 8px}.status-filter-btn[data-v-05912b2f]:last-child{border-radius:0 8px 8px 0;margin-left:-1px}.status-filter-btn[data-v-05912b2f]:not(:first-child):not(:last-child){margin-left:-1px}.status-filter-btn[data-v-05912b2f]:hover{background:#f8fafc;color:#0f172a;z-index:1}.status-filter-btn.active[data-v-05912b2f]{background:#ede9fe;color:#7c3aed;border-color:#c4b5fd;z-index:1;font-weight:600}.filter-select[data-v-05912b2f]{padding:.48rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.8125rem;font-family:Inter,sans-serif;color:#0f172a;background:#fff;cursor:pointer;margin:0}.filter-select[data-v-05912b2f]:focus{outline:none;border-color:#7c3aed}.courses-grid[data-v-05912b2f]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.has-panel .courses-grid[data-v-05912b2f]{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.course-card[data-v-05912b2f]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000000f;overflow:hidden;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .25s cubic-bezier(.34,1.56,.64,1);display:flex;flex-direction:column}.course-card[data-v-05912b2f]:hover{border-color:#c4b5fd;box-shadow:0 8px 24px color-mix(in srgb,#7c3aed 15%,transparent);transform:translateY(-4px)}.course-card.active[data-v-05912b2f]{border-color:#7c3aed;box-shadow:0 0 0 2px #ddd6fe}.card-thumb[data-v-05912b2f]{height:90px;position:relative;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center}.card-thumb-overlay[data-v-05912b2f]{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000040}.card-initial[data-v-05912b2f]{position:relative;z-index:1;font-size:2rem;font-weight:900;color:#ffffffbf;font-family:Inter,sans-serif;letter-spacing:-2px}.card-status-row[data-v-05912b2f]{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem 0}.status-pill[data-v-05912b2f]{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:99px;font-size:.7rem;font-weight:600;border:none;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:filter .15s,transform .15s}.status-pill[data-v-05912b2f]:hover{filter:brightness(.93);transform:scale(1.04)}.pill-dot[data-v-05912b2f]{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7}.pill-published[data-v-05912b2f]{background:#d1fae5;color:#065f46}.pill-draft[data-v-05912b2f]{background:#f1f5f9;color:#475569}.btn-card-menu[data-v-05912b2f]{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;background:transparent;border:1px solid transparent;color:#94a3b8;cursor:pointer;padding:0;margin:0 0 0 auto;transition:all .15s}.btn-card-menu[data-v-05912b2f]:hover{background:#f1f5f9;border-color:#e2e8f0;color:#374151}.btn-card-danger[data-v-05912b2f]:hover{background:#fef2f2;border-color:#fecaca;color:#ef4444}.card-body[data-v-05912b2f]{padding:.625rem .875rem .875rem;display:flex;flex-direction:column;gap:.4rem}.card-title[data-v-05912b2f]{margin:0;font-size:.9375rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-desc[data-v-05912b2f]{margin:0;font-size:.775rem;color:#64748b;font-family:Inter,sans-serif;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-stats[data-v-05912b2f]{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:#64748b;font-family:Inter,sans-serif}.stat-item[data-v-05912b2f]{display:flex;align-items:center;gap:.2rem}.stat-sep[data-v-05912b2f]{color:#cbd5e1}.card-progress-wrap[data-v-05912b2f]{display:flex;align-items:center;gap:.5rem}.card-progress-bg[data-v-05912b2f]{flex:1;height:4px;background:#e2e8f0;border-radius:99px;overflow:hidden}.card-progress-fill[data-v-05912b2f]{height:100%;background:linear-gradient(90deg,#7c3aed,#ec4899);border-radius:99px;transition:width .5s ease}.card-progress-label[data-v-05912b2f]{font-size:.7rem;color:#64748b;font-family:Inter,sans-serif;flex-shrink:0}.empty-state[data-v-05912b2f]{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:4rem 2rem;text-align:center}.empty-icon[data-v-05912b2f]{color:var(--section-color, #7c3aed);opacity:.5;animation:empty-float-05912b2f 3s ease-in-out infinite}.empty-title[data-v-05912b2f]{font-size:1.125rem;font-weight:700;color:#1e293b;margin:0;font-family:Inter,sans-serif}.empty-hint[data-v-05912b2f]{font-size:.875rem;color:#64748b;margin:0 0 .5rem;max-width:320px;font-family:Inter,sans-serif}.course-side-panel[data-v-05912b2f]{width:480px;flex-shrink:0;background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 4px 24px #00000014;position:sticky;top:1.5rem;max-height:calc(100vh - 6rem);overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:#e2e8f0 transparent}.course-side-panel[data-v-05912b2f]::-webkit-scrollbar{width:5px}.course-side-panel[data-v-05912b2f]::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:99px}.panel-header[data-v-05912b2f]{display:flex;flex-direction:column;border-bottom:1px solid #e2e8f0;position:sticky;top:0;background:#fff;z-index:2}.panel-header-row[data-v-05912b2f]{display:flex;align-items:center;gap:.625rem;padding:.875rem 1.125rem .75rem}.panel-close[data-v-05912b2f]{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;cursor:pointer;margin:0;transition:all .15s;flex-shrink:0}.panel-close[data-v-05912b2f]:hover{background:#f1f5f9;color:#0f172a}.panel-title[data-v-05912b2f]{font-size:.875rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.panel-header-actions[data-v-05912b2f]{display:flex;align-items:center;gap:.375rem}.btn-panel-action[data-v-05912b2f]{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;cursor:pointer;margin:0;transition:all .15s}.btn-panel-action[data-v-05912b2f]:hover{background:#eef2ff;border-color:#a5b4fc;color:#4f46e5}.btn-panel-danger[data-v-05912b2f]:hover{background:#fef2f2;border-color:#fecaca;color:#ef4444}.panel-tab-bar[data-v-05912b2f]{display:flex;border-top:1px solid #f1f5f9}.panel-tab[data-v-05912b2f]{flex:1;display:flex;align-items:center;justify-content:center;padding:.6rem 1rem;font-size:.8125rem;font-weight:500;font-family:Inter,sans-serif;color:#64748b;background:transparent;border:none;cursor:pointer;margin:0;border-bottom:2px solid transparent;transition:color .15s,border-color .15s,background .15s}.panel-tab[data-v-05912b2f]:hover{color:#7c3aed;background:#faf5ff}.panel-tab.active[data-v-05912b2f]{color:#7c3aed;font-weight:600;border-bottom-color:#7c3aed;background:#faf5ff}.tab-body[data-v-05912b2f]{display:flex;flex-direction:column}.content-tab-body[data-v-05912b2f]{flex:1}.panel-hero[data-v-05912b2f]{height:110px;background-size:cover;background-position:center;position:relative;flex-shrink:0}.panel-hero-overlay[data-v-05912b2f]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#0000001a,#00000059)}.panel-section[data-v-05912b2f]{padding:1rem 1.125rem;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;gap:.625rem}.panel-section-title[data-v-05912b2f]{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif}.title-section[data-v-05912b2f]{gap:.5rem}.title-input[data-v-05912b2f]{width:100%;box-sizing:border-box;background:transparent;border:1px solid transparent;color:#0f172a;font-size:1.125rem;font-weight:700;padding:.3rem .5rem;border-radius:7px;font-family:Inter,sans-serif;margin:0;transition:border-color .15s,background .15s}.title-input[data-v-05912b2f]:hover{border-color:#e2e8f0;background:#f8fafc}.title-input[data-v-05912b2f]:focus{outline:none;border-color:#7c3aed;background:#fff}.desc-textarea[data-v-05912b2f]{width:100%;box-sizing:border-box;padding:.5rem .625rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.8125rem;font-family:Inter,sans-serif;color:#374151;resize:vertical;outline:none;line-height:1.5;margin:0;transition:border-color .15s}.desc-textarea[data-v-05912b2f]:focus{border-color:#7c3aed}.thumbnail-url-row[data-v-05912b2f]{display:flex;align-items:center;gap:.5rem}.thumb-icon[data-v-05912b2f]{color:#94a3b8;flex-shrink:0}.thumb-input[data-v-05912b2f]{flex:1;padding:.4rem .625rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.775rem;font-family:Inter,sans-serif;color:#374151;background:#fff;outline:none;margin:0;transition:border-color .15s}.thumb-input[data-v-05912b2f]:focus{border-color:#7c3aed}.status-section[data-v-05912b2f]{padding:.875rem 1.125rem}.status-toggle-row[data-v-05912b2f]{display:flex;align-items:center;gap:.75rem}.toggle-label-text[data-v-05912b2f]{font-size:.8125rem;color:#64748b;font-family:Inter,sans-serif;flex:1}.status-switch[data-v-05912b2f]{width:44px;height:24px;border-radius:99px;background:#e2e8f0;border:none;cursor:pointer;padding:0;margin:0;position:relative;transition:background .25s;flex-shrink:0}.status-switch.switch-on[data-v-05912b2f]{background:#059669}.status-switch[data-v-05912b2f]:disabled{opacity:.6;cursor:not-allowed}.switch-thumb[data-v-05912b2f]{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.status-switch.switch-on .switch-thumb[data-v-05912b2f]{transform:translate(20px)}.switch-value[data-v-05912b2f]{font-size:.8125rem;font-weight:600;font-family:Inter,sans-serif;flex-shrink:0}.val-published[data-v-05912b2f]{color:#059669}.val-draft[data-v-05912b2f]{color:#64748b}.panel-stats-row[data-v-05912b2f]{display:flex;align-items:stretch;background:#f8fafc;border-bottom:1px solid #f1f5f9;padding:.75rem 1.125rem}.panel-stat[data-v-05912b2f]{flex:1;display:flex;flex-direction:column;align-items:center;gap:.1rem}.panel-stat-div[data-v-05912b2f]{width:1px;background:#e2e8f0;margin:0 .375rem}.panel-stat-val[data-v-05912b2f]{font-size:1.25rem;font-weight:800;color:#0f172a;font-family:Inter,sans-serif;line-height:1}.panel-stat-lbl[data-v-05912b2f]{font-size:.65rem;color:#94a3b8;font-family:Inter,sans-serif;text-align:center}.students-section[data-v-05912b2f]{gap:.75rem}.students-title[data-v-05912b2f]{justify-content:flex-start}.section-badge[data-v-05912b2f]{margin-left:auto;background:#ede9fe;color:#7c3aed;font-size:.7rem;font-weight:700;padding:.1rem .5rem;border-radius:99px;font-family:Inter,sans-serif}.enrolled-loading[data-v-05912b2f]{font-size:.8rem;color:#94a3b8;font-family:Inter,sans-serif;padding:.5rem 0}.enrolled-list[data-v-05912b2f]{display:flex;flex-direction:column;gap:.5rem}.enrolled-student-row[data-v-05912b2f]{display:flex;align-items:center;gap:.625rem;padding:.5rem .625rem;border-radius:8px;border:1px solid #f1f5f9;transition:background .15s}.enrolled-student-row[data-v-05912b2f]:hover{background:#f8fafc}.enrolled-avatar[data-v-05912b2f]{width:32px;height:32px;border-radius:50%;flex-shrink:0;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;font-family:Inter,sans-serif}.enrolled-info[data-v-05912b2f]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.enrolled-name[data-v-05912b2f]{font-size:.8125rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.enrolled-meta[data-v-05912b2f]{display:flex;align-items:center;gap:.4rem}.enrolled-progress-val[data-v-05912b2f]{font-size:.7rem;font-weight:700;color:#7c3aed;font-family:Inter,sans-serif;flex-shrink:0}.enrolled-prog-bg[data-v-05912b2f]{flex:1;height:4px;background:#e2e8f0;border-radius:99px;overflow:hidden;max-width:80px}.enrolled-prog-fill[data-v-05912b2f]{height:100%;background:linear-gradient(90deg,#7c3aed,#ec4899);border-radius:99px}.badge-done[data-v-05912b2f]{display:inline-flex;align-items:center;gap:.2rem;font-size:.65rem;font-weight:600;color:#059669;background:#f0fdf4;padding:.1rem .4rem;border-radius:99px;font-family:Inter,sans-serif;flex-shrink:0}.badge-never[data-v-05912b2f]{font-size:.65rem;color:#94a3b8;font-family:Inter,sans-serif;flex-shrink:0}.btn-unenroll[data-v-05912b2f]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;flex-shrink:0;background:transparent;border:1px solid transparent;color:#cbd5e1;cursor:pointer;padding:0;margin:0;transition:all .15s}.btn-unenroll[data-v-05912b2f]:hover{background:#fef2f2;border-color:#fecaca;color:#ef4444}.enrolled-empty[data-v-05912b2f]{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:1rem;color:#cbd5e1;text-align:center}.enrolled-empty p[data-v-05912b2f]{margin:0;font-size:.8125rem;color:#94a3b8;font-family:Inter,sans-serif}.enroll-new-section[data-v-05912b2f]{display:flex;gap:.4rem;align-items:center;padding-top:.5rem;border-top:1px dashed #e2e8f0}.field-select[data-v-05912b2f]{flex:1;padding:.45rem .625rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.8rem;font-family:Inter,sans-serif;color:#0f172a;background:#fff;cursor:pointer;margin:0}.field-select[data-v-05912b2f]:focus{outline:none;border-color:#7c3aed}.btn-enroll[data-v-05912b2f]{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .875rem;background:#7c3aed;color:#fff;border:none;border-radius:7px;font-size:.8rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;white-space:nowrap;transition:opacity .15s}.btn-enroll[data-v-05912b2f]:hover{opacity:.88}.btn-enroll[data-v-05912b2f]:disabled{opacity:.5;cursor:not-allowed}.danger-zone[data-v-05912b2f]{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff5f5;border-top:1px solid #fecaca;padding:.875rem 1.125rem;flex-wrap:wrap;border-bottom-left-radius:20px;border-bottom-right-radius:20px}.danger-info[data-v-05912b2f]{display:flex;flex-direction:column;gap:.15rem}.danger-title[data-v-05912b2f]{display:flex;align-items:center;gap:.3rem;font-size:.8125rem;font-weight:600;color:#dc2626;margin:0;font-family:Inter,sans-serif}.danger-desc[data-v-05912b2f]{margin:0;font-size:.75rem;color:#6b7280;font-family:Inter,sans-serif}.btn-delete[data-v-05912b2f]{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .875rem;background:#dc2626;color:#fff;border:none;border-radius:7px;font-size:.8125rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:background .15s;white-space:nowrap}.btn-delete[data-v-05912b2f]:hover{background:#b91c1c}.detail-loading[data-v-05912b2f]{display:flex;flex-direction:column;gap:.75rem;padding:1.125rem}.skeleton[data-v-05912b2f]{background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9);background-size:200% 100%;animation:skeleton-shimmer-05912b2f 1.4s ease-in-out infinite;border-radius:8px}.skeleton-thumb[data-v-05912b2f]{height:90px;border-radius:12px}.skeleton-line[data-v-05912b2f]{height:18px;width:60%}.skeleton-line.short[data-v-05912b2f]{width:35%;height:14px}@keyframes skeleton-shimmer-05912b2f{0%{background-position:200% 0}to{background-position:-200% 0}}.panel-slide-enter-active[data-v-05912b2f]{transition:all .35s cubic-bezier(.34,1.56,.64,1)}.panel-slide-leave-active[data-v-05912b2f]{transition:all .2s ease-in}.panel-slide-enter-from[data-v-05912b2f]{opacity:0;transform:translate(40px) scale(.96)}.panel-slide-leave-to[data-v-05912b2f]{opacity:0;transform:translate(40px)}.card-enter-active[data-v-05912b2f]{transition:opacity .35s ease,transform .35s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--i, 0) * 50ms)}.card-enter-from[data-v-05912b2f]{opacity:0;transform:translateY(16px) scale(.95)}.card-move[data-v-05912b2f]{transition:transform .3s ease}@keyframes empty-float-05912b2f{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.modal-overlay[data-v-e6d564c7]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-e6d564c7]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:440px;overflow:hidden;font-family:Inter,sans-serif}.modal-header[data-v-e6d564c7]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2[data-v-e6d564c7]{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0;border:none;text-shadow:none;font-family:Inter,sans-serif}.btn-close[data-v-e6d564c7]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none}.btn-close[data-v-e6d564c7]:hover{background:#f1f5f9;color:#0f172a;transform:none;box-shadow:none}.modal-form[data-v-e6d564c7]{padding:1.5rem;display:flex;flex-direction:column;gap:.375rem}.modal-form label[data-v-e6d564c7]{font-size:.875rem;font-weight:500;color:#374151;font-family:Inter,sans-serif}.modal-form input[data-v-e6d564c7]{width:100%;padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.925rem;color:#0f172a;background:#fff;box-sizing:border-box;margin-bottom:.5rem;font-family:Inter,sans-serif;box-shadow:none;transition:border-color .15s,box-shadow .15s}.modal-form input[data-v-e6d564c7]:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526}.modal-form input[data-v-e6d564c7]::placeholder{color:#94a3b8}.form-error[data-v-e6d564c7]{font-size:.875rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.625rem .875rem;font-family:Inter,sans-serif}.modal-actions[data-v-e6d564c7]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.btn-cancel[data-v-e6d564c7]{padding:.575rem 1.25rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.925rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-e6d564c7]:hover{background:#f8fafc;transform:none;box-shadow:none}.btn-submit[data-v-e6d564c7]{padding:.575rem 1.5rem;border-radius:8px;background:#4f46e5;border:none;color:#fff;font-size:.925rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-submit[data-v-e6d564c7]:hover{background:#4338ca;transform:none;box-shadow:none}.btn-submit[data-v-e6d564c7]:disabled{opacity:.6;cursor:not-allowed;transform:none}.students-workspace[data-v-fd4fceab]{display:flex;gap:1.5rem;align-items:flex-start;min-height:100%}.students-pane[data-v-fd4fceab]{flex:1;min-width:0}.page-header[data-v-fd4fceab]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;gap:1rem;flex-wrap:wrap}.header-left[data-v-fd4fceab]{display:flex;align-items:center;gap:.75rem}.section-title[data-v-fd4fceab]{margin:0;font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,var(--section-color, #059669),var(--section-color-2, #0ea5e9));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.4px;font-family:Inter,sans-serif}.total-badge[data-v-fd4fceab]{background:#f1f5f9;color:#64748b;font-size:.8rem;font-weight:700;padding:.15rem .6rem;border-radius:99px;font-family:Inter,sans-serif}.header-right[data-v-fd4fceab]{display:flex;align-items:center;gap:.5rem}.btn-primary[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.375rem;padding:.55rem 1.125rem;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:background .15s;white-space:nowrap}.btn-primary[data-v-fd4fceab]:hover{background:#4338ca}.btn-primary[data-v-fd4fceab]:active{transform:scale(.95)}.btn-sm[data-v-fd4fceab]{padding:.4rem .875rem;font-size:.8125rem}.btn-secondary[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:#fff;color:#64748b;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:all .15s}.btn-secondary[data-v-fd4fceab]:hover{background:#f8fafc;border-color:#cbd5e1}.btn-bulk-toggle[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;background:#fff;color:#64748b;border:1px solid #e2e8f0;border-radius:8px;font-size:.8125rem;font-weight:500;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:all .15s}.btn-bulk-toggle[data-v-fd4fceab]:hover{background:#f8fafc;border-color:#a5b4fc;color:#4f46e5}.btn-bulk-toggle.active[data-v-fd4fceab]{background:#eef2ff;border-color:#a5b4fc;color:#4f46e5}.search-bar[data-v-fd4fceab]{display:flex;gap:.5rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.search-input-wrap[data-v-fd4fceab]{position:relative;flex:1;min-width:180px}.search-icon[data-v-fd4fceab]{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.search-input[data-v-fd4fceab]{width:100%;padding:.5rem 2rem .5rem 2.25rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-family:Inter,sans-serif;color:#0f172a;background:#fff;box-sizing:border-box;margin:0;transition:border-color .15s}.search-input[data-v-fd4fceab]:focus{outline:none;border-color:#4f46e5}.search-clear[data-v-fd4fceab]{position:absolute;right:.55rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#94a3b8;cursor:pointer;padding:.2rem;border-radius:4px;display:flex;align-items:center;transition:color .15s}.search-clear[data-v-fd4fceab]:hover{color:#ef4444}.filter-select[data-v-fd4fceab]{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.8125rem;font-family:Inter,sans-serif;color:#0f172a;background:#fff;cursor:pointer;margin:0;transition:border-color .15s;white-space:nowrap}.filter-select[data-v-fd4fceab]:focus{outline:none;border-color:#4f46e5}.sort-select[data-v-fd4fceab]{max-width:130px}.bulk-action-bar[data-v-fd4fceab]{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;background:#eef2ff;border:1px solid #c7d2fe;border-radius:10px;padding:.75rem 1rem;margin-bottom:1rem}.bulk-count[data-v-fd4fceab]{font-size:.875rem;font-weight:600;color:#4f46e5;font-family:Inter,sans-serif;white-space:nowrap}.bulk-actions[data-v-fd4fceab]{display:flex;gap:.5rem;flex:1;flex-wrap:wrap;align-items:center}.bulk-enroll-wrap[data-v-fd4fceab]{display:flex;gap:.5rem;align-items:center}.bulk-course-select[data-v-fd4fceab]{min-width:160px}.btn-bulk-enroll[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:background .15s;white-space:nowrap}.btn-bulk-enroll[data-v-fd4fceab]:hover{background:#4338ca}.btn-bulk-enroll[data-v-fd4fceab]:disabled{opacity:.5;cursor:not-allowed}.btn-bulk-delete[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;background:#fff;color:#ef4444;border:1px solid #fecaca;border-radius:8px;font-size:.8125rem;font-weight:500;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:background .15s;white-space:nowrap}.btn-bulk-delete[data-v-fd4fceab]:hover{background:#fef2f2}.btn-bulk-delete[data-v-fd4fceab]:disabled{opacity:.5;cursor:not-allowed}.students-grid[data-v-fd4fceab]{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}.has-panel .students-grid[data-v-fd4fceab]{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.student-card[data-v-fd4fceab]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.5rem 1.25rem 1.25rem;box-shadow:0 1px 3px #0000000f;display:flex;flex-direction:column;align-items:center;gap:.625rem;text-align:center;cursor:pointer;position:relative;transition:border-color .2s,box-shadow .2s,transform .25s cubic-bezier(.34,1.56,.64,1)}.student-card[data-v-fd4fceab]:hover{border-color:#a5b4fc;box-shadow:0 8px 24px color-mix(in srgb,#059669 18%,transparent);transform:translateY(-4px)}.student-card.active[data-v-fd4fceab]{border-color:#4f46e5;box-shadow:0 0 0 2px #c7d2fe}.student-card.selected[data-v-fd4fceab]{border-color:#4f46e5;background:#eef2ff}.student-card.risk-medium[data-v-fd4fceab]{border-color:#fcd34d}.student-card.risk-high[data-v-fd4fceab]{border-color:#fca5a5}.student-card.risk-medium[data-v-fd4fceab]:hover{border-color:#f59e0b}.student-card.risk-high[data-v-fd4fceab]:hover{border-color:#ef4444}.bulk-checkbox[data-v-fd4fceab]{position:absolute;top:.625rem;left:.625rem;width:20px;height:20px;border-radius:6px;border:2px solid #cbd5e1;background:#fff;display:flex;align-items:center;justify-content:center;transition:all .15s}.bulk-checkbox.checked[data-v-fd4fceab]{background:#4f46e5;border-color:#4f46e5;color:#fff}.risk-indicator[data-v-fd4fceab]{position:absolute;top:.625rem;right:.625rem;color:#f59e0b;cursor:help}.risk-high .risk-indicator[data-v-fd4fceab]{color:#ef4444}.student-avatar[data-v-fd4fceab]{width:56px;height:56px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:700;font-family:Inter,sans-serif;flex-shrink:0;box-shadow:0 2px 8px #0000001f;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.student-card:hover .student-avatar[data-v-fd4fceab]{transform:scale(1.06)}.student-info[data-v-fd4fceab]{display:flex;flex-direction:column;gap:.25rem;width:100%}.student-info h4[data-v-fd4fceab]{margin:0;font-size:.9375rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif}.card-stats[data-v-fd4fceab]{display:flex;align-items:center;justify-content:center;gap:.35rem;font-size:.75rem;color:#64748b;font-family:Inter,sans-serif}.stat-item[data-v-fd4fceab]{display:flex;align-items:center;gap:.2rem}.stat-sep[data-v-fd4fceab]{color:#cbd5e1}.last-access-text[data-v-fd4fceab]{display:flex;align-items:center;justify-content:center;gap:.2rem;font-size:.7rem;color:#94a3b8;font-family:Inter,sans-serif}.last-access-text.text-risk[data-v-fd4fceab]{color:#f59e0b}.risk-high .last-access-text.text-risk[data-v-fd4fceab]{color:#ef4444}.mini-progress-bg[data-v-fd4fceab]{width:100%;height:3px;background:#e2e8f0;border-radius:99px;overflow:hidden}.mini-progress-fill[data-v-fd4fceab]{height:100%;background:linear-gradient(90deg,var(--section-color, #059669),var(--section-color-2, #0ea5e9));border-radius:99px;transition:width .5s ease}.card-actions[data-v-fd4fceab]{display:flex;gap:.4rem;width:100%;margin-top:.2rem}.btn-copy[data-v-fd4fceab]{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;flex:1;padding:.4rem .5rem;border:1px solid #e2e8f0;background:#fff;color:#64748b;border-radius:8px;font-size:.775rem;font-weight:500;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:all .15s;white-space:nowrap}.btn-copy[data-v-fd4fceab]:hover{background:#f8fafc;border-color:#c7d2fe;color:#4f46e5}.btn-copy.copied[data-v-fd4fceab]{background:#f0fdf4;border-color:#bbf7d0;color:#059669}.hero-copy[data-v-fd4fceab]{flex:unset;padding:.45rem .75rem;font-size:.8125rem}.empty-state[data-v-fd4fceab]{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:4rem 2rem;text-align:center}.empty-icon[data-v-fd4fceab]{color:var(--section-color, #059669);opacity:.5;animation:empty-float-fd4fceab 3s ease-in-out infinite}.empty-title[data-v-fd4fceab]{font-size:1.125rem;font-weight:700;color:#1e293b;margin:0;font-family:Inter,sans-serif}.empty-hint[data-v-fd4fceab]{font-size:.875rem;color:#64748b;margin:0 0 .5rem;max-width:320px;font-family:Inter,sans-serif}.student-side-panel[data-v-fd4fceab]{width:460px;flex-shrink:0;background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 4px 24px #00000014;position:sticky;top:1.5rem;max-height:calc(100vh - 6rem);overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:#e2e8f0 transparent}.student-side-panel[data-v-fd4fceab]::-webkit-scrollbar{width:5px}.student-side-panel[data-v-fd4fceab]::-webkit-scrollbar-track{background:transparent}.student-side-panel[data-v-fd4fceab]::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:99px}.panel-header[data-v-fd4fceab]{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid #f1f5f9;position:sticky;top:0;background:#fff;z-index:2}.panel-close[data-v-fd4fceab]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;cursor:pointer;margin:0;transition:all .15s;flex-shrink:0}.panel-close[data-v-fd4fceab]:hover{background:#f1f5f9;color:#0f172a}.panel-title[data-v-fd4fceab]{font-size:.875rem;font-weight:600;color:#64748b;font-family:Inter,sans-serif;flex:1}.btn-export-csv[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .75rem;background:#f8fafc;color:#64748b;border:1px solid #e2e8f0;border-radius:7px;font-size:.775rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:all .15s;white-space:nowrap}.btn-export-csv[data-v-fd4fceab]:hover{background:#eef2ff;border-color:#a5b4fc;color:#4f46e5}.student-hero[data-v-fd4fceab]{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;flex-wrap:wrap}.hero-avatar[data-v-fd4fceab]{width:56px;height:56px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;font-family:Inter,sans-serif;flex-shrink:0;box-shadow:0 3px 10px #00000026}.hero-info[data-v-fd4fceab]{flex:1;min-width:0}.hero-info h2[data-v-fd4fceab]{margin:0;font-size:1.125rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif}.hero-meta[data-v-fd4fceab]{display:flex;align-items:center;gap:.3rem;margin:.2rem 0 0;font-size:.775rem;color:#64748b;font-family:Inter,sans-serif}.hero-stats-row[data-v-fd4fceab]{display:flex;align-items:stretch;background:#f8fafc;border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9;padding:.875rem 1.25rem;gap:0}.hero-stat[data-v-fd4fceab]{flex:1;display:flex;flex-direction:column;align-items:center;gap:.15rem}.hero-stat-divider[data-v-fd4fceab]{width:1px;background:#e2e8f0;margin:0 .5rem}.hero-stat-val[data-v-fd4fceab]{font-size:1.25rem;font-weight:800;color:#0f172a;font-family:Inter,sans-serif;line-height:1}.hero-stat-lbl[data-v-fd4fceab]{font-size:.7rem;color:#94a3b8;font-family:Inter,sans-serif;text-align:center}.name-display[data-v-fd4fceab]{display:flex;align-items:center;gap:.4rem}.btn-edit-name[data-v-fd4fceab]{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:.2rem;border-radius:5px;display:inline-flex;align-items:center;transition:all .15s;margin:0}.btn-edit-name[data-v-fd4fceab]:hover{background:#f1f5f9;color:var(--section-color, #059669)}.name-edit[data-v-fd4fceab]{display:flex;align-items:center;gap:.3rem;margin-bottom:.15rem}.field-input-name[data-v-fd4fceab]{border:1px solid #cbd5e1;border-radius:6px;padding:.3rem .5rem;font-size:1rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif;width:200px;outline:none;margin:0}.field-input-name[data-v-fd4fceab]:focus{border-color:var(--section-color, #059669)}.btn-save-name[data-v-fd4fceab],.btn-cancel-name[data-v-fd4fceab]{background:transparent;border:none;border-radius:5px;padding:.3rem;cursor:pointer;display:inline-flex;align-items:center;transition:background .15s;margin:0}.btn-save-name[data-v-fd4fceab]{color:#059669}.btn-save-name[data-v-fd4fceab]:hover{background:#d1fae5}.btn-cancel-name[data-v-fd4fceab]{color:#64748b}.btn-cancel-name[data-v-fd4fceab]:hover{background:#f1f5f9}.detail-section[data-v-fd4fceab]{padding:1.125rem 1.25rem;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;gap:.875rem}.detail-section-title[data-v-fd4fceab]{display:flex;align-items:center;gap:.4rem;font-size:.875rem;font-weight:700;color:#0f172a;margin:0;font-family:Inter,sans-serif}.section-badge[data-v-fd4fceab]{margin-left:auto;background:#d1fae5;color:#059669;font-size:.7rem;font-weight:700;padding:.1rem .5rem;border-radius:99px;font-family:Inter,sans-serif}.notes-section[data-v-fd4fceab]{gap:.5rem}.notes-textarea[data-v-fd4fceab]{width:100%;box-sizing:border-box;padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.8125rem;font-family:Inter,sans-serif;color:#374151;resize:vertical;outline:none;line-height:1.5;margin:0;transition:border-color .15s}.notes-textarea[data-v-fd4fceab]:focus{border-color:#a5b4fc}.notes-saving[data-v-fd4fceab]{font-size:.75rem;color:#94a3b8;font-family:Inter,sans-serif}.notes-saved[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;color:#059669;font-family:Inter,sans-serif}.timeline[data-v-fd4fceab]{display:flex;flex-direction:column;gap:.875rem}.timeline-item[data-v-fd4fceab]{display:flex;gap:.75rem;align-items:flex-start}.timeline-dot[data-v-fd4fceab]{width:10px;height:10px;border-radius:50%;flex-shrink:0;margin-top:3px}.dot-video[data-v-fd4fceab]{background:#7c3aed}.dot-exercise[data-v-fd4fceab]{background:#d97706}.dot-text[data-v-fd4fceab]{background:#0369a1}.dot-audio[data-v-fd4fceab]{background:#9d174d}.dot-vocabulary[data-v-fd4fceab]{background:#059669}.dot-speaking[data-v-fd4fceab]{background:#0891b2}.dot-flashcard[data-v-fd4fceab]{background:#6d28d9}.timeline-content[data-v-fd4fceab]{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}.timeline-lesson[data-v-fd4fceab]{font-size:.8125rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-meta[data-v-fd4fceab]{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:#64748b;font-family:Inter,sans-serif;flex-wrap:wrap}.timeline-score[data-v-fd4fceab]{font-weight:600;color:#059669;background:#f0fdf4;padding:.05rem .35rem;border-radius:99px}.timeline-date[data-v-fd4fceab]{font-size:.7rem;color:#94a3b8;font-family:Inter,sans-serif}.courses-list[data-v-fd4fceab]{display:flex;flex-direction:column;gap:.875rem}.course-progress-card[data-v-fd4fceab]{border:1px solid #e2e8f0;border-radius:10px;padding:.875rem;display:flex;flex-direction:column;gap:.625rem;background:#fafafa}.course-progress-header[data-v-fd4fceab]{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.course-progress-info[data-v-fd4fceab]{display:flex;flex-direction:column;gap:.15rem;min-width:0}.course-progress-title[data-v-fd4fceab]{font-size:.875rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif}.course-progress-meta[data-v-fd4fceab]{display:flex;align-items:center;gap:.25rem;font-size:.7rem;color:#94a3b8;font-family:Inter,sans-serif}.course-progress-right[data-v-fd4fceab]{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.progress-pct[data-v-fd4fceab]{font-size:.875rem;font-weight:700;color:var(--section-color, #059669);font-family:Inter,sans-serif}.badge-completed[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.2rem;background:#f0fdf4;color:#059669;font-size:.65rem;font-weight:600;padding:.1rem .45rem;border-radius:99px;font-family:Inter,sans-serif}.progress-bar-bg[data-v-fd4fceab]{height:5px;background:#e2e8f0;border-radius:99px;overflow:hidden}.progress-bar-fill[data-v-fd4fceab]{height:100%;background:linear-gradient(90deg,var(--section-color, #059669),var(--section-color-2, #0ea5e9));border-radius:99px;transition:width .5s ease}.modules-details[data-v-fd4fceab]{border:none}.modules-summary[data-v-fd4fceab]{display:flex;align-items:center;gap:.3rem;font-size:.775rem;color:#64748b;font-family:Inter,sans-serif;cursor:pointer;list-style:none;padding:.2rem 0;transition:color .15s}.modules-summary[data-v-fd4fceab]:hover{color:#374151}.modules-summary[data-v-fd4fceab]::-webkit-details-marker{display:none}.summary-chevron[data-v-fd4fceab]{transition:transform .2s}details[open] .summary-chevron[data-v-fd4fceab]{transform:rotate(90deg)}.modules-list[data-v-fd4fceab]{display:flex;flex-direction:column;gap:.4rem;padding-top:.5rem}.module-row[data-v-fd4fceab]{display:flex;flex-direction:column;gap:.15rem}.module-row-header[data-v-fd4fceab]{display:flex;align-items:center;gap:.4rem;padding:.2rem 0}.module-row-title[data-v-fd4fceab]{font-size:.775rem;font-weight:600;color:#374151;font-family:Inter,sans-serif;flex:1}.module-lesson-count[data-v-fd4fceab]{font-size:.7rem;color:#94a3b8;font-family:Inter,sans-serif}.icon-done[data-v-fd4fceab]{color:#059669;flex-shrink:0}.icon-pending[data-v-fd4fceab]{color:#cbd5e1;flex-shrink:0}.lesson-list[data-v-fd4fceab]{list-style:none;margin:0;padding:0 0 0 1rem;display:flex;flex-direction:column;gap:.15rem}.lesson-row[data-v-fd4fceab]{display:flex;align-items:center;gap:.4rem;padding:.25rem .4rem;border-radius:5px;transition:background .15s}.lesson-row[data-v-fd4fceab]:hover{background:#00000008}.lesson-done .lesson-title[data-v-fd4fceab]{text-decoration:line-through;color:#94a3b8}.lesson-title[data-v-fd4fceab]{font-size:.775rem;color:#374151;flex:1;font-family:Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-score[data-v-fd4fceab]{font-size:.7rem;font-weight:600;color:#059669;background:#f0fdf4;padding:.05rem .35rem;border-radius:99px;font-family:Inter,sans-serif;flex-shrink:0}.lesson-attempts[data-v-fd4fceab]{display:flex;align-items:center;gap:.2rem;font-size:.7rem;color:#94a3b8;font-family:Inter,sans-serif;flex-shrink:0}.lesson-type-badge[data-v-fd4fceab]{font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.08rem .35rem;border-radius:4px;flex-shrink:0;font-family:Inter,sans-serif}.type-video[data-v-fd4fceab]{background:#ede9fe;color:#7c3aed}.type-exercise[data-v-fd4fceab]{background:#fef3c7;color:#92400e}.type-text[data-v-fd4fceab]{background:#e0f2fe;color:#0369a1}.type-audio[data-v-fd4fceab]{background:#fce7f3;color:#9d174d}.type-vocabulary[data-v-fd4fceab]{background:#d1fae5;color:#065f46}.type-speaking[data-v-fd4fceab]{background:#e0f2fe;color:#0891b2}.type-flashcard[data-v-fd4fceab]{background:#ede9fe;color:#6d28d9}.btn-uncomplete[data-v-fd4fceab]{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:5px;background:transparent;border:1px solid transparent;color:#cbd5e1;cursor:pointer;padding:0;margin:0;flex-shrink:0;transition:all .15s}.btn-uncomplete[data-v-fd4fceab]:hover{background:#fff7ed;border-color:#fed7aa;color:#ea580c}.btn-uncomplete[data-v-fd4fceab]:disabled{opacity:.4;cursor:not-allowed}.enroll-section[data-v-fd4fceab]{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;padding-top:.5rem;border-top:1px dashed #e2e8f0}.field-select[data-v-fd4fceab]{flex:1;min-width:140px;padding:.45rem .625rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.8125rem;font-family:Inter,sans-serif;color:#0f172a;background:#fff;cursor:pointer;margin:0;transition:border-color .15s}.field-select[data-v-fd4fceab]:focus{outline:none;border-color:#4f46e5}.btn-enroll[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .875rem;background:var(--section-color, #059669);color:#fff;border:none;border-radius:7px;font-size:.8125rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;white-space:nowrap;transition:opacity .15s}.btn-enroll[data-v-fd4fceab]:hover{opacity:.88}.btn-enroll[data-v-fd4fceab]:disabled{opacity:.5;cursor:not-allowed}.course-card-actions[data-v-fd4fceab]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.btn-reset-progress[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.3rem;background:none;border:1px solid #fed7aa;color:#ea580c;padding:.3rem .625rem;border-radius:5px;font-size:.7rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-reset-progress[data-v-fd4fceab]:hover{background:#fff7ed}.btn-reset-progress[data-v-fd4fceab]:disabled{opacity:.5;cursor:not-allowed}.btn-unenroll[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.3rem;background:none;border:1px solid #fecaca;color:#ef4444;padding:.3rem .625rem;border-radius:5px;font-size:.7rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;align-self:flex-start;transition:background .15s}.btn-unenroll[data-v-fd4fceab]:hover{background:#fef2f2}.col-empty[data-v-fd4fceab]{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1.25rem;text-align:center;color:#cbd5e1}.col-empty p[data-v-fd4fceab]{margin:0;font-size:.8125rem;color:#94a3b8;font-family:Inter,sans-serif}.danger-zone[data-v-fd4fceab]{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff5f5;border-top:1px solid #fecaca;padding:1rem 1.25rem;flex-wrap:wrap;border-bottom-left-radius:20px;border-bottom-right-radius:20px}.danger-info[data-v-fd4fceab]{display:flex;flex-direction:column;gap:.2rem}.danger-title[data-v-fd4fceab]{display:flex;align-items:center;gap:.3rem;font-size:.8125rem;font-weight:600;color:#dc2626;margin:0;font-family:Inter,sans-serif}.danger-desc[data-v-fd4fceab]{margin:0;font-size:.75rem;color:#6b7280;font-family:Inter,sans-serif}.btn-delete[data-v-fd4fceab]{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .875rem;background:#dc2626;color:#fff;border:none;border-radius:7px;font-size:.8125rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:background .15s;white-space:nowrap;flex-shrink:0}.btn-delete[data-v-fd4fceab]:hover{background:#b91c1c}.btn-delete[data-v-fd4fceab]:disabled{opacity:.6;cursor:not-allowed}.detail-loading[data-v-fd4fceab]{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem}.skeleton[data-v-fd4fceab]{background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9);background-size:200% 100%;animation:skeleton-shimmer-fd4fceab 1.4s ease-in-out infinite;border-radius:8px}.skeleton-avatar[data-v-fd4fceab]{width:56px;height:56px;border-radius:50%}.skeleton-line[data-v-fd4fceab]{height:18px;width:55%}.skeleton-line.short[data-v-fd4fceab]{width:30%;height:12px}@keyframes skeleton-shimmer-fd4fceab{0%{background-position:200% 0}to{background-position:-200% 0}}.panel-slide-enter-active[data-v-fd4fceab]{transition:all .35s cubic-bezier(.34,1.56,.64,1)}.panel-slide-leave-active[data-v-fd4fceab]{transition:all .2s ease-in}.panel-slide-enter-from[data-v-fd4fceab]{opacity:0;transform:translate(40px) scale(.96)}.panel-slide-leave-to[data-v-fd4fceab]{opacity:0;transform:translate(40px)}.card-enter-active[data-v-fd4fceab]{transition:opacity .35s ease,transform .35s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--i, 0) * 50ms)}.card-enter-from[data-v-fd4fceab]{opacity:0;transform:translateY(16px) scale(.95)}.card-move[data-v-fd4fceab]{transition:transform .3s ease}.bulk-bar-enter-active[data-v-fd4fceab]{transition:all .2s ease}.bulk-bar-leave-active[data-v-fd4fceab]{transition:all .15s ease}.bulk-bar-enter-from[data-v-fd4fceab],.bulk-bar-leave-to[data-v-fd4fceab]{opacity:0;transform:translateY(-8px)}@keyframes copy-bounce-fd4fceab{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes empty-float-fd4fceab{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.resource-card[data-v-57229f44]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 3px #00000012;transition:box-shadow .2s,border-color .2s,transform .25s cubic-bezier(.34,1.56,.64,1)}.resource-card[data-v-57229f44]:hover{border-color:#c7d2fe;box-shadow:0 8px 24px color-mix(in srgb,var(--section-color, #f59e0b) 16%,transparent);transform:translateY(-6px) rotate(.4deg)}.card-thumbnail[data-v-57229f44]{position:relative;height:140px;display:flex;align-items:center;justify-content:center;overflow:hidden}.card-thumbnail img[data-v-57229f44]{width:100%;height:100%;object-fit:cover}.thumb-placeholder[data-v-57229f44]{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.type-badge[data-v-57229f44]{position:absolute;top:.5rem;left:.5rem;font-size:.68rem;font-weight:600;padding:.2rem .5rem;border-radius:5px;text-transform:uppercase;letter-spacing:.05em;font-family:Inter,sans-serif}.card-body[data-v-57229f44]{padding:.875rem 1rem .5rem;flex:1}.card-title[data-v-57229f44]{font-size:.9rem;font-weight:600;color:#0f172a;line-height:1.4;margin:0 0 .3rem;text-shadow:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-family:Inter,sans-serif}.card-meta[data-v-57229f44]{font-size:.78rem;color:#64748b;font-family:Inter,sans-serif}.card-usage[data-v-57229f44]{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.4rem}.row-usage[data-v-57229f44]{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.usage-badge[data-v-57229f44]{font-size:.62rem;font-weight:600;padding:.15rem .45rem;border-radius:4px;white-space:nowrap;max-width:100px;overflow:hidden;text-overflow:ellipsis;font-family:Inter,sans-serif}.usage-loose[data-v-57229f44]{background:#fef3c7;color:#92400e}.usage-linked[data-v-57229f44]{background:#dbeafe;color:#1d4ed8}.usage-more[data-v-57229f44]{background:#f1f5f9;color:#64748b}.card-footer[data-v-57229f44]{padding:.625rem 1rem;border-top:1px solid #f1f5f9;display:flex;align-items:center;justify-content:space-between}.btn-edit[data-v-57229f44]{font-size:.825rem;font-weight:500;color:#4f46e5;background:transparent;border:1px solid #e0e7ff;border-radius:7px;padding:.3rem .75rem;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s}.btn-edit[data-v-57229f44]:hover{background:#ede9fe;border-color:#c4b5fd}.btn-edit[data-v-57229f44]:active{transform:scale(.93)}.more-menu[data-v-57229f44]{position:relative}.btn-more[data-v-57229f44]{display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:transparent;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;padding:0;margin:0;box-shadow:none;text-shadow:none}.btn-more[data-v-57229f44]:hover{background:#f1f5f9;color:#0f172a}.btn-more[data-v-57229f44]:active{transform:scale(.87)}.dropdown[data-v-57229f44]{position:absolute;right:0;bottom:calc(100% + 4px);background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001f;min-width:130px;z-index:50;padding:.25rem}.dropdown-item[data-v-57229f44]{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;font-size:.85rem;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#374151;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif}.dropdown-item[data-v-57229f44]:hover{background:#f1f5f9;transform:none;box-shadow:none}.dropdown-item.danger[data-v-57229f44]{color:#ef4444}.dropdown-item.danger[data-v-57229f44]:hover{background:#fef2f2}.resource-card.is-selectable[data-v-57229f44]{cursor:pointer}.resource-card.is-selected[data-v-57229f44]{border-color:#4f46e5;box-shadow:0 0 0 2px #c7d2fe}.select-checkbox[data-v-57229f44]{position:absolute;top:.5rem;right:.5rem;width:20px;height:20px;border-radius:5px;border:2px solid #cbd5e1;background:#fff;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}.select-checkbox.checked[data-v-57229f44]{border-color:#4f46e5;background:#4f46e5;color:#fff}.resource-row.is-selectable[data-v-57229f44]{cursor:pointer}.resource-row.is-selected[data-v-57229f44]{border-color:#4f46e5;background:#f5f3ff}.row-checkbox[data-v-57229f44]{width:18px;height:18px;min-width:18px;border-radius:4px;border:2px solid #cbd5e1;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s,background .15s}.row-checkbox.checked[data-v-57229f44]{border-color:#4f46e5;background:#4f46e5;color:#fff}.resource-row[data-v-57229f44]{background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;box-shadow:0 1px 2px #0000000d;transition:box-shadow .15s,border-color .15s}.resource-row[data-v-57229f44]:hover{border-color:#c7d2fe;box-shadow:0 2px 10px #4f46e51a}.row-icon[data-v-57229f44]{width:38px;height:38px;min-width:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.row-badge[data-v-57229f44]{font-size:.65rem;font-weight:600;padding:.15rem .45rem;border-radius:4px;text-transform:uppercase;letter-spacing:.05em;font-family:Inter,sans-serif;white-space:nowrap;flex-shrink:0}.row-title[data-v-57229f44]{font-size:.875rem;font-weight:600;color:#0f172a;margin:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Inter,sans-serif}.row-meta[data-v-57229f44]{font-size:.78rem;color:#94a3b8;font-family:Inter,sans-serif;white-space:nowrap;flex-shrink:0}.row-actions[data-v-57229f44]{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.media-uploader[data-v-4c291020]{display:inline-flex;flex-direction:column;gap:.25rem}.upload-btn[data-v-4c291020]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .75rem;border-radius:8px;border:1px solid rgba(88,166,255,.4);background:#58a6ff1a;color:#58a6ff;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s;margin:0;box-shadow:none;text-shadow:none}.upload-btn[data-v-4c291020]:hover:not(:disabled){background:#58a6ff33;border-color:#58a6ffb3;transform:none;box-shadow:none}.upload-btn[data-v-4c291020]:disabled{opacity:.7;cursor:not-allowed;transform:none}.upload-btn--uploading[data-v-4c291020]{border-color:#58a6ff99}.upload-label[data-v-4c291020]{font-family:Inter,sans-serif;min-width:60px}.upload-spinner[data-v-4c291020]{display:inline-block;width:12px;height:12px;border:2px solid rgba(88,166,255,.3);border-top-color:#58a6ff;border-radius:50%;animation:spin-4c291020 .7s linear infinite;flex-shrink:0}@keyframes spin-4c291020{to{transform:rotate(360deg)}}.upload-error[data-v-4c291020]{font-size:.72rem;color:#ff7b72;font-family:Inter,sans-serif}.modal-overlay[data-v-ded59993]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1100;padding:1rem}.modal-container[data-v-ded59993]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:540px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;font-family:Inter,sans-serif;position:relative}.modal-header[data-v-ded59993]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;flex-shrink:0}.header-left[data-v-ded59993]{display:flex;align-items:center;gap:.5rem}.header-icon[data-v-ded59993]{color:#4f46e5}.modal-header h2[data-v-ded59993]{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0;font-family:Inter,sans-serif}.btn-close[data-v-ded59993]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none}.btn-close[data-v-ded59993]:hover{background:#f1f5f9;transform:none;box-shadow:none}.tabs[data-v-ded59993]{display:flex;gap:0;border-bottom:1px solid #e2e8f0;flex-shrink:0}.tab[data-v-ded59993]{padding:.75rem 1.25rem;background:transparent;border:none;border-bottom:2px solid transparent;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:color .15s,border-color .15s;display:flex;align-items:center;gap:.375rem}.tab[data-v-ded59993]:hover{color:#4f46e5;transform:none;box-shadow:none}.tab.active[data-v-ded59993]{color:#4f46e5;border-bottom-color:#4f46e5;font-weight:600}.count[data-v-ded59993]{background:#e2e8f0;color:#64748b;font-size:.7rem;font-weight:700;padding:.1rem .45rem;border-radius:99px}.tab-body[data-v-ded59993]{flex:1;overflow-y:auto;padding:1.25rem 1.5rem}.state-msg[data-v-ded59993]{text-align:center;color:#94a3b8;font-size:.875rem;padding:2rem 0;font-family:Inter,sans-serif}.state-msg.empty[data-v-ded59993]{display:flex;flex-direction:column;align-items:center;gap:.5rem}.state-msg.empty p[data-v-ded59993]{margin:0}.btn-link[data-v-ded59993]{background:none;border:none;color:#4f46e5;font-size:.875rem;font-weight:600;cursor:pointer;padding:0;margin:0;box-shadow:none;font-family:Inter,sans-serif}.btn-link[data-v-ded59993]:hover{text-decoration:underline;transform:none;box-shadow:none}.voices-list[data-v-ded59993]{display:flex;flex-direction:column;gap:.5rem}.voice-row[data-v-ded59993]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border:1px solid #e2e8f0;border-radius:10px;gap:.75rem}.voice-row[data-v-ded59993]:hover{background:#f8fafc}.voice-info[data-v-ded59993]{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.voice-type-badge[data-v-ded59993]{font-size:.65rem;font-weight:700;padding:.15rem .5rem;border-radius:99px;text-transform:uppercase;flex-shrink:0}.voice-type-badge.design[data-v-ded59993]{background:#ede9fe;color:#6d28d9}.voice-type-badge.clone[data-v-ded59993]{background:#fef3c7;color:#92400e}.voice-name[data-v-ded59993]{font-size:.875rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Inter,sans-serif}.voice-tags[data-v-ded59993]{display:flex;gap:.25rem;flex-wrap:wrap}.tag[data-v-ded59993]{font-size:.65rem;background:#f1f5f9;color:#64748b;padding:.1rem .4rem;border-radius:99px;font-family:Inter,sans-serif}.voice-actions[data-v-ded59993]{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.btn-preview-voice[data-v-ded59993]{display:flex;align-items:center;gap:.3rem;padding:.3rem .625rem;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.75rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s}.btn-preview-voice[data-v-ded59993]:hover{background:#f0fdf4;border-color:#86efac;color:#16a34a;transform:none;box-shadow:none}.btn-preview-voice.playing[data-v-ded59993]{background:#fef2f2;border-color:#fecaca;color:#dc2626}.btn-delete-voice[data-v-ded59993]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#94a3b8;cursor:pointer;padding:0;margin:0;box-shadow:none;transition:background .15s,border-color .15s,color .15s}.btn-delete-voice[data-v-ded59993]:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626;transform:none;box-shadow:none}.create-type-tabs[data-v-ded59993]{display:flex;gap:.375rem;margin-bottom:1rem}.create-tab[data-v-ded59993]{padding:.375rem .875rem;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.8125rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s}.create-tab[data-v-ded59993]:hover{background:#f8fafc;transform:none;box-shadow:none}.create-tab.active[data-v-ded59993]{background:#ede9fe;border-color:#a5b4fc;color:#4f46e5;font-weight:600}.create-form[data-v-ded59993]{display:flex;flex-direction:column;gap:.375rem}.create-form label[data-v-ded59993]{font-size:.875rem;font-weight:500;color:#374151;margin-top:.375rem;font-family:Inter,sans-serif}.req[data-v-ded59993]{color:#ef4444}.optional[data-v-ded59993]{font-weight:400;color:#94a3b8}.create-form input[data-v-ded59993],.create-form textarea[data-v-ded59993]{padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;color:#0f172a;background:#fff;font-family:Inter,sans-serif;box-shadow:none;margin-bottom:.25rem;width:100%;box-sizing:border-box;transition:border-color .15s}.create-form input[data-v-ded59993]:focus,.create-form textarea[data-v-ded59993]:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f}.create-form input[data-v-ded59993]::placeholder,.create-form textarea[data-v-ded59993]::placeholder{color:#94a3b8}.file-upload-area[data-v-ded59993]{display:flex;align-items:center;gap:.625rem;padding:.75rem 1rem;border:1.5px dashed #e2e8f0;border-radius:8px;cursor:pointer;background:#f8fafc;font-size:.875rem;color:#94a3b8;font-family:Inter,sans-serif;margin-bottom:.25rem;transition:border-color .15s,background .15s}.file-upload-area[data-v-ded59993]:hover{border-color:#a5b4fc;background:#f5f3ff;color:#6d28d9}.create-actions[data-v-ded59993]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.75rem}.btn-cancel[data-v-ded59993]{padding:.55rem 1.25rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.9rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-ded59993]:hover{background:#f8fafc;transform:none;box-shadow:none}.btn-create[data-v-ded59993]{display:flex;align-items:center;gap:.375rem;padding:.55rem 1.5rem;border-radius:8px;background:#4f46e5;border:none;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-create[data-v-ded59993]:hover{background:#4338ca;transform:none;box-shadow:none}.btn-create[data-v-ded59993]:disabled{opacity:.6;cursor:not-allowed}.form-error[data-v-ded59993]{font-size:.8rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.5rem .75rem;font-family:Inter,sans-serif}.confirm-overlay[data-v-ded59993]{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;border-radius:16px;z-index:10}.confirm-box[data-v-ded59993]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;max-width:320px;text-align:center;box-shadow:0 8px 24px #0000001f}.confirm-box p[data-v-ded59993]{margin:0 0 .375rem;font-size:.925rem;color:#0f172a;font-family:Inter,sans-serif}.confirm-hint[data-v-ded59993]{color:#94a3b8!important;font-size:.8rem!important;margin-bottom:1rem!important}.confirm-actions[data-v-ded59993]{display:flex;gap:.625rem;justify-content:center;margin-top:1rem}.btn-delete-confirm[data-v-ded59993]{padding:.5rem 1.25rem;border-radius:8px;background:#ef4444;border:none;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-delete-confirm[data-v-ded59993]:hover{background:#dc2626;transform:none;box-shadow:none}.btn-delete-confirm[data-v-ded59993]:disabled{opacity:.6;cursor:not-allowed}.spin[data-v-ded59993]{animation:spin-ded59993 1s linear infinite}@keyframes spin-ded59993{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.agp-wrapper[data-v-9743b07e]{position:relative;display:inline-block}.agp-trigger[data-v-9743b07e]{display:inline-flex;align-items:center;gap:.3rem;padding:.375rem .75rem;border-radius:7px;border:1px solid #c7d2fe;background:#ede9fe;color:#4f46e5;font-size:.78rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s;white-space:nowrap}.agp-trigger[data-v-9743b07e]:hover{background:#ddd6fe;border-color:#a5b4fc;transform:none;box-shadow:none}.agp-popover[data-v-9743b07e]{width:280px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 32px #00000024;padding:.875rem;display:flex;flex-direction:column;gap:.375rem;font-family:Inter,sans-serif;transform:translateY(calc(-100% - 8px))}.agp-header[data-v-9743b07e]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.agp-title[data-v-9743b07e]{display:flex;align-items:center;gap:.3rem;font-size:.8rem;font-weight:700;color:#4f46e5}.agp-close[data-v-9743b07e]{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;border:none;background:transparent;color:#94a3b8;cursor:pointer;padding:0;margin:0;box-shadow:none}.agp-close[data-v-9743b07e]:hover{background:#f1f5f9;color:#374151;transform:none;box-shadow:none}.agp-offline[data-v-9743b07e]{display:flex;flex-direction:column;gap:.5rem;background:#fef9c3;border:1px solid #fde047;border-radius:6px;padding:.625rem .75rem}.agp-offline-msg[data-v-9743b07e]{font-size:.8rem;color:#92400e;margin:0;font-weight:600}.agp-btn-wake[data-v-9743b07e]{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .75rem;background:#f59e0b;color:#fff;border:none;border-radius:6px;font-size:.78rem;font-weight:700;cursor:pointer;align-self:flex-start;font-family:Inter,sans-serif;transition:opacity .15s}.agp-btn-wake[data-v-9743b07e]:hover:not(:disabled){opacity:.85}.agp-btn-wake[data-v-9743b07e]:disabled{opacity:.6;cursor:not-allowed}.agp-label[data-v-9743b07e]{font-size:.75rem;font-weight:600;color:#374151;margin-top:.125rem}.agp-voice-row[data-v-9743b07e]{display:flex;gap:.375rem}.agp-voice-row .agp-select[data-v-9743b07e]{flex:1}.agp-manage-btn[data-v-9743b07e]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;flex-shrink:0;padding:0;margin:0;box-shadow:none;transition:background .15s,border-color .15s,color .15s}.agp-manage-btn[data-v-9743b07e]:hover{background:#ede9fe;border-color:#a5b4fc;color:#4f46e5;transform:none;box-shadow:none}.agp-select[data-v-9743b07e],.agp-textarea[data-v-9743b07e]{width:100%;padding:.5rem .625rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.8rem;color:#0f172a;background:#fff;font-family:Inter,sans-serif;box-shadow:none;box-sizing:border-box;transition:border-color .15s}.agp-select[data-v-9743b07e]:focus,.agp-textarea[data-v-9743b07e]:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 2px #4f46e51f}.agp-textarea[data-v-9743b07e]{resize:none}.agp-select[data-v-9743b07e]:disabled{background:#f8fafc;color:#94a3b8}.agp-audio[data-v-9743b07e]{width:100%;margin-top:.125rem}.agp-error[data-v-9743b07e]{font-size:.75rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:.4rem .625rem}.agp-actions[data-v-9743b07e]{display:flex;gap:.5rem;margin-top:.25rem}.agp-btn-generate[data-v-9743b07e]{display:flex;align-items:center;gap:.3rem;padding:.45rem .875rem;border-radius:7px;border:1px solid #a5b4fc;background:#ede9fe;color:#4f46e5;font-size:.78rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.agp-btn-generate[data-v-9743b07e]:hover:not(:disabled){background:#ddd6fe;transform:none;box-shadow:none}.agp-btn-generate[data-v-9743b07e]:disabled{opacity:.5;cursor:not-allowed}.agp-btn-use[data-v-9743b07e]{flex:1;padding:.45rem .875rem;border-radius:7px;border:none;background:#4f46e5;color:#fff;font-size:.78rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.agp-btn-use[data-v-9743b07e]:hover{background:#4338ca;transform:none;box-shadow:none}.agp-fade-enter-active[data-v-9743b07e],.agp-fade-leave-active[data-v-9743b07e]{transition:opacity .15s,transform .15s}.agp-fade-enter-from[data-v-9743b07e],.agp-fade-leave-to[data-v-9743b07e]{opacity:0;transform:translateY(4px)}.spin[data-v-9743b07e]{animation:spin-9743b07e 1s linear infinite}@keyframes spin-9743b07e{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-overlay[data-v-92554b1b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-92554b1b]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:520px;overflow:hidden;font-family:Inter,sans-serif;max-height:90vh;overflow-y:auto}.modal-header[data-v-92554b1b]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2[data-v-92554b1b]{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0;border:none;text-shadow:none;font-family:Inter,sans-serif}.btn-close[data-v-92554b1b]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none}.btn-close[data-v-92554b1b]:hover{background:#f1f5f9;color:#0f172a;transform:none;box-shadow:none}.type-selector[data-v-92554b1b]{display:flex;gap:.5rem;padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;flex-wrap:wrap}.type-option[data-v-92554b1b]{display:flex;align-items:center;gap:.5rem;padding:.45rem 1rem;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s}.type-option[data-v-92554b1b]:hover{background:#f8fafc;border-color:#c7d2fe;color:#4f46e5;transform:none;box-shadow:none}.type-option.active[data-v-92554b1b]{background:#ede9fe;border-color:#a5b4fc;color:#4f46e5;font-weight:600}.modal-form[data-v-92554b1b]{padding:1.5rem;display:flex;flex-direction:column;gap:.375rem}.modal-form label[data-v-92554b1b]{font-size:.875rem;font-weight:500;color:#374151;font-family:Inter,sans-serif}.optional[data-v-92554b1b]{font-weight:400;color:#94a3b8}.modal-form input[data-v-92554b1b],.modal-form textarea[data-v-92554b1b],.modal-form select[data-v-92554b1b]{width:100%;padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.925rem;color:#0f172a;background:#fff;box-sizing:border-box;margin-bottom:.5rem;font-family:Inter,sans-serif;box-shadow:none;transition:border-color .15s,box-shadow .15s}.modal-form input[data-v-92554b1b]:focus,.modal-form textarea[data-v-92554b1b]:focus,.modal-form select[data-v-92554b1b]:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526;background:#fff}.modal-form input[data-v-92554b1b]:disabled,.modal-form textarea[data-v-92554b1b]:disabled,.modal-form select[data-v-92554b1b]:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed}.modal-form input[data-v-92554b1b]::placeholder,.modal-form textarea[data-v-92554b1b]::placeholder{color:#94a3b8}.audio-tabs[data-v-92554b1b]{display:flex;gap:.375rem;margin-bottom:.75rem}.audio-tab[data-v-92554b1b]{display:flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.8125rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s}.audio-tab[data-v-92554b1b]:hover{background:#f8fafc}.audio-tab.active[data-v-92554b1b]{background:#f0fdf4;border-color:#86efac;color:#16a34a;font-weight:600}.voice-tabs[data-v-92554b1b]{display:flex;gap:.25rem;margin-bottom:.5rem}.voice-tab[data-v-92554b1b]{padding:.3rem .75rem;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.8rem;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s}.voice-tab[data-v-92554b1b]:hover{background:#f8fafc}.voice-tab.active[data-v-92554b1b]{background:#ede9fe;border-color:#a5b4fc;color:#4f46e5;font-weight:600}.voice-tab[data-v-92554b1b]:disabled{opacity:.4;cursor:not-allowed}.upload-row[data-v-92554b1b]{display:flex;align-items:center;gap:.5rem;margin-top:-.25rem;margin-bottom:.5rem;flex-wrap:wrap}.upload-hint[data-v-92554b1b]{font-size:.75rem;color:#94a3b8;font-family:Inter,sans-serif}.voxai-offline-banner[data-v-92554b1b]{background:#fef9c3;border:1px solid #fde047;border-radius:8px;padding:.625rem .875rem;font-size:.875rem;color:#713f12;margin-bottom:.5rem}.voxai-offline-banner code[data-v-92554b1b]{background:#00000014;border-radius:4px;padding:.1rem .35rem;font-size:.8rem}.audio-preview[data-v-92554b1b]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.audio-preview audio[data-v-92554b1b]{width:100%}.preview-hint[data-v-92554b1b]{font-size:.8rem;color:#64748b;margin:0}.gen-actions[data-v-92554b1b]{display:flex;gap:.75rem;margin-top:.25rem}.btn-preview[data-v-92554b1b]{display:flex;align-items:center;gap:.375rem;padding:.575rem 1.25rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.925rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-preview[data-v-92554b1b]:hover:not(:disabled){background:#f8fafc}.btn-preview[data-v-92554b1b]:disabled{opacity:.5;cursor:not-allowed}.spin[data-v-92554b1b]{animation:spin-92554b1b 1s linear infinite}@keyframes spin-92554b1b{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.form-error[data-v-92554b1b]{font-size:.875rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.625rem .875rem;font-family:Inter,sans-serif}.modal-actions[data-v-92554b1b]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.btn-cancel[data-v-92554b1b]{padding:.575rem 1.25rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.925rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-92554b1b]:hover{background:#f8fafc;transform:none;box-shadow:none}.btn-submit[data-v-92554b1b]{padding:.575rem 1.5rem;border-radius:8px;background:#4f46e5;border:none;color:#fff;font-size:.925rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-submit[data-v-92554b1b]:hover{background:#4338ca;transform:none;box-shadow:none;color:#fff}.btn-submit[data-v-92554b1b]:disabled{opacity:.6;cursor:not-allowed;transform:none}.picker-wrap[data-v-03bb863b]{display:flex;flex-direction:column;gap:.5rem}.picker-empty[data-v-03bb863b]{font-size:.8rem;color:#94a3b8;font-style:italic;padding:.25rem 0;font-family:Inter,sans-serif}.chips-row[data-v-03bb863b]{display:flex;flex-wrap:wrap;gap:.3rem}.letter-chip[data-v-03bb863b]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:7px;border:1px solid #e2e8f0;background:#f1f5f9;color:#374151;font-size:.95rem;font-weight:600;font-family:Courier New,monospace;cursor:pointer;padding:0;margin:0;box-shadow:none;text-shadow:none;transition:background .15s,border-color .15s,color .15s;-webkit-user-select:none;user-select:none}.letter-chip[data-v-03bb863b]:hover{background:#e2e8f0;transform:none;box-shadow:none}.letter-chip--hidden[data-v-03bb863b]{background:#fecdd3;border-color:#fda4af;color:#be123c}.letter-chip--hidden[data-v-03bb863b]:hover{background:#fda4af;border-color:#fb7185}.picker-preview[data-v-03bb863b]{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;margin-top:.1rem}.preview-label[data-v-03bb863b]{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-family:Inter,sans-serif;white-space:nowrap}.preview-word[data-v-03bb863b]{font-size:1rem;font-weight:700;font-family:Courier New,monospace;color:#0f172a;letter-spacing:.1em}.cpe-root[data-v-58d456dc]{display:flex;flex-direction:column;gap:0;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;background:#fff}.cpe-tabs[data-v-58d456dc]{display:flex;background:#f8fafc;border-bottom:1px solid #e2e8f0}.cpe-tab[data-v-58d456dc]{display:flex;align-items:center;gap:.35rem;padding:.5rem 1rem;font-size:.78rem;font-weight:500;font-family:Inter,sans-serif;color:#64748b;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;transition:color .15s,border-color .15s}.cpe-tab[data-v-58d456dc]:hover{color:#0f172a;transform:none}.cpe-tab.active[data-v-58d456dc]{color:#b45309;border-bottom-color:#b45309;font-weight:600}.cpe-textarea[data-v-58d456dc]{display:block;width:100%;box-sizing:border-box;padding:.875rem 1rem;font-size:.88rem;font-family:Inter,sans-serif;color:#1e293b;background:#fff;border:none;outline:none;resize:vertical;line-height:1.6;min-height:5rem}.cpe-mark-view[data-v-58d456dc]{padding:.875rem 1rem;display:flex;flex-direction:column;gap:.75rem;min-height:5rem}.cpe-empty[data-v-58d456dc]{font-size:.83rem;color:#94a3b8;margin:0;font-family:Inter,sans-serif}.cpe-tokens[data-v-58d456dc]{display:flex;flex-wrap:wrap;align-items:baseline;gap:0;line-height:2}.cpe-plain[data-v-58d456dc]{font-size:.92rem;color:#475569;font-family:Inter,sans-serif;white-space:pre-wrap}.cpe-word-btn[data-v-58d456dc]{display:inline;font-size:.92rem;font-family:Inter,sans-serif;color:#1e293b;background:transparent;border:none;border-bottom:1.5px dashed #cbd5e1;border-radius:3px;padding:0 1px;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;line-height:inherit;transition:background .12s,border-color .12s}.cpe-word-btn[data-v-58d456dc]:hover{background:#fef9c3;border-bottom-color:#f59e0b;transform:none}.cpe-word-btn--active[data-v-58d456dc]{background:#fef3c7;border-bottom-color:#d97706}.cpe-word-btn--gap[data-v-58d456dc]{background:#fef3c7;border-bottom:2px solid #b45309;border-radius:4px;padding:0 2px;font-weight:600}.cpe-word-btn--gap[data-v-58d456dc]:hover{background:#fde68a}.cpe-char--visible[data-v-58d456dc]{color:#1e293b}.cpe-char--hidden[data-v-58d456dc]{color:#b45309;text-decoration:underline}.cpe-picker-panel[data-v-58d456dc]{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:.75rem .875rem;display:flex;flex-direction:column;gap:.625rem}.cpe-picker-header[data-v-58d456dc]{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.cpe-picker-label[data-v-58d456dc]{font-size:.8rem;color:#78350f;font-family:Inter,sans-serif}.cpe-picker-actions[data-v-58d456dc]{display:flex;align-items:center;gap:.375rem}.cpe-btn-clear[data-v-58d456dc]{display:flex;align-items:center;gap:.25rem;padding:.2rem .6rem;font-size:.75rem;font-weight:500;font-family:Inter,sans-serif;color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:5px;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;transition:background .12s}.cpe-btn-clear[data-v-58d456dc]:hover{background:#fde68a;transform:none}.cpe-btn-close[data-v-58d456dc]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:5px;background:transparent;border:1px solid #fde68a;color:#92400e;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;padding:0;transition:background .12s}.cpe-btn-close[data-v-58d456dc]:hover{background:#fde68a;transform:none}.cpe-picker-hint[data-v-58d456dc]{font-size:.75rem;color:#a16207;margin:0;font-family:Inter,sans-serif;font-style:italic}.cpe-slide-enter-active[data-v-58d456dc],.cpe-slide-leave-active[data-v-58d456dc]{transition:opacity .15s,transform .15s}.cpe-slide-enter-from[data-v-58d456dc],.cpe-slide-leave-to[data-v-58d456dc]{opacity:0;transform:translateY(-4px)}.audio-recorder[data-v-a5d881bb]{display:inline-flex;flex-direction:column;gap:.3rem}.rec-idle-row[data-v-a5d881bb]{display:inline-flex;align-items:stretch;gap:0}.rec-idle-row .rec-btn[data-v-a5d881bb]{border-radius:7px}.rec-idle-row:has(.rec-device-wrap) .rec-btn[data-v-a5d881bb]{border-radius:7px 0 0 7px}.rec-device-wrap[data-v-a5d881bb]{position:relative}.rec-device-btn[data-v-a5d881bb]{display:inline-flex;align-items:center;justify-content:center;height:100%;padding:0 .3rem;border:1px solid #fecaca;border-left:none;border-radius:0 7px 7px 0;background:#fff5f5;color:#dc2626;cursor:pointer;margin:0;box-shadow:none;transition:background .15s}.rec-device-btn[data-v-a5d881bb]:hover{background:#fee2e2}.rec-btn[data-v-a5d881bb]{display:inline-flex;align-items:center;gap:.3rem;padding:.375rem .75rem;border-radius:7px;border:1px solid #fecaca;background:#fff5f5;color:#dc2626;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap;font-family:Inter,sans-serif;transition:background .15s,border-color .15s;margin:0;box-shadow:none}.rec-btn[data-v-a5d881bb]:hover{background:#fee2e2;border-color:#fca5a5}.rec-active[data-v-a5d881bb]{display:inline-flex;align-items:center;gap:.5rem;background:#fef2f2;border:1px solid #fecaca;border-radius:7px;padding:.35rem .65rem}.rec-dot[data-v-a5d881bb]{width:8px;height:8px;border-radius:50%;background:#dc2626;flex-shrink:0;animation:pulse-dot-a5d881bb 1s ease-in-out infinite}@keyframes pulse-dot-a5d881bb{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.75)}}.rec-time[data-v-a5d881bb]{font-size:.78rem;font-weight:700;color:#dc2626;font-family:Inter,monospace;min-width:34px}.rec-stop-btn[data-v-a5d881bb]{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .6rem;border-radius:5px;border:1px solid #fca5a5;background:#dc2626;color:#fff;font-size:.75rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;margin:0;box-shadow:none;transition:background .15s}.rec-stop-btn[data-v-a5d881bb]:hover{background:#b91c1c}.rec-preview[data-v-a5d881bb]{display:inline-flex;align-items:center;gap:.4rem;flex-wrap:wrap}.rec-audio[data-v-a5d881bb]{height:32px;max-width:180px}.rec-use-btn[data-v-a5d881bb]{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .7rem;border-radius:6px;border:1px solid #bbf7d0;background:#f0fdf4;color:#059669;font-size:.78rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;margin:0;box-shadow:none;transition:background .15s;white-space:nowrap}.rec-use-btn[data-v-a5d881bb]:hover:not(:disabled){background:#dcfce7;border-color:#86efac}.rec-use-btn[data-v-a5d881bb]:disabled{opacity:.6;cursor:not-allowed}.rec-redo-btn[data-v-a5d881bb]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none;transition:background .15s}.rec-redo-btn[data-v-a5d881bb]:hover:not(:disabled){background:#f1f5f9;color:#374151}.rec-redo-btn[data-v-a5d881bb]:disabled{opacity:.4;cursor:not-allowed}.rec-spinner[data-v-a5d881bb]{width:11px;height:11px;border:2px solid #bbf7d0;border-top-color:#059669;border-radius:50%;animation:spin-a5d881bb .6s linear infinite;flex-shrink:0}@keyframes spin-a5d881bb{to{transform:rotate(360deg)}}.rec-error[data-v-a5d881bb]{font-size:.72rem;color:#dc2626;margin:0;font-family:Inter,sans-serif}.rec-device-dropdown{min-width:240px;max-width:320px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001f,0 2px 6px #0000000f;overflow:hidden;padding:.3rem}.rec-device-option{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;padding:.5rem .625rem;font-size:.8rem;font-family:Inter,sans-serif;color:#374151;font-weight:500;background:transparent;border:none;border-radius:6px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .12s,color .12s}.rec-device-option:hover{background:#f1f5f9;color:#111827}.rec-device-option.active{background:#f0fdf4;color:#166534;font-weight:600}.rec-device-option.active:before{content:"";display:block;width:6px;height:6px;border-radius:50%;background:#22c55e;flex-shrink:0}.wal-overlay[data-v-2798a80f]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:1100;display:flex;align-items:center;justify-content:center;padding:1.5rem}.wal-modal[data-v-2798a80f]{background:#fff;border-radius:16px;box-shadow:0 24px 80px #0003;width:100%;max-width:800px;max-height:88vh;display:flex;flex-direction:column;overflow:hidden;font-family:Inter,sans-serif}.wal-header[data-v-2798a80f]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f1f5f9;gap:.75rem;flex-wrap:wrap}.wal-title[data-v-2798a80f]{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;color:#0f172a}.wal-chip[data-v-2798a80f]{font-size:.7rem;font-weight:700;padding:.15rem .5rem;border-radius:99px}.wal-chip.missing[data-v-2798a80f]{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.wal-chip.ok[data-v-2798a80f]{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.wal-header-right[data-v-2798a80f]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.wal-voxai-badge[data-v-2798a80f]{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:600;padding:.2rem .55rem;border-radius:99px}.wal-voxai-badge.online[data-v-2798a80f]{background:#dcfce7;color:#166534;border:1px solid #86efac}.wal-voxai-badge.offline[data-v-2798a80f]{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.wal-voxai-badge.checking[data-v-2798a80f]{background:#f8fafc;color:#94a3b8;border:1px solid #e2e8f0}.wal-voice-select[data-v-2798a80f]{padding:.35rem .625rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.78rem;color:#374151;background:#fff;cursor:pointer;max-width:150px;font-family:Inter,sans-serif}.wal-voice-select[data-v-2798a80f]:focus{outline:none;border-color:#4f46e5}.btn-gen-all[data-v-2798a80f]{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .875rem;border-radius:8px;border:none;background:#4f46e5;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;white-space:nowrap;margin:0;box-shadow:none;transition:background .15s}.btn-gen-all[data-v-2798a80f]:hover:not(:disabled){background:#4338ca}.btn-gen-all[data-v-2798a80f]:disabled{opacity:.5;cursor:not-allowed}.wal-close[data-v-2798a80f]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;padding:0;margin:0;transition:background .15s}.wal-close[data-v-2798a80f]:hover{background:#f1f5f9;color:#0f172a}.wal-progress-wrap[data-v-2798a80f]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1.25rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.wal-progress-bar[data-v-2798a80f]{flex:1;height:6px;background:#e2e8f0;border-radius:99px;overflow:hidden}.wal-progress-fill[data-v-2798a80f]{height:100%;background:#4f46e5;border-radius:99px;transition:width .3s ease}.wal-progress-label[data-v-2798a80f]{font-size:.75rem;font-weight:600;color:#4f46e5;white-space:nowrap}.wal-filters[data-v-2798a80f]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.625rem 1.25rem;border-bottom:1px solid #f1f5f9;background:#fafbfc;flex-wrap:wrap}.wal-filter-tabs[data-v-2798a80f]{display:flex;gap:.375rem}.wal-tab[data-v-2798a80f]{display:flex;align-items:center;gap:.35rem;padding:.3rem .75rem;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.78rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s;margin:0;box-shadow:none}.wal-tab[data-v-2798a80f]:hover{background:#f8fafc;border-color:#c7d2fe}.wal-tab.active[data-v-2798a80f]{background:#ede9fe;border-color:#a5b4fc;color:#4f46e5;font-weight:600}.wal-tab-count[data-v-2798a80f]{font-size:.65rem;font-weight:700;background:#e2e8f0;color:#64748b;padding:.05rem .4rem;border-radius:99px}.wal-tab.active .wal-tab-count[data-v-2798a80f]{background:#c7d2fe;color:#4338ca}.wal-right-controls[data-v-2798a80f]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.wal-search-wrap[data-v-2798a80f]{position:relative;display:flex;align-items:center}.wal-search-icon[data-v-2798a80f]{position:absolute;left:.5rem;color:#94a3b8;pointer-events:none}.wal-search[data-v-2798a80f]{padding:.35rem .625rem .35rem 1.75rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.8rem;color:#0f172a;background:#fff;font-family:Inter,sans-serif;width:170px}.wal-search[data-v-2798a80f]:focus{outline:none;border-color:#4f46e5}.wal-add-row[data-v-2798a80f]{display:flex;align-items:center;gap:.35rem}.wal-add-input[data-v-2798a80f]{padding:.35rem .625rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.8rem;color:#0f172a;background:#fff;font-family:Inter,sans-serif;width:140px}.wal-add-input[data-v-2798a80f]:focus{outline:none;border-color:#4f46e5}.btn-add[data-v-2798a80f]{display:inline-flex;align-items:center;gap:.25rem;padding:.35rem .7rem;border-radius:7px;border:1px solid #bbf7d0;background:#f0fdf4;color:#059669;font-size:.78rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;white-space:nowrap;margin:0;box-shadow:none;transition:background .15s}.btn-add[data-v-2798a80f]:hover:not(:disabled){background:#dcfce7}.btn-add[data-v-2798a80f]:disabled{opacity:.5;cursor:not-allowed}.wal-body[data-v-2798a80f]{flex:1;overflow-y:auto;padding:.25rem 0}.wal-row[data-v-2798a80f]{display:flex;align-items:center;gap:.75rem;padding:.6rem 1.25rem;border-bottom:1px solid #f8fafc;transition:background .1s}.wal-row[data-v-2798a80f]:hover{background:#fafbfc}.wal-row.row-has[data-v-2798a80f]{background:#fafffe}.wal-row.row-recording[data-v-2798a80f]{background:#fff7ed}.wal-row.row-pending[data-v-2798a80f]{background:#fffbeb}.wal-word[data-v-2798a80f]{font-size:.875rem;font-weight:600;color:#0f172a;flex:1}.wal-lang[data-v-2798a80f]{font-size:.68rem;font-weight:700;color:#94a3b8;background:#f1f5f9;border-radius:4px;padding:.1rem .35rem;text-transform:uppercase;flex-shrink:0}.status-has[data-v-2798a80f]{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:600;color:#059669;background:#f0fdf4;border:1px solid #bbf7d0;padding:.15rem .45rem;border-radius:4px;flex-shrink:0}.status-miss[data-v-2798a80f]{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:600;color:#d97706;background:#fffbeb;border:1px solid #fde68a;padding:.15rem .45rem;border-radius:4px;flex-shrink:0}.wal-actions[data-v-2798a80f]{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.act-btn[data-v-2798a80f]{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .6rem;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s;margin:0;box-shadow:none;white-space:nowrap}.act-btn[data-v-2798a80f]:disabled{opacity:.45;cursor:not-allowed}.act-btn.play[data-v-2798a80f]{background:#f0fdf4;border:1px solid #bbf7d0;color:#059669}.act-btn.play[data-v-2798a80f]:hover:not(:disabled){background:#dcfce7}.act-btn.gen[data-v-2798a80f]{background:#ede9fe;border:1px solid #c7d2fe;color:#4f46e5}.act-btn.gen[data-v-2798a80f]:hover:not(:disabled){background:#ddd6fe}.act-btn.rec[data-v-2798a80f]{background:#fff7ed;border:1px solid #fed7aa;color:#c2410c}.act-btn.rec[data-v-2798a80f]:hover:not(:disabled){background:#ffedd5}.act-btn.cancel[data-v-2798a80f]{background:#f1f5f9;border:1px solid #e2e8f0;color:#64748b;padding:.3rem .45rem}.act-btn.cancel[data-v-2798a80f]:hover{background:#e2e8f0}.act-btn.del[data-v-2798a80f]{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.3rem .45rem}.act-btn.del[data-v-2798a80f]:hover{background:#fee2e2}.wal-empty[data-v-2798a80f]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:4rem 2rem;color:#94a3b8;text-align:center}.wal-empty p[data-v-2798a80f]{margin:0;font-size:.875rem;font-family:Inter,sans-serif}.wal-empty-hint[data-v-2798a80f]{font-size:.8rem;max-width:440px;line-height:1.5}.spin[data-v-2798a80f]{animation:spin-2798a80f 1s linear infinite}@keyframes spin-2798a80f{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-overlay[data-v-7bbdb0ff]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-7bbdb0ff]{background:#fff;border-radius:16px;box-shadow:0 24px 64px #00000038;width:min(96vw,1100px);height:min(92vh,820px);display:flex;flex-direction:column;overflow:hidden;font-family:Inter,sans-serif}.modal-header[data-v-7bbdb0ff]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;flex-shrink:0;background:#fff}.header-info[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.625rem;min-width:0}.modal-title-input[data-v-7bbdb0ff]{font-size:1rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif;background:transparent;border:none;border-bottom:2px solid transparent;padding:2px 4px;outline:none;min-width:0;width:200px;transition:border-color .15s}.modal-title-input[data-v-7bbdb0ff]:hover{border-bottom-color:#e2e8f0}.modal-title-input[data-v-7bbdb0ff]:focus{border-bottom-color:#4f46e5}.q-count-badge[data-v-7bbdb0ff]{font-size:.75rem;font-weight:600;background:#f1f5f9;color:#64748b;padding:.2rem .6rem;border-radius:99px;white-space:nowrap;flex-shrink:0;font-family:Inter,sans-serif}.mode-toggle[data-v-7bbdb0ff]{display:flex;background:#f1f5f9;border-radius:8px;padding:.2rem;gap:.2rem;flex-shrink:0}.mode-btn[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border-radius:6px;border:none;background:transparent;color:#64748b;font-size:.8rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s,color .15s}.mode-btn[data-v-7bbdb0ff]:hover{background:#e2e8f0;color:#0f172a;transform:none;box-shadow:none}.mode-btn.active[data-v-7bbdb0ff]{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 3px #0000001a}.header-actions[data-v-7bbdb0ff]{display:flex;gap:.625rem;flex-shrink:0}.btn-cancel-modal[data-v-7bbdb0ff]{padding:.425rem 1rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.85rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel-modal[data-v-7bbdb0ff]:hover{background:#f8fafc;transform:none;box-shadow:none}.btn-save-modal[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.375rem;padding:.425rem 1.125rem;border-radius:8px;background:#4f46e5;border:none;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-save-modal[data-v-7bbdb0ff]:hover{background:#4338ca;transform:none;box-shadow:none;color:#fff}.btn-save-modal[data-v-7bbdb0ff]:disabled{opacity:.6;cursor:not-allowed;transform:none}.json-editor-wrap[data-v-7bbdb0ff]{flex:1;display:flex;flex-direction:column;padding:1.25rem 1.5rem;overflow:hidden}.json-hint[data-v-7bbdb0ff]{font-size:.85rem;color:#64748b;margin:0 0 .75rem;text-shadow:none;font-family:Inter,sans-serif}.json-textarea[data-v-7bbdb0ff]{flex:1;width:100%!important;background:#0f172a!important;color:#e2e8f0!important;border:1px solid #334155!important;border-radius:10px!important;font-family:Courier New,monospace!important;font-size:.875rem!important;line-height:1.6!important;padding:1rem!important;box-sizing:border-box!important;resize:none!important;margin:0!important;box-shadow:none!important}.json-textarea[data-v-7bbdb0ff]:focus{outline:none!important;border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e533!important}.visual-layout[data-v-7bbdb0ff]{flex:1;display:flex;overflow:hidden}.questions-sidebar[data-v-7bbdb0ff]{width:272px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid #e2e8f0;background:#fafafa;overflow:hidden}.sidebar-section-label[data-v-7bbdb0ff]{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;padding:.875rem 1rem .5rem;flex-shrink:0;font-family:Inter,sans-serif}.questions-list[data-v-7bbdb0ff]{flex:1;overflow-y:auto;padding:.25rem .625rem .625rem}.q-empty[data-v-7bbdb0ff]{padding:2rem 1rem;text-align:center;color:#94a3b8;font-size:.85rem;line-height:1.6;font-family:Inter,sans-serif}.q-empty p[data-v-7bbdb0ff]{margin:0;text-shadow:none;color:#94a3b8}.question-row[data-v-7bbdb0ff]{display:flex;align-items:flex-start;gap:.375rem;padding:.625rem .5rem;border-radius:8px;cursor:pointer;margin-bottom:.25rem;transition:background .15s;position:relative}.question-row[data-v-7bbdb0ff]:hover{background:#f1f5f9}.question-row--active[data-v-7bbdb0ff],.question-row--active[data-v-7bbdb0ff]:hover{background:#ede9fe}.question-row--dragging[data-v-7bbdb0ff]{opacity:.4}.q-grip[data-v-7bbdb0ff]{color:#cbd5e1;cursor:grab;flex-shrink:0;margin-top:.2rem}.question-row:hover .q-grip[data-v-7bbdb0ff]{color:#94a3b8}.q-row-content[data-v-7bbdb0ff]{flex:1;min-width:0}.q-row-top[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.375rem;margin-bottom:.25rem}.q-index[data-v-7bbdb0ff]{font-size:.7rem;font-weight:700;color:#94a3b8;font-family:Inter,sans-serif}.q-type-pill[data-v-7bbdb0ff]{font-size:.65rem;font-weight:600;padding:.15rem .45rem;border-radius:4px;text-transform:uppercase;letter-spacing:.04em;font-family:Inter,sans-serif}.q-preview[data-v-7bbdb0ff]{font-size:.78rem;color:#475569;margin:0;text-shadow:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Inter,sans-serif}.question-row--active .q-preview[data-v-7bbdb0ff]{color:#4f46e5}.q-delete-btn[data-v-7bbdb0ff]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:5px;background:transparent;border:none;color:#cbd5e1;cursor:pointer;padding:0;margin:0;box-shadow:none;opacity:0;transition:opacity .15s,background .15s,color .15s;margin-top:.1rem}.question-row:hover .q-delete-btn[data-v-7bbdb0ff]{opacity:1}.q-delete-btn[data-v-7bbdb0ff]:hover{background:#fee2e2;color:#ef4444;transform:none;box-shadow:none}.add-question-panel[data-v-7bbdb0ff]{border-top:1px solid #e2e8f0;padding:.875rem 1rem;flex-shrink:0;background:#fff}.add-panel-label[data-v-7bbdb0ff]{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;margin:0 0 .625rem;text-shadow:none;font-family:Inter,sans-serif}.type-grid[data-v-7bbdb0ff]{display:grid;grid-template-columns:1fr 1fr;gap:.375rem}.type-tile[data-v-7bbdb0ff]{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.5rem .25rem;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#374151;font-size:.7rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s}.type-tile[data-v-7bbdb0ff]:hover{background:#f8fafc;border-color:#c7d2fe;transform:none;box-shadow:none}.editor-panel[data-v-7bbdb0ff]{flex:1;overflow-y:auto;background:#fff}.editor-empty[data-v-7bbdb0ff]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:.75rem;padding:2rem;text-align:center}.editor-empty p[data-v-7bbdb0ff]{font-size:1rem;font-weight:500;color:#64748b;margin:0;text-shadow:none;font-family:Inter,sans-serif}.editor-empty span[data-v-7bbdb0ff]{font-size:.825rem;color:#94a3b8;font-family:Inter,sans-serif}.question-form[data-v-7bbdb0ff]{padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.375rem}.form-q-header[data-v-7bbdb0ff]{display:flex;align-items:center;justify-content:space-between;padding-bottom:1rem;border-bottom:1px solid #f1f5f9}.form-q-badge[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;padding:.4rem .875rem;border-radius:8px;font-family:Inter,sans-serif}.form-q-nav[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.375rem}.nav-arrow[data-v-7bbdb0ff]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none;text-shadow:none;transition:background .15s,border-color .15s,color .15s}.nav-arrow[data-v-7bbdb0ff]:hover:not(:disabled){background:#f1f5f9;border-color:#c7d2fe;color:#4f46e5;transform:none;box-shadow:none}.nav-arrow[data-v-7bbdb0ff]:disabled{opacity:.35;cursor:not-allowed;transform:none}.nav-pos[data-v-7bbdb0ff]{font-size:.8rem;font-weight:600;color:#0f172a;min-width:38px;text-align:center;font-family:Inter,sans-serif}.nav-total[data-v-7bbdb0ff]{color:#94a3b8;font-weight:400}.field-group[data-v-7bbdb0ff]{display:flex;flex-direction:column;gap:.5rem}.field-label[data-v-7bbdb0ff]{font-size:.8rem;font-weight:600;color:#374151;font-family:Inter,sans-serif}.label-hint[data-v-7bbdb0ff]{font-weight:400;color:#94a3b8;font-size:.78rem}.field-textarea[data-v-7bbdb0ff]{width:100%!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:8px!important;color:#0f172a!important;font-size:.9rem!important;font-family:Inter,sans-serif!important;padding:.65rem .875rem!important;resize:vertical!important;box-sizing:border-box!important;box-shadow:none!important;margin:0!important;line-height:1.55!important;transition:border-color .15s!important}.field-textarea[data-v-7bbdb0ff]:focus{outline:none!important;border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e51f!important}.field-textarea[data-v-7bbdb0ff]::placeholder{color:#94a3b8!important}.answers-ta[data-v-7bbdb0ff]{min-height:100px!important}.field-input[data-v-7bbdb0ff]{flex:1;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:8px!important;color:#0f172a!important;font-size:.875rem!important;font-family:Inter,sans-serif!important;padding:.575rem .875rem!important;box-sizing:border-box!important;box-shadow:none!important;margin:0!important;width:100%!important;transition:border-color .15s!important}.field-input[data-v-7bbdb0ff]:focus{outline:none!important;border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e51f!important}.field-input[data-v-7bbdb0ff]::placeholder{color:#94a3b8!important}.field-input--correct[data-v-7bbdb0ff]{border-color:#10b981!important;background:#f0fdf4!important}.mc-options[data-v-7bbdb0ff]{display:flex;flex-direction:column;gap:.5rem}.mc-option-row[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.5rem}.correct-radio[data-v-7bbdb0ff]{width:26px;height:26px;border-radius:50%;border:2px solid #e2e8f0;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;margin:0;box-shadow:none;color:#fff;transition:border-color .15s,background .15s}.correct-radio[data-v-7bbdb0ff]:hover{border-color:#4f46e5;transform:none;box-shadow:none}.correct-radio--on[data-v-7bbdb0ff]{border-color:#10b981;background:#10b981}.correct-radio--on[data-v-7bbdb0ff]:hover{border-color:#059669;background:#059669}.remove-item-btn[data-v-7bbdb0ff]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:#94a3b8;cursor:pointer;flex-shrink:0;padding:0;margin:0;box-shadow:none;text-shadow:none;transition:background .15s,color .15s}.remove-item-btn[data-v-7bbdb0ff]:hover{background:#fee2e2;color:#ef4444;transform:none;box-shadow:none}.btn-add-item[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.375rem;margin-top:.25rem;padding:.4rem .875rem;border-radius:7px;border:1px dashed #c7d2fe;background:transparent;color:#6366f1;font-size:.825rem;font-weight:500;cursor:pointer;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s;width:fit-content;margin-left:34px}.btn-add-item[data-v-7bbdb0ff]:hover{background:#ede9fe;border-color:#a5b4fc;transform:none;box-shadow:none}.matching-pairs[data-v-7bbdb0ff]{display:flex;flex-direction:column;gap:.5rem}.matching-cols-header[data-v-7bbdb0ff]{display:grid;grid-template-columns:1fr 24px 1fr 28px;gap:.5rem;padding-bottom:.25rem}.matching-cols-header span[data-v-7bbdb0ff]{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-family:Inter,sans-serif}.matching-pair-row[data-v-7bbdb0ff]{display:grid;grid-template-columns:1fr 24px 1fr 28px;gap:.5rem;align-items:center}.pair-arrow[data-v-7bbdb0ff]{display:flex;align-items:center;justify-content:center;color:#94a3b8}.unknown-type-msg[data-v-7bbdb0ff]{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:1.25rem}.unknown-type-msg p[data-v-7bbdb0ff]{margin:0;font-size:.9rem;color:#92400e;text-shadow:none;font-family:Inter,sans-serif}.wc-words-list[data-v-7bbdb0ff]{display:flex;flex-direction:column;gap:.75rem}.wc-word-block[data-v-7bbdb0ff]{display:flex;flex-direction:column;gap:.625rem;padding:.875rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.wc-word-header[data-v-7bbdb0ff]{display:flex;align-items:center;justify-content:space-between}.wc-word-num[data-v-7bbdb0ff]{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;font-family:Inter,sans-serif}.json-hint code[data-v-7bbdb0ff]{font-family:Courier New,monospace;font-size:.78rem;background:#f1f5f9;padding:.1rem .3rem;border-radius:4px;color:#0f172a}.cp-paragraphs-list[data-v-7bbdb0ff]{display:flex;flex-direction:column;gap:.75rem}.cp-paragraph-block[data-v-7bbdb0ff]{display:flex;flex-direction:column;gap:.5rem;padding:.875rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.cp-para-header[data-v-7bbdb0ff]{display:flex;align-items:center;justify-content:space-between}.cp-para-num[data-v-7bbdb0ff]{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#b45309;font-family:Inter,sans-serif}.audio-preview-row[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.5rem .75rem;background:#fdf4ff;border:1px solid #f0abfc;border-radius:8px}.audio-preview-label[data-v-7bbdb0ff]{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#be185d;font-family:Inter,sans-serif;flex-shrink:0}.audio-preview-player[data-v-7bbdb0ff]{flex:1;height:32px;min-width:0}.transcricao-meta[data-v-7bbdb0ff]{display:flex;gap:.4rem;margin-top:.4rem;flex-wrap:wrap}.meta-chip[data-v-7bbdb0ff]{font-size:.7rem;font-weight:600;font-family:Inter,sans-serif;background:var(--chip-bg, #fce7f3);color:var(--chip-color, #be185d);padding:.15rem .55rem;border-radius:99px;letter-spacing:.02em}.ic-preview[data-v-7bbdb0ff]{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:italic}.ic-options-list[data-v-7bbdb0ff]{display:flex;flex-direction:column;gap:.625rem}.ic-option-row[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.5rem}.ic-option-fields[data-v-7bbdb0ff]{flex:1;display:flex;flex-direction:column;gap:.375rem;min-width:0}.ic-url-upload-row[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.4rem}.ic-thumb-wrap[data-v-7bbdb0ff]{flex-shrink:0;width:40px;height:40px;border-radius:6px;overflow:hidden;border:1px solid #e2e8f0;background:#f8fafc}.ic-thumb[data-v-7bbdb0ff]{width:100%;height:100%;object-fit:cover}.btn-word-audio[data-v-7bbdb0ff]{display:inline-flex;align-items:center;gap:.35rem;padding:.425rem .875rem;border-radius:8px;border:1px solid #c7d2fe;background:#ede9fe;color:#4f46e5;font-size:.8rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;margin:0;box-shadow:none;transition:background .15s}.btn-word-audio[data-v-7bbdb0ff]:hover{background:#ddd6fe;transform:none;box-shadow:none}.voice-select-header[data-v-7bbdb0ff]{height:2rem;padding:0 .5rem;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc;color:#1e293b;font-size:.8rem;font-family:Inter,sans-serif;cursor:pointer;outline:none}.btn-gen-all[data-v-7bbdb0ff]{display:inline-flex;align-items:center;gap:.35rem;padding:.425rem .875rem;border-radius:8px;border:1px solid #fde68a;background:#fef3c7;color:#92400e;font-size:.8rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;margin:0;box-shadow:none;transition:background .15s;white-space:nowrap;min-width:7rem}.btn-gen-all[data-v-7bbdb0ff]:hover:not(:disabled){background:#fde68a;transform:none;box-shadow:none}.btn-gen-all[data-v-7bbdb0ff]:disabled{opacity:.7;cursor:default}.tile-audio-status[data-v-7bbdb0ff]{display:flex;align-items:center;flex-wrap:wrap;gap:.375rem;margin-top:.5rem}.tas-label[data-v-7bbdb0ff]{font-size:.72rem;font-weight:600;color:#64748b;font-family:Inter,sans-serif;flex-shrink:0}.tas-chip[data-v-7bbdb0ff]{font-size:.72rem;font-weight:600;padding:.15rem .45rem;border-radius:5px;font-family:Inter,sans-serif;cursor:default;transition:opacity .15s}.tas-chip.has-audio[data-v-7bbdb0ff]{background:#dcfce7;color:#166534;border:1px solid #86efac;cursor:pointer}.tas-chip.has-audio[data-v-7bbdb0ff]:hover{background:#bbf7d0}.tas-chip.no-audio[data-v-7bbdb0ff]{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.tas-open-lib[data-v-7bbdb0ff]{font-size:.72rem;font-weight:600;padding:.15rem .5rem;border-radius:5px;border:1px solid #c7d2fe;background:#ede9fe;color:#4f46e5;cursor:pointer;font-family:Inter,sans-serif;margin:0;box-shadow:none}.tas-open-lib[data-v-7bbdb0ff]:hover{background:#ddd6fe}.tas-gen-missing[data-v-7bbdb0ff]{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;font-weight:600;padding:.15rem .5rem;border-radius:5px;border:1px solid #fde68a;background:#fef3c7;color:#92400e;cursor:pointer;font-family:Inter,sans-serif;margin:0;box-shadow:none;transition:background .15s}.tas-gen-missing[data-v-7bbdb0ff]:hover:not(:disabled){background:#fde68a}.tas-gen-missing[data-v-7bbdb0ff]:disabled{opacity:.6;cursor:default}.audio-gen-row[data-v-7bbdb0ff]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.5rem;padding:.5rem .75rem;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px}.voice-select-sm[data-v-7bbdb0ff]{height:32px;padding:0 .5rem;border-radius:6px;border:1px solid #e2e8f0;background:#fff;font-size:.8rem;color:#374151;font-family:Inter,sans-serif;cursor:pointer;max-width:160px}.btn-gen-audio[data-v-7bbdb0ff]{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:6px;border:1px solid #a5b4fc;background:#ede9fe;color:#4f46e5;font-size:.8rem;font-weight:600;font-family:Inter,sans-serif;cursor:pointer;white-space:nowrap;box-shadow:none;transition:background .15s,border-color .15s}.btn-gen-audio[data-v-7bbdb0ff]:hover:not(:disabled){background:#ddd6fe;border-color:#818cf8}.btn-gen-audio[data-v-7bbdb0ff]:disabled{opacity:.45;cursor:default}.audio-text-sm[data-v-7bbdb0ff]{flex:1;min-width:140px;height:32px;padding:0 .5rem}@keyframes spin-7bbdb0ff{to{transform:rotate(360deg)}}.spin[data-v-7bbdb0ff]{animation:spin-7bbdb0ff .8s linear infinite}.modal-overlay[data-v-7f776ba8]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-7f776ba8]{background:#fff;border-radius:0;box-shadow:0 20px 60px #0003;width:100%;max-width:520px;overflow:hidden;font-family:Inter,sans-serif}.modal-header[data-v-7f776ba8]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2[data-v-7f776ba8]{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0;border:none;text-shadow:none;font-family:Inter,sans-serif}.btn-close[data-v-7f776ba8]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:0;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none}.btn-close[data-v-7f776ba8]:hover{background:#f1f5f9;color:#0f172a;transform:none;box-shadow:none}.modal-form[data-v-7f776ba8]{padding:1.5rem;display:flex;flex-direction:column;gap:.375rem}.modal-form label[data-v-7f776ba8]{font-size:.875rem;font-weight:500;color:#374151;font-family:Inter,sans-serif}.modal-form input[data-v-7f776ba8],.modal-form textarea[data-v-7f776ba8]{width:100%;padding:.625rem .875rem!important;border:1px solid #e2e8f0!important;border-radius:0!important;font-size:.925rem;color:#0f172a!important;background:#fff!important;box-sizing:border-box;margin-bottom:.5rem!important;font-family:Inter,sans-serif;box-shadow:none!important;transition:border-color .15s,box-shadow .15s;resize:vertical}.modal-form input[data-v-7f776ba8]:focus,.modal-form textarea[data-v-7f776ba8]:focus{outline:none;border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e526!important;background:#fff!important}.modal-form input[data-v-7f776ba8]::placeholder,.modal-form textarea[data-v-7f776ba8]::placeholder{color:#94a3b8}.form-error[data-v-7f776ba8]{font-size:.875rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:0;padding:.625rem .875rem;font-family:Inter,sans-serif}.modal-actions[data-v-7f776ba8]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.btn-cancel[data-v-7f776ba8]{padding:.575rem 1.25rem;border-radius:0;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.925rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-7f776ba8]:hover{background:#f8fafc;transform:none;box-shadow:none}.btn-submit[data-v-7f776ba8]{padding:.575rem 1.5rem;border-radius:0;background:#4f46e5;border:none;color:#fff;font-size:.925rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-submit[data-v-7f776ba8]:hover{background:#4338ca;transform:none;box-shadow:none;color:#fff}.btn-submit[data-v-7f776ba8]:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-overlay[data-v-8614bb0b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-8614bb0b]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:520px;overflow:hidden;font-family:Inter,sans-serif}.modal-header[data-v-8614bb0b]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2[data-v-8614bb0b]{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0;border:none;text-shadow:none;font-family:Inter,sans-serif}.btn-close[data-v-8614bb0b]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none}.btn-close[data-v-8614bb0b]:hover{background:#f1f5f9;color:#0f172a;transform:none;box-shadow:none}.modal-form[data-v-8614bb0b]{padding:1.5rem;display:flex;flex-direction:column;gap:.375rem}.modal-form label[data-v-8614bb0b]{font-size:.875rem;font-weight:500;color:#374151;font-family:Inter,sans-serif}.optional[data-v-8614bb0b]{font-weight:400;color:#94a3b8}.modal-form input[data-v-8614bb0b]{width:100%;padding:.625rem .875rem!important;border:1px solid #e2e8f0!important;border-radius:8px!important;font-size:.925rem;color:#0f172a!important;background:#fff!important;box-sizing:border-box;margin-bottom:.5rem!important;font-family:Inter,sans-serif;box-shadow:none!important;transition:border-color .15s,box-shadow .15s}.modal-form input[data-v-8614bb0b]:focus{outline:none;border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e526!important;background:#fff!important}.modal-form input[data-v-8614bb0b]::placeholder{color:#94a3b8}.upload-row[data-v-8614bb0b]{display:flex;align-items:center;gap:.5rem;margin-top:.25rem;margin-bottom:.5rem;flex-wrap:wrap}.upload-hint[data-v-8614bb0b]{font-size:.75rem;color:#94a3b8;font-family:Inter,sans-serif}.form-error[data-v-8614bb0b]{font-size:.875rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.625rem .875rem;font-family:Inter,sans-serif}.modal-actions[data-v-8614bb0b]{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.btn-cancel[data-v-8614bb0b]{padding:.575rem 1.25rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.925rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-8614bb0b]:hover{background:#f8fafc;transform:none;box-shadow:none}.btn-submit[data-v-8614bb0b]{padding:.575rem 1.5rem;border-radius:8px;background:#4f46e5;border:none;color:#fff;font-size:.925rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-submit[data-v-8614bb0b]:hover{background:#4338ca;transform:none;box-shadow:none;color:#fff}.btn-submit[data-v-8614bb0b]:disabled{opacity:.6;cursor:not-allowed;transform:none}.vocab-editor[data-v-fbee0ad8]{display:flex;flex-direction:column;gap:1.25rem;font-family:Inter,sans-serif}.editor-mode-bar[data-v-fbee0ad8]{display:flex;gap:.375rem;border-bottom:1px solid #e2e8f0;padding-bottom:.75rem}.mode-btn[data-v-fbee0ad8]{padding:.3rem .75rem;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.78rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s}.mode-btn[data-v-fbee0ad8]:hover{background:#f1f5f9;transform:none;box-shadow:none}.mode-btn--active[data-v-fbee0ad8]{background:#4f46e5;border-color:#4f46e5;color:#fff}.mode-btn--active[data-v-fbee0ad8]:hover{background:#4338ca}.json-mode[data-v-fbee0ad8]{display:flex;flex-direction:column;gap:.75rem}.json-hint[data-v-fbee0ad8]{margin:0;font-size:.8rem;color:#64748b;font-family:Inter,sans-serif}.json-textarea[data-v-fbee0ad8]{width:100%;min-height:260px;font-family:Courier New,Courier,monospace;font-size:.8rem;background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:8px!important;color:#0f172a!important;padding:.75rem!important;resize:vertical;margin:0!important;box-shadow:none!important}.json-error[data-v-fbee0ad8]{margin:0;font-size:.78rem;color:#ef4444;font-family:Inter,sans-serif}.btn-apply-json[data-v-fbee0ad8]{align-self:flex-start;padding:.45rem 1rem;border-radius:8px;border:1px solid #c7d2fe;background:#ede9fe;color:#4f46e5;font-size:.8rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-apply-json[data-v-fbee0ad8]:hover{background:#ddd6fe;transform:none;box-shadow:none}.field-group[data-v-fbee0ad8]{display:flex;flex-direction:column;gap:.375rem}.field-label[data-v-fbee0ad8]{font-size:.8rem;font-weight:600;color:#374151;font-family:Inter,sans-serif}.required[data-v-fbee0ad8]{color:#ef4444}.optional[data-v-fbee0ad8]{font-weight:400;color:#94a3b8}.field-hint[data-v-fbee0ad8]{font-size:.75rem;color:#94a3b8;line-height:1.45;font-family:Inter,sans-serif}.field-input[data-v-fbee0ad8]{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:8px!important;color:#0f172a!important;font-size:.875rem!important;font-family:Inter,sans-serif!important;padding:.575rem .875rem!important;box-sizing:border-box!important;box-shadow:none!important;margin:0!important;width:100%!important;transition:border-color .15s!important}.field-input[data-v-fbee0ad8]:focus{outline:none!important;border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e51f!important}.field-input[data-v-fbee0ad8]::placeholder{color:#94a3b8!important}.upload-row[data-v-fbee0ad8]{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.words-section[data-v-fbee0ad8]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.words-section-header[data-v-fbee0ad8]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid #e2e8f0}.words-count-label[data-v-fbee0ad8]{font-size:.78rem;font-weight:600;color:#64748b;font-family:Inter,sans-serif}.badge[data-v-fbee0ad8]{display:inline-flex;align-items:center;justify-content:center;background:#e2e8f0;color:#64748b;font-size:.7rem;font-weight:700;padding:.1rem .45rem;border-radius:99px;margin-left:.25rem}.btn-add-word[data-v-fbee0ad8]{display:flex;align-items:center;gap:.3rem;padding:.35rem .75rem;border-radius:7px;border:1px solid #c7d2fe;background:#fff;color:#4f46e5;font-size:.78rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s}.btn-add-word[data-v-fbee0ad8]:hover{background:#ede9fe;border-color:#a5b4fc;transform:none;box-shadow:none}.words-empty[data-v-fbee0ad8]{display:flex;flex-direction:column;align-items:center;gap:.625rem;padding:2rem 1rem;text-align:center}.words-empty p[data-v-fbee0ad8]{margin:0;font-size:.875rem;color:#94a3b8;text-shadow:none;font-family:Inter,sans-serif}.words-scroll[data-v-fbee0ad8]{display:flex;gap:.5rem;padding:.875rem 1rem;overflow-x:auto;align-items:flex-start;scrollbar-width:thin;scrollbar-color:#e2e8f0 transparent}.word-chip[data-v-fbee0ad8]{flex-shrink:0;display:flex;flex-direction:column;align-items:center;width:76px;background:#fff;border:2px solid #e2e8f0;border-radius:10px;padding:.5rem .375rem;cursor:pointer;position:relative;transition:border-color .15s,box-shadow .15s;text-align:center;margin:0;box-shadow:none;text-shadow:none}.word-chip[data-v-fbee0ad8]:hover{border-color:#c7d2fe;transform:none;box-shadow:0 2px 8px #00000014}.word-chip--active[data-v-fbee0ad8]{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51f}.chip-img[data-v-fbee0ad8]{width:48px;height:36px;border-radius:6px;overflow:hidden;background:#f1f5f9;display:flex;align-items:center;justify-content:center;margin-bottom:.3rem}.chip-img img[data-v-fbee0ad8]{width:100%;height:100%;object-fit:cover}.chip-word[data-v-fbee0ad8]{font-size:.68rem;font-weight:600;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;font-family:Inter,sans-serif}.chip-remove[data-v-fbee0ad8]{position:absolute;top:-5px;right:-5px;width:16px;height:16px;border-radius:50%;background:#ef4444;border:none;color:#fff;font-size:.55rem;cursor:pointer;display:none;align-items:center;justify-content:center;padding:0;margin:0;box-shadow:0 1px 3px #0003}.word-chip:hover .chip-remove[data-v-fbee0ad8]{display:flex}.card-editor[data-v-fbee0ad8]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.card-editor-header[data-v-fbee0ad8]{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-bottom:1px solid #f1f5f9;background:#fafafa}.card-editor-title[data-v-fbee0ad8]{font-size:.82rem;color:#64748b;font-family:Inter,sans-serif}.card-editor-title strong[data-v-fbee0ad8]{color:#0f172a}.card-nav[data-v-fbee0ad8]{display:flex;align-items:center;gap:.375rem}.nav-btn[data-v-fbee0ad8]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none;text-shadow:none;transition:background .15s,border-color .15s}.nav-btn[data-v-fbee0ad8]:hover:not(:disabled){background:#f1f5f9;border-color:#c7d2fe;color:#4f46e5;transform:none;box-shadow:none}.nav-btn[data-v-fbee0ad8]:disabled{opacity:.3;cursor:not-allowed;transform:none}.nav-pos[data-v-fbee0ad8]{font-size:.78rem;font-weight:600;color:#0f172a;min-width:36px;text-align:center;font-family:Inter,sans-serif}.nav-total[data-v-fbee0ad8]{font-weight:400;color:#94a3b8}.card-layout[data-v-fbee0ad8]{display:flex;gap:1.5rem;padding:1.25rem}.card-preview[data-v-fbee0ad8]{flex-shrink:0;width:130px;display:flex;flex-direction:column;align-items:center;gap:.4rem}.preview-img-box[data-v-fbee0ad8]{width:110px;height:80px;border-radius:10px;overflow:hidden;background:#f1f5f9;display:flex;align-items:center;justify-content:center;position:relative;border:1px solid #e2e8f0}.preview-img-box img[data-v-fbee0ad8]{width:100%;height:100%;object-fit:cover}.preview-img-placeholder[data-v-fbee0ad8]{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.preview-audio-badge[data-v-fbee0ad8]{position:absolute;top:4px;right:4px;background:#4f46e5;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#fff}.preview-word[data-v-fbee0ad8]{font-size:.925rem;font-weight:700;color:#0f172a;margin:0;text-shadow:none;text-align:center;font-family:Inter,sans-serif}.preview-translation[data-v-fbee0ad8]{font-size:.78rem;color:#64748b;margin:0;text-shadow:none;text-align:center;font-family:Inter,sans-serif}.card-fields[data-v-fbee0ad8]{flex:1;display:flex;flex-direction:column;gap:.875rem;min-width:0}.fields-row[data-v-fbee0ad8]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.input-with-thumb[data-v-fbee0ad8]{display:flex;gap:.5rem;align-items:center}.input-with-thumb .field-input[data-v-fbee0ad8]{flex:1;width:auto!important}.img-thumb[data-v-fbee0ad8]{width:38px;height:38px;border-radius:6px;overflow:hidden;background:#f1f5f9;flex-shrink:0;border:1px solid #e2e8f0}.img-thumb img[data-v-fbee0ad8]{width:100%;height:100%;object-fit:cover}.input-with-action[data-v-fbee0ad8]{display:flex;gap:.5rem;align-items:center}.input-with-action .field-input[data-v-fbee0ad8]{flex:1;width:auto!important}.btn-test-audio[data-v-fbee0ad8]{display:flex;align-items:center;gap:.3rem;padding:.475rem .875rem;border-radius:8px;border:1px solid #bbf7d0;background:#f0fdf4;color:#059669;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s,border-color .15s}.btn-test-audio[data-v-fbee0ad8]:hover{background:#dcfce7;border-color:#86efac;transform:none;box-shadow:none}.modal-overlay[data-v-bf10d31b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-bf10d31b]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:720px;max-height:90vh;overflow-y:auto;font-family:Inter,sans-serif;display:flex;flex-direction:column}.modal-header[data-v-bf10d31b]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;position:sticky;top:0;background:#fff;z-index:1}.modal-header h2[data-v-bf10d31b]{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0;border:none;text-shadow:none;font-family:Inter,sans-serif}.btn-close[data-v-bf10d31b]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none}.btn-close[data-v-bf10d31b]:hover{background:#f1f5f9;color:#0f172a;transform:none;box-shadow:none}.modal-body[data-v-bf10d31b]{padding:1.5rem;display:flex;flex-direction:column;gap:1rem;flex:1}.title-field[data-v-bf10d31b]{display:flex;flex-direction:column;gap:.375rem}.title-field label[data-v-bf10d31b]{font-size:.875rem;font-weight:500;color:#374151;font-family:Inter,sans-serif}.title-field input[data-v-bf10d31b]{width:100%;padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.925rem;color:#0f172a;background:#fff;box-sizing:border-box;font-family:Inter,sans-serif;box-shadow:none;transition:border-color .15s,box-shadow .15s}.title-field input[data-v-bf10d31b]:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526}.title-field input[data-v-bf10d31b]::placeholder{color:#94a3b8}.form-error[data-v-bf10d31b]{font-size:.875rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.625rem .875rem;font-family:Inter,sans-serif}.modal-actions[data-v-bf10d31b]{display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid #e2e8f0;position:sticky;bottom:0;background:#fff}.btn-cancel[data-v-bf10d31b]{padding:.575rem 1.25rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.925rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-bf10d31b]:hover{background:#f8fafc;transform:none;box-shadow:none}.btn-submit[data-v-bf10d31b]{padding:.575rem 1.5rem;border-radius:8px;background:#4f46e5;border:none;color:#fff;font-size:.925rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-submit[data-v-bf10d31b]:hover{background:#4338ca;transform:none;box-shadow:none;color:#fff}.btn-submit[data-v-bf10d31b]:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-overlay[data-v-8860719e]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-8860719e]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:580px;max-height:90vh;display:flex;flex-direction:column;font-family:Inter,sans-serif;overflow:hidden}.modal-header[data-v-8860719e]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;flex-shrink:0}.modal-header h2[data-v-8860719e]{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0;border:none;text-shadow:none;font-family:Inter,sans-serif}.btn-close[data-v-8860719e]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none}.btn-close[data-v-8860719e]:hover{background:#f1f5f9;color:#0f172a;transform:none;box-shadow:none}.modal-body[data-v-8860719e]{padding:1.25rem 1.5rem;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:1rem}.field-group[data-v-8860719e]{display:flex;flex-direction:column;gap:.3rem}.field-group label[data-v-8860719e]{font-size:.875rem;font-weight:500;color:#374151}.field-group input[data-v-8860719e],.field-group select[data-v-8860719e]{width:100%;padding:.6rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;color:#0f172a;background:#fff;box-sizing:border-box;font-family:Inter,sans-serif;box-shadow:none;transition:border-color .15s}.field-group input[data-v-8860719e]:focus,.field-group select[data-v-8860719e]:focus{outline:none;border-color:#0d9488;box-shadow:0 0 0 3px #0d948826}.optional[data-v-8860719e]{font-weight:400;color:#94a3b8}.required[data-v-8860719e]{color:#ef4444}.sentences-section[data-v-8860719e]{display:flex;flex-direction:column;gap:.75rem}.sentences-header[data-v-8860719e]{display:flex;align-items:center;justify-content:space-between}.sentences-label[data-v-8860719e]{font-size:.9rem;font-weight:600;color:#0f172a}.btn-add-sentence[data-v-8860719e]{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .75rem;background:#f0fdfa;border:1px solid #99f6e4;border-radius:8px;color:#0d9488;font-size:.8rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;margin:0;box-shadow:none;transition:background .15s}.btn-add-sentence[data-v-8860719e]:hover{background:#ccfbf1;transform:none;box-shadow:none}.sentence-item[data-v-8860719e]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.875rem 1rem;display:flex;flex-direction:column;gap:.6rem}.sentence-item-header[data-v-8860719e]{display:flex;align-items:center;justify-content:space-between}.sentence-num[data-v-8860719e]{font-size:.7rem;font-weight:700;font-family:Fira Code,monospace;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}.btn-remove-sentence[data-v-8860719e]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;padding:0;margin:0;box-shadow:none}.btn-remove-sentence[data-v-8860719e]:hover{background:#fef2f2;color:#ef4444;transform:none;box-shadow:none}.sentences-empty[data-v-8860719e]{font-size:.875rem;color:#94a3b8;text-align:center;padding:1.5rem;background:#f8fafc;border:1px dashed #e2e8f0;border-radius:10px}.form-error[data-v-8860719e]{font-size:.875rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.625rem .875rem}.modal-footer[data-v-8860719e]{display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid #e2e8f0;flex-shrink:0}.btn-cancel[data-v-8860719e]{padding:.575rem 1.25rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.9rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-8860719e]:hover{background:#f8fafc;transform:none;box-shadow:none}.btn-submit[data-v-8860719e]{padding:.575rem 1.5rem;border-radius:8px;background:#0d9488;border:none;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-submit[data-v-8860719e]:hover{background:#0f766e;transform:none;box-shadow:none}.btn-submit[data-v-8860719e]:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-overlay[data-v-f9510005]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-container[data-v-f9510005]{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:680px;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;font-family:Inter,sans-serif}.modal-header[data-v-f9510005]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;flex-shrink:0}.modal-header h2[data-v-f9510005]{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0}.btn-close[data-v-f9510005]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:0}.btn-close[data-v-f9510005]:hover{background:#f1f5f9;color:#0f172a}.loading-state[data-v-f9510005]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:3rem 1.5rem;color:#64748b;font-size:.875rem;font-family:Inter,sans-serif}.loading-spinner[data-v-f9510005]{width:28px;height:28px;border:3px solid #e2e8f0;border-top-color:#4f46e5;border-radius:50%;animation:spin-f9510005 .7s linear infinite}@keyframes spin-f9510005{to{transform:rotate(360deg)}}.modal-body[data-v-f9510005]{flex:1;min-height:0;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.deck-meta[data-v-f9510005]{display:flex;flex-direction:column;gap:.75rem}.field-group[data-v-f9510005]{display:flex;flex-direction:column;gap:.3rem}.field-group label[data-v-f9510005]{font-size:.85rem;font-weight:500;color:#374151}.optional[data-v-f9510005]{font-weight:400;color:#94a3b8}.field-group input[data-v-f9510005]{padding:.575rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;color:#0f172a;font-family:Inter,sans-serif;transition:border-color .15s,box-shadow .15s}.field-group input[data-v-f9510005]:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b26}.cards-header[data-v-f9510005]{display:flex;align-items:center;justify-content:space-between}.cards-eyebrow[data-v-f9510005]{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#64748b;display:flex;align-items:center;gap:.375rem}.cards-header-left[data-v-f9510005]{display:flex;align-items:center;gap:.75rem}.btn-toggle-cards[data-v-f9510005]{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:6px;background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;font-size:.75rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:all .15s}.btn-toggle-cards[data-v-f9510005]:hover{background:#e2e8f0;color:#0f172a}.btn-add-card[data-v-f9510005]{display:inline-flex;align-items:center;gap:.375rem;padding:.425rem .875rem;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;font-size:.85rem;font-weight:500;color:#92400e;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-add-card[data-v-f9510005]:hover{background:#fef3c7}.cards-empty[data-v-f9510005]{padding:1.5rem;text-align:center;border:1px dashed #e2e8f0;border-radius:8px;color:#94a3b8;font-size:.875rem}.cards-list[data-v-f9510005]{display:flex;flex-direction:column;gap:.5rem}.card-row[data-v-f9510005]{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;transition:border-color .15s,opacity .2s}.card-row.expanded[data-v-f9510005]{border-color:#f59e0b}.card-row.dragging[data-v-f9510005]{opacity:.45}.card-row-header[data-v-f9510005]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;background:#fff;-webkit-user-select:none;user-select:none;transition:background .15s}.card-row-header[data-v-f9510005]:hover{background:#fffbeb}.drag-handle[data-v-f9510005]{color:#cbd5e1;cursor:grab;flex-shrink:0;transition:color .15s}.drag-handle[data-v-f9510005]:hover{color:#94a3b8}.card-num[data-v-f9510005]{font-family:Inter,sans-serif;font-size:.75rem;font-weight:700;color:#94a3b8;width:20px;flex-shrink:0}.card-preview[data-v-f9510005]{flex:1;display:flex;align-items:center;gap:.5rem;min-width:0;overflow:hidden}.card-preview-text[data-v-f9510005]{font-size:.875rem;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:38%}.card-preview-text--back[data-v-f9510005]{color:#f59e0b}.card-sep[data-v-f9510005]{font-size:.75rem;color:#cbd5e1;flex-shrink:0}.card-row-actions[data-v-f9510005]{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.icon-btn[data-v-f9510005]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:6px;cursor:pointer;padding:0;color:#94a3b8;transition:background .15s,color .15s}.icon-btn[data-v-f9510005]:hover:not(:disabled){background:#f1f5f9;color:#374151}.icon-btn.danger[data-v-f9510005]:hover:not(:disabled){background:#fef2f2;color:#ef4444}.icon-btn[data-v-f9510005]:disabled{opacity:.3;cursor:not-allowed}.expand-icon[data-v-f9510005]{color:#94a3b8;transition:transform .2s ease}.expand-icon.rotated[data-v-f9510005]{transform:rotate(180deg)}.card-row-body[data-v-f9510005]{border-top:1px solid #f1f5f9;padding:1.25rem;background:#fafafa}.card-sides[data-v-f9510005]{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:start}.card-side[data-v-f9510005]{display:flex;flex-direction:column;gap:.625rem}.side-label[data-v-f9510005]{margin-bottom:.25rem}.side-badge[data-v-f9510005]{display:inline-block;padding:.15rem .5rem;border-radius:5px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.side-badge--front[data-v-f9510005]{background:#e0f2fe;color:#0369a1}.side-badge--back[data-v-f9510005]{background:#fef3c7;color:#92400e}.side-divider[data-v-f9510005]{display:flex;align-items:center;padding-top:2.5rem;color:#cbd5e1}.upload-row[data-v-f9510005]{display:flex;align-items:center;gap:.5rem;margin-top:.25rem;flex-wrap:wrap}.upload-hint[data-v-f9510005]{font-size:.72rem;color:#94a3b8;font-family:Inter,sans-serif}.img-preview[data-v-f9510005]{width:100%;max-height:80px;object-fit:cover;border-radius:6px;border:1px solid #e2e8f0;margin-top:.25rem}.assign-section[data-v-f9510005]{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden;flex-shrink:0}.assign-header[data-v-f9510005]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:.875rem;font-weight:600;color:#374151}.assign-count[data-v-f9510005]{margin-left:auto;font-size:.75rem;font-weight:500;color:#4f46e5;background:#ede9fe;border-radius:20px;padding:.125rem .625rem}.assign-search[data-v-f9510005]{display:block;width:100%;padding:.625rem 1rem!important;border:none!important;border-bottom:1px solid #e2e8f0!important;border-radius:0!important;font-size:.875rem;color:#0f172a!important;background:#fff!important;box-sizing:border-box;box-shadow:none!important;font-family:Inter,sans-serif}.assign-search[data-v-f9510005]:focus{outline:none;border-bottom-color:#4f46e5!important;box-shadow:none!important}.assign-list[data-v-f9510005]{max-height:220px;overflow-y:auto}.assign-item[data-v-f9510005]{display:flex;align-items:center;gap:.75rem;padding:.625rem 1rem;cursor:pointer;transition:background .1s;border-bottom:1px solid #f1f5f9}.assign-item[data-v-f9510005]:last-child{border-bottom:none}.assign-item[data-v-f9510005]:hover{background:#f8fafc}.assign-item.assigned[data-v-f9510005]{background:#f5f3ff}.assign-item.assigned[data-v-f9510005]:hover{background:#ede9fe}.assign-avatar[data-v-f9510005]{width:28px;height:28px;border-radius:50%;background:#e2e8f0;color:#475569;font-size:.75rem;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}.assign-item.assigned .assign-avatar[data-v-f9510005]{background:#4f46e5;color:#fff}.assign-name[data-v-f9510005]{font-size:.875rem;color:#0f172a;flex:1}.assign-check[data-v-f9510005]{width:18px;height:18px;border-radius:4px;border:1.5px solid #d1d5db;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;background:#fff;transition:background .1s,border-color .1s}.assign-item.assigned .assign-check[data-v-f9510005]{background:#4f46e5;border-color:#4f46e5}.assign-empty[data-v-f9510005]{padding:1.25rem;text-align:center;font-size:.875rem;color:#94a3b8}.form-error[data-v-f9510005]{font-size:.875rem;color:#ef4444;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.625rem .875rem}.modal-actions[data-v-f9510005]{display:flex;gap:.75rem;justify-content:flex-end;padding:1.25rem 1.5rem;border-top:1px solid #e2e8f0;flex-shrink:0}.btn-cancel[data-v-f9510005]{padding:.575rem 1.25rem;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#374151;font-size:.925rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif}.btn-cancel[data-v-f9510005]:hover{background:#f8fafc}.btn-submit[data-v-f9510005]{padding:.575rem 1.5rem;border-radius:8px;background:#f59e0b;border:none;color:#fff;font-size:.925rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-submit[data-v-f9510005]:hover:not(:disabled){background:#d97706}.btn-submit[data-v-f9510005]:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 540px){.card-sides[data-v-f9510005]{grid-template-columns:1fr}.side-divider[data-v-f9510005]{display:none}}.modal-overlay[data-v-40b6fbea]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal[data-v-40b6fbea]{background:#fff;border-radius:16px;width:100%;max-width:560px;box-shadow:0 20px 60px #0000002e;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.modal-header[data-v-40b6fbea]{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid #f1f5f9}.modal-title[data-v-40b6fbea]{font-size:1.0625rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif;margin:0 0 .2rem}.modal-subtitle[data-v-40b6fbea]{font-size:.8125rem;color:#64748b;font-family:Inter,sans-serif;margin:0}.btn-close[data-v-40b6fbea]{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.25rem;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;flex-shrink:0}.btn-close[data-v-40b6fbea]:hover{background:#f1f5f9;color:#374151}.modal-body[data-v-40b6fbea]{padding:1.25rem 1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.25rem}.tag-section[data-v-40b6fbea]{display:flex;flex-direction:column;gap:.5rem}.section-label[data-v-40b6fbea]{display:flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-family:Inter,sans-serif}.chips-row[data-v-40b6fbea]{display:flex;flex-wrap:wrap;gap:.35rem;min-height:1.5rem}.chip[data-v-40b6fbea]{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .5rem .2rem .625rem;border-radius:20px;font-size:.8rem;font-weight:500;font-family:Inter,sans-serif}.chip-grammar[data-v-40b6fbea]{background:#ede9fe;color:#5b21b6}.chip-vocab[data-v-40b6fbea]{background:#d1fae5;color:#065f46}.chip-remove[data-v-40b6fbea]{background:none;border:none;cursor:pointer;padding:1px;display:flex;align-items:center;opacity:.6;color:inherit;border-radius:50%;transition:opacity .15s}.chip-remove[data-v-40b6fbea]:hover{opacity:1}.tag-input-wrapper[data-v-40b6fbea]{position:relative}.tag-input[data-v-40b6fbea]{width:100%;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#0f172a;font-family:Inter,sans-serif;background:#f8fafc;box-shadow:none;margin:0;transition:border-color .15s,box-shadow .15s,background .15s;box-sizing:border-box}.tag-input[data-v-40b6fbea]:focus{outline:none;border-color:#7c3aed;background:#fff;box-shadow:0 0 0 3px #7c3aed1a}.tag-input[data-v-40b6fbea]::placeholder{color:#94a3b8}.suggestions[data-v-40b6fbea]{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 8px 24px #0000001a;list-style:none;margin:0;padding:.25rem;z-index:10;max-height:200px;overflow-y:auto}.suggestion-item[data-v-40b6fbea]{padding:.45rem .75rem;border-radius:6px;font-size:.875rem;color:#374151;font-family:Inter,sans-serif;cursor:pointer;transition:background .1s}.suggestion-item[data-v-40b6fbea]:hover{background:#f5f3ff;color:#5b21b6}.toggle-group[data-v-40b6fbea]{display:flex;flex-wrap:wrap;gap:.4rem}.toggle-btn[data-v-40b6fbea]{padding:.35rem .875rem;border:1.5px solid #e2e8f0;border-radius:20px;background:#fff;color:#64748b;font-size:.8125rem;font-weight:500;font-family:Inter,sans-serif;cursor:pointer;margin:0;transition:border-color .15s,background .15s,color .15s}.toggle-btn[data-v-40b6fbea]:hover{border-color:#a5b4fc;color:#4f46e5;background:#f5f3ff}.toggle-btn.active[data-v-40b6fbea]{border-color:#7c3aed;background:#ede9fe;color:#5b21b6;font-weight:600}.modal-footer[data-v-40b6fbea]{display:flex;justify-content:flex-end;gap:.625rem;padding:1rem 1.5rem;border-top:1px solid #f1f5f9}.btn-primary[data-v-40b6fbea]{display:inline-flex;align-items:center;gap:.375rem;padding:.55rem 1.125rem;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-primary[data-v-40b6fbea]:hover{background:#4338ca}.btn-primary[data-v-40b6fbea]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-40b6fbea]{display:inline-flex;align-items:center;gap:.375rem;padding:.55rem 1.125rem;background:#fff;color:#374151;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-secondary[data-v-40b6fbea]:hover{background:#f8fafc}.modal-overlay[data-v-81e0d048]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-81e0d048]{background:#fff;border-radius:10px;width:420px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000002e}.modal-header[data-v-81e0d048]{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid #f0f0f0}.modal-title[data-v-81e0d048]{font-size:15px;font-weight:600;margin:0 0 2px;color:#111}.modal-subtitle[data-v-81e0d048]{font-size:12px;color:#666;margin:0}.btn-close[data-v-81e0d048]{background:none;border:none;cursor:pointer;color:#888;padding:2px;display:flex;align-items:center}.btn-close[data-v-81e0d048]:hover{color:#333}.modal-body[data-v-81e0d048]{padding:16px 20px;overflow-y:auto;flex:1}.module-meta[data-v-81e0d048]{font-size:11px;color:#888;margin:0 0 14px}.field-label[data-v-81e0d048]{display:block;font-size:12px;font-weight:600;color:#444;margin-bottom:8px}.course-list[data-v-81e0d048]{display:flex;flex-direction:column;gap:6px}.course-option[data-v-81e0d048]{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:7px;border:1.5px solid #e5e7eb;cursor:pointer;transition:border-color .15s,background .15s}.course-option[data-v-81e0d048]:hover{border-color:#a5b4fc;background:#f5f3ff}.course-option.selected[data-v-81e0d048]{border-color:#6366f1;background:#eef2ff}.course-option input[data-v-81e0d048]{accent-color:#6366f1}.course-name[data-v-81e0d048]{flex:1;font-size:13px;font-weight:500;color:#222}.course-level[data-v-81e0d048]{font-size:11px;font-weight:600;color:#6366f1;background:#eef2ff;padding:1px 6px;border-radius:4px}.empty-msg[data-v-81e0d048]{color:#888;font-size:13px;text-align:center;padding:20px 0}.modal-footer[data-v-81e0d048]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid #f0f0f0}.btn-cancel[data-v-81e0d048]{padding:7px 14px;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#444;font-size:13px;cursor:pointer}.btn-cancel[data-v-81e0d048]:hover{background:#f3f4f6}.btn-confirm[data-v-81e0d048]{display:flex;align-items:center;gap:6px;padding:7px 16px;border-radius:6px;background:#6366f1;color:#fff;border:none;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s}.btn-confirm[data-v-81e0d048]:hover:not(:disabled){background:#4f46e5}.btn-confirm[data-v-81e0d048]:disabled{opacity:.55;cursor:not-allowed}.spin[data-v-81e0d048]{animation:spin-81e0d048 .8s linear infinite}@keyframes spin-81e0d048{to{transform:rotate(360deg)}}.ss-wrapper[data-v-65aa8daa]{position:relative}.ss-trigger[data-v-65aa8daa]{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;font-size:.875rem;font-family:Inter,sans-serif;color:#0f172a;transition:border-color .15s,box-shadow .15s;min-height:38px}.ss-trigger[data-v-65aa8daa]:hover{border-color:#a5b4fc}.ss-placeholder[data-v-65aa8daa]{color:#94a3b8}.ss-value[data-v-65aa8daa]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ss-chevron[data-v-65aa8daa]{flex-shrink:0;color:#94a3b8;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.ss-chevron.is-open[data-v-65aa8daa]{transform:rotate(180deg)}.ss-dropdown[data-v-65aa8daa]{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:100;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001f;overflow:hidden;animation:ss-open-65aa8daa .2s cubic-bezier(.34,1.56,.64,1) both}@keyframes ss-open-65aa8daa{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.ss-search[data-v-65aa8daa]{position:relative;border-bottom:1px solid #f1f5f9;display:flex;align-items:center}.ss-search-icon[data-v-65aa8daa]{position:absolute;left:.625rem;color:#94a3b8;pointer-events:none}.ss-search input[data-v-65aa8daa]{width:100%;padding:.5rem .75rem .5rem 2rem!important;border:none!important;outline:none!important;font-size:.8125rem!important;font-family:Inter,sans-serif!important;color:#0f172a!important;background:transparent!important;box-shadow:none!important;margin-bottom:0!important}.ss-list[data-v-65aa8daa]{max-height:200px;overflow-y:auto;padding:.25rem}.ss-option[data-v-65aa8daa]{padding:.5rem .75rem;border-radius:7px;font-size:.875rem;color:#374151;cursor:pointer;font-family:Inter,sans-serif;transition:background .1s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ss-option[data-v-65aa8daa]:hover{background:#f1f5f9}.ss-option.is-active[data-v-65aa8daa]{background:#ede9fe;color:#4f46e5;font-weight:600}.ss-empty[data-v-65aa8daa]{padding:.75rem;text-align:center;color:#94a3b8;font-size:.8125rem;font-family:Inter,sans-serif}.quick-add-modal[data-v-47005e28]{max-width:480px}.modal-header[data-v-47005e28]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.modal-header h2[data-v-47005e28]{font-size:1rem;font-weight:700;color:#0f172a;margin:0;font-family:Inter,sans-serif}.btn-close[data-v-47005e28]{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:0;transition:background .15s,color .15s}.btn-close[data-v-47005e28]:hover{background:#f1f5f9;color:#0f172a}.type-pills[data-v-47005e28]{display:flex;gap:.375rem;margin-bottom:1.125rem;flex-wrap:wrap}.type-pill[data-v-47005e28]{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .875rem;background:#fff;border:1px solid #e2e8f0;border-radius:20px;font-size:.8125rem;font-weight:500;color:#64748b;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:all .15s}.type-pill[data-v-47005e28]:hover{border-color:#a5b4fc;color:#4f46e5;background:#f5f3ff}.type-pill.active[data-v-47005e28]{background:#ede9fe;border-color:#a5b4fc;color:#4f46e5;font-weight:600}.quick-form[data-v-47005e28]{display:flex;flex-direction:column;gap:.875rem}.form-field[data-v-47005e28]{display:flex;flex-direction:column;gap:.3rem}.form-field label[data-v-47005e28]{font-size:.8125rem;font-weight:600;color:#374151;font-family:Inter,sans-serif}.form-field input[data-v-47005e28],.form-field textarea[data-v-47005e28],.form-field select[data-v-47005e28]{padding:.575rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#0f172a;background:#fff;font-family:Inter,sans-serif;transition:border-color .15s,box-shadow .15s;resize:vertical}.form-field input[data-v-47005e28]:focus,.form-field textarea[data-v-47005e28]:focus,.form-field select[data-v-47005e28]:focus{outline:none;border-color:#a5b4fc;box-shadow:0 0 0 3px #7c3aed1a}.form-field input[data-v-47005e28]::placeholder,.form-field textarea[data-v-47005e28]::placeholder{color:#94a3b8}.form-error[data-v-47005e28]{color:#ef4444;font-size:.8125rem;font-family:Inter,sans-serif}.modal-actions[data-v-47005e28]{display:flex;justify-content:flex-end;gap:.625rem;margin-top:.25rem}.btn-cancel[data-v-47005e28]{padding:.575rem 1.125rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-47005e28]:hover{background:#f8fafc}.btn-submit[data-v-47005e28]{padding:.575rem 1.25rem;border:none;border-radius:8px;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:opacity .15s}.btn-submit[data-v-47005e28]:hover{opacity:.88}.btn-submit[data-v-47005e28]:disabled{opacity:.55;cursor:not-allowed}.module-card[data-v-c9349b57]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:box-shadow .2s,opacity .2s}.module-card.dragging[data-v-c9349b57]{opacity:.45}.module-card[data-v-c9349b57]:hover{box-shadow:0 2px 10px #00000012}.module-header[data-v-c9349b57]{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:#fafafa;border-bottom:1px solid #f1f5f9}.drag-handle[data-v-c9349b57]{color:#cbd5e1;cursor:grab;flex-shrink:0}.drag-handle[data-v-c9349b57]:hover{color:#94a3b8}.drag-handle-sm[data-v-c9349b57]{width:13px}.module-title-group[data-v-c9349b57]{display:flex;flex-direction:column;gap:.1rem;flex:1;min-width:0}.module-number[data-v-c9349b57]{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;font-family:Inter,sans-serif}.module-title-input[data-v-c9349b57]{border:none;background:transparent;font-size:.9375rem;font-weight:600;color:#0f172a;width:100%;padding:0;font-family:Inter,sans-serif;outline:none}.module-title-input[data-v-c9349b57]:hover{background:#f1f5f9;border-radius:4px;padding:0 4px;margin:0 -4px}.module-title-input[data-v-c9349b57]:focus{background:#f1f5f9;border-radius:4px;padding:0 4px;margin:0 -4px}.lesson-count-chip[data-v-c9349b57]{font-size:.7rem;font-weight:600;color:#64748b;background:#f1f5f9;padding:.2rem .5rem;border-radius:99px;white-space:nowrap;flex-shrink:0;font-family:Inter,sans-serif}.module-tags-row[data-v-c9349b57]{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.5rem 1rem;border-bottom:1px solid #f1f5f9}.btn-edit-tags[data-v-c9349b57]{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;background:transparent;border:1px dashed #cbd5e1;border-radius:99px;font-size:.7rem;font-weight:500;color:#94a3b8;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:border-color .15s,color .15s}.btn-edit-tags[data-v-c9349b57]:hover{border-color:#7c3aed;color:#7c3aed;background:#faf5ff}.lesson-list[data-v-c9349b57]{list-style:none;padding:.5rem 0;margin:0;border-bottom:1px solid #f1f5f9}.lesson-item[data-v-c9349b57]{display:flex;align-items:center;gap:.5rem;padding:.4rem 1rem;transition:background .12s}.lesson-item[data-v-c9349b57]:hover{background:#fafafa}.lesson-item.dragging[data-v-c9349b57]{opacity:.4}.lesson-type-badge[data-v-c9349b57]{display:inline-flex;align-items:center;gap:.2rem;padding:.175rem .5rem;border-radius:20px;font-size:.68rem;font-weight:600;flex-shrink:0;font-family:Inter,sans-serif;white-space:nowrap}.type-video[data-v-c9349b57]{background:#dbeafe;color:#1e40af}.type-exercise[data-v-c9349b57]{background:#d1fae5;color:#065f46}.type-text[data-v-c9349b57]{background:#f1f5f9;color:#475569}.type-audio[data-v-c9349b57]{background:#f5f3ff;color:#5b21b6}.type-vocabulary[data-v-c9349b57]{background:#fef3c7;color:#92400e}.type-speaking[data-v-c9349b57]{background:#ccfbf1;color:#115e59}.lesson-title-input[data-v-c9349b57]{flex:1;border:none;background:transparent;font-size:.875rem;color:#334155;font-family:Inter,sans-serif;outline:none;min-width:0}.lesson-title-input[data-v-c9349b57]:hover{background:#f1f5f9;border-radius:4px;padding:0 4px;margin:0 -4px}.lesson-title-input[data-v-c9349b57]:focus{background:#f1f5f9;border-radius:4px;padding:0 4px;margin:0 -4px}.empty-lessons[data-v-c9349b57]{font-size:.8125rem;color:#94a3b8;text-align:center;padding:.75rem 1rem;font-family:Inter,sans-serif}.btn-icon-danger[data-v-c9349b57]{display:inline-flex;align-items:center;justify-content:center;padding:.25rem;background:transparent;border:none;border-radius:6px;color:#cbd5e1;cursor:pointer;flex-shrink:0;transition:color .15s,background .15s}.btn-icon-danger[data-v-c9349b57]:hover{color:#ef4444;background:#fef2f2}.add-lesson-section[data-v-c9349b57]{padding:.875rem 1rem}.add-lesson-heading[data-v-c9349b57]{display:flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;margin:0 0 .625rem;font-family:Inter,sans-serif}.type-pills[data-v-c9349b57]{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.75rem}.type-pill[data-v-c9349b57]{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .65rem;border-radius:99px;border:1.5px solid #e2e8f0;background:#fff;color:#64748b;font-size:.78rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:border-color .15s,color .15s,background .15s}.type-pill[data-v-c9349b57]:hover{border-color:#a5b4fc;color:#4f46e5;background:#f5f3ff}.type-pill.active[data-v-c9349b57]{border-color:#4f46e5;color:#4f46e5;background:#eef2ff;font-weight:600}.lesson-form-fields[data-v-c9349b57]{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.5rem}.form-field[data-v-c9349b57]{display:flex;flex-direction:column;gap:.25rem}.form-field label[data-v-c9349b57]{font-size:.75rem;font-weight:600;color:#64748b;font-family:Inter,sans-serif}.form-field input[data-v-c9349b57]{border:1px solid #e2e8f0;border-radius:8px;padding:.45rem .75rem;font-size:.875rem;font-family:Inter,sans-serif;outline:none;background:#f8fafc;transition:border-color .15s}.form-field input[data-v-c9349b57]:focus{border-color:#4f46e5;background:#fff}.add-lesson-form[data-v-c9349b57]{display:flex;flex-direction:column;gap:.5rem}.btn-add-lesson[data-v-c9349b57]{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .875rem;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;align-self:flex-start;font-family:Inter,sans-serif;transition:background .15s}.btn-add-lesson[data-v-c9349b57]:hover{background:#4338ca}.btn-add-lesson[data-v-c9349b57]:disabled{opacity:.6;cursor:not-allowed}.btn-quick-create[data-v-c9349b57]{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .625rem;background:transparent;border:1px solid #e2e8f0;border-radius:6px;font-size:.75rem;font-weight:500;color:#64748b;cursor:pointer;font-family:Inter,sans-serif;margin-top:.25rem;align-self:flex-start;transition:border-color .15s,color .15s}.btn-quick-create[data-v-c9349b57]:hover{border-color:#a5b4fc;color:#4f46e5;background:#f5f3ff}.mtag[data-v-c9349b57]{display:inline-flex;align-items:center;gap:.2rem;padding:.175rem .55rem;border-radius:20px;font-size:.7rem;font-weight:600;font-family:Inter,sans-serif;white-space:nowrap}.mtag-grammar[data-v-c9349b57]{background:#ede9fe;color:#5b21b6}.mtag-vocab[data-v-c9349b57]{background:#d1fae5;color:#065f46}.mtag-course[data-v-c9349b57]{background:#dbeafe;color:#1e40af}.mtag-ability[data-v-c9349b57]{background:#fef3c7;color:#92400e}.mtag-unclassified[data-v-c9349b57]{background:#f1f5f9;color:#94a3b8;border:1px dashed #cbd5e1;font-weight:500}.vam-overlay[data-v-d994fb5d]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem}.vam-modal[data-v-d994fb5d]{background:#fff;border-radius:16px;box-shadow:0 24px 80px #0003;width:100%;max-width:860px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;font-family:Inter,sans-serif}.vam-header[data-v-d994fb5d]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f1f5f9;gap:1rem;flex-wrap:wrap}.vam-title[data-v-d994fb5d]{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;color:#0f172a}.vam-missing-chip[data-v-d994fb5d]{font-size:.7rem;font-weight:700;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;padding:.15rem .5rem;border-radius:99px}.vam-all-chip[data-v-d994fb5d]{font-size:.7rem;font-weight:700;background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;padding:.15rem .5rem;border-radius:99px}.vam-header-right[data-v-d994fb5d]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.vam-voxai-badge[data-v-d994fb5d]{display:inline-flex;align-items:center;gap:.25rem;font-size:.7rem;font-weight:600;padding:.2rem .55rem;border-radius:99px}.vam-voxai-badge.online[data-v-d994fb5d]{background:#dcfce7;color:#166534;border:1px solid #86efac}.vam-voxai-badge.offline[data-v-d994fb5d]{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.vam-voxai-badge.checking[data-v-d994fb5d]{background:#f8fafc;color:#94a3b8;border:1px solid #e2e8f0}.vam-voice-select[data-v-d994fb5d]{padding:.35rem .625rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.78rem;color:#374151;background:#fff;font-family:Inter,sans-serif;box-shadow:none;cursor:pointer;max-width:160px}.vam-voice-select[data-v-d994fb5d]:focus{outline:none;border-color:#4f46e5}.btn-gen-all[data-v-d994fb5d]{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .875rem;border-radius:8px;border:none;background:#4f46e5;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s;margin:0;box-shadow:none;text-shadow:none;white-space:nowrap}.btn-gen-all[data-v-d994fb5d]:hover:not(:disabled){background:#4338ca}.btn-gen-all[data-v-d994fb5d]:disabled{opacity:.5;cursor:not-allowed}.vam-close[data-v-d994fb5d]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;padding:0;margin:0;box-shadow:none;transition:background .15s}.vam-close[data-v-d994fb5d]:hover{background:#f1f5f9;color:#0f172a}.vam-progress-wrap[data-v-d994fb5d]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1.25rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.vam-progress-bar[data-v-d994fb5d]{flex:1;height:6px;background:#e2e8f0;border-radius:99px;overflow:hidden}.vam-progress-fill[data-v-d994fb5d]{height:100%;background:#4f46e5;border-radius:99px;transition:width .3s ease}.vam-progress-label[data-v-d994fb5d]{font-size:.75rem;font-weight:600;color:#4f46e5;white-space:nowrap}.vam-filters[data-v-d994fb5d]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.625rem 1.25rem;border-bottom:1px solid #f1f5f9;background:#fafbfc;flex-wrap:wrap}.vam-filter-tabs[data-v-d994fb5d]{display:flex;gap:.375rem}.vam-tab[data-v-d994fb5d]{display:flex;align-items:center;gap:.35rem;padding:.3rem .75rem;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.78rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s;margin:0;box-shadow:none;text-shadow:none}.vam-tab[data-v-d994fb5d]:hover{background:#f8fafc;border-color:#c7d2fe}.vam-tab.active[data-v-d994fb5d]{background:#ede9fe;border-color:#a5b4fc;color:#4f46e5;font-weight:600}.vam-tab-count[data-v-d994fb5d]{font-size:.65rem;font-weight:700;background:#e2e8f0;color:#64748b;padding:.05rem .4rem;border-radius:99px}.vam-tab.active .vam-tab-count[data-v-d994fb5d]{background:#c7d2fe;color:#4338ca}.vam-search-wrap[data-v-d994fb5d]{position:relative;display:flex;align-items:center}.vam-search-icon[data-v-d994fb5d]{position:absolute;left:.5rem;color:#94a3b8;pointer-events:none}.vam-search[data-v-d994fb5d]{padding:.35rem .625rem .35rem 1.75rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.8rem;color:#0f172a;background:#fff;font-family:Inter,sans-serif;box-shadow:none;width:200px}.vam-search[data-v-d994fb5d]:focus{outline:none;border-color:#4f46e5}.vam-body[data-v-d994fb5d]{flex:1;overflow-y:auto;padding:.5rem 0}.vam-group-header[data-v-d994fb5d]{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem .4rem;background:#f8fafc;border-top:1px solid #f1f5f9;position:sticky;top:0;z-index:2}.vam-group-icon[data-v-d994fb5d]{color:#94a3b8;flex-shrink:0}.vam-group-title[data-v-d994fb5d]{font-size:.82rem;font-weight:700;color:#374151;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vam-group-stat[data-v-d994fb5d]{font-size:.72rem;color:#94a3b8;white-space:nowrap;flex-shrink:0}.btn-gen-group[data-v-d994fb5d]{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:5px;border:1px solid #c7d2fe;background:#ede9fe;color:#4f46e5;font-size:.7rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;flex-shrink:0;transition:background .15s;margin:0;box-shadow:none;text-shadow:none}.btn-gen-group[data-v-d994fb5d]:hover:not(:disabled){background:#ddd6fe}.btn-gen-group[data-v-d994fb5d]:disabled{opacity:.5;cursor:not-allowed}.vam-item-row[data-v-d994fb5d]{display:flex;align-items:center;gap:.875rem;padding:.625rem 1.25rem;border-bottom:1px solid #f8fafc;transition:background .1s}.vam-item-row[data-v-d994fb5d]:hover{background:#fafbfc}.vam-item-row.row-has-audio[data-v-d994fb5d]{background:#fafffe}.vam-item-row.row-recording[data-v-d994fb5d]{background:#fff7ed}.vam-item-info[data-v-d994fb5d]{flex:1;min-width:0;display:flex;align-items:baseline;gap:.5rem}.vam-word[data-v-d994fb5d]{font-size:.875rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.vam-translation[data-v-d994fb5d]{font-size:.78rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-has[data-v-d994fb5d]{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:600;color:#059669;background:#f0fdf4;border:1px solid #bbf7d0;padding:.15rem .45rem;border-radius:4px;white-space:nowrap;flex-shrink:0}.status-lib[data-v-d994fb5d]{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:600;color:#0369a1;background:#f0f9ff;border:1px solid #bae6fd;padding:.15rem .45rem;border-radius:4px;white-space:nowrap;flex-shrink:0}.status-miss[data-v-d994fb5d]{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:600;color:#d97706;background:#fffbeb;border:1px solid #fde68a;padding:.15rem .45rem;border-radius:4px;white-space:nowrap;flex-shrink:0}.vam-item-actions[data-v-d994fb5d]{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.act-btn[data-v-d994fb5d]{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .625rem;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s;margin:0;box-shadow:none;text-shadow:none;white-space:nowrap}.act-btn[data-v-d994fb5d]:disabled{opacity:.45;cursor:not-allowed}.act-btn.play[data-v-d994fb5d]{background:#f0fdf4;border:1px solid #bbf7d0;color:#059669}.act-btn.play[data-v-d994fb5d]:hover:not(:disabled){background:#dcfce7}.act-btn.gen[data-v-d994fb5d]{background:#ede9fe;border:1px solid #c7d2fe;color:#4f46e5}.act-btn.gen[data-v-d994fb5d]:hover:not(:disabled){background:#ddd6fe}.act-btn.use[data-v-d994fb5d]{background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1}.act-btn.use[data-v-d994fb5d]:hover:not(:disabled){background:#e0f2fe}.act-btn.rec[data-v-d994fb5d]{background:#fff7ed;border:1px solid #fed7aa;color:#c2410c}.act-btn.rec[data-v-d994fb5d]:hover:not(:disabled){background:#ffedd5}.act-btn.cancel[data-v-d994fb5d]{background:#f1f5f9;border:1px solid #e2e8f0;color:#64748b;padding:.3rem .45rem}.act-btn.cancel[data-v-d994fb5d]:hover{background:#e2e8f0}.vam-empty[data-v-d994fb5d]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:4rem 2rem;color:#94a3b8;text-align:center}.vam-empty p[data-v-d994fb5d]{margin:0;font-size:.875rem;font-family:Inter,sans-serif}.spin[data-v-d994fb5d]{animation:spin-d994fb5d 1s linear infinite}@keyframes spin-d994fb5d{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.vim-overlay[data-v-bcb51dc5]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem}.vim-modal[data-v-bcb51dc5]{background:#fff;border-radius:16px;box-shadow:0 24px 80px #0003;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;font-family:Inter,sans-serif}.vim-header[data-v-bcb51dc5]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f1f5f9;gap:1rem;flex-wrap:wrap}.vim-title[data-v-bcb51dc5]{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;color:#0f172a}.vim-missing-chip[data-v-bcb51dc5]{font-size:.7rem;font-weight:700;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;padding:.15rem .5rem;border-radius:99px}.vim-all-chip[data-v-bcb51dc5]{font-size:.7rem;font-weight:700;background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;padding:.15rem .5rem;border-radius:99px}.vim-header-right[data-v-bcb51dc5]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.btn-search-all[data-v-bcb51dc5]{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .875rem;border-radius:8px;border:none;background:#0369a1;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s;white-space:nowrap}.btn-search-all[data-v-bcb51dc5]:hover:not(:disabled){background:#0284c7}.btn-search-all[data-v-bcb51dc5]:disabled{opacity:.5;cursor:not-allowed}.btn-remove-all[data-v-bcb51dc5]{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .875rem;border-radius:8px;border:1px solid #fecaca;background:#fff1f2;color:#be123c;font-size:.8rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s;white-space:nowrap}.btn-remove-all[data-v-bcb51dc5]:hover:not(:disabled){background:#ffe4e6;border-color:#fda4af}.btn-remove-all[data-v-bcb51dc5]:disabled{opacity:.5;cursor:not-allowed}.btn-gen-ai[data-v-bcb51dc5]{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .875rem;border-radius:8px;border:1px solid #fde68a;background:#fffbeb;color:#92400e;font-size:.8rem;font-weight:600;cursor:not-allowed;font-family:Inter,sans-serif;opacity:.75;white-space:nowrap}.badge-soon[data-v-bcb51dc5]{font-size:.62rem;font-weight:700;background:#f59e0b;color:#fff;padding:.1rem .35rem;border-radius:99px}.vim-close[data-v-bcb51dc5]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;padding:0;transition:background .15s}.vim-close[data-v-bcb51dc5]:hover{background:#f1f5f9;color:#0f172a}.vim-progress-wrap[data-v-bcb51dc5]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1.25rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.vim-progress-bar[data-v-bcb51dc5]{flex:1;height:6px;background:#e2e8f0;border-radius:99px;overflow:hidden}.vim-progress-fill[data-v-bcb51dc5]{height:100%;background:#0369a1;border-radius:99px;transition:width .3s ease}.vim-progress-label[data-v-bcb51dc5]{font-size:.75rem;font-weight:600;color:#0369a1;white-space:nowrap}.vim-filters[data-v-bcb51dc5]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.625rem 1.25rem;border-bottom:1px solid #f1f5f9;background:#fafbfc;flex-wrap:wrap}.vim-filter-tabs[data-v-bcb51dc5]{display:flex;gap:.375rem}.vim-tab[data-v-bcb51dc5]{display:flex;align-items:center;gap:.35rem;padding:.3rem .75rem;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.78rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s}.vim-tab[data-v-bcb51dc5]:hover{background:#f8fafc;border-color:#bae6fd}.vim-tab.active[data-v-bcb51dc5]{background:#e0f2fe;border-color:#7dd3fc;color:#0369a1;font-weight:600}.vim-tab-count[data-v-bcb51dc5]{font-size:.65rem;font-weight:700;background:#e2e8f0;color:#64748b;padding:.05rem .4rem;border-radius:99px}.vim-tab.active .vim-tab-count[data-v-bcb51dc5]{background:#bae6fd;color:#0284c7}.vim-search-wrap[data-v-bcb51dc5]{position:relative;display:flex;align-items:center}.vim-search-icon[data-v-bcb51dc5]{position:absolute;left:.5rem;color:#94a3b8;pointer-events:none}.vim-search[data-v-bcb51dc5]{padding:.35rem .625rem .35rem 1.75rem;border:1px solid #e2e8f0;border-radius:7px;font-size:.8rem;color:#0f172a;background:#fff;font-family:Inter,sans-serif;width:200px}.vim-search[data-v-bcb51dc5]:focus{outline:none;border-color:#0369a1}.vim-body[data-v-bcb51dc5]{flex:1;overflow-y:auto;padding:.5rem 0}.vim-group-header[data-v-bcb51dc5]{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem .4rem;background:#f8fafc;border-top:1px solid #f1f5f9;position:sticky;top:0;z-index:2}.vim-group-icon[data-v-bcb51dc5]{color:#94a3b8;flex-shrink:0}.vim-group-title[data-v-bcb51dc5]{font-size:.82rem;font-weight:700;color:#374151;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vim-group-stat[data-v-bcb51dc5]{font-size:.72rem;color:#94a3b8;white-space:nowrap;flex-shrink:0}.btn-search-group[data-v-bcb51dc5]{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:5px;border:1px solid #bae6fd;background:#e0f2fe;color:#0369a1;font-size:.7rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;flex-shrink:0;transition:background .15s}.btn-search-group[data-v-bcb51dc5]:hover:not(:disabled){background:#bae6fd}.btn-search-group[data-v-bcb51dc5]:disabled{opacity:.5;cursor:not-allowed}.vim-item-row[data-v-bcb51dc5]{display:flex;align-items:center;gap:.75rem;padding:.5rem 1.25rem;border-bottom:1px solid #f8fafc;transition:background .1s;flex-wrap:wrap}.vim-item-row[data-v-bcb51dc5]:hover{background:#fafbfc}.vim-item-row.row-has-image[data-v-bcb51dc5]{background:#f0f9ff}.vim-item-row.row-picking[data-v-bcb51dc5]{background:#f0f9ff;border-bottom:none}.vim-thumb-wrap[data-v-bcb51dc5]{width:44px;height:44px;border-radius:6px;overflow:hidden;border:1px solid #e2e8f0;flex-shrink:0;background:#f8fafc;display:flex;align-items:center;justify-content:center}.vim-thumb[data-v-bcb51dc5]{width:100%;height:100%;object-fit:cover}.vim-thumb-empty[data-v-bcb51dc5]{display:flex;align-items:center;justify-content:center;color:#cbd5e1;width:100%;height:100%}.vim-item-info[data-v-bcb51dc5]{flex:1;min-width:0;display:flex;align-items:baseline;gap:.5rem}.vim-word[data-v-bcb51dc5]{font-size:.875rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.vim-translation[data-v-bcb51dc5]{font-size:.78rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-has[data-v-bcb51dc5]{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:600;color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd;padding:.15rem .45rem;border-radius:4px;white-space:nowrap;flex-shrink:0}.status-miss[data-v-bcb51dc5]{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:600;color:#d97706;background:#fffbeb;border:1px solid #fde68a;padding:.15rem .45rem;border-radius:4px;white-space:nowrap;flex-shrink:0}.vim-item-actions[data-v-bcb51dc5]{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.act-btn[data-v-bcb51dc5]{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .625rem;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s;white-space:nowrap}.act-btn[data-v-bcb51dc5]:disabled{opacity:.45;cursor:not-allowed}.act-btn.search[data-v-bcb51dc5]{background:#e0f2fe;border:1px solid #bae6fd;color:#0369a1}.act-btn.search[data-v-bcb51dc5]:hover:not(:disabled){background:#bae6fd}.act-btn.upload[data-v-bcb51dc5]{background:#f0fdf4;border:1px solid #bbf7d0;color:#059669}.act-btn.upload[data-v-bcb51dc5]:hover:not(:disabled){background:#dcfce7}.act-btn.remove[data-v-bcb51dc5]{background:#fff1f2;border:1px solid #fecdd3;color:#be123c;padding:.3rem .45rem}.act-btn.remove[data-v-bcb51dc5]:hover:not(:disabled){background:#ffe4e6}.vim-picker[data-v-bcb51dc5]{width:100%;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.875rem 1rem;margin-top:.25rem;display:flex;flex-direction:column;gap:.625rem}.picker-loading[data-v-bcb51dc5],.picker-empty[data-v-bcb51dc5]{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:#64748b;padding:.5rem 0}.picker-empty[data-v-bcb51dc5]{flex-direction:column;align-items:flex-start}.picker-grid[data-v-bcb51dc5]{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem}.picker-img-btn[data-v-bcb51dc5]{display:flex;flex-direction:column;gap:.25rem;border:2px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;background:#fff;padding:0;transition:border-color .15s,transform .1s}.picker-img-btn[data-v-bcb51dc5]:hover{border-color:#7dd3fc;transform:scale(1.03)}.picker-img-btn.selected[data-v-bcb51dc5]{border-color:#0369a1}.picker-img-btn img[data-v-bcb51dc5]{width:100%;aspect-ratio:1;object-fit:cover;display:block}.picker-author[data-v-bcb51dc5]{font-size:.6rem;color:#94a3b8;padding:.1rem .3rem .2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.picker-credit[data-v-bcb51dc5]{font-size:.65rem;color:#94a3b8;margin:0}.picker-close[data-v-bcb51dc5]{display:inline-flex;align-items:center;gap:.25rem;align-self:flex-start;padding:.25rem .625rem;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.75rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.picker-close[data-v-bcb51dc5]:hover{background:#f1f5f9}.vim-empty[data-v-bcb51dc5]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:4rem 2rem;color:#94a3b8;text-align:center}.vim-empty p[data-v-bcb51dc5]{margin:0;font-size:.875rem;font-family:Inter,sans-serif}.spin[data-v-bcb51dc5]{animation:spin-bcb51dc5 1s linear infinite}@keyframes spin-bcb51dc5{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ab-shell[data-v-118a69e5]{display:flex;flex-direction:column;gap:0;height:100%;min-height:0}.ab-sub-tabs[data-v-118a69e5]{display:flex;gap:.25rem;padding:.75rem 1rem 0;border-bottom:1px solid #e2e8f0;background:#fff}.ab-sub-tab[data-v-118a69e5]{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border-radius:8px 8px 0 0;font-size:.8rem;font-weight:600;font-family:Inter,sans-serif;border:1px solid transparent;border-bottom:none;cursor:pointer;background:transparent;color:#64748b;transition:background .15s,color .15s}.ab-sub-tab[data-v-118a69e5]:hover{background:#f1f5f9;color:#1e293b}.ab-sub-tab.active[data-v-118a69e5]{background:#fff;color:#1e293b;border-color:#e2e8f0;margin-bottom:-1px}.ab-tab-count[data-v-118a69e5]{font-size:.7rem;background:#f1f5f9;color:#64748b;padding:.1rem .35rem;border-radius:10px}.ab-tab-missing[data-v-118a69e5]{font-size:.7rem;background:#fee2e2;color:#dc2626;padding:.1rem .35rem;border-radius:10px}.ab-controls[data-v-118a69e5]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.625rem 1rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.ab-search-wrap[data-v-118a69e5]{display:flex;align-items:center;gap:.375rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.35rem .625rem;min-width:180px}.ab-search-icon[data-v-118a69e5]{color:#94a3b8;flex-shrink:0}.ab-search[data-v-118a69e5]{border:none;outline:none;background:transparent;font-size:.8rem;width:100%;color:#1e293b}.ab-status-tabs[data-v-118a69e5]{display:flex;gap:.2rem}.ab-status-btn[data-v-118a69e5]{padding:.3rem .625rem;border-radius:6px;font-size:.75rem;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;font-family:Inter,sans-serif;transition:background .12s,color .12s;display:inline-flex;align-items:center;gap:.3rem}.ab-status-btn.active[data-v-118a69e5]{background:#1e293b;color:#fff;border-color:#1e293b}.ab-status-count[data-v-118a69e5]{font-size:.68rem;opacity:.7}.ab-voxai-controls[data-v-118a69e5]{display:flex;align-items:center;gap:.5rem;margin-left:auto}.ab-voice-select[data-v-118a69e5]{height:1.9rem;padding:0 .5rem;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#1e293b;font-size:.78rem;font-family:Inter,sans-serif;cursor:pointer}.ab-gen-btn[data-v-118a69e5]{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .75rem;border-radius:7px;border:1px solid #fde68a;background:#fef3c7;color:#92400e;font-size:.78rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;white-space:nowrap}.ab-gen-btn[data-v-118a69e5]:disabled{opacity:.6;cursor:default}.ab-voxai-offline[data-v-118a69e5]{font-size:.75rem;color:#94a3b8;margin-left:auto}.ab-progress-bar[data-v-118a69e5]{flex:1;height:3px;background:#e2e8f0;border-radius:2px;overflow:hidden}.ab-progress-fill[data-v-118a69e5]{height:100%;background:#f59e0b;transition:width .3s}.ab-list[data-v-118a69e5]{flex:1;overflow-y:auto;padding:.5rem 1rem 6rem;display:flex;flex-direction:column;gap:0}.ab-empty[data-v-118a69e5]{padding:2rem;text-align:center;color:#94a3b8;font-size:.85rem}.ab-group-header[data-v-118a69e5]{display:flex;align-items:center;gap:.5rem;padding:.6rem .5rem .3rem;font-size:.75rem;font-weight:700;color:#475569;border-top:1px solid #f1f5f9;margin-top:.5rem}.ab-group-header[data-v-118a69e5]:first-child{border-top:none;margin-top:0}.ab-group-stat[data-v-118a69e5]{margin-left:auto;font-weight:500;color:#94a3b8}.ab-gen-group-btn[data-v-118a69e5]{display:inline-flex;align-items:center;gap:.2rem;padding:.15rem .45rem;border-radius:5px;border:1px solid #fde68a;background:#fef3c7;color:#92400e;font-size:.68rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif}.ab-row[data-v-118a69e5]{display:flex;align-items:center;gap:.625rem;padding:.5rem;border-radius:7px;transition:background .1s}.ab-row[data-v-118a69e5]:hover{background:#f8fafc}.ab-row.playing[data-v-118a69e5]{background:#f0fdf4}.ab-row-info[data-v-118a69e5]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.ab-row-label[data-v-118a69e5]{font-size:.82rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ab-row-meta[data-v-118a69e5]{font-size:.72rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ab-status-chip[data-v-118a69e5]{flex-shrink:0;font-size:.68rem;font-weight:600;padding:.15rem .45rem;border-radius:5px}.ab-status-chip.has[data-v-118a69e5]{background:#dcfce7;color:#166534;border:1px solid #86efac}.ab-status-chip.miss[data-v-118a69e5]{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.ab-row-actions[data-v-118a69e5]{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.ab-act-btn[data-v-118a69e5]{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:6px;border:1px solid #e2e8f0;background:#f8fafc;color:#475569;cursor:pointer;transition:background .12s,color .12s}.ab-act-btn[data-v-118a69e5]:hover{background:#e2e8f0}.ab-act-btn[data-v-118a69e5]:disabled{opacity:.45;cursor:default}.ab-act-btn.play[data-v-118a69e5]{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.ab-act-btn.gen[data-v-118a69e5]{border-color:#fde68a;background:#fef9c3;color:#854d0e}.ab-act-btn.rec[data-v-118a69e5]{border-color:#fecaca;background:#fef2f2;color:#dc2626}.ab-player[data-v-118a69e5]{position:sticky;bottom:0;left:0;right:0;display:flex;align-items:center;gap:.625rem;padding:.625rem 1rem;background:#0f172af5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid rgba(255,255,255,.08);z-index:10}.ab-pl-btn[data-v-118a69e5]{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;border:none;background:#ffffff1a;color:#e2e8f0;cursor:pointer;flex-shrink:0;transition:background .12s}.ab-pl-btn[data-v-118a69e5]:hover:not(:disabled){background:#fff3}.ab-pl-btn[data-v-118a69e5]:disabled{opacity:.3;cursor:default}.ab-pl-btn.main[data-v-118a69e5]{background:#f59e0b;color:#000;width:2.25rem;height:2.25rem}.ab-pl-btn.close[data-v-118a69e5]{background:transparent;color:#64748b}.ab-pl-info[data-v-118a69e5]{display:flex;flex-direction:column;min-width:0;flex:0 0 160px}.ab-pl-label[data-v-118a69e5]{font-size:.8rem;font-weight:600;color:#f1f5f9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ab-pl-meta[data-v-118a69e5]{font-size:.68rem;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ab-pl-progress[data-v-118a69e5]{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.ab-pl-time[data-v-118a69e5]{font-size:.72rem;color:#64748b;white-space:nowrap;font-family:monospace}.ab-pl-track[data-v-118a69e5]{flex:1;height:3px;background:#ffffff26;border-radius:2px;cursor:pointer;position:relative}.ab-pl-fill[data-v-118a69e5]{height:100%;background:#f59e0b;border-radius:2px;pointer-events:none}.ab-pl-pos[data-v-118a69e5]{font-size:.7rem;color:#64748b;white-space:nowrap}.player-slide-enter-active[data-v-118a69e5],.player-slide-leave-active[data-v-118a69e5]{transition:transform .25s ease,opacity .25s ease}.player-slide-enter-from[data-v-118a69e5],.player-slide-leave-to[data-v-118a69e5]{transform:translateY(100%);opacity:0}.spin[data-v-118a69e5]{animation:spin-118a69e5 1s linear infinite}@keyframes spin-118a69e5{to{transform:rotate(360deg)}}.content-tab[data-v-0a91f036]{max-width:1200px;font-family:Inter,sans-serif}.page-header[data-v-0a91f036]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.section-title[data-v-0a91f036]{font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,var(--section-color, #f59e0b),var(--section-color-2, #ef4444));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 .25rem;letter-spacing:-.4px;font-family:Inter,sans-serif}.header-text p[data-v-0a91f036]{font-size:.925rem;color:#64748b;margin:0;text-shadow:none;font-family:Inter,sans-serif}.header-actions[data-v-0a91f036]{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.btn-vocab-audio[data-v-0a91f036]{display:flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:8px;font-size:.82rem;font-weight:500;background:#fffbeb;border:1px solid #fde68a;color:#92400e;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s;box-shadow:none;text-shadow:none;margin:0}.btn-vocab-audio[data-v-0a91f036]:hover{background:#fef3c7;border-color:#fcd34d}.btn-vocab-image[data-v-0a91f036]{display:flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:8px;font-size:.82rem;font-weight:500;background:#e0f2fe;border:1px solid #bae6fd;color:#0369a1;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s;box-shadow:none;text-shadow:none;margin:0}.btn-vocab-image[data-v-0a91f036]:hover{background:#bae6fd;border-color:#7dd3fc}.btn-select-toggle[data-v-0a91f036]{display:flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:8px;font-size:.82rem;font-weight:500;background:#fff;border:1px solid #e2e8f0;color:#475569;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s;box-shadow:none;text-shadow:none;margin:0}.btn-select-toggle[data-v-0a91f036]:hover{background:#f1f5f9;border-color:#cbd5e1}.btn-select-toggle.active[data-v-0a91f036]{background:#ede9fe;border-color:#a5b4fc;color:#4f46e5}.btn-delete-bulk[data-v-0a91f036]{display:flex;align-items:center;gap:.35rem;padding:.35rem .85rem;border-radius:8px;font-size:.82rem;font-weight:600;background:#fef2f2;border:1px solid #fca5a5;color:#dc2626;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s;box-shadow:none;text-shadow:none;margin:0}.btn-delete-bulk[data-v-0a91f036]:hover{background:#fee2e2}.voxai-badge[data-v-0a91f036]{display:flex;align-items:center;gap:.3rem;padding:.3rem .65rem;border-radius:20px;font-size:.75rem;font-weight:600;-webkit-user-select:none;user-select:none;font-family:Inter,sans-serif;transition:opacity .15s}.voxai-badge.online[data-v-0a91f036]{background:#dcfce7;color:#166534;border:1px solid #86efac;cursor:pointer}.voxai-badge.online[data-v-0a91f036]:hover{opacity:.8}.voxai-badge.offline[data-v-0a91f036]{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;cursor:pointer}.voxai-badge.offline[data-v-0a91f036]:hover:not(:disabled){background:#fee2e2}.voxai-badge.offline[data-v-0a91f036]:disabled{opacity:.7;cursor:not-allowed}.spin[data-v-0a91f036]{animation:spin-0a91f036 1s linear infinite}@keyframes spin-0a91f036{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.breadcrumb[data-v-0a91f036]{display:flex;align-items:center;gap:.375rem;padding:.25rem 0}.bc-link[data-v-0a91f036]{background:none;border:none;padding:0;font-size:1rem;font-weight:600;color:#4f46e5;cursor:pointer;font-family:Inter,sans-serif;transition:color .15s}.bc-link[data-v-0a91f036]:hover{color:#4338ca;text-decoration:underline}.bc-sep[data-v-0a91f036]{color:#cbd5e1;flex-shrink:0}.bc-current[data-v-0a91f036]{font-size:1rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif}.btn-new[data-v-0a91f036]{display:flex;align-items:center;gap:.375rem;padding:.5625rem 1.125rem;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s}.btn-new[data-v-0a91f036]:hover{background:#4338ca;color:#fff}.btn-new[data-v-0a91f036]:active{transform:scale(.95)}.usage-filter-bar[data-v-0a91f036]{display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem;flex-wrap:wrap}.usage-select[data-v-0a91f036]{padding:.4rem .75rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#334155;font-size:.82rem;font-family:Inter,sans-serif;cursor:pointer;outline:none;transition:border-color .15s;max-width:260px}.usage-select[data-v-0a91f036]:focus{border-color:#6366f1}.usage-clear[data-v-0a91f036]{display:flex;align-items:center;gap:.3rem;padding:.4rem .7rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#64748b;font-size:.8rem;font-family:Inter,sans-serif;cursor:pointer;transition:background .15s,color .15s}.usage-clear[data-v-0a91f036]:hover{background:#f1f5f9;color:#0f172a}.filter-tabs[data-v-0a91f036]{display:flex;gap:.25rem;margin-bottom:1.5rem;background:#f1f5f9;padding:.25rem;border-radius:10px;width:fit-content}.filter-tab[data-v-0a91f036]{display:flex;align-items:center;gap:.375rem;padding:.4rem .875rem;border-radius:7px;border:none;background:transparent;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;font-family:Inter,sans-serif;transition:background .15s,color .15s}.filter-tab[data-v-0a91f036]:hover{background:#fff;color:#0f172a}.filter-tab[data-v-0a91f036]:active{transform:scale(.95)}.filter-tab.active[data-v-0a91f036]{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 3px #0000001a}.filter-count[data-v-0a91f036]{font-size:.72rem;color:#94a3b8;background:#e2e8f0;border-radius:99px;padding:.05rem .45rem;font-weight:500}.filter-tab.active .filter-count[data-v-0a91f036]{background:#ede9fe;color:#6d28d9}.view-toggle[data-v-0a91f036]{display:flex;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.view-btn[data-v-0a91f036]{display:flex;align-items:center;justify-content:center;padding:.5rem .625rem;background:#fff;border:none;color:#94a3b8;cursor:pointer;margin:0;box-shadow:none;text-shadow:none;transition:background .15s,color .15s}.view-btn[data-v-0a91f036]:hover{background:#f1f5f9;color:#475569}.view-btn.active[data-v-0a91f036]{background:#4f46e5;color:#fff}.resources-grid[data-v-0a91f036]{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.resources-list[data-v-0a91f036]{display:flex;flex-direction:column;gap:.5rem}.empty-state[data-v-0a91f036]{display:flex;flex-direction:column;align-items:center;gap:.625rem;padding:4rem 2rem;text-align:center}.empty-icon[data-v-0a91f036]{color:var(--section-color, #f59e0b);opacity:.65;animation:empty-float-0a91f036 3s ease-in-out infinite;margin-bottom:.25rem}.empty-title[data-v-0a91f036]{font-size:1.125rem;font-weight:700;color:#1e293b;margin:0;font-family:Inter,sans-serif}.empty-hint[data-v-0a91f036]{font-size:.875rem;color:#64748b;margin:0 0 .5rem;max-width:340px;line-height:1.5;font-family:Inter,sans-serif}@keyframes empty-float-0a91f036{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (max-width: 900px){.resources-grid[data-v-0a91f036]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.resources-grid[data-v-0a91f036]{grid-template-columns:1fr}}.modules-section[data-v-0a91f036]{display:flex;flex-direction:column;gap:1.5rem}.create-module-card[data-v-0a91f036]{background:#fff;border:1.5px dashed #a5b4fc;border-radius:12px;padding:1rem 1.25rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.create-module-input[data-v-0a91f036]{flex:1;min-width:220px;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;color:#0f172a;font-family:Inter,sans-serif;background:#f8fafc;transition:border-color .15s,box-shadow .15s}.create-module-input[data-v-0a91f036]:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a;background:#fff}.create-module-input[data-v-0a91f036]::placeholder{color:#94a3b8}.create-module-actions[data-v-0a91f036]{display:flex;gap:.5rem;flex-shrink:0}.btn-primary-sm[data-v-0a91f036]{padding:.4rem .875rem;background:#4f46e5;color:#fff;border:none;border-radius:7px;font-size:.8125rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-primary-sm[data-v-0a91f036]:hover{background:#4338ca}.btn-primary-sm[data-v-0a91f036]:disabled{opacity:.55;cursor:not-allowed}.btn-secondary-sm[data-v-0a91f036]{padding:.4rem .875rem;background:#fff;color:#64748b;border:1px solid #e2e8f0;border-radius:7px;font-size:.8125rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-secondary-sm[data-v-0a91f036]:hover{background:#f8fafc}.modules-group[data-v-0a91f036]{display:flex;flex-direction:column;gap:.4rem}.modules-group-header[data-v-0a91f036]{display:flex;align-items:center;gap:.4rem;padding:0 .25rem .4rem;border-bottom:1px solid #f1f5f9;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#94a3b8;font-family:Inter,sans-serif}.group-count[data-v-0a91f036]{margin-left:auto;background:#e2e8f0;color:#64748b;border-radius:99px;padding:.05rem .45rem;font-size:.7rem}.group-loading[data-v-0a91f036],.group-empty[data-v-0a91f036]{padding:1.5rem 1rem;text-align:center;font-size:.875rem;color:#94a3b8;font-family:Inter,sans-serif}.group-empty p[data-v-0a91f036]{margin:0}.module-row[data-v-0a91f036]{display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;background:#fff;border:1px solid #e2e8f0;border-left:3px solid #c4b5fd;border-radius:10px;transition:box-shadow .2s,border-left-color .2s;flex-wrap:wrap}.module-row[data-v-0a91f036]:hover{box-shadow:0 2px 8px #7c3aed1a;border-left-color:#7c3aed}.module-row.standalone[data-v-0a91f036]{border-left-color:#a5b4fc}.module-row.standalone[data-v-0a91f036]:hover{border-left-color:#6366f1}.module-row-info[data-v-0a91f036]{display:flex;flex-direction:column;gap:.1rem;min-width:160px;flex-shrink:0}.module-source-badge[data-v-0a91f036]{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6366f1;font-family:Inter,sans-serif}.module-row-course[data-v-0a91f036]{font-size:.7rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-family:Inter,sans-serif}.module-row-title[data-v-0a91f036]{font-size:.9375rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif}.module-row-meta[data-v-0a91f036]{font-size:.75rem;color:#94a3b8;font-family:Inter,sans-serif}.module-row-tags[data-v-0a91f036]{display:flex;flex-wrap:wrap;gap:.3rem;flex:1}.module-row-actions[data-v-0a91f036]{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.row-action-btn[data-v-0a91f036]{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .625rem;background:transparent;border:1px solid #e2e8f0;border-radius:6px;font-size:.775rem;font-weight:500;color:#64748b;cursor:pointer;font-family:Inter,sans-serif;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}.row-action-btn[data-v-0a91f036]:hover{border-color:#a5b4fc;color:#4f46e5;background:#f5f3ff}.row-action-btn.danger[data-v-0a91f036]:hover{border-color:#fca5a5;color:#dc2626;background:#fef2f2}.mtag[data-v-0a91f036]{display:inline-flex;align-items:center;gap:.2rem;padding:.175rem .55rem;border-radius:20px;font-size:.7rem;font-weight:600;font-family:Inter,sans-serif;white-space:nowrap}.mtag-grammar[data-v-0a91f036]{background:#ede9fe;color:#5b21b6}.mtag-vocab[data-v-0a91f036]{background:#d1fae5;color:#065f46}.mtag-course[data-v-0a91f036]{background:#dbeafe;color:#1e40af}.mtag-ability[data-v-0a91f036]{background:#fef3c7;color:#92400e}.mtag-unclassified[data-v-0a91f036]{background:#f1f5f9;color:#94a3b8;border:1px dashed #cbd5e1;font-weight:500}.card-enter-active[data-v-0a91f036]{transition:opacity .4s ease,transform .4s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--i, 0) * 55ms)}.card-enter-from[data-v-0a91f036]{opacity:0;transform:translateY(20px) scale(.95)}.card-move[data-v-0a91f036]{transition:transform .35s ease}.hw-card[data-v-b6c1954b]{background:#fff;border:1px solid #e2e8f0;border-left:3px solid #e2e8f0;border-radius:12px;padding:1rem 1.125rem;display:flex;flex-direction:column;gap:.5rem;font-family:Inter,sans-serif;transition:box-shadow .2s,border-left-color .2s;position:relative}.hw-card[data-v-b6c1954b]:hover{box-shadow:0 4px 16px #00000012}.status-late[data-v-b6c1954b]{border-left-color:#ef4444}.status-pending[data-v-b6c1954b]{border-left-color:#f97316}.status-submitted[data-v-b6c1954b]{border-left-color:#10b981}.status-reviewed[data-v-b6c1954b]{border-left-color:#7c3aed}.card-status-badge[data-v-b6c1954b]{position:absolute;top:.875rem;right:.875rem;display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .5rem;border-radius:20px;font-size:.675rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.badge-late[data-v-b6c1954b]{background:#fee2e2;color:#dc2626}.badge-pending[data-v-b6c1954b]{background:#ffedd5;color:#ea580c}.badge-submitted[data-v-b6c1954b]{background:#d1fae5;color:#059669}.badge-reviewed[data-v-b6c1954b]{background:#ede9fe;color:#6d28d9}.card-type-row[data-v-b6c1954b]{display:flex;align-items:center;gap:.4rem}.type-chip[data-v-b6c1954b]{display:inline-flex;align-items:center;gap:.2rem;padding:.2rem .5rem;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.type-exercise[data-v-b6c1954b]{background:#d1fae5;color:#065f46}.type-text[data-v-b6c1954b]{background:#f1f5f9;color:#475569}.type-video[data-v-b6c1954b]{background:#dbeafe;color:#1e40af}.type-audio[data-v-b6c1954b]{background:#ede9fe;color:#5b21b6}.type-vocabulary[data-v-b6c1954b]{background:#fef3c7;color:#92400e}.type-module[data-v-b6c1954b]{background:#e0f2fe;color:#0369a1}.card-title[data-v-b6c1954b]{font-size:.9375rem;font-weight:700;color:#0f172a;margin:0;line-height:1.4;padding-right:4.5rem}.card-meta[data-v-b6c1954b]{display:flex;align-items:center;gap:.3rem;font-size:.8125rem;color:#64748b}.meta-overdue[data-v-b6c1954b]{color:#dc2626;font-weight:600}.card-score[data-v-b6c1954b]{font-size:.8125rem;color:#374151}.card-tags[data-v-b6c1954b]{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.125rem}.mtag[data-v-b6c1954b]{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:20px;font-size:.68rem;font-weight:600}.mtag-grammar[data-v-b6c1954b]{background:#ede9fe;color:#5b21b6}.mtag-course[data-v-b6c1954b]{background:#dbeafe;color:#1e40af}.mtag-ability[data-v-b6c1954b]{background:#fef3c7;color:#92400e}.card-actions[data-v-b6c1954b]{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.btn-view[data-v-b6c1954b]{display:inline-flex;align-items:center;gap:.25rem;padding:.375rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;font-size:.8125rem;font-weight:500;color:#374151;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,border-color .15s}.btn-view[data-v-b6c1954b]:hover{background:#f1f5f9;border-color:#cbd5e1}.btn-del[data-v-b6c1954b]{display:inline-flex;align-items:center;padding:.375rem;background:transparent;border:1px solid #e2e8f0;border-radius:7px;color:#94a3b8;cursor:pointer;font-family:Inter,sans-serif;transition:color .15s,border-color .15s,background .15s}.btn-del[data-v-b6c1954b]:hover{color:#dc2626;border-color:#fca5a5;background:#fef2f2}.modal-overlay[data-v-de1c1051]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal[data-v-de1c1051]{background:#fff;border-radius:16px;width:100%;max-width:580px;box-shadow:0 20px 60px #0000002e;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.modal-header[data-v-de1c1051]{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid #f1f5f9}.modal-title[data-v-de1c1051]{font-size:1.0625rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif;margin:0 0 .5rem}.step-indicator[data-v-de1c1051]{display:flex;align-items:center;gap:.375rem}.step-dot[data-v-de1c1051]{width:8px;height:8px;border-radius:50%;background:#e2e8f0;transition:background .2s}.step-dot.active[data-v-de1c1051]{background:#f97316}.step-dot.done[data-v-de1c1051]{background:#10b981}.step-label[data-v-de1c1051]{font-size:.75rem;color:#64748b;font-family:Inter,sans-serif;margin-left:.25rem}.btn-close[data-v-de1c1051]{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.25rem;border-radius:6px;display:flex;align-items:center;flex-shrink:0;transition:background .15s}.btn-close[data-v-de1c1051]:hover{background:#f1f5f9;color:#374151}.modal-body[data-v-de1c1051]{padding:1.25rem 1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem;flex:1}.step-description[data-v-de1c1051]{font-size:.875rem;color:#64748b;margin:0;font-family:Inter,sans-serif}.search-wrap[data-v-de1c1051]{position:relative}.search-icon[data-v-de1c1051]{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.search-input[data-v-de1c1051]{width:100%;padding:.5rem .75rem .5rem 2.25rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#0f172a;font-family:Inter,sans-serif;background:#f8fafc;box-sizing:border-box;transition:border-color .15s}.search-input[data-v-de1c1051]:focus{outline:none;border-color:#f97316;background:#fff}.tag-filters[data-v-de1c1051]{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.tag-filter-group[data-v-de1c1051]{display:flex;align-items:flex-start;gap:.5rem;flex-wrap:wrap}.tag-filter-label[data-v-de1c1051]{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-family:Inter,sans-serif;padding-top:.2rem;white-space:nowrap;min-width:72px}.tag-filter-pills[data-v-de1c1051]{display:flex;flex-wrap:wrap;gap:.25rem;flex:1}.tag-pill[data-v-de1c1051]{padding:.2rem .55rem;border-radius:20px;font-size:.72rem;font-weight:600;font-family:Inter,sans-serif;cursor:pointer;border:1.5px solid transparent;transition:all .15s}.tag-pill-grammar[data-v-de1c1051]{background:#ede9fe;color:#5b21b6;border-color:#ede9fe}.tag-pill-grammar.active[data-v-de1c1051]{background:#7c3aed;color:#fff;border-color:#7c3aed}.tag-pill-vocab[data-v-de1c1051]{background:#d1fae5;color:#065f46;border-color:#d1fae5}.tag-pill-vocab.active[data-v-de1c1051]{background:#059669;color:#fff;border-color:#059669}.tag-pill-ability[data-v-de1c1051]{background:#fef3c7;color:#92400e;border-color:#fef3c7}.tag-pill-ability.active[data-v-de1c1051]{background:#d97706;color:#fff;border-color:#d97706}.btn-clear-filters[data-v-de1c1051]{align-self:flex-start;padding:.2rem .6rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#64748b;font-size:.75rem;font-family:Inter,sans-serif;cursor:pointer;transition:background .15s;margin-top:.25rem}.btn-clear-filters[data-v-de1c1051]:hover{background:#f1f5f9}.content-list[data-v-de1c1051]{display:flex;flex-direction:column;gap:.375rem;max-height:280px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:10px;padding:.375rem}.list-loading[data-v-de1c1051]{text-align:center;padding:2rem;font-size:.875rem;color:#94a3b8;font-family:Inter,sans-serif}.content-item[data-v-de1c1051]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .875rem;border-radius:8px;cursor:pointer;border:1.5px solid transparent;transition:background .15s,border-color .15s}.content-item[data-v-de1c1051]:hover{background:#f8fafc}.content-item.selected[data-v-de1c1051]{background:#fff7ed;border-color:#f97316}.content-item-info[data-v-de1c1051]{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:0}.module-title-row[data-v-de1c1051]{display:flex;align-items:center;gap:.4rem}.module-icon[data-v-de1c1051]{color:#0369a1;flex-shrink:0}.content-item-title[data-v-de1c1051]{font-size:.9rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-count[data-v-de1c1051]{font-size:.72rem;color:#94a3b8;font-family:Inter,sans-serif;flex-shrink:0}.source-badge[data-v-de1c1051]{font-size:.65rem;font-weight:600;padding:.1rem .4rem;background:#f0f9ff;color:#0369a1;border-radius:20px;border:1px solid #bae6fd;flex-shrink:0;font-family:Inter,sans-serif}.module-tags[data-v-de1c1051]{display:flex;flex-wrap:wrap;gap:.2rem;min-height:0}.check-icon[data-v-de1c1051]{color:#f97316;flex-shrink:0}.list-empty[data-v-de1c1051]{padding:1.5rem;text-align:center;color:#94a3b8;font-size:.875rem;font-family:Inter,sans-serif;margin:0}.mtag[data-v-de1c1051]{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:20px;font-size:.68rem;font-weight:600;font-family:Inter,sans-serif}.mtag-grammar[data-v-de1c1051]{background:#ede9fe;color:#5b21b6}.mtag-vocab[data-v-de1c1051]{background:#d1fae5;color:#065f46}.mtag-ability[data-v-de1c1051]{background:#fef3c7;color:#92400e}.selected-content-summary[data-v-de1c1051]{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px}.summary-title[data-v-de1c1051]{font-size:.9rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif;flex:1}.section-label[data-v-de1c1051]{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-family:Inter,sans-serif}.required[data-v-de1c1051]{color:#ef4444}.students-list[data-v-de1c1051]{display:flex;flex-direction:column;gap:.25rem;max-height:200px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:8px;padding:.375rem .75rem}.student-check-row[data-v-de1c1051]{display:flex;align-items:center;gap:.625rem;padding:.375rem 0;cursor:pointer;font-family:Inter,sans-serif}.student-check-row input[type=checkbox][data-v-de1c1051]{accent-color:#f97316;width:15px;height:15px;cursor:pointer}.student-name[data-v-de1c1051]{font-size:.875rem;color:#374151}.btn-select-all[data-v-de1c1051]{align-self:flex-start;padding:.25rem .625rem;background:transparent;border:1px solid #e2e8f0;border-radius:6px;font-size:.775rem;color:#64748b;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-select-all[data-v-de1c1051]:hover{background:#f1f5f9}.field-group[data-v-de1c1051]{display:flex;flex-direction:column;gap:.4rem}.date-input[data-v-de1c1051]{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#0f172a;font-family:Inter,sans-serif;background:#f8fafc;transition:border-color .15s}.date-input[data-v-de1c1051]:focus{outline:none;border-color:#f97316;background:#fff}.confirm-block[data-v-de1c1051]{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.confirm-row[data-v-de1c1051]{display:flex;justify-content:space-between;align-items:center;padding:.625rem 1rem;border-bottom:1px solid #f1f5f9}.confirm-row[data-v-de1c1051]:last-child{border-bottom:none}.confirm-tags-row[data-v-de1c1051]{align-items:flex-start}.confirm-label[data-v-de1c1051]{font-size:.8rem;color:#64748b;font-family:Inter,sans-serif}.confirm-value[data-v-de1c1051]{font-size:.875rem;font-weight:600;color:#0f172a;font-family:Inter,sans-serif}.confirm-tags[data-v-de1c1051]{display:flex;flex-wrap:wrap;gap:.25rem}.modal-footer[data-v-de1c1051]{display:flex;justify-content:flex-end;gap:.625rem;padding:1rem 1.5rem;border-top:1px solid #f1f5f9}.btn-primary[data-v-de1c1051]{display:inline-flex;align-items:center;gap:.375rem;padding:.55rem 1.125rem;background:#f97316;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-primary[data-v-de1c1051]:hover{background:#ea6c0a}.btn-primary[data-v-de1c1051]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-de1c1051]{display:inline-flex;align-items:center;gap:.375rem;padding:.55rem 1.125rem;background:#fff;color:#374151;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-secondary[data-v-de1c1051]:hover{background:#f8fafc}.modal-overlay[data-v-d2060e88]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal[data-v-d2060e88]{background:#fff;border-radius:16px;width:100%;max-width:520px;box-shadow:0 20px 60px #0000002e;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.modal-header[data-v-d2060e88]{display:flex;align-items:flex-start;justify-content:space-between;padding:1.5rem 1.5rem 1rem;border-bottom:1px solid #f1f5f9}.header-type-row[data-v-d2060e88]{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.modal-title[data-v-d2060e88]{font-size:1.0625rem;font-weight:700;color:#0f172a;font-family:Inter,sans-serif;margin:0 0 .3rem}.modal-subtitle[data-v-d2060e88]{font-size:.8rem;color:#64748b;font-family:Inter,sans-serif;margin:0;display:flex;align-items:center;gap:.3rem}.sep[data-v-d2060e88]{color:#cbd5e1}.btn-close[data-v-d2060e88]{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.25rem;border-radius:6px;display:flex;align-items:center;transition:background .15s;flex-shrink:0}.btn-close[data-v-d2060e88]:hover{background:#f1f5f9;color:#374151}.type-chip[data-v-d2060e88]{display:inline-flex;align-items:center;gap:.2rem;padding:.2rem .5rem;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.type-exercise[data-v-d2060e88]{background:#d1fae5;color:#065f46}.type-text[data-v-d2060e88]{background:#f1f5f9;color:#475569}.type-video[data-v-d2060e88]{background:#dbeafe;color:#1e40af}.type-audio[data-v-d2060e88]{background:#ede9fe;color:#5b21b6}.type-vocabulary[data-v-d2060e88]{background:#fef3c7;color:#92400e}.type-module[data-v-d2060e88]{background:#e0f2fe;color:#0369a1}.status-chip[data-v-d2060e88]{display:inline-flex;align-items:center;padding:.2rem .5rem;border-radius:20px;font-size:.675rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.badge-late[data-v-d2060e88]{background:#fee2e2;color:#dc2626}.badge-pending[data-v-d2060e88]{background:#ffedd5;color:#ea580c}.badge-submitted[data-v-d2060e88]{background:#d1fae5;color:#059669}.badge-reviewed[data-v-d2060e88]{background:#ede9fe;color:#6d28d9}.modal-body[data-v-d2060e88]{padding:1.25rem 1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.125rem}.info-block[data-v-d2060e88]{display:flex;flex-direction:column;gap:.25rem}.info-label[data-v-d2060e88]{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-family:Inter,sans-serif}.info-value[data-v-d2060e88]{font-size:.9rem;color:#374151;margin:0;font-family:Inter,sans-serif}.note-value[data-v-d2060e88]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.625rem .875rem;line-height:1.5}.score-block[data-v-d2060e88]{display:flex;flex-direction:column;gap:.4rem}.score-display[data-v-d2060e88]{display:flex;align-items:baseline;gap:.1rem}.score-value[data-v-d2060e88]{font-size:2rem;font-weight:800;color:#059669;font-family:Inter,sans-serif}.score-max[data-v-d2060e88]{font-size:1rem;color:#94a3b8;font-family:Inter,sans-serif}.score-bar[data-v-d2060e88]{height:6px;background:#e2e8f0;border-radius:99px;overflow:hidden}.score-fill[data-v-d2060e88]{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:99px;transition:width .5s ease}.tags-row[data-v-d2060e88]{display:flex;flex-wrap:wrap;gap:.3rem}.mtag[data-v-d2060e88]{display:inline-flex;align-items:center;padding:.175rem .55rem;border-radius:20px;font-size:.7rem;font-weight:600;font-family:Inter,sans-serif}.mtag-grammar[data-v-d2060e88]{background:#ede9fe;color:#5b21b6}.mtag-vocab[data-v-d2060e88]{background:#d1fae5;color:#065f46}.mtag-course[data-v-d2060e88]{background:#dbeafe;color:#1e40af}.mtag-ability[data-v-d2060e88]{background:#fef3c7;color:#92400e}.feedback-section[data-v-d2060e88]{display:flex;flex-direction:column;gap:.5rem}.feedback-textarea[data-v-d2060e88]{width:100%;padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#374151;font-family:Inter,sans-serif;background:#f8fafc;resize:vertical;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.feedback-textarea[data-v-d2060e88]:focus{outline:none;border-color:#f97316;box-shadow:0 0 0 3px #f973161f;background:#fff}.btn-save-feedback[data-v-d2060e88]{align-self:flex-end;padding:.45rem 1rem;background:#f97316;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-save-feedback[data-v-d2060e88]:hover{background:#ea6c0a}.btn-save-feedback[data-v-d2060e88]:disabled{opacity:.5;cursor:not-allowed}.homework-tab[data-v-03df706f]{max-width:1200px;font-family:Inter,sans-serif}.page-header[data-v-03df706f]{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.section-title[data-v-03df706f]{font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,#f97316,#ef4444);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 .25rem;letter-spacing:-.4px}.page-header p[data-v-03df706f]{font-size:.925rem;color:#64748b;margin:0}.btn-new[data-v-03df706f]{display:flex;align-items:center;gap:.375rem;padding:.5625rem 1.125rem;background:#f97316;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;margin:0;font-family:Inter,sans-serif;transition:background .15s}.btn-new[data-v-03df706f]:hover{background:#ea6c0a}.filters-row[data-v-03df706f]{display:flex;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.filter-group[data-v-03df706f]{display:flex;flex-direction:column;gap:.3rem}.filter-group label[data-v-03df706f]{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;font-family:Inter,sans-serif}.filter-select[data-v-03df706f]{padding:.45rem .75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.875rem;color:#374151;background:#fff;font-family:Inter,sans-serif;cursor:pointer;min-width:150px}.filter-select[data-v-03df706f]:focus{outline:none;border-color:#f97316}.btn-clear-filters[data-v-03df706f]{display:inline-flex;align-items:center;gap:.25rem;padding:.45rem .75rem;border:1px solid #fed7aa;border-radius:8px;background:#fff7ed;color:#ea580c;font-size:.8rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;align-self:flex-end}.btn-clear-filters[data-v-03df706f]:hover{background:#ffedd5}.loading-state[data-v-03df706f]{display:flex;justify-content:center;padding:4rem}.spinner[data-v-03df706f]{width:32px;height:32px;border:3px solid #fed7aa;border-top-color:#f97316;border-radius:50%;animation:spin-03df706f .8s linear infinite}@keyframes spin-03df706f{to{transform:rotate(360deg)}}.hw-group[data-v-03df706f]{margin-bottom:2rem}.group-header[data-v-03df706f]{display:flex;align-items:center;gap:.5rem;padding:0 .25rem .5rem;margin-bottom:.75rem;border-bottom:2px solid;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-family:Inter,sans-serif}.group-count[data-v-03df706f]{margin-left:auto;font-size:.75rem;border-radius:99px;padding:.1rem .5rem;font-weight:600}.group-late[data-v-03df706f]{color:#dc2626;border-color:#fca5a5}.group-late .group-count[data-v-03df706f]{background:#fee2e2;color:#dc2626}.group-pending[data-v-03df706f]{color:#d97706;border-color:#fcd34d}.group-pending .group-count[data-v-03df706f]{background:#fef3c7;color:#d97706}.group-submitted[data-v-03df706f]{color:#059669;border-color:#6ee7b7}.group-submitted .group-count[data-v-03df706f]{background:#d1fae5;color:#059669}.group-reviewed[data-v-03df706f]{color:#7c3aed;border-color:#c4b5fd}.group-reviewed .group-count[data-v-03df706f]{background:#ede9fe;color:#7c3aed}.hw-grid[data-v-03df706f]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.empty-state[data-v-03df706f]{display:flex;flex-direction:column;align-items:center;gap:.625rem;padding:4rem 2rem;text-align:center}.empty-icon[data-v-03df706f]{color:#fdba74;opacity:.7;animation:float-03df706f 3s ease-in-out infinite}.empty-title[data-v-03df706f]{font-size:1.125rem;font-weight:700;color:#1e293b;margin:0;font-family:Inter,sans-serif}.empty-hint[data-v-03df706f]{font-size:.875rem;color:#64748b;margin:0 0 .5rem;max-width:340px;line-height:1.5;font-family:Inter,sans-serif}@keyframes float-03df706f{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.tab-content[data-v-68fc9a4d]{font-family:Inter,sans-serif}.page-header[data-v-68fc9a4d]{margin-bottom:2rem}.section-title[data-v-68fc9a4d]{margin:0;font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,var(--section-color, #64748b),var(--section-color-2, #94a3b8));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.4px}.settings-body[data-v-68fc9a4d]{display:flex;flex-direction:column;gap:2rem;max-width:560px}.settings-section-title[data-v-68fc9a4d]{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;margin:0 0 .75rem}.settings-card[data-v-68fc9a4d]{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.5rem;box-shadow:0 1px 3px #0000000d}.field-group[data-v-68fc9a4d]{display:flex;flex-direction:column;gap:.375rem}.field-group label[data-v-68fc9a4d]{font-size:.875rem;font-weight:600;color:#374151}.field-row[data-v-68fc9a4d]{display:flex;gap:.625rem}.field-row input[data-v-68fc9a4d]{flex:1;padding:.575rem .875rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;color:#0f172a;background:#fff;font-family:Inter,sans-serif;transition:border-color .15s,box-shadow .15s}.field-row input[data-v-68fc9a4d]:focus{outline:none;border-color:var(--section-color, #4f46e5);box-shadow:0 0 0 3px color-mix(in srgb,var(--section-color, #4f46e5) 15%,transparent)}.field-hint[data-v-68fc9a4d]{font-size:.8125rem;color:#94a3b8;margin:0}.btn-save[data-v-68fc9a4d]{padding:.575rem 1.125rem;background:var(--section-color, #4f46e5);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:opacity .15s;white-space:nowrap}.btn-save[data-v-68fc9a4d]:disabled{opacity:.4;cursor:not-allowed}.btn-save[data-v-68fc9a4d]:not(:disabled):hover{opacity:.85}.session-row[data-v-68fc9a4d]{display:flex;align-items:center;justify-content:space-between;gap:1rem}.session-label[data-v-68fc9a4d]{font-size:.9375rem;font-weight:600;color:#0f172a;margin:0 0 .25rem}.session-hint[data-v-68fc9a4d]{font-size:.8125rem;color:#64748b;margin:0}.btn-logout[data-v-68fc9a4d]{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.125rem;background:#fef2f2;color:#ef4444;border:1px solid #fecaca;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,border-color .15s;white-space:nowrap}.btn-logout[data-v-68fc9a4d]:hover{background:#fee2e2;border-color:#f87171}.access-tab[data-v-509cd723]{max-width:900px}.tab-header[data-v-509cd723]{margin-bottom:1.75rem}.tab-title[data-v-509cd723]{font-size:1.75rem;font-weight:700;color:#0f172a;margin:0 0 .3rem}.tab-subtitle[data-v-509cd723]{color:#64748b;font-size:.925rem;margin:0}.stats-grid[data-v-509cd723]{display:grid;grid-template-columns:repeat(4,1fr);gap:.875rem;margin-bottom:1.75rem}.stat-card[data-v-509cd723]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1rem 1.1rem;display:flex;align-items:center;gap:.9rem;box-shadow:0 1px 3px #0000000a;transition:box-shadow .15s}.stat-card[data-v-509cd723]:hover{box-shadow:0 3px 8px #00000012}.stat-icon[data-v-509cd723]{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon--blue[data-v-509cd723]{background:#dbeafe;color:#2563eb}.stat-icon--green[data-v-509cd723]{background:#dcfce7;color:#16a34a}.stat-icon--emerald[data-v-509cd723]{background:#d1fae5;color:#059669}.stat-icon--purple[data-v-509cd723]{background:#ede9fe;color:#7c3aed}.stat-body[data-v-509cd723]{display:flex;flex-direction:column;gap:.1rem}.stat-value[data-v-509cd723]{font-size:1.5rem;font-weight:700;color:#0f172a;line-height:1}.stat-label[data-v-509cd723]{font-size:.78rem;color:#64748b;white-space:nowrap}.section[data-v-509cd723]{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 4px #0000000a}.section-head[data-v-509cd723]{margin-bottom:1.1rem}.section-title[data-v-509cd723]{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;color:#0f172a;margin:0 0 .3rem}.section-desc[data-v-509cd723]{font-size:.86rem;color:#64748b;margin:0}.toolbar[data-v-509cd723]{display:flex;align-items:center;gap:.75rem;margin-bottom:1.1rem;flex-wrap:wrap}.search-wrap[data-v-509cd723]{position:relative;flex:1;min-width:180px}.search-icon[data-v-509cd723]{position:absolute;left:.65rem;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.search-input[data-v-509cd723]{width:100%;padding:.45rem 2rem;font-size:.875rem;font-family:Inter,sans-serif;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#0f172a;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.search-input[data-v-509cd723]::placeholder{color:#94a3b8}.search-input[data-v-509cd723]:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;background:#fff}.clear-btn[data-v-509cd723]{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#94a3b8;padding:.2rem;display:flex;align-items:center;border-radius:4px}.clear-btn[data-v-509cd723]:hover{color:#475569}.filter-pills[data-v-509cd723]{display:flex;gap:.35rem;flex-shrink:0}.filter-pill[data-v-509cd723]{padding:.35rem .65rem;font-size:.8rem;font-weight:500;font-family:Inter,sans-serif;border:1px solid #e2e8f0;border-radius:20px;background:#f8fafc;color:#64748b;cursor:pointer;display:flex;align-items:center;gap:.35rem;transition:all .15s;white-space:nowrap}.filter-pill[data-v-509cd723]:hover{border-color:#cbd5e1;color:#475569}.filter-pill--active[data-v-509cd723]{background:#0f172a;border-color:#0f172a;color:#fff}.pill-count[data-v-509cd723]{font-size:.72rem;font-weight:600;background:#fff3;padding:0 .35rem;border-radius:10px;min-width:18px;text-align:center}.filter-pill:not(.filter-pill--active) .pill-count[data-v-509cd723]{background:#e2e8f0;color:#475569}.sort-select[data-v-509cd723]{padding:.4rem .65rem;font-size:.825rem;font-family:Inter,sans-serif;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#475569;cursor:pointer;outline:none;flex-shrink:0}.sort-select[data-v-509cd723]:focus{border-color:#6366f1}.skeleton-list[data-v-509cd723]{display:flex;flex-direction:column;gap:.6rem}.skeleton-row[data-v-509cd723]{height:72px;border-radius:10px;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:shimmer-509cd723 1.4s infinite}@keyframes shimmer-509cd723{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state[data-v-509cd723]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2.5rem 1rem;color:#94a3b8;font-size:.9rem}.empty-icon[data-v-509cd723]{color:#cbd5e1}.student-list[data-v-509cd723]{display:flex;flex-direction:column;gap:.5rem}.student-card[data-v-509cd723]{display:flex;align-items:center;gap:1rem;padding:.9rem 1rem;border:1px solid #f1f5f9;border-radius:12px;background:#fafafa;transition:border-color .15s,box-shadow .15s,background .15s}.student-card[data-v-509cd723]:hover{border-color:#e2e8f0;box-shadow:0 2px 8px #0000000d;background:#fff}.student-card--granted[data-v-509cd723]{border-color:#bbf7d0;background:#f0fdf4}.student-card--granted[data-v-509cd723]:hover{border-color:#86efac;box-shadow:0 2px 8px #10b98114}.avatar-wrap[data-v-509cd723]{position:relative;flex-shrink:0}.student-avatar[data-v-509cd723]{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;color:#fff;letter-spacing:.02em}.activity-dot[data-v-509cd723]{position:absolute;bottom:-2px;right:-2px;width:11px;height:11px;border-radius:50%;border:2px solid #fff}.dot--active[data-v-509cd723]{background:#22c55e}.dot--recent[data-v-509cd723]{background:#84cc16}.dot--idle[data-v-509cd723]{background:#f59e0b}.dot--away[data-v-509cd723]{background:#94a3b8}.dot--never[data-v-509cd723]{background:#e2e8f0}.student-info[data-v-509cd723]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.name-line[data-v-509cd723]{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.student-name[data-v-509cd723]{font-size:.9rem;font-weight:600;color:#0f172a}.inline-badge[data-v-509cd723]{display:inline-flex;align-items:center;gap:.2rem;font-size:.7rem;font-weight:600;padding:.15rem .45rem;border-radius:20px;line-height:1.4;white-space:nowrap}.badge--google[data-v-509cd723]{background:#fef3c7;color:#92400e}.badge--email[data-v-509cd723]{background:#e0f2fe;color:#0369a1}.badge--apple[data-v-509cd723]{background:#f1f5f9;color:#1e293b}.badge--verified[data-v-509cd723]{background:#d1fae5;color:#065f46}.student-email[data-v-509cd723]{font-size:.8rem;color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta-chips[data-v-509cd723]{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;margin-top:.1rem}.chip[data-v-509cd723]{display:inline-flex;align-items:center;gap:.22rem;font-size:.75rem;color:#64748b;background:#f1f5f9;padding:.18rem .5rem;border-radius:6px;white-space:nowrap}.chip--muted[data-v-509cd723]{color:#94a3b8;background:#f8fafc}.chip--warn[data-v-509cd723]{background:#fef2f2;color:#dc2626}.progress-row[data-v-509cd723]{display:flex;align-items:center;gap:.5rem;margin-top:.3rem}.progress-track[data-v-509cd723]{flex:1;height:5px;background:#e2e8f0;border-radius:10px;overflow:hidden;max-width:160px}.progress-fill[data-v-509cd723]{height:100%;border-radius:10px;transition:width .3s ease}.pf--low[data-v-509cd723]{background:#f87171}.pf--mid[data-v-509cd723]{background:#f59e0b}.pf--high[data-v-509cd723]{background:#22c55e}.progress-pct[data-v-509cd723]{font-size:.75rem;font-weight:600;color:#64748b;min-width:30px}.no-progress[data-v-509cd723]{font-size:.75rem;color:#cbd5e1;margin-top:.2rem}.student-access[data-v-509cd723]{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;flex-shrink:0}.access-status-badge[data-v-509cd723]{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:600;padding:.2rem .6rem;border-radius:20px;white-space:nowrap}.asb--on[data-v-509cd723]{background:#dcfce7;color:#15803d}.asb--off[data-v-509cd723]{background:#f1f5f9;color:#64748b}.access-toggle-btn[data-v-509cd723]{display:flex;align-items:center;justify-content:center;gap:.3rem;padding:.35rem .9rem;border-radius:8px;font-size:.825rem;font-weight:600;font-family:Inter,sans-serif;border:1px solid;cursor:pointer;transition:all .15s;min-width:80px;white-space:nowrap}.access-toggle-btn[data-v-509cd723]:disabled{opacity:.5;cursor:not-allowed}.atb--grant[data-v-509cd723]{background:#f0fdf4;border-color:#86efac;color:#15803d}.atb--grant[data-v-509cd723]:hover:not(:disabled){background:#dcfce7;border-color:#4ade80}.atb--revoke[data-v-509cd723]{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.atb--revoke[data-v-509cd723]:hover:not(:disabled){background:#fee2e2;border-color:#f87171}.access-actions[data-v-509cd723]{display:flex;align-items:center;gap:.4rem}.delete-student-btn[data-v-509cd723]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#94a3b8;cursor:pointer;transition:all .15s;flex-shrink:0}.delete-student-btn[data-v-509cd723]:hover:not(:disabled){background:#fef2f2;border-color:#fca5a5;color:#dc2626}.delete-student-btn[data-v-509cd723]:disabled{opacity:.4;cursor:not-allowed}.courses-list[data-v-509cd723]{display:flex;flex-direction:column;gap:.6rem}.course-card[data-v-509cd723]{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.course-header[data-v-509cd723]{width:100%;display:flex;align-items:center;gap:.75rem;padding:.8rem 1rem;background:#f8fafc;border:none;cursor:pointer;text-align:left;font-family:Inter,sans-serif;transition:background .15s}.course-header[data-v-509cd723]:hover{background:#f1f5f9}.course-name[data-v-509cd723]{flex:1;font-size:.9rem;font-weight:600;color:#0f172a;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-tier-summary[data-v-509cd723]{display:flex;gap:.4rem;flex-shrink:0}.tier-chip[data-v-509cd723]{display:inline-flex;align-items:center;gap:.2rem;font-size:.73rem;font-weight:600;padding:.18rem .55rem;border-radius:20px;white-space:nowrap}.tier-chip--free[data-v-509cd723]{background:#d1fae5;color:#065f46}.tier-chip--premium[data-v-509cd723]{background:#ede9fe;color:#5b21b6}.chevron[data-v-509cd723]{color:#94a3b8;transition:transform .2s;flex-shrink:0}.chevron--open[data-v-509cd723]{transform:rotate(180deg)}.modules-list[data-v-509cd723]{border-top:1px solid #e2e8f0}.no-modules[data-v-509cd723]{padding:.75rem 1rem;font-size:.85rem;color:#94a3b8}.module-row[data-v-509cd723]{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;border-bottom:1px solid #f8fafc;transition:background .1s}.module-row[data-v-509cd723]:last-child{border-bottom:none}.module-row[data-v-509cd723]:hover{background:#fafafa}.mod-index[data-v-509cd723]{font-size:.75rem;font-weight:700;color:#cbd5e1;min-width:18px;text-align:right;flex-shrink:0}.mod-title[data-v-509cd723]{flex:1;font-size:.875rem;color:#374151;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mod-meta[data-v-509cd723]{font-size:.77rem;color:#94a3b8;flex-shrink:0;white-space:nowrap}.tier-switch[data-v-509cd723]{display:flex;border:1px solid #e2e8f0;border-radius:7px;overflow:hidden;flex-shrink:0}.tier-opt[data-v-509cd723]{display:flex;align-items:center;gap:.25rem;padding:.28rem .65rem;font-size:.78rem;font-weight:600;font-family:Inter,sans-serif;border:none;background:#fff;color:#94a3b8;cursor:pointer;transition:background .12s,color .12s}.tier-opt[data-v-509cd723]:not(:last-child){border-right:1px solid #e2e8f0}.tier-opt[data-v-509cd723]:disabled{opacity:.5;cursor:not-allowed}.tier-opt[data-v-509cd723]:hover:not(:disabled){background:#f1f5f9;color:#475569}.tier-opt--free[data-v-509cd723]{background:#d1fae5!important;color:#065f46!important}.tier-opt--premium[data-v-509cd723]{background:#ede9fe!important;color:#5b21b6!important}.slide-down-enter-active[data-v-509cd723],.slide-down-leave-active[data-v-509cd723]{transition:max-height .22s ease,opacity .18s ease;max-height:1000px;overflow:hidden;opacity:1}.slide-down-enter-from[data-v-509cd723],.slide-down-leave-to[data-v-509cd723]{max-height:0;opacity:0}.spin[data-v-509cd723]{animation:spin-509cd723 .8s linear infinite}@keyframes spin-509cd723{to{transform:rotate(360deg)}}.loading-state[data-v-509cd723]{color:#94a3b8;font-size:.875rem;padding:1rem 0;display:flex;align-items:center;gap:.5rem}.toast-container[data-v-2db213fd]{position:fixed;bottom:1.5rem;right:1.5rem;z-index:9999;pointer-events:none}.toast-list[data-v-2db213fd]{display:flex;flex-direction:column;gap:.625rem;align-items:flex-end}.toast[data-v-2db213fd]{pointer-events:all;position:relative;display:flex;align-items:center;gap:.625rem;padding:.75rem 1rem .75rem .875rem;border-radius:12px;background:#fff;box-shadow:0 4px 20px #0000001f,0 1px 4px #0000000f;min-width:280px;max-width:420px;overflow:hidden;font-family:Inter,sans-serif;border-left:4px solid transparent}.toast--success[data-v-2db213fd]{border-left-color:#059669}.toast--error[data-v-2db213fd]{border-left-color:#ef4444}.toast--warning[data-v-2db213fd]{border-left-color:#f59e0b}.toast-icon[data-v-2db213fd]{flex-shrink:0;display:flex;align-items:center}.toast--success .toast-icon[data-v-2db213fd]{color:#059669}.toast--error .toast-icon[data-v-2db213fd]{color:#ef4444}.toast--warning .toast-icon[data-v-2db213fd]{color:#f59e0b}.toast-message[data-v-2db213fd]{flex:1;font-size:.875rem;font-weight:500;color:#0f172a;line-height:1.4}.toast-action[data-v-2db213fd]{flex-shrink:0;display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:6px;border:1px solid currentColor;background:transparent;font-size:.8rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,opacity .15s;margin-right:.125rem}.toast--success .toast-action[data-v-2db213fd]{color:#059669}.toast--error .toast-action[data-v-2db213fd]{color:#ef4444}.toast--warning .toast-action[data-v-2db213fd]{color:#f59e0b}.toast-action[data-v-2db213fd]:hover{background:#0000000d}.toast-close[data-v-2db213fd]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:0;transition:background .15s,color .15s}.toast-close[data-v-2db213fd]:hover{background:#f1f5f9;color:#374151}.toast-progress[data-v-2db213fd]{position:absolute;bottom:0;left:0;height:3px;border-radius:0 0 0 8px;animation:toast-drain-2db213fd var(--toast-duration, 3.8s) linear forwards}.toast--success .toast-progress[data-v-2db213fd]{background:#059669}.toast--error .toast-progress[data-v-2db213fd]{background:#ef4444}.toast--warning .toast-progress[data-v-2db213fd]{background:#f59e0b}@keyframes toast-drain-2db213fd{0%{width:100%}to{width:0%}}.toast-enter-active[data-v-2db213fd]{transition:all .35s cubic-bezier(.34,1.56,.64,1)}.toast-enter-from[data-v-2db213fd]{opacity:0;transform:translate(60px) scale(.85)}.toast-leave-active[data-v-2db213fd]{transition:all .2s ease-in}.toast-leave-to[data-v-2db213fd]{opacity:0;transform:translate(60px) scale(.9)}.toast-move[data-v-2db213fd]{transition:transform .3s ease}.fab-wrapper[data-v-503fd068]{position:fixed;bottom:2rem;right:2rem;z-index:200;display:flex;flex-direction:column;align-items:flex-end;gap:.75rem}.fab-backdrop[data-v-503fd068]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1}.fab-backdrop-enter-active[data-v-503fd068],.fab-backdrop-leave-active[data-v-503fd068]{transition:opacity .2s ease}.fab-backdrop-enter-from[data-v-503fd068],.fab-backdrop-leave-to[data-v-503fd068]{opacity:0}.fab-btn[data-v-503fd068]{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #7c3aed73;position:relative;overflow:hidden;transition:box-shadow .2s,transform .3s cubic-bezier(.34,1.56,.64,1)}.fab-btn[data-v-503fd068]:hover{box-shadow:0 6px 28px #7c3aed8c;transform:scale(1.08)}.fab-btn[data-v-503fd068]:active{transform:scale(.94)}.fab-btn.is-open[data-v-503fd068]{background:linear-gradient(135deg,#475569,#334155);box-shadow:0 4px 16px #0003}.fab-icon-enter-active[data-v-503fd068],.fab-icon-leave-active[data-v-503fd068]{transition:all .18s cubic-bezier(.34,1.56,.64,1)}.fab-icon-enter-from[data-v-503fd068]{opacity:0;transform:rotate(-90deg) scale(.5)}.fab-icon-leave-to[data-v-503fd068]{opacity:0;transform:rotate(90deg) scale(.5)}.fab-menu[data-v-503fd068]{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.fab-menu-enter-active[data-v-503fd068],.fab-menu-leave-active[data-v-503fd068]{transition:all .25s ease}.fab-menu-enter-from[data-v-503fd068],.fab-menu-leave-to[data-v-503fd068]{opacity:0;transform:translateY(12px) scale(.92)}.fab-item[data-v-503fd068]{display:flex;align-items:center;gap:.75rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:.5rem .75rem .5rem 1rem;cursor:pointer;box-shadow:0 2px 12px #0000001a;position:relative;overflow:hidden;animation:fab-item-in-503fd068 .3s cubic-bezier(.34,1.56,.64,1) var(--delay, 0ms) both;transition:box-shadow .15s,transform .2s cubic-bezier(.34,1.56,.64,1)}.fab-item[data-v-503fd068]:hover{box-shadow:0 4px 18px #00000024;transform:translate(-4px)}.fab-item[data-v-503fd068]:active{transform:scale(.95)}@keyframes fab-item-in-503fd068{0%{opacity:0;transform:translate(20px) scale(.9)}to{opacity:1;transform:translate(0) scale(1)}}.fab-item-label[data-v-503fd068]{font-size:.875rem;font-weight:600;color:#1e293b;white-space:nowrap;font-family:Inter,sans-serif}.fab-item-icon[data-v-503fd068]{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.modal-overlay[data-v-69207c0f]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.modal-container[data-v-69207c0f]{background:#fff;border-radius:14px;box-shadow:0 20px 60px #0003;width:100%}.confirm-modal[data-v-69207c0f]{max-width:400px;padding:2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem}.confirm-icon[data-v-69207c0f]{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:.25rem}.icon-danger[data-v-69207c0f]{background:#fef2f2;color:#ef4444}.icon-warning[data-v-69207c0f]{background:#fffbeb;color:#f59e0b}.confirm-title[data-v-69207c0f]{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0;font-family:Inter,sans-serif}.confirm-message[data-v-69207c0f]{font-size:.875rem;color:#64748b;margin:0 0 .5rem;line-height:1.5;font-family:Inter,sans-serif}.confirm-actions[data-v-69207c0f]{display:flex;gap:.75rem;width:100%}.btn-cancel[data-v-69207c0f]{flex:1;padding:.6rem 1rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;font-family:Inter,sans-serif;transition:background .15s}.btn-cancel[data-v-69207c0f]:hover{background:#f8fafc}.btn-cancel[data-v-69207c0f]:active{transform:scale(.97)}.btn-confirm[data-v-69207c0f]{flex:1;padding:.6rem 1rem;border:none;border-radius:8px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;position:relative;overflow:hidden;transition:opacity .15s}.btn-confirm--danger[data-v-69207c0f]{background:#ef4444}.btn-confirm--warning[data-v-69207c0f]{background:#f59e0b}.btn-confirm[data-v-69207c0f]:hover{opacity:.88}.btn-confirm[data-v-69207c0f]:active{transform:scale(.97)}.onboarding-bar[data-v-bc2835e8]{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#7c3aed14,#f59e0b0f);border:1px solid rgba(124,58,237,.18);border-radius:14px;margin-bottom:1.75rem;flex-wrap:wrap}.onboard-left[data-v-bc2835e8]{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;flex:1}.onboard-title[data-v-bc2835e8]{display:inline-flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:700;color:#7c3aed;font-family:Inter,sans-serif;white-space:nowrap}.onboard-steps[data-v-bc2835e8]{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.onboard-step[data-v-bc2835e8]{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .625rem;border-radius:20px;font-size:.8rem;font-weight:500;font-family:Inter,sans-serif;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:border-color .15s,color .15s,background .15s;white-space:nowrap}.onboard-step[data-v-bc2835e8]:hover:not(.done){border-color:#a5b4fc;color:#4f46e5;background:#f5f3ff}.onboard-step.done[data-v-bc2835e8]{background:#f0fdf4;border-color:#bbf7d0;color:#059669;cursor:default;text-decoration:line-through;opacity:.75}.onboard-right[data-v-bc2835e8]{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.onboard-progress-wrap[data-v-bc2835e8]{width:80px;height:6px;background:#e2e8f0;border-radius:20px;overflow:hidden}.onboard-progress-bar[data-v-bc2835e8]{height:100%;background:linear-gradient(90deg,#7c3aed,#f59e0b);border-radius:20px;transition:width .5s cubic-bezier(.34,1.56,.64,1)}.onboard-pct[data-v-bc2835e8]{font-size:.8rem;font-weight:700;color:#7c3aed;font-family:Inter,sans-serif;white-space:nowrap}.onboard-dismiss[data-v-bc2835e8]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:0;transition:background .15s,color .15s}.onboard-dismiss[data-v-bc2835e8]:hover{background:#00000012;color:#374151}.onboard-enter-active[data-v-bc2835e8]{transition:all .4s cubic-bezier(.34,1.56,.64,1)}.onboard-leave-active[data-v-bc2835e8]{transition:all .25s ease-in}.onboard-enter-from[data-v-bc2835e8]{opacity:0;transform:translateY(-12px) scale(.97)}.onboard-leave-to[data-v-bc2835e8]{opacity:0;transform:translateY(-8px) scale(.98)}@keyframes v-ripple-expand{to{transform:scale(4);opacity:0}}.modal-overlay{animation:modal-backdrop-in .2s ease both}.modal-container{animation:modal-spring-in .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-spring-in{0%{opacity:0;transform:scale(.85) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.professor-layout button{color:inherit;background:transparent;border:none;padding:0;margin:0;box-shadow:none;border-radius:0;font-size:inherit;font-weight:inherit;font-family:inherit;letter-spacing:normal;transform:none;transition:none}.professor-layout button:hover{color:inherit;background:transparent;transform:none;box-shadow:none;border-color:transparent}.professor-layout button:disabled{background:transparent;opacity:.5;transform:none;box-shadow:none}.professor-layout[data-v-a799efcc]{display:flex;min-height:100vh;font-family:Inter,sans-serif;position:relative}.professor-bg[data-v-a799efcc]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:#fffdf7;overflow:hidden;pointer-events:none}.blob[data-v-a799efcc]{position:absolute;border-radius:50%;filter:blur(90px);opacity:.3;animation:blob-drift-a799efcc linear infinite alternate}.blob-1[data-v-a799efcc]{width:520px;height:520px;background:#c4b5fd;top:-120px;left:-120px;animation-duration:45s}.blob-2[data-v-a799efcc]{width:420px;height:420px;background:#fcd34d;top:28%;right:-100px;animation-duration:38s;animation-delay:-12s}.blob-3[data-v-a799efcc]{width:380px;height:380px;background:#6ee7b7;bottom:-80px;left:12%;animation-duration:52s;animation-delay:-25s}.blob-4[data-v-a799efcc]{width:320px;height:320px;background:#fda4af;top:-50px;right:22%;animation-duration:41s;animation-delay:-8s}@keyframes blob-drift-a799efcc{0%{transform:translate(0) rotate(0) scale(1)}33%{transform:translate(40px,-30px) rotate(120deg) scale(1.08)}66%{transform:translate(-20px,20px) rotate(240deg) scale(.95)}to{transform:translate(30px,10px) rotate(360deg) scale(1.05)}}.professor-main[data-v-a799efcc]{flex:1;padding:2rem 2.5rem;overflow-y:auto;min-width:0;position:relative;z-index:1;color:#374151}.professor-main[data-section=conteudo][data-v-a799efcc]{--section-color: #f59e0b;--section-color-2: #ef4444;--section-light: #fef3c7}.professor-main[data-section=cursos][data-v-a799efcc]{--section-color: #7c3aed;--section-color-2: #ec4899;--section-light: #ede9fe}.professor-main[data-section=alunos][data-v-a799efcc]{--section-color: #059669;--section-color-2: #0ea5e9;--section-light: #d1fae5}.professor-main[data-section=visao-geral][data-v-a799efcc]{--section-color: #7c3aed;--section-color-2: #ec4899;--section-light: #ede9fe}.professor-main[data-section=tarefas][data-v-a799efcc]{--section-color: #f97316;--section-color-2: #ef4444;--section-light: #ffedd5}.professor-main[data-section=settings][data-v-a799efcc]{--section-color: #64748b;--section-color-2: #94a3b8;--section-light: #f1f5f9}.professor-main[data-section=acesso][data-v-a799efcc]{--section-color: #16a34a;--section-color-2: #7c3aed;--section-light: #dcfce7}.slide-tab-enter-active[data-v-a799efcc]{transition:all .35s cubic-bezier(.34,1.56,.64,1)}.slide-tab-enter-from[data-v-a799efcc]{opacity:0;transform:translateY(16px) scale(.98)}.slide-tab-leave-active[data-v-a799efcc]{transition:all .18s ease-in}.slide-tab-leave-to[data-v-a799efcc]{opacity:0;transform:translateY(-8px) scale(.99)}.login-page[data-v-4b1297d2]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg, #141314);position:relative;overflow:hidden}.login-watermark[data-v-4b1297d2]{position:absolute;right:-.05em;bottom:-.15em;font-size:clamp(120px,20vw,260px);line-height:1;font-weight:300;opacity:.03;color:var(--color-fg, #eee);pointer-events:none;-webkit-user-select:none;user-select:none;font-family:var(--font-mono, monospace)}.login-card[data-v-4b1297d2]{width:100%;max-width:380px;padding:40px 36px;border:1px solid var(--color-border, rgba(255,255,255,.08));background:var(--color-bg-surface, var(--color-bg, #141314));position:relative;z-index:1}.login-brand[data-v-4b1297d2]{margin-bottom:2rem}.login-brand-mark[data-v-4b1297d2]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-lg, 1.125rem);color:var(--color-brand, #fd551d);text-transform:uppercase;letter-spacing:.1em;line-height:1;margin:0}.login-brand-sub[data-v-4b1297d2]{font-family:var(--font-mono, monospace);font-size:.7rem;color:var(--color-fg-muted, #818081);margin:4px 0 0;letter-spacing:.05em}.login-heading[data-v-4b1297d2]{font-size:var(--text-h3, 1.75rem);color:var(--color-fg, #eee);text-transform:uppercase;margin:0 0 .375rem;font-weight:var(--font-weight-bold, 700)}.login-desc[data-v-4b1297d2]{font-size:.78rem;color:var(--color-fg-muted, #818081);margin:0 0 1.75rem}.social-btns[data-v-4b1297d2]{display:flex;gap:8px}.social-btn[data-v-4b1297d2]{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:10px 12px;background:transparent;border:1px solid var(--color-border, rgba(255,255,255,.12));border-radius:0;color:var(--color-fg, #eee);font-family:var(--font-mono, monospace);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:border-color .2s,background .2s}.social-btn[data-v-4b1297d2]:hover{border-color:#ffffff47;background:var(--color-hover-bg, rgba(255,255,255,.04))}.login-divider[data-v-4b1297d2]{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;color:var(--color-fg-muted, #818081);font-family:var(--font-mono, monospace);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.login-divider[data-v-4b1297d2]:before,.login-divider[data-v-4b1297d2]:after{content:"";flex:1;height:1px;background:var(--color-border, rgba(255,255,255,.08))}.login-form[data-v-4b1297d2]{display:flex;flex-direction:column;gap:1rem}.login-field[data-v-4b1297d2]{display:flex;flex-direction:column;gap:6px}.login-label[data-v-4b1297d2]{font-family:var(--font-mono, monospace);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-fg-muted, #818081)}.login-input[data-v-4b1297d2]{width:100%;background:transparent!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:0!important;color:var(--color-fg, #eee)!important;font-family:var(--font-mono, monospace)!important;font-size:.78rem!important;padding:10px 12px!important;outline:none!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;margin-bottom:0!important}.login-input[data-v-4b1297d2]:hover{border-color:#ffffff47!important}.login-input[data-v-4b1297d2]:focus{border-color:var(--color-brand, #fd551d)!important;box-shadow:0 0 0 2px #fd551d33!important}.login-input[data-v-4b1297d2]::placeholder{color:var(--color-fg-muted, #818081);opacity:.5}.login-error[data-v-4b1297d2]{font-family:var(--font-mono, monospace);font-size:.68rem;color:#ff6868}.resend-row[data-v-4b1297d2]{display:flex;align-items:center;gap:.75rem;margin-top:.75rem}.resend-btn[data-v-4b1297d2]{background:transparent!important;border:1px solid var(--color-border, rgba(255,255,255,.12))!important;border-radius:0!important;color:var(--color-fg-muted, #818081)!important;font-family:var(--font-mono, monospace)!important;font-size:.65rem!important;text-transform:uppercase;letter-spacing:.05em;padding:6px 12px!important;cursor:pointer;transition:border-color .2s,color .2s,background .2s;box-shadow:none!important;transform:none!important}.resend-btn[data-v-4b1297d2]:hover:not(:disabled){border-color:#ffffff47!important;color:var(--color-fg, #eee)!important;background:var(--color-hover-bg, rgba(255,255,255,.04))!important;transform:none!important;box-shadow:none!important}.resend-btn[data-v-4b1297d2]:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.resend-ok[data-v-4b1297d2]{font-family:var(--font-mono, monospace);font-size:.65rem;color:#4ade80}.primary-btn[data-v-4b1297d2]{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-mono, monospace);font-weight:500;text-transform:uppercase;letter-spacing:.06em;background:none;border:none;padding:0;outline:none;width:100%;margin-top:.5rem}.primary-btn[data-v-4b1297d2]:disabled{opacity:.32;pointer-events:none}.primary-btn-inner[data-v-4b1297d2]{position:relative;display:flex;align-items:center;gap:6px;width:100%}.primary-btn-icon-left[data-v-4b1297d2]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-brand, #fd551d);color:#000;flex-shrink:0;transform:rotate(-45deg) scale(0);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn-label[data-v-4b1297d2]{flex:1;display:flex;align-items:center;justify-content:center;height:44px;background:var(--color-brand, #fd551d);color:#000;font-size:.78rem;padding:0 12px;transform:translate(-50px);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn-icon-right[data-v-4b1297d2]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-brand, #fd551d);color:#000;position:absolute;right:0;transform:rotate(0) scale(1);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn:not(:disabled):hover .primary-btn-icon-left[data-v-4b1297d2]{transform:rotate(0) scale(1)}.primary-btn:not(:disabled):hover .primary-btn-label[data-v-4b1297d2]{transform:translate(0)}.primary-btn:not(:disabled):hover .primary-btn-icon-right[data-v-4b1297d2]{transform:rotate(-45deg) scale(0)}.login-footer[data-v-4b1297d2]{text-align:center;margin-top:1.5rem;font-family:var(--font-mono, monospace);font-size:.68rem;color:var(--color-fg-muted, #818081);text-transform:uppercase;letter-spacing:.05em}.login-footer a[data-v-4b1297d2]{color:var(--color-brand, #fd551d);text-decoration:none;font-weight:500}.login-footer a[data-v-4b1297d2]:hover{text-decoration:underline}.forgot-row[data-v-4b1297d2]{text-align:right;margin-top:-.25rem}.forgot-link[data-v-4b1297d2]{font-family:var(--font-mono, monospace);font-size:.65rem;color:var(--color-fg-muted, #818081);text-decoration:none;text-transform:uppercase;letter-spacing:.05em}.forgot-link[data-v-4b1297d2]:hover{color:var(--color-brand, #fd551d)}.fade-enter-active[data-v-4b1297d2],.fade-leave-active[data-v-4b1297d2]{transition:opacity .22s ease}.fade-enter-from[data-v-4b1297d2],.fade-leave-to[data-v-4b1297d2]{opacity:0}.login-page[data-v-65bb972c]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg, #141314);position:relative;overflow:hidden;padding:2rem 0;box-sizing:border-box}.login-watermark[data-v-65bb972c]{position:fixed;right:-.05em;bottom:-.15em;font-size:clamp(120px,20vw,260px);line-height:1;font-weight:300;opacity:.03;color:var(--color-fg, #eee);pointer-events:none;-webkit-user-select:none;user-select:none;font-family:var(--font-mono, monospace)}.login-card[data-v-65bb972c]{width:100%;max-width:380px;padding:40px 36px;border:1px solid var(--color-border, rgba(255,255,255,.08));background:var(--color-bg-surface, var(--color-bg, #141314));position:relative;z-index:1}.login-brand[data-v-65bb972c]{margin-bottom:2rem}.login-brand-mark[data-v-65bb972c]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-lg, 1.125rem);color:var(--color-brand, #fd551d);text-transform:uppercase;letter-spacing:.1em;line-height:1;margin:0}.login-brand-sub[data-v-65bb972c]{font-family:var(--font-mono, monospace);font-size:.7rem;color:var(--color-fg-muted, #818081);margin:4px 0 0;letter-spacing:.05em}.login-heading[data-v-65bb972c]{font-size:var(--text-h3, 1.75rem);color:var(--color-fg, #eee);text-transform:uppercase;margin:0 0 .375rem;font-weight:var(--font-weight-bold, 700)}.login-desc[data-v-65bb972c]{font-size:.78rem;color:var(--color-fg-muted, #818081);margin:0 0 1.75rem}.social-btns[data-v-65bb972c]{display:flex;gap:8px}.social-btn[data-v-65bb972c]{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:10px 12px;background:transparent;border:1px solid var(--color-border, rgba(255,255,255,.12));border-radius:0;color:var(--color-fg, #eee);font-family:var(--font-mono, monospace);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:border-color .2s,background .2s}.social-btn[data-v-65bb972c]:hover{border-color:#ffffff47;background:var(--color-hover-bg, rgba(255,255,255,.04))}.login-divider[data-v-65bb972c]{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;color:var(--color-fg-muted, #818081);font-family:var(--font-mono, monospace);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.login-divider[data-v-65bb972c]:before,.login-divider[data-v-65bb972c]:after{content:"";flex:1;height:1px;background:var(--color-border, rgba(255,255,255,.08))}.login-form[data-v-65bb972c]{display:flex;flex-direction:column;gap:1rem}.login-field[data-v-65bb972c]{display:flex;flex-direction:column;gap:6px}.login-label[data-v-65bb972c]{font-family:var(--font-mono, monospace);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-fg-muted, #818081)}.login-input[data-v-65bb972c]{width:100%;background:transparent!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:0!important;color:var(--color-fg, #eee)!important;font-family:var(--font-mono, monospace)!important;font-size:.78rem!important;padding:10px 12px!important;outline:none!important;box-shadow:none!important;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;margin-bottom:0!important}.login-input[data-v-65bb972c]:hover{border-color:#ffffff47!important}.login-input[data-v-65bb972c]:focus{border-color:var(--color-brand, #fd551d)!important;box-shadow:0 0 0 2px #fd551d33!important}.login-input[data-v-65bb972c]::placeholder{color:var(--color-fg-muted, #818081);opacity:.5}.login-error-text[data-v-65bb972c]{font-family:var(--font-mono, monospace);font-size:.68rem;color:#ff6868;margin:0}.primary-btn[data-v-65bb972c]{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-mono, monospace);font-weight:500;text-transform:uppercase;letter-spacing:.06em;background:none;border:none;padding:0;outline:none;width:100%;margin-top:.5rem}.primary-btn[data-v-65bb972c]:disabled{opacity:.32;pointer-events:none}.primary-btn-inner[data-v-65bb972c]{position:relative;display:flex;align-items:center;gap:6px;width:100%}.primary-btn-icon-left[data-v-65bb972c]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-brand, #fd551d);color:#000;flex-shrink:0;transform:rotate(-45deg) scale(0);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn-label[data-v-65bb972c]{flex:1;display:flex;align-items:center;justify-content:center;height:44px;background:var(--color-brand, #fd551d);color:#000;font-size:.78rem;padding:0 12px;transform:translate(-50px);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn-icon-right[data-v-65bb972c]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-brand, #fd551d);color:#000;position:absolute;right:0;transform:rotate(0) scale(1);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn:not(:disabled):hover .primary-btn-icon-left[data-v-65bb972c]{transform:rotate(0) scale(1)}.primary-btn:not(:disabled):hover .primary-btn-label[data-v-65bb972c]{transform:translate(0)}.primary-btn:not(:disabled):hover .primary-btn-icon-right[data-v-65bb972c]{transform:rotate(-45deg) scale(0)}.login-footer[data-v-65bb972c]{text-align:center;margin-top:1.5rem;font-family:var(--font-mono, monospace);font-size:.68rem;color:var(--color-fg-muted, #818081);text-transform:uppercase;letter-spacing:.05em}.login-footer a[data-v-65bb972c]{color:var(--color-brand, #fd551d);text-decoration:none;font-weight:500}.login-footer a[data-v-65bb972c]:hover{text-decoration:underline}.fade-enter-active[data-v-65bb972c],.fade-leave-active[data-v-65bb972c]{transition:opacity .22s ease}.fade-enter-from[data-v-65bb972c],.fade-leave-to[data-v-65bb972c]{opacity:0}.dashboard-glass-panel{max-width:1600px;width:100%;margin:0 auto;padding:0 2rem 5rem;box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:20;background:var(--color-bg);animation:fadeInDown .5s var(--ease-out-quart) both}.header-logo{display:flex;align-items:center;gap:.6rem;font-size:1rem;font-weight:700;letter-spacing:-.03em;color:var(--color-fg)}.header-logo-img{height:22px;width:auto;opacity:.85;filter:invert(1)}.user-profile{display:flex;align-items:center;gap:.75rem;background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-full);padding:.5rem 1rem .5rem .5rem;min-height:44px;transition:background var(--dur-fast) var(--ease-out-quad),border-color var(--dur-fast) var(--ease-out-quad)}.user-profile:hover{background:var(--color-bg-surface);border-color:#eeeeee2e}.user-profile img{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--color-border);object-fit:cover}.user-profile span{font-size:.875rem;font-weight:600;color:var(--color-fg)}.hw-alert-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:20px;font-size:.7rem;font-weight:700;font-family:Inter,sans-serif;white-space:nowrap;animation:badge-pulse 2.5s ease-in-out infinite}.hw-alert-badge--late{background:#fee2e2;color:#dc2626;border:1px solid #fca5a5}.hw-alert-badge--pending{background:#ffedd5;color:#ea580c;border:1px solid #fdba74}@keyframes badge-pulse{0%,to{opacity:1}50%{opacity:.65}}.dashboard-grid-layout{display:grid;grid-template-columns:1fr 300px;gap:2rem;padding-top:2.5rem;flex-grow:1;align-items:start}.dashboard-main-content{display:flex;flex-direction:column;gap:3rem}.dashboard-sidebar{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:calc(1rem + 65px)}.card{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-xl);padding:1.5rem}.card h3,.course-list-section h3,.featured-videos-section h3{margin:0 0 1.25rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-fg-muted)}.welcome-section{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-2xl);padding:2.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;position:relative;overflow:hidden}.welcome-section:before{content:"";position:absolute;top:-100px;right:-100px;width:350px;height:350px;background:radial-gradient(ellipse,rgba(253,85,29,.1) 0%,transparent 65%);pointer-events:none}.welcome-text{position:relative;z-index:1;flex:1}.welcome-eyebrow{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-brand);margin:0 0 .5rem}.welcome-text h2{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:var(--font-weight-medium);margin:0 0 .5rem;line-height:1.125;letter-spacing:-.05em;color:var(--color-fg)}.welcome-text .subtitle{font-size:var(--text-body);font-weight:var(--font-weight-light);color:var(--color-fg-muted);margin:0 0 1.75rem;line-height:1.5}.ds-btn-primary{display:inline-flex;align-items:center;background:var(--color-brand);color:#fff;border:none;border-radius:var(--r-full);padding:.8rem 1.5rem;font-family:var(--font-sans);font-size:.875rem;font-weight:700;letter-spacing:-.01em;cursor:pointer;overflow:hidden;transition:background var(--dur-base) var(--ease-out-quart),box-shadow var(--dur-base) var(--ease-out-quart)}.ds-btn-primary:hover{background:var(--color-brand-muted);box-shadow:0 4px 24px #fd551d59}.ds-btn-primary:disabled{opacity:.38;pointer-events:none}.btn-inner{display:inline-flex;align-items:center;gap:.375rem}.btn-icon-left{display:inline-flex;align-items:center;flex-shrink:0;transform:rotate(-45deg) scale(0);transition:transform var(--dur-slower) var(--ease-in-out-quart)}.ds-btn-primary:not(:disabled):hover .btn-icon-left{transform:rotate(0) scale(1)}.btn-text{transform:translate(calc(-16px - .375rem));transition:transform var(--dur-slower) var(--ease-in-out-quart);white-space:nowrap}.ds-btn-primary:not(:disabled):hover .btn-text{transform:translate(0)}.btn-icon-right{display:inline-flex;align-items:center;flex-shrink:0;transform:rotate(0) scale(1);transition:transform var(--dur-slower) var(--ease-in-out-quart)}.ds-btn-primary:not(:disabled):hover .btn-icon-right{transform:rotate(-45deg) scale(0)}.next-video-card{position:relative;z-index:1;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--r-lg);padding:1rem;width:clamp(240px,30%,320px);display:flex;align-items:center;gap:1rem;text-decoration:none;color:inherit;flex-shrink:0;transition:background var(--dur-base) var(--ease-out-quad),border-color var(--dur-base) var(--ease-out-quad),transform var(--dur-base) var(--ease-out-back)}.next-video-card:hover{background:#eeeeee0a;border-color:var(--color-brand);transform:translateY(-3px)}.next-video-card .video-thumbnail img{border-radius:var(--r-md);width:110px;height:62px;object-fit:cover;display:block}.next-video-card .video-info{flex:1;min-width:0}.next-video-card .video-info .label{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-brand);margin:0 0 .3rem;display:block}.next-video-card .video-info strong{display:block;font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:.4rem}.next-video-card .continue-video-button{background:var(--color-brand-bg);border:1px solid rgba(253,85,29,.25);color:var(--color-brand);padding:.28rem .7rem;border-radius:var(--r-full);cursor:pointer;font-size:.73rem;font-weight:700;transition:background var(--dur-fast)}.next-video-card .continue-video-button:hover{background:#fd551d33}.courses-grid,.videos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}.card-link{text-decoration:none;color:inherit;display:block;min-width:0;transition:transform var(--dur-base) var(--ease-out-back)}.card-link:hover{transform:translateY(-4px)}.course-card{padding:0;overflow:hidden;min-width:0;background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-xl);transition:border-color var(--dur-base) var(--ease-out-quad),box-shadow var(--dur-base) var(--ease-out-quad)}.card-link:hover .course-card{border-color:var(--color-brand);box-shadow:0 8px 32px #00000059}.course-card .card-thumbnail{width:100%;height:150px;background:var(--color-bg-surface);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.course-card .card-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease-out-quart)}.card-link:hover .course-card .card-thumbnail img{transform:scale(1.04)}.course-card .card-thumbnail .thumbnail-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(20,19,20,.92) 0%,transparent 55%)}.course-card .card-thumbnail .course-title-overlay{position:absolute;bottom:.75rem;left:.9rem;right:.9rem;font-size:var(--text-body-sm);font-weight:var(--font-weight-bold);color:#fff;line-height:1.3;letter-spacing:var(--tracking-tight)}.course-card .card-content{padding:1rem 1.1rem}.progress-bar{background:var(--color-border);border-radius:var(--r-full);height:3px;overflow:hidden;margin-bottom:.5rem}.progress-bar-inner{height:100%;background:var(--color-brand);border-radius:var(--r-full);transition:width .6s var(--ease-out-expo)}.progress-text{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted)}.video-card{padding:0;overflow:hidden;min-width:0;background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-xl);transition:border-color var(--dur-base) var(--ease-out-quad),box-shadow var(--dur-base) var(--ease-out-quad)}.card-link:hover .video-card{border-color:#eee3;box-shadow:0 8px 32px #00000059}.video-card .video-thumbnail{position:relative;width:100%;height:145px;overflow:hidden;background:var(--color-bg-surface)}.video-card .video-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease-out-quart)}.card-link:hover .video-card .video-thumbnail img{transform:scale(1.05)}.video-card .video-thumbnail .video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#141314e0,#00000014 60%)}.video-card .play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-60%);width:44px;height:44px;background:#ffffff1a;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);transition:background var(--dur-base) var(--ease-out-quad),transform var(--dur-base) var(--ease-out-back);opacity:.85}.card-link:hover .play-icon{opacity:1;background:#ffffff2e;transform:translate(-50%,-60%) scale(1.1)}.video-card .video-content{padding:.875rem 1rem}.video-card .video-content h5{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);margin:0;color:var(--color-fg);line-height:1.43;letter-spacing:var(--tracking-tighter)}.sidebar-card-title{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-fg-muted);margin:0 0 1rem}.sidebar-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.125rem}.sidebar-list li{border-radius:var(--r-md);transition:background var(--dur-fast)}.sidebar-list li:hover{background:#eeeeee0a}.item-info-link{display:flex;align-items:center;gap:.875rem;padding:.875rem .75rem;text-decoration:none;color:inherit;min-height:48px;border-radius:var(--r-md)}.item-icon{width:36px;height:36px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform var(--dur-fast) var(--ease-out-back)}.sidebar-list li:hover .item-icon{transform:scale(1.1)}.item-icon.video{background:#58a6ff1f;color:var(--color-video)}.item-icon.exercise{background:#a78bfa1f;color:var(--color-exercise)}.item-icon.text{background:#ff7b721f;color:var(--color-text-ct)}.item-icon.audio{background:#f2994a1f;color:var(--color-audio)}.item-icon.vocabulary{background:#d977061f;color:var(--color-vocab)}.item-icon.course{background:#eeeeee0f;color:var(--color-fg-muted)}.item-text{flex:1;min-width:0;line-height:1.3}.item-text .item-title{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:.2rem}.item-text .item-meta{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);display:block}.item-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:var(--r-full);font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;flex-shrink:0}.item-badge.video{background:#58a6ff1f;color:var(--color-video)}.item-badge.exercise{background:#a78bfa1f;color:var(--color-exercise)}.item-badge.text{background:#ff7b721f;color:var(--color-text-ct)}.item-badge.audio{background:#f2994a1f;color:var(--color-audio)}.item-badge.vocabulary{background:#d977061f;color:var(--color-vocab)}.progress-ring-wrap{position:relative;width:40px;height:40px;flex-shrink:0}.progress-ring-wrap svg{transform:rotate(-90deg)}.progress-ring-wrap .ring-bg{fill:none;stroke:var(--color-border);stroke-width:3}.progress-ring-wrap .ring-fill{fill:none;stroke:url(#ringGradient);stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .6s var(--ease-out-expo)}.progress-ring-wrap .ring-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.58rem;font-weight:700;color:var(--color-fg)}.empty-state{text-align:center;padding:2rem 1.5rem;color:var(--color-fg-muted);font-size:.9rem}.empty-steps{text-align:center;padding:1.5rem .5rem}.empty-steps .empty-icon{font-size:2rem;margin-bottom:.5rem}.empty-steps p{font-size:.85rem;color:var(--color-fg-muted);margin:0}.empty-steps strong{color:var(--color-fg)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 900px){.dashboard-glass-panel{padding:0}.dashboard-grid-layout{display:flex;flex-direction:column;padding:0;gap:0;align-items:stretch}.dashboard-main-content{padding:1rem 1rem 0;gap:1.75rem;max-width:100%;box-sizing:border-box}.dashboard-sidebar{position:static;padding:1.5rem 1rem 1rem;max-width:100%;box-sizing:border-box}.dashboard-header{padding:.875rem 1rem}.welcome-section{flex-direction:column;align-items:flex-start;padding:1.5rem 1rem;gap:.875rem;border-radius:var(--r-xl)}.next-video-card{display:none}.welcome-text h2{font-size:1.5rem}.welcome-text .subtitle{display:none}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.875rem}.course-card .card-thumbnail{height:110px}.videos-grid{grid-template-columns:repeat(2,1fr);gap:.875rem}.video-card .video-thumbnail{height:110px}}@media (max-width: 600px){.item-badge{display:none}.header-logo{font-size:.9rem;gap:.4rem}.header-logo-img{height:18px}.user-profile span{display:none}.user-profile{padding:.35rem;border-radius:50%;min-height:auto}.user-profile img{width:32px;height:32px}}@media (max-width: 480px){.courses-grid,.videos-grid{grid-template-columns:1fr}.dashboard-glass-panel{padding:0 1rem 3rem}}@media (max-width: 360px){.dashboard-glass-panel{padding:0 .75rem 2.5rem}}@media (prefers-reduced-motion: reduce){.card-link,.card-link:hover,.progress-bar-inner,.course-card .card-thumbnail img,.video-card .video-thumbnail img,.ds-btn-primary .btn-icon-left,.ds-btn-primary .btn-icon-right,.ds-btn-primary .btn-text,.play-icon,.item-icon{transition:none}}.ws[data-v-2e699c51]{position:relative;overflow:hidden;background:var(--color-bg-muted);border:1px solid var(--color-border);padding:2.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.ws-glow[data-v-2e699c51]{pointer-events:none;position:absolute;top:-120px;right:-120px;width:400px;height:400px;background:radial-gradient(ellipse,rgba(253,85,29,.12) 0%,transparent 65%)}.ws-content[data-v-2e699c51]{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:0}.ws-eyebrow[data-v-2e699c51]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-brand);margin:0 0 .625rem}.ws-name[data-v-2e699c51]{font-size:clamp(1.875rem,3.5vw,2.75rem);font-weight:var(--font-weight-medium);letter-spacing:-.05em;color:var(--color-fg);margin:0 0 .625rem;line-height:1.1}.ws-sub[data-v-2e699c51]{font-size:var(--text-body);font-weight:var(--font-weight-light);color:var(--color-fg-muted);margin:0 0 2rem;line-height:1.5}.ws-btn[data-v-2e699c51]{display:inline-flex;font-family:var(--font-mono);font-size:.8125rem;font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-tight);background:none;border:none;cursor:pointer;padding:0;overflow:hidden;color:#000}.ws-btn[data-v-2e699c51]:disabled{opacity:.38;cursor:not-allowed}.ws-btn-inner[data-v-2e699c51]{position:relative;display:flex;align-items:center;gap:.375rem}.ws-btn-icon-l[data-v-2e699c51],.ws-btn-icon-r[data-v-2e699c51],.ws-btn-text[data-v-2e699c51]{background:var(--color-brand);color:#000}.ws-btn-icon-l[data-v-2e699c51]{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;flex-shrink:0;transform-origin:left center;transform:rotate(-45deg) scale(0);transition:transform .7s var(--ease-in-out-quart)}.ws-btn:not(:disabled):hover .ws-btn-icon-l[data-v-2e699c51]{transform:rotate(0) scale(1)}.ws-btn-text[data-v-2e699c51]{display:flex;align-items:center;justify-content:center;height:2.25rem;padding:0 .875rem;white-space:nowrap;transform:translate(-2.625rem);transition:transform .7s var(--ease-in-out-quart)}.ws-btn:not(:disabled):hover .ws-btn-text[data-v-2e699c51]{transform:translate(0)}.ws-btn-icon-r[data-v-2e699c51]{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;flex-shrink:0;position:absolute;right:0;transform-origin:right center;transform:rotate(0) scale(1);transition:transform .7s var(--ease-in-out-quart)}.ws-btn:not(:disabled):hover .ws-btn-icon-r[data-v-2e699c51]{transform:rotate(-45deg) scale(0)}.ws-next[data-v-2e699c51]{position:relative;z-index:1;display:flex;align-items:center;gap:1rem;background:var(--color-bg-surface);border:1px solid var(--color-border);padding:1.125rem 1.25rem;width:clamp(240px,28%,320px);flex-shrink:0;text-decoration:none;color:inherit;transition:border-color var(--dur-base) var(--ease-out-quad),background var(--dur-base) var(--ease-out-quad),transform var(--dur-base) var(--ease-out-expo)}.ws-next[data-v-2e699c51]:hover{border-color:var(--color-brand);background:#fd551d0a;transform:translateY(-3px)}.ws-next-type-icon[data-v-2e699c51]{width:2.5rem;height:2.5rem;flex-shrink:0;display:flex;align-items:center;justify-content:center}.ws-next-type-icon.video[data-v-2e699c51]{color:var(--color-video)}.ws-next-type-icon.exercise[data-v-2e699c51]{color:var(--color-exercise)}.ws-next-type-icon.text[data-v-2e699c51]{color:var(--color-text-ct)}.ws-next-type-icon.audio[data-v-2e699c51]{color:var(--color-audio)}.ws-next-type-icon.vocabulary[data-v-2e699c51]{color:var(--color-vocab)}.ws-next-body[data-v-2e699c51]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.ws-next-label[data-v-2e699c51]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-brand)}.ws-next-title[data-v-2e699c51]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.ws-next-course[data-v-2e699c51]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.ws-next-badge[data-v-2e699c51]{display:inline-flex;align-items:center;margin-top:.35rem;padding:.175rem .5rem;font-family:var(--font-mono);font-size:.65rem;font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;border:1px solid currentColor;opacity:.7;align-self:flex-start}.ws-next-badge.video[data-v-2e699c51]{color:var(--color-video)}.ws-next-badge.exercise[data-v-2e699c51]{color:var(--color-exercise)}.ws-next-badge.text[data-v-2e699c51]{color:var(--color-text-ct)}.ws-next-badge.audio[data-v-2e699c51]{color:var(--color-audio)}.ws-next-badge.vocabulary[data-v-2e699c51]{color:var(--color-vocab)}.ws-next-arrow[data-v-2e699c51]{color:var(--color-fg-faint);flex-shrink:0;transition:color var(--dur-fast),transform var(--dur-fast) var(--ease-out-back)}.ws-next:hover .ws-next-arrow[data-v-2e699c51]{color:var(--color-fg-muted);transform:translate(3px)}@media (max-width: 900px){.ws[data-v-2e699c51]{flex-direction:column;align-items:flex-start;padding:1.75rem 1.25rem;gap:1.25rem}.ws-next[data-v-2e699c51]{display:none}.ws-name[data-v-2e699c51]{font-size:1.625rem}.ws-sub[data-v-2e699c51]{display:none}}.cc[data-v-8e967863]{display:flex;flex-direction:column;background:var(--color-bg-muted);overflow:hidden;height:100%;transition:background var(--dur-base) var(--ease-out-quad)}.cc-thumb[data-v-8e967863]{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:var(--color-bg-surface)}.cc-thumb img[data-v-8e967863]{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--dur-slow) var(--ease-out-quart)}.cl-link:hover .cc-thumb img[data-v-8e967863]{transform:scale(1.05)}.cc-thumb-fallback[data-v-8e967863]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--color-fg-faint)}.cc-thumb-overlay[data-v-8e967863]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(20,19,20,.75) 0%,transparent 50%)}.cc-body[data-v-8e967863]{padding:1rem 1.125rem 1.125rem;display:flex;flex-direction:column;gap:.75rem;flex:1}.cc-info[data-v-8e967863]{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.cc-name[data-v-8e967863]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tight);color:var(--color-fg);margin:0;line-height:1.35;flex:1;min-width:0}.cc-pct[data-v-8e967863]{font-family:var(--font-mono);font-size:1.5rem;font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tighter);color:var(--color-fg);line-height:1;flex-shrink:0}.cc-pct small[data-v-8e967863]{font-size:.75rem;font-weight:var(--font-weight-medium);color:var(--color-fg-muted)}.cc-bar-wrap[data-v-8e967863]{height:2px;background:var(--color-border);overflow:hidden}.cc-bar-fill[data-v-8e967863]{height:100%;background:var(--color-brand);transition:width .6s var(--ease-out-expo)}.cl[data-v-6ba9306d]{display:flex;flex-direction:column;gap:1.5rem}.cl-header[data-v-6ba9306d]{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.cl-header-left[data-v-6ba9306d]{display:flex;flex-direction:column;gap:.2rem}.cl-eyebrow[data-v-6ba9306d]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-brand);margin:0}.cl-title[data-v-6ba9306d]{font-size:var(--text-body);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tight);color:var(--color-fg);margin:0}.cl-count[data-v-6ba9306d]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);padding:.2rem .6rem;border:1px solid var(--color-border);white-space:nowrap}.cl-grid[data-v-6ba9306d]{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1px;background:var(--color-border);border:1px solid var(--color-border)}.cl-link[data-v-6ba9306d]{text-decoration:none;color:inherit;display:block;min-width:0;background:var(--color-bg-muted);transition:background var(--dur-base) var(--ease-out-quad)}.cl-link[data-v-6ba9306d]:hover{background:var(--color-bg-surface)}.cl-empty[data-v-6ba9306d]{display:flex;flex-direction:column;align-items:center;gap:.875rem;padding:3rem 1.5rem;border:1px solid var(--color-border);background:var(--color-bg-muted)}.cl-empty-icon[data-v-6ba9306d]{color:var(--color-fg-faint)}.cl-empty-text[data-v-6ba9306d]{font-size:var(--text-body-sm);color:var(--color-fg-muted);margin:0;text-align:center}@media (max-width: 600px){.cl-grid[data-v-6ba9306d]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 400px){.cl-grid[data-v-6ba9306d]{grid-template-columns:1fr}}.vc[data-v-b3ee1ca2]{display:flex;flex-direction:column;background:var(--color-bg-muted);overflow:hidden;height:100%;transition:background var(--dur-base) var(--ease-out-quad)}.vc-thumb[data-v-b3ee1ca2]{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:var(--color-bg-surface)}.vc-thumb img[data-v-b3ee1ca2]{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--dur-slow) var(--ease-out-quart)}.fv-link:hover .vc-thumb img[data-v-b3ee1ca2]{transform:scale(1.05)}.vc-overlay[data-v-b3ee1ca2]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#141314d9,#0000001a 55%);transition:background var(--dur-base) var(--ease-out-quad)}.fv-link:hover .vc-overlay[data-v-b3ee1ca2]{background:linear-gradient(to top,#141314b3,#00000040 55%)}.vc-play[data-v-b3ee1ca2]{position:absolute;top:50%;left:50%;transform:translate(-50%,-55%);width:40px;height:40px;background:#ffffff14;border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;color:#fff;transition:background var(--dur-base) var(--ease-out-quad),transform var(--dur-base) var(--ease-out-back)}.fv-link:hover .vc-play[data-v-b3ee1ca2]{background:#fd551dd9;border-color:var(--color-brand);transform:translate(-50%,-55%) scale(1.1)}.vc-thumb-bar[data-v-b3ee1ca2]{position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--color-brand);transition:width var(--dur-slow) var(--ease-out-expo)}.fv-link:hover .vc-thumb-bar[data-v-b3ee1ca2]{width:100%}.vc-body[data-v-b3ee1ca2]{padding:.875rem 1rem 1rem;display:flex;flex-direction:column;gap:.4rem;flex:1}.vc-name[data-v-b3ee1ca2]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tight);color:var(--color-fg);margin:0;line-height:1.4}.vc-type-label[data-v-b3ee1ca2]{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-video)}.fv[data-v-0a8a8dbd]{display:flex;flex-direction:column;gap:1.5rem}.fv-header[data-v-0a8a8dbd]{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.fv-header-left[data-v-0a8a8dbd]{display:flex;flex-direction:column;gap:.2rem}.fv-eyebrow[data-v-0a8a8dbd]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-fg-muted);margin:0}.fv-title[data-v-0a8a8dbd]{font-size:var(--text-body);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tight);color:var(--color-fg);margin:0}.fv-count[data-v-0a8a8dbd]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);padding:.2rem .6rem;border:1px solid var(--color-border);white-space:nowrap}.fv-grid[data-v-0a8a8dbd]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1px;background:var(--color-border);border:1px solid var(--color-border)}.fv-link[data-v-0a8a8dbd]{text-decoration:none;color:inherit;display:block;min-width:0;background:var(--color-bg-muted);transition:background var(--dur-base) var(--ease-out-quad)}.fv-link[data-v-0a8a8dbd]:hover{background:var(--color-bg-surface)}.fv-empty[data-v-0a8a8dbd]{display:flex;flex-direction:column;align-items:center;gap:.875rem;padding:3rem 1.5rem;border:1px solid var(--color-border);background:var(--color-bg-muted)}.fv-empty-icon[data-v-0a8a8dbd]{color:var(--color-fg-faint)}.fv-empty-text[data-v-0a8a8dbd]{font-size:var(--text-body-sm);color:var(--color-fg-muted);margin:0;text-align:center}@media (max-width: 600px){.fv-grid[data-v-0a8a8dbd]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 400px){.fv-grid[data-v-0a8a8dbd]{grid-template-columns:1fr}}.pp[data-v-9c45d044]{display:flex;flex-direction:column;gap:0}.pp-header[data-v-9c45d044]{display:flex;flex-direction:column;gap:.2rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border);margin-bottom:0}.pp-eyebrow[data-v-9c45d044]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-brand);margin:0}.pp-title[data-v-9c45d044]{font-size:var(--text-body);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tight);color:var(--color-fg);margin:0}.pp-list[data-v-9c45d044]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}.pp-item[data-v-9c45d044]{border-bottom:1px solid var(--color-border-muted);transition:background var(--dur-fast)}.pp-item[data-v-9c45d044]:last-child{border-bottom:none}.pp-item[data-v-9c45d044]:hover{background:var(--color-hover-bg-sm)}.pp-link[data-v-9c45d044]{display:flex;align-items:center;gap:.875rem;padding:1rem 0;text-decoration:none;color:inherit;min-height:52px}.pp-icon-wrap[data-v-9c45d044]{width:36px;height:36px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:transform var(--dur-fast) var(--ease-out-back)}.pp-item:hover .pp-icon-wrap[data-v-9c45d044]{transform:scale(1.1)}.pp-icon-wrap.video[data-v-9c45d044]{color:var(--color-video)}.pp-icon-wrap.exercise[data-v-9c45d044]{color:var(--color-exercise)}.pp-icon-wrap.text[data-v-9c45d044]{color:var(--color-text-ct)}.pp-icon-wrap.audio[data-v-9c45d044]{color:var(--color-audio)}.pp-icon-wrap.vocabulary[data-v-9c45d044]{color:var(--color-vocab)}.pp-item-text[data-v-9c45d044]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.pp-step-num[data-v-9c45d044]{font-family:var(--font-mono);font-size:.625rem;letter-spacing:var(--tracking-tighter);color:var(--color-fg-faint)}.pp-lesson-title[data-v-9c45d044]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-course-name[data-v-9c45d044]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-badge[data-v-9c45d044]{position:relative;display:inline-flex;align-items:center;overflow:hidden;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;flex-shrink:0;border:1px solid currentColor;opacity:.65;transition:opacity var(--dur-fast)}.pp-item:hover .pp-badge[data-v-9c45d044]{opacity:1}.pp-badge.video[data-v-9c45d044]{color:var(--color-video)}.pp-badge.exercise[data-v-9c45d044]{color:var(--color-exercise)}.pp-badge.text[data-v-9c45d044]{color:var(--color-text-ct)}.pp-badge.audio[data-v-9c45d044]{color:var(--color-audio)}.pp-badge.vocabulary[data-v-9c45d044]{color:var(--color-vocab)}.pp-badge.exercise[data-v-9c45d044]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-exercise);transform:scaleX(0);transform-origin:right;transition:transform .7s var(--ease-in-out-quart) .3s}.pp-item:hover .pp-badge.exercise[data-v-9c45d044]:before{transform:scaleX(1);transform-origin:left;transition:transform .7s var(--ease-in-out-quart) 0ms}.pp-badge.exercise .pp-badge-text[data-v-9c45d044]{position:relative;z-index:1;padding:.2rem .55rem;white-space:nowrap;transition:color .15s ease .2s}.pp-item:hover .pp-badge.exercise .pp-badge-text[data-v-9c45d044]{color:#141314;transition:color 80ms ease 0ms}.pp-badge--icons .pp-badge-icon-l[data-v-9c45d044]{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;flex-shrink:0;transform-origin:left center;transform:rotate(-45deg) scale(0);transition:transform .7s var(--ease-in-out-quart)}.pp-item:hover .pp-badge--icons .pp-badge-icon-l[data-v-9c45d044]{transform:rotate(0) scale(1)}.pp-badge--icons .pp-badge-text[data-v-9c45d044]{padding:.2rem .4rem;white-space:nowrap;transform:translate(-1.25rem);transition:transform .7s var(--ease-in-out-quart)}.pp-item:hover .pp-badge--icons .pp-badge-text[data-v-9c45d044]{transform:translate(0)}.pp-badge--icons .pp-badge-icon-r[data-v-9c45d044]{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;flex-shrink:0;position:absolute;right:0;transform-origin:right center;transform:rotate(0) scale(1);transition:transform .7s var(--ease-in-out-quart)}.pp-item:hover .pp-badge--icons .pp-badge-icon-r[data-v-9c45d044]{transform:rotate(-45deg) scale(0)}.pp-done[data-v-9c45d044]{display:flex;flex-direction:column;align-items:flex-start;gap:.375rem;padding:1.5rem 0;border-top:1px solid var(--color-border-muted)}.pp-done-mark[data-v-9c45d044]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fd551d1a;color:var(--color-brand);margin-bottom:.25rem}.pp-done-title[data-v-9c45d044]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);margin:0}.pp-done-sub[data-v-9c45d044]{font-size:var(--text-accent-sm);color:var(--color-fg-muted);margin:0}@media (max-width: 520px){.pp-badge[data-v-9c45d044]{display:none}}.ar[data-v-d3215d21]{background:var(--color-bg-muted);border:1px solid var(--color-border);display:flex;flex-direction:column}.ar-header[data-v-d3215d21]{padding:1.25rem 1.25rem 0;display:flex;flex-direction:column;gap:.2rem}.ar-eyebrow[data-v-d3215d21]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-brand);margin:0}.ar-header-row[data-v-d3215d21]{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.ar-title[data-v-d3215d21]{font-size:var(--text-body);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tight);color:var(--color-fg);margin:0}.ar-count[data-v-d3215d21]{display:inline-flex;align-items:center;justify-content:center;min-width:1.375rem;height:1.375rem;padding:0 .3rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);color:var(--color-fg-muted);border:1px solid var(--color-border)}.ar-list[data-v-d3215d21]{list-style:none;padding:.75rem 0 .25rem;margin:0;display:flex;flex-direction:column}.ar-item[data-v-d3215d21]{border-top:1px solid var(--color-border-muted);transition:background var(--dur-fast)}.ar-item[data-v-d3215d21]:first-child{border-top:none}.ar-item[data-v-d3215d21]:hover{background:var(--color-hover-bg-sm)}.ar-link[data-v-d3215d21]{display:flex;align-items:center;gap:.875rem;padding:.875rem 1.25rem;text-decoration:none;color:inherit;min-height:52px}.ar-ring-wrap[data-v-d3215d21]{position:relative;width:44px;height:44px;flex-shrink:0}.ar-ring-wrap svg[data-v-d3215d21]{transform:rotate(-90deg);display:block}.ar-ring-bg[data-v-d3215d21]{fill:none;stroke:var(--color-border);stroke-width:3}.ar-ring-fill[data-v-d3215d21]{fill:none;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .6s var(--ease-out-expo)}.ar-ring-pct[data-v-d3215d21]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.575rem;font-weight:var(--font-weight-bold);color:var(--color-fg);letter-spacing:-.03em}.ar-item-text[data-v-d3215d21]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.ar-item-title[data-v-d3215d21]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ar-item-meta[data-v-d3215d21]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted)}.ar-chevron[data-v-d3215d21]{color:var(--color-fg-faint);flex-shrink:0;transition:color var(--dur-fast),transform var(--dur-fast) var(--ease-out-back)}.ar-item:hover .ar-chevron[data-v-d3215d21]{color:var(--color-fg-muted);transform:translate(3px)}.ar-empty[data-v-d3215d21]{padding:2rem 1.25rem;text-align:center}.ar-empty p[data-v-d3215d21]{font-size:var(--text-body-sm);color:var(--color-fg-muted);margin:0;line-height:1.5}.countdown[data-v-b2a1a6c1]{display:flex;align-items:center;gap:.5rem}.countdown-track[data-v-b2a1a6c1]{flex:1;height:3px;background:var(--color-border);border-radius:var(--r-full);overflow:hidden;min-width:40px}.countdown-fill[data-v-b2a1a6c1]{height:100%;border-radius:var(--r-full);transition:width 1s linear,background-color var(--dur-slow) var(--ease-out-quad)}.countdown-label[data-v-b2a1a6c1]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);white-space:nowrap}.urg-green .countdown-fill[data-v-b2a1a6c1]{background:#34d399}.urg-green .countdown-label[data-v-b2a1a6c1]{color:#34d399}.urg-yellow .countdown-fill[data-v-b2a1a6c1]{background:#fbbf24}.urg-yellow .countdown-label[data-v-b2a1a6c1]{color:#fbbf24}.urg-orange .countdown-fill[data-v-b2a1a6c1]{background:var(--color-brand)}.urg-orange .countdown-label[data-v-b2a1a6c1]{color:var(--color-brand)}.urg-red .countdown-fill[data-v-b2a1a6c1]{background:#f87171}.urg-red .countdown-label[data-v-b2a1a6c1]{color:#f87171}.hw-card[data-v-2b747518]{background:var(--color-bg-muted);border:1px solid var(--color-border);border-left:2px solid var(--color-border);border-radius:0;padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.5rem;overflow:hidden;min-width:0;transition:border-color var(--dur-fast) var(--ease-out-quad),background var(--dur-fast) var(--ease-out-quad)}.hw-card[data-v-2b747518]:hover{background:var(--color-bg-surface)}.card--pending[data-v-2b747518]{border-left-color:var(--color-brand)}.card--late[data-v-2b747518]{border-left-color:#f87171}.card--submitted[data-v-2b747518]{border-left-color:var(--color-brand)}.card--reviewed[data-v-2b747518]{border-left-color:#a78bfa}.card-top[data-v-2b747518]{display:flex;align-items:center;justify-content:space-between}.type-chip[data-v-2b747518]{display:inline-flex;align-items:center;gap:.2rem;padding:.18rem .5rem;border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase}.type--exercise[data-v-2b747518]{background:#34d3991f;color:#34d399}.type--video[data-v-2b747518]{background:#58a6ff1f;color:#58a6ff}.type--text[data-v-2b747518]{background:#ff7b721f;color:#ff7b72}.type--audio[data-v-2b747518]{background:#f2994a1f;color:#f2994a}.type--vocabulary[data-v-2b747518]{background:#fbbf241f;color:#fbbf24}.type--module[data-v-2b747518]{background:#eeeeee14;color:var(--color-fg)}.status-badge[data-v-2b747518]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;padding:.15rem .45rem;border-radius:var(--r-full)}.badge--pending[data-v-2b747518]{background:#fd551d1f;color:var(--color-brand)}.badge--late[data-v-2b747518]{background:#ef44441f;color:#f87171}.badge--submitted[data-v-2b747518]{background:#fd551d1f;color:var(--color-brand);border-radius:0}.badge--reviewed[data-v-2b747518]{background:#a78bfa1f;color:#a78bfa}.card-title[data-v-2b747518]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);margin:0;line-height:1.4;letter-spacing:var(--tracking-tight)}.card-due[data-v-2b747518]{display:flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted)}.card-due--overdue[data-v-2b747518]{color:#f87171;font-weight:var(--font-weight-medium)}.score-row[data-v-2b747518]{display:flex;align-items:baseline;gap:.1rem}.score-val[data-v-2b747518]{font-size:1.375rem;font-weight:var(--font-weight-bold);color:var(--color-brand);font-family:var(--font-mono);letter-spacing:var(--tracking-tighter)}.score-max[data-v-2b747518]{font-family:var(--font-mono);font-size:var(--text-accent-sm);color:var(--color-fg-muted);letter-spacing:var(--tracking-tighter)}.feedback-badge[data-v-2b747518]{display:inline-flex;align-items:center;gap:.25rem;padding:.18rem .5rem;background:#a78bfa1f;color:#a78bfa;border-radius:var(--r-full);font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);align-self:flex-start}.card-actions[data-v-2b747518]{margin-top:.25rem;min-width:0}.btn-card[data-v-2b747518]{display:flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;padding:.55rem 1rem;border:none;border-radius:var(--r-md);font-family:var(--font-sans);font-size:.8125rem;font-weight:700;cursor:pointer;text-decoration:none;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background var(--dur-base) var(--ease-out-quart),box-shadow var(--dur-base) var(--ease-out-quart)}.btn-card--primary[data-v-2b747518]{background:var(--color-brand);color:#fff}.btn-card--primary[data-v-2b747518]:hover{background:var(--color-brand-muted);box-shadow:0 4px 18px #fd551d4d}.btn-card--danger[data-v-2b747518]{background:#ef44442e;color:#f87171;border:1px solid rgba(239,68,68,.25)}.btn-card--danger[data-v-2b747518]:hover{background:#ef444447}.btn-card--ghost[data-v-2b747518]{background:#eeeeee0d;color:var(--color-fg-muted);border:1px solid var(--color-border);border-radius:0}.btn-card--ghost[data-v-2b747518]:hover{background:#eeeeee14;color:var(--color-fg)}.hw-section[data-v-eeb51d83]{display:flex;flex-direction:column;gap:1.5rem}.hw-section-title[data-v-eeb51d83]{display:flex;align-items:center;gap:.5rem;margin:0;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-fg-muted)}.hw-group[data-v-eeb51d83]{display:flex;flex-direction:column;gap:.625rem}.group-label[data-v-eeb51d83]{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase}.group-label--late[data-v-eeb51d83]{color:#f87171}.group-label--pending[data-v-eeb51d83],.group-label--done[data-v-eeb51d83]{color:var(--color-brand)}.hw-grid[data-v-eeb51d83]{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:.75rem}.fw-widget[data-v-dc832c61]{background:var(--color-bg-muted)}.fw-header[data-v-dc832c61]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.fw-header-left[data-v-dc832c61]{display:flex;align-items:center;gap:.5rem}.fw-icon[data-v-dc832c61]{width:32px;height:32px;border-radius:var(--r-xl);background:transparent;display:flex;align-items:center;justify-content:center;color:var(--color-brand);flex-shrink:0}.fw-eyebrow[data-v-dc832c61]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-fg-muted)}.fw-badge[data-v-dc832c61]{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .625rem;border-radius:0;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);white-space:nowrap}.fw-badge--due[data-v-dc832c61]{background:#fd551d1a;border:1px solid rgba(253,85,29,.25);color:#fd551d}.fw-badge--ok[data-v-dc832c61]{background:transparent;border:1px solid var(--color-border);color:var(--color-fg-muted)}.fw-deck-list[data-v-dc832c61]{display:flex;flex-direction:column}.fw-deck-item[data-v-dc832c61]{display:flex;align-items:center;gap:.875rem;padding:.875rem 1.25rem;border-bottom:1px solid var(--color-border);text-decoration:none;color:inherit;transition:background var(--dur-fast) var(--ease-out-quad)}.fw-deck-item[data-v-dc832c61]:last-child{border-bottom:none}.fw-deck-item[data-v-dc832c61]:hover{background:var(--color-bg-surface)}.fw-deck-info[data-v-dc832c61]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.fw-deck-title[data-v-dc832c61]{font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fw-deck-desc[data-v-dc832c61]{font-size:var(--text-accent-sm);color:var(--color-fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fw-deck-due[data-v-dc832c61]{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.fw-deck-due--pending .fw-due-count[data-v-dc832c61]{font-family:var(--font-mono);font-size:1.25rem;font-weight:700;line-height:1;color:#fd551d}.fw-deck-due--pending .fw-due-label[data-v-dc832c61]{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;color:#fd551d;opacity:.7}.fw-deck-due--ok .fw-due-label[data-v-dc832c61]{font-size:.75rem;font-weight:500;color:var(--color-fg-muted)}.fw-arrow[data-v-dc832c61]{color:var(--color-fg-subtle);flex-shrink:0;transition:transform var(--dur-fast) var(--ease-out-back)}.fw-deck-item:hover .fw-arrow[data-v-dc832c61]{transform:translate(3px);color:var(--color-fg-muted)}.exercise-page-wrapper{min-height:100dvh;background:var(--color-bg)}.question-container[data-v-2d4a73d8]{display:flex;flex-direction:column;gap:1.25rem}.question-text[data-v-2d4a73d8]{font-size:1.1rem;font-weight:500;line-height:1.65;color:var(--color-fg);margin:0}.image-container[data-v-2d4a73d8]{text-align:center}.image-container img[data-v-2d4a73d8]{max-width:100%;max-height:260px;border:1px solid var(--color-border);object-fit:contain}.options-container[data-v-2d4a73d8]{display:flex;flex-direction:column;gap:10px}.option[data-v-2d4a73d8]{display:flex;align-items:center;gap:.875rem;padding:.9rem 1.125rem;background:var(--color-bg-surface);border:1px solid var(--color-border);border-left-width:3px;border-left-color:transparent;cursor:pointer;transition:background var(--dur-fast) var(--ease-out-quad),border-color var(--dur-fast) var(--ease-out-quad),opacity var(--dur-fast);min-height:52px;outline:none}.option[data-v-2d4a73d8]:hover,.option[data-v-2d4a73d8]:focus-visible{background:var(--color-hover-bg);border-color:#eee3;border-left-color:transparent}.option.selected[data-v-2d4a73d8]{background:var(--color-brand-bg);border-color:var(--color-border);border-left-color:var(--color-brand)}.option.dimmed[data-v-2d4a73d8]{opacity:.38}.option-indicator[data-v-2d4a73d8]{flex-shrink:0;width:18px;height:18px;border:1.5px solid var(--color-border);background:transparent;display:flex;align-items:center;justify-content:center;color:var(--color-brand);transition:border-color var(--dur-fast),background var(--dur-fast)}.option.selected .option-indicator[data-v-2d4a73d8]{border-color:var(--color-brand);background:var(--color-brand-bg)}.option-text[data-v-2d4a73d8]{font-size:1rem;font-weight:500;color:var(--color-fg);line-height:1.5}.question-container[data-v-67febcf8]{display:flex;flex-direction:column;gap:1.75rem}.question-text[data-v-67febcf8]{font-size:var(--text-body-lg, 1.1rem);font-weight:var(--font-weight-medium, 500);line-height:1.8;letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eeeeee);margin:0}.blank-slot[data-v-67febcf8]{display:inline-flex;align-items:baseline;gap:.2rem;margin:0 .15rem;position:relative;cursor:default;transition:opacity .15s ease}.blank-badge[data-v-67febcf8]{font-family:var(--font-mono, monospace);font-size:.65rem;font-weight:700;line-height:1;color:var(--color-brand, #fd551d);background:#fd551d1f;border:1px solid rgba(253,85,29,.25);padding:.05rem .3rem;letter-spacing:0;vertical-align:middle;transition:background .15s ease,border-color .15s ease}.blank-underline[data-v-67febcf8]{display:inline-block;width:4.5rem;height:1px;background:#fd551d4d;vertical-align:middle;position:relative;transition:background .15s ease,width .15s ease}.blank-underline[data-v-67febcf8]:after{content:"";position:absolute;inset-x:0;top:0;height:1px;background:var(--color-brand, #fd551d);transform-origin:left center;transform:scaleX(0);transition:transform .3s cubic-bezier(.625,.05,0,1)}.blank-slot.is-active .blank-badge[data-v-67febcf8]{background:#fd551d38;border-color:#fd551d80}.blank-slot.is-active .blank-underline[data-v-67febcf8]:after{transform:scaleX(1)}.blank-slot.is-filled .blank-badge[data-v-67febcf8]{background:#fd551d2e;border-color:#fd551d66}.blank-slot.is-filled .blank-underline[data-v-67febcf8]{background:#fd551d80}.blank-value[data-v-67febcf8]{display:inline-flex;align-items:baseline;min-width:3rem}.blank-typed-word[data-v-67febcf8]{font-weight:700;color:var(--color-brand, #fd551d);letter-spacing:.01em;position:relative;padding-bottom:1px}.blank-typed-word[data-v-67febcf8]:after{content:"";position:absolute;inset-x:0;bottom:-1px;height:1px;background:var(--color-brand, #fd551d);opacity:.5}.blank-word-enter-active[data-v-67febcf8]{transition:opacity .15s ease,transform .15s ease}.blank-word-leave-active[data-v-67febcf8]{transition:opacity .1s ease,transform .1s ease}.blank-word-enter-from[data-v-67febcf8]{opacity:0;transform:translateY(4px)}.blank-word-leave-to[data-v-67febcf8]{opacity:0;transform:translateY(-3px)}.inputs-stack[data-v-67febcf8]{display:flex;flex-direction:column;gap:.625rem;max-width:480px;width:100%;margin:0 auto}.input-row[data-v-67febcf8]{display:flex;align-items:stretch;border:1px solid var(--color-border, rgba(238, 238, 238, .1));border-bottom-width:2px;background:var(--color-bg-surface, #222222);transition:border-color .2s ease,box-shadow .2s ease}.input-row.is-focused[data-v-67febcf8]{border-color:var(--color-brand, #fd551d);box-shadow:0 0 0 3px #fd551d24}.input-index-badge[data-v-67febcf8]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:2.75rem;font-family:var(--font-mono, monospace);font-size:.7rem;font-weight:700;color:var(--color-brand, #fd551d);border-right:1px solid var(--color-border, rgba(238, 238, 238, .1));background:#fd551d0d;letter-spacing:0;transition:background .15s ease}.input-row.is-focused .input-index-badge[data-v-67febcf8]{background:#fd551d1a}.input-row input[type=text][data-v-67febcf8]{flex:1;width:100%;font-family:var(--font-sans);font-size:var(--text-body, 1rem);font-weight:var(--font-weight-medium, 500);padding:.875rem 1rem;background:transparent;border:none!important;border-radius:0!important;outline:none;box-shadow:none!important;margin-bottom:0!important;color:var(--color-fg, #eeeeee);box-sizing:border-box;min-height:52px}.input-row input[type=text][data-v-67febcf8]::placeholder{color:var(--color-fg-faint, rgba(238, 238, 238, .3));font-weight:400}.question-container[data-v-c9627658]{display:flex;flex-direction:column;gap:1.25rem}.question-text[data-v-c9627658]{font-size:var(--text-body-lg, 1.1rem);font-weight:var(--font-weight-medium, 500);line-height:1.65;letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eeeeee);margin:0}.matching-list[data-v-c9627658]{display:flex;flex-direction:column;gap:.75rem}.matching-row[data-v-c9627658]{display:flex;flex-direction:column;gap:.625rem;background:var(--color-bg-surface, #222222);border:1px solid var(--color-border, rgba(238,238,238,.1));border-radius:0;padding:.875rem 1rem;border-left:2px solid var(--color-border, rgba(238,238,238,.1));transition:border-left-color var(--dur-fast, .2s) var(--ease-out-quad)}.matching-row[data-v-c9627658]:has(.pill.selected){border-left-color:var(--color-brand, #fd551d)}.col-a[data-v-c9627658]{display:flex;align-items:center}.term[data-v-c9627658]{font-size:var(--text-body-sm, .875rem);font-weight:var(--font-weight-bold, 700);letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eeeeee);text-transform:uppercase;font-size:.75rem;letter-spacing:.08em}.col-b[data-v-c9627658]{display:flex;flex-wrap:wrap;gap:.4rem}.pill[data-v-c9627658]{position:relative;overflow:hidden;padding:.4rem .75rem;background:transparent;border:1px solid var(--color-border, rgba(238,238,238,.1));border-radius:0;color:var(--color-fg-muted, #818081);font-family:var(--font-sans);font-size:var(--text-body-sm, .875rem);font-weight:var(--font-weight-medium, 500);cursor:pointer;min-height:34px;line-height:1.3;transition:border-color var(--dur-fast, .2s) var(--ease-out-quad),color var(--dur-slower, .7s) cubic-bezier(.625,.05,0,1),opacity var(--dur-fast, .2s)}.pill[data-v-c9627658]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-brand, #fd551d);transform-origin:left center;transform:scaleX(0);transition:transform var(--dur-slower, .7s) cubic-bezier(.625,.05,0,1);z-index:0}.pill span[data-v-c9627658]{position:relative;z-index:1}.pill[data-v-c9627658]:hover:not(.taken):not(.selected){border-color:#fd551d66;color:var(--color-bg, #141314)}.pill[data-v-c9627658]:hover:not(.taken):not(.selected):before{transform:scaleX(1)}.pill.selected[data-v-c9627658]{background:#fd551d1a;border-color:#fd551d80;color:var(--color-brand, #fd551d);font-weight:var(--font-weight-bold, 700)}.pill.selected[data-v-c9627658]:before{transform:scaleX(0)}.pill.taken[data-v-c9627658]{opacity:.25;cursor:not-allowed}.vocabulary-study-container[data-v-3caf9383]{background:#eee;display:flex;flex-direction:column}.study-header[data-v-3caf9383]{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid rgba(0,0,0,.07);flex-wrap:wrap}.helper-text[data-v-3caf9383]{font-family:var(--font-sans);font-size:var(--text-accent-sm);color:#14131473;margin:0;font-style:italic}.progress-indicator[data-v-3caf9383]{background:#fd551d14;padding:.25rem .75rem;border:1px solid rgba(253,85,29,.2)}.progress-indicator span[data-v-3caf9383]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);color:#fd551d;letter-spacing:var(--tracking-tighter)}.vocabulary-grid[data-v-3caf9383]{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:1px;background:#eee;padding:1px}.vocab-card[data-v-3caf9383]{background:#f7f7f7;border-radius:0;overflow:hidden;cursor:pointer;position:relative;transition:background var(--dur-base) var(--ease-out-quart),transform var(--dur-base) var(--ease-out-quart)}.vocab-card[data-v-3caf9383]:hover{background:#fff;transform:translateY(-3px);z-index:1;box-shadow:0 8px 28px #0000001a}.vocab-card.active[data-v-3caf9383]{background:#fff;box-shadow:inset 0 3px #fd551d}.vocab-card.heard[data-v-3caf9383]{background:color-mix(in srgb,#34d399 6%,#f7f7f7)}.vocab-card.heard[data-v-3caf9383]:hover{background:color-mix(in srgb,#34d399 8%,#ffffff)}.card-image-wrapper[data-v-3caf9383]{position:relative;width:100%;padding-top:100%;background:#e8e8e8;overflow:hidden}.card-image-wrapper img[data-v-3caf9383]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform var(--dur-slow) var(--ease-out-quart)}.vocab-card:hover .card-image-wrapper img[data-v-3caf9383]{transform:scale(1.04)}.audio-button[data-v-3caf9383]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;background:#141314b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.18);border-radius:0;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;z-index:2;opacity:0;transition:opacity var(--dur-fast) var(--ease-out-quad),background var(--dur-fast) var(--ease-out-quad),transform var(--dur-fast) var(--ease-out-back)}.vocab-card:hover .audio-button[data-v-3caf9383]{opacity:1}.audio-button[data-v-3caf9383]:hover:not(:disabled){background:#fd551d;border-color:#fd551d;transform:translate(-50%,-50%) scale(1.08)}.audio-button[data-v-3caf9383]:disabled{cursor:not-allowed;opacity:.3}.audio-button[data-v-3caf9383] svg,.expand-button[data-v-3caf9383] svg{display:block;flex-shrink:0;pointer-events:none}.expand-button[data-v-3caf9383]{position:absolute;bottom:.5rem;right:.5rem;width:26px;height:26px;background:#14131499;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:none;border-radius:0;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;z-index:2;opacity:0;transition:opacity var(--dur-fast) var(--ease-out-quad),background var(--dur-fast) var(--ease-out-quad)}.vocab-card:hover .expand-button[data-v-3caf9383]{opacity:1}.expand-button[data-v-3caf9383]:hover{background:#fd551d}@media (hover: none){.audio-button[data-v-3caf9383],.expand-button[data-v-3caf9383]{opacity:1}}.heard-badge[data-v-3caf9383]{position:absolute;top:.5rem;left:.5rem;width:24px;height:24px;background:#34d399;border-radius:0;display:flex;align-items:center;justify-content:center;color:#fff;z-index:3}.playing-icon[data-v-3caf9383]{animation:pulse-opacity-3caf9383 1s ease-in-out infinite}@keyframes pulse-opacity-3caf9383{0%,to{opacity:1}50%{opacity:.65}}.card-word[data-v-3caf9383]{padding:.875rem 1rem;background:#f7f7f7;border-top:1px solid rgba(0,0,0,.06);min-height:4rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;text-align:center;transition:background var(--dur-base) var(--ease-out-quart)}.vocab-card:hover .card-word[data-v-3caf9383],.vocab-card.active .card-word[data-v-3caf9383]{background:#fff}.word-text[data-v-3caf9383]{position:relative;display:inline-block;width:fit-content;font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:#141314}.word-text[data-v-3caf9383]:before,.word-text[data-v-3caf9383]:after{content:"";position:absolute;inset-x:0;bottom:-2px;height:1px;background:#fd551d}.word-text[data-v-3caf9383]:before{transform-origin:left;transform:scaleX(0);transition:transform .6s cubic-bezier(.625,.05,0,1)}.word-text[data-v-3caf9383]:after{transform-origin:right;transform:scaleX(0);transition:transform .6s cubic-bezier(.625,.05,0,1)}.vocab-card:hover .word-text[data-v-3caf9383]:before{transform:scaleX(1)}.card-translation[data-v-3caf9383]{margin:0;font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:#fd551d;animation:fadeSlideIn-3caf9383 var(--dur-base) var(--ease-out-quart) both}@keyframes fadeSlideIn-3caf9383{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.reveal-hint[data-v-3caf9383]{position:relative;display:inline-block;margin:0;padding:0;background:none;border:none;border-radius:0;box-shadow:none;font-family:var(--font-sans);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);color:#14131466;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quad)}.reveal-hint[data-v-3caf9383]:hover{color:#141314}.reveal-hint-inner[data-v-3caf9383]{position:relative;display:inline-block;width:fit-content}.reveal-hint-inner[data-v-3caf9383]:before{content:"";position:absolute;inset-x:0;bottom:-1px;height:1px;background:currentColor;transform-origin:left;transform:scaleX(0);transition:transform .6s cubic-bezier(.625,.05,0,1)}.reveal-hint:hover .reveal-hint-inner[data-v-3caf9383]:before{transform:scaleX(1)}.fullscreen-overlay[data-v-3caf9383]{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1.5rem;animation:overlayIn-3caf9383 var(--dur-base) var(--ease-out-quad)}@keyframes overlayIn-3caf9383{0%{opacity:0}to{opacity:1}}.fullscreen-modal[data-v-3caf9383]{background:#f7f7f7;border-radius:0;max-width:min(90vw,580px);max-height:90vh;width:100%;display:flex;flex-direction:column;overflow:hidden;position:relative;animation:modalIn-3caf9383 var(--dur-base) var(--ease-out-back)}@keyframes modalIn-3caf9383{0%{transform:scale(.93);opacity:0}to{transform:scale(1);opacity:1}}.fullscreen-close[data-v-3caf9383]{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;background:#14131414;border:none;border-radius:0;display:flex;align-items:center;justify-content:center;color:#141314;cursor:pointer;z-index:1;transition:background var(--dur-fast) var(--ease-out-quad),color var(--dur-fast) var(--ease-out-quad)}.fullscreen-close[data-v-3caf9383]:hover{background:#fd551d;color:#fff}.fullscreen-img-wrapper[data-v-3caf9383]{width:100%;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;background:#e8e8e8;overflow:hidden}.fullscreen-img-wrapper img[data-v-3caf9383]{max-width:100%;max-height:62vh;object-fit:contain;display:block}.fullscreen-info[data-v-3caf9383]{padding:1.25rem 1.5rem 1.5rem;text-align:center;background:#f7f7f7;border-top:1px solid rgba(0,0,0,.07)}.fullscreen-word[data-v-3caf9383]{margin:0 0 .35rem;font-family:var(--font-sans);font-size:var(--text-h5);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:#141314}.fullscreen-translation[data-v-3caf9383]{margin:0;font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:#fd551d}.vocab-marquee-strip[data-v-3caf9383]{overflow:hidden;padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.07);background:#eee}.vocab-marquee-track[data-v-3caf9383]{white-space:nowrap;will-change:transform;display:inline-block}.marquee-word[data-v-3caf9383]{font-family:var(--font-sans);font-size:clamp(1.25rem,3vw,2rem);font-weight:300;letter-spacing:.06em;text-transform:uppercase;color:#1413142e}.marquee-word.brand[data-v-3caf9383]{color:#fd551d;opacity:.7}.counter-mobile[data-v-3caf9383]{display:none}.counter-desktop[data-v-3caf9383]{display:inline}@media (min-width: 769px) and (max-width: 1100px){.vocabulary-grid[data-v-3caf9383]{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1101px){.vocabulary-grid[data-v-3caf9383]{grid-template-columns:repeat(4,1fr)}}@media (max-width: 768px){.counter-mobile[data-v-3caf9383]{display:inline}.counter-desktop[data-v-3caf9383]{display:none}.study-header[data-v-3caf9383]{position:sticky;top:0;z-index:10;padding:.75rem max(1rem,env(safe-area-inset-right) + .75rem) .75rem max(1rem,env(safe-area-inset-left) + .75rem);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#eeeeeeeb}.vocabulary-grid[data-v-3caf9383]{grid-template-columns:1fr;gap:1px}.vocab-card .card-image-wrapper[data-v-3caf9383]{padding-top:100%}.vocab-card[data-v-3caf9383]:hover{transform:none;box-shadow:none}.vocab-card .card-word[data-v-3caf9383]{min-height:5.5rem;padding:1.25rem 1.25rem 1.5rem;transition:opacity .48s cubic-bezier(.25,.46,.45,.94),transform .48s cubic-bezier(.25,.46,.45,.94),background var(--dur-base) var(--ease-out-quart)}.vocab-card .word-text[data-v-3caf9383]{font-size:1.125rem}.vocab-card.word-exit .card-word[data-v-3caf9383]{opacity:0;transform:translate(-24px)}.audio-button[data-v-3caf9383],.expand-button[data-v-3caf9383]{opacity:1}}@media (prefers-reduced-motion: reduce){.word-text[data-v-3caf9383]:before,.word-text[data-v-3caf9383]:after,.reveal-hint-inner[data-v-3caf9383]:before{transition:none!important}}.wc-container[data-v-6ed84e9f]{display:flex;flex-direction:column;gap:1.5rem}.wc-enunciado[data-v-6ed84e9f]{font-size:var(--text-body-lg, 1.05rem);font-weight:var(--font-weight-medium, 500);line-height:1.65;letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eeeeee);margin:0;text-align:center}.words-grid[data-v-6ed84e9f]{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;border:1px solid var(--color-border, rgba(238,238,238,.1));background:var(--color-border, rgba(238,238,238,.1))}@media (max-width: 520px){.words-grid[data-v-6ed84e9f]{grid-template-columns:1fr}}.word-card[data-v-6ed84e9f]{background:var(--color-bg-surface, #222222);border-radius:0;padding:1.25rem 1rem 1.375rem;display:flex;flex-direction:column;align-items:center;gap:1rem;position:relative;cursor:text}.word-contexto[data-v-6ed84e9f]{font-size:var(--text-body-sm, .875rem);color:var(--color-fg-muted, #818081);margin:0;line-height:1.6;font-style:italic;align-self:stretch;text-align:center}.word-skeleton[data-v-6ed84e9f]{display:flex;align-items:baseline;gap:.05rem}.sk-letter[data-v-6ed84e9f]{font-size:1.875rem;font-weight:700;font-family:var(--font-mono, "Fira Code", "Courier New", monospace);line-height:1;color:var(--color-fg, #eeeeee);letter-spacing:.03em;text-transform:lowercase}.sk-blank[data-v-6ed84e9f]{color:var(--color-brand, #fd551d);border-bottom:2px solid rgba(253,85,29,.4);min-width:1.5ch;text-align:center}.letter-input[data-v-6ed84e9f]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:text}.cp-container[data-v-6a53bc99]{display:flex;flex-direction:column;gap:1.5rem}.cp-enunciado[data-v-6a53bc99]{font-size:var(--text-body-lg, 1.05rem);font-weight:var(--font-weight-medium, 500);line-height:1.65;letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eeeeee);margin:0;text-align:center}.cp-prose[data-v-6a53bc99]{font-size:1rem;line-height:1.9;color:#c9d1d9}.cp-para-break[data-v-6a53bc99]{display:block;margin-bottom:.2rem}.cp-gap[data-v-6a53bc99]{display:inline;cursor:text}.cp-visible[data-v-6a53bc99]{font-family:inherit;font-weight:inherit;color:inherit;transition:color .15s}.cp-gap.active .cp-visible[data-v-6a53bc99]{color:#fd551dbf}.cp-slot[data-v-6a53bc99]{position:relative;display:inline-block;vertical-align:baseline;cursor:text}.cp-display[data-v-6a53bc99]{display:inline-block;vertical-align:baseline}.cp-placeholder[data-v-6a53bc99]{display:inline-block;font-family:var(--font-mono, "Fira Code", "Courier New", monospace);font-weight:700;color:transparent;border-bottom:1.5px solid rgba(253,85,29,.35);letter-spacing:.05em;transition:border-color .15s;vertical-align:baseline;-webkit-user-select:none;user-select:none}.cp-gap.active .cp-placeholder[data-v-6a53bc99]{border-bottom-color:#fd551d}.cp-typed[data-v-6a53bc99]{display:inline-block;font-family:var(--font-mono, "Fira Code", "Courier New", monospace);font-weight:700;color:#fd551d;letter-spacing:.05em;vertical-align:baseline}.cp-hidden-input[data-v-6a53bc99]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:text;border:none!important;background:transparent!important;padding:0!important;margin:0!important;box-shadow:none!important;font-size:1rem}@media (max-width: 480px){.cp-prose[data-v-6a53bc99]{font-size:.925rem;line-height:2.1}}.apc-card[data-v-6277ad48]{position:relative;background:var(--color-surface);border:1px solid var(--color-border);padding:1.5rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1.25rem;overflow:hidden;transition:border-color .3s var(--ease-out-cubic)}.apc-card--playing[data-v-6277ad48]{border-color:#fd551d4d}.apc-card[data-v-6277ad48]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(253,85,29,.03) 0%,transparent 60%);pointer-events:none;opacity:0;transition:opacity .4s var(--ease-out-cubic)}.apc-card--playing[data-v-6277ad48]:before{opacity:1}.apc-wave[data-v-6277ad48]{display:flex;align-items:center;justify-content:center;gap:3px;height:40px;padding:0 .25rem}.apc-bar[data-v-6277ad48]{flex-shrink:0;width:3px;background:var(--color-brand);border-radius:2px;transform-origin:center bottom;opacity:.25;transition:opacity .3s var(--ease-out-cubic)}.apc-bar[data-v-6277ad48]:nth-child(1){height:8px}.apc-bar[data-v-6277ad48]:nth-child(2){height:14px}.apc-bar[data-v-6277ad48]:nth-child(3){height:20px}.apc-bar[data-v-6277ad48]:nth-child(4){height:28px}.apc-bar[data-v-6277ad48]:nth-child(5){height:34px}.apc-bar[data-v-6277ad48]:nth-child(6){height:38px}.apc-bar[data-v-6277ad48]:nth-child(7){height:36px}.apc-bar[data-v-6277ad48]:nth-child(8){height:30px}.apc-bar[data-v-6277ad48]:nth-child(9){height:22px}.apc-bar[data-v-6277ad48]:nth-child(10){height:18px}.apc-bar[data-v-6277ad48]:nth-child(11){height:22px}.apc-bar[data-v-6277ad48]:nth-child(12){height:30px}.apc-bar[data-v-6277ad48]:nth-child(13){height:36px}.apc-bar[data-v-6277ad48]:nth-child(14){height:38px}.apc-bar[data-v-6277ad48]:nth-child(15){height:34px}.apc-bar[data-v-6277ad48]:nth-child(16){height:28px}.apc-bar[data-v-6277ad48]:nth-child(17){height:20px}.apc-bar[data-v-6277ad48]:nth-child(18){height:14px}.apc-bar[data-v-6277ad48]:nth-child(19){height:10px}.apc-bar[data-v-6277ad48]:nth-child(20){height:7px}.apc-bar[data-v-6277ad48]:nth-child(21){height:5px}.apc-bar[data-v-6277ad48]:nth-child(22){height:4px}.apc-wave.is-playing .apc-bar[data-v-6277ad48]{opacity:.85;animation:apc-wave-pulse-6277ad48 .85s ease-in-out infinite alternate;animation-delay:calc((var(--i) - 1) * .04s)}.apc-card:hover .apc-bar[data-v-6277ad48]{opacity:.45}.apc-card--no-audio .apc-bar[data-v-6277ad48]{opacity:.08;height:6px!important;animation:none}@keyframes apc-wave-pulse-6277ad48{0%{transform:scaleY(.3)}to{transform:scaleY(1)}}.apc-no-audio[data-v-6277ad48]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem 0 .5rem}.apc-no-audio-icon[data-v-6277ad48]{width:44px;height:44px;border-radius:var(--radius-full);background:var(--color-background-muted);border:1px solid var(--color-border-muted);display:flex;align-items:center;justify-content:center;color:var(--color-foreground-muted)}.apc-no-audio-icon svg[data-v-6277ad48]{width:22px;height:22px}.apc-no-audio-label[data-v-6277ad48]{font-family:var(--font-sans);font-size:.9rem;font-weight:600;letter-spacing:-.01em;color:var(--color-foreground-muted);margin:0}.apc-no-audio-sub[data-v-6277ad48]{font-family:var(--font-sans);font-size:.78rem;color:var(--color-foreground-muted);opacity:.5;margin:0;text-align:center;max-width:240px;line-height:1.5}.apc-controls[data-v-6277ad48]{display:flex;align-items:center;gap:1rem}.apc-play-btn[data-v-6277ad48]{flex-shrink:0;position:relative;width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-brand);color:#000;border:none;cursor:pointer;overflow:hidden;transition:transform .3s var(--ease-out-cubic),box-shadow .3s var(--ease-out-cubic)}.apc-play-btn[data-v-6277ad48]:hover{transform:scale(1.08);box-shadow:0 0 0 6px #fd551d26}.apc-play-btn[data-v-6277ad48]:active{transform:scale(.9);box-shadow:none;transition-duration:80ms}.apc-sym-reveal[data-v-6277ad48],.apc-sym-main[data-v-6277ad48]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.apc-sym-icon[data-v-6277ad48]{width:20px;height:20px;display:block;stroke-width:2px}.apc-sym-reveal[data-v-6277ad48]{transform-origin:left center;transform:rotate(-45deg) scale(0);transition:transform .7s cubic-bezier(.76,0,.24,1)}.apc-play-btn:hover .apc-sym-reveal[data-v-6277ad48]{transform:rotate(0) scale(1)}.apc-sym-main[data-v-6277ad48]{transition:transform .7s cubic-bezier(.76,0,.24,1),opacity .3s var(--ease-out-cubic)}.apc-play-btn:hover .apc-sym-main[data-v-6277ad48]{transform:translate(100%);opacity:0}.apc-sym-ripple[data-v-6277ad48]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:#0000001f;opacity:0;transform:scale(0);pointer-events:none;transition:transform 0ms,opacity 0ms}.apc-play-btn:active .apc-sym-ripple[data-v-6277ad48]{opacity:1;transform:scale(1);transition:transform .4s cubic-bezier(0,0,.2,1),opacity .4s ease-out}.apc-scrubber[data-v-6277ad48]{flex:1;display:flex;flex-direction:column;gap:.4rem}.apc-track[data-v-6277ad48]{width:100%;height:3px;background:var(--color-border);cursor:pointer;position:relative;overflow:visible;border-radius:2px}.apc-fill[data-v-6277ad48]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-brand);transform-origin:left center;transform:scaleX(0);border-radius:2px;transition:transform .1s linear;display:flex;align-items:center}.apc-thumb[data-v-6277ad48]{position:absolute;right:-4px;top:50%;transform:translateY(-50%);width:10px;height:10px;border-radius:var(--radius-full);background:var(--color-brand);box-shadow:0 0 0 2px #fd551d40;transition:transform .15s var(--ease-out-cubic)}.apc-track:hover .apc-thumb[data-v-6277ad48]{transform:translateY(-50%) scale(1.25)}.apc-time-row[data-v-6277ad48]{display:flex;justify-content:space-between}.apc-time[data-v-6277ad48]{font-family:var(--font-mono);font-size:.72rem;color:var(--color-foreground-muted);letter-spacing:.02em;opacity:.6}.apc-replay[data-v-6277ad48]{flex-shrink:0;display:flex;align-items:center;gap:.25rem;opacity:0;transform:scale(.8);transition:opacity .3s var(--ease-out-cubic),transform .3s var(--ease-out-cubic);pointer-events:none}.apc-replay--visible[data-v-6277ad48]{opacity:1;transform:scale(1)}.apc-replay-num[data-v-6277ad48]{font-family:var(--font-mono);font-size:1.1rem;font-weight:700;color:var(--color-brand);line-height:1}.apc-replay-icon[data-v-6277ad48]{width:14px;height:14px;color:var(--color-foreground-muted)}@media (max-width: 430px){.apc-card[data-v-6277ad48]{padding:1.25rem 1rem 1rem;gap:1rem}.apc-play-btn[data-v-6277ad48]{width:42px;height:42px}.apc-wave[data-v-6277ad48]{height:32px}.apc-bar[data-v-6277ad48]{width:2.5px}}.ad-wrap[data-v-fc9b0dc5]{display:flex;flex-direction:column;gap:1.5rem}.ad-enunciado[data-v-fc9b0dc5]{font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--text-body--font-weight);line-height:var(--text-body--line-height);letter-spacing:var(--text-body--letter-spacing);color:var(--color-foreground);margin:0;text-align:center}.ad-input-section[data-v-fc9b0dc5]{display:flex;flex-direction:column;gap:.6rem}.ad-input-header[data-v-fc9b0dc5]{display:flex;align-items:center;justify-content:space-between}.ad-input-label[data-v-fc9b0dc5]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--text-accent-sm--font-weight);letter-spacing:var(--text-accent-sm--letter-spacing);color:var(--color-foreground-muted);text-transform:uppercase}.ad-word-count-hint[data-v-fc9b0dc5]{display:flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--text-accent-sm--letter-spacing);color:var(--color-foreground-muted);text-transform:uppercase;opacity:.5}.ad-textarea-wrap[data-v-fc9b0dc5]{position:relative}.ad-textarea[data-v-fc9b0dc5]{display:block;width:100%;background:transparent;border:none;border-top:1px solid var(--color-border);outline:none;resize:none;padding:1rem 0 .75rem;font-family:var(--font-sans);font-size:1.05rem;font-weight:400;line-height:1.65;letter-spacing:-.01em;color:var(--color-foreground);caret-color:var(--color-brand);box-sizing:border-box}.ad-textarea[data-v-fc9b0dc5]::placeholder{color:var(--color-foreground-muted);opacity:.4;font-style:italic;font-weight:300}.ad-textarea[data-v-fc9b0dc5]:focus{outline:none}.ad-textarea-underline[data-v-fc9b0dc5]{position:relative;height:2px;background:var(--color-border);overflow:hidden}.ad-underline-fill[data-v-fc9b0dc5]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-brand);transform-origin:left center;transform:scaleX(0);transition:transform .4s cubic-bezier(.625,.05,0,1)}.ad-textarea-wrap.has-value .ad-underline-fill[data-v-fc9b0dc5],.ad-textarea:focus~.ad-textarea-underline .ad-underline-fill[data-v-fc9b0dc5]{transform:scaleX(1)}.ad-first-hint[data-v-fc9b0dc5]{display:flex;align-items:center;gap:.5rem;font-family:var(--font-sans);font-size:var(--text-body-sm);color:var(--color-foreground-muted);opacity:.5;letter-spacing:.01em;text-align:center;justify-content:center;padding:0 1rem}.hint-dot[data-v-fc9b0dc5]{display:inline-block;width:6px;height:6px;border-radius:var(--radius-full);background:var(--color-brand);opacity:.5;animation:hint-blink-fc9b0dc5 2s ease-in-out infinite;flex-shrink:0}@keyframes hint-blink-fc9b0dc5{0%,to{opacity:.5}50%{opacity:.1}}.hint-fade-enter-active[data-v-fc9b0dc5]{transition:opacity .4s var(--ease-out-cubic)}.hint-fade-leave-active[data-v-fc9b0dc5]{transition:opacity .25s var(--ease-out-cubic)}.hint-fade-enter-from[data-v-fc9b0dc5],.hint-fade-leave-to[data-v-fc9b0dc5]{opacity:0}.awa-wrap[data-v-a82063c4]{display:flex;flex-direction:column;gap:1.25rem}.awa-answer-zone[data-v-a82063c4]{min-height:60px;padding:.75rem .5rem 0;transition:background .25s var(--ease-out-cubic)}.answer-zone--correct[data-v-a82063c4]{background:#57b8460f;border-radius:var(--radius-8)}.answer-zone--wrong[data-v-a82063c4]{background:#ea4c4c0f;border-radius:var(--radius-8)}.awa-answer-tiles[data-v-a82063c4]{display:flex;flex-wrap:wrap;gap:.4rem;min-height:40px;align-items:center;padding-bottom:.5rem}.answer-placeholder[data-v-a82063c4]{font-family:var(--font-sans);font-size:var(--text-body-sm);color:var(--color-foreground-muted);opacity:.5;font-style:italic;letter-spacing:.01em}.answer-underline[data-v-a82063c4]{height:2px;background:var(--color-border);border-radius:1px}.awa-pool[data-v-a82063c4]{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;min-height:48px}.tile-slot[data-v-a82063c4]{display:flex;align-items:center}.tile[data-v-a82063c4]{display:inline-flex;align-items:center;padding:.45rem .9rem;font-family:var(--font-sans);font-size:1rem;font-weight:600;letter-spacing:-.01em;border-radius:var(--radius-8);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-foreground);cursor:pointer;transition:background .1s var(--ease-out-cubic),border-color .1s var(--ease-out-cubic),transform .1s var(--ease-out-cubic);-webkit-user-select:none;user-select:none;white-space:nowrap}.tile[data-v-a82063c4]:hover:not(:disabled){background:var(--color-background-muted);border-color:var(--color-foreground-muted)}.tile[data-v-a82063c4]:active:not(:disabled){transform:scale(.96)}.tile[data-v-a82063c4]:disabled{cursor:default}.tile--placed[data-v-a82063c4]{background:var(--color-background-muted);border-color:var(--color-foreground-muted);opacity:.85}.tile--placed[data-v-a82063c4]:hover:not(:disabled){opacity:1}.tile--correct[data-v-a82063c4]{background:#57b84626!important;border-color:#57b846!important;color:#a8f096!important}.tile--wrong[data-v-a82063c4]{background:#ea4c4c26!important;border-color:#ea4c4c!important;color:#ff9c9c!important}.tile-ghost[data-v-a82063c4]{height:40px;min-width:48px;border:1px dashed var(--color-border-muted);border-radius:var(--radius-8)}.tile-enter-active[data-v-a82063c4]{transition:all .18s var(--ease-out-cubic)}.tile-leave-active[data-v-a82063c4]{transition:all .15s var(--ease-out-cubic);position:absolute}.tile-enter-from[data-v-a82063c4]{opacity:0;transform:scale(.85) translateY(6px)}.tile-leave-to[data-v-a82063c4]{opacity:0;transform:scale(.85)}.tile-move[data-v-a82063c4]{transition:transform .2s var(--ease-out-cubic)}.sb-wrap[data-v-7329b3e5]{display:flex;flex-direction:column;gap:1.25rem}.sb-prompt[data-v-7329b3e5]{text-align:center;display:flex;flex-direction:column;gap:.5rem;align-items:center}.sb-prompt-eyebrow[data-v-7329b3e5]{display:inline-flex;align-items:center;gap:.35rem;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-fg-muted, #818081)}.sb-prompt-text[data-v-7329b3e5]{font-size:clamp(1.1rem,4vw,1.4rem);font-weight:700;letter-spacing:-.02em;color:var(--color-fg, #eee);margin:0;line-height:1.45}.sb-answer-zone[data-v-7329b3e5]{min-height:60px;padding:.75rem .5rem 0;transition:background .25s ease}.answer-zone--correct[data-v-7329b3e5]{background:#57b8460f;border-radius:6px}.answer-zone--wrong[data-v-7329b3e5]{background:#ea4c4c0f;border-radius:6px}.sb-answer-tiles[data-v-7329b3e5]{display:flex;flex-wrap:wrap;gap:.4rem;min-height:40px;align-items:center;padding-bottom:.5rem}.answer-placeholder[data-v-7329b3e5]{font-size:.85rem;color:#ffffff2e;font-style:italic}.answer-underline[data-v-7329b3e5]{height:2px;background:var(--color-border, rgba(255,255,255,.1));border-radius:1px}.sb-pool[data-v-7329b3e5]{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;min-height:48px}.tile-slot[data-v-7329b3e5]{display:flex;align-items:center}.tile[data-v-7329b3e5]{display:inline-flex;align-items:center;padding:.45rem .9rem;font-family:inherit;font-size:1rem;font-weight:600;letter-spacing:-.01em;border-radius:10px;border:1.5px solid rgba(255,255,255,.15);border-bottom:4px solid rgba(255,255,255,.07);background:var(--color-bg-surface, #222);color:var(--color-fg, #eee);cursor:pointer;transition:all .08s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.tile[data-v-7329b3e5]:hover:not(:disabled){background:#2d2d2d;border-color:#ffffff47;border-bottom-color:#ffffff24}.tile[data-v-7329b3e5]:active:not(:disabled){border-bottom-width:1.5px;transform:translateY(2px)}.tile[data-v-7329b3e5]:disabled{cursor:default}.tile--placed[data-v-7329b3e5]{background:#ffffff12;border-color:#ffffff38;border-bottom-color:#ffffff14}.tile--placed[data-v-7329b3e5]:hover:not(:disabled){background:#ffffff1f}.tile--correct[data-v-7329b3e5]{background:#57b84626!important;border-color:#57b846!important;border-bottom-color:#57b8464d!important;color:#a8f096!important}.tile--wrong[data-v-7329b3e5]{background:#ea4c4c26!important;border-color:#ea4c4c!important;border-bottom-color:#ea4c4c4d!important;color:#ff9c9c!important}.tile-ghost[data-v-7329b3e5]{height:40px;min-width:48px;border:1.5px dashed rgba(255,255,255,.07);border-radius:10px}.tile-enter-active[data-v-7329b3e5]{transition:all .18s ease}.tile-leave-active[data-v-7329b3e5]{transition:all .15s ease;position:absolute}.tile-enter-from[data-v-7329b3e5]{opacity:0;transform:scale(.85) translateY(6px)}.tile-leave-to[data-v-7329b3e5]{opacity:0;transform:scale(.85)}.tile-move[data-v-7329b3e5]{transition:transform .2s ease}.ic-wrap[data-v-12518abb]{display:flex;flex-direction:column;gap:1.25rem}.ic-enunciado[data-v-12518abb]{font-family:var(--font-sans);font-size:clamp(.95rem,3vw,1.1rem);font-weight:600;letter-spacing:var(--tracking-tight, -.015em);color:var(--color-foreground);text-align:center;margin:0}.ic-grid[data-v-12518abb]{display:grid;gap:1px;background:var(--color-border);grid-template-columns:repeat(2,1fr)}.ic-grid--3[data-v-12518abb]{grid-template-columns:repeat(3,1fr)}.ic-grid--2[data-v-12518abb]{grid-template-columns:repeat(2,1fr)}.ic-card[data-v-12518abb]{position:relative;display:flex;flex-direction:column;background:var(--color-surface);border:none;border-radius:0;cursor:pointer;transition:background .2s var(--ease-out-cubic),box-shadow .2s var(--ease-out-cubic),transform .2s var(--ease-out-cubic),opacity .2s var(--ease-out-cubic),filter .2s var(--ease-out-cubic);overflow:hidden;padding:0;text-align:left}.ic-card[data-v-12518abb]:hover:not(:disabled){background:var(--color-background-muted, rgba(255,255,255,.05));transform:translateY(-2px);box-shadow:0 8px 24px #00000059;z-index:1}.ic-card[data-v-12518abb]:active:not(:disabled){transform:translateY(0);box-shadow:none}.ic-card[data-v-12518abb]:disabled{cursor:default}.ic-card--selected[data-v-12518abb]{background:#fd551d12!important;box-shadow:inset 0 4px 0 var(--color-brand, #fd551d)!important}.ic-card--correct[data-v-12518abb]{background:#57b84614!important;box-shadow:inset 0 4px #57b846!important}.ic-card--wrong[data-v-12518abb]{background:#ea4c4c14!important;box-shadow:inset 0 4px #ea4c4c!important}.ic-card--unselected[data-v-12518abb]{opacity:.45;filter:grayscale(.4);transform:scale(.97)}.ic-card--unselected[data-v-12518abb]:hover:not(:disabled){opacity:.65;filter:grayscale(0);transform:scale(.97) translateY(-2px)}.ic-card--dim[data-v-12518abb]{opacity:.3}.ic-img-wrap[data-v-12518abb]{position:relative;width:100%;padding-top:100%;background:#ffffff0a;overflow:hidden}.ic-img[data-v-12518abb]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .35s var(--ease-out-cubic);display:block}.ic-card:hover:not(:disabled) .ic-img[data-v-12518abb]{transform:scale(1.04)}.ic-img-placeholder[data-v-12518abb]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#ffffff1f}.ic-check-badge[data-v-12518abb],.ic-x-badge[data-v-12518abb]{position:absolute;top:.5rem;right:.5rem;width:24px;height:24px;border-radius:0;display:flex;align-items:center;justify-content:center}.ic-check-badge[data-v-12518abb]{background:#57b846;color:#fff}.ic-x-badge[data-v-12518abb]{background:#ea4c4c;color:#fff}.ic-label-area[data-v-12518abb]{padding:.625rem .75rem;border-top:1px solid var(--color-border);min-height:2.5rem;display:flex;align-items:center;justify-content:center;background:inherit;transition:background .12s var(--ease-out-cubic)}.ic-label[data-v-12518abb]{font-family:var(--font-sans);font-size:.85rem;font-weight:700;letter-spacing:var(--tracking-tight, -.01em);color:var(--color-foreground);text-align:center}@media (max-width: 400px){.ic-label[data-v-12518abb]{font-size:.75rem}}.exercise-step[data-v-6fdcd122]{flex-grow:1;display:flex;flex-direction:column;justify-content:center}.question-number[data-v-6fdcd122]{font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#ffffffb3;text-align:center;margin-bottom:2.5rem}.primary-btn[data-v-1ae5475b]{display:inline-flex;align-items:center;justify-content:center;padding:0;font-family:var(--font-mono);font-size:.85rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:0;border:none;background:var(--color-brand);color:#fff;cursor:pointer;white-space:nowrap;outline:none;overflow:hidden;transition:opacity .15s var(--ease-out-cubic)}.primary-btn[data-v-1ae5475b]:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.primary-btn--disabled[data-v-1ae5475b]{opacity:.35;cursor:not-allowed}.pbtn-inner[data-v-1ae5475b]{position:relative;display:flex;width:100%;align-items:center;gap:.375rem}.pbtn-icon[data-v-1ae5475b]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:2rem;height:2.5rem}.pbtn-icon-l[data-v-1ae5475b]{transform-origin:left center;transform:scale(0) rotate(-45deg);transition:transform .7s var(--ease-power4-in-out, cubic-bezier(.83,0,.17,1))}.pbtn-icon-r[data-v-1ae5475b]{position:absolute;right:0;transform-origin:right center;transform:scale(1) rotate(0);transition:transform .7s var(--ease-power4-in-out, cubic-bezier(.83,0,.17,1))}.pbtn-text[data-v-1ae5475b]{display:flex;flex:1;align-items:center;justify-content:center;height:2.5rem;padding:0 .75rem;transform:translate(-2.375rem);transition:transform .7s var(--ease-power4-in-out, cubic-bezier(.83,0,.17,1))}.primary-btn:not(.primary-btn--disabled):hover .pbtn-icon-l[data-v-1ae5475b]{transform:scale(1) rotate(0)}.primary-btn:not(.primary-btn--disabled):hover .pbtn-icon-r[data-v-1ae5475b]{transform:scale(0) rotate(-45deg)}.primary-btn:not(.primary-btn--disabled):hover .pbtn-text[data-v-1ae5475b]{transform:translate(0)}.primary-btn[data-v-1ae5475b]:not(.primary-btn--disabled):active{transform:scale(.97)}.dw-overlay[data-v-40d8d8eb]{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;z-index:9999}.dw-overlay.mobile-overlay[data-v-40d8d8eb]{background:#0000008c}.assistant-modal[data-v-40d8d8eb]{background:var(--color-bg-muted);border:1px solid var(--color-border);display:flex;flex-direction:column;overflow:hidden}.assistant-modal.desktop[data-v-40d8d8eb]{position:fixed;box-shadow:0 24px 80px #0009;cursor:grab}.assistant-modal.desktop[data-v-40d8d8eb]:active{cursor:grabbing}.assistant-modal.maximized[data-v-40d8d8eb]{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;height:100vh!important}.assistant-modal.mobile[data-v-40d8d8eb]{position:fixed;bottom:0;left:0;right:0;top:auto;width:100%;height:min(82vh,640px);max-height:min(82vh,640px);border-top:1px solid var(--color-border);border-left:none;border-right:none;border-bottom:none;z-index:10000;padding-bottom:env(safe-area-inset-bottom,0px);transition:height .35s var(--ease-out-quart, cubic-bezier(.25, 1, .5, 1))}.assistant-modal.mobile.maximized[data-v-40d8d8eb]{height:100dvh!important;max-height:100dvh!important;border-top:none!important}@media (max-height: 500px) and (max-width: 900px){.assistant-modal.mobile[data-v-40d8d8eb]{height:96vh;max-height:96vh}.dw-sheet-handle[data-v-40d8d8eb]{padding:6px 0 2px}.dw-sheet-content[data-v-40d8d8eb]{padding:.375rem 1rem .625rem}}.dw-header[data-v-40d8d8eb]{display:flex;justify-content:space-between;align-items:center;padding:.625rem 1rem;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border);flex-shrink:0;cursor:grab;-webkit-user-select:none;user-select:none}.dw-header[data-v-40d8d8eb]:active{cursor:grabbing}.dw-header-left[data-v-40d8d8eb]{display:flex;align-items:center;gap:.5rem;overflow:hidden;flex-grow:1;min-width:0}.dw-controls[data-v-40d8d8eb]{display:flex;gap:.375rem;flex-shrink:0;flex-grow:0}.dw-maximize-x[data-v-40d8d8eb]{position:relative;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#eeeeee80;cursor:pointer;padding:4px;overflow:hidden;transition:color .7s var(--ease-in-out-quart)}.dw-maximize-x[data-v-40d8d8eb]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-brand);transform-origin:left center;transform:rotate(-45deg) scale(0);transition:transform .7s var(--ease-in-out-quart)}.dw-maximize-x[data-v-40d8d8eb]:hover:before{transform:rotate(0) scale(1)}.dw-maximize-x svg[data-v-40d8d8eb]{position:relative;z-index:1;transition:color .7s var(--ease-in-out-quart)}.dw-maximize-x[data-v-40d8d8eb]:hover{color:#000}.dw-close-x[data-v-40d8d8eb]{position:relative;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#eeeeee80;cursor:pointer;padding:4px;overflow:hidden;transition:color .7s var(--ease-in-out-quart)}.dw-close-x[data-v-40d8d8eb]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-brand);transform-origin:left center;transform:rotate(-45deg) scale(0);transition:transform .7s var(--ease-in-out-quart)}.dw-close-x[data-v-40d8d8eb]:hover:before{transform:rotate(0) scale(1)}.dw-close-x svg[data-v-40d8d8eb]{position:relative;z-index:1;transition:color .7s var(--ease-in-out-quart)}.dw-close-x[data-v-40d8d8eb]:hover{color:#000}.dw-header-mobile[data-v-40d8d8eb]{flex-shrink:0;border-bottom:1px solid var(--color-border);background:var(--color-bg-surface)}.dw-sheet-handle[data-v-40d8d8eb]{display:flex;justify-content:center;padding:10px 0 4px}.dw-sheet-pill[data-v-40d8d8eb]{width:32px;height:3px;background:var(--color-border);border-radius:2px}.dw-sheet-content[data-v-40d8d8eb]{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem .875rem;gap:.75rem}.dw-header-left[data-v-40d8d8eb]{display:flex;align-items:center;gap:.5rem;flex-grow:1;overflow:hidden;min-width:0}.dw-mobile-controls[data-v-40d8d8eb]{display:flex;gap:.375rem;flex-shrink:0;flex-grow:0}.dw-body[data-v-40d8d8eb]{flex-grow:1;overflow-y:auto;padding:1.25rem;position:relative;-webkit-user-select:text;user-select:text;cursor:default;-webkit-overflow-scrolling:touch}.dw-resize[data-v-40d8d8eb]{position:absolute;bottom:0;right:0;width:16px;height:16px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 40%,var(--color-border) 40%,var(--color-border) 50%,transparent 50%),linear-gradient(135deg,transparent 65%,var(--color-border) 65%,var(--color-border) 75%,transparent 75%)}.rl[data-v-4d3cb431]{display:flex;flex-direction:column;gap:1rem;height:100%}.rl-hint[data-v-4d3cb431]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);margin:0;line-height:1.5}.rl-list[data-v-4d3cb431]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;border:1px solid var(--color-border)}.rl-item[data-v-4d3cb431]{display:flex;align-items:center;gap:.875rem;padding:.875rem 1rem;min-height:56px;border-bottom:1px solid var(--color-border-muted);cursor:pointer;transition:background var(--dur-fast);-webkit-tap-highlight-color:transparent}.rl-item[data-v-4d3cb431]:last-child{border-bottom:none}.rl-item[data-v-4d3cb431]:hover{background:var(--color-hover-bg-sm)}.rl-item[data-v-4d3cb431]:active{background:var(--color-hover-bg)}.rl-icon[data-v-4d3cb431]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform var(--dur-fast) var(--ease-out-back)}.rl-item:hover .rl-icon[data-v-4d3cb431]{transform:scale(1.1)}.rl-icon.video[data-v-4d3cb431]{color:var(--color-video)}.rl-icon.text[data-v-4d3cb431]{color:var(--color-text-ct)}.rl-icon.audio[data-v-4d3cb431]{color:var(--color-audio)}.rl-icon.vocabulary[data-v-4d3cb431]{color:var(--color-vocab)}.rl-info[data-v-4d3cb431]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.rl-title[data-v-4d3cb431]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rl-type[data-v-4d3cb431]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted)}.rl-arrow[data-v-4d3cb431]{color:var(--color-fg-faint);flex-shrink:0;transition:color var(--dur-fast),transform var(--dur-fast) var(--ease-out-back)}.rl-item:hover .rl-arrow[data-v-4d3cb431]{color:var(--color-fg-muted);transform:translate(3px)}.rl-empty[data-v-4d3cb431]{display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center;padding:2.5rem 1rem;color:var(--color-fg-faint);border:1px solid var(--color-border)}.rl-empty p[data-v-4d3cb431]{font-size:var(--text-body-sm);color:var(--color-fg-muted);margin:0}.rv[data-v-f91b1231]{height:100%;display:flex;flex-direction:column;gap:1rem}.rv-video-frame[data-v-f91b1231]{position:relative;padding-bottom:56.25%;height:0;background:#000;overflow:hidden;border:1px solid var(--color-border)}.rv-video-frame iframe[data-v-f91b1231]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.rv-audio-title[data-v-f91b1231]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg-muted);margin:0}.rv-text[data-v-f91b1231]{background:var(--color-bg-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-text-ct);padding:1.25rem;line-height:1.7;font-size:var(--text-body-sm);color:var(--color-fg);overflow-wrap:break-word;word-break:break-word}.rv-description[data-v-f91b1231]{font-size:var(--text-body-sm);color:var(--color-fg-muted);line-height:1.55;margin:0}.ra-wrap[data-v-0720de07]{position:relative;width:52px;height:52px;flex-shrink:0}.ra-trigger[data-v-0720de07]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--color-border);color:var(--color-fg-muted);cursor:pointer;padding:0;overflow:hidden;transition:border-color var(--dur-fast) var(--ease-out-quad),color var(--dur-fast) var(--ease-out-quad)}.ra-trigger[data-v-0720de07]:hover{border-color:var(--color-brand);color:var(--color-brand)}.ra-trigger-inner[data-v-0720de07]{position:relative;display:flex;align-items:center;width:100%;height:100%;gap:0}.ra-trigger-icon-l[data-v-0720de07]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;position:absolute;left:0;transform-origin:left center;transform:rotate(-45deg) scale(0);transition:transform .7s var(--ease-in-out-quart);color:var(--color-brand)}.ra-trigger:hover .ra-trigger-icon-l[data-v-0720de07]{transform:rotate(0) scale(1)}.ra-trigger-content[data-v-0720de07]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;width:100%;height:100%;transform:translate(0);transition:transform .7s var(--ease-in-out-quart),opacity .3s var(--ease-out-quad)}.ra-trigger:hover .ra-trigger-content[data-v-0720de07]{transform:translate(100%);opacity:0}.ra-trigger-icon-r[data-v-0720de07]{display:flex;align-items:center;justify-content:center;position:absolute;right:0;width:100%;height:100%;transform-origin:right center;transform:rotate(0) scale(0);transition:transform .7s var(--ease-in-out-quart)}.ra-trigger-label[data-v-0720de07]{font-family:var(--font-mono);font-size:.52rem;font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-tighter);line-height:1}.ra-back-btn[data-v-0720de07]{position:relative;display:inline-flex;align-items:center;gap:.3rem;background:transparent;border:none;box-shadow:none;color:var(--color-fg-muted);cursor:pointer;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-tighter);padding:.2rem 0;transition:color var(--dur-fast) var(--ease-out-quad)}.ra-back-btn[data-v-0720de07]:before{content:"";position:absolute;top:0;right:-.5rem;bottom:0;left:-.5rem;background:var(--color-hover-bg);border-radius:var(--r-sm);opacity:0;transition:opacity var(--dur-fast) var(--ease-out-quad)}.ra-back-btn[data-v-0720de07]>*{position:relative}.ra-back-btn[data-v-0720de07]:hover{color:var(--color-fg)}.ra-back-btn[data-v-0720de07]:hover:before{opacity:1}.ra-modal-icon[data-v-0720de07]{color:var(--color-brand);display:flex}.ra-modal-heading[data-v-0720de07]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-tighter);color:var(--color-fg);margin:0}.ra-resource-title[data-v-0720de07]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tight);color:var(--color-fg);margin:0}.ra-loading[data-v-0720de07]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:.75rem;color:var(--color-fg-muted);font-family:var(--font-mono);font-size:var(--text-accent-sm);text-transform:uppercase;letter-spacing:var(--tracking-tighter)}.ra-spinner[data-v-0720de07]{width:22px;height:22px;border:2px solid var(--color-border);border-top-color:var(--color-brand);border-radius:50%;animation:ra-spin-0720de07 .9s linear infinite}@keyframes ra-spin-0720de07{to{transform:rotate(360deg)}}.pop-up-enter-active[data-v-0720de07],.pop-up-leave-active[data-v-0720de07]{transition:opacity .2s ease,transform .2s ease}.pop-up-enter-from[data-v-0720de07],.pop-up-leave-to[data-v-0720de07]{opacity:0;transform:scale(.94) translateY(8px)}.pop-up-enter-active[data-v-0720de07] .assistant-modal.desktop,.pop-up-leave-active[data-v-0720de07] .assistant-modal.desktop{transform-origin:bottom left}.sheet-up-enter-active[data-v-0720de07]{transition:opacity .3s ease}.sheet-up-leave-active[data-v-0720de07]{transition:opacity .25s ease}.sheet-up-enter-from[data-v-0720de07],.sheet-up-leave-to[data-v-0720de07]{opacity:0}.sheet-up-enter-active[data-v-0720de07] .assistant-modal.mobile{animation:sheetIn-0720de07 .38s cubic-bezier(.32,.72,0,1)}.sheet-up-leave-active[data-v-0720de07] .assistant-modal.mobile{animation:sheetOut-0720de07 .28s cubic-bezier(.4,0,1,1)}@keyframes sheetIn-0720de07{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheetOut-0720de07{0%{transform:translateY(0)}to{transform:translateY(100%)}}@media (max-width: 430px){.ra-wrap[data-v-0720de07]{width:48px;height:48px}}@media (max-width: 360px){.ra-wrap[data-v-0720de07]{width:44px;height:44px}.ra-trigger-label[data-v-0720de07]{display:none}}.exercise-shell[data-v-80f4671e]{display:flex;flex-direction:column;min-height:100dvh;max-width:680px;margin:0 auto;padding:0}.exercise-header[data-v-80f4671e]{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;position:sticky;top:0;z-index:10;background:#141314eb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border-muted)}.back-btn[data-v-80f4671e]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#c9d1d98c;cursor:pointer;padding:0;transition:background .15s,color .15s}.back-btn[data-v-80f4671e]:hover{background:#ffffff14;color:#c9d1d9}.progress-bar-track[data-v-80f4671e]{flex:1;height:1px;background:var(--color-border);overflow:hidden}.progress-bar-fill[data-v-80f4671e]{height:100%;width:100%;background:var(--color-brand);transform-origin:left center;transform:scaleX(0);transition:transform .4s var(--ease-out-quart, cubic-bezier(.25, 1, .5, 1))}.progress-counter[data-v-80f4671e]{flex-shrink:0;font-size:.78rem;font-weight:600;color:#c9d1d980;white-space:nowrap}.exercise-title-row[data-v-80f4671e]{padding:1.25rem 1.25rem .5rem;text-align:center}.exercise-eyebrow[data-v-80f4671e]{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand, #fd551d);margin:0 0 .3rem}.exercise-title[data-v-80f4671e]{font-size:clamp(1.15rem,4vw,1.5rem);font-weight:800;letter-spacing:-.02em;margin:0;color:var(--color-fg, #eeeeee)}.exercise-content[data-v-80f4671e]{flex:1;padding:1.25rem;overflow-y:auto}.exercise-footer[data-v-80f4671e]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;padding:.75rem 1rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0px));background:#141314f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--color-border);position:sticky;bottom:0;z-index:10}.footer-left[data-v-80f4671e]{display:flex;align-items:center;justify-content:flex-start}.footer-center[data-v-80f4671e]{display:flex;align-items:center;justify-content:center}.footer-right[data-v-80f4671e]{display:flex;align-items:center;justify-content:flex-end}.footer-link-btn[data-v-80f4671e]{position:relative;display:inline-flex;align-items:center;gap:.4rem;background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:.5rem 0;font-family:inherit;font-size:.95rem;font-weight:600;letter-spacing:-.025em;color:#c9d1d9b3;cursor:pointer;white-space:nowrap;transition:color .2s ease;transform:none!important}.footer-link-btn[data-v-80f4671e]:hover{color:#c9d1d9;background:transparent!important;box-shadow:none!important;transform:none!important}.footer-link-btn[data-v-80f4671e]:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.flb-text[data-v-80f4671e]{position:relative}.flb-underline[data-v-80f4671e]{pointer-events:none;position:absolute;inset-x:0;bottom:-2px;height:1px}.flb-line[data-v-80f4671e]{position:absolute;inset-x:0;top:0;height:1px;background:currentColor}.flb-line-out[data-v-80f4671e]{transform-origin:left center;transform:scaleX(1);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:.3s}.footer-link-btn:hover:not(:disabled) .flb-line-out[data-v-80f4671e]{transform-origin:right center;transform:scaleX(0);transition-delay:0ms}.flb-line-in[data-v-80f4671e]{transform-origin:right center;transform:scaleX(0);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:0ms}.footer-link-btn:hover:not(:disabled) .flb-line-in[data-v-80f4671e]{transform-origin:left center;transform:scaleX(1);transition-delay:.3s}.check-btn[data-v-80f4671e]{display:inline-flex;align-items:center;justify-content:center;padding:0;font-family:var(--font-mono, inherit);font-size:.85rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:0;border:none;background:#ffffff0f;color:#ffffff4d;cursor:not-allowed;white-space:nowrap;outline:none;overflow:hidden}.check-btn[data-v-80f4671e]:focus-visible{outline:2px solid var(--color-brand, #fd551d);outline-offset:2px}.cbtn-inner[data-v-80f4671e]{position:relative;display:flex;width:100%;align-items:center;gap:.375rem}.cbtn-icon[data-v-80f4671e]{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:2rem;height:2.5rem}.cbtn-icon svg[data-v-80f4671e]{width:.7em;height:.7em}.cbtn-icon-l[data-v-80f4671e]{transform-origin:left center;transform:scale(0) rotate(-45deg);transition:transform .7s var(--ease-power4-in-out, cubic-bezier(.83,0,.17,1))}.cbtn-icon-r[data-v-80f4671e]{position:absolute;right:0;transform-origin:right center;transform:scale(1) rotate(0);transition:transform .7s var(--ease-power4-in-out, cubic-bezier(.83,0,.17,1))}.cbtn-text[data-v-80f4671e]{display:flex;flex:1;align-items:center;justify-content:center;height:2.5rem;padding:0 .75rem;transform:translate(-2.375rem);transition:transform .7s var(--ease-power4-in-out, cubic-bezier(.83,0,.17,1))}.check-btn--active[data-v-80f4671e]{background:var(--color-brand, #fd551d);color:#fff;cursor:pointer}.check-btn--active:hover .cbtn-icon-l[data-v-80f4671e]{transform:scale(1) rotate(0)}.check-btn--active:hover .cbtn-icon-r[data-v-80f4671e]{transform:scale(0) rotate(-45deg)}.check-btn--active:hover .cbtn-text[data-v-80f4671e]{transform:translate(0)}.check-btn--active[data-v-80f4671e]:active{transform:scale(.97)}.feedback-panel[data-v-80f4671e]{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-border-muted, rgba(255,255,255,.06))}.feedback-panel--correct[data-v-80f4671e]{background:#4ade8012;border-color:#4ade802e}.feedback-panel--wrong[data-v-80f4671e]{background:#f8717112;border-color:#f871712e}.feedback-icon-wrap[data-v-80f4671e]{flex-shrink:0;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center}.feedback-panel--correct .feedback-icon-wrap[data-v-80f4671e]{background:#22c55e}.feedback-panel--wrong .feedback-icon-wrap[data-v-80f4671e]{background:#ef4444}.feedback-icon[data-v-80f4671e]{width:18px;height:18px;color:#fff}.feedback-body[data-v-80f4671e]{flex:1;min-width:0}.feedback-heading[data-v-80f4671e]{font-family:var(--font-mono, "Fira Code", monospace);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0}.feedback-panel--correct .feedback-heading[data-v-80f4671e]{color:#86efac}.feedback-panel--wrong .feedback-heading[data-v-80f4671e]{color:#fca5a5}.feedback-answer[data-v-80f4671e]{font-family:var(--font-mono, "Fira Code", monospace);font-size:.8rem;font-weight:400;margin:.25rem 0 0;color:var(--color-foreground-muted, rgba(255,255,255,.5));line-height:1.5;letter-spacing:.02em}.footer--hidden[data-v-80f4671e]{visibility:hidden;pointer-events:none;height:0;padding:0;overflow:hidden}.feedback-slide-enter-active[data-v-80f4671e]{transition:transform .28s cubic-bezier(.34,1.56,.64,1),opacity .2s ease}.feedback-slide-leave-active[data-v-80f4671e]{transition:transform .2s ease,opacity .15s ease}.feedback-slide-enter-from[data-v-80f4671e],.feedback-slide-leave-to[data-v-80f4671e]{transform:translateY(100%);opacity:0}.fade-step-enter-active[data-v-80f4671e],.fade-step-leave-active[data-v-80f4671e]{transition:opacity .25s ease,transform .25s ease}.fade-step-enter-from[data-v-80f4671e]{opacity:0;transform:translate(16px)}.fade-step-leave-to[data-v-80f4671e]{opacity:0;transform:translate(-16px)}@media (max-width: 768px){.exercise-content[data-v-80f4671e]{padding:1rem}.exercise-title-row[data-v-80f4671e]{padding:1rem 1rem .5rem}}@media (max-width: 430px){.exercise-footer[data-v-80f4671e]{padding:.625rem .75rem;padding-bottom:calc(.625rem + env(safe-area-inset-bottom,0px));gap:.375rem}.footer-link-btn .btn-label[data-v-80f4671e]{display:none}.footer-link-btn[data-v-80f4671e]{font-size:.875rem}.exercise-content[data-v-80f4671e]{padding:.875rem .75rem}.exercise-title-row[data-v-80f4671e]{padding:.875rem .875rem .375rem}.exercise-title[data-v-80f4671e]{font-size:clamp(1rem,5vw,1.3rem)}}@media (max-width: 360px){.exercise-footer[data-v-80f4671e]{gap:.25rem;padding:.5rem;padding-bottom:calc(.5rem + env(safe-area-inset-bottom,0px))}.footer-link-btn[data-v-80f4671e]{font-size:.82rem}.exercise-content[data-v-80f4671e]{padding:.75rem .625rem}}@media (max-height: 500px) and (max-width: 900px){.exercise-header[data-v-80f4671e]{padding:.5rem .875rem}.exercise-title-row[data-v-80f4671e]{padding:.5rem 1rem .25rem}.exercise-content[data-v-80f4671e]{padding:.625rem 1rem}.exercise-footer[data-v-80f4671e]{padding:.5rem 1rem;padding-bottom:calc(.5rem + env(safe-area-inset-bottom,0px))}}.results-summary[data-v-fe365dcb]{display:flex;flex-direction:column;gap:2rem}.score-section[data-v-fe365dcb]{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 1rem .5rem}.score-circle-wrap[data-v-fe365dcb]{position:relative;width:140px;height:140px}.score-svg[data-v-fe365dcb]{width:100%;height:100%;transform:rotate(-90deg)}.score-svg .track[data-v-fe365dcb]{fill:none;stroke:#ffffff14;stroke-width:8}.score-svg .fill[data-v-fe365dcb]{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dasharray 1s cubic-bezier(.4,0,.2,1)}.score-inner[data-v-fe365dcb]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;gap:2px}.score-number[data-v-fe365dcb]{font-size:2.25rem;font-weight:800;color:#fff;line-height:1}.score-pct[data-v-fe365dcb]{font-size:1rem;font-weight:600;color:#fff9;align-self:flex-end;padding-bottom:.35rem}.tier-label[data-v-fe365dcb]{font-size:1.1rem;font-weight:700;margin:.25rem 0 0}.score-sub[data-v-fe365dcb]{font-size:.875rem;color:#c9d1d98c;margin:0}.review-section[data-v-fe365dcb]{display:flex;flex-direction:column;gap:.75rem}.review-heading[data-v-fe365dcb]{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c9d1d966;margin:0}.review-list[data-v-fe365dcb]{display:flex;flex-direction:column;gap:.5rem}.review-item[data-v-fe365dcb]{border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;overflow:hidden}.review-item.correct[data-v-fe365dcb]{border:1px solid rgba(0,0,0,.08);border-left:3px solid #fd551d;background:#eee}.review-item.correct .review-enunciado[data-v-fe365dcb]{color:#141314}.review-item.correct .review-body p[data-v-fe365dcb]{color:#696869}.review-item.correct .label[data-v-fe365dcb]{color:#141314}.review-item.incorrect[data-v-fe365dcb]{border-left:3px solid #ef4444;background:#ef44440f}.review-summary[data-v-fe365dcb]{width:100%;display:flex!important;align-items:flex-start;justify-content:flex-start!important;gap:.625rem;padding:.875rem 1rem;cursor:pointer;background:transparent;border:none;text-align:left;-webkit-user-select:none;user-select:none}.review-icon[data-v-fe365dcb]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px}.review-item.correct .review-icon[data-v-fe365dcb]{color:#fd551d}.review-item.incorrect .review-icon[data-v-fe365dcb]{color:#ef4444}.review-enunciado[data-v-fe365dcb]{font-size:.9rem;font-weight:500;color:#f0f6fc;line-height:1.5;padding-top:.5rem}.review-body[data-v-fe365dcb]{padding:0 1rem .875rem 2.375rem;display:flex;flex-direction:column;gap:.3rem;overflow:hidden}.review-body p[data-v-fe365dcb]{font-size:.875rem;color:#c9d1d9cc;margin:0;line-height:1.5}.label[data-v-fe365dcb]{font-weight:600;color:#ffffffb3;margin-right:.25rem}.correct-label[data-v-fe365dcb]{color:#fd551d}[data-v-fe365dcb] .answer-hl{font-weight:700;color:#fff;background:#ffffff2e;padding:0 2px;border-radius:3px}.review-item.correct[data-v-fe365dcb] .answer-hl{color:#141314;background:#00000014}[data-v-fe365dcb] .correct-hl{font-weight:700;color:#fd551d}.clip-wipe-enter-active[data-v-fe365dcb]{transition:clip-path .9s cubic-bezier(.16,1,.3,1)}.clip-wipe-leave-active[data-v-fe365dcb]{transition:clip-path .3s cubic-bezier(.76,0,.24,1)}.clip-wipe-enter-from[data-v-fe365dcb]{clip-path:inset(0 100% 0 0)}.clip-wipe-enter-to[data-v-fe365dcb],.clip-wipe-leave-from[data-v-fe365dcb]{clip-path:inset(0 0% 0 0)}.clip-wipe-leave-to[data-v-fe365dcb]{clip-path:inset(0 100% 0 0)}.bottom-nav[data-v-749e1ab3]{position:fixed;bottom:0;left:0;right:0;z-index:100;background:#141314e0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--color-border-muted);box-shadow:0 -40px 40px #141314cc}.bn-inner[data-v-749e1ab3]{display:flex;align-items:flex-end;gap:.75rem;padding:.875rem 1.25rem;padding-bottom:calc(.875rem + env(safe-area-inset-bottom,0px));max-width:860px;margin:0 auto}.bn-left[data-v-749e1ab3]{flex:1;min-width:0;display:flex;align-items:flex-end}.bn-center[data-v-749e1ab3]{flex-shrink:0;display:flex;align-items:center}.bn-right[data-v-749e1ab3]{flex-shrink:0;display:flex;align-items:flex-end}.nav-congrats[data-v-5f3514f8]{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-brand, #fd551d)}.nav-congrats span[data-v-5f3514f8]{font-size:.9rem;font-weight:600;letter-spacing:-.02em}.results-shell[data-v-49e3a491]{display:flex;flex-direction:column;min-height:100dvh;max-width:680px;margin:0 auto}.results-scrollable[data-v-49e3a491]{flex:1;padding:1.5rem 1.25rem 5rem;overflow-y:auto}.redo-btn[data-v-49e3a491]{position:relative;display:inline-flex;align-items:center;background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:.5rem 0;transform:none!important;font-family:inherit;font-size:.9rem;font-weight:600;letter-spacing:-.02em;color:#c9d1d999;cursor:pointer;flex-shrink:0;transition:color .2s ease}.redo-btn[data-v-49e3a491]:hover{color:#c9d1d9;background:transparent!important;box-shadow:none!important;transform:none!important}.redo-text[data-v-49e3a491]{position:relative}.redo-underline[data-v-49e3a491]{pointer-events:none;position:absolute;inset-x:0;bottom:.25rem;height:1px}.rl-line[data-v-49e3a491]{position:absolute;inset-x:0;top:0;height:1px;background:currentColor}.rl-line-out[data-v-49e3a491]{transform-origin:left center;transform:scaleX(1);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:.3s}.redo-btn:hover .rl-line-out[data-v-49e3a491]{transform-origin:right center;transform:scaleX(0);transition-delay:0ms}.rl-line-in[data-v-49e3a491]{transform-origin:right center;transform:scaleX(0);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:0ms}.redo-btn:hover .rl-line-in[data-v-49e3a491]{transform-origin:left center;transform:scaleX(1);transition-delay:.3s}.ex-overlay[data-v-5a4a20f2]{position:fixed;top:0;right:0;bottom:0;left:0;background:#141314bf;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;padding:1.5rem}.ex-modal[data-v-5a4a20f2]{background:var(--color-bg-muted, #1a1a1a);border:1px solid var(--color-border, rgba(238,238,238,.1));border-radius:0;width:100%;max-width:420px;overflow:hidden}.ex-modal-stripe[data-v-5a4a20f2]{height:3px;width:100%}.ex-modal-stripe.warn[data-v-5a4a20f2]{background:#fbbf24}.ex-modal-stripe.ok[data-v-5a4a20f2]{background:var(--color-brand, #fd551d)}.ex-modal-body[data-v-5a4a20f2]{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.ex-modal-icon[data-v-5a4a20f2]{width:40px;height:40px;border-radius:0;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ex-modal-icon.warn[data-v-5a4a20f2]{background:#fbbf241a;color:#fbbf24;border:1px solid rgba(251,191,36,.2)}.ex-modal-icon.ok[data-v-5a4a20f2]{background:#fd551d1a;color:var(--color-brand, #fd551d);border:1px solid rgba(253,85,29,.2)}.ex-modal-copy[data-v-5a4a20f2]{display:flex;flex-direction:column;gap:.375rem}.ex-modal-title[data-v-5a4a20f2]{font-size:var(--text-h6, 1rem);font-weight:var(--font-weight-bold, 700);letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eeeeee);margin:0}.ex-modal-desc[data-v-5a4a20f2]{font-size:var(--text-body-sm, .875rem);color:var(--color-fg-muted, #818081);margin:0;line-height:1.55}.ex-modal-desc strong[data-v-5a4a20f2]{color:var(--color-fg, #eeeeee);font-weight:600}.warn-text[data-v-5a4a20f2]{color:#fbbf24d9}.ex-submit-error[data-v-5a4a20f2]{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:0;color:#f87171;font-size:var(--text-body-sm, .875rem)}.ex-modal-actions[data-v-5a4a20f2]{display:flex;align-items:center;justify-content:space-between;padding-top:.5rem;border-top:1px solid var(--color-border, rgba(238,238,238,.1))}.ex-link-btn[data-v-5a4a20f2]{position:relative;display:inline-flex;align-items:center;background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:.5rem 0;transform:none!important;cursor:pointer;font-family:var(--font-sans);font-size:var(--text-body-sm, .875rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tight, -.025em)}.ex-link-btn[data-v-5a4a20f2]:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.ex-link-btn.secondary[data-v-5a4a20f2]{color:var(--color-fg-muted, #818081)}.ex-link-btn.primary[data-v-5a4a20f2]{color:var(--color-fg, #eeeeee)}.btn-text[data-v-5a4a20f2]{position:relative}.btn-underline[data-v-5a4a20f2]{pointer-events:none;position:absolute;inset-x:0;bottom:.25rem;height:1px}.line[data-v-5a4a20f2]{position:absolute;inset-x:0;top:0;height:1px;background:currentColor}.line-out[data-v-5a4a20f2]{transform-origin:left center;transform:scaleX(1);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:.3s}.ex-link-btn:hover:not(:disabled) .line-out[data-v-5a4a20f2]{transform-origin:right center;transform:scaleX(0);transition-delay:0ms}.line-in[data-v-5a4a20f2]{transform-origin:right center;transform:scaleX(0);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:0ms}.ex-link-btn:hover:not(:disabled) .line-in[data-v-5a4a20f2]{transform-origin:left center;transform:scaleX(1);transition-delay:.3s}.ex-spinner[data-v-5a4a20f2]{width:16px;height:16px;border:2px solid rgba(238,238,238,.2);border-top-color:var(--color-fg, #eeeeee);border-radius:50%;animation:ex-spin-5a4a20f2 .7s linear infinite}@keyframes ex-spin-5a4a20f2{to{transform:rotate(360deg)}}.overlay-fade-enter-active[data-v-5a4a20f2],.overlay-fade-leave-active[data-v-5a4a20f2]{transition:opacity var(--dur-base, .3s) var(--ease-out-quart)}.overlay-fade-enter-from[data-v-5a4a20f2],.overlay-fade-leave-to[data-v-5a4a20f2]{opacity:0}.modal-rise-enter-active[data-v-5a4a20f2]{transition:transform var(--dur-base, .3s) var(--ease-out-expo, cubic-bezier(.16,1,.3,1)),opacity var(--dur-base, .3s) var(--ease-out-quart)}.modal-rise-leave-active[data-v-5a4a20f2]{transition:transform var(--dur-fast, .2s) var(--ease-out-quad),opacity var(--dur-fast, .2s) var(--ease-out-quad)}.modal-rise-enter-from[data-v-5a4a20f2],.modal-rise-leave-to[data-v-5a4a20f2]{opacity:0;transform:translateY(12px) scale(.98)}.toast-slide-enter-active[data-v-5a4a20f2],.toast-slide-leave-active[data-v-5a4a20f2]{transition:opacity var(--dur-fast, .2s),transform var(--dur-fast, .2s)}.toast-slide-enter-from[data-v-5a4a20f2],.toast-slide-leave-to[data-v-5a4a20f2]{opacity:0;transform:translateY(-6px)}.ex-error-wrapper[data-v-3894f02b]{display:flex;align-items:center;justify-content:center;min-height:100dvh;padding:2rem 1.5rem}.ex-error-card[data-v-3894f02b]{width:100%;max-width:420px;background:var(--color-bg-muted, #1a1a1a);border:1px solid var(--color-border, rgba(238,238,238,.1));border-radius:var(--r-2xl, 1.75rem);padding:2.5rem 2rem;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.ex-error-card[data-v-3894f02b]:before{content:"";position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,var(--color-text-ct, #ff7b72),transparent);border-radius:var(--r-full, 9999px)}.ex-error-card[data-v-3894f02b]{position:relative}.ex-error-icon[data-v-3894f02b]{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#ff7b721a;border:1px solid rgba(255,123,114,.2);border-radius:var(--r-xl, 1.25rem);color:var(--color-text-ct, #ff7b72);flex-shrink:0}.ex-error-copy[data-v-3894f02b]{display:flex;flex-direction:column;gap:.375rem}.ex-error-eyebrow[data-v-3894f02b]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-sm, .75rem);font-weight:var(--font-weight-medium, 500);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-ct, #ff7b72);margin:0}.ex-error-title[data-v-3894f02b]{font-size:var(--text-h5, 1.25rem);font-weight:var(--font-weight-bold, 700);letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eeeeee);margin:0}.ex-error-message[data-v-3894f02b]{font-size:var(--text-body-sm, .875rem);color:var(--color-fg-muted, #818081);line-height:1.55;margin:0}.ex-error-btn[data-v-3894f02b]{position:relative;display:inline-flex;align-items:center;gap:.4rem;margin-top:.5rem;background:transparent;border:none;padding:.25rem 0;color:var(--color-fg-muted, #818081);font-size:var(--text-body-sm, .875rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tight, -.025em);text-decoration:none;cursor:pointer}.btn-text[data-v-3894f02b]{position:relative}.btn-underline[data-v-3894f02b]{pointer-events:none;position:absolute;left:calc(13px + .4rem);right:0;bottom:0;height:1px}.line[data-v-3894f02b]{position:absolute;inset-x:0;top:0;height:1px;background:currentColor}.line-out[data-v-3894f02b]{transform-origin:left center;transform:scaleX(1);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:.3s}.ex-error-btn:hover .line-out[data-v-3894f02b]{transform-origin:right center;transform:scaleX(0);transition-delay:0ms}.line-in[data-v-3894f02b]{transform-origin:right center;transform:scaleX(0);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:0ms}.ex-error-btn:hover .line-in[data-v-3894f02b]{transform-origin:left center;transform:scaleX(1);transition-delay:.3s}.course-header-block[data-v-5befc174]{background:var(--color-bg, #141314);padding:2rem;overflow:hidden;position:relative}.header-glow[data-v-5befc174]{position:absolute;top:-60px;right:-60px;width:220px;height:220px;background:radial-gradient(ellipse,rgba(253,85,29,.12) 0%,transparent 65%);pointer-events:none}.header-content[data-v-5befc174]{display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:start;position:relative;z-index:1}.course-eyebrow[data-v-5befc174]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-sm, .75rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tighter, -.05em);text-transform:uppercase;color:var(--color-brand, #fd551d);margin:0 0 .5rem;line-height:1}.course-title[data-v-5befc174]{margin:0 0 .75rem;font-size:clamp(1.25rem,4vw,1.75rem);font-weight:var(--font-weight-medium, 500);letter-spacing:-.05em;line-height:1.125;color:var(--color-fg, #eeeeee)}.course-description[data-v-5befc174]{margin:0 0 1.25rem;font-size:var(--text-body, 1rem);font-weight:var(--font-weight-light, 300);line-height:1.55;color:var(--color-fg-muted, #818081)}.course-stats[data-v-5befc174]{display:flex;gap:.5rem;flex-wrap:wrap}.stat-pill[data-v-5befc174]{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .75rem;background:#eeeeee12;border:1px solid rgba(238,238,238,.12);font-family:var(--font-mono, monospace);font-size:var(--text-accent-sm, .75rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tighter, -.05em);color:var(--color-fg-muted, #818081)}.stat-pill svg[data-v-5befc174]{opacity:.5;flex-shrink:0;color:var(--color-fg, #eeeeee)}.header-thumbnail[data-v-5befc174]{width:180px;height:120px;overflow:hidden;flex-shrink:0;border:1px solid rgba(238,238,238,.1);background:#eeeeee0d}.header-thumbnail img[data-v-5befc174]{width:100%;height:100%;object-fit:cover}@media (max-width: 600px){.header-content[data-v-5befc174]{grid-template-columns:1fr;gap:1rem}.header-thumbnail[data-v-5befc174]{width:100%;height:150px;order:-1}}.lesson-item[data-v-22e33f55]{display:flex;align-items:center;gap:.875rem;padding:.75rem .875rem;min-height:56px;background:transparent;border:1px solid transparent;text-decoration:none;color:inherit;transition:background var(--dur-fast, .2s) var(--ease-out-quad),border-color var(--dur-fast, .2s) var(--ease-out-quad)}.lesson-item[data-v-22e33f55]:not(.lesson-item--locked):hover{background:var(--color-hover-bg, rgba(20, 19, 20, .04));border-color:#fb460d40}.lesson-item[data-v-22e33f55]:focus-visible{outline:none;border-color:#fd551d99;box-shadow:0 0 0 2px #fd551d33}.lesson-item.completed[data-v-22e33f55]{background:color-mix(in srgb,var(--color-brand, #fb460d) 5%,transparent);border-color:color-mix(in srgb,var(--color-brand, #fb460d) 20%,transparent)}.lesson-item.completed[data-v-22e33f55]:hover{background:color-mix(in srgb,var(--color-brand, #fb460d) 9%,transparent);border-color:color-mix(in srgb,var(--color-brand, #fb460d) 32%,transparent)}.lesson-item--locked[data-v-22e33f55]{cursor:pointer;opacity:.5;filter:grayscale(.4);-webkit-user-select:none;user-select:none}.lesson-item--locked[data-v-22e33f55]:hover{opacity:.7;filter:grayscale(.2);background:#fb460d0a;border-color:#fb460d26}.lesson-icon[data-v-22e33f55]{width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform var(--dur-fast, .2s) var(--ease-out-back)}.lesson-item:not(.lesson-item--locked):hover .lesson-icon[data-v-22e33f55]{transform:scale(1.08)}.lesson-icon.video[data-v-22e33f55],.lesson-icon.exercise[data-v-22e33f55],.lesson-icon.text[data-v-22e33f55],.lesson-icon.audio[data-v-22e33f55],.lesson-icon.vocabulary[data-v-22e33f55],.lesson-icon.speaking[data-v-22e33f55]{background:var(--color-bg-surface, #d5d5d5);color:var(--color-fg-muted, #696869)}.lesson-icon.done[data-v-22e33f55]{background:color-mix(in srgb,var(--color-brand, #fb460d) 12%,transparent);color:var(--color-brand, #fb460d)}.lesson-icon--lock[data-v-22e33f55]{background:#fb460d14;color:var(--color-brand, #fb460d)}.lesson-info[data-v-22e33f55]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.lesson-type-label[data-v-22e33f55]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-sm, .75rem);font-weight:var(--font-weight-medium, 500);text-transform:uppercase;letter-spacing:var(--tracking-tighter, -.05em);color:var(--color-fg-faint, rgba(238, 238, 238, .35));line-height:1}.lesson-info h4[data-v-22e33f55]{margin:0;font-size:var(--text-body-sm, .875rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eee);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-item.completed .lesson-info h4[data-v-22e33f55]{color:var(--color-brand, #fb460d)}.premium-chip[data-v-22e33f55]{flex-shrink:0;font-family:var(--font-mono, monospace);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.2rem .5rem;border:1px solid rgba(251,70,13,.3);border-radius:4px;color:var(--color-brand, #fb460d);opacity:.8}.arrow-icon[data-v-22e33f55]{color:var(--color-fg-faint, rgba(238, 238, 238, .25));flex-shrink:0;transition:color var(--dur-fast, .2s),transform var(--dur-fast, .2s) var(--ease-out-back)}.lesson-item:not(.lesson-item--locked):hover .arrow-icon[data-v-22e33f55]{color:var(--color-brand, #fb460d);transform:translate(3px)}.module-accordion[data-v-0c79e9c5]{background:var(--color-bg-muted, #1a1a1a);border:1px solid var(--color-border, rgba(238, 238, 238, .1));border-bottom:none;overflow:hidden;transition:border-color var(--dur-base, .3s) var(--ease-out-quad),box-shadow var(--dur-base, .3s) var(--ease-out-quad),opacity var(--dur-base, .3s)}.module-accordion[data-v-0c79e9c5]:last-child{border-bottom:1px solid var(--color-border, rgba(238, 238, 238, .1))}.module-accordion[data-v-0c79e9c5]:hover{border-color:var(--color-border, rgba(0, 0, 0, .18))}.module-accordion.expanded[data-v-0c79e9c5]{border-color:#fd551d4d;box-shadow:0 4px 24px #00000040}.module-accordion.all-done[data-v-0c79e9c5]{border-color:color-mix(in srgb,var(--color-brand, #fb460d) 35%,transparent)}.module-accordion--locked[data-v-0c79e9c5]{opacity:.55;filter:grayscale(.35)}.module-accordion--locked[data-v-0c79e9c5]:hover{opacity:.72;filter:grayscale(.15);border-color:#fd551d33}.module-accordion--locked .module-eyebrow[data-v-0c79e9c5]{color:var(--color-brand, #fd551d);display:flex;align-items:center}.module-accordion--locked.expanded[data-v-0c79e9c5]{border-color:#fd551d2e;box-shadow:none}.module-header[data-v-0c79e9c5]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.125rem 1.25rem;background:none;border:none;border-radius:0;cursor:pointer;text-align:left;color:inherit;font-family:var(--font-sans, sans-serif);min-height:64px;transition:background var(--dur-fast, .2s)}.module-header[data-v-0c79e9c5]:hover{background:var(--color-hover-bg-sm, rgba(0, 0, 0, .03))}.module-header[data-v-0c79e9c5]:focus-visible{outline:none;box-shadow:inset 0 0 0 2px #fd551d80}.module-meta[data-v-0c79e9c5]{display:flex;flex-direction:column;gap:.25rem;min-width:0;flex:1}.module-eyebrow[data-v-0c79e9c5]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-sm, .75rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tighter, -.05em);text-transform:uppercase;color:var(--color-brand, #fd551d);line-height:1}.module-title[data-v-0c79e9c5]{margin:0;font-size:var(--text-body, 1rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eee);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.module-right[data-v-0c79e9c5]{display:flex;align-items:center;gap:.625rem;flex-shrink:0}.module-count[data-v-0c79e9c5]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-sm, .75rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tighter, -.05em);color:var(--color-fg-muted, #818081);font-variant-numeric:tabular-nums}.module-accordion.all-done .module-count[data-v-0c79e9c5]{color:var(--color-brand, #fb460d)}.lock-icon[data-v-0c79e9c5]{color:var(--color-brand, #fd551d);display:flex;align-items:center;opacity:.7}.module-chevron[data-v-0c79e9c5]{color:var(--color-fg-faint, rgba(238, 238, 238, .35));transition:transform var(--dur-base, .3s) var(--ease-out-back, cubic-bezier(.34, 1.56, .64, 1)),color var(--dur-base, .3s);flex-shrink:0}.module-accordion.expanded .module-chevron[data-v-0c79e9c5]{transform:rotate(180deg);color:var(--color-brand, #fd551d)}.module-progress-track[data-v-0c79e9c5]{height:2px;background:var(--color-border-muted, rgba(238, 238, 238, .05))}.module-progress-fill[data-v-0c79e9c5]{height:100%;background:var(--color-brand, #fd551d);transition:width .5s var(--ease-out-expo, cubic-bezier(.16, 1, .3, 1));min-width:0}.module-accordion.all-done .module-progress-fill[data-v-0c79e9c5]{background:var(--color-brand, #fb460d)}.lessons-list[data-v-0c79e9c5]{padding:0;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--color-border, rgba(238, 238, 238, .1))}.empty-lessons[data-v-0c79e9c5]{padding:1.5rem;text-align:center;color:var(--color-fg-muted, #818081);font-size:var(--text-body-sm, .875rem);font-style:italic}.pm-backdrop[data-v-9fa6ec93]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#000000b8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pm-card[data-v-9fa6ec93]{position:relative;width:100%;max-width:380px;background:#141314;border:1px solid rgba(253,85,29,.25);border-top:2px solid var(--color-brand, #fb460d);padding:2.25rem 2rem 1.75rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;box-shadow:0 0 0 1px #fd551d14,0 24px 64px #0009,0 0 80px #fb460d0f}.pm-close[data-v-9fa6ec93]{position:absolute;top:1rem;right:1rem;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;cursor:pointer;color:#eee6;padding:4px;overflow:hidden;transition:color .7s var(--ease-in-out-quart, cubic-bezier(.76, 0, .24, 1))}.pm-close[data-v-9fa6ec93]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-brand, #fb460d);transform-origin:left center;transform:rotate(-45deg) scale(0);transition:transform .7s var(--ease-in-out-quart, cubic-bezier(.76, 0, .24, 1))}.pm-close[data-v-9fa6ec93]:hover:before{transform:rotate(0) scale(1)}.pm-close svg[data-v-9fa6ec93]{position:relative;z-index:1;transition:color .7s var(--ease-in-out-quart, cubic-bezier(.76, 0, .24, 1))}.pm-close[data-v-9fa6ec93]:hover{color:#000}.pm-icon-wrap[data-v-9fa6ec93]{position:relative;width:72px;height:72px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.pm-icon-glow[data-v-9fa6ec93]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:radial-gradient(circle,rgba(251,70,13,.18) 0%,transparent 70%);animation:pm-pulse-9fa6ec93 2.8s ease-in-out infinite}@keyframes pm-pulse-9fa6ec93{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.6}}.pm-icon[data-v-9fa6ec93]{width:56px;height:56px;border-radius:50%;background:#fb460d1a;border:1px solid rgba(251,70,13,.3);display:flex;align-items:center;justify-content:center;color:var(--color-brand, #fb460d);position:relative;z-index:1}.pm-label[data-v-9fa6ec93]{font-family:var(--font-mono, monospace);font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-brand, #fb460d);margin-bottom:.75rem}.pm-title[data-v-9fa6ec93]{margin:0 0 1rem;font-size:1.25rem;font-weight:600;letter-spacing:-.03em;line-height:1.3;color:#eee}.pm-body[data-v-9fa6ec93]{margin:0 0 1.5rem;font-size:.875rem;line-height:1.6;color:#eeeeee80;max-width:280px}.pm-divider[data-v-9fa6ec93]{width:100%;height:1px;background:#eeeeee12;margin-bottom:1.5rem}.pm-actions[data-v-9fa6ec93]{width:100%;margin-bottom:1rem}.pm-btn-primary[data-v-9fa6ec93]{width:100%;background:transparent;border:none;padding:0;cursor:pointer;font-family:var(--font-mono, "Courier New", monospace);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.pm-btn-inner[data-v-9fa6ec93]{position:relative;display:flex;width:100%;align-items:center;overflow:hidden;height:44px}.pm-btn-label[data-v-9fa6ec93]{flex:1;display:flex;align-items:center;justify-content:center;height:100%;background:var(--color-brand, #fb460d);color:#000;padding:0 1.25rem;transition:transform .7s cubic-bezier(.625,.05,0,1)}.pm-btn-arrow[data-v-9fa6ec93]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-brand, #fb460d);color:#000;transition:transform .7s cubic-bezier(.625,.05,0,1)}.pm-btn-arrow--left[data-v-9fa6ec93]{position:absolute;left:0;transform:rotate(-45deg) scale(0);transform-origin:left center}.pm-btn-arrow--right[data-v-9fa6ec93]{position:absolute;right:0;transform:rotate(0) scale(1);transform-origin:right center}.pm-btn-primary:hover .pm-btn-label[data-v-9fa6ec93]{transform:translate(50px)}.pm-btn-primary:hover .pm-btn-arrow--left[data-v-9fa6ec93]{transform:rotate(0) scale(1)}.pm-btn-primary:hover .pm-btn-arrow--right[data-v-9fa6ec93]{transform:rotate(-45deg) scale(0)}.pm-footer[data-v-9fa6ec93]{margin:0;font-size:.75rem;color:#eeeeee4d;font-family:var(--font-mono, monospace);letter-spacing:.02em}.modal-enter-active[data-v-9fa6ec93]{transition:opacity .28s ease}.modal-leave-active[data-v-9fa6ec93]{transition:opacity .2s ease}.modal-enter-from[data-v-9fa6ec93],.modal-leave-to[data-v-9fa6ec93]{opacity:0}.modal-enter-active .pm-card[data-v-9fa6ec93]{animation:pm-card-in-9fa6ec93 .32s cubic-bezier(.16,1,.3,1)}.modal-leave-active .pm-card[data-v-9fa6ec93]{animation:pm-card-out-9fa6ec93 .18s cubic-bezier(.76,0,.24,1)}@keyframes pm-card-in-9fa6ec93{0%{transform:scale(.93) translateY(12px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}@keyframes pm-card-out-9fa6ec93{0%{transform:scale(1) translateY(0);opacity:1}to{transform:scale(.96) translateY(6px);opacity:0}}.course-shell[data-v-6189f953]{display:flex;flex-direction:column;min-height:100dvh;max-width:800px;margin:0 auto;background:var(--color-bg, #eeeeee)}.course-sticky-header[data-v-6189f953]{display:flex;align-items:center;gap:.875rem;padding:.875rem 1.5rem;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--color-bg, #eee) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border, rgba(0, 0, 0, .12))}.back-btn[data-v-6189f953]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;color:var(--color-fg-muted, #696869);cursor:pointer;padding:0;transition:color .15s}.back-btn[data-v-6189f953]:hover{color:var(--color-fg, #141314)}.sticky-title[data-v-6189f953]{min-width:0}.sticky-eyebrow[data-v-6189f953]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-sm, .75rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tighter, -.05em);text-transform:uppercase;color:var(--color-brand, #fb460d);margin:0;line-height:1}.sticky-title h1[data-v-6189f953]{font-size:var(--text-h6, 1rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #141314);margin:.15rem 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-main[data-v-6189f953]{display:flex;flex-direction:column;gap:2rem;padding:1.5rem;flex:1}.modules-section[data-v-6189f953]{display:flex;flex-direction:column;gap:1rem}.section-eyebrow[data-v-6189f953]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-sm, .75rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tighter, -.05em);text-transform:uppercase;color:var(--color-brand, #fb460d);margin:0}.modules-list[data-v-6189f953]{display:flex;flex-direction:column;gap:0}.empty-state[data-v-6189f953]{text-align:center;padding:3rem 2rem;display:flex;flex-direction:column;align-items:center;gap:.875rem;background:var(--color-bg-muted, #f7f7f7);border:1px solid var(--color-border, rgba(0, 0, 0, .12));color:var(--color-fg-muted, #696869)}.empty-state h3[data-v-6189f953]{margin:0;font-size:var(--text-h6, 1rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tight, -.025em);color:var(--color-fg, #eee)}.empty-state p[data-v-6189f953]{margin:0;font-size:var(--text-body-sm, .875rem);color:var(--color-fg-muted, #818081)}.course-error[data-v-6189f953]{padding:2rem 1.5rem}.error-card[data-v-6189f953]{text-align:center;padding:3rem 2rem;background:var(--color-bg-muted, #f7f7f7);border:1px solid var(--color-border, rgba(0, 0, 0, .12))}.error-card h2[data-v-6189f953]{color:var(--color-text-ct, #ff7b72);margin:0 0 1rem;font-size:var(--text-h5, 1.25rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tight, -.025em)}.error-card p[data-v-6189f953]{margin:0 0 2rem;color:var(--color-fg-muted, #818081);font-size:var(--text-body-sm, .875rem)}.ds-btn-outline[data-v-6189f953]{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:var(--color-fg, #141314);border:1px solid var(--color-border, rgba(0, 0, 0, .12));padding:.7rem 1.5rem;font-family:var(--font-sans);font-size:var(--text-body-sm, .875rem);font-weight:var(--font-weight-medium, 500);letter-spacing:var(--tracking-tight, -.025em);text-decoration:none;transition:background var(--dur-base, .3s) var(--ease-out-quad),border-color var(--dur-base, .3s) var(--ease-out-quad)}.ds-btn-outline[data-v-6189f953]:hover{background:var(--color-hover-bg, rgba(20, 19, 20, .04));border-color:#00000040}.nav-prev-link[data-v-ff4862f4]{position:relative;display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:none;padding:0;cursor:pointer;text-decoration:none;font-family:inherit;color:var(--color-fg-muted);transition:color var(--dur-fast, .2s) var(--ease-out-quad, ease);min-width:0}.nav-prev-link[data-v-ff4862f4]:hover{color:var(--color-fg)}.nav-label[data-v-ff4862f4]{position:relative;display:flex;flex-direction:column;gap:.15rem;min-width:0}.nav-eyebrow[data-v-ff4862f4]{font-family:var(--font-mono, monospace);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.07em;opacity:.6;line-height:1}.nav-title[data-v-ff4862f4]{font-size:.9rem;font-weight:600;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:22ch;line-height:1.3}.nav-underline[data-v-ff4862f4]{pointer-events:none;position:absolute;inset-x:0;bottom:-2px;height:1px}.nl-line[data-v-ff4862f4]{position:absolute;inset-x:0;top:0;height:1px;background:currentColor}.nl-line-out[data-v-ff4862f4]{transform-origin:left center;transform:scaleX(1);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:.3s}.nav-prev-link:hover .nl-line-out[data-v-ff4862f4]{transform-origin:right center;transform:scaleX(0);transition-delay:0ms}.nl-line-in[data-v-ff4862f4]{transform-origin:right center;transform:scaleX(0);transition:transform .7s cubic-bezier(.625,.05,0,1);transition-delay:0ms}.nav-prev-link:hover .nl-line-in[data-v-ff4862f4]{transform-origin:left center;transform:scaleX(1);transition-delay:.3s}@media (max-width: 480px){.nav-title[data-v-ff4862f4]{max-width:14ch}}.main-content-area[data-v-2b8e2f43]{padding-bottom:5rem}.hw-support-bar[data-v-2b8e2f43]{display:flex;justify-content:center;padding:.75rem 0 .25rem}.breadcrumb[data-v-2b8e2f43]{margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem;font-size:.9rem;flex-wrap:wrap}.breadcrumb a[data-v-2b8e2f43]{color:#58a6ff;text-decoration:none;transition:color .2s ease}.back-btn[data-v-2b8e2f43]{background:none;border:none;color:#58a6ff;cursor:pointer;font-size:1.1rem;padding:0;line-height:1;transition:color .2s ease}.back-btn[data-v-2b8e2f43]:hover{color:#79b8ff}.breadcrumb a[data-v-2b8e2f43]:hover{color:#79b8ff;text-decoration:underline}.breadcrumb .separator[data-v-2b8e2f43]{color:#8b949e}.breadcrumb .current[data-v-2b8e2f43]{color:#c9d1d9;font-weight:600}.video-player-section[data-v-2b8e2f43]{margin-bottom:2rem;padding:0;overflow:hidden}.video-wrapper[data-v-2b8e2f43]{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;background:#000}.video-wrapper iframe[data-v-2b8e2f43]{position:absolute;top:0;left:0;width:100%;height:100%}.video-placeholder[data-v-2b8e2f43]{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000c;color:#fff}.video-placeholder svg[data-v-2b8e2f43]{opacity:.5;margin-bottom:1rem}.video-placeholder p[data-v-2b8e2f43]{opacity:.7;margin:0}.video-info-section[data-v-2b8e2f43]{margin-bottom:2rem}.video-info-section h1[data-v-2b8e2f43]{margin:0 0 1rem;font-size:1.8rem;border:none;padding:0}.video-meta[data-v-2b8e2f43]{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.video-meta .date[data-v-2b8e2f43]{color:#8b949e;font-size:.9rem}.description[data-v-2b8e2f43]{line-height:1.7;color:#c9d1d9;margin:0}.description.empty[data-v-2b8e2f43]{font-style:italic;color:#8b949e}.related-section[data-v-2b8e2f43]{margin-top:3rem}.related-section h3[data-v-2b8e2f43]{margin-bottom:1.5rem;font-size:1.3rem;color:#fff}.related-grid[data-v-2b8e2f43]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.related-card[data-v-2b8e2f43]{display:block;text-decoration:none;color:inherit;background:#1e242db3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15);border-radius:16px;overflow:hidden;transition:all .3s ease}.related-card[data-v-2b8e2f43]:hover{transform:translateY(-5px);border-color:#ffffff40;box-shadow:0 8px 25px #0003}.related-thumbnail[data-v-2b8e2f43]{position:relative;width:100%;height:160px;background-color:#ffffff1a;overflow:hidden}.related-thumbnail img[data-v-2b8e2f43]{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.related-card:hover .related-thumbnail img[data-v-2b8e2f43]{transform:scale(1.05)}.play-overlay[data-v-2b8e2f43]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;background-color:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.3);transition:all .3s ease;opacity:.8}.related-card:hover .play-overlay[data-v-2b8e2f43]{transform:translate(-50%,-50%) scale(1.1);background-color:#000000b3;opacity:1}.related-info[data-v-2b8e2f43]{padding:1.25rem}.related-info h5[data-v-2b8e2f43]{margin:0 0 .5rem;font-size:1rem;color:#fff;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.related-info p[data-v-2b8e2f43]{font-size:.85rem;color:#8b949e;line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.error-card[data-v-2b8e2f43]{text-align:center;padding:3rem 2rem}.error-card h2[data-v-2b8e2f43]{color:#ff7b72;margin-bottom:1rem}.error-card p[data-v-2b8e2f43]{margin-bottom:2rem;color:#c9d1d9}@media (max-width: 768px){.related-grid[data-v-2b8e2f43]{grid-template-columns:1fr}.video-info-section h1[data-v-2b8e2f43]{font-size:1.4rem}}.text-view-wrapper{max-width:860px;width:100%;margin:0 auto;padding:2rem 1.5rem 5rem;box-sizing:border-box;display:flex;flex-direction:column;gap:1.5rem;min-height:100vh}.text-breadcrumb{display:flex;align-items:center;gap:.5rem;background:var(--color-bg-muted);border:1px solid var(--color-border);padding:.875rem 1.25rem}.breadcrumb-back{background:none;border:none;color:var(--color-fg-muted);cursor:pointer;padding:0;line-height:1;display:flex;align-items:center;transition:color var(--dur-fast) var(--ease-out-quad)}.breadcrumb-back:hover{color:var(--color-fg)}.breadcrumb-sep{color:var(--color-fg-faint);font-size:var(--text-accent-sm);-webkit-user-select:none;user-select:none}.breadcrumb-link{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-brand);text-decoration:none;transition:color var(--dur-fast) var(--ease-out-quad);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.breadcrumb-link:hover{color:var(--color-brand-muted)}.breadcrumb-current{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.text-content-card{background:var(--color-bg-muted);border:1px solid var(--color-border);padding:3rem;animation:fadeInUp .5s var(--ease-out-quart) both}.text-content-card .article-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:var(--font-weight-bold);letter-spacing:-.04em;line-height:1.15;color:var(--color-fg);margin:0 0 1.75rem;padding-bottom:1.25rem;border-bottom:1px solid var(--color-border)}.markdown-body{line-height:1.8;font-size:var(--text-body-lg);color:var(--color-fg)}.markdown-body :deep(h1),.markdown-body :deep(h2),.markdown-body :deep(h3),.markdown-body :deep(h4){color:var(--color-fg);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);margin-top:1.75em;margin-bottom:.5em;line-height:1.25}.markdown-body :deep(h1){font-size:2em;border-bottom:1px solid var(--color-border);padding-bottom:.35em}.markdown-body :deep(h2){font-size:1.5em}.markdown-body :deep(h3){font-size:1.25em}.markdown-body :deep(h4){font-size:1.05em}.markdown-body :deep(p){margin-bottom:1em;color:var(--color-fg);opacity:.9}.markdown-body :deep(ul),.markdown-body :deep(ol){padding-left:1.75em;margin-bottom:1em;color:var(--color-fg);opacity:.88}.markdown-body :deep(li){margin-bottom:.3em}.markdown-body :deep(a){color:var(--color-brand);text-decoration:none;transition:color var(--dur-fast)}.markdown-body :deep(a:hover){color:var(--color-brand-muted);text-decoration:underline}.markdown-body :deep(blockquote){border-left:3px solid var(--color-brand);margin:1.5em 0;padding:1rem 1.25rem;background:var(--color-brand-bg);border-radius:0 var(--r-lg) var(--r-lg) 0;color:var(--color-fg-muted);font-style:italic}.markdown-body :deep(code){background:var(--color-bg-surface);border:1px solid var(--color-border-muted);padding:.15em .45em;border-radius:var(--r-sm);font-family:var(--font-mono);font-size:.88em;color:var(--color-fg)}.markdown-body :deep(pre){background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--r-lg);padding:1.25rem;overflow-x:auto;margin-bottom:1.25em}.markdown-body :deep(pre code){background:transparent;border:none;padding:0;font-size:.9em;line-height:1.65}.markdown-body :deep(img){max-width:100%;border-radius:var(--r-lg);margin:1.25rem 0;border:1px solid var(--color-border);display:block}.markdown-body :deep(hr){border:none;border-top:1px solid var(--color-border);margin:2em 0}.markdown-body :deep(table){width:100%;border-collapse:collapse;margin-bottom:1.25em;font-size:var(--text-body-sm)}.markdown-body :deep(th),.markdown-body :deep(td){padding:.6rem .875rem;border:1px solid var(--color-border);text-align:left}.markdown-body :deep(th){background:var(--color-bg-surface);font-weight:var(--font-weight-bold);font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-fg-muted)}.markdown-body :deep(tr:hover td){background:var(--color-hover-bg-sm)}@media (max-width: 900px){.text-view-wrapper{padding:1.25rem 1.25rem 4rem;gap:1rem}.text-content-card{padding:1.75rem 1.25rem}.text-content-card .article-title{font-size:1.6rem}.markdown-body{font-size:var(--text-body)}}@media (max-width: 480px){.text-view-wrapper{padding:.875rem .875rem 3rem}.text-content-card{padding:1.25rem 1rem}.breadcrumb-link{max-width:120px}.breadcrumb-current{max-width:140px}}@media (prefers-reduced-motion: reduce){.text-content-card{animation:none}}.text-breadcrumb[data-v-dc175fac]{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;margin-bottom:1.5rem}.breadcrumb-back[data-v-dc175fac]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#c9d1d98c;cursor:pointer;padding:0;box-shadow:none;transition:background .15s,color .15s}.breadcrumb-back[data-v-dc175fac]:hover{background:#ffffff14;color:#c9d1d9}.breadcrumb-sep[data-v-dc175fac]{color:#c9d1d94d;font-size:.85rem;-webkit-user-select:none;user-select:none}.breadcrumb-link[data-v-dc175fac]{font-size:.85rem;font-weight:500;color:var(--color-brand, #fd551d);text-decoration:none;transition:opacity .15s}.breadcrumb-link[data-v-dc175fac]:hover{opacity:.75}.breadcrumb-current[data-v-dc175fac]{font-size:.85rem;font-weight:500;color:#c9d1d9a6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.hw-support-bar[data-v-3dd4ffc3]{display:flex;justify-content:center;padding:.75rem 0 .25rem}.audio-shell[data-v-3dd4ffc3]{display:flex;flex-direction:column;min-height:100dvh;max-width:680px;margin:0 auto}.audio-sticky-header[data-v-3dd4ffc3]{display:flex;align-items:center;gap:.875rem;padding:.75rem 1.25rem;position:sticky;top:0;z-index:20;background:#0d1117eb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}.back-btn[data-v-3dd4ffc3]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:8px;color:#c9d1d98c;cursor:pointer;padding:0;transition:background .15s,color .15s}.back-btn[data-v-3dd4ffc3]:hover{background:#ffffff14;color:#c9d1d9}.sticky-title[data-v-3dd4ffc3]{min-width:0}.sticky-eyebrow[data-v-3dd4ffc3]{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#f2994acc;margin:0;line-height:1}.sticky-title h1[data-v-3dd4ffc3]{font-size:1rem;font-weight:700;color:#f0f6fc;margin:.15rem 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.audio-main[data-v-3dd4ffc3]{display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem 1.25rem 5rem;flex:1}.player-card[data-v-3dd4ffc3]{background:#0d111799;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:2rem 1.75rem 1.75rem;display:flex;flex-direction:column;align-items:center;gap:0;box-shadow:0 0 80px #f2994a0f}.waveform[data-v-3dd4ffc3]{display:flex;align-items:flex-end;justify-content:center;gap:3px;height:60px;margin-bottom:2rem;width:100%;max-width:320px}.wave-bar[data-v-3dd4ffc3]{width:4px;border-radius:3px;background:#f2994a40;transform-origin:bottom;flex-shrink:0}.wave-bar[data-v-3dd4ffc3]:nth-child(7n+1){height:18px}.wave-bar[data-v-3dd4ffc3]:nth-child(7n+2){height:38px}.wave-bar[data-v-3dd4ffc3]:nth-child(7n+3){height:26px}.wave-bar[data-v-3dd4ffc3]:nth-child(7n+4){height:52px}.wave-bar[data-v-3dd4ffc3]:nth-child(7n+5){height:14px}.wave-bar[data-v-3dd4ffc3]:nth-child(7n+6){height:34px}.wave-bar[data-v-3dd4ffc3]:nth-child(7n+7){height:22px}@keyframes waveAnim-3dd4ffc3{0%,to{transform:scaleY(.3);background:#f2994a40}50%{transform:scaleY(1);background:#f2994ab3}}.waveform.playing .wave-bar[data-v-3dd4ffc3]{animation:waveAnim-3dd4ffc3 .9s ease-in-out infinite;animation-delay:calc(var(--i) * 40ms)}.play-btn[data-v-3dd4ffc3]{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#f2994a,#e8611a);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;margin-bottom:2rem;box-shadow:0 8px 24px #f2994a59,0 0 0 8px #f2994a0f;transition:transform .15s,box-shadow .15s;flex-shrink:0}.play-btn[data-v-3dd4ffc3]:hover{transform:scale(1.07);box-shadow:0 12px 32px #f2994a73,0 0 0 10px #f2994a14}.play-btn[data-v-3dd4ffc3]:active{transform:scale(.95)}.icon-play[data-v-3dd4ffc3]{transform:translate(2px)}.scrubber-area[data-v-3dd4ffc3]{display:flex;flex-direction:column;gap:.5rem;width:100%;margin-bottom:1.5rem}.scrub-track[data-v-3dd4ffc3]{height:4px;background:#ffffff1a;border-radius:2px;cursor:pointer;position:relative}.scrub-fill[data-v-3dd4ffc3]{height:100%;background:linear-gradient(90deg,#f2994a,#e8611a);border-radius:2px;position:relative;min-width:0;transition:width .1s linear}.scrub-thumb[data-v-3dd4ffc3]{position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:14px;height:14px;background:#f2994a;border-radius:50%;box-shadow:0 0 0 3px #f2994a40;opacity:0;transition:opacity .15s}.scrub-track:hover .scrub-thumb[data-v-3dd4ffc3]{opacity:1}.time-row[data-v-3dd4ffc3]{display:flex;justify-content:space-between}.time-label[data-v-3dd4ffc3]{font-size:.75rem;color:#c9d1d973;font-variant-numeric:tabular-nums;letter-spacing:.02em}.audio-description[data-v-3dd4ffc3]{width:100%;margin:0;font-size:.9rem;line-height:1.7;color:#c9d1d999;text-align:left;padding-top:1rem;border-top:1px solid rgba(255,255,255,.06)}.error-state[data-v-3dd4ffc3]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;padding:4rem 2rem;margin:1.5rem;background:#0d111799;border:1px solid rgba(255,255,255,.08);border-radius:20px}.error-state h2[data-v-3dd4ffc3]{color:#ff7b72;margin:.25rem 0 0;font-size:1.1rem}.error-state p[data-v-3dd4ffc3]{color:#c9d1d9a6;font-size:.9rem;margin:0;max-width:320px}.error-back-btn[data-v-3dd4ffc3]{margin-top:.5rem;display:inline-flex;align-items:center;padding:.625rem 1.25rem;background:linear-gradient(135deg,#7b42f6,#c353d7);border-radius:50px;color:#fff;text-decoration:none;font-size:.875rem;font-weight:600}@media (prefers-reduced-motion: reduce){.wave-bar[data-v-3dd4ffc3]{animation:none!important}}.vocab-view-wrapper{max-width:1000px;width:100%;margin:0 auto;padding:2rem 1.5rem 5rem;box-sizing:border-box;display:flex;flex-direction:column;gap:1.5rem;min-height:100vh}.vocab-error-card{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-2xl);padding:3.5rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.875rem}.vocab-error-icon{width:56px;height:56px;border-radius:var(--r-xl);background:color-mix(in srgb,var(--color-vocab) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-vocab) 25%,transparent);display:flex;align-items:center;justify-content:center;color:var(--color-vocab)}.vocab-error-card h2{margin:0;font-size:var(--text-h5);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:var(--color-fg)}.vocab-error-card p{margin:0;font-size:var(--text-body-sm);color:var(--color-fg-muted);max-width:32ch;line-height:1.6}.vocab-error-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:.5rem;padding:.65rem 1.375rem;background:var(--color-brand);color:#fff;border-radius:var(--r-full);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);text-decoration:none;transition:opacity var(--dur-fast) var(--ease-out-quad)}.vocab-error-link:hover{opacity:.88}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 900px){.vocab-view-wrapper{padding:1.25rem 1.25rem 4rem;gap:1.125rem}}@media (max-width: 480px){.vocab-view-wrapper{padding:.875rem .875rem 3rem;gap:1rem}}@media (prefers-reduced-motion: reduce){*{animation:none!important}}.vocab-hero[data-v-f1569715]{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:0;overflow:hidden;position:relative}.hero-accent-bar[data-v-f1569715]{height:3px;background:linear-gradient(90deg,var(--color-brand) 0%,rgba(253,85,29,.4) 60%,transparent 100%)}.hero-body[data-v-f1569715]{display:flex;align-items:flex-start;gap:1.25rem;padding:2rem 2rem 1.75rem}.hero-icon-wrap[data-v-f1569715]{flex-shrink:0;width:52px;height:52px;border-radius:var(--r-xl);background:#d977061f;border:1px solid rgba(217,119,6,.25);display:flex;align-items:center;justify-content:center;color:var(--color-vocab)}.hero-text[data-v-f1569715]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.5rem}.hero-eyebrow[data-v-f1569715]{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap}.type-badge[data-v-f1569715]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-brand)}.hero-chips[data-v-f1569715]{display:flex;gap:.4rem}.hero-chip[data-v-f1569715]{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .625rem;border-radius:var(--r-full);border:1px solid var(--color-border);background:var(--color-bg-surface);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);color:var(--color-fg-muted);white-space:nowrap}.hero-title[data-v-f1569715]{margin:0;font-size:var(--text-h3);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);line-height:1.15;color:var(--color-fg)}.hero-desc[data-v-f1569715]{margin:0;font-size:var(--text-body-sm);color:var(--color-fg-muted);line-height:1.6}.hero-progress-track[data-v-f1569715]{display:flex;gap:3px;flex-wrap:wrap;margin-top:.25rem}.progress-pip[data-v-f1569715]{width:18px;height:4px;border-radius:var(--r-full);background:#fd551d40;border:1px solid rgba(253,85,29,.15)}@media (max-width: 600px){.hero-body[data-v-f1569715]{padding:1.5rem 1.25rem 1.25rem;gap:1rem}.hero-icon-wrap[data-v-f1569715]{width:44px;height:44px}.progress-pip[data-v-f1569715]{width:14px}}.vocab-study-card[data-v-5ff032e9]{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:0;overflow:clip}.study-card-label[data-v-5ff032e9]{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.125rem 2rem;border-bottom:1px solid var(--color-border)}.label-eyebrow[data-v-5ff032e9]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-brand)}.label-hint[data-v-5ff032e9]{font-size:var(--text-accent-sm);color:var(--color-fg-muted);font-style:italic}.study-card-body[data-v-5ff032e9]{padding:0;overflow:hidden}@media (max-width: 600px){.study-card-label[data-v-5ff032e9]{padding:1rem 1.25rem;flex-direction:column;align-items:flex-start;gap:.25rem}}.professor-login-page[data-v-cf1aca53]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0d1117,#161b22);padding:2rem}.login-container[data-v-cf1aca53]{width:100%;max-width:420px}.login-card[data-v-cf1aca53]{background:#1e242dcc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2.5rem;box-shadow:0 20px 60px #00000080}.login-header[data-v-cf1aca53]{text-align:center;margin-bottom:2rem}.login-header svg[data-v-cf1aca53]{color:#58a6ff;margin-bottom:1rem}.login-header h1[data-v-cf1aca53]{margin:0 0 .5rem;font-size:1.8rem;color:#fff;font-weight:700}.login-header p[data-v-cf1aca53]{margin:0;color:#8b949e;font-size:.95rem}.login-form[data-v-cf1aca53]{display:flex;flex-direction:column;gap:1.5rem}.form-group[data-v-cf1aca53]{display:flex;flex-direction:column;gap:.5rem}.form-group label[data-v-cf1aca53]{color:#c9d1d9;font-size:.9rem;font-weight:600}.form-group input[data-v-cf1aca53]{padding:.875rem 1rem;background:#0d111799;border:1px solid rgba(255,255,255,.15);border-radius:12px;color:#fff;font-size:1rem;transition:all .2s ease}.form-group input[data-v-cf1aca53]:focus{outline:none;border-color:#58a6ff;background:#0d1117cc;box-shadow:0 0 0 3px #58a6ff1a}.form-group input[data-v-cf1aca53]:disabled{opacity:.5;cursor:not-allowed}.form-group input[data-v-cf1aca53]::placeholder{color:#6e7681}.error-message[data-v-cf1aca53]{display:flex;align-items:center;gap:.5rem;padding:.875rem;background:#f851491a;border:1px solid rgba(248,81,73,.3);border-radius:12px;color:#ff7b72;font-size:.875rem}.error-message svg[data-v-cf1aca53]{flex-shrink:0}.login-button[data-v-cf1aca53]{padding:1rem;background:linear-gradient(135deg,#58a6ff,#4184e4);border:none;border-radius:12px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.login-button[data-v-cf1aca53]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #58a6ff4d}.login-button[data-v-cf1aca53]:active:not(:disabled){transform:translateY(0)}.login-button[data-v-cf1aca53]:disabled{opacity:.6;cursor:not-allowed}.loading-text[data-v-cf1aca53]{display:flex;align-items:center;justify-content:center;gap:.5rem}.spinner[data-v-cf1aca53]{animation:spin-cf1aca53 1s linear infinite}@keyframes spin-cf1aca53{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-footer[data-v-cf1aca53]{margin-top:2rem;text-align:center}.back-link[data-v-cf1aca53]{display:inline-flex;align-items:center;gap:.5rem;color:#8b949e;text-decoration:none;font-size:.9rem;transition:color .2s ease}.back-link[data-v-cf1aca53]:hover{color:#58a6ff}@media (max-width: 480px){.login-card[data-v-cf1aca53]{padding:2rem 1.5rem}.login-header h1[data-v-cf1aca53]{font-size:1.5rem}}.hw-page[data-v-8577e439]{min-height:100vh;background:var(--color-bg);padding:2rem 1.5rem 5rem}.hw-container[data-v-8577e439]{max-width:680px;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem}.back-link[data-v-8577e439]{display:inline-flex;align-items:center;gap:.375rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-fg-muted);text-decoration:none;position:relative;align-self:flex-start;transition:color var(--dur-fast)}.back-link[data-v-8577e439]:after{content:"";position:absolute;bottom:-1px;left:0;right:100%;height:1px;background:var(--color-fg-muted);transition:right .7s cubic-bezier(.625,.05,0,1)}.back-link[data-v-8577e439]:hover{color:var(--color-fg)}.back-link[data-v-8577e439]:hover:after{right:0}.hw-header-card[data-v-8577e439]{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-xl);padding:1.75rem;display:flex;flex-direction:column;gap:.625rem;position:relative;overflow:hidden}.hw-header--pending[data-v-8577e439]:before{content:"";position:absolute;top:-80px;right:-80px;width:220px;height:220px;background:radial-gradient(ellipse,rgba(253,85,29,.12) 0%,transparent 65%);pointer-events:none}.hw-header--late[data-v-8577e439]:before{content:"";position:absolute;top:-80px;right:-80px;width:220px;height:220px;background:radial-gradient(ellipse,rgba(248,113,113,.12) 0%,transparent 65%);pointer-events:none}.hw-header--submitted[data-v-8577e439]:before{content:"";position:absolute;top:-80px;right:-80px;width:220px;height:220px;background:radial-gradient(ellipse,rgba(52,211,153,.1) 0%,transparent 65%);pointer-events:none}.hw-header--reviewed[data-v-8577e439]:before{content:"";position:absolute;top:-80px;right:-80px;width:220px;height:220px;background:radial-gradient(ellipse,rgba(167,139,250,.1) 0%,transparent 65%);pointer-events:none}.hw-chips[data-v-8577e439]{display:flex;align-items:center;gap:.5rem;position:relative;z-index:1}.type-chip[data-v-8577e439]{display:inline-flex;align-items:center;gap:.2rem;padding:.18rem .5rem;border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase}.type--exercise[data-v-8577e439]{background:#34d3991f;color:#34d399}.type--video[data-v-8577e439]{background:#58a6ff1f;color:#58a6ff}.type--text[data-v-8577e439]{background:#ff7b721f;color:#ff7b72}.type--audio[data-v-8577e439]{background:#f2994a1f;color:#f2994a}.type--vocabulary[data-v-8577e439]{background:#fbbf241f;color:#fbbf24}.type--module[data-v-8577e439]{background:#38bdf81f;color:#38bdf8}.status-chip[data-v-8577e439]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;padding:.15rem .5rem;border-radius:var(--r-full)}.badge--pending[data-v-8577e439]{background:#fd551d1f;color:var(--color-brand)}.badge--late[data-v-8577e439]{background:#f871711f;color:#f87171}.badge--submitted[data-v-8577e439]{background:#34d3991f;color:#34d399}.badge--reviewed[data-v-8577e439]{background:#a78bfa1f;color:#a78bfa}.hw-title[data-v-8577e439]{font-size:clamp(1.375rem,3vw,2rem);font-weight:var(--font-weight-medium);color:var(--color-fg);margin:0;letter-spacing:-.04em;line-height:1.2;position:relative;z-index:1}.hw-due[data-v-8577e439]{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);position:relative;z-index:1}.hw-due--overdue[data-v-8577e439]{color:#f87171;font-weight:var(--font-weight-medium)}.hw-countdown[data-v-8577e439]{max-width:280px;position:relative;z-index:1}.content-card[data-v-8577e439]{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-xl);padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.submitted-state[data-v-8577e439]{display:flex;align-items:center;gap:1rem}.submitted-icon-wrap[data-v-8577e439]{width:52px;height:52px;background:#34d3991f;color:#34d399;border-radius:var(--r-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.submitted-body[data-v-8577e439]{display:flex;flex-direction:column;gap:.25rem}.submitted-label[data-v-8577e439]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:#34d399;font-weight:var(--font-weight-medium)}.score-display[data-v-8577e439]{display:flex;align-items:baseline;gap:.1rem}.score-num[data-v-8577e439]{font-size:2rem;font-weight:var(--font-weight-bold);color:var(--color-fg);font-family:var(--font-mono);letter-spacing:var(--tracking-tighter);line-height:1}.score-denom[data-v-8577e439]{font-family:var(--font-mono);font-size:var(--text-body-sm);color:var(--color-fg-muted);letter-spacing:var(--tracking-tighter)}.feedback-block[data-v-8577e439]{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--r-lg);padding:1rem 1.1rem}.feedback-eyebrow[data-v-8577e439]{display:block;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:#a78bfa;margin-bottom:.5rem}.feedback-text[data-v-8577e439],.do-description[data-v-8577e439]{font-size:var(--text-body-sm);color:var(--color-fg-muted);margin:0;line-height:1.6}.do-description strong[data-v-8577e439]{color:var(--color-fg);font-weight:var(--font-weight-medium)}.btn-do[data-v-8577e439]{display:inline-flex;align-items:center;background:var(--color-brand);color:#fff;border:none;border-radius:var(--r-full);padding:.75rem 1.5rem;font-family:var(--font-sans);font-size:.875rem;font-weight:700;cursor:pointer;overflow:hidden;text-decoration:none;align-self:flex-start;transition:background var(--dur-base) var(--ease-out-quart),box-shadow var(--dur-base) var(--ease-out-quart)}.btn-do[data-v-8577e439]:hover{background:var(--color-brand-muted);box-shadow:0 4px 24px #fd551d59}.btn-inner[data-v-8577e439]{display:inline-flex;align-items:center;gap:.375rem}.btn-icon-left[data-v-8577e439]{display:inline-flex;align-items:center;flex-shrink:0;transform:rotate(-45deg) scale(0);transition:transform var(--dur-slower) var(--ease-in-out-quart)}.btn-icon-right[data-v-8577e439]{display:inline-flex;align-items:center;flex-shrink:0;transform:rotate(0) scale(1);transition:transform var(--dur-slower) var(--ease-in-out-quart)}.btn-text[data-v-8577e439]{transform:translate(calc(-16px - .375rem));transition:transform var(--dur-slower) var(--ease-in-out-quart);white-space:nowrap}.btn-do:hover .btn-icon-left[data-v-8577e439]{transform:rotate(0) scale(1)}.btn-do:hover .btn-text[data-v-8577e439]{transform:translate(0)}.btn-do:hover .btn-icon-right[data-v-8577e439]{transform:rotate(-45deg) scale(0)}.divider[data-v-8577e439]{height:1px;background:var(--color-border)}.submit-hint[data-v-8577e439]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);margin:0}.btn-submit[data-v-8577e439]{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;background:#34d39926;color:#34d399;border:1px solid rgba(52,211,153,.25);border-radius:var(--r-full);font-family:var(--font-sans);font-size:.875rem;font-weight:700;cursor:pointer;align-self:flex-start;transition:background var(--dur-base) var(--ease-out-quart),box-shadow var(--dur-base) var(--ease-out-quart)}.btn-submit[data-v-8577e439]:hover:not(:disabled){background:#34d39940;box-shadow:0 4px 18px #34d39933}.btn-submit[data-v-8577e439]:disabled{opacity:.4;cursor:not-allowed}.btn-ghost[data-v-8577e439]{display:inline-flex;align-items:center;gap:.375rem;padding:.55rem 1rem;background:#eeeeee0d;color:var(--color-fg-muted);border:1px solid var(--color-border);border-radius:var(--r-full);font-family:var(--font-sans);font-size:.8125rem;font-weight:600;text-decoration:none;cursor:pointer;align-self:flex-start;transition:background var(--dur-fast),color var(--dur-fast)}.btn-ghost[data-v-8577e439]:hover{background:#eeeeee14;color:var(--color-fg)}.step-progress[data-v-8577e439]{display:flex;align-items:center;gap:.75rem}.step-track[data-v-8577e439]{flex:1;height:3px;background:var(--color-border);border-radius:var(--r-full);overflow:hidden}.step-fill[data-v-8577e439]{height:100%;background:var(--color-brand);border-radius:var(--r-full);transition:width .4s var(--ease-out-expo)}.step-label[data-v-8577e439]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);white-space:nowrap}.current-lesson[data-v-8577e439]{display:flex;align-items:center;gap:.875rem;padding:1rem;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--r-lg)}.hw-lesson-nav[data-v-8577e439]{display:flex;gap:1.5rem;align-items:flex-end}.hw-nav-spacer[data-v-8577e439]{flex:1}.hw-nav-link[data-v-8577e439]{position:relative;display:inline-flex;align-items:center;gap:.5rem;flex:1;background:none;border:none;padding:0;text-decoration:none;color:var(--color-fg-muted);font-family:inherit;transition:color var(--dur-fast)}.hw-nav-link[data-v-8577e439]:hover{color:var(--color-fg)}.hw-nav-link--next[data-v-8577e439]{justify-content:flex-end;flex-direction:row-reverse;text-align:right}.hw-nav-link--prev[data-v-8577e439]{justify-content:flex-start;text-align:left}.hw-nav-label[data-v-8577e439]{position:relative;display:flex;flex-direction:column;gap:.15rem;min-width:0}.hw-nav-eyebrow[data-v-8577e439]{font-family:var(--font-mono);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.07em;opacity:.6;line-height:1}.hw-nav-title[data-v-8577e439]{font-size:.9rem;font-weight:600;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:22ch;line-height:1.3}.lessons-list[data-v-8577e439]{border:1px solid var(--color-border);border-radius:var(--r-lg);overflow:hidden}.lesson-row[data-v-8577e439]{display:flex;align-items:center;gap:.75rem;padding:.8rem 1rem;text-decoration:none;color:inherit;border-bottom:1px solid var(--color-border-muted);transition:background var(--dur-fast)}.lesson-row[data-v-8577e439]:last-child{border-bottom:none}.lesson-row[data-v-8577e439]:hover{background:var(--color-hover-bg)}.lesson-icon[data-v-8577e439]{width:32px;height:32px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform var(--dur-fast) var(--ease-out-back)}.lesson-row:hover .lesson-icon[data-v-8577e439]{transform:scale(1.1)}.lesson-icon--video[data-v-8577e439]{background:#58a6ff1f;color:#58a6ff}.lesson-icon--exercise[data-v-8577e439]{background:#34d3991f;color:#34d399}.lesson-icon--text[data-v-8577e439]{background:#ff7b721f;color:#ff7b72}.lesson-icon--audio[data-v-8577e439]{background:#f2994a1f;color:#f2994a}.lesson-icon--vocabulary[data-v-8577e439]{background:#fbbf241f;color:#fbbf24}.lesson-info[data-v-8577e439]{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.lesson-type-label[data-v-8577e439]{font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);text-transform:uppercase;color:var(--color-fg-muted);font-weight:var(--font-weight-medium)}.lesson-title[data-v-8577e439]{font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg);letter-spacing:var(--tracking-tight);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-arrow[data-v-8577e439]{color:var(--color-fg-muted);flex-shrink:0}.list-loading[data-v-8577e439]{display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);padding:1rem}.loading-dot[data-v-8577e439]{width:6px;height:6px;border-radius:50%;background:var(--color-brand);animation:dot-pulse-8577e439 1.2s ease-in-out infinite}@keyframes dot-pulse-8577e439{0%,to{opacity:1}50%{opacity:.2}}.error-state[data-v-8577e439]{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:4rem 1.5rem;text-align:center}.error-label[data-v-8577e439]{font-family:var(--font-mono);font-size:var(--text-accent);letter-spacing:var(--tracking-tighter);color:var(--color-fg-muted);text-transform:uppercase}@media (max-width: 600px){.hw-page[data-v-8577e439]{padding:1.25rem 1rem 4rem}.hw-header-card[data-v-8577e439]{padding:1.25rem}.content-card[data-v-8577e439]{padding:1.125rem}.btn-do[data-v-8577e439],.btn-submit[data-v-8577e439],.btn-ghost[data-v-8577e439]{align-self:stretch;justify-content:center}}body{background-color:var(--color-bg);color:var(--color-fg);font-family:var(--font-sans);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.speaking-view-wrapper{max-width:900px;width:100%;margin:0 auto;padding:2rem 1.5rem 5rem;box-sizing:border-box;display:flex;flex-direction:column;gap:1.5rem;min-height:100vh}.speaking-error-card{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-2xl);padding:3.5rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.875rem}.speaking-error-icon{width:56px;height:56px;border-radius:var(--r-xl);background:color-mix(in srgb,var(--color-speaking) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-speaking) 25%,transparent);display:flex;align-items:center;justify-content:center;color:var(--color-speaking)}.speaking-error-card h2{margin:0;font-size:var(--text-h5);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:var(--color-fg)}.speaking-error-card p{margin:0;font-size:var(--text-body-sm);color:var(--color-fg-muted);max-width:32ch;line-height:1.6}.speaking-error-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:.5rem;padding:.65rem 1.375rem;background:var(--color-brand);color:#fff;border-radius:var(--r-full);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);text-decoration:none;transition:opacity var(--dur-fast) var(--ease-out-quad)}.speaking-error-link:hover{opacity:.88}.speaking-hero{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-2xl);padding:1.75rem 2rem;display:flex;align-items:flex-start;gap:1.25rem}.speaking-hero-icon{width:48px;height:48px;min-width:48px;border-radius:var(--r-lg);background:color-mix(in srgb,var(--color-speaking) 14%,transparent);border:1px solid color-mix(in srgb,var(--color-speaking) 28%,transparent);display:flex;align-items:center;justify-content:center;color:var(--color-speaking)}.speaking-hero-body{flex:1;min-width:0}.speaking-hero-type{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-tighter);color:var(--color-speaking);margin:0 0 .3rem}.speaking-hero-title{margin:0 0 .4rem;font-size:var(--text-h5);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:var(--color-fg)}.speaking-hero-meta{margin:0;font-size:var(--text-body-sm);color:var(--color-fg-muted);display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.speaking-hero-level{font-family:var(--font-mono);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.15rem .55rem;border-radius:var(--r-full);background:color-mix(in srgb,var(--color-speaking) 12%,transparent);color:var(--color-speaking);border:1px solid color-mix(in srgb,var(--color-speaking) 25%,transparent)}.sentence-progress{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.sentence-dot{width:8px;height:8px;border-radius:var(--r-full);background:var(--color-border);border:none;padding:0;cursor:pointer;transition:background var(--dur-fast) var(--ease-out-quad),transform var(--dur-fast) var(--ease-out-back)}.sentence-dot:hover{transform:scale(1.3);background:var(--color-fg-muted)}.sentence-dot.active{background:var(--color-speaking);transform:scale(1.2)}.sentence-dot.done{background:color-mix(in srgb,var(--color-speaking) 50%,transparent)}.sentence-progress-label{font-size:var(--text-body-sm);color:var(--color-fg-muted);margin-left:.25rem}.sentence-card{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-2xl);padding:2.5rem 2rem;display:flex;flex-direction:column;gap:1.25rem}.sentence-text{font-size:var(--text-h4);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:var(--color-fg);line-height:1.35;margin:0}.sentence-translation-toggle{display:inline-flex;align-items:center;gap:.4rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--r-full);padding:.35rem .875rem;font-size:var(--text-body-sm);color:var(--color-fg-muted);cursor:pointer;font-family:var(--font-sans);transition:border-color var(--dur-fast),color var(--dur-fast);align-self:flex-start}.sentence-translation-toggle:hover{border-color:var(--color-fg-muted);color:var(--color-fg)}.sentence-translation{font-size:var(--text-body);color:var(--color-fg-muted);font-style:italic;margin:0;line-height:1.6}.sentence-hint{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;background:color-mix(in srgb,var(--color-speaking) 8%,transparent);border:1px solid color-mix(in srgb,var(--color-speaking) 18%,transparent);border-radius:var(--r-lg);font-size:var(--text-body-sm);color:var(--color-speaking);line-height:1.5}.voxai-offline-banner{display:flex;align-items:center;gap:.875rem;padding:.875rem 1.125rem;background:#fbbf2414;border:1px solid rgba(251,191,36,.3);border-radius:12px;margin-bottom:.75rem}.voxai-offline-icon{flex-shrink:0;color:#fbbf24;display:flex;align-items:center}.voxai-offline-body{flex:1}.voxai-offline-title{font-size:var(--text-body-sm);font-weight:700;color:#fbbf24;margin:0 0 .1rem}.voxai-offline-desc{font-size:var(--text-body-sm);color:var(--color-fg-muted);margin:0}.btn-wake{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .875rem;background:#fbbf24;color:#1c1917;border:none;border-radius:8px;font-size:.8125rem;font-weight:700;cursor:pointer;flex-shrink:0;transition:opacity .15s}.btn-wake:hover{opacity:.85}.btn-wake:disabled{opacity:.6;cursor:not-allowed}.btn-wake.waking{background:#fbbf244d;color:#fbbf24}.voxai-online-banner{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:10px;font-size:var(--text-body-sm);font-weight:600;color:#34d399;margin-bottom:.75rem}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .8s linear infinite}.recorder-card{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-2xl);padding:2rem;display:flex;flex-direction:column;align-items:center;gap:1.25rem}.recorder-instructions{font-size:var(--text-body-sm);color:var(--color-fg-muted);text-align:center;margin:0}.record-btn{position:relative;width:72px;height:72px;border-radius:var(--r-full);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-sans);transition:background var(--dur-base) var(--ease-out-quart),transform var(--dur-fast) var(--ease-out-back)}.record-btn:hover{transform:scale(1.07)}.record-btn:active{transform:scale(.95)}.record-btn.idle{background:var(--color-speaking);color:#fff}.record-btn.recording{background:#ef4444;color:#fff}.record-btn.idle:before{display:none}.record-btn.recording:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:var(--r-full);border:2px solid rgba(239,68,68,.4);animation:pulse-ring 1.4s ease-out infinite}@keyframes pulse-ring{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.record-status{font-size:var(--text-body-sm);color:var(--color-fg-muted);font-family:var(--font-mono);letter-spacing:.04em;text-align:center}.record-status.recording-active{color:#ef4444}.audio-playback{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:.75rem}.audio-playback audio{width:100%;height:36px;opacity:.8}.btn-assess{width:100%;max-width:420px;padding:.8rem 1.5rem;background:var(--color-speaking);color:#fff;border:none;border-radius:var(--r-full);font-size:var(--text-body-sm);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);font-family:var(--font-sans);cursor:pointer;transition:opacity var(--dur-fast),transform var(--dur-fast) var(--ease-out-back)}.btn-assess:hover:not(:disabled){opacity:.9;transform:scale(1.02)}.btn-assess:disabled{opacity:.5;cursor:not-allowed}.results-card{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--r-2xl);padding:2rem;display:flex;flex-direction:column;gap:1.5rem}.results-header{display:flex;align-items:center;gap:1.25rem}.score-circle{position:relative;width:80px;height:80px;min-width:80px;border-radius:var(--r-full);background:conic-gradient(var(--score-color) calc(var(--score-pct) * 1%),var(--color-bg-surface) 0%);display:flex;align-items:center;justify-content:center}.score-circle:before{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border-radius:var(--r-full);background:var(--color-bg-muted)}.score-value{position:relative;font-size:1.25rem;font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:var(--score-color)}.results-summary{flex:1;min-width:0}.results-title{margin:0 0 .5rem;font-size:var(--text-h5);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:var(--color-fg)}.sub-scores{display:flex;flex-direction:column;gap:.6rem}.sub-score-row{display:flex;align-items:center;gap:.75rem}.sub-score-label{width:9ch;font-size:var(--text-body-sm);color:var(--color-fg-muted);flex-shrink:0}.sub-score-bar-track{flex:1;height:5px;background:var(--color-bg-surface);border-radius:var(--r-full);overflow:hidden}.sub-score-bar-fill{height:100%;border-radius:var(--r-full);transition:width .7s var(--ease-out-expo)}.sub-score-num{width:4ch;text-align:right;font-family:var(--font-mono);font-size:var(--text-body-sm);color:var(--color-fg-muted);flex-shrink:0}.results-section-title{margin:0 0 .625rem;font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-tighter);color:var(--color-fg-faint)}.word-chips{display:flex;flex-wrap:wrap;gap:.5rem}.word-chip{padding:.3rem .75rem;border-radius:var(--r-full);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-tight);border:1px solid transparent;cursor:default}.word-chip.correct{background:#34d3991f;border-color:#34d39947;color:#34d399}.word-chip.mispronounced{background:#fbbf241f;border-color:#fbbf2447;color:#fbbf24}.word-chip.missing{background:#ef44441a;border-color:#ef444438;color:#f87171;text-decoration:line-through}.feedback-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.feedback-item{display:flex;align-items:flex-start;gap:.5rem;font-size:var(--text-body-sm);color:var(--color-fg-muted);line-height:1.55}.feedback-item:before{content:"—";color:var(--color-speaking);flex-shrink:0;margin-top:.05em}.results-actions{display:flex;gap:.75rem;flex-wrap:wrap}.btn-retry{padding:.65rem 1.375rem;background:transparent;border:1px solid var(--color-border);border-radius:var(--r-full);color:var(--color-fg-muted);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);font-family:var(--font-sans);cursor:pointer;transition:border-color var(--dur-fast),color var(--dur-fast)}.btn-retry:hover{border-color:var(--color-fg-muted);color:var(--color-fg)}.btn-next-sentence{padding:.65rem 1.5rem;background:var(--color-speaking);border:none;border-radius:var(--r-full);color:#fff;font-size:var(--text-body-sm);font-weight:var(--font-weight-bold);font-family:var(--font-sans);cursor:pointer;transition:opacity var(--dur-fast),transform var(--dur-fast) var(--ease-out-back)}.btn-next-sentence:hover{opacity:.9;transform:scale(1.02)}@media (max-width: 900px){.speaking-view-wrapper{padding:1.25rem 1.25rem 4rem;gap:1.125rem}}@media (max-width: 600px){.sentence-text{font-size:var(--text-h5)}.speaking-hero{flex-direction:column;gap:.75rem}.results-header{flex-direction:column;align-items:flex-start}}@media (max-width: 480px){.speaking-view-wrapper{padding:.875rem .875rem 3rem;gap:1rem}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition-duration:10ms!important}}:root{--font-sans: "aktiv-grotesk", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "Fira Code", "Geist Mono", ui-monospace, monospace;--text-display: clamp(3rem, calc(3rem + (128 - 48) * ((100vw - 23.4375rem) / (1600 - 375))), 8rem);--text-h1: clamp(2rem, calc(2rem + (96 - 32) * ((100vw - 23.4375rem) / (1600 - 375))), 6rem);--text-h2: clamp(2.25rem, calc(2.25rem + (64 - 36) * ((100vw - 23.4375rem) / (1600 - 375))), 4rem);--text-h3: clamp(1.75rem, calc(1.75rem + (48 - 28) * ((100vw - 23.4375rem) / (1600 - 375))), 3rem);--text-h4: clamp(1.75rem, calc(1.75rem + (32 - 28) * ((100vw - 23.4375rem) / (1600 - 375))), 2rem);--text-h5: 1.25rem;--text-h6: 1rem;--text-subheadline: clamp(1.25rem, calc(1.25rem + (24 - 20) * ((100vw - 23.4375rem) / (1600 - 375))), 1.5rem);--text-body-lg: clamp(1.125rem,calc(1.125rem+ (20 - 18) * ((100vw - 23.4375rem) / (1600 - 375))), 1.25rem);--text-body: 1rem;--text-body-sm: .875rem;--text-accent-lg: clamp(1.125rem,calc(1.125rem+ (20 - 18) * ((100vw - 23.4375rem) / (1600 - 375))), 1.25rem);--text-accent: clamp(.875rem,calc(.875rem+ (16 - 14) * ((100vw - 23.4375rem) / (1600 - 375))), 1rem);--text-accent-sm: clamp(.75rem, calc(.75rem + (14 - 12) * ((100vw - 23.4375rem) / (1600 - 375))), .875rem);--font-weight-light: 300;--font-weight-medium: 500;--font-weight-bold: 700;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-wide: .025em;--color-bg: #141314;--color-bg-muted: #1a1a1a;--color-bg-surface: #222222;--color-fg: #eeeeee;--color-fg-muted: #818081;--color-fg-faint: rgba(238, 238, 238, .35);--color-brand: #fd551d;--color-brand-muted: #fd8d68;--color-brand-bg: rgba(253, 85, 29, .1);--color-border: rgba(238, 238, 238, .1);--color-border-muted: rgba(238, 238, 238, .05);--color-hover-bg: rgba(238, 238, 238, .04);--color-hover-bg-sm: rgba(238, 238, 238, .03);--color-video: #58A6FF;--color-exercise: #eeeeee;--color-text-ct: #ff7b72;--color-audio: #F2994A;--color-vocab: #d97706;--color-speaking: #2dd4bf;--ease-out-quad: cubic-bezier(.5, 1, .89, 1);--ease-out-cubic: cubic-bezier(.33, 1, .68, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-back: cubic-bezier(.34, 1.56, .64, 1);--ease-in-out-quart: cubic-bezier(.76, 0, .24, 1);--dur-fast: .2s;--dur-base: .3s;--dur-slow: .5s;--dur-slower: .7s;--r-sm: .375rem;--r-md: .625rem;--r-lg: .875rem;--r-xl: 1.25rem;--r-2xl: 1.75rem;--r-full: 9999px;--focus-ring: 0 0 0 3px rgba(253, 85, 29, .45)}[data-theme=light]{--color-bg: #eeeeee;--color-bg-muted: #f7f7f7;--color-bg-surface: #d5d5d5;--color-fg: #141314;--color-fg-muted: #696869;--color-fg-faint: rgba(20, 19, 20, .35);--color-brand: #fb460d;--color-brand-muted: #fd8d68;--color-brand-bg: rgba(251, 70, 13, .08);--color-border: rgba(0, 0, 0, .12);--color-border-muted: rgba(0, 0, 0, .06);--color-hover-bg: rgba(20, 19, 20, .04);--color-hover-bg-sm: rgba(20, 19, 20, .03);--color-video: #2563eb;--color-exercise: #141314;--color-text-ct: #dc2626;--color-audio: #c2410c;--color-vocab: #92400e;--color-speaking: #0d9488;--focus-ring: 0 0 0 3px rgba(251, 70, 13, .35)}.ds-reveal{opacity:0;transform:translateY(20px);transition:opacity var(--dur-slow) var(--ease-out-quart),transform var(--dur-slow) var(--ease-out-quart)}.ds-reveal.is-visible{opacity:1;transform:translateY(0)}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--r-sm)}a:focus-visible,.card-link:focus-visible{border-radius:var(--r-lg)}@media (prefers-reduced-motion: reduce){.ds-reveal,.ds-stagger-child{opacity:1;transform:none;transition:none!important}}.fc-view-wrapper{display:flex;flex-direction:column;gap:1.5rem;padding:2rem 2rem 4rem;max-width:640px;margin:0 auto;width:100%;min-height:100vh;background:#fff;box-sizing:border-box}.fc-study-shell{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:0;overflow:hidden;box-shadow:0 1px 3px #0000000a,0 8px 32px #0000000f;flex:1;display:flex;flex-direction:column}.fc-empty-state{padding:3rem 2rem;text-align:center;color:var(--color-fg-muted);font-size:var(--text-body-sm);display:flex;flex-direction:column;align-items:center;gap:1rem}.fc-error-card{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:0;padding:3rem 2rem;display:flex;flex-direction:column;align-items:center;gap:.875rem;text-align:center}.fc-error-icon{width:52px;height:52px;border-radius:0;background:#ef44441a;border:1px solid rgba(239,68,68,.2);display:flex;align-items:center;justify-content:center;color:#ef4444}.fc-error-card h2{margin:0;font-size:var(--text-h4);font-weight:var(--font-weight-bold);color:var(--color-fg)}.fc-error-card p{margin:0;font-size:var(--text-body-sm);color:var(--color-fg-muted)}.fc-error-link{display:inline-flex;align-items:center;gap:.375rem;padding:.625rem 1.25rem;border:1px solid var(--color-border);border-radius:0;font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:var(--color-fg-muted);text-decoration:none;background:none;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quad),border-color var(--dur-fast) var(--ease-out-quad)}.fc-error-link:hover{color:var(--color-brand);border-color:var(--color-brand)}@media (max-width: 768px){.fc-view-wrapper{padding:1rem .875rem 3rem;gap:1rem}.fc-study-shell{border-radius:16px}}@media (max-width: 480px){.fc-view-wrapper{padding:.75rem .5rem 3rem}.fc-study-shell{border-radius:12px}}.fc-review[data-v-c2e43a70]{display:flex;flex-direction:column;background:#fff;flex:1}.fc-progress-bar[data-v-c2e43a70]{height:3px;background:#0000000f;flex-shrink:0}.fc-progress-fill[data-v-c2e43a70]{height:100%;background:#fd551d;transition:width .4s cubic-bezier(.4,0,.2,1)}.fc-topbar[data-v-c2e43a70]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:.75rem 1.25rem;border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0;gap:.5rem}.fc-back-btn[data-v-c2e43a70]{display:inline-flex;align-items:center;gap:.25rem;background:none;border:none;padding:.375rem .5rem;border-radius:0;font-family:var(--font-sans);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);color:#14131473;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quad),background var(--dur-fast) var(--ease-out-quad);justify-self:start;white-space:nowrap}.fc-back-btn[data-v-c2e43a70]:hover{color:#141314;background:#0000000d}.fc-deck-title[data-v-c2e43a70]{font-family:var(--font-sans);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);color:#14131499;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}.fc-counter[data-v-c2e43a70]{font-family:var(--font-mono);font-size:var(--text-accent-sm);font-weight:var(--font-weight-medium);color:#fd551d;letter-spacing:var(--tracking-tighter);justify-self:end;white-space:nowrap}.fc-stage[data-v-c2e43a70]{flex:1;display:flex;align-items:stretch;justify-content:center;padding:1rem 1.25rem 1.25rem}.fc-card[data-v-c2e43a70]{width:100%;max-width:480px;flex:1;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:0;box-shadow:0 1px 2px #0000000a,0 4px 16px #0000000f;display:flex;flex-direction:column;overflow:hidden;animation:cardIn-c2e43a70 var(--dur-base) var(--ease-out-back) both}@keyframes cardIn-c2e43a70{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.fc-card-content[data-v-c2e43a70]{flex:1;display:flex;align-items:center;justify-content:center;min-height:240px;cursor:pointer;padding:2rem 1.75rem 1.25rem}.fc-card.flipped .fc-card-content[data-v-c2e43a70]{cursor:default}.fc-face[data-v-c2e43a70]{width:100%;display:flex;flex-direction:column;align-items:center;gap:1rem}.fc-face--back[data-v-c2e43a70]{animation:faceReveal-c2e43a70 .22s var(--ease-out-quart) both}@keyframes faceReveal-c2e43a70{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.fc-card-image[data-v-c2e43a70]{width:100%;max-height:220px;object-fit:cover;border-radius:0;display:block}.fc-card-text[data-v-c2e43a70]{margin:0;font-family:var(--font-sans);font-size:clamp(1.75rem,5vw,2.75rem);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:#141314;text-align:center;line-height:1.15}.fc-card-text--answer[data-v-c2e43a70]{color:#fd551d;animation:fadeSlideIn-c2e43a70 .22s var(--ease-out-quart) both}@keyframes fadeSlideIn-c2e43a70{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.fc-audio-pill[data-v-c2e43a70]{display:inline-flex;align-items:center;gap:.375rem;padding:.4rem .875rem;border-radius:0;border:1px solid rgba(0,0,0,.12);background:#0000000a;font-family:var(--font-sans);font-size:.8rem;font-weight:var(--font-weight-medium);color:#14131499;cursor:pointer;transition:background var(--dur-fast) var(--ease-out-quad),color var(--dur-fast) var(--ease-out-quad),border-color var(--dur-fast) var(--ease-out-quad);flex-shrink:0}.fc-audio-pill[data-v-c2e43a70]:hover:not(:disabled){background:#fd551d14;border-color:#fd551d4d;color:#fd551d}.fc-audio-pill.playing[data-v-c2e43a70],.fc-audio-pill--answer.playing[data-v-c2e43a70]{background:#fd551d1a;border-color:#fd551d59;color:#fd551d}.fc-audio-pill--answer[data-v-c2e43a70]{border-color:#fd551d33;background:#fd551d0d;color:#fd551db3}.fc-audio-pill[data-v-c2e43a70]:disabled{opacity:.4;cursor:not-allowed}.fc-audio-icon--pulse[data-v-c2e43a70]{animation:pulse-opacity-c2e43a70 1s ease-in-out infinite}@keyframes pulse-opacity-c2e43a70{0%,to{opacity:1}50%{opacity:.5}}.fc-action-zone[data-v-c2e43a70]{border-top:1px solid rgba(0,0,0,.06);height:76px;display:flex;align-items:stretch;flex-shrink:0}.fc-reveal-row[data-v-c2e43a70]{flex:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--dur-fast) var(--ease-out-quad)}.fc-reveal-row[data-v-c2e43a70]:hover{background:#00000005}.fc-reveal-hint[data-v-c2e43a70]{display:inline-flex;align-items:center;gap:.375rem;font-family:var(--font-sans);font-size:var(--text-accent-sm);color:#14131459;font-style:italic;-webkit-user-select:none;user-select:none;animation:hintPulse-c2e43a70 2.4s ease-in-out infinite}@keyframes hintPulse-c2e43a70{0%,to{opacity:1}50%{opacity:.5}}.fc-eval-row[data-v-c2e43a70]{flex:1;display:grid;grid-template-columns:1fr 1fr}.fc-eval-btn[data-v-c2e43a70]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;border:none;border-radius:0;font-family:var(--font-sans);font-size:.78rem;font-weight:var(--font-weight-bold);letter-spacing:.02em;cursor:pointer;transition:background var(--dur-fast) var(--ease-out-quad),transform var(--dur-fast) var(--ease-out-back)}.fc-eval-btn[data-v-c2e43a70]:active{transform:scale(.96)}.fc-eval-btn--forgot[data-v-c2e43a70]{background:#ef44440f;color:#dc2626;border-right:1px solid rgba(0,0,0,.06)}.fc-eval-btn--forgot[data-v-c2e43a70]:hover{background:#ef44441f}.fc-eval-btn--remembered[data-v-c2e43a70]{background:#10b9810f;color:#059669}.fc-eval-btn--remembered[data-v-c2e43a70]:hover{background:#10b98121}.fc-done-card[data-v-c2e43a70]{width:100%;max-width:480px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:0;box-shadow:0 1px 2px #0000000a,0 4px 16px #0000000f;padding:2.5rem 1.75rem;display:flex;flex-direction:column;align-items:center;gap:1.25rem;text-align:center;animation:cardIn-c2e43a70 var(--dur-base) var(--ease-out-back) both}.fc-done-icon[data-v-c2e43a70]{width:64px;height:64px;background:#fd551d14;border:1px solid rgba(253,85,29,.18);border-radius:0;display:flex;align-items:center;justify-content:center;color:#fd551d}.fc-done-title[data-v-c2e43a70]{margin:0;font-family:var(--font-sans);font-size:var(--text-h3);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-tight);color:#141314}.fc-done-stats[data-v-c2e43a70]{display:flex;align-items:center;gap:2rem}.fc-stat[data-v-c2e43a70]{display:flex;flex-direction:column;align-items:center;gap:.15rem}.fc-stat-value[data-v-c2e43a70]{font-family:var(--font-mono);font-size:2.25rem;font-weight:700;line-height:1}.fc-stat-value--green[data-v-c2e43a70]{color:#059669}.fc-stat-value--red[data-v-c2e43a70]{color:#dc2626}.fc-stat-label[data-v-c2e43a70]{font-size:var(--text-accent-sm);color:#14131466;text-transform:uppercase;letter-spacing:.05em}.fc-stat-divider[data-v-c2e43a70]{width:1px;height:2.5rem;background:#0000001a}.fc-restart-btn[data-v-c2e43a70]{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:#fd551d;border:none;border-radius:0;font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:#fff;cursor:pointer;transition:background var(--dur-fast) var(--ease-out-quad),transform var(--dur-fast) var(--ease-out-back)}.fc-restart-btn[data-v-c2e43a70]:hover{background:#e04918}.fc-restart-btn[data-v-c2e43a70]:active{transform:scale(.97)}.fc-back-done-btn[data-v-c2e43a70]{background:none;border:1px solid rgba(0,0,0,.12);border-radius:0;padding:.5rem 1.25rem;font-family:var(--font-sans);font-size:var(--text-body-sm);font-weight:var(--font-weight-medium);color:#14131480;cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quad),border-color var(--dur-fast) var(--ease-out-quad)}.fc-back-done-btn[data-v-c2e43a70]:hover{color:#141314;border-color:#00000040}.fc-slide-left-enter-active[data-v-c2e43a70],.fc-slide-left-leave-active[data-v-c2e43a70]{transition:opacity var(--dur-base) var(--ease-out-quart),transform var(--dur-base) var(--ease-out-quart)}.fc-slide-left-enter-from[data-v-c2e43a70]{opacity:0;transform:translate(28px)}.fc-slide-left-leave-to[data-v-c2e43a70]{opacity:0;transform:translate(-28px)}@media (max-width: 600px){.fc-stage[data-v-c2e43a70]{padding:.75rem .875rem .875rem;align-items:stretch}.fc-card-content[data-v-c2e43a70]{min-height:200px;padding:1.75rem 1.25rem 1rem}.fc-card-text[data-v-c2e43a70]{font-size:clamp(1.5rem,9vw,2.25rem)}.fc-action-zone[data-v-c2e43a70]{height:72px}.fc-eval-btn[data-v-c2e43a70]{font-size:.75rem}.fc-deck-title[data-v-c2e43a70]{max-width:120px}}@media (prefers-reduced-motion: reduce){.fc-card[data-v-c2e43a70],.fc-face--back[data-v-c2e43a70],.fc-card-text--answer[data-v-c2e43a70],.fc-reveal-hint[data-v-c2e43a70]{animation:none!important}}.login-page[data-v-dc471c0e]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg, #141314);position:relative;overflow:hidden}.login-watermark[data-v-dc471c0e]{position:absolute;right:-.05em;bottom:-.15em;font-size:clamp(120px,20vw,260px);line-height:1;font-weight:300;opacity:.03;color:var(--color-fg, #eee);pointer-events:none;-webkit-user-select:none;user-select:none;font-family:var(--font-mono, monospace)}.login-card[data-v-dc471c0e]{width:100%;max-width:380px;padding:40px 36px;border:1px solid var(--color-border, rgba(255,255,255,.08));background:var(--color-bg-surface, var(--color-bg, #141314));position:relative;z-index:1}.login-brand[data-v-dc471c0e]{margin-bottom:2rem}.login-brand-mark[data-v-dc471c0e]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-lg, 1.125rem);color:var(--color-brand, #fd551d);text-transform:uppercase;letter-spacing:.1em;line-height:1;margin:0}.login-brand-sub[data-v-dc471c0e]{font-family:var(--font-mono, monospace);font-size:.7rem;color:var(--color-fg-muted, #818081);margin:4px 0 0;letter-spacing:.05em}.login-heading[data-v-dc471c0e]{font-size:var(--text-h3, 1.75rem);color:var(--color-fg, #eee);text-transform:uppercase;margin:0 0 1.25rem;font-weight:var(--font-weight-bold, 700)}.email-desc[data-v-dc471c0e]{font-size:.82rem;color:var(--color-fg-muted, #818081);line-height:1.7;margin:0 0 .75rem}.email-highlight[data-v-dc471c0e]{font-family:var(--font-mono, monospace);font-size:.78rem;color:var(--color-brand, #fd551d)}.email-hint[data-v-dc471c0e]{font-family:var(--font-mono, monospace);font-size:.65rem;color:var(--color-fg-muted, #818081);opacity:.7;line-height:1.7;margin:0;text-transform:uppercase;letter-spacing:.04em}.login-divider[data-v-dc471c0e]{display:flex;align-items:center;gap:.75rem;margin:1.75rem 0 1.25rem;color:var(--color-fg-muted, #818081);font-family:var(--font-mono, monospace);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}.login-divider[data-v-dc471c0e]:before,.login-divider[data-v-dc471c0e]:after{content:"";flex:1;height:1px;background:var(--color-border, rgba(255,255,255,.08))}.resend-btn[data-v-dc471c0e]{width:100%;padding:10px 12px;background:transparent!important;border:1px solid var(--color-border, rgba(255,255,255,.12))!important;border-radius:0!important;color:var(--color-fg, #eee)!important;font-family:var(--font-mono, monospace)!important;font-size:.72rem!important;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:border-color .2s,background .2s;box-shadow:none!important;transform:none!important}.resend-btn[data-v-dc471c0e]:hover:not(:disabled){border-color:#ffffff47!important;background:var(--color-hover-bg, rgba(255,255,255,.04))!important;transform:none!important;box-shadow:none!important}.resend-btn[data-v-dc471c0e]:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.resend-btn.sent[data-v-dc471c0e]{border-color:#4ade8066!important;color:#4ade80!important}.error-text[data-v-dc471c0e]{font-family:var(--font-mono, monospace);font-size:.68rem;color:#ff6868;margin:.75rem 0 0}.back-link[data-v-dc471c0e]{display:block;margin-top:1.75rem;font-family:var(--font-mono, monospace);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-fg-muted, #818081);text-decoration:none;transition:color .2s}.back-link[data-v-dc471c0e]:hover{color:var(--color-fg, #eee)}.fade-enter-active[data-v-dc471c0e],.fade-leave-active[data-v-dc471c0e]{transition:opacity .22s ease}.fade-enter-from[data-v-dc471c0e],.fade-leave-to[data-v-dc471c0e]{opacity:0}.login-page[data-v-34d3a6ad]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg, #141314);position:relative;overflow:hidden}.login-watermark[data-v-34d3a6ad]{position:absolute;right:-.05em;bottom:-.15em;font-size:clamp(120px,20vw,260px);line-height:1;font-weight:300;opacity:.03;color:var(--color-fg, #eee);pointer-events:none;-webkit-user-select:none;user-select:none;font-family:var(--font-mono, monospace)}.login-card[data-v-34d3a6ad]{width:100%;max-width:380px;padding:40px 36px;border:1px solid var(--color-border, rgba(255,255,255,.08));background:var(--color-bg-surface, var(--color-bg, #141314));position:relative;z-index:1}.login-brand[data-v-34d3a6ad]{margin-bottom:2rem}.login-brand-mark[data-v-34d3a6ad]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-lg, 1.125rem);color:var(--color-brand, #fd551d);text-transform:uppercase;letter-spacing:.1em;line-height:1;margin:0}.login-brand-sub[data-v-34d3a6ad]{font-family:var(--font-mono, monospace);font-size:.7rem;color:var(--color-fg-muted, #818081);margin:4px 0 0;letter-spacing:.05em}.login-heading[data-v-34d3a6ad]{font-size:var(--text-h3, 1.75rem);color:var(--color-fg, #eee);text-transform:uppercase;margin:0 0 1.5rem;font-weight:var(--font-weight-bold, 700)}.login-heading--error[data-v-34d3a6ad]{color:#ff6868}.verify-loader[data-v-34d3a6ad]{width:100%;height:1px;background:var(--color-border, rgba(255,255,255,.08));margin-bottom:1.25rem;overflow:hidden}.loader-bar[data-v-34d3a6ad]{display:block;height:100%;width:40%;background:var(--color-brand, #fd551d);animation:slide-bar-34d3a6ad 1.2s cubic-bezier(.76,0,.24,1) infinite}@keyframes slide-bar-34d3a6ad{0%{transform:translate(-100%)}to{transform:translate(350%)}}.verify-msg[data-v-34d3a6ad]{font-family:var(--font-mono, monospace);font-size:.75rem;color:var(--color-fg-muted, #818081);line-height:1.7;margin:0 0 1.5rem;text-transform:uppercase;letter-spacing:.04em}.verify-muted[data-v-34d3a6ad]{opacity:.5}.action-btn[data-v-34d3a6ad]{width:100%;padding:10px 12px!important;background:transparent!important;border:1px solid var(--color-border, rgba(255,255,255,.12))!important;border-radius:0!important;color:var(--color-fg, #eee)!important;font-family:var(--font-mono, monospace)!important;font-size:.72rem!important;text-transform:uppercase;letter-spacing:.06em;cursor:pointer;transition:border-color .2s,background .2s;box-shadow:none!important;transform:none!important}.action-btn[data-v-34d3a6ad]:hover{border-color:#ffffff47!important;background:var(--color-hover-bg, rgba(255,255,255,.04))!important;transform:none!important;box-shadow:none!important}.fade-enter-active[data-v-34d3a6ad],.fade-leave-active[data-v-34d3a6ad]{transition:opacity .22s ease}.fade-enter-from[data-v-34d3a6ad],.fade-leave-to[data-v-34d3a6ad]{opacity:0}.login-page[data-v-f4329bc5]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg, #141314);position:relative;overflow:hidden}.login-watermark[data-v-f4329bc5]{position:absolute;right:-.05em;bottom:-.15em;font-size:clamp(120px,20vw,260px);line-height:1;font-weight:300;opacity:.03;color:var(--color-fg, #eee);pointer-events:none;-webkit-user-select:none;user-select:none;font-family:var(--font-mono, monospace)}.login-card[data-v-f4329bc5]{width:100%;max-width:380px;padding:40px 36px;border:1px solid var(--color-border, rgba(255,255,255,.08));background:var(--color-bg-surface, var(--color-bg, #141314));position:relative;z-index:1}.login-brand[data-v-f4329bc5]{margin-bottom:2rem}.login-brand-mark[data-v-f4329bc5]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-lg, 1.125rem);color:var(--color-brand, #fd551d);text-transform:uppercase;letter-spacing:.1em;line-height:1;margin:0}.login-brand-sub[data-v-f4329bc5]{font-family:var(--font-mono, monospace);font-size:.7rem;color:var(--color-fg-muted, #818081);margin:4px 0 0;letter-spacing:.05em}.login-heading[data-v-f4329bc5]{font-size:var(--text-h3, 1.75rem);color:var(--color-fg, #eee);text-transform:uppercase;margin:0 0 .375rem;font-weight:var(--font-weight-bold, 700)}.login-desc[data-v-f4329bc5]{font-size:.78rem;color:var(--color-fg-muted, #818081);margin:0 0 1.75rem;line-height:1.6}.login-desc strong[data-v-f4329bc5]{color:var(--color-fg, #eee)}.login-form[data-v-f4329bc5]{display:flex;flex-direction:column;gap:1rem}.login-field[data-v-f4329bc5]{display:flex;flex-direction:column;gap:6px}.login-label[data-v-f4329bc5]{font-family:var(--font-mono, monospace);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-fg-muted, #818081)}.login-input[data-v-f4329bc5]{width:100%;background:transparent!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:0!important;color:var(--color-fg, #eee)!important;font-family:var(--font-mono, monospace)!important;font-size:.78rem!important;padding:10px 12px!important;outline:none!important;box-shadow:none!important;transition:border-color .2s;box-sizing:border-box}.login-input[data-v-f4329bc5]:hover{border-color:#ffffff47!important}.login-input[data-v-f4329bc5]:focus{border-color:var(--color-brand, #fd551d)!important;box-shadow:0 0 0 2px #fd551d33!important}.login-input[data-v-f4329bc5]::placeholder{color:var(--color-fg-muted, #818081);opacity:.5}.login-error-text[data-v-f4329bc5]{font-family:var(--font-mono, monospace);font-size:.68rem;color:#ff6868;margin:0}.primary-btn[data-v-f4329bc5]{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-mono, monospace);font-weight:500;text-transform:uppercase;letter-spacing:.06em;background:none;border:none;padding:0;outline:none;width:100%;margin-top:.5rem}.primary-btn[data-v-f4329bc5]:disabled{opacity:.32;pointer-events:none}.primary-btn-inner[data-v-f4329bc5]{position:relative;display:flex;align-items:center;gap:6px;width:100%}.primary-btn-icon-left[data-v-f4329bc5]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-brand, #fd551d);color:#000;flex-shrink:0;transform:rotate(-45deg) scale(0);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn-label[data-v-f4329bc5]{flex:1;display:flex;align-items:center;justify-content:center;height:44px;background:var(--color-brand, #fd551d);color:#000;font-size:.78rem;padding:0 12px;transform:translate(-50px);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn-icon-right[data-v-f4329bc5]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-brand, #fd551d);color:#000;position:absolute;right:0;transform:rotate(0) scale(1);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn:not(:disabled):hover .primary-btn-icon-left[data-v-f4329bc5]{transform:rotate(0) scale(1)}.primary-btn:not(:disabled):hover .primary-btn-label[data-v-f4329bc5]{transform:translate(0)}.primary-btn:not(:disabled):hover .primary-btn-icon-right[data-v-f4329bc5]{transform:rotate(-45deg) scale(0)}.login-footer[data-v-f4329bc5]{text-align:center;margin-top:1.5rem;font-family:var(--font-mono, monospace);font-size:.68rem;color:var(--color-fg-muted, #818081);text-transform:uppercase;letter-spacing:.05em}.login-footer a[data-v-f4329bc5]{color:var(--color-brand, #fd551d);text-decoration:none;font-weight:500}.login-footer a[data-v-f4329bc5]:hover{text-decoration:underline}.fade-enter-active[data-v-f4329bc5],.fade-leave-active[data-v-f4329bc5]{transition:opacity .22s ease}.fade-enter-from[data-v-f4329bc5],.fade-leave-to[data-v-f4329bc5]{opacity:0}.login-page[data-v-da6a52b2]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg, #141314);position:relative;overflow:hidden}.login-watermark[data-v-da6a52b2]{position:absolute;right:-.05em;bottom:-.15em;font-size:clamp(120px,20vw,260px);line-height:1;font-weight:300;opacity:.03;color:var(--color-fg, #eee);pointer-events:none;-webkit-user-select:none;user-select:none;font-family:var(--font-mono, monospace)}.login-card[data-v-da6a52b2]{width:100%;max-width:380px;padding:40px 36px;border:1px solid var(--color-border, rgba(255,255,255,.08));background:var(--color-bg-surface, var(--color-bg, #141314));position:relative;z-index:1}.login-brand[data-v-da6a52b2]{margin-bottom:2rem}.login-brand-mark[data-v-da6a52b2]{font-family:var(--font-mono, monospace);font-size:var(--text-accent-lg, 1.125rem);color:var(--color-brand, #fd551d);text-transform:uppercase;letter-spacing:.1em;line-height:1;margin:0}.login-brand-sub[data-v-da6a52b2]{font-family:var(--font-mono, monospace);font-size:.7rem;color:var(--color-fg-muted, #818081);margin:4px 0 0;letter-spacing:.05em}.login-heading[data-v-da6a52b2]{font-size:var(--text-h3, 1.75rem);color:var(--color-fg, #eee);text-transform:uppercase;margin:0 0 .375rem;font-weight:var(--font-weight-bold, 700)}.login-desc[data-v-da6a52b2]{font-size:.78rem;color:var(--color-fg-muted, #818081);margin:0 0 1.75rem;line-height:1.6}.login-form[data-v-da6a52b2]{display:flex;flex-direction:column;gap:1rem}.login-field[data-v-da6a52b2]{display:flex;flex-direction:column;gap:6px}.login-label[data-v-da6a52b2]{font-family:var(--font-mono, monospace);font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-fg-muted, #818081)}.login-input[data-v-da6a52b2]{width:100%;background:transparent!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:0!important;color:var(--color-fg, #eee)!important;font-family:var(--font-mono, monospace)!important;font-size:.78rem!important;padding:10px 12px!important;outline:none!important;box-shadow:none!important;transition:border-color .2s;box-sizing:border-box}.login-input[data-v-da6a52b2]:hover{border-color:#ffffff47!important}.login-input[data-v-da6a52b2]:focus{border-color:var(--color-brand, #fd551d)!important;box-shadow:0 0 0 2px #fd551d33!important}.login-input[data-v-da6a52b2]::placeholder{color:var(--color-fg-muted, #818081);opacity:.5}.login-error-text[data-v-da6a52b2]{font-family:var(--font-mono, monospace);font-size:.68rem;color:#ff6868;margin:0}.primary-btn[data-v-da6a52b2]{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-mono, monospace);font-weight:500;text-transform:uppercase;letter-spacing:.06em;background:none;border:none;padding:0;outline:none;width:100%;margin-top:.5rem}.primary-btn[data-v-da6a52b2]:disabled{opacity:.32;pointer-events:none}.primary-btn-inner[data-v-da6a52b2]{position:relative;display:flex;align-items:center;gap:6px;width:100%}.primary-btn-icon-left[data-v-da6a52b2]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-brand, #fd551d);color:#000;flex-shrink:0;transform:rotate(-45deg) scale(0);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn-label[data-v-da6a52b2]{flex:1;display:flex;align-items:center;justify-content:center;height:44px;background:var(--color-brand, #fd551d);color:#000;font-size:.78rem;padding:0 12px;transform:translate(-50px);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn-icon-right[data-v-da6a52b2]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--color-brand, #fd551d);color:#000;position:absolute;right:0;transform:rotate(0) scale(1);transition:transform .7s cubic-bezier(.76,0,.24,1)}.primary-btn:not(:disabled):hover .primary-btn-icon-left[data-v-da6a52b2]{transform:rotate(0) scale(1)}.primary-btn:not(:disabled):hover .primary-btn-label[data-v-da6a52b2]{transform:translate(0)}.primary-btn:not(:disabled):hover .primary-btn-icon-right[data-v-da6a52b2]{transform:rotate(-45deg) scale(0)}.login-footer[data-v-da6a52b2]{text-align:center;margin-top:1.5rem;font-family:var(--font-mono, monospace);font-size:.68rem;color:var(--color-fg-muted, #818081);text-transform:uppercase;letter-spacing:.05em}.login-footer a[data-v-da6a52b2]{color:var(--color-brand, #fd551d);text-decoration:none;font-weight:500}.login-footer a[data-v-da6a52b2]:hover{text-decoration:underline}.fade-enter-active[data-v-da6a52b2],.fade-leave-active[data-v-da6a52b2]{transition:opacity .22s ease}.fade-enter-from[data-v-da6a52b2],.fade-leave-to[data-v-da6a52b2]{opacity:0}:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--color-accent: #58A6FF;--color-accent-hover: #79b8ff;--color-purple: #7B42F6;--color-purple-alt: #c353d7;--color-green: #48bb78;--color-red: #ff7b72;--color-orange: #F2994A;--color-surface-1: rgba(22, 27, 34, .75);--color-surface-2: rgba(30, 36, 45, .7);--color-border: rgba(255, 255, 255, .12);--color-border-hover: rgba(255, 255, 255, .22);--color-text-primary: #F0F6FC;--color-text-secondary: #C9D1D9;--color-text-muted: #8b949e;--radius-card: 20px;--radius-pill: 999px;--radius-md: 12px;--radius-sm: 8px;--shadow-card: 0 8px 32px rgba(0, 0, 0, .35);--shadow-card-hover: 0 16px 48px rgba(0, 0, 0, .5);--shadow-glow-purple: 0 0 20px rgba(123, 66, 246, .35)}html{overflow-x:hidden}body{background-color:#141314;color:var(--color-text-primary);font-family:var(--font-sans);font-feature-settings:"cv02","cv03","cv04","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;min-height:100vh;overflow-x:hidden}.main-content-area{max-width:1100px;margin:2rem auto;padding:clamp(1.5rem,4vw,3rem);background:var(--color-surface-1);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border-radius:var(--radius-card);border:1px solid var(--color-border);box-shadow:var(--shadow-card)}h1,h2,h3,h4,h5{color:var(--color-text-primary);font-weight:700;letter-spacing:-.03em;line-height:1.25}h1{font-size:2.5rem;margin:0 0 1.5rem}h2{font-size:1.75rem;margin:0 0 1.25rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}h3{font-size:1.2rem;margin:0 0 1rem;color:var(--color-text-primary);font-weight:600}h4{font-size:1rem;margin:0 0 .75rem;font-weight:600}p{color:var(--color-text-secondary);line-height:1.7;margin:0 0 1rem}p:last-child{margin-bottom:0}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:none;padding:.75rem 1.5rem;margin:0;text-decoration:none;background:#24292fe6;color:var(--color-text-primary);font-family:var(--font-sans);font-size:.95rem;font-weight:600;cursor:pointer;text-align:center;transition:all .2s cubic-bezier(.4,0,.2,1);border-radius:var(--radius-md);box-shadow:0 2px 8px #00000040;border:1px solid rgba(255,255,255,.12);letter-spacing:-.01em}button:hover,.button:hover{background:#353b44;transform:translateY(-1px);box-shadow:0 6px 20px #00000059;border-color:#ffffff38;color:#fff}button.primary,.button.primary{background:linear-gradient(135deg,var(--color-purple),var(--color-purple-alt));color:#fff;border-color:transparent;box-shadow:0 4px 15px #7b42f64d}button.primary:hover,.button.primary:hover{background:linear-gradient(135deg,#8a52ff,#d464e8);box-shadow:0 6px 24px #7b42f680;transform:translateY(-2px)}button:disabled{background:#24292f80;border-color:#ffffff14;cursor:not-allowed;opacity:.5;transform:none;box-shadow:none}.card{background:var(--color-surface-2);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border);padding:1.5rem;border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:border-color .25s ease,box-shadow .25s ease}.card:hover{border-color:var(--color-border-hover)}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .65rem;border-radius:var(--radius-pill);font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.badge-video{background:#58a6ff26;color:var(--color-accent)}.badge-exercise{background:#7b42f62e;color:#a78bfa}.badge-text{background:#ff7b7226;color:var(--color-red)}.badge-audio{background:#f2994a26;color:var(--color-orange)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not([type=file]),select,textarea{width:100%;padding:.75rem 1rem;margin-bottom:1rem;background:#0d1117cc;border:1px solid var(--color-border);border-radius:10px;box-sizing:border-box;color:var(--color-text-primary);font-size:1rem;font-family:var(--font-sans);transition:all .25s ease;box-shadow:inset 0 2px 4px #0003}input::placeholder,textarea::placeholder{color:#c9d1d973}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not([type=file]):focus,select:focus,textarea:focus{outline:none;background:#0d1117f2;border-color:var(--color-accent);box-shadow:inset 0 2px 4px #0003,0 0 0 3px #58a6ff2e}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}
