.toast-container{position:fixed;top:16px;right:16px;z-index:10000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast-item{padding:10px 18px;border-radius:8px;font-size:14px;font-weight:500;color:#fff;box-shadow:0 4px 12px #00000026;pointer-events:auto;max-width:360px;word-break:break-word}.toast-success{background:#00b894}.toast-error{background:#e74c3c}.toast-info{background:#0984e3}.toast-enter-active,.toast-leave-active{transition:all .3s ease}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(40px)}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10001}.confirm-dialog{background:#fff;border-radius:12px;padding:24px;width:380px;max-width:90vw;box-shadow:0 8px 30px #0003}.confirm-title{font-size:16px;font-weight:600;margin-bottom:8px;color:#2d3436}.confirm-message{font-size:14px;color:#636e72;margin-bottom:20px;line-height:1.5}.confirm-actions{display:flex;gap:8px;justify-content:flex-end}.confirm-btn{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:background .2s}.confirm-cancel{background:#f5f6fa;color:#636e72}.confirm-cancel:hover{background:#e1e4e8}.confirm-ok{background:#e74c3c;color:#fff}.confirm-ok:hover{background:#c0392b}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f6fa;color:#2d3436}.top-nav{display:flex;justify-content:space-between;align-items:center;padding:0 24px;height:56px;background:#fff;border-bottom:1px solid #e1e4e8;box-shadow:0 1px 3px #0000000a}.nav-left{display:flex;align-items:center;gap:24px}.nav-brand{font-weight:700;font-size:16px;color:#1a73e8}.nav-link{text-decoration:none;color:#636e72;font-size:14px;font-weight:500;padding:4px 0;border-bottom:2px solid transparent;transition:all .2s}.nav-link:hover,.nav-link.router-link-active{color:#1a73e8;border-bottom-color:#1a73e8}.nav-right{display:flex;align-items:center;gap:12px}.nav-user{font-size:14px;font-weight:500}.nav-role{font-size:12px;color:#fff;background:#636e72;padding:2px 8px;border-radius:12px;text-transform:capitalize}.nav-logout{background:none;border:1px solid #e1e4e8;border-radius:6px;padding:6px 12px;font-size:13px;color:#636e72;cursor:pointer;transition:all .2s}.nav-logout:hover{background:#f5f6fa;color:#2d3436}.nav-space{font-size:12px;color:#fff;background:#00b894;padding:2px 10px;border-radius:12px;font-weight:600;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}.nav-leave{background:none;border:1px solid #e1e4e8;border-radius:6px;padding:4px 10px;font-size:12px;color:#636e72;cursor:pointer;transition:all .2s;white-space:nowrap}.nav-leave:hover:not(:disabled){background:#fef2f2;color:#dc2626;border-color:#fecaca}.nav-leave:disabled{opacity:.5;cursor:not-allowed}main{max-width:1000px;margin:0 auto;padding:32px 24px}main:has(.course-page){max-width:none;padding:0}.login-page[data-v-048bc8c0]{display:flex;justify-content:center;align-items:center;min-height:80vh}.login-card[data-v-048bc8c0]{background:#fff;border-radius:12px;padding:48px;text-align:center;box-shadow:0 2px 12px #00000014;max-width:400px;width:100%}h1[data-v-048bc8c0]{font-size:28px;color:#1a73e8;margin-bottom:4px}.subtitle[data-v-048bc8c0]{color:#636e72;margin-bottom:24px;font-size:16px}.error[data-v-048bc8c0]{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.login-btn[data-v-048bc8c0]{width:100%;padding:12px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.login-btn[data-v-048bc8c0]:hover{background:#1557b0}.note[data-v-048bc8c0]{margin-top:16px;font-size:13px;color:#b2bec3}.callback-page[data-v-634d182b]{display:flex;justify-content:center;align-items:center;min-height:60vh;color:#636e72;font-size:16px}.onboarding-page[data-v-113c7faf]{display:flex;justify-content:center;align-items:center;min-height:70vh}.onboarding-card[data-v-113c7faf]{background:#fff;border-radius:12px;padding:48px;box-shadow:0 2px 12px #00000014;max-width:500px;width:100%}h1[data-v-113c7faf]{font-size:24px;margin-bottom:12px}.description[data-v-113c7faf]{color:#636e72;font-size:14px;line-height:1.6;margin-bottom:32px}.form-group[data-v-113c7faf]{margin-bottom:20px}label[data-v-113c7faf]{display:block;font-size:14px;font-weight:600;margin-bottom:6px;color:#2d3436}input[data-v-113c7faf]{width:100%;padding:10px 14px;border:1px solid #dfe6e9;border-radius:8px;font-size:15px;transition:border-color .2s}input[data-v-113c7faf]:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81a}.error[data-v-113c7faf]{background:#fef2f2;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:14px;margin-bottom:16px}.submit-btn[data-v-113c7faf]{width:100%;padding:12px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background .2s}.submit-btn[data-v-113c7faf]:hover:not(:disabled){background:#1557b0}.submit-btn[data-v-113c7faf]:disabled{opacity:.6;cursor:not-allowed}.page-header[data-v-9ed5f277]{margin-bottom:32px}h1[data-v-9ed5f277]{font-size:28px;margin-bottom:4px}.title-row[data-v-9ed5f277]{display:flex;align-items:center;gap:10px}.icon-btn[data-v-9ed5f277]{background:none;border:none;font-size:16px;cursor:pointer;color:#b2bec3;padding:4px;transition:color .2s}.icon-btn[data-v-9ed5f277]:hover{color:#1a73e8}.edit-name-form[data-v-9ed5f277]{display:flex;align-items:center;gap:8px}.edit-name-input[data-v-9ed5f277]{padding:6px 10px;border:1px solid #dfe6e9;border-radius:6px;font-size:20px;font-weight:600;width:280px}.edit-name-input[data-v-9ed5f277]:focus{outline:none;border-color:#1a73e8}.save-btn[data-v-9ed5f277]{padding:6px 14px;background:#1a73e8;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer}.cancel-small-btn[data-v-9ed5f277]{padding:6px 14px;background:none;border:1px solid #dfe6e9;border-radius:6px;font-size:13px;cursor:pointer;color:#636e72}.space-id[data-v-9ed5f277]{font-size:12px;color:#b2bec3;font-family:monospace}.stats-grid[data-v-9ed5f277]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:32px}.stat-card[data-v-9ed5f277]{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000f}.stat-number[data-v-9ed5f277]{font-size:36px;font-weight:700;color:#1a73e8}.stat-label[data-v-9ed5f277]{font-size:14px;color:#636e72;margin-top:4px}.actions[data-v-9ed5f277]{display:flex;gap:12px}.action-btn[data-v-9ed5f277]{display:inline-block;padding:10px 20px;background:#1a73e8;color:#fff;text-decoration:none;border-radius:8px;font-size:14px;font-weight:600;transition:background .2s}.action-btn[data-v-9ed5f277]:hover{background:#1557b0}.action-btn.secondary[data-v-9ed5f277]{background:#fff;color:#1a73e8;border:1px solid #1a73e8}.action-btn.secondary[data-v-9ed5f277]:hover{background:#e8f0fe}.loading[data-v-9ed5f277]{text-align:center;padding:48px;color:#636e72}.no-space[data-v-9ed5f277]{text-align:center;padding:48px;color:#636e72;background:#fff;border-radius:12px}.spaces-link[data-v-9ed5f277]{color:#1a73e8;text-decoration:none;font-weight:600}.spaces-link[data-v-9ed5f277]:hover{text-decoration:underline}.error[data-v-9ed5f277]{background:#fef2f2;color:#dc2626;padding:12px 16px;border-radius:8px;margin-top:16px;font-size:14px}.page-header[data-v-ebe4cbe1]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}h1[data-v-ebe4cbe1]{font-size:24px}.header-actions[data-v-ebe4cbe1]{display:flex;gap:10px}.invite-admin-btn[data-v-ebe4cbe1]{padding:10px 20px;background:#fff;color:#1a73e8;border:1px solid #1a73e8;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.invite-admin-btn[data-v-ebe4cbe1]:hover{background:#f0f4ff}.add-btn[data-v-ebe4cbe1]{padding:10px 20px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.add-btn[data-v-ebe4cbe1]:hover{background:#1557b0}.tabs[data-v-ebe4cbe1]{display:flex;gap:4px;margin-bottom:20px;border-bottom:1px solid #e1e4e8;padding-bottom:0}.tab[data-v-ebe4cbe1]{padding:8px 16px;border:none;background:none;font-size:14px;font-weight:500;color:#636e72;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s}.tab[data-v-ebe4cbe1]:hover{color:#2d3436}.tab.active[data-v-ebe4cbe1]{color:#1a73e8;border-bottom-color:#1a73e8}.table-wrapper[data-v-ebe4cbe1]{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow:hidden}table[data-v-ebe4cbe1]{width:100%;border-collapse:collapse}th[data-v-ebe4cbe1]{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#636e72;background:#f8f9fa;border-bottom:1px solid #e1e4e8}td[data-v-ebe4cbe1]{padding:12px 16px;font-size:14px;border-bottom:1px solid #f0f0f0}tr:last-child td[data-v-ebe4cbe1]{border-bottom:none}.name-cell[data-v-ebe4cbe1]{display:flex;align-items:center;gap:10px}.avatar[data-v-ebe4cbe1]{width:32px;height:32px;border-radius:50%}.username[data-v-ebe4cbe1]{font-family:monospace;color:#636e72}.role-badge[data-v-ebe4cbe1]{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.role-badge.student[data-v-ebe4cbe1]{background:#e3f2fd;color:#1565c0}.role-badge.teacher[data-v-ebe4cbe1]{background:#e8f5e9;color:#2e7d32}.role-badge.admin[data-v-ebe4cbe1]{background:#fff3e0;color:#e65100}.date[data-v-ebe4cbe1]{color:#b2bec3;font-size:13px}.loading[data-v-ebe4cbe1],.empty[data-v-ebe4cbe1]{text-align:center;padding:48px;color:#636e72;background:#fff;border-radius:12px}.error[data-v-ebe4cbe1]{background:#fef2f2;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:14px;margin-top:12px}.dialog-overlay[data-v-ebe4cbe1]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;justify-content:center;align-items:center;z-index:100}.dialog[data-v-ebe4cbe1]{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:460px;box-shadow:0 12px 40px #00000026}.dialog h2[data-v-ebe4cbe1]{font-size:20px;margin-bottom:20px}.form-group[data-v-ebe4cbe1]{margin-bottom:16px}.form-row[data-v-ebe4cbe1]{display:grid;grid-template-columns:1fr 1fr;gap:12px}label[data-v-ebe4cbe1]{display:block;font-size:13px;font-weight:600;margin-bottom:4px;color:#2d3436}input[data-v-ebe4cbe1],select[data-v-ebe4cbe1]{width:100%;padding:10px 12px;border:1px solid #dfe6e9;border-radius:8px;font-size:14px;transition:border-color .2s}input[data-v-ebe4cbe1]:focus,select[data-v-ebe4cbe1]:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81a}.dialog-actions[data-v-ebe4cbe1]{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.cancel-btn[data-v-ebe4cbe1]{padding:10px 20px;background:none;border:1px solid #dfe6e9;border-radius:8px;font-size:14px;cursor:pointer;color:#636e72}.cancel-btn[data-v-ebe4cbe1]:hover{background:#f5f6fa}.submit-btn[data-v-ebe4cbe1]{padding:10px 20px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.submit-btn[data-v-ebe4cbe1]:hover:not(:disabled){background:#1557b0}.submit-btn[data-v-ebe4cbe1]:disabled{opacity:.6;cursor:not-allowed}.password-dialog .success-msg[data-v-ebe4cbe1]{color:#636e72;font-size:14px;margin-bottom:20px}.credential-box[data-v-ebe4cbe1]{background:#f8f9fa;border:1px solid #e1e4e8;border-radius:10px;padding:16px;margin-bottom:16px}.credential[data-v-ebe4cbe1]{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.credential[data-v-ebe4cbe1]:first-child{border-bottom:1px solid #e1e4e8}.credential-label[data-v-ebe4cbe1]{font-size:13px;color:#636e72}.credential-value[data-v-ebe4cbe1]{font-family:monospace;font-size:15px;font-weight:600}.credential-value.password[data-v-ebe4cbe1]{color:#1a73e8;letter-spacing:.5px}.warning[data-v-ebe4cbe1]{font-size:13px;color:#e17055;font-weight:500;margin-bottom:8px}.dialog-desc[data-v-ebe4cbe1]{font-size:14px;color:#636e72;margin-bottom:20px}.success-banner[data-v-ebe4cbe1]{background:#e8f5e9;color:#2e7d32;padding:12px 16px;border-radius:8px;font-size:14px;display:flex;justify-content:space-between;align-items:center;margin-top:16px}.dismiss-btn[data-v-ebe4cbe1]{background:none;border:none;color:#2e7d32;font-size:18px;cursor:pointer;padding:0 4px;line-height:1}.page-header[data-v-b5b059b7]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}h1[data-v-b5b059b7]{font-size:24px}.create-btn[data-v-b5b059b7]{padding:10px 20px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.create-btn[data-v-b5b059b7]:hover{background:#1557b0}.table-wrapper[data-v-b5b059b7]{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow:hidden}table[data-v-b5b059b7]{width:100%;border-collapse:collapse}th[data-v-b5b059b7]{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#636e72;background:#f8f9fa;border-bottom:1px solid #e1e4e8}td[data-v-b5b059b7]{padding:12px 16px;font-size:14px;border-bottom:1px solid #f0f0f0}tr:last-child td[data-v-b5b059b7]{border-bottom:none}.name-cell[data-v-b5b059b7]{font-weight:500}.date[data-v-b5b059b7]{color:#b2bec3;font-size:13px}.actions-cell[data-v-b5b059b7]{text-align:right}.view-btn[data-v-b5b059b7]{padding:6px 14px;background:#f0f4ff;color:#1a73e8;text-decoration:none;border-radius:6px;font-size:13px;font-weight:600;transition:background .2s}.view-btn[data-v-b5b059b7]:hover{background:#dbe5ff}.loading[data-v-b5b059b7],.empty[data-v-b5b059b7]{text-align:center;padding:48px;color:#636e72;background:#fff;border-radius:12px}.error[data-v-b5b059b7]{background:#fef2f2;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:14px;margin-top:12px}.dialog-overlay[data-v-b5b059b7]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;justify-content:center;align-items:center;z-index:100}.dialog[data-v-b5b059b7]{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:420px;box-shadow:0 12px 40px #00000026}.dialog h2[data-v-b5b059b7]{font-size:20px;margin-bottom:20px}.form-group[data-v-b5b059b7]{margin-bottom:16px}label[data-v-b5b059b7]{display:block;font-size:13px;font-weight:600;margin-bottom:4px;color:#2d3436}input[data-v-b5b059b7]{width:100%;padding:10px 12px;border:1px solid #dfe6e9;border-radius:8px;font-size:14px;transition:border-color .2s}input[data-v-b5b059b7]:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81a}.dialog-actions[data-v-b5b059b7]{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.cancel-btn[data-v-b5b059b7]{padding:10px 20px;background:none;border:1px solid #dfe6e9;border-radius:8px;font-size:14px;cursor:pointer;color:#636e72}.cancel-btn[data-v-b5b059b7]:hover{background:#f5f6fa}.submit-btn[data-v-b5b059b7]{padding:10px 20px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.submit-btn[data-v-b5b059b7]:hover:not(:disabled){background:#1557b0}.submit-btn[data-v-b5b059b7]:disabled{opacity:.6;cursor:not-allowed}.page-header[data-v-fed5cbbb]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.back-link[data-v-fed5cbbb]{font-size:13px;color:#636e72;text-decoration:none;display:inline-block;margin-bottom:8px}.back-link[data-v-fed5cbbb]:hover{color:#1a73e8}.title-row[data-v-fed5cbbb]{display:flex;align-items:center;gap:10px}h1[data-v-fed5cbbb]{font-size:24px}.space-id[data-v-fed5cbbb]{font-size:12px;color:#b2bec3;font-family:monospace;margin-top:2px}.icon-btn[data-v-fed5cbbb]{background:none;border:none;font-size:16px;cursor:pointer;color:#b2bec3;padding:4px;transition:color .2s}.icon-btn[data-v-fed5cbbb]:hover{color:#1a73e8}.edit-name-form[data-v-fed5cbbb]{display:flex;align-items:center;gap:8px}.edit-name-input[data-v-fed5cbbb]{padding:6px 10px;border:1px solid #dfe6e9;border-radius:6px;font-size:18px;font-weight:600;width:260px}.edit-name-input[data-v-fed5cbbb]:focus{outline:none;border-color:#1a73e8}.save-btn[data-v-fed5cbbb]{padding:6px 14px;background:#1a73e8;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer}.cancel-small-btn[data-v-fed5cbbb]{padding:6px 14px;background:none;border:1px solid #dfe6e9;border-radius:6px;font-size:13px;cursor:pointer;color:#636e72}.enter-btn[data-v-fed5cbbb]{padding:10px 20px;background:#00b894;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.enter-btn[data-v-fed5cbbb]:hover:not(:disabled){background:#00a381}.enter-btn[data-v-fed5cbbb]:disabled{opacity:.6;cursor:not-allowed}.section[data-v-fed5cbbb]{margin-bottom:32px}.section-header[data-v-fed5cbbb]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header h2[data-v-fed5cbbb]{font-size:18px}.section-loading[data-v-fed5cbbb],.empty-section[data-v-fed5cbbb]{text-align:center;padding:32px;color:#636e72;background:#fff;border-radius:12px;font-size:14px}.invite-btn[data-v-fed5cbbb]{padding:8px 16px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s}.invite-btn[data-v-fed5cbbb]:hover{background:#1557b0}.table-wrapper[data-v-fed5cbbb]{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;overflow:hidden}table[data-v-fed5cbbb]{width:100%;border-collapse:collapse}th[data-v-fed5cbbb]{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#636e72;background:#f8f9fa;border-bottom:1px solid #e1e4e8}td[data-v-fed5cbbb]{padding:12px 16px;font-size:14px;border-bottom:1px solid #f0f0f0}tr:last-child td[data-v-fed5cbbb]{border-bottom:none}.name-cell[data-v-fed5cbbb]{font-weight:500}.username[data-v-fed5cbbb]{font-family:monospace;color:#636e72}.date[data-v-fed5cbbb]{color:#b2bec3;font-size:13px}.actions-cell[data-v-fed5cbbb]{text-align:right}.status-badge[data-v-fed5cbbb]{display:inline-block;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.pending[data-v-fed5cbbb]{background:#fff3e0;color:#e65100}.status-badge.used[data-v-fed5cbbb]{background:#e8f5e9;color:#2e7d32}.resend-btn[data-v-fed5cbbb]{padding:4px 12px;background:#f0f4ff;color:#1a73e8;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:background .2s}.resend-btn[data-v-fed5cbbb]:hover:not(:disabled){background:#dbe5ff}.resend-btn[data-v-fed5cbbb]:disabled{opacity:.6;cursor:not-allowed}.revoke-btn[data-v-fed5cbbb]{padding:4px 12px;background:#fef2f2;color:#dc2626;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;margin-left:6px;transition:background .2s}.revoke-btn[data-v-fed5cbbb]:hover{background:#fecaca}.dialog-overlay[data-v-fed5cbbb]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;justify-content:center;align-items:center;z-index:100}.dialog[data-v-fed5cbbb]{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:460px;box-shadow:0 12px 40px #00000026}.dialog h2[data-v-fed5cbbb]{font-size:20px;margin-bottom:8px}.dialog-desc[data-v-fed5cbbb]{font-size:14px;color:#636e72;margin-bottom:20px}.form-group[data-v-fed5cbbb]{margin-bottom:16px}.form-row[data-v-fed5cbbb]{display:grid;grid-template-columns:1fr 1fr;gap:12px}label[data-v-fed5cbbb]{display:block;font-size:13px;font-weight:600;margin-bottom:4px;color:#2d3436}input[data-v-fed5cbbb]{width:100%;padding:10px 12px;border:1px solid #dfe6e9;border-radius:8px;font-size:14px;transition:border-color .2s}input[data-v-fed5cbbb]:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81a}.dialog-actions[data-v-fed5cbbb]{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.cancel-btn[data-v-fed5cbbb]{padding:10px 20px;background:none;border:1px solid #dfe6e9;border-radius:8px;font-size:14px;cursor:pointer;color:#636e72}.cancel-btn[data-v-fed5cbbb]:hover{background:#f5f6fa}.submit-btn[data-v-fed5cbbb]{padding:10px 20px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.submit-btn[data-v-fed5cbbb]:hover:not(:disabled){background:#1557b0}.submit-btn[data-v-fed5cbbb]:disabled{opacity:.6;cursor:not-allowed}.success-banner[data-v-fed5cbbb]{background:#e8f5e9;color:#2e7d32;padding:12px 16px;border-radius:8px;font-size:14px;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.dismiss-btn[data-v-fed5cbbb]{background:none;border:none;color:#2e7d32;font-size:18px;cursor:pointer;padding:0 4px;line-height:1}.loading[data-v-fed5cbbb]{text-align:center;padding:48px;color:#636e72}.error[data-v-fed5cbbb]{background:#fef2f2;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:14px;margin-top:12px}.register-page[data-v-31dd184e]{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 64px);padding:32px}.register-card[data-v-31dd184e]{background:#fff;border-radius:16px;padding:40px;width:100%;max-width:460px;box-shadow:0 4px 20px #00000014}h2[data-v-31dd184e]{font-size:22px;margin-bottom:8px}.invite-info[data-v-31dd184e]{font-size:14px;color:#636e72;margin-bottom:20px}.invite-details[data-v-31dd184e]{background:#f8f9fa;border-radius:10px;padding:14px 16px;margin-bottom:24px}.detail[data-v-31dd184e]{display:flex;gap:8px;padding:4px 0;font-size:14px}.detail-label[data-v-31dd184e]{color:#636e72;font-weight:600;min-width:60px}.form-group[data-v-31dd184e]{margin-bottom:16px}label[data-v-31dd184e]{display:block;font-size:13px;font-weight:600;margin-bottom:4px;color:#2d3436}input[data-v-31dd184e]{width:100%;padding:10px 12px;border:1px solid #dfe6e9;border-radius:8px;font-size:14px;transition:border-color .2s}input[data-v-31dd184e]:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81a}.hint[data-v-31dd184e]{display:block;font-size:12px;color:#b2bec3;margin-top:4px}.submit-btn[data-v-31dd184e]{width:100%;padding:12px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s;margin-top:8px}.submit-btn[data-v-31dd184e]:hover:not(:disabled){background:#1557b0}.submit-btn[data-v-31dd184e]:disabled{opacity:.6;cursor:not-allowed}.error[data-v-31dd184e]{background:#fef2f2;color:#dc2626;padding:10px 14px;border-radius:8px;font-size:14px;margin-bottom:12px}.loading[data-v-31dd184e]{text-align:center;padding:48px;color:#636e72}.error-state[data-v-31dd184e]{text-align:center;padding:24px 0}.error-state p[data-v-31dd184e]{color:#636e72;margin:12px 0 24px;font-size:14px}.login-link[data-v-31dd184e]{color:#1a73e8;text-decoration:none;font-weight:600;font-size:14px}.login-link[data-v-31dd184e]:hover{text-decoration:underline}.success-state[data-v-31dd184e]{text-align:center;padding:24px 0}.success-state p[data-v-31dd184e]{color:#636e72;margin:12px 0 24px;font-size:14px}.credential-box[data-v-31dd184e]{background:#f8f9fa;border:1px solid #e1e4e8;border-radius:10px;padding:16px;margin-bottom:24px;text-align:left}.credential[data-v-31dd184e]{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.credential-label[data-v-31dd184e]{font-size:13px;color:#636e72}.credential-value[data-v-31dd184e]{font-family:monospace;font-size:15px;font-weight:600}.login-btn[data-v-31dd184e]{display:inline-block;padding:12px 32px;background:#1a73e8;color:#fff;text-decoration:none;border-radius:8px;font-size:15px;font-weight:600;transition:background .2s}.login-btn[data-v-31dd184e]:hover{background:#1557b0}.courses-page[data-v-2e820ebf]{max-width:900px;margin:0 auto;padding:2rem 1.5rem}.welcome h1[data-v-2e820ebf]{margin:0 0 .25rem;font-size:1.75rem;color:#1e293b}.welcome p[data-v-2e820ebf]{color:#64748b;margin:0 0 2rem}.courses-section[data-v-2e820ebf]{margin-bottom:2.5rem}.section-header[data-v-2e820ebf]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.section-header h2[data-v-2e820ebf]{margin:0;font-size:1.25rem;color:#1e293b}.header-actions[data-v-2e820ebf]{display:flex;gap:.5rem;align-items:center}.btn-new[data-v-2e820ebf]{background:#2563eb;color:#fff;border:none;padding:.5rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-new[data-v-2e820ebf]:hover{background:#1d4ed8}.btn-import[data-v-2e820ebf]{background:#fff;color:#475569;border:1px solid #e2e8f0;padding:.5rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s}.btn-import[data-v-2e820ebf]:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.btn-import[data-v-2e820ebf]:disabled{opacity:.5;cursor:not-allowed}.course-grid[data-v-2e820ebf]{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.course-card[data-v-2e820ebf]{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .15s}.course-card[data-v-2e820ebf]:hover{border-color:#2563eb;box-shadow:0 2px 12px #2563eb1a}.card-top[data-v-2e820ebf]{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.course-title[data-v-2e820ebf]{font-weight:600;font-size:1rem;color:#1e293b;line-height:1.4}.status-badge[data-v-2e820ebf]{flex-shrink:0;font-size:.7rem;font-weight:600;padding:.2rem .6rem;border-radius:10px;text-transform:uppercase;letter-spacing:.03em}.status-badge.draft[data-v-2e820ebf]{background:#fef3c7;color:#92400e}.status-badge.resources[data-v-2e820ebf]{background:#dbeafe;color:#1e40af}.status-badge.syllabus[data-v-2e820ebf]{background:#e0e7ff;color:#3730a3}.status-badge.presentations[data-v-2e820ebf]{background:#fae8ff;color:#86198f}.status-badge.review[data-v-2e820ebf]{background:#dcfce7;color:#166534}.card-bottom[data-v-2e820ebf]{display:flex;align-items:center;justify-content:space-between}.updated[data-v-2e820ebf]{font-size:.8rem;color:#94a3b8}.btn-delete[data-v-2e820ebf]{background:none;border:none;color:#94a3b8;font-size:.8rem;cursor:pointer;padding:.2rem .5rem;border-radius:4px;transition:all .15s}.btn-delete[data-v-2e820ebf]:hover:not(:disabled){color:#dc2626;background:#fef2f2}.btn-delete[data-v-2e820ebf]:disabled{opacity:.5;cursor:not-allowed}.loading-state[data-v-2e820ebf]{text-align:center;color:#94a3b8;padding:2rem 0;font-size:.9rem}.empty-state[data-v-2e820ebf]{text-align:center;padding:2.5rem 1rem;background:#f8fafc;border-radius:12px;border:1px dashed #cbd5e1}.empty-state p[data-v-2e820ebf]{color:#64748b;margin:0 0 1rem;font-size:.95rem}.btn-primary[data-v-2e820ebf]{background:#2563eb;color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary[data-v-2e820ebf]:hover:not(:disabled){background:#1d4ed8}.btn-primary[data-v-2e820ebf]:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 700px){.course-grid[data-v-2e820ebf]{grid-template-columns:1fr}}.modal-overlay[data-v-2e820ebf]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-2e820ebf]{background:#fff;border-radius:16px;padding:2rem;width:100%;max-width:460px;box-shadow:0 8px 32px #00000029}.modal h2[data-v-2e820ebf]{margin:0 0 .25rem;font-size:1.25rem}.field-label[data-v-2e820ebf]{display:block;font-size:.85rem;font-weight:600;color:#475569;margin-bottom:.4rem}.space-label[data-v-2e820ebf]{margin-top:1rem}.modal input[data-v-2e820ebf],.modal .space-select[data-v-2e820ebf]{width:100%;padding:.7rem .85rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.95rem;outline:none;transition:border-color .2s;box-sizing:border-box;background:#fff}.modal input[data-v-2e820ebf]:focus,.modal .space-select[data-v-2e820ebf]:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.modal-actions[data-v-2e820ebf]{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}.btn-cancel[data-v-2e820ebf]{background:none;border:1px solid #cbd5e1;padding:.6rem 1.25rem;border-radius:8px;font-size:.9rem;color:#475569;cursor:pointer;transition:all .2s}.btn-cancel[data-v-2e820ebf]:hover{background:#f1f5f9;border-color:#94a3b8}.btn-danger[data-v-2e820ebf]{background:#dc2626;color:#fff;border:none;padding:.6rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-danger[data-v-2e820ebf]:hover{background:#b91c1c}.delete-message[data-v-2e820ebf]{color:#475569;font-size:.95rem;line-height:1.5;margin:.75rem 0 0}.error-message[data-v-2e820ebf]{color:#dc2626;font-size:.95rem;line-height:1.5;margin:.75rem 0 0}.node-row[data-v-9a85b831]{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.875rem;color:#334155;transition:background .1s}.node-row[data-v-9a85b831]:hover{background:#f1f5f9}.node-row.selected[data-v-9a85b831]{background:#dbeafe;color:#1e40af;font-weight:500}.node-row.drop-target[data-v-9a85b831]{background:#eff6ff;outline:2px dashed #2563eb;outline-offset:-2px}.chevron[data-v-9a85b831]{background:none;border:none;padding:0;cursor:pointer;color:#94a3b8;display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;transition:transform .15s}.chevron-spacer[data-v-9a85b831]{width:16px;flex-shrink:0}.folder-icon[data-v-9a85b831]{color:#64748b;flex-shrink:0}.node-row.selected .folder-icon[data-v-9a85b831]{color:#2563eb}.node-name[data-v-9a85b831]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.count[data-v-9a85b831]{margin-left:auto;font-size:.75rem;color:#94a3b8;font-weight:500;flex-shrink:0}.rename-input[data-v-9a85b831]{flex:1;min-width:0;font-size:.875rem;padding:1px 4px;border:1px solid #2563eb;border-radius:3px;outline:none;box-shadow:0 0 0 2px #2563eb26}.new-subfolder-row[data-v-9a85b831]{padding:3px 8px}.new-subfolder-row .rename-input[data-v-9a85b831]{width:100%;box-sizing:border-box}.context-menu[data-v-9a85b831]{position:fixed;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 16px #0000001f;padding:4px;z-index:200;min-width:140px}.context-menu button[data-v-9a85b831]{display:block;width:100%;text-align:left;background:none;border:none;padding:6px 12px;font-size:.85rem;color:#334155;border-radius:4px;cursor:pointer}.context-menu button[data-v-9a85b831]:hover{background:#f1f5f9}.context-menu button.danger[data-v-9a85b831]{color:#dc2626}.context-menu button.danger[data-v-9a85b831]:hover{background:#fef2f2}.folder-tree[data-v-dd4ffe46]{display:flex;flex-direction:column;height:100%;overflow:hidden}.tree-header[data-v-dd4ffe46]{display:flex;align-items:center;justify-content:space-between;padding:.75rem .75rem .5rem;border-bottom:1px solid #e2e8f0}.tree-title[data-v-dd4ffe46]{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.btn-new-folder[data-v-dd4ffe46]{background:none;border:1px solid #cbd5e1;width:24px;height:24px;border-radius:6px;font-size:1rem;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:all .15s}.btn-new-folder[data-v-dd4ffe46]:hover{background:#f1f5f9;border-color:#94a3b8;color:#2563eb}.tree-list[data-v-dd4ffe46]{flex:1;overflow-y:auto;padding:.5rem}.root-item[data-v-dd4ffe46]{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:.875rem;color:#334155;-webkit-user-select:none;user-select:none;transition:background .1s}.root-item[data-v-dd4ffe46]:hover{background:#f1f5f9}.root-item.selected[data-v-dd4ffe46]{background:#dbeafe;color:#1e40af;font-weight:500}.root-item.drop-target[data-v-dd4ffe46]{background:#eff6ff;outline:2px dashed #2563eb;outline-offset:-2px}.root-item svg[data-v-dd4ffe46]{color:#64748b;flex-shrink:0}.root-item.selected svg[data-v-dd4ffe46]{color:#2563eb}.count[data-v-dd4ffe46]{margin-left:auto;font-size:.75rem;color:#94a3b8;font-weight:500}.new-folder-row[data-v-dd4ffe46]{padding:4px 8px}.new-folder-input[data-v-dd4ffe46]{width:100%;font-size:.875rem;padding:3px 6px;border:1px solid #2563eb;border-radius:4px;outline:none;box-shadow:0 0 0 2px #2563eb26;box-sizing:border-box}.node-row[data-v-4a1e31f9]{display:flex;align-items:center;gap:4px;padding:5px 8px;border-radius:6px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.85rem;color:#334155;transition:background .1s}.node-row[data-v-4a1e31f9]:hover{background:#f1f5f9}.node-row.selected[data-v-4a1e31f9]{background:#dbeafe;color:#1e40af;font-weight:500}.node-row.drop-inside[data-v-4a1e31f9]{background:#eff6ff;outline:2px dashed #2563eb;outline-offset:-2px}.node-row.subject[data-v-4a1e31f9]{font-weight:500}.drop-line[data-v-4a1e31f9]{height:2px;background:#2563eb;border-radius:1px;margin-right:8px;pointer-events:none}.chevron[data-v-4a1e31f9]{background:none;border:none;padding:0;cursor:pointer;color:#94a3b8;display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;transition:transform .15s}.chevron-spacer[data-v-4a1e31f9]{width:16px;flex-shrink:0}.node-icon[data-v-4a1e31f9]{flex-shrink:0;color:#64748b}.node-row.selected .node-icon[data-v-4a1e31f9]{color:#2563eb}.subject-icon[data-v-4a1e31f9]{color:#f59e0b}.node-row.selected .subject-icon[data-v-4a1e31f9]{color:#d97706}.node-title[data-v-4a1e31f9]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.child-count[data-v-4a1e31f9]{margin-left:auto;font-size:.7rem;color:#94a3b8;font-weight:500;background:#f1f5f9;padding:1px 6px;border-radius:10px;flex-shrink:0}.pres-dot[data-v-4a1e31f9]{width:6px;height:6px;border-radius:50%;background:#22c55e;flex-shrink:0}.rename-input[data-v-4a1e31f9]{flex:1;min-width:0;font-size:.85rem;padding:1px 4px;border:1px solid #2563eb;border-radius:3px;outline:none;box-shadow:0 0 0 2px #2563eb26}.new-child-row[data-v-4a1e31f9]{padding:3px 8px}.new-child-row .rename-input[data-v-4a1e31f9]{width:100%;box-sizing:border-box}.context-menu[data-v-4a1e31f9]{position:fixed;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 16px #0000001f;padding:4px;z-index:200;min-width:160px}.context-menu button[data-v-4a1e31f9]{display:block;width:100%;text-align:left;background:none;border:none;padding:6px 12px;font-size:.85rem;color:#334155;border-radius:4px;cursor:pointer}.context-menu button[data-v-4a1e31f9]:hover{background:#f1f5f9}.context-menu button.danger[data-v-4a1e31f9]{color:#dc2626}.context-menu button.danger[data-v-4a1e31f9]:hover{background:#fef2f2}.slide-tree[data-v-2e8ccc0b]{display:flex;flex-direction:column;height:100%;overflow:hidden}.tree-header[data-v-2e8ccc0b]{display:flex;align-items:center;gap:6px;padding:.75rem .75rem .5rem;border-bottom:1px solid #e2e8f0}.tree-title[data-v-2e8ccc0b]{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.total-count[data-v-2e8ccc0b]{font-size:.7rem;color:#94a3b8;background:#f1f5f9;padding:1px 6px;border-radius:10px}.btn-add[data-v-2e8ccc0b]{margin-left:auto;background:none;border:1px solid #cbd5e1;width:24px;height:24px;border-radius:6px;font-size:1rem;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:all .15s}.btn-add[data-v-2e8ccc0b]:hover{background:#f1f5f9;border-color:#94a3b8;color:#2563eb}.tree-list[data-v-2e8ccc0b]{flex:1;overflow-y:auto;padding:.5rem}.tree-content[data-v-2e8ccc0b]{min-height:40px}.empty-state[data-v-2e8ccc0b]{display:flex;align-items:center;justify-content:center;padding:2rem 1rem;color:#94a3b8;font-size:.85rem;text-align:center;border-radius:8px;min-height:60px}.empty-state.drop-target[data-v-2e8ccc0b]{background:#eff6ff;outline:2px dashed #2563eb;outline-offset:-2px}.new-slide-row[data-v-2e8ccc0b]{padding:4px 8px}.new-slide-input[data-v-2e8ccc0b]{width:100%;font-size:.85rem;padding:3px 6px;border:1px solid #2563eb;border-radius:4px;outline:none;box-shadow:0 0 0 2px #2563eb26;box-sizing:border-box}.module-sidebar[data-v-c46c5621]{display:flex;flex-direction:column;height:100%;border-right:1px solid #e2e8f0;background:#f8fafc}.sidebar-header[data-v-c46c5621]{padding:16px 16px 8px;border-bottom:1px solid #e2e8f0}.sidebar-header h3[data-v-c46c5621]{margin:0;font-size:.9rem;font-weight:600;color:#1e293b}.sidebar-scroll[data-v-c46c5621]{flex:1;overflow-y:auto}.module-list[data-v-c46c5621]{list-style:none;margin:0;padding:8px 0}.module-item[data-v-c46c5621]{display:flex;align-items:center;gap:8px;padding:10px 16px;cursor:pointer;border-left:3px solid transparent;transition:background .15s,border-color .15s}.module-item[data-v-c46c5621]:hover{background:#f1f5f9}.module-item.active[data-v-c46c5621]{background:#eff6ff;border-left-color:#2563eb}.module-chevron[data-v-c46c5621]{background:none;border:none;padding:0;cursor:pointer;color:#94a3b8;display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;transition:transform .15s}.module-chevron[data-v-c46c5621]:hover{color:#475569}.module-num[data-v-c46c5621]{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#e2e8f0;border-radius:50%;font-size:.75rem;font-weight:600;color:#475569}.module-item.active .module-num[data-v-c46c5621]{background:#2563eb;color:#fff}.module-title[data-v-c46c5621]{flex:1;font-size:.85rem;color:#334155;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-actions[data-v-c46c5621]{display:flex;align-items:center;gap:6px;flex-shrink:0}.live-toggle[data-v-c46c5621]{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:.7rem}.live-toggle input[data-v-c46c5621]{width:14px;height:14px;accent-color:#16a34a}.live-label[data-v-c46c5621]{color:#64748b;font-weight:500}.live-toggle input:checked+.live-label[data-v-c46c5621]{color:#16a34a}.btn-delete-module[data-v-c46c5621]{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:.8rem;padding:2px 4px;border-radius:3px}.btn-delete-module[data-v-c46c5621]:hover{color:#ef4444;background:#fee2e2}.anon-link-section[data-v-c46c5621]{padding:6px 16px 6px 51px;background:#f8fafc;border-top:1px dashed #e2e8f0}.anon-link-toggle[data-v-c46c5621]{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:.75rem}.anon-link-toggle input[data-v-c46c5621]{width:14px;height:14px;accent-color:#7c3aed}.anon-link-label[data-v-c46c5621]{color:#64748b;font-weight:500}.anon-link-toggle input:checked+.anon-link-label[data-v-c46c5621]{color:#7c3aed}.anon-link-url[data-v-c46c5621]{display:flex;gap:4px;margin-top:4px}.anon-link-input[data-v-c46c5621]{flex:1;padding:3px 6px;border:1px solid #e2e8f0;border-radius:4px;font-size:.7rem;color:#475569;background:#fff;min-width:0}.anon-link-input[data-v-c46c5621]:focus{outline:none;border-color:#7c3aed}.btn-copy-link[data-v-c46c5621]{padding:3px 8px;background:#7c3aed;color:#fff;border:none;border-radius:4px;font-size:.7rem;font-weight:600;cursor:pointer;white-space:nowrap}.btn-copy-link[data-v-c46c5621]:hover{background:#6d28d9}.slide-tree-section[data-v-c46c5621]{border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;background:#fff}.add-module[data-v-c46c5621]{padding:12px 16px;border-top:1px solid #e2e8f0;display:flex;gap:6px}.add-module-input[data-v-c46c5621]{flex:1;padding:6px 10px;border:1px solid #e2e8f0;border-radius:5px;font-size:.8rem}.add-module-input[data-v-c46c5621]:focus{outline:none;border-color:#2563eb}.btn-add-module[data-v-c46c5621]{padding:6px 12px;background:#2563eb;color:#fff;border:none;border-radius:5px;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap}.btn-add-module[data-v-c46c5621]:hover:not(:disabled){background:#1d4ed8}.btn-add-module[data-v-c46c5621]:disabled{opacity:.5;cursor:not-allowed}.md-preview[data-v-452c38df]{border:1px solid #e2e8f0;border-radius:6px;padding:.5rem .75rem;min-height:calc(var(--rows, 4) * 1.4em + 1rem);cursor:text;font-size:inherit;line-height:1.5;background:#fff;transition:border-color .15s}.md-preview[data-v-452c38df]:hover{border-color:#94a3b8}.md-preview.empty[data-v-452c38df]{color:#94a3b8}.md-content[data-v-452c38df] ol,.md-content[data-v-452c38df] ul{margin:.2em 0;padding-left:1.5em}.md-content[data-v-452c38df] li{margin-bottom:.15em}.md-content[data-v-452c38df] strong{font-weight:600}.md-content[data-v-452c38df] code{background:#f1f5f9;padding:.1em .3em;border-radius:3px;font-size:.9em}.md-content[data-v-452c38df] .hl-added{background:#bbf7d0;color:#14532d;padding:0 2px;border-radius:2px}.md-content[data-v-452c38df] .hl-removed{background:#fecaca;color:#7f1d1d;padding:0 2px;border-radius:2px;text-decoration:line-through}.md-edit-wrap[data-v-452c38df]{border:2px solid #3b82f6;border-radius:6px;overflow:hidden;background:#fff}.md-edit-wrap textarea[data-v-452c38df]{width:100%;border:none;outline:none;padding:.5rem .75rem;font-size:inherit;line-height:1.5;resize:vertical;font-family:inherit}.md-edit-toolbar[data-v-452c38df]{display:flex;align-items:center;justify-content:space-between;padding:.25rem .5rem;background:#f8fafc;border-top:1px solid #e2e8f0}.md-edit-hint[data-v-452c38df]{font-size:.72rem;color:#94a3b8}.md-edit-done[data-v-452c38df]{padding:.2rem .7rem;font-size:.8rem;font-weight:500;border:none;border-radius:4px;background:#3b82f6;color:#fff;cursor:pointer;transition:background .15s}.md-edit-done[data-v-452c38df]:hover{background:#2563eb}.ai-enhance-toolbar[data-v-a1a43163]{position:fixed;transform:translate(-50%,-100%);z-index:10000;background:#1e293b;border-radius:8px;padding:4px;box-shadow:0 4px 20px #00000040;display:flex;flex-direction:column;max-width:420px}.ai-enhance-toolbar[data-v-a1a43163]:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #1e293b}.enhance-buttons[data-v-a1a43163]{display:flex;flex-wrap:wrap;gap:2px}.enhance-btn[data-v-a1a43163]{padding:5px 10px;background:none;border:none;color:#e2e8f0;font-size:.78rem;cursor:pointer;border-radius:4px;white-space:nowrap;transition:background .1s}.enhance-btn[data-v-a1a43163]:hover{background:#334155;color:#fff}.enhance-custom[data-v-a1a43163]{color:#a5b4fc}.enhance-custom[data-v-a1a43163]:hover{color:#c7d2fe}.enhance-custom-input[data-v-a1a43163]{display:flex;gap:4px;padding:2px}.enhance-custom-input input[data-v-a1a43163]{flex:1;padding:5px 8px;background:#334155;border:1px solid #475569;border-radius:4px;color:#f1f5f9;font-size:.8rem;min-width:200px}.enhance-custom-input input[data-v-a1a43163]:focus{outline:none;border-color:#6366f1}.enhance-go[data-v-a1a43163]{padding:5px 10px;background:#6366f1;color:#fff;border:none;border-radius:4px;font-size:.78rem;cursor:pointer}.enhance-go[data-v-a1a43163]:hover{background:#4f46e5}.wizard-module[data-v-de2e66d9]{max-width:900px}.wizard-module.focused-mode[data-v-de2e66d9]{max-width:none}.module-heading[data-v-de2e66d9]{font-size:1.15rem;color:#1e293b;margin:0 0 .75rem}.phase-tabs[data-v-de2e66d9]{display:flex;gap:0;border-bottom:2px solid #e2e8f0;margin-bottom:1.25rem}.phase-tab[data-v-de2e66d9]{padding:.6rem 1.25rem;font-size:.9rem;font-weight:500;color:#64748b;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:color .15s,border-color .15s}.phase-tab[data-v-de2e66d9]:hover:not(.disabled){color:#334155}.phase-tab.active[data-v-de2e66d9]{color:#2563eb;border-bottom-color:#2563eb;font-weight:600}.phase-tab.disabled[data-v-de2e66d9]{color:#cbd5e1;cursor:not-allowed}h3[data-v-de2e66d9]{font-size:1.15rem;color:#1e293b;margin:0 0 .25rem}.module-duration[data-v-de2e66d9]{font-size:.85rem;font-weight:400;color:#64748b}.phase-fieldset[data-v-de2e66d9]{border:none;margin:0;padding:0}.phase-fieldset[data-v-de2e66d9]:disabled{opacity:.5;pointer-events:none}.generation-progress[data-v-de2e66d9]{margin:1.25rem 0}.progress-bar-container[data-v-de2e66d9]{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-bar-fill[data-v-de2e66d9]{height:100%;background:#2563eb;border-radius:4px;transition:width .4s ease}.progress-text[data-v-de2e66d9]{margin:.5rem 0 0;font-size:.85rem;color:#475569}.step-description[data-v-de2e66d9]{color:#64748b;font-size:.85rem;margin:0 0 1.25rem}.loading-state[data-v-de2e66d9],.empty-state[data-v-de2e66d9]{color:#64748b;padding:2rem;text-align:center}.phase-slides[data-v-de2e66d9]{max-width:750px}.form-group[data-v-de2e66d9]{margin-bottom:1rem}.form-group label[data-v-de2e66d9]{display:block;font-size:.85rem;font-weight:500;color:#475569;margin-bottom:.3rem}.form-group input[data-v-de2e66d9]{width:100%;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.9rem;color:#1e293b}.form-group input[data-v-de2e66d9]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.instructions-input[data-v-de2e66d9]{width:100%;padding:.5rem .65rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;font-family:inherit;resize:vertical;box-sizing:border-box;color:#334155}.instructions-input[data-v-de2e66d9]:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 2px #2563eb26}.instructions-input[data-v-de2e66d9]::placeholder{color:#94a3b8}.generate-bar[data-v-de2e66d9]{display:flex;align-items:flex-end;gap:1rem;margin-bottom:1.25rem}.slide-count[data-v-de2e66d9]{display:flex;flex-direction:column;gap:.3rem}.slide-count label[data-v-de2e66d9]{font-size:.85rem;font-weight:500;color:#475569}.count-input[data-v-de2e66d9]{width:70px;padding:.4rem .5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;text-align:center}.slides-grid[data-v-de2e66d9]{display:flex;flex-direction:column;gap:.75rem;margin-bottom:.75rem}.slide-structure-card[data-v-de2e66d9]{border:1px solid #e2e8f0;border-radius:8px;padding:.75rem 1rem;background:#fff}.card-header-structure[data-v-de2e66d9]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.card-actions[data-v-de2e66d9]{display:flex;gap:.15rem}.card-field[data-v-de2e66d9]{margin-bottom:.5rem;flex:1}.card-field label[data-v-de2e66d9]{display:block;font-size:.75rem;font-weight:500;color:#94a3b8;margin-bottom:.2rem;text-transform:uppercase;letter-spacing:.03em}.card-field input[data-v-de2e66d9],.card-field textarea[data-v-de2e66d9],.card-field select[data-v-de2e66d9]{width:100%;padding:.4rem .6rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.85rem;color:#1e293b;font-family:inherit;resize:vertical}.card-field input[data-v-de2e66d9]:focus,.card-field textarea[data-v-de2e66d9]:focus,.card-field select[data-v-de2e66d9]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.card-row[data-v-de2e66d9]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.add-slide-btn[data-v-de2e66d9]{margin-bottom:1rem}.step-actions[data-v-de2e66d9]{margin-top:1.5rem;display:flex;gap:.75rem}.topic-context[data-v-de2e66d9]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.85rem;color:#475569}.topic-context-field[data-v-de2e66d9]{margin-bottom:.35rem}.topic-context-field[data-v-de2e66d9]:last-child{margin-bottom:0}.topic-context-label[data-v-de2e66d9]{font-weight:600;color:#334155;margin-right:.4rem}.phase-prompts[data-v-de2e66d9]{max-width:900px}.phase-prompts.has-ai-panel[data-v-de2e66d9]{max-width:1200px;display:flex;gap:1.5rem;align-items:flex-start}.phase-prompts.has-ai-panel .prompts-main[data-v-de2e66d9]{flex:1;min-width:0}.prompts-header[data-v-de2e66d9]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem}.btn-link[data-v-de2e66d9]{background:none;border:none;color:#6366f1;font-size:inherit;cursor:pointer;padding:0;text-decoration:underline}.btn-link[data-v-de2e66d9]:hover{color:#4f46e5}.btn-ai-assist[data-v-de2e66d9]{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;white-space:nowrap}.btn-ai-assist[data-v-de2e66d9]:hover{opacity:.9}.slides-list[data-v-de2e66d9]{display:flex;flex-direction:column;gap:.5rem}.slide-prompt-card[data-v-de2e66d9]{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.slide-prompt-card.expanded[data-v-de2e66d9]{border-color:#cbd5e1}.card-header-prompt[data-v-de2e66d9]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;cursor:pointer;background:#fafafe;-webkit-user-select:none;user-select:none}.card-header-prompt[data-v-de2e66d9]:hover{background:#f1f5f9}.slide-num-tag[data-v-de2e66d9]{font-weight:600;color:#6366f1;font-size:.85rem;min-width:2.5rem}.slide-title[data-v-de2e66d9]{flex:1;font-weight:500;font-size:.9rem}.expand-icon[data-v-de2e66d9]{color:#94a3b8;font-size:.85rem}.card-body[data-v-de2e66d9]{padding:1rem;border-top:1px solid #e2e8f0}.sea-section[data-v-de2e66d9]{margin-bottom:1.25rem}.sea-section[data-v-de2e66d9]:last-child{margin-bottom:0}.sea-heading[data-v-de2e66d9]{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#6366f1;margin:0 0 .75rem;padding-bottom:.35rem;border-bottom:2px solid #e2e8f0}.prompt-field[data-v-de2e66d9]{margin-bottom:.75rem}.prompt-field-row[data-v-de2e66d9]{display:flex;gap:1rem;margin-bottom:.75rem}.prompt-field-row .prompt-field[data-v-de2e66d9]{flex:1;margin-bottom:0}.field-header[data-v-de2e66d9]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.field-header label[data-v-de2e66d9]{font-size:.8rem;font-weight:500;color:#475569}.btn-accept-field[data-v-de2e66d9]{background:none;border:1px solid #16a34a;color:#16a34a;width:20px;height:20px;border-radius:4px;font-size:.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0}.btn-accept-field[data-v-de2e66d9]:hover{background:#16a34a;color:#fff}.prompt-field textarea[data-v-de2e66d9],.prompt-field select[data-v-de2e66d9],.prompt-field input[data-v-de2e66d9]{width:100%;padding:.5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;font-family:inherit;resize:vertical}.prompt-field textarea[data-v-de2e66d9]:focus,.prompt-field select[data-v-de2e66d9]:focus,.prompt-field input[data-v-de2e66d9]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a}.short-input[data-v-de2e66d9]{max-width:160px}.slide-accept-row[data-v-de2e66d9]{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e2e8f0;text-align:right}.btn-accept-slide[data-v-de2e66d9]{background:#f0fdf4;border:1px solid #16a34a;color:#16a34a;padding:.35rem .75rem;border-radius:6px;font-size:.8rem;cursor:pointer}.btn-accept-slide[data-v-de2e66d9]:hover{background:#16a34a;color:#fff}.bottom-actions[data-v-de2e66d9]{display:flex;justify-content:space-between;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e2e8f0}.btn-primary[data-v-de2e66d9]{background:#2563eb;color:#fff;border:none;padding:.55rem 1.25rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer}.btn-primary[data-v-de2e66d9]:hover:not(:disabled){background:#1d4ed8}.btn-primary[data-v-de2e66d9]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-de2e66d9]{background:#fff;color:#475569;border:1px solid #e2e8f0;padding:.45rem .75rem;border-radius:6px;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem}.btn-secondary[data-v-de2e66d9]:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.btn-secondary[data-v-de2e66d9]:disabled{opacity:.5;cursor:not-allowed}.btn-sm[data-v-de2e66d9]{padding:.35rem .65rem;font-size:.8rem}.btn-back[data-v-de2e66d9]{background:#fff;color:#475569;border:1px solid #e2e8f0;padding:.55rem 1.25rem;border-radius:6px;font-size:.9rem;cursor:pointer}.btn-back[data-v-de2e66d9]:hover{background:#f8fafc}.btn-icon[data-v-de2e66d9]{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:1px solid #e2e8f0;border-radius:4px;background:#fff;color:#64748b;cursor:pointer;font-size:.7rem}.btn-icon[data-v-de2e66d9]:hover:not(:disabled){background:#f1f5f9;color:#1e293b}.btn-icon[data-v-de2e66d9]:disabled{opacity:.3;cursor:not-allowed}.btn-icon-danger[data-v-de2e66d9]:hover:not(:disabled){background:#fef2f2;color:#dc2626;border-color:#fecaca}.ai-panel[data-v-de2e66d9]{width:380px;flex-shrink:0;background:#fafafe;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;position:sticky;top:1rem;max-height:calc(100vh - 4rem);overflow-y:auto}.ai-panel-header[data-v-de2e66d9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.ai-panel-header h4[data-v-de2e66d9]{margin:0;font-size:.95rem}.ai-controls[data-v-de2e66d9]{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.ai-control-field[data-v-de2e66d9]{display:flex;flex-direction:column;gap:.2rem}.ai-control-field label[data-v-de2e66d9]{font-size:.75rem;font-weight:500;color:#64748b}.ai-target-select[data-v-de2e66d9]{width:100%;padding:.4rem .5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.8rem;color:#334155;background:#fff}.ai-target-select[data-v-de2e66d9]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a}.ai-prompt-input[data-v-de2e66d9]{width:100%;padding:.4rem .5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.8rem;font-family:inherit;resize:vertical;box-sizing:border-box;color:#334155}.ai-prompt-input[data-v-de2e66d9]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a}.ai-prompt-input[data-v-de2e66d9]::placeholder{color:#94a3b8}.btn-generate-prompts[data-v-de2e66d9]{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;padding:.5rem .75rem;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%}.btn-generate-prompts[data-v-de2e66d9]:hover:not(:disabled){opacity:.9}.btn-generate-prompts[data-v-de2e66d9]:disabled{opacity:.5;cursor:not-allowed}.ai-panel-empty[data-v-de2e66d9]{color:#64748b;font-size:.85rem;padding:1rem 0;text-align:center}.ai-generation-progress[data-v-de2e66d9]{padding:.75rem 0}.ai-panel-output[data-v-de2e66d9]{display:flex;flex-direction:column;gap:.75rem}.ai-slide-summary[data-v-de2e66d9]{border:1px solid #e2e8f0;border-radius:6px;padding:.5rem;background:#fff}.ai-slide-header[data-v-de2e66d9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.ai-slide-num[data-v-de2e66d9]{font-size:.8rem;font-weight:600;color:#334155}.ai-slide-actions[data-v-de2e66d9]{display:flex;gap:.25rem}.btn-regen[data-v-de2e66d9]{background:none;border:1px solid #d1d5db;color:#64748b;width:20px;height:20px;border-radius:4px;font-size:.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.btn-regen[data-v-de2e66d9]:hover{border-color:#6366f1;color:#6366f1}.btn-regen[data-v-de2e66d9]:disabled{opacity:.4;cursor:not-allowed}.ai-generating[data-v-de2e66d9]{font-size:.8rem;color:#64748b;padding:.25rem 0}.ai-slide-fields[data-v-de2e66d9]{display:flex;flex-direction:column;gap:.35rem}.ai-field-preview[data-v-de2e66d9]{display:flex;gap:.5rem}.ai-label[data-v-de2e66d9]{font-size:.7rem;font-weight:600;color:#6366f1;min-width:55px;flex-shrink:0}.ai-text-preview[data-v-de2e66d9]{font-size:.75rem;color:#475569;line-height:1.3;overflow:hidden;text-overflow:ellipsis}.ai-not-generated[data-v-de2e66d9]{padding:.25rem 0}.btn-text-link[data-v-de2e66d9]{background:none;border:none;color:#6366f1;font-size:.8rem;cursor:pointer;padding:0}.btn-text-link[data-v-de2e66d9]:hover{text-decoration:underline}.revision-section[data-v-de2e66d9]{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e2e8f0}.revision-label[data-v-de2e66d9]{font-size:.8rem;font-weight:500;color:#475569;display:block;margin-bottom:.35rem}.revision-input[data-v-de2e66d9]{width:100%;padding:.5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.8rem;font-family:inherit;resize:vertical;margin-bottom:.35rem}.btn-revise[data-v-de2e66d9]{background:#f8fafc;border:1px solid #6366f1;color:#6366f1;padding:.3rem .6rem;border-radius:6px;font-size:.8rem;cursor:pointer;width:100%}.btn-revise[data-v-de2e66d9]:hover{background:#6366f1;color:#fff}.btn-revise[data-v-de2e66d9]:disabled{opacity:.5;cursor:not-allowed}.btn-use-all[data-v-de2e66d9]{background:#f0fdf4;border:1px solid #16a34a;color:#16a34a;padding:.5rem;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;width:100%;margin-top:.5rem}.btn-use-all[data-v-de2e66d9]:hover{background:#16a34a;color:#fff}.spinner[data-v-de2e66d9]{display:inline-block;width:14px;height:14px;border:2px solid rgba(71,85,105,.3);border-top-color:#475569;border-radius:50%;animation:spin .6s linear infinite}.generation-overlay-spinner{display:inline-block;width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.prompts-header-actions{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.btn-consistency{padding:.4rem .75rem;font-size:.8rem;font-weight:500;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;cursor:pointer}.btn-consistency:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-consistency:disabled{opacity:.5;cursor:not-allowed}.sea-tabs{display:flex;gap:0;margin-bottom:1rem;border-bottom:2px solid #e2e8f0}.sea-tab{padding:.4rem 1rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:color .15s,border-color .15s}.sea-tab:hover{color:#6366f1}.sea-tab.active{color:#6366f1;border-bottom-color:#6366f1}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-left:4px;flex-shrink:0}.status-dot.suggestion{background:#f59e0b}.status-dot.consistency{background:#ef4444}.status-dot.empty{background:#d1d5db}.consistency-loading{display:flex;align-items:center;gap:.6rem;background:#fef9c3;border:1px solid #facc15;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.85rem;color:#713f12}.consistency-spinner{width:16px;height:16px;border:2px solid #facc15;border-top-color:#a16207;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.consistency-panel{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem;max-height:400px;overflow-y:auto}.consistency-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.consistency-panel-header h4{margin:0;font-size:.85rem;color:#92400e}.consistency-slide-group{margin-bottom:.5rem}.consistency-slide-header{font-size:.75rem;font-weight:600;color:#92400e;margin-bottom:.25rem}.consistency-issue{display:flex;gap:.5rem;align-items:flex-start;padding:.4rem 0;border-bottom:1px solid rgba(251,191,36,.3)}.consistency-issue:last-child{border-bottom:none}.consistency-type-badge{font-size:.65rem;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:4px;flex-shrink:0;margin-top:2px}.consistency-type-badge.repetition{background:#fca5a5;color:#7f1d1d}.consistency-type-badge.clarity{background:#93c5fd;color:#1e3a5f}.consistency-type-badge.flow{background:#c4b5fd;color:#3b0764}.consistency-type-badge.omission{background:#fde68a;color:#78350f}.consistency-type-badge.audience{background:#a7f3d0;color:#064e3b}.consistency-issue-body{flex:1;min-width:0}.consistency-desc{margin:0;font-size:.8rem;color:#1f2937}.consistency-suggestion{margin:.25rem 0 0;font-size:.75rem;color:#4b5563;font-style:italic}.consistency-issue.applied{opacity:.6;background:#f0fdf4}.consistency-diff{margin-top:.35rem;font-size:.75rem;line-height:1.4}.diff-old{background:#fecaca;color:#7f1d1d;padding:1px 3px;border-radius:2px;text-decoration:line-through}.diff-arrow{margin:0 .3rem;color:#6b7280}.diff-new{background:#bbf7d0;color:#14532d;padding:1px 3px;border-radius:2px}.applied-badge{font-size:.7rem;font-weight:600;color:#16a34a;padding:2px 6px}.consistency-issue-actions{display:flex;gap:.25rem;flex-shrink:0}.btn-sm{padding:2px 8px;font-size:.7rem;border-radius:4px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.btn-sm.btn-primary{background:#6366f1;color:#fff;border-color:#6366f1}.btn-sm.btn-primary:hover{background:#4f46e5}.btn-sm.btn-secondary:hover{background:#f3f4f6}.focused-slide-view{display:flex;flex-direction:column;gap:.75rem}.focused-slide-card{border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem 1.5rem;background:#fff}.focused-slide-card .card-field{margin-bottom:1rem}.focused-slide-card textarea{width:100%;resize:vertical}.focused-slide-header{display:flex;justify-content:flex-end;margin-bottom:.75rem}.btn-save-slide{padding:6px 18px;border:1px solid #e2e8f0;border-radius:6px;background:#f1f5f9;color:#94a3b8;font-size:.82rem;font-weight:500;cursor:default}.btn-save-slide.dirty{background:#2563eb;color:#fff;border-color:#2563eb;cursor:pointer}.btn-save-slide.dirty:hover:not(:disabled){background:#1d4ed8}.btn-save-slide:disabled{opacity:.6;cursor:not-allowed}.topic-ai-section{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.topic-ai-input-row{display:flex;gap:8px;align-items:flex-start}.topic-ai-input{flex:1;padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;resize:vertical;font-family:inherit;line-height:1.4}.topic-ai-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f11a}.btn-topic-ai{padding:8px 16px;background:#6366f1;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;white-space:nowrap;min-width:90px}.btn-topic-ai:hover:not(:disabled){background:#4f46e5}.btn-topic-ai:disabled{opacity:.6;cursor:not-allowed}.topic-ai-proposal{margin-top:12px;border:1px solid #c7d2fe;border-radius:8px;background:#f5f3ff;overflow:hidden}.proposal-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#ede9fe;border-bottom:1px solid #c7d2fe}.proposal-title{font-size:.85rem;font-weight:600;color:#4338ca}.proposal-actions{display:flex;gap:6px}.btn-accept-all{padding:4px 12px;background:#6366f1;color:#fff;border:none;border-radius:4px;font-size:.78rem;font-weight:500;cursor:pointer}.btn-accept-all:hover{background:#4f46e5}.btn-dismiss{padding:4px 12px;background:none;border:1px solid #c7d2fe;border-radius:4px;font-size:.78rem;color:#6366f1;cursor:pointer}.btn-dismiss:hover{background:#ede9fe}.proposal-field{padding:10px 14px;border-bottom:1px solid #e0e7ff}.proposal-field:last-child{border-bottom:none}.proposal-field-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.proposal-field-header label{font-size:.78rem;font-weight:600;color:#4338ca;text-transform:uppercase;letter-spacing:.03em}.proposal-field-header .btn-accept-field{padding:2px 8px;background:none;border:1px solid #a5b4fc;border-radius:3px;font-size:.72rem;color:#4f46e5;cursor:pointer}.proposal-field-header .btn-accept-field:hover{background:#e0e7ff}.proposal-text{font-size:.85rem;color:#334155;line-height:1.5}.proposal-text.pre-wrap{white-space:pre-wrap}.presentation-modal-iframe[data-v-cb3c080d]{width:100%;height:100%;border:none;border-radius:12px;display:block;background:#0f172a}.pres-ai-section[data-v-6bb88f18]{padding:6px 12px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.pres-ai-input-row[data-v-6bb88f18]{display:flex;gap:8px;align-items:flex-start}.pres-ai-input[data-v-6bb88f18]{flex:1;padding:6px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:.82rem;background:#fff;color:#1e293b;resize:vertical;font-family:inherit;line-height:1.4}.pres-ai-input[data-v-6bb88f18]:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.btn-pres-ai[data-v-6bb88f18]{padding:6px 14px;background:#6366f1;color:#fff;border:none;border-radius:6px;font-size:.82rem;font-weight:500;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:6px}.btn-pres-ai[data-v-6bb88f18]:hover:not(:disabled){background:#4f46e5}.btn-pres-ai[data-v-6bb88f18]:disabled{opacity:.5;cursor:not-allowed}.pres-ai-right[data-v-6bb88f18]{display:flex;flex-direction:column;gap:4px;align-items:flex-end}.pres-ai-options[data-v-6bb88f18]{display:flex;gap:10px}.pres-ai-checkbox[data-v-6bb88f18]{display:flex;align-items:center;gap:4px;font-size:.75rem;color:#64748b;cursor:pointer;white-space:nowrap}.pres-ai-checkbox input[data-v-6bb88f18]{margin:0}.pres-ai-proposal[data-v-6bb88f18]{margin-top:8px;border:1px solid #c7d2fe;border-radius:8px;background:#eef2ff;overflow:hidden}.pres-ai-proposal .proposal-header[data-v-6bb88f18]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid #c7d2fe;background:#e0e7ff}.pres-ai-proposal .proposal-title[data-v-6bb88f18]{font-weight:600;font-size:.85rem;color:#3730a3}.pres-ai-proposal .proposal-actions[data-v-6bb88f18]{display:flex;gap:6px}.pres-ai-proposal .btn-accept-all[data-v-6bb88f18]{padding:4px 12px;background:#16a34a;color:#fff;border:none;border-radius:4px;font-size:.78rem;font-weight:500;cursor:pointer}.pres-ai-proposal .btn-accept-all[data-v-6bb88f18]:hover{background:#15803d}.pres-ai-proposal .btn-dismiss[data-v-6bb88f18]{padding:4px 12px;background:#e2e8f0;color:#64748b;border:none;border-radius:4px;font-size:.78rem;cursor:pointer}.pres-ai-proposal .btn-dismiss[data-v-6bb88f18]:hover{background:#cbd5e1}.proposal-preview[data-v-6bb88f18]{padding:16px;max-height:300px;overflow:auto;font-size:.85rem;line-height:1.5}.proposal-preview h2[data-v-6bb88f18],.proposal-preview h3[data-v-6bb88f18]{margin:0 0 8px}.proposal-preview ul[data-v-6bb88f18],.proposal-preview ol[data-v-6bb88f18]{margin:4px 0;padding-left:20px}.spinner[data-v-6bb88f18]{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-6bb88f18 .6s linear infinite}@keyframes spin-6bb88f18{to{transform:rotate(360deg)}}.presentations-step[data-v-6bb88f18]{display:flex;flex-direction:column;height:100%;min-height:0}.loading-state[data-v-6bb88f18],.empty-state[data-v-6bb88f18]{display:flex;align-items:center;justify-content:center;flex:1;color:#94a3b8;font-size:1rem}.pre-generation[data-v-6bb88f18]{flex:1;display:flex;align-items:center;justify-content:center;padding:2.5rem 1.5rem;background:#f8fafc}.pre-gen-card[data-v-6bb88f18]{max-width:560px;width:100%;text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2.5rem 2rem 2rem;box-shadow:0 1px 3px #0000000a,0 4px 16px #00000008}.pre-gen-icon[data-v-6bb88f18]{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:#eff6ff;border-radius:18px;margin-bottom:1.25rem}.pre-gen-title[data-v-6bb88f18]{font-size:1.35rem;font-weight:700;color:#1e293b;margin:0 0 .5rem;letter-spacing:-.01em}.pre-gen-desc[data-v-6bb88f18]{font-size:.9rem;color:#64748b;line-height:1.6;margin:0 0 1.5rem}.pre-gen-modules[data-v-6bb88f18]{list-style:none;margin:0 0 1.5rem;padding:0;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.pre-gen-modules li[data-v-6bb88f18]{display:flex;align-items:center;gap:.65rem;padding:.7rem 1rem;font-size:.85rem;color:#334155;border-bottom:1px solid #e2e8f0;transition:background .1s}.pre-gen-modules li[data-v-6bb88f18]:last-child{border-bottom:none}.pre-gen-modules li[data-v-6bb88f18]:hover{background:#f1f5f9}.pre-gen-mod-num[data-v-6bb88f18]{font-weight:700;font-size:.7rem;color:#2563eb;background:#dbeafe;padding:.2rem .55rem;border-radius:5px;flex-shrink:0;letter-spacing:.02em}.pre-gen-mod-title[data-v-6bb88f18]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pre-gen-mod-slides[data-v-6bb88f18]{margin-left:auto;font-size:.75rem;color:#94a3b8;flex-shrink:0;font-weight:500}.btn-generate-hero[data-v-6bb88f18]{width:100%;padding:.9rem 2rem;background:#2563eb;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s,transform .1s,box-shadow .15s;box-shadow:0 2px 8px #2563eb40}.btn-generate-hero[data-v-6bb88f18]:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 14px #2563eb4d}.btn-generate-hero[data-v-6bb88f18]:active{transform:translateY(0);box-shadow:0 1px 4px #2563eb33}.generating-view[data-v-6bb88f18]{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem;background:#f8fafc}.gen-card[data-v-6bb88f18]{max-width:500px;width:100%;text-align:center}.gen-title[data-v-6bb88f18]{font-size:1.3rem;font-weight:700;color:#1e293b;margin:0 0 1.5rem}.gen-progress-bar-track[data-v-6bb88f18]{height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden;margin-bottom:1rem}.gen-progress-bar-fill[data-v-6bb88f18]{height:100%;background:linear-gradient(90deg,#2563eb,#3b82f6);border-radius:6px;transition:width .4s ease}.gen-status[data-v-6bb88f18]{font-size:.9rem;color:#475569;margin:0 0 .35rem;min-height:1.4em}.gen-counter[data-v-6bb88f18]{font-size:.85rem;color:#94a3b8;margin:0}.top-bar[data-v-6bb88f18]{padding:.75rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#fff;flex-shrink:0;display:flex;align-items:center;gap:1.5rem}.btn-generate[data-v-6bb88f18]{padding:.5rem 1rem;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s}.btn-generate[data-v-6bb88f18]:hover:not(:disabled){background:#e2e8f0;color:#1e293b}.btn-generate[data-v-6bb88f18]:disabled{opacity:.6;cursor:not-allowed}.regen-wrapper[data-v-6bb88f18]{position:relative}.regen-panel[data-v-6bb88f18]{position:absolute;top:calc(100% + 6px);left:0;width:320px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:14px;box-shadow:0 4px 20px #0000001a;z-index:100}.regen-label[data-v-6bb88f18]{display:block;font-size:.8rem;font-weight:600;color:#1e293b;margin-bottom:4px}.regen-density[data-v-6bb88f18]{display:flex;gap:6px;margin-bottom:8px}.regen-density-opt[data-v-6bb88f18]{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 8px;border:1px solid #e2e8f0;border-radius:6px;font-size:.78rem;color:#334155;cursor:pointer;background:#fff;transition:border-color .15s,background .15s}.regen-density-opt[data-v-6bb88f18]:hover{border-color:#93c5fd}.regen-density-opt.active[data-v-6bb88f18]{border-color:#3b82f6;background:#eff6ff;color:#1e40af;font-weight:600}.regen-density-opt input[type=radio][data-v-6bb88f18]{display:none}.regen-textarea[data-v-6bb88f18]{width:100%;padding:8px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:.8rem;color:#1e293b;background:#f8fafc;resize:vertical;min-height:48px;box-sizing:border-box;font-family:inherit}.regen-textarea[data-v-6bb88f18]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f}.regen-check[data-v-6bb88f18]{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:.8rem;color:#334155;cursor:pointer}.regen-check input[type=checkbox][data-v-6bb88f18]{width:14px;height:14px;accent-color:#2563eb}.regen-actions[data-v-6bb88f18]{display:flex;gap:8px;margin-top:12px}.regen-go[data-v-6bb88f18]{flex:1;padding:7px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s}.regen-go[data-v-6bb88f18]:hover{background:#1d4ed8}.regen-cancel[data-v-6bb88f18]{padding:7px 14px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:6px;font-size:.82rem;font-weight:500;cursor:pointer}.regen-cancel[data-v-6bb88f18]:hover{background:#e2e8f0}.progress-section[data-v-6bb88f18]{flex:1;min-width:0}.progress-bar-track[data-v-6bb88f18]{height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden;margin-bottom:.25rem}.progress-bar-fill[data-v-6bb88f18]{height:100%;background:#2563eb;border-radius:3px;transition:width .4s ease}.progress-text[data-v-6bb88f18]{font-size:.78rem;color:#475569}.three-col[data-v-6bb88f18]{display:flex;flex:1;min-height:0;overflow:hidden}.module-sidebar[data-v-6bb88f18]{width:220px;flex-shrink:0;border-right:1px solid #e2e8f0;background:#fafbfc;display:flex;flex-direction:column;transition:width .2s ease}.module-sidebar.collapsed[data-v-6bb88f18]{width:52px}.sidebar-header[data-v-6bb88f18]{display:flex;align-items:center;justify-content:space-between;padding:.75rem;border-bottom:1px solid #e2e8f0}.sidebar-title[data-v-6bb88f18]{font-size:.8rem;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.05em}.btn-collapse[data-v-6bb88f18]{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.2rem;border-radius:4px;display:flex;align-items:center}.btn-collapse[data-v-6bb88f18]:hover{color:#475569;background:#e2e8f0}.module-list[data-v-6bb88f18]{list-style:none;margin:0;padding:.5rem 0;overflow-y:auto;flex:1}.module-item[data-v-6bb88f18]{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem;cursor:pointer;transition:background .1s;font-size:.85rem;color:#475569}.module-item[data-v-6bb88f18]:hover{background:#e2e8f0}.module-item.active[data-v-6bb88f18]{background:#dbeafe;color:#1e40af;font-weight:600}.module-label[data-v-6bb88f18]{display:flex;align-items:center;gap:.4rem;min-width:0;flex:1}.module-num[data-v-6bb88f18]{font-weight:700;font-size:.75rem;color:#64748b;flex-shrink:0}.module-item.active .module-num[data-v-6bb88f18]{color:#1e40af}.module-title[data-v-6bb88f18]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-num-only[data-v-6bb88f18]{font-weight:700;font-size:.8rem;margin:0 auto}.module-check[data-v-6bb88f18]{flex-shrink:0;display:flex;align-items:center}.thumbnails-panel[data-v-6bb88f18]{width:200px;flex-shrink:0;border-right:1px solid #e2e8f0;background:#f8fafc;display:flex;flex-direction:column}.thumbnails-header[data-v-6bb88f18]{display:flex;align-items:center;justify-content:space-between;padding:.75rem;border-bottom:1px solid #e2e8f0}.thumbnails-title[data-v-6bb88f18]{font-size:.8rem;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.05em}.thumbnails-count[data-v-6bb88f18]{font-size:.75rem;color:#94a3b8;background:#e2e8f0;padding:.1rem .4rem;border-radius:10px}.btn-preview[data-v-6bb88f18]{margin-left:auto;background:none;border:1px solid #cbd5e1;border-radius:4px;padding:.2rem .4rem;cursor:pointer;color:#64748b;display:flex;align-items:center;transition:all .15s}.btn-preview[data-v-6bb88f18]:hover{color:#2563eb;border-color:#2563eb;background:#eff6ff}.thumbnails-list[data-v-6bb88f18]{overflow-y:auto;flex:1;padding:.625rem .75rem .75rem .625rem}.thumbnail-item[data-v-6bb88f18]{position:relative;display:flex;align-items:flex-start;gap:.5rem;width:100%;min-width:0;padding:.4rem;margin-bottom:.5rem;cursor:pointer;border-radius:6px;border:2px solid transparent;box-sizing:border-box;transition:all .1s}.thumbnail-item[data-v-6bb88f18]:hover{background:#e2e8f0}.thumbnail-item.active[data-v-6bb88f18]{background:#eff6ff;box-shadow:inset 0 0 0 2px #2563eb}.thumbnail-item.dragging[data-v-6bb88f18]{opacity:.4}.thumbnail-item.drag-over[data-v-6bb88f18]{border-top:2px solid #2563eb}.thumbnail-number[data-v-6bb88f18]{font-size:.7rem;color:#94a3b8;font-weight:600;flex-shrink:0;width:16px;text-align:center;padding-top:.2rem}.thumbnail-preview[data-v-6bb88f18]{flex:1;min-width:0;width:auto;aspect-ratio:16 / 9;height:auto;overflow:hidden;border-radius:4px;background:#fff;border:1px solid #e2e8f0;position:relative}.thumb-bg-layer[data-v-6bb88f18]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:4px;pointer-events:none;z-index:0}.thumbnail-stage[data-v-6bb88f18]{position:absolute;top:0;left:50%;z-index:1;transform:translate(-50%)}.thumbnail-inner[data-v-6bb88f18]{position:absolute;top:0;left:0;transform-origin:top left;width:960px;min-height:700px;box-sizing:border-box;font-family:Source Sans Pro,Helvetica,sans-serif;padding:40px;font-size:36px;line-height:1.3;pointer-events:none}.thumbnail-inner[data-v-6bb88f18] h2{font-size:1.4em;margin:0 0 .5em;color:#222}.thumbnail-inner[data-v-6bb88f18] ul,.thumbnail-inner[data-v-6bb88f18] ol{font-size:.85em;padding-left:1.2em}.thumbnail-inner[data-v-6bb88f18] p{font-size:.85em}.thumbnail-inner[data-v-6bb88f18] aside{display:none}.thumbnail-inner[data-v-6bb88f18] .callout{border-left:5px solid #94a3b8;background:#f8fafc;padding:.5em .8em;margin:.4em 0;border-radius:0 6px 6px 0}.thumbnail-inner[data-v-6bb88f18] .callout-blue{border-left-color:#3b82f6;background:#eff6ff}.thumbnail-inner[data-v-6bb88f18] .callout-green{border-left-color:#22c55e;background:#f0fdf4}.thumbnail-inner[data-v-6bb88f18] .callout-orange{border-left-color:#f59e0b;background:#fffbeb}.thumbnail-inner[data-v-6bb88f18] .callout-yellow{border-left-color:#eab308;background:#fefce8}.thumbnail-inner[data-v-6bb88f18] mark.hl-blue{background:#bfdbfe;padding:1px 4px;border-radius:3px}.thumbnail-inner[data-v-6bb88f18] mark.hl-green{background:#bbf7d0;padding:1px 4px;border-radius:3px}.thumbnail-inner[data-v-6bb88f18] mark.hl-orange{background:#fed7aa;padding:1px 4px;border-radius:3px}.thumbnail-inner[data-v-6bb88f18] mark.hl-pink{background:#fbcfe8;padding:1px 4px;border-radius:3px}.thumbnail-inner[data-v-6bb88f18] mark.hl-yellow{background:#fef08a;padding:1px 4px;border-radius:3px}.thumbnail-inner[data-v-6bb88f18] .text-blue{color:#2563eb}.thumbnail-inner[data-v-6bb88f18] .text-green{color:#16a34a}.thumbnail-inner[data-v-6bb88f18] .text-red{color:#dc2626}.thumbnail-inner[data-v-6bb88f18] .text-orange{color:#ea580c}.thumbnail-inner[data-v-6bb88f18] .text-purple{color:#9333ea}.thumbnail-inner[data-v-6bb88f18] img{max-width:100%;height:auto;border-radius:4px}.thumbnail-inner[data-v-6bb88f18] a{color:#2563eb;text-decoration:underline}.thumbnail-inner[data-v-6bb88f18] table{width:100%;border-collapse:collapse;font-size:.8em}.thumbnail-inner[data-v-6bb88f18] th,.thumbnail-inner[data-v-6bb88f18] td{border:1px solid #cbd5e1;padding:.2em .3em}.thumbnail-inner[data-v-6bb88f18] th{background:#f1f5f9;font-weight:600}.thumbnail-inner[data-v-6bb88f18] .emoji-inline{display:inline;vertical-align:middle;line-height:1}.thumbnail-inner[data-v-6bb88f18] .emoji-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;padding:.15em;line-height:1;vertical-align:middle}.thumbnail-inner[data-v-6bb88f18] .emoji-sm{font-size:1em}.thumbnail-inner[data-v-6bb88f18] .emoji-md{font-size:1.4em}.thumbnail-inner[data-v-6bb88f18] .emoji-lg{font-size:2em}.thumbnail-inner[data-v-6bb88f18] .emoji-xl{font-size:3em}.thumbnail-inner[data-v-6bb88f18] .emoji-badge-blue{background:#dbeafe}.thumbnail-inner[data-v-6bb88f18] .emoji-badge-green{background:#dcfce7}.thumbnail-inner[data-v-6bb88f18] .emoji-badge-orange{background:#fed7aa}.thumbnail-inner[data-v-6bb88f18] .emoji-badge-pink{background:#fce7f3}.thumbnail-inner[data-v-6bb88f18] .emoji-badge-yellow{background:#fef9c3}.thumbnail-inner[data-v-6bb88f18] .emoji-badge-purple{background:#f3e8ff}.editor-panel[data-v-6bb88f18]{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.editor-header-bar[data-v-6bb88f18]{display:flex;align-items:center;gap:1rem;padding:.6rem 1rem;border-bottom:1px solid #e2e8f0;background:#fff;flex-shrink:0}.editor-slide-title[data-v-6bb88f18]{font-size:.95rem;font-weight:600;color:#1e293b}.editor-slide-num[data-v-6bb88f18]{font-size:.8rem;color:#94a3b8}.editor-actions[data-v-6bb88f18]{margin-left:auto;display:flex;align-items:center;gap:.75rem}.unsaved-badge[data-v-6bb88f18]{font-size:.75rem;color:#d97706;font-weight:500}.autosave-toggle[data-v-6bb88f18]{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:.75rem;color:#6b7280;-webkit-user-select:none;user-select:none}.autosave-toggle input[type=checkbox][data-v-6bb88f18]{margin:0;cursor:pointer}.autosave-label[data-v-6bb88f18]{white-space:nowrap}.thumbnail-dirty-dot[data-v-6bb88f18]{position:absolute;top:4px;right:4px;width:8px;height:8px;background:#d97706;border-radius:50%;z-index:2}.btn-save[data-v-6bb88f18]{padding:.35rem 1rem;background:#16a34a;color:#fff;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-save[data-v-6bb88f18]:hover:not(:disabled){background:#15803d}.btn-save[data-v-6bb88f18]:disabled{opacity:.5;cursor:not-allowed}.format-toolbar[data-v-6bb88f18]{display:flex;align-items:center;gap:2px;padding:.35rem .75rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-shrink:0;flex-wrap:wrap}.tb-btn[data-v-6bb88f18]{padding:.3rem .5rem;background:none;border:1px solid transparent;border-radius:4px;font-size:.8rem;color:#475569;cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:28px;height:28px;transition:all .1s}.tb-btn[data-v-6bb88f18]:hover{background:#e2e8f0;border-color:#cbd5e1;color:#1e293b}.tb-btn-active[data-v-6bb88f18]{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.tb-sep[data-v-6bb88f18]{width:1px;height:18px;background:#e2e8f0;margin:0 4px}.tb-dropdown-wrap[data-v-6bb88f18]{position:relative}.tb-dropdown[data-v-6bb88f18]{position:absolute;top:100%;left:0;margin-top:4px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001f;padding:.5rem;z-index:100;min-width:140px}.tb-dropdown-wide[data-v-6bb88f18]{min-width:160px}.color-swatches[data-v-6bb88f18]{display:flex;gap:6px;margin-bottom:.4rem}.color-swatch[data-v-6bb88f18]{width:24px;height:24px;border-radius:4px;border:2px solid transparent;cursor:pointer;transition:all .1s}.color-swatch[data-v-6bb88f18]:hover{border-color:#475569;transform:scale(1.15)}.dropdown-action[data-v-6bb88f18]{display:block;width:100%;padding:.3rem .4rem;background:none;border:none;border-top:1px solid #f1f5f9;font-size:.75rem;color:#64748b;cursor:pointer;text-align:left;margin-top:.25rem;border-radius:4px}.dropdown-action[data-v-6bb88f18]:hover{background:#f1f5f9;color:#1e293b}.callout-option[data-v-6bb88f18]{display:flex;align-items:center;gap:.5rem;width:100%;padding:.4rem .5rem;background:none;border:none;border-radius:4px;font-size:.82rem;color:#334155;cursor:pointer;text-align:left}.callout-option[data-v-6bb88f18]:hover{background:#f1f5f9}.callout-option-bar[data-v-6bb88f18]{width:4px;height:18px;border-radius:2px;flex-shrink:0}.callout-option-label[data-v-6bb88f18]{flex:1}.slide-canvas-wrapper[data-v-6bb88f18]{flex:1;min-height:0;background:#e2e8f0;display:flex;align-items:center;justify-content:center;padding:1rem 1.5rem;overflow:hidden}.slide-canvas-stage[data-v-6bb88f18]{position:relative;flex:none;max-width:100%;max-height:100%}.slide-editable-wrap[data-v-6bb88f18]{position:absolute;top:0;left:0;box-sizing:border-box;background:#fff;border-radius:6px;box-shadow:0 2px 12px #0000001a;overflow:hidden;transform-origin:top left;will-change:transform}.slide-editable-wrap[data-v-6bb88f18]:focus-within{box-shadow:0 2px 12px #0000001a,0 0 0 2px #93c5fd}.slide-bg-layer[data-v-6bb88f18]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:6px;pointer-events:none;z-index:0}.slide-editable[data-v-6bb88f18]{position:relative;z-index:1;width:100%;min-height:700px;background:transparent;padding:2.5rem 3rem;box-sizing:border-box;font-family:Source Sans Pro,Helvetica,sans-serif;font-size:1rem;line-height:1.6;color:#1e293b;outline:none;cursor:text}.slide-editable[data-v-6bb88f18] h2{font-size:1.5em;font-weight:700;margin:0 0 .6em;color:#1e293b}.slide-editable[data-v-6bb88f18] h3{font-size:1.2em;font-weight:600;margin:0 0 .5em;color:#334155}.slide-editable[data-v-6bb88f18] p{margin:0 0 .6em}.slide-editable[data-v-6bb88f18] ul,.slide-editable[data-v-6bb88f18] ol{margin:0 0 .6em;padding-left:1.5em}.slide-editable[data-v-6bb88f18] li{margin-bottom:.3em}.slide-editable[data-v-6bb88f18] blockquote{margin:0 0 .6em;padding:.5em 1em;border-left:4px solid #2563eb;background:#f1f5f9;color:#475569;font-style:italic}.slide-editable[data-v-6bb88f18] pre{margin:0 0 .6em;padding:.75em 1em;background:#1e293b;color:#e2e8f0;border-radius:6px;font-family:SF Mono,Fira Code,monospace;font-size:.85em;overflow-x:auto}.slide-editable[data-v-6bb88f18] code{font-family:SF Mono,Fira Code,monospace;background:#f1f5f9;padding:.15em .35em;border-radius:3px;font-size:.9em}.slide-editable[data-v-6bb88f18] pre code{background:none;padding:0}.slide-editable[data-v-6bb88f18] .slide-columns{display:grid;gap:1em;margin:.6em 0;border:1px dashed #cbd5e1;border-radius:6px;padding:8px}.slide-editable[data-v-6bb88f18] .slide-columns[data-cols="2"]{grid-template-columns:1fr 1fr}.slide-editable[data-v-6bb88f18] .slide-columns[data-cols="3"]{grid-template-columns:1fr 1fr 1fr}.slide-editable[data-v-6bb88f18] .slide-columns[data-cols="4"]{grid-template-columns:1fr 1fr 1fr 1fr}.slide-editable[data-v-6bb88f18] .slide-col{min-height:3em;padding:8px;border:1px dashed #e2e8f0;border-radius:4px;background:#f8fafc80}.slide-editable[data-v-6bb88f18] .slide-col:focus-within{border-color:#93c5fd;background:#eff6ff80}.slide-editable[data-v-6bb88f18] .callout{border-left:5px solid #94a3b8;background:#f8fafc;padding:.8em 1em;margin:.6em 0;border-radius:0 6px 6px 0}.slide-editable[data-v-6bb88f18] .callout>strong:first-child{display:block;margin-bottom:.3em;font-size:1.05em}.slide-editable[data-v-6bb88f18] .callout p{margin:.3em 0}.slide-editable[data-v-6bb88f18] .callout-blue{border-left-color:#3b82f6;background:#eff6ff}.slide-editable[data-v-6bb88f18] .callout-green{border-left-color:#22c55e;background:#f0fdf4}.slide-editable[data-v-6bb88f18] .callout-orange{border-left-color:#f59e0b;background:#fffbeb}.slide-editable[data-v-6bb88f18] .callout-yellow{border-left-color:#eab308;background:#fefce8}.slide-editable[data-v-6bb88f18] mark.hl-blue{background:#bfdbfe;padding:1px 4px;border-radius:3px}.slide-editable[data-v-6bb88f18] mark.hl-green{background:#bbf7d0;padding:1px 4px;border-radius:3px}.slide-editable[data-v-6bb88f18] mark.hl-orange{background:#fed7aa;padding:1px 4px;border-radius:3px}.slide-editable[data-v-6bb88f18] mark.hl-pink{background:#fbcfe8;padding:1px 4px;border-radius:3px}.slide-editable[data-v-6bb88f18] mark.hl-yellow{background:#fef08a;padding:1px 4px;border-radius:3px}.slide-editable[data-v-6bb88f18] .text-blue{color:#2563eb}.slide-editable[data-v-6bb88f18] .text-green{color:#16a34a}.slide-editable[data-v-6bb88f18] .text-red{color:#dc2626}.slide-editable[data-v-6bb88f18] .text-orange{color:#ea580c}.slide-editable[data-v-6bb88f18] .text-purple{color:#9333ea}.slide-editable[data-v-6bb88f18] img{max-width:100%;height:auto;border-radius:4px;margin:.5em 0}.notes-section[data-v-6bb88f18]{border-top:1px solid #e2e8f0;flex-shrink:0;display:flex;flex-direction:column;position:relative;overflow:hidden}.notes-resize-handle[data-v-6bb88f18]{position:absolute;top:-3px;left:0;right:0;height:6px;cursor:ns-resize;z-index:5}.notes-resize-handle[data-v-6bb88f18]:hover{background:#3b82f6;opacity:.3}.notes-header[data-v-6bb88f18]{padding:.4rem 1rem;font-size:.78rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;background:#f8fafc;border-bottom:1px solid #e2e8f0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;-webkit-user-select:none;user-select:none}.notes-header[data-v-6bb88f18]:hover{background:#f1f5f9}.notes-header-right[data-v-6bb88f18]{display:flex;align-items:center;gap:.5rem}.notes-edit-link[data-v-6bb88f18]{background:none;border:none;color:#2563eb;font-size:.75rem;font-weight:500;cursor:pointer;text-transform:none;letter-spacing:0;padding:.15rem .4rem;border-radius:3px}.notes-edit-link[data-v-6bb88f18]:hover{background:#eff6ff;text-decoration:underline}.notes-chevron[data-v-6bb88f18]{color:#94a3b8;transition:transform .15s ease}.notes-chevron.collapsed[data-v-6bb88f18]{transform:rotate(-90deg)}.notes-accordion[data-v-6bb88f18]{flex:1;min-height:0;overflow-y:auto;background:#fff}.sea-accordion-item[data-v-6bb88f18]{border-bottom:1px solid #f1f5f9}.sea-accordion-item[data-v-6bb88f18]:last-child{border-bottom:none}.sea-accordion-header[data-v-6bb88f18]{display:flex;align-items:center;justify-content:space-between;padding:.4rem 1rem;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fafbfc}.sea-accordion-header[data-v-6bb88f18]:hover{background:#f1f5f9}.sea-accordion-label[data-v-6bb88f18]{font-size:.78rem;font-weight:600;color:#6366f1;text-transform:uppercase;letter-spacing:.04em}.sea-accordion-chevron[data-v-6bb88f18]{font-size:.7rem;color:#94a3b8;transition:transform .15s ease}.sea-accordion-chevron.open[data-v-6bb88f18]{transform:rotate(90deg)}.sea-accordion-body[data-v-6bb88f18]{padding:.5rem 1rem .75rem}.sea-field[data-v-6bb88f18]{margin-bottom:.5rem}.sea-field[data-v-6bb88f18]:last-child{margin-bottom:0}.sea-field-label[data-v-6bb88f18]{display:block;font-size:.7rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.15rem}.sea-field-text[data-v-6bb88f18]{font-size:.8rem;line-height:1.5;color:#475569;white-space:pre-wrap}.sea-field-delivery[data-v-6bb88f18]{max-height:200px;overflow-y:auto}.sea-md[data-v-6bb88f18] ol,.sea-md[data-v-6bb88f18] ul{margin:.15em 0;padding-left:1.4em}.sea-md[data-v-6bb88f18] li{margin-bottom:.1em}.sea-md[data-v-6bb88f18] strong{font-weight:600}.sea-md[data-v-6bb88f18] em{font-style:italic}.sea-md[data-v-6bb88f18] code{background:#f1f5f9;padding:.1em .3em;border-radius:3px;font-size:.9em}.sea-md[data-v-6bb88f18] br:last-child{display:none}.sea-md[data-v-6bb88f18] .citation{color:#6366f1;font-size:.75em;font-weight:700;cursor:help;vertical-align:super;line-height:1;padding:0 1px;border-bottom:1px dotted #6366f1}.sea-field-empty[data-v-6bb88f18]{font-size:.8rem;color:#94a3b8;font-style:italic;padding:.25rem 0}.slide-editable[data-v-6bb88f18] a{color:#2563eb;text-decoration:underline;cursor:pointer}.slide-editable[data-v-6bb88f18] table{width:100%;border-collapse:collapse;margin:.8em 0;font-size:.9em}.slide-editable[data-v-6bb88f18] th,.slide-editable[data-v-6bb88f18] td{border:1px solid #cbd5e1;padding:.4em .6em;text-align:left;min-width:40px}.slide-editable[data-v-6bb88f18] th{background:#f1f5f9;font-weight:600}.slide-editable[data-v-6bb88f18] .emoji-inline{display:inline;vertical-align:middle;line-height:1}.slide-editable[data-v-6bb88f18] .emoji-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;padding:.15em;line-height:1;vertical-align:middle}.slide-editable[data-v-6bb88f18] .emoji-sm{font-size:1em}.slide-editable[data-v-6bb88f18] .emoji-md{font-size:1.4em}.slide-editable[data-v-6bb88f18] .emoji-lg{font-size:2em}.slide-editable[data-v-6bb88f18] .emoji-xl{font-size:3em}.slide-editable[data-v-6bb88f18] .emoji-badge-blue{background:#dbeafe}.slide-editable[data-v-6bb88f18] .emoji-badge-green{background:#dcfce7}.slide-editable[data-v-6bb88f18] .emoji-badge-orange{background:#fed7aa}.slide-editable[data-v-6bb88f18] .emoji-badge-pink{background:#fce7f3}.slide-editable[data-v-6bb88f18] .emoji-badge-yellow{background:#fef9c3}.slide-editable[data-v-6bb88f18] .emoji-badge-purple{background:#f3e8ff}.tb-dropdown-table[data-v-6bb88f18]{padding:.5rem!important}.table-grid[data-v-6bb88f18]{display:flex;flex-direction:column;gap:2px}.table-grid-row[data-v-6bb88f18]{display:flex;gap:2px}.table-grid-cell[data-v-6bb88f18]{width:20px;height:20px;border:1px solid #cbd5e1;border-radius:2px;cursor:pointer;background:#fff}.table-grid-cell.active[data-v-6bb88f18]{background:#bfdbfe;border-color:#3b82f6}.table-grid-label[data-v-6bb88f18]{text-align:center;font-size:.72rem;color:#64748b;margin-top:4px}.tb-dropdown-emoji[data-v-6bb88f18]{min-width:280px;max-width:320px;max-height:400px;display:flex;flex-direction:column}.emoji-search[data-v-6bb88f18]{width:100%;padding:.35rem .5rem;border:1px solid #e2e8f0;border-radius:5px;font-size:.8rem;outline:none;margin-bottom:.4rem;box-sizing:border-box}.emoji-search[data-v-6bb88f18]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.emoji-controls[data-v-6bb88f18]{display:flex;flex-direction:column;gap:.3rem;padding-bottom:.4rem;border-bottom:1px solid #f1f5f9;margin-bottom:.4rem}.emoji-size-bar[data-v-6bb88f18],.emoji-badge-bar[data-v-6bb88f18]{display:flex;align-items:center;gap:4px}.emoji-control-label[data-v-6bb88f18]{font-size:.7rem;color:#94a3b8;min-width:34px;font-weight:500}.emoji-size-btn[data-v-6bb88f18]{padding:.15rem .4rem;border:1px solid #e2e8f0;border-radius:4px;background:#fff;font-size:.72rem;font-weight:600;color:#64748b;cursor:pointer;transition:all .1s}.emoji-size-btn[data-v-6bb88f18]:hover{background:#f1f5f9;border-color:#cbd5e1}.emoji-size-btn.active[data-v-6bb88f18]{background:#dbeafe;border-color:#93c5fd;color:#1e40af}.emoji-badge-swatch[data-v-6bb88f18]{width:20px;height:20px;display:flex;align-items:center;justify-content:center}.emoji-badge-swatch.active[data-v-6bb88f18]{border-color:#475569;transform:scale(1.15)}.emoji-categories[data-v-6bb88f18]{overflow-y:auto;max-height:260px}.emoji-cat-label[data-v-6bb88f18]{font-size:.68rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;padding:.3rem 0 .15rem}.emoji-grid[data-v-6bb88f18]{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:.3rem}.emoji-cell[data-v-6bb88f18]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;background:none;border:1px solid transparent;border-radius:4px;cursor:pointer;transition:all .1s;padding:0}.emoji-cell[data-v-6bb88f18]:hover{background:#f1f5f9;border-color:#e2e8f0;transform:scale(1.15)}.emoji-no-results[data-v-6bb88f18]{padding:1rem;text-align:center;font-size:.8rem;color:#94a3b8}.ctx-swatch[data-v-6bb88f18]{display:inline-block;width:14px;height:14px;border-radius:3px;border:1px solid #cbd5e1;vertical-align:middle;margin-right:6px}.link-modal-overlay[data-v-6bb88f18]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:10000}.link-modal[data-v-6bb88f18]{background:#fff;border-radius:8px;padding:1.25rem;width:380px;box-shadow:0 8px 30px #00000026}.link-modal-header[data-v-6bb88f18]{font-size:.95rem;font-weight:600;color:#1e293b;margin-bottom:.75rem}.link-field[data-v-6bb88f18]{display:block;margin-bottom:.6rem}.link-field span[data-v-6bb88f18]{display:block;font-size:.78rem;font-weight:500;color:#64748b;margin-bottom:.2rem}.link-field input[data-v-6bb88f18]{width:100%;padding:.4rem .6rem;border:1px solid #cbd5e1;border-radius:5px;font-size:.85rem;outline:none}.link-field input[data-v-6bb88f18]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.link-modal-actions[data-v-6bb88f18]{display:flex;align-items:center;gap:.5rem;margin-top:.75rem}.link-btn[data-v-6bb88f18]{padding:.35rem .75rem;border-radius:5px;font-size:.8rem;font-weight:500;border:1px solid #cbd5e1;cursor:pointer;background:#fff;color:#475569}.link-btn-apply[data-v-6bb88f18]{background:#2563eb;color:#fff;border-color:#2563eb}.link-btn-danger[data-v-6bb88f18]{color:#dc2626;border-color:#fca5a5}.link-btn-danger[data-v-6bb88f18]:hover{background:#fef2f2}.link-checkbox[data-v-6bb88f18]{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:#475569;cursor:pointer;margin-bottom:.2rem}.link-checkbox input[type=checkbox][data-v-6bb88f18]{accent-color:#2563eb}.link-modal-wide[data-v-6bb88f18]{width:480px}.link-browse-btn[data-v-6bb88f18]{display:block;width:100%;padding:.4rem;margin-top:.5rem;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:5px;color:#475569;font-size:.8rem;cursor:pointer;transition:all .15s}.link-browse-btn[data-v-6bb88f18]:hover{background:#f1f5f9;border-color:#94a3b8}.link-resource-browser[data-v-6bb88f18]{margin-top:.5rem;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.link-resource-filter[data-v-6bb88f18]{width:100%;padding:.4rem .6rem;border:none;border-bottom:1px solid #e2e8f0;font-size:.8rem;outline:none;box-sizing:border-box}.link-resource-filter[data-v-6bb88f18]:focus{background:#f8fafc}.link-resource-tree[data-v-6bb88f18]{max-height:240px;overflow-y:auto;padding:.3rem}.link-resource-loading[data-v-6bb88f18],.link-resource-empty[data-v-6bb88f18]{padding:1rem;text-align:center;font-size:.8rem;color:#94a3b8}.lr-folder[data-v-6bb88f18]{margin-bottom:2px}.lr-nested[data-v-6bb88f18]{margin-left:1rem}.lr-folder-name[data-v-6bb88f18]{font-size:.78rem;font-weight:600;color:#64748b;padding:.2rem .4rem}.lr-folder-contents[data-v-6bb88f18]{margin-left:.4rem;border-left:1px solid #f1f5f9;padding-left:.4rem}.lr-file[data-v-6bb88f18]{display:flex;align-items:center;gap:.4rem;padding:.3rem .5rem;border-radius:4px;cursor:pointer;font-size:.78rem;transition:background .1s}.lr-file[data-v-6bb88f18]:hover{background:#f1f5f9}.lr-file.active[data-v-6bb88f18]{background:#dbeafe;border:1px solid #93c5fd}.lr-file-icon[data-v-6bb88f18]{flex-shrink:0;font-size:.9rem}.lr-file-name[data-v-6bb88f18]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1e293b}.lr-file-type[data-v-6bb88f18]{flex-shrink:0;font-size:.68rem;color:#94a3b8;text-transform:uppercase}.no-slide-selected[data-v-6bb88f18]{display:flex;align-items:center;justify-content:center;flex:1;color:#94a3b8;font-size:.95rem}.modal-overlay[data-v-6bb88f18]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-6bb88f18]{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;width:90%;max-width:640px;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-6bb88f18]{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0}.modal-title[data-v-6bb88f18]{font-size:1.05rem;font-weight:600;color:#1e293b;margin:0}.modal-close[data-v-6bb88f18]{background:none;border:none;font-size:1.4rem;color:#94a3b8;cursor:pointer;padding:0 .25rem;line-height:1}.modal-close[data-v-6bb88f18]:hover{color:#475569}.modal-tabs[data-v-6bb88f18]{display:flex;border-bottom:1px solid #e2e8f0;padding:0 1.25rem}.modal-tab[data-v-6bb88f18]{padding:.6rem 1rem;background:none;border:none;border-bottom:2px solid transparent;font-size:.85rem;color:#64748b;cursor:pointer;font-weight:500;margin-bottom:-1px}.modal-tab[data-v-6bb88f18]:hover{color:#1e293b}.modal-tab.active[data-v-6bb88f18]{color:#2563eb;border-bottom-color:#2563eb}.modal-body[data-v-6bb88f18]{padding:1.25rem;overflow-y:auto;overflow-x:hidden;flex:1}.modal-loading[data-v-6bb88f18],.modal-empty[data-v-6bb88f18]{text-align:center;color:#94a3b8;font-size:.9rem;padding:2rem 0}.image-grid[data-v-6bb88f18]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.image-grid-item[data-v-6bb88f18]{cursor:pointer;border:2px solid #e2e8f0;border-radius:8px;padding:.35rem;transition:border-color .15s,box-shadow .15s;min-width:0;overflow:hidden}.image-grid-item[data-v-6bb88f18]:hover{border-color:#3b82f6;background:#eff6ff}.image-grid-thumb[data-v-6bb88f18]{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:4px;background:#f1f5f9}.image-grid-placeholder[data-v-6bb88f18]{width:100%;aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border-radius:4px;font-size:.7rem;color:#94a3b8;font-weight:600}.image-grid-name[data-v-6bb88f18]{font-size:.72rem;color:#475569;margin-top:.3rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-tab[data-v-6bb88f18]{display:flex;flex-direction:column;align-items:center;padding:1rem 0}.upload-drop-area[data-v-6bb88f18]{width:100%;max-width:400px;padding:2.5rem 2rem;border:2px dashed #cbd5e1;border-radius:10px;text-align:center;cursor:pointer;color:#94a3b8;transition:all .15s}.upload-drop-area[data-v-6bb88f18]:hover{border-color:#2563eb;background:#eff6ff;color:#2563eb}.upload-drop-area p[data-v-6bb88f18]{margin:.75rem 0 0;font-size:.9rem}.slide-canvas-wrapper[data-v-6bb88f18]{position:relative}.slide-editable[data-v-6bb88f18] img.img-selected{outline:2px solid #2563eb;outline-offset:2px;border-radius:4px}.img-resize-bar[data-v-6bb88f18]{position:absolute;z-index:50;display:flex;align-items:center;gap:2px;background:#1e293b;border-radius:6px;padding:3px 4px;box-shadow:0 2px 8px #0003}.img-size-btn[data-v-6bb88f18]{padding:3px 8px;background:none;border:none;border-radius:4px;font-size:.72rem;font-weight:600;color:#cbd5e1;cursor:pointer;white-space:nowrap;display:flex;align-items:center;justify-content:center}.img-size-btn[data-v-6bb88f18]:hover{background:#334155;color:#fff}.img-size-del[data-v-6bb88f18]{color:#f87171}.img-size-del[data-v-6bb88f18]:hover{background:#7f1d1d;color:#fca5a5}.img-size-sep[data-v-6bb88f18]{width:1px;height:14px;background:#475569;margin:0 2px}.img-resize-handle[data-v-6bb88f18]{position:absolute;z-index:51;width:12px;height:12px;background:#2563eb;border:2px solid #fff;border-radius:2px;cursor:nwse-resize;box-shadow:0 1px 3px #0000004d}.ctx-menu[data-v-6bb88f18]{position:fixed;z-index:2000;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 16px #00000026;padding:4px 0;min-width:180px;font-size:.82rem}.ctx-item[data-v-6bb88f18]{display:flex;align-items:center;width:100%;padding:6px 12px;background:none;border:none;cursor:pointer;color:#334155;font-size:.82rem;text-align:left;position:relative}.ctx-item[data-v-6bb88f18]:hover{background:#f1f5f9}.ctx-label[data-v-6bb88f18]{flex:1}.ctx-shortcut[data-v-6bb88f18]{font-size:.72rem;color:#94a3b8;margin-left:1.5rem}.ctx-arrow[data-v-6bb88f18]{font-size:.7rem;color:#94a3b8;margin-left:auto}.ctx-sep[data-v-6bb88f18]{height:1px;background:#e2e8f0;margin:3px 0}.ctx-has-sub[data-v-6bb88f18]{position:relative}.ctx-submenu[data-v-6bb88f18]{position:absolute;left:100%;top:-4px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001f;padding:8px;min-width:140px;z-index:2001}.ctx-swatches[data-v-6bb88f18]{display:flex;gap:6px;margin-bottom:6px}.ctx-sub-action[data-v-6bb88f18]{display:block;width:100%;padding:4px 6px;background:none;border:none;border-top:1px solid #f1f5f9;font-size:.72rem;color:#64748b;cursor:pointer;text-align:left;border-radius:4px;margin-top:2px}.ctx-sub-action[data-v-6bb88f18]:hover{background:#f1f5f9;color:#1e293b}.ctx-danger .ctx-label[data-v-6bb88f18],.ctx-sub-action.ctx-danger[data-v-6bb88f18]{color:#dc2626}.ctx-callout-opt[data-v-6bb88f18]{display:flex;align-items:center;gap:6px;width:100%;padding:5px 6px;background:none;border:none;border-radius:4px;font-size:.8rem;color:#334155;cursor:pointer;text-align:left}.ctx-callout-opt[data-v-6bb88f18]:hover{background:#f1f5f9}.preview-overlay[data-v-6bb88f18]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:2000;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}.preview-window[data-v-6bb88f18]{position:relative;width:min(92vw,1320px,calc(92vh * (960 / 700)));height:min(92vh,962.5px,calc(92vw * (700 / 960)));display:flex;overflow:hidden;border-radius:12px}.preview-close[data-v-6bb88f18]{position:absolute;top:10px;right:10px;width:28px;height:28px;background:#1e293b;border:2px solid #475569;border-radius:50%;color:#e2e8f0;font-size:1.1rem;cursor:pointer;z-index:2001;line-height:1;display:flex;align-items:center;justify-content:center}.preview-close[data-v-6bb88f18]:hover{background:#dc2626;border-color:#dc2626;color:#fff}.preview-iframe[data-v-6bb88f18]{flex:1;min-width:0;min-height:0;border:none;border-radius:12px;display:block;background:#0f172a;box-shadow:0 20px 60px #0006}.enhancements-panel[data-v-6bb88f18]{border-top:1px solid #e2e8f0;background:#fafbfc}.enhancements-header[data-v-6bb88f18]{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;cursor:pointer;font-size:.82em;font-weight:600;color:#475569;-webkit-user-select:none;user-select:none}.enhancements-header[data-v-6bb88f18]:hover{background:#f1f5f9}.enhancements-body[data-v-6bb88f18]{padding:8px 12px}.enhance-buttons[data-v-6bb88f18]{display:flex;gap:6px;flex-wrap:wrap}.enhance-btn[data-v-6bb88f18]{padding:4px 10px;font-size:.75em;font-weight:600;border:1px solid #cbd5e1;border-radius:6px;background:#fff;cursor:pointer;color:#334155}.enhance-btn[data-v-6bb88f18]:hover{background:#f1f5f9;border-color:#94a3b8}.plugin-list[data-v-6bb88f18]{margin-top:8px}.plugin-item[data-v-6bb88f18]{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;font-size:.8em}.plugin-item[data-v-6bb88f18]:hover{background:#f1f5f9}.plugin-icon[data-v-6bb88f18]{font-size:1.1em}.plugin-label[data-v-6bb88f18]{flex:1;color:#334155}.plugin-insert-btn[data-v-6bb88f18]{font-size:.75em;padding:2px 6px;border:1px solid #86efac;border-radius:4px;background:#f0fdf4;cursor:pointer;color:#16a34a}.plugin-insert-btn[data-v-6bb88f18]:hover{background:#dcfce7}.plugin-edit-btn[data-v-6bb88f18]{font-size:.75em;padding:2px 6px;border:1px solid #cbd5e1;border-radius:4px;background:#fff;cursor:pointer;color:#475569}.plugin-edit-btn[data-v-6bb88f18]:hover{background:#f1f5f9}.plugin-del-btn[data-v-6bb88f18]{font-size:1em;padding:0 4px;border:none;background:none;cursor:pointer;color:#94a3b8}.plugin-del-btn[data-v-6bb88f18]:hover{color:#ef4444}.plugin-empty[data-v-6bb88f18]{font-size:.75em;color:#94a3b8;padding:4px 0}.modal-box[data-v-6bb88f18]{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;max-width:90vw}.modal-header[data-v-6bb88f18]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0}.modal-header h3[data-v-6bb88f18]{margin:0;font-size:1em}.modal-body[data-v-6bb88f18]{padding:16px 20px}.modal-footer[data-v-6bb88f18]{display:flex;gap:8px;justify-content:flex-end;padding:12px 20px;border-top:1px solid #e2e8f0}.modal-label[data-v-6bb88f18]{display:block;font-size:.8em;font-weight:600;color:#475569;margin-bottom:4px}.modal-input[data-v-6bb88f18]{width:100%;padding:7px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:.85em;background:#fff;box-sizing:border-box}.modal-input[data-v-6bb88f18]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.modal-textarea[data-v-6bb88f18]{width:100%;padding:7px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:.85em;resize:vertical;font-family:inherit;box-sizing:border-box}.modal-textarea[data-v-6bb88f18]:focus{outline:none;border-color:#3b82f6}.modal-checkbox[data-v-6bb88f18]{display:flex;align-items:center;gap:6px;font-size:.8em;color:#475569;margin-top:6px;cursor:pointer}.anim-enhance-btn[data-v-6bb88f18]{margin-top:6px;padding:4px 12px;font-size:.78em;font-weight:500;border:1px solid #c4b5fd;border-radius:6px;background:#f5f3ff;color:#7c3aed;cursor:pointer;transition:all .15s}.anim-enhance-btn[data-v-6bb88f18]:hover:not(:disabled){background:#ede9fe;border-color:#a78bfa}.anim-enhance-btn[data-v-6bb88f18]:disabled{opacity:.5;cursor:not-allowed}.anim-playback[data-v-6bb88f18]{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-items:center}.anim-play-btn[data-v-6bb88f18]{padding:4px 10px;font-size:.78em;font-weight:500;border:1px solid #cbd5e1;border-radius:6px;background:#fff;cursor:pointer;color:#475569;display:flex;align-items:center;gap:4px;transition:all .15s}.anim-play-btn[data-v-6bb88f18]:hover{background:#f1f5f9;border-color:#94a3b8}.anim-play-btn.active[data-v-6bb88f18]{background:#dbeafe;border-color:#3b82f6;color:#1d4ed8}.anim-play-reset[data-v-6bb88f18]{color:#64748b}.anim-play-reset[data-v-6bb88f18]:hover{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.anim-play-gate[data-v-6bb88f18]{font-weight:600}.anim-play-kw[data-v-6bb88f18]{font-size:.85em;color:#94a3b8;font-weight:400;font-style:italic;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.imgseq-slot[data-v-6bb88f18]{border:1px solid #e2e8f0;border-radius:8px;padding:12px;margin-bottom:10px;background:#fafbfc}.imgseq-slot-header[data-v-6bb88f18]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.imgseq-slot-header strong[data-v-6bb88f18]{font-size:.85em;color:#334155}.imgseq-slot-badge[data-v-6bb88f18]{font-size:.7em;background:#dbeafe;color:#1d4ed8;padding:2px 8px;border-radius:10px;font-weight:500}.imgseq-remove-btn[data-v-6bb88f18]{margin-left:auto;background:none;border:none;font-size:1.2em;color:#94a3b8;cursor:pointer;line-height:1}.imgseq-remove-btn[data-v-6bb88f18]:hover{color:#dc2626}.imgseq-thumb-row[data-v-6bb88f18]{display:flex;gap:12px;align-items:flex-start}.imgseq-thumb[data-v-6bb88f18]{width:120px;height:80px;border-radius:6px;border:1px solid #e2e8f0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f1f5f9;flex-shrink:0}.imgseq-thumb img[data-v-6bb88f18]{width:100%;height:100%;object-fit:cover}.imgseq-thumb-placeholder[data-v-6bb88f18]{font-size:.7em;color:#94a3b8}.imgseq-actions[data-v-6bb88f18]{flex:1;min-width:0}.imgseq-action-btn[data-v-6bb88f18]{padding:4px 12px;font-size:.75em;font-weight:500;border:1px solid #cbd5e1;border-radius:5px;background:#fff;cursor:pointer;color:#475569;transition:all .15s}.imgseq-action-btn[data-v-6bb88f18]:hover:not(:disabled){background:#f1f5f9;border-color:#3b82f6;color:#3b82f6}.imgseq-action-btn[data-v-6bb88f18]:disabled{opacity:.5;cursor:not-allowed}.bg-type-tabs[data-v-6bb88f18]{display:flex;gap:4px;margin-bottom:12px}.bg-type-tabs button[data-v-6bb88f18]{padding:5px 12px;font-size:.78em;font-weight:600;border:1px solid #cbd5e1;border-radius:6px;background:#fff;cursor:pointer;color:#475569}.bg-type-tabs button.active[data-v-6bb88f18]{background:#3b82f6;color:#fff;border-color:#3b82f6}.bg-type-tabs button[data-v-6bb88f18]:hover:not(.active){background:#f1f5f9}.bg-controls[data-v-6bb88f18]{margin-top:8px}.bg-preview[data-v-6bb88f18]{height:60px;border-radius:8px;margin-top:8px;border:1px solid #e2e8f0}.bg-image-mode-tabs[data-v-6bb88f18]{display:flex;gap:4px;margin-bottom:8px}.bg-image-mode-tabs button[data-v-6bb88f18]{padding:4px 8px;font-size:.72em;font-weight:600;border:1px solid #cbd5e1;border-radius:5px;background:#fff;cursor:pointer;color:#475569}.bg-image-mode-tabs button.active[data-v-6bb88f18]{background:#3b82f6;color:#fff;border-color:#3b82f6}.bg-image-mode-tabs button[data-v-6bb88f18]:hover:not(.active){background:#f1f5f9}.bg-gen-textarea[data-v-6bb88f18]{resize:vertical;min-height:60px;font-size:.85em}.bg-gen-btn[data-v-6bb88f18]{margin-top:8px;width:100%}.bg-gen-preview[data-v-6bb88f18]{margin-top:8px}.bg-image-grid[data-v-6bb88f18]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:6px}.bg-image-grid-item[data-v-6bb88f18]{border:2px solid #e2e8f0;border-radius:8px;overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s;aspect-ratio:16/10}.bg-grid-pagination[data-v-6bb88f18]{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:8px;font-size:.8rem;color:#475569}.bg-grid-pagination button[data-v-6bb88f18]{width:28px;height:28px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;cursor:pointer;font-size:1rem;color:#334155;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.bg-grid-pagination button[data-v-6bb88f18]:hover:not(:disabled){background:#f1f5f9;border-color:#93c5fd}.bg-grid-pagination button[data-v-6bb88f18]:disabled{opacity:.4;cursor:default}.bg-image-grid-item[data-v-6bb88f18]:hover{border-color:#93c5fd}.bg-image-grid-item.selected[data-v-6bb88f18]{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.bg-image-grid-item img[data-v-6bb88f18]{width:100%;height:100%;object-fit:cover;display:block}.bg-image-placeholder[data-v-6bb88f18]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#94a3b8;font-size:.7em;font-weight:600}.bg-picker-empty[data-v-6bb88f18]{padding:16px;text-align:center;font-size:.8em;color:#94a3b8}.bg-opacity-control[data-v-6bb88f18]{margin-top:12px;padding-top:12px;border-top:1px solid #e2e8f0}.bg-opacity-value[data-v-6bb88f18]{font-size:.82em;font-weight:600;color:#475569;min-width:36px;text-align:right}.pre-gen-options[data-v-6bb88f18]{text-align:left;margin-bottom:1.5rem;padding:1.25rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}.pre-gen-label[data-v-6bb88f18]{display:block;font-size:.85rem;font-weight:600;color:#1e293b;margin-bottom:2px}.pre-gen-sublabel[data-v-6bb88f18]{font-size:.78rem;color:#94a3b8;margin:0 0 8px}.density-options[data-v-6bb88f18]{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.density-option[data-v-6bb88f18]{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s}.density-option[data-v-6bb88f18]:hover{border-color:#93c5fd}.density-option.active[data-v-6bb88f18]{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 2px #3b82f61f}.density-option input[type=radio][data-v-6bb88f18]{margin-top:2px;accent-color:#3b82f6}.density-option-body[data-v-6bb88f18]{display:flex;flex-direction:column;gap:1px}.density-option-title[data-v-6bb88f18]{font-weight:600;font-size:.82rem;color:#1e293b}.density-option-desc[data-v-6bb88f18]{font-size:.75rem;color:#64748b;line-height:1.3}.pre-gen-textarea[data-v-6bb88f18]{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:.82rem;color:#1e293b;background:#fff;resize:vertical;min-height:64px;box-sizing:border-box;font-family:inherit;line-height:1.5}.pre-gen-textarea[data-v-6bb88f18]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61f}.pre-gen-toggles[data-v-6bb88f18]{display:flex;flex-direction:column;gap:8px;margin-top:14px}.pre-gen-toggle-option[data-v-6bb88f18]{padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;transition:border-color .15s,box-shadow .15s}.pre-gen-toggle-option.active[data-v-6bb88f18]{border-color:#93c5fd;box-shadow:0 0 0 2px #3b82f614}.pre-gen-checkbox[data-v-6bb88f18]{display:flex;align-items:flex-start;gap:10px;font-size:.83rem;color:#334155;cursor:pointer;margin:0}.pre-gen-checkbox input[type=checkbox][data-v-6bb88f18]{width:16px;height:16px;accent-color:#2563eb;margin-top:2px;flex-shrink:0}.pre-gen-toggle-title[data-v-6bb88f18]{display:block;font-weight:600;font-size:.83rem;color:#1e293b}.pre-gen-toggle-desc[data-v-6bb88f18]{display:block;font-size:.76rem;color:#94a3b8;margin-top:1px}.pre-gen-hint[data-v-6bb88f18]{margin:6px 0 0 26px;font-size:.75rem;color:#64748b;font-style:italic}.gen-ai-tab[data-v-6bb88f18]{padding:8px 0}.gen-prompt-area[data-v-6bb88f18]{resize:vertical;min-height:70px;font-size:.85em}.gen-ai-btn[data-v-6bb88f18]{margin-top:8px;width:100%}.chart-data-table[data-v-6bb88f18]{overflow-x:auto}.chart-data-table table[data-v-6bb88f18]{width:100%;border-collapse:collapse;font-size:.8em}.chart-data-table th[data-v-6bb88f18],.chart-data-table td[data-v-6bb88f18]{padding:4px;border:1px solid #e2e8f0}.chart-data-table th[data-v-6bb88f18]{background:#f8fafc}.chart-ds-name[data-v-6bb88f18]{width:80px;border:none;background:transparent;font-size:.9em;font-weight:600}.chart-ds-color[data-v-6bb88f18]{width:24px;height:20px;border:none;cursor:pointer;padding:0;vertical-align:middle}.chart-label-input[data-v-6bb88f18],.chart-val-input[data-v-6bb88f18]{width:100%;border:none;background:transparent;text-align:center;font-size:.9em;padding:2px}.chart-label-input[data-v-6bb88f18]{text-align:left}.chart-add-btn[data-v-6bb88f18]{padding:2px 8px;font-size:.75em;border:1px dashed #cbd5e1;border-radius:4px;background:#fff;cursor:pointer;color:#64748b}.chart-add-btn[data-v-6bb88f18]:hover{background:#f1f5f9}.chart-remove-btn[data-v-6bb88f18]{border:none;background:none;cursor:pointer;color:#94a3b8;font-size:1em;padding:0 2px}.chart-remove-btn[data-v-6bb88f18]:hover{color:#ef4444}.math-preview[data-v-6bb88f18]{margin-top:8px;padding:8px 12px;background:#f8fafc;border-radius:6px;font-size:.85em;color:#475569}.audio-file-info[data-v-6bb88f18]{padding:6px 10px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;font-size:.8em;color:#16a34a;margin-bottom:8px}.poll-option-row[data-v-6bb88f18]{display:flex;align-items:center;gap:6px;margin-bottom:4px}[data-v-6bb88f18] .slide-editable .slide-chart,[data-v-6bb88f18] .slide-editable .slide-animation,[data-v-6bb88f18] .slide-editable .slide-poll{margin:8px 0;border:2px dashed #cbd5e1;border-radius:8px;padding:4px;background:#f8fafc;position:relative}[data-v-6bb88f18] .slide-editable .slide-chart:hover,[data-v-6bb88f18] .slide-editable .slide-animation:hover,[data-v-6bb88f18] .slide-editable .slide-poll:hover{border-color:#3b82f6}[data-v-6bb88f18] .slide-editable .slide-chart,[data-v-6bb88f18] .slide-editable .slide-poll{cursor:pointer}[data-v-6bb88f18] .slide-editable .slide-chart.chart-selected,[data-v-6bb88f18] .slide-editable .slide-poll.poll-selected{outline:2px solid #3b82f6;outline-offset:2px;border-color:#3b82f6}[data-v-6bb88f18] .slide-editable .media-embed{margin:8px 0;cursor:pointer}[data-v-6bb88f18] .slide-editable .media-embed.media-selected{outline:2px solid #3b82f6;outline-offset:2px;border-radius:8px}[data-v-6bb88f18] .slide-editable .media-embed iframe,[data-v-6bb88f18] .slide-editable .media-embed video{pointer-events:none}[data-v-6bb88f18] .slide-editable .math-inline{background:#eff6ff;padding:1px 4px;border-radius:3px;font-family:serif;font-style:italic}[data-v-6bb88f18] .slide-editable .math-block{background:#eff6ff;padding:12px;border-radius:6px;text-align:center;font-family:serif;font-style:italic;font-size:1.2em;margin:8px 0}[data-v-6bb88f18] .slide-editable .slide-poll{padding:12px}[data-v-6bb88f18] .slide-editable .poll-question{font-weight:700;font-size:.95em;margin-bottom:8px}[data-v-6bb88f18] .slide-editable .poll-option{padding:6px 10px;margin:4px 0;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:.85em}[data-v-6bb88f18] .slide-editable .poll-option.poll-correct{border-color:#22c55e;background:#f0fdf4}[data-v-6bb88f18] .slide-thumb .slide-chart,[data-v-6bb88f18] .slide-thumb .slide-animation,[data-v-6bb88f18] .slide-thumb .slide-poll{border:1px dashed #cbd5e1;border-radius:4px;padding:2px;margin:2px 0;background:#f8fafc;overflow:hidden}[data-v-6bb88f18] .slide-thumb .slide-chart iframe,[data-v-6bb88f18] .slide-thumb .slide-animation iframe{pointer-events:none}[data-v-6bb88f18] .slide-thumb .math-inline{font-family:serif;font-style:italic}[data-v-6bb88f18] .slide-thumb .math-block{font-family:serif;font-style:italic;text-align:center}.generation-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#00000080;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.generation-overlay-card{background:#fff;border-radius:12px;padding:2rem 2.5rem;max-width:480px;width:90%;text-align:center;box-shadow:0 20px 60px #0000004d}.generation-overlay-card h3{margin:1rem 0 1.25rem;font-size:1.15rem;color:#1e293b}.generation-overlay-spinner{display:inline-block;width:36px;height:36px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:gen-overlay-spin .7s linear infinite}.generation-overlay-progress{margin:1rem 0}.generation-overlay-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:.75rem}.generation-overlay-fill{height:100%;background:#2563eb;border-radius:4px;transition:width .3s ease}.generation-overlay-progress p{font-size:.85rem;color:#475569;margin:.25rem 0}.generation-overlay-count{font-weight:600;color:#2563eb!important}.generation-overlay-hint{font-size:.8rem;color:#94a3b8;margin-top:1rem}@keyframes gen-overlay-spin{to{transform:rotate(360deg)}}.module-pipeline[data-v-24099c91]{display:flex;flex-direction:column;height:100%}.pipeline-header[data-v-24099c91]{padding:16px 24px;border-bottom:1px solid #e2e8f0;background:#fff}.module-name-row[data-v-24099c91]{display:flex;align-items:center;gap:8px;margin-bottom:12px}.module-name[data-v-24099c91]{margin:0;font-size:1.1rem;font-weight:600;color:#1e293b}.module-name-input[data-v-24099c91]{font-size:1.1rem;font-weight:600;color:#1e293b;border:1px solid #2563eb;border-radius:6px;padding:2px 8px;outline:none;box-shadow:0 0 0 2px #2563eb26;flex:1;min-width:0}.btn-edit-name[data-v-24099c91]{background:none;border:none;padding:4px;cursor:pointer;color:#94a3b8;border-radius:4px;display:flex;align-items:center;transition:color .15s}.btn-edit-name[data-v-24099c91]:hover{color:#2563eb}.pipeline-steps[data-v-24099c91]{display:flex;align-items:center;gap:8px}.step-btn[data-v-24099c91]{padding:6px 16px;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;color:#64748b;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s}.step-btn[data-v-24099c91]:hover{background:#f1f5f9}.step-btn.active[data-v-24099c91]{background:#2563eb;color:#fff;border-color:#2563eb}.step-arrow[data-v-24099c91]{color:#94a3b8;font-size:1rem}.pipeline-content[data-v-24099c91]{flex:1;overflow:auto}.presentations-wrapper[data-v-24099c91]{display:flex;flex-direction:column;height:100%}.generate-all-bar[data-v-24099c91]{display:flex;flex-direction:column;gap:.5rem;padding:.75rem 1.5rem;background:#f0f9ff;border-bottom:1px solid #bae6fd}.generate-all-top[data-v-24099c91]{display:flex;align-items:center;gap:.75rem}.generate-all-options[data-v-24099c91]{display:flex;align-items:center;gap:1.25rem}.gen-option[data-v-24099c91]{display:flex;align-items:center;gap:.35rem;font-size:.8rem;color:#475569;cursor:pointer}.gen-option-label[data-v-24099c91]{font-weight:500}.gen-select[data-v-24099c91]{padding:.15rem .4rem;border:1px solid #cbd5e1;border-radius:4px;font-size:.8rem;background:#fff;color:#334155}.gen-select[data-v-24099c91]:focus{outline:none;border-color:#93c5fd}.btn-generate-all[data-v-24099c91]{padding:.4rem 1rem;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.825rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap}.btn-generate-all[data-v-24099c91]:hover:not(:disabled){background:#1d4ed8}.btn-generate-all[data-v-24099c91]:disabled{opacity:.6;cursor:not-allowed}.generate-hint[data-v-24099c91]{color:#64748b;font-size:.8rem}.spinner[data-v-24099c91]{width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-24099c91 .6s linear infinite}@keyframes spin-24099c91{to{transform:rotate(360deg)}}.no-module-selected[data-v-24099c91]{display:flex;align-items:center;justify-content:center;height:100%;color:#94a3b8;font-size:.95rem}.course-builder-layout[data-v-44a2463b]{display:flex;height:100%;min-height:0}.builder-sidebar[data-v-44a2463b]{flex-shrink:0;overflow:hidden}.resize-handle[data-v-44a2463b]{width:5px;cursor:col-resize;background:transparent;flex-shrink:0;position:relative;z-index:10;transition:background .15s}.resize-handle[data-v-44a2463b]:hover,.resize-handle.active[data-v-44a2463b]{background:#93c5fd}.builder-main[data-v-44a2463b]{flex:1;min-width:0;overflow:hidden}.empty-state[data-v-44a2463b]{display:flex;align-items:center;justify-content:center;height:100%;color:#94a3b8;font-size:.95rem}.stale-banner[data-v-f8a7dab3]{display:flex;align-items:flex-start;justify-content:space-between;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem;gap:1rem}.stale-body[data-v-f8a7dab3]{flex:1;min-width:0}.stale-title[data-v-f8a7dab3]{font-weight:600;font-size:.9rem;color:#92400e;margin:0 0 .25rem}.stale-list[data-v-f8a7dab3]{margin:0;padding-left:0;list-style:none;font-size:.85rem}.change[data-v-f8a7dab3]{font-family:monospace;padding:.1rem 0}.added[data-v-f8a7dab3]{color:#166534}.deleted[data-v-f8a7dab3]{color:#991b1b}.dismiss-btn[data-v-f8a7dab3]{background:none;border:1px solid #d97706;color:#d97706;padding:.3rem .8rem;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s}.dismiss-btn[data-v-f8a7dab3]:hover{background:#fef3c7}.syllabus-step[data-v-df3c8f2e]{max-width:960px}.prompt-section[data-v-df3c8f2e]{margin-bottom:2rem}.prompt-section h3[data-v-df3c8f2e]{margin:0 0 .5rem;font-size:1.15rem;color:#1e293b}.prompt-hint[data-v-df3c8f2e]{color:#64748b;font-size:.875rem;margin:0 0 .75rem}.prompt-input[data-v-df3c8f2e]{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.925rem;font-family:inherit;resize:vertical;margin-bottom:.75rem;-moz-tab-size:4;tab-size:4}.prompt-input[data-v-df3c8f2e]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.btn[data-v-df3c8f2e]{padding:.5rem 1.25rem;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem}.btn[data-v-df3c8f2e]:disabled{opacity:.6;cursor:not-allowed}.btn-primary[data-v-df3c8f2e]{background:#2563eb;color:#fff}.btn-primary[data-v-df3c8f2e]:hover:not(:disabled){background:#1d4ed8}.btn-secondary[data-v-df3c8f2e]{background:#f1f5f9;color:#334155;border:1px solid #e2e8f0}.btn-secondary[data-v-df3c8f2e]:hover:not(:disabled){background:#e2e8f0}.btn-lg[data-v-df3c8f2e]{padding:.75rem 2rem;font-size:1rem}.btn-icon[data-v-df3c8f2e]{background:none;border:none;cursor:pointer;padding:.125rem .375rem;color:#94a3b8;font-size:1.1rem;line-height:1;border-radius:3px}.btn-icon[data-v-df3c8f2e]:hover{color:#ef4444;background:#fef2f2}.btn-remove-sm[data-v-df3c8f2e]{background:none;border:none;cursor:pointer;padding:0 .25rem;color:#cbd5e1;font-size:.9rem;line-height:1}.btn-remove-sm[data-v-df3c8f2e]:hover{color:#ef4444}.btn-add[data-v-df3c8f2e]{background:none;border:1px dashed #cbd5e1;border-radius:6px;color:#64748b;font-size:.825rem;padding:.375rem .75rem;cursor:pointer;margin-top:.5rem}.btn-add[data-v-df3c8f2e]:hover{border-color:#2563eb;color:#2563eb}.btn-add-sm[data-v-df3c8f2e]{background:none;border:none;color:#94a3b8;font-size:.8rem;cursor:pointer;padding:.125rem 0}.btn-add-sm[data-v-df3c8f2e]:hover{color:#2563eb}.spinner[data-v-df3c8f2e]{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-df3c8f2e .6s linear infinite}.btn-secondary .spinner[data-v-df3c8f2e]{border-color:#00000026;border-top-color:#334155}@keyframes spin-df3c8f2e{to{transform:rotate(360deg)}}.revision-section[data-v-df3c8f2e]{margin-bottom:1.5rem}.revision-row[data-v-df3c8f2e]{display:flex;gap:.5rem}.revision-input[data-v-df3c8f2e]{flex:1;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-family:inherit}.revision-input[data-v-df3c8f2e]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.section-card[data-v-df3c8f2e]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.section-card h4[data-v-df3c8f2e]{margin:0 0 .625rem;font-size:.925rem;color:#334155;font-weight:600}.field-input[data-v-df3c8f2e]{width:100%;padding:.375rem .625rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.875rem;font-family:inherit}.field-input[data-v-df3c8f2e]:focus,.field-textarea[data-v-df3c8f2e]:focus{outline:none;border-color:#93c5fd}.field-textarea[data-v-df3c8f2e]{width:100%;padding:.375rem .625rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.875rem;font-family:inherit;resize:vertical}.list-editor[data-v-df3c8f2e]{display:flex;flex-direction:column;gap:.375rem}.list-item[data-v-df3c8f2e]{display:flex;align-items:center;gap:.5rem}.list-bullet[data-v-df3c8f2e]{color:#94a3b8;font-size:.825rem;min-width:1.5rem;text-align:right}.list-input[data-v-df3c8f2e]{flex:1;padding:.3rem .5rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.85rem;font-family:inherit}.list-input[data-v-df3c8f2e]:focus{outline:none;border-color:#93c5fd}.modules-section[data-v-df3c8f2e]{padding-bottom:.75rem}.module-card[data-v-df3c8f2e]{border:1px solid #e2e8f0;border-radius:6px;margin-bottom:.75rem;overflow:hidden}.module-header[data-v-df3c8f2e]{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:#f8fafc;cursor:pointer;-webkit-user-select:none;user-select:none}.collapse-icon[data-v-df3c8f2e]{color:#94a3b8;font-size:.8rem;width:1rem;text-align:center}.module-number[data-v-df3c8f2e]{font-weight:600;font-size:.825rem;color:#64748b;white-space:nowrap}.module-title-input[data-v-df3c8f2e]{flex:1;padding:.25rem .5rem;border:1px solid transparent;border-radius:4px;font-size:.875rem;font-weight:500;background:transparent;font-family:inherit}.module-title-input[data-v-df3c8f2e]:focus{outline:none;border-color:#93c5fd;background:#fff}.module-duration[data-v-df3c8f2e]{display:flex;align-items:center;gap:.25rem;white-space:nowrap}.duration-input[data-v-df3c8f2e]{width:52px;padding:.2rem .375rem;border:1px solid #e2e8f0;border-radius:4px;font-size:.825rem;text-align:center;font-family:inherit}.duration-input[data-v-df3c8f2e]:focus{outline:none;border-color:#93c5fd}.duration-label[data-v-df3c8f2e]{font-size:.75rem;color:#94a3b8}.module-topics[data-v-df3c8f2e]{padding:.5rem .75rem .75rem 2.25rem}.topic-block[data-v-df3c8f2e]{margin-bottom:.75rem}.topic-header[data-v-df3c8f2e]{display:flex;align-items:center;gap:.375rem;margin-bottom:.25rem}.topic-title-input[data-v-df3c8f2e]{flex:1;padding:.25rem .5rem;border:1px solid transparent;border-radius:4px;font-size:.85rem;font-weight:600;background:transparent;font-family:inherit}.topic-title-input[data-v-df3c8f2e]:focus{outline:none;border-color:#93c5fd;background:#fff}.sub-topics[data-v-df3c8f2e]{padding-left:.5rem}.sub-topic-row[data-v-df3c8f2e]{display:flex;align-items:center;gap:.375rem;margin-bottom:.125rem}.sub-bullet[data-v-df3c8f2e]{color:#cbd5e1;font-size:.8rem}.sub-topic-input[data-v-df3c8f2e]{flex:1;padding:.175rem .375rem;border:1px solid transparent;border-radius:3px;font-size:.825rem;font-family:inherit;background:transparent}.sub-topic-input[data-v-df3c8f2e]:focus{outline:none;border-color:#93c5fd;background:#fff}.accept-section[data-v-df3c8f2e]{margin-top:1.5rem;text-align:center;padding:1.5rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px}.breakdown-instructions[data-v-df3c8f2e]{margin-bottom:1rem;text-align:left}.breakdown-instructions label[data-v-df3c8f2e]{display:block;font-size:.825rem;font-weight:500;color:#475569;margin-bottom:.375rem}.optional-label[data-v-df3c8f2e]{font-weight:400;color:#94a3b8}.breakdown-textarea[data-v-df3c8f2e]{width:100%;padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.85rem;resize:vertical;font-family:inherit}.breakdown-textarea[data-v-df3c8f2e]:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 2px #3b82f626}.accept-actions[data-v-df3c8f2e]{display:flex;align-items:center;justify-content:center;gap:.75rem}.accept-hint[data-v-df3c8f2e]{color:#64748b;font-size:.825rem;margin:.625rem 0 0}.labs-tab[data-v-d456a7d2]{display:flex;height:100%;min-height:0}.labs-sidebar[data-v-d456a7d2]{width:260px;flex-shrink:0;border-right:1px solid #e2e8f0;background:#fafbfc;display:flex;flex-direction:column;overflow-y:auto}.sidebar-header[data-v-d456a7d2]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #e2e8f0;flex-shrink:0}.sidebar-title[data-v-d456a7d2]{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.btn-new[data-v-d456a7d2]{padding:4px 10px;font-size:.78rem;font-weight:600;background:#2563eb;color:#fff;border:none;border-radius:5px;cursor:pointer}.btn-new[data-v-d456a7d2]:hover{background:#1d4ed8}.sidebar-loading[data-v-d456a7d2],.sidebar-empty[data-v-d456a7d2]{padding:20px 16px;font-size:.85rem;color:#94a3b8}.lab-list[data-v-d456a7d2]{list-style:none;margin:0;padding:8px 0}.lab-item[data-v-d456a7d2]{display:flex;flex-direction:column;gap:4px;padding:10px 16px;cursor:pointer;border-left:3px solid transparent;transition:background .12s}.lab-item[data-v-d456a7d2]:hover{background:#f1f5f9}.lab-item.active[data-v-d456a7d2]{background:#eff6ff;border-left-color:#2563eb}.lab-item-title[data-v-d456a7d2]{font-size:.88rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lab-item-meta[data-v-d456a7d2]{display:flex;gap:6px;align-items:center}.badge-type[data-v-d456a7d2]{font-size:.72rem;background:#e2e8f0;color:#475569;padding:1px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.04em}.badge-live[data-v-d456a7d2]{font-size:.72rem;padding:1px 6px;border-radius:3px;font-weight:600}.badge-live.live[data-v-d456a7d2]{background:#dcfce7;color:#16a34a}.badge-live.draft[data-v-d456a7d2]{background:#f1f5f9;color:#94a3b8}.labs-editor[data-v-d456a7d2]{flex:1;overflow-y:auto;min-width:0}.editor-empty[data-v-d456a7d2]{padding:60px 40px;color:#94a3b8;font-size:.9rem;text-align:center}.editor-header[data-v-d456a7d2]{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;border-bottom:1px solid #e2e8f0;background:#fff;position:sticky;top:0;z-index:10;gap:12px}.editor-title[data-v-d456a7d2]{font-size:1.05rem;font-weight:700;color:#1e293b;margin:0;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-header-actions[data-v-d456a7d2]{display:flex;gap:8px;align-items:center;flex-shrink:0}.btn-link[data-v-d456a7d2]{background:none;border:none;color:#2563eb;font-size:.82rem;cursor:pointer;padding:0 4px}.btn-link[data-v-d456a7d2]:hover{text-decoration:underline}.btn-publish[data-v-d456a7d2]{padding:6px 14px;background:#16a34a;color:#fff;border:none;border-radius:6px;font-size:.83rem;font-weight:600;cursor:pointer}.btn-publish[data-v-d456a7d2]:hover:not(:disabled){background:#15803d}.btn-unpublish[data-v-d456a7d2]{padding:6px 14px;background:transparent;color:#64748b;border:1px solid #cbd5e1;border-radius:6px;font-size:.83rem;font-weight:600;cursor:pointer}.btn-unpublish[data-v-d456a7d2]:hover:not(:disabled){background:#f8fafc}.btn-delete[data-v-d456a7d2]{padding:6px 14px;background:transparent;color:#dc2626;border:1px solid #fca5a5;border-radius:6px;font-size:.83rem;font-weight:600;cursor:pointer}.btn-delete[data-v-d456a7d2]:hover:not(:disabled){background:#fef2f2}.editor-body[data-v-d456a7d2]{padding:24px 28px;display:flex;flex-direction:column;gap:32px;max-width:860px}.editor-section[data-v-d456a7d2]{display:flex;flex-direction:column;gap:14px}.section-title[data-v-d456a7d2]{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#64748b;margin:0}.section-hint[data-v-d456a7d2]{font-size:.82rem;color:#94a3b8;margin:-8px 0 0}.section-header[data-v-d456a7d2]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.fields-grid[data-v-d456a7d2]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-label[data-v-d456a7d2]{display:flex;flex-direction:column;gap:4px;font-size:.82rem;font-weight:600;color:#475569}.field-label-text[data-v-d456a7d2]{font-size:.82rem;font-weight:600;color:#475569}.field-input[data-v-d456a7d2],.field-textarea[data-v-d456a7d2],.field-select[data-v-d456a7d2]{padding:7px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#1e293b;background:#fff;font-family:inherit}.field-input[data-v-d456a7d2]:focus,.field-textarea[data-v-d456a7d2]:focus,.field-select[data-v-d456a7d2]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}.field-input.short[data-v-d456a7d2]{width:90px}.field-input.monospace[data-v-d456a7d2],.field-textarea.monospace[data-v-d456a7d2]{font-family:SF Mono,Fira Code,monospace;font-size:.82rem}.field-textarea[data-v-d456a7d2]{resize:vertical}.flex1[data-v-d456a7d2]{flex:1}.field-note[data-v-d456a7d2]{font-size:.75rem;color:#94a3b8;font-weight:400}.field-note code[data-v-d456a7d2]{font-family:SF Mono,Fira Code,monospace;background:#f1f5f9;padding:1px 4px;border-radius:3px;font-size:.78rem}.field-tags[data-v-d456a7d2]{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:8px 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px}.field-tags-label[data-v-d456a7d2]{font-size:.75rem;color:#94a3b8;font-weight:600;flex-shrink:0}.field-tag[data-v-d456a7d2]{padding:2px 8px;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;border-radius:4px;font-size:.75rem;font-family:SF Mono,Fira Code,monospace;cursor:pointer;transition:background .12s}.field-tag[data-v-d456a7d2]:hover{background:#dbeafe}.btn-add-step[data-v-d456a7d2]{padding:6px 14px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:6px;font-size:.83rem;font-weight:600;color:#2563eb;cursor:pointer;white-space:nowrap;flex-shrink:0}.btn-add-step[data-v-d456a7d2]:hover{background:#eff6ff;border-color:#2563eb}.steps-empty[data-v-d456a7d2]{padding:20px;text-align:center;color:#94a3b8;font-size:.85rem;border:1px dashed #e2e8f0;border-radius:8px}.step-card[data-v-d456a7d2]{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff;transition:box-shadow .15s}.step-card.expanded[data-v-d456a7d2]{box-shadow:0 2px 8px #00000014}.step-card-header[data-v-d456a7d2]{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fafbfc;transition:background .12s}.step-card-header[data-v-d456a7d2]:hover{background:#f1f5f9}.step-card.expanded .step-card-header[data-v-d456a7d2]{background:#f1f5f9;border-bottom:1px solid #e2e8f0}.step-num[data-v-d456a7d2]{width:22px;height:22px;background:#e2e8f0;color:#475569;border-radius:50%;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.step-summary[data-v-d456a7d2]{flex:1;display:flex;align-items:center;gap:10px;min-width:0}.step-q-preview[data-v-d456a7d2]{font-size:.875rem;font-weight:500;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step-type-badge[data-v-d456a7d2]{font-size:.72rem;padding:2px 7px;background:#e0e7ff;color:#4338ca;border-radius:3px;white-space:nowrap;flex-shrink:0}.step-card-actions[data-v-d456a7d2]{display:flex;gap:4px}.btn-icon[data-v-d456a7d2]{width:26px;height:26px;background:transparent;border:1px solid #e2e8f0;border-radius:4px;font-size:.78rem;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center;transition:all .12s}.btn-icon[data-v-d456a7d2]:hover:not(:disabled){background:#f1f5f9;color:#1e293b}.btn-icon[data-v-d456a7d2]:disabled{opacity:.3;cursor:not-allowed}.btn-icon.danger[data-v-d456a7d2]:hover:not(:disabled){background:#fef2f2;color:#dc2626;border-color:#fca5a5}.step-card-body[data-v-d456a7d2]{padding:16px 16px 20px;display:flex;flex-direction:column;gap:14px}.step-fields-row[data-v-d456a7d2]{display:flex;gap:12px;align-items:flex-start}.required-toggle[data-v-d456a7d2]{flex-direction:row;align-items:center;gap:8px;font-weight:500;cursor:pointer}.check-input[data-v-d456a7d2]{width:15px;height:15px;cursor:pointer}.options-section[data-v-d456a7d2]{display:flex;flex-direction:column;gap:8px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px}.options-header[data-v-d456a7d2]{display:flex;justify-content:space-between;align-items:center}.options-empty[data-v-d456a7d2]{font-size:.8rem;color:#94a3b8}.btn-add-opt[data-v-d456a7d2]{padding:3px 10px;font-size:.78rem;font-weight:600;background:#fff;border:1px solid #cbd5e1;border-radius:4px;color:#2563eb;cursor:pointer}.btn-add-opt[data-v-d456a7d2]:hover{background:#eff6ff}.option-row[data-v-d456a7d2]{display:flex;align-items:center;gap:6px}.option-drag-handle[data-v-d456a7d2]{color:#cbd5e1;font-size:1rem;cursor:grab;-webkit-user-select:none;user-select:none}.json-preview[data-v-d456a7d2]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:14px;font-family:SF Mono,Fira Code,monospace;font-size:.78rem;color:#334155;overflow-x:auto;white-space:pre;max-height:400px;overflow-y:auto}.editor-footer[data-v-d456a7d2]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-bottom:8px}.save-error[data-v-d456a7d2]{font-size:.82rem;color:#dc2626}.btn-save[data-v-d456a7d2]{padding:8px 22px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.88rem;font-weight:600;cursor:pointer}.btn-save[data-v-d456a7d2]:hover:not(:disabled){background:#1d4ed8}.btn-save[data-v-d456a7d2]:disabled{opacity:.5;cursor:not-allowed}.modal-overlay[data-v-d456a7d2]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.modal[data-v-d456a7d2]{background:#fff;border-radius:10px;padding:28px;width:440px;max-width:95vw;display:flex;flex-direction:column;gap:16px}.modal h3[data-v-d456a7d2]{margin:0 0 4px;font-size:1rem;font-weight:700;color:#1e293b}.modal-actions[data-v-d456a7d2]{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.btn-cancel[data-v-d456a7d2]{padding:8px 16px;background:transparent;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;font-weight:600;color:#64748b;cursor:pointer}.btn-cancel[data-v-d456a7d2]:hover{background:#f8fafc}.review-step[data-v-064995be]{max-width:720px;margin:0 auto;padding:1.5rem 1rem;display:flex;flex-direction:column;gap:1rem}.loading-state[data-v-064995be]{text-align:center;padding:3rem 0;color:#64748b}.spinner[data-v-064995be]{display:inline-block;width:28px;height:28px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:spin-064995be .6s linear infinite;margin-bottom:.75rem}.spinner-sm[data-v-064995be]{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-064995be .6s linear infinite;vertical-align:middle;margin-right:.35rem}@keyframes spin-064995be{to{transform:rotate(360deg)}}.card[data-v-064995be]{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem 1.25rem}.card-header[data-v-064995be]{font-size:.8rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem}.card-description[data-v-064995be]{font-size:.85rem;color:#475569;line-height:1.55;margin:0 0 .75rem}.summary-grid[data-v-064995be]{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:.75rem}.summary-item[data-v-064995be]{text-align:center;padding:.5rem 0;background:#f8fafc;border-radius:6px}.summary-value[data-v-064995be]{display:block;font-size:1.4rem;font-weight:700;color:#1e293b}.summary-label[data-v-064995be]{font-size:.75rem;color:#94a3b8;text-transform:uppercase}.summary-meta[data-v-064995be]{display:flex;gap:.5rem;align-items:baseline;padding-top:.5rem;border-top:1px solid #f1f5f9}.meta-label[data-v-064995be]{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;white-space:nowrap}.meta-value[data-v-064995be]{font-size:.85rem;color:#475569}.module-list[data-v-064995be]{display:flex;flex-direction:column}.module-row[data-v-064995be]{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.module-row[data-v-064995be]:last-child{border-bottom:none}.module-info[data-v-064995be]{display:flex;flex-direction:column;gap:.15rem}.module-title[data-v-064995be]{font-size:.9rem;font-weight:500;color:#1e293b}.module-meta[data-v-064995be]{font-size:.78rem;color:#94a3b8}.badge[data-v-064995be]{font-size:.72rem;font-weight:600;padding:.2rem .55rem;border-radius:12px;white-space:nowrap}.badge-ok[data-v-064995be]{background:#dcfce7;color:#16a34a}.badge-partial[data-v-064995be]{background:#fef9c3;color:#a16207}.badge-empty[data-v-064995be]{background:#fee2e2;color:#dc2626}.checklist[data-v-064995be]{display:flex;flex-direction:column;gap:.4rem}.check-row[data-v-064995be]{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#475569}.check-icon[data-v-064995be]{width:18px;text-align:center;flex-shrink:0}.check-row.ok .check-icon[data-v-064995be]{color:#16a34a}.check-row.warn .check-icon[data-v-064995be]{color:#f59e0b}.check-row.info .check-icon[data-v-064995be]{color:#94a3b8}.btn-export[data-v-064995be]{background:#2563eb;color:#fff;border:none;padding:.55rem 1.25rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .15s}.btn-export[data-v-064995be]:hover:not(:disabled){background:#1d4ed8}.btn-export[data-v-064995be]:disabled{opacity:.5;cursor:not-allowed}.export-history[data-v-064995be]{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #f1f5f9}.history-label[data-v-064995be]{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;display:block;margin-bottom:.35rem}.export-row[data-v-064995be]{display:flex;align-items:center;gap:.75rem;padding:.3rem 0;font-size:.82rem}.export-date[data-v-064995be]{color:#475569}.export-size[data-v-064995be]{color:#94a3b8}.export-download[data-v-064995be]{color:#2563eb;font-size:.82rem;text-decoration:none;font-weight:500}.export-download[data-v-064995be]:hover{text-decoration:underline}.course-page[data-v-5fbb9801]{height:calc(100vh - 55px);display:flex;flex-direction:column}.course-title[data-v-5fbb9801]{margin:0;padding:.75rem 1.5rem 0;font-size:1.25rem;font-weight:600;color:#1e293b}.tab-bar[data-v-5fbb9801]{display:flex;align-items:center;gap:0;padding:0 1rem;background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0}.tab-item[data-v-5fbb9801]{padding:.75rem 1.5rem;border:none;background:none;font-size:.85rem;color:#64748b;cursor:pointer;position:relative;transition:color .15s;font-weight:500}.tab-item[data-v-5fbb9801]:hover{color:#1e293b}.tab-item.active[data-v-5fbb9801]{color:#2563eb;font-weight:600}.tab-item.active[data-v-5fbb9801]:after{content:"";position:absolute;bottom:0;left:.5rem;right:.5rem;height:2px;background:#2563eb;border-radius:1px}.step-content[data-v-5fbb9801]{flex:1;overflow-y:auto;padding:1.5rem 2rem}.builder-tab-wrapper[data-v-5fbb9801]{padding:0;overflow:hidden}.syllabus-tab-wrapper[data-v-5fbb9801]{padding:1.5rem 2rem;overflow-y:auto}.tab-badge[data-v-5fbb9801]{display:inline-block;width:7px;height:7px;border-radius:50%;background:#f59e0b;margin-left:5px;vertical-align:middle;position:relative;top:-1px}.course-layout[data-v-5fbb9801]{display:flex;flex:1;min-height:0}.sidebar[data-v-5fbb9801]{width:260px;flex-shrink:0;border-right:1px solid #e2e8f0;background:#fafbfc}.main-content[data-v-5fbb9801]{flex:1;overflow-y:auto;padding:1.5rem 2rem;min-width:0}.content-header[data-v-5fbb9801]{margin-bottom:1.25rem}.breadcrumbs[data-v-5fbb9801]{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.breadcrumb-sep[data-v-5fbb9801]{color:#cbd5e1;font-size:1rem;-webkit-user-select:none;user-select:none}.breadcrumb-item[data-v-5fbb9801]{background:none;border:none;padding:.15rem .35rem;border-radius:4px;font-size:.95rem;color:#2563eb;cursor:pointer;transition:background .15s}.breadcrumb-item[data-v-5fbb9801]:hover{background:#eff6ff}.breadcrumb-item.current[data-v-5fbb9801]{color:#1e293b;font-weight:600;font-size:1.2rem;cursor:default}.breadcrumb-item.current[data-v-5fbb9801]:hover{background:none}.drop-zone[data-v-5fbb9801]{border:2px dashed #cbd5e1;border-radius:12px;padding:2.5rem 2rem;text-align:center;cursor:pointer;transition:all .2s;background:#f8fafc;margin-bottom:2rem}.drop-zone.active[data-v-5fbb9801]{border-color:#2563eb;background:#eff6ff}.drop-zone.uploading[data-v-5fbb9801]{opacity:.7;pointer-events:none}.drop-icon[data-v-5fbb9801]{font-size:2rem;color:#94a3b8;margin:0 0 .5rem;font-weight:300}.drop-content p[data-v-5fbb9801]{margin:.25rem 0;color:#475569}.drop-hint[data-v-5fbb9801]{font-size:.8rem;color:#94a3b8!important;margin-top:.5rem!important}.file-label[data-v-5fbb9801]{color:#2563eb;cursor:pointer;font-weight:600}.file-label input[data-v-5fbb9801]{display:none}.resources-header[data-v-5fbb9801]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem}.search-input[data-v-5fbb9801]{padding:6px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;color:#334155;width:220px}.search-input[data-v-5fbb9801]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}h2[data-v-5fbb9801]{font-size:1.1rem;color:#1e293b;margin:0}table[data-v-5fbb9801]{width:100%;border-collapse:collapse;table-layout:fixed}col.col-checkbox[data-v-5fbb9801]{width:3%}col.col-type[data-v-5fbb9801],col.col-status[data-v-5fbb9801]{width:12%}col.col-size[data-v-5fbb9801]{width:10%}col.col-actions[data-v-5fbb9801]{width:15%}th[data-v-5fbb9801]{text-align:left;font-size:.8rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;padding:.5rem .75rem;border-bottom:1px solid #e2e8f0}td[data-v-5fbb9801]{padding:.75rem;border-bottom:1px solid #f1f5f9;font-size:.9rem}.filename[data-v-5fbb9801]{font-weight:500;color:#1e293b;overflow:hidden}.filename>span[data-v-5fbb9801]:first-child{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filename span[data-v-5fbb9801]{cursor:default}.folder-label[data-v-5fbb9801]{display:block;font-size:.75rem;font-weight:400;color:#94a3b8;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rename-input[data-v-5fbb9801]{width:100%;padding:.25rem .5rem;border:1px solid #2563eb;border-radius:4px;font-size:.9rem;outline:none;box-shadow:0 0 0 2px #2563eb26}.badge[data-v-5fbb9801]{background:#e2e8f0;color:#475569;padding:.15rem .5rem;border-radius:4px;font-size:.8rem;text-transform:uppercase;white-space:nowrap}.size-cell[data-v-5fbb9801]{white-space:nowrap}.actions[data-v-5fbb9801]{display:flex;gap:.25rem;justify-content:flex-end}.btn-action[data-v-5fbb9801]{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.35rem;border-radius:4px;display:flex;align-items:center;transition:all .15s}.btn-action[data-v-5fbb9801]:hover{color:#475569;background:#f1f5f9}.btn-action.delete[data-v-5fbb9801]:hover{color:#dc2626;background:#fef2f2}.checkbox-cell[data-v-5fbb9801]{width:32px;text-align:center}.row-selected[data-v-5fbb9801]{background:#eff6ff}.selection-toolbar th[data-v-5fbb9801]{background:#dbeafe;padding:.5rem .75rem}.toolbar-inner[data-v-5fbb9801]{display:flex;align-items:center;justify-content:space-between}.select-all-check[data-v-5fbb9801]{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;color:#1e40af;cursor:pointer}.toolbar-actions[data-v-5fbb9801]{display:flex;gap:.5rem}.btn-toolbar-delete[data-v-5fbb9801]{background:none;border:1px solid #dc2626;color:#dc2626;padding:.3rem .8rem;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer}.btn-toolbar-delete[data-v-5fbb9801]:hover{background:#fef2f2}.empty-state[data-v-5fbb9801]{text-align:center;color:#94a3b8;font-size:.9rem;padding:2rem 0}.indexing-banner[data-v-5fbb9801]{margin-bottom:1rem;padding:.75rem 1rem;border-radius:8px;background:#f0f9ff;border:1px solid #bae6fd}.progress-bar-track[data-v-5fbb9801]{height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden;margin-bottom:.5rem}.progress-bar-fill[data-v-5fbb9801]{height:100%;background:#2563eb;border-radius:3px;transition:width .5s ease}.progress-text[data-v-5fbb9801]{font-size:.85rem;color:#475569}.indexing-errors[data-v-5fbb9801]{color:#dc2626;font-size:.85rem;font-weight:500;margin-top:.25rem}.status-badge[data-v-5fbb9801]{padding:.15rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;white-space:nowrap}.status-indexed[data-v-5fbb9801]{background:#dcfce7;color:#16a34a}.status-extracting[data-v-5fbb9801],.status-embedding[data-v-5fbb9801],.status-downloading[data-v-5fbb9801]{background:#dbeafe;color:#2563eb}.status-uploaded[data-v-5fbb9801],.status-pending[data-v-5fbb9801],.status-uploading[data-v-5fbb9801]{background:#f1f5f9;color:#64748b}.status-error[data-v-5fbb9801]{background:#fef2f2;color:#dc2626;cursor:help}.status-cell[data-v-5fbb9801]{display:flex;flex-direction:column;gap:4px}.mini-progress[data-v-5fbb9801]{width:100%;height:3px;background:#e2e8f0;border-radius:2px;overflow:hidden}.mini-progress-fill[data-v-5fbb9801]{height:100%;background:#2563eb;border-radius:2px;transition:width .3s ease}.url-input-row[data-v-5fbb9801]{display:flex;gap:8px;margin-top:8px;margin-bottom:12px}.url-input[data-v-5fbb9801]{flex:1;padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;color:#334155}.url-input[data-v-5fbb9801]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.url-input[data-v-5fbb9801]:disabled{background:#f8fafc;opacity:.6}.btn-add-url[data-v-5fbb9801]{padding:8px 16px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s}.btn-add-url[data-v-5fbb9801]:hover:not(:disabled){background:#1d4ed8}.btn-add-url[data-v-5fbb9801]:disabled{opacity:.5;cursor:not-allowed}.crawl-depth-select[data-v-5fbb9801]{padding:8px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;color:#334155;background:#fff;cursor:pointer;white-space:nowrap}.crawl-depth-select[data-v-5fbb9801]:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.crawl-depth-select[data-v-5fbb9801]:disabled{background:#f8fafc;opacity:.6}
