.curator-tab-bar{display:flex;justify-content:space-between;align-items:center;background:var(--color-surface);border-bottom:2px solid var(--color-border);padding:0 16px;gap:8px;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}.tabs-container{display:flex;gap:8px;flex:1}.tab-button{padding:14px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:15px;font-weight:500;color:var(--color-text-secondary);transition:all var(--transition-base);white-space:nowrap}.tab-button:hover{color:var(--color-text-primary);background:var(--color-surface-hover)}.tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.tab-button.active:hover{background:var(--color-primary-soft)}.logout-button{background-color:transparent;border:1px solid var(--color-border);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;transition:all .2s;flex-shrink:0;margin-left:8px}.logout-button:hover{background-color:var(--color-surface-hover);border-color:var(--color-border-hover)}.logout-button:active{transform:scale(.95)}@media (max-width: 768px){.curator-tab-bar{padding:0 8px;gap:4px}.tab-button{padding:12px;font-size:13px}}.curator-layout{min-height:100vh;display:flex;flex-direction:column;background:var(--color-background);width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box}.curator-content{flex:1;overflow-y:auto;overflow-x:hidden;width:100%;max-width:100%;box-sizing:border-box}.header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.btn-logout{background-color:transparent;border:1px solid var(--tg-theme-hint-color, rgba(0, 0, 0, .1));border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;transition:all .2s;flex-shrink:0}.btn-logout:hover{background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-color:var(--tg-theme-hint-color, rgba(0, 0, 0, .3))}.btn-logout:active{transform:scale(.95)}.modules-list{margin-bottom:24px}.card-disabled{opacity:.6;cursor:not-allowed}.card-disabled:active{transform:none}.empty-state{text-align:center;padding:48px 24px;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:16px;margin-top:24px}.empty-state-title{font-size:24px;font-weight:700;color:#2d3748;margin-bottom:12px}.empty-state-description{font-size:16px;color:#4a5568;line-height:1.6;margin-bottom:24px}.empty-state-hint{background:#ffffffb3;padding:16px;border-radius:8px;display:inline-block}.empty-state-hint p{font-size:14px;color:#718096;margin:0}.section-title{font-size:18px;font-weight:600;margin-bottom:16px;color:var(--tg-theme-text-color, #000000)}.step-submission-info{margin-top:12px;padding-top:12px;border-top:1px solid var(--tg-theme-hint-color, #e0e0e0)}.step-status-not-started{background-color:#f5f5f5;color:#666}.step-status-sent{background-color:#fff3e0;color:#f57c00}.step-status-reviewing{background-color:#e3f2fd;color:#1976d2}.step-status-approved{background-color:#e8f5e9;color:#388e3c}.step-status-returned{background-color:#ffebee;color:#d32f2f}.step-score{font-size:12px;color:var(--tg-theme-hint-color, #999999);margin-top:4px}.step-content{margin-bottom:24px}.content-text{white-space:pre-wrap;line-height:1.6;color:var(--tg-theme-text-color, #000000)}.step-form{margin-top:24px}.submission-info{margin-top:16px;padding:16px;background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-radius:8px}.submission-status{font-weight:500;margin-bottom:12px;color:var(--tg-theme-text-color, #000000)}.feedback-block{margin-top:12px;padding-top:12px;border-top:1px solid var(--tg-theme-hint-color, #e0e0e0)}.feedback-title{font-weight:600;margin-bottom:8px;color:var(--tg-theme-text-color, #000000)}.feedback-text{font-size:14px;line-height:1.5;color:var(--tg-theme-text-color, #000000);white-space:pre-wrap}.form-textarea:disabled{background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);opacity:.7;cursor:not-allowed}.dynamic-form{margin-top:16px}.required-mark{color:#d32f2f}.file-input-hint{margin-top:8px}.file-input-hint p{font-size:12px;color:var(--tg-theme-hint-color, #999999);margin-bottom:8px}.info-hint{margin-top:12px;padding:12px;background-color:var(--tg-theme-hint-color, rgba(0, 136, 204, .1));border-left:3px solid var(--tg-theme-link-color, #0088cc);border-radius:4px;font-size:14px;line-height:1.5;color:var(--tg-theme-text-color, #000000)}.ai-feedback{background-color:#9c27b00d;border-left:3px solid #9c27b0;padding:12px;border-radius:4px}.curator-feedback{background-color:#4caf500d;border-left:3px solid #4caf50;padding:12px;border-radius:4px}.resubmission-badge{margin-top:12px;padding:12px;background-color:#ff98001a;border-left:3px solid #ff9800;border-radius:4px;font-size:14px;line-height:1.5;color:var(--tg-theme-text-color, #000000)}.audio-submission-info{margin-bottom:20px}.info-card{padding:20px;background:linear-gradient(135deg,#0088cc0d,#9c27b00d);border:1px solid var(--tg-theme-hint-color, #e0e0e0);border-radius:12px;box-shadow:0 2px 8px #0000000d}.info-card h3{margin:0 0 12px;font-size:18px;font-weight:600;color:var(--tg-theme-text-color, #000000);display:flex;align-items:center;gap:8px}.info-card p{margin:0 0 16px;font-size:15px;line-height:1.6;color:var(--tg-theme-text-color, #000000)}.instruction-list{margin:0;padding-left:20px;list-style-type:decimal}.instruction-list li{margin-bottom:12px;font-size:14px;line-height:1.6;color:var(--tg-theme-text-color, #000000)}.instruction-list li:last-child{margin-bottom:0}.instruction-list strong{font-weight:600;color:var(--tg-theme-link-color, #0088cc)}.transcript-block{margin-top:12px;padding:12px;background-color:#2196f30d;border-left:3px solid #2196f3;border-radius:4px}.transcript-text{margin-top:8px;font-size:14px;line-height:1.6;color:var(--tg-theme-text-color, #000000);white-space:pre-wrap;font-style:italic}.login-page{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:16px;text-align:center}.loading{font-size:16px;color:var(--tg-theme-hint-color, #999999)}.error-message{color:#d32f2f;font-size:16px;margin-bottom:12px;font-weight:500}.error-hint{font-size:14px;color:var(--tg-theme-hint-color, #999999);max-width:300px}.incomplete-profile-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.incomplete-profile-content{background:#fff;border-radius:16px;padding:32px 24px;max-width:400px;width:100%;text-align:center;box-shadow:0 10px 40px #0000001a}.icon-large{font-size:64px;margin-bottom:16px}.incomplete-profile-content .title{font-size:24px;font-weight:700;color:#1a202c;margin-bottom:12px}.incomplete-profile-content .description{font-size:16px;color:#4a5568;margin-bottom:24px}.instructions{background:#f7fafc;border-radius:12px;padding:20px;margin-bottom:24px;text-align:left}.instruction-step{font-size:14px;color:#2d3748;margin-bottom:12px;line-height:1.5}.instruction-step:last-child{margin-bottom:0}.instruction-step code{background:#e2e8f0;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:13px;color:#2d3748}.incomplete-profile-content .btn{width:100%;padding:14px 24px;font-size:16px;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:all .2s}.incomplete-profile-content .btn-primary{background:#667eea;color:#fff}.incomplete-profile-content .btn-primary:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.incomplete-profile-content .btn-primary:active{transform:translateY(0)}.curator-courses-dashboard{padding:20px;max-width:1200px;margin:0 auto}.curator-courses-dashboard .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.curator-courses-dashboard .page-title{font-size:28px;font-weight:700;color:var(--color-text-primary);margin:0}.course-card{background:var(--color-surface);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-md);cursor:pointer;transition:all var(--transition-base);border:2px solid transparent}.course-card-index{background:var(--color-primary-soft);color:var(--color-text-secondary);padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500;white-space:nowrap;margin-left:8px}.course-card-stats{display:flex;gap:16px;padding-top:12px;border-top:1px solid var(--color-border)}.curator-courses-dashboard .empty-state{text-align:center;padding:64px 24px;background:var(--color-primary-soft);border-radius:var(--radius-lg);margin-top:40px}.curator-courses-dashboard .empty-state-icon{font-size:64px;margin-bottom:16px}.curator-courses-dashboard .empty-state-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:12px}.curator-courses-dashboard .empty-state-description{font-size:16px;color:var(--color-text-secondary);line-height:1.6;margin:0}.curator-courses-dashboard .btn{padding:10px 20px;font-size:16px;font-weight:600;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all var(--transition-base)}.curator-courses-dashboard .btn-primary{background:var(--color-primary);color:var(--color-text-on-primary)}.curator-courses-dashboard .btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.curator-courses-dashboard .btn-primary:active{transform:translateY(0)}.create-course-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.create-course-modal .modal-content{background:var(--color-surface);border-radius:var(--radius-lg);padding:32px;max-width:500px;width:100%;box-shadow:var(--shadow-xl)}.create-course-modal .modal-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin:0 0 24px}.create-course-modal .form-group{margin-bottom:20px}.create-course-modal .form-group label{display:block;font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.create-course-modal .form-input,.create-course-modal .form-textarea{width:100%;padding:12px 16px;font-size:16px;border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-background);color:var(--color-text-primary);transition:all var(--transition-base)}.create-course-modal .form-input:focus,.create-course-modal .form-textarea:focus{outline:none;border-color:var(--color-primary)}.create-course-modal .form-input:disabled,.create-course-modal .form-textarea:disabled{opacity:.6;cursor:not-allowed}.create-course-modal .form-textarea{resize:vertical;min-height:80px;font-family:inherit}.create-course-modal .form-actions{display:flex;gap:12px;margin-top:24px}.create-course-modal .btn{flex:1;padding:12px 24px;font-size:16px;font-weight:600;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all var(--transition-base)}.create-course-modal .btn-secondary{background:var(--color-primary-soft);color:var(--color-text-primary)}.create-course-modal .btn-secondary:hover:not(:disabled){background:var(--color-border)}.create-course-modal .btn-primary{background:var(--color-primary);color:var(--color-text-on-primary)}.create-course-modal .btn-primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--shadow-md)}.create-course-modal .btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.curator-courses-dashboard .page-header{flex-direction:column;align-items:flex-start;gap:16px}.courses-grid{grid-template-columns:1fr}.create-course-modal .modal-content{padding:24px}}.course-dashboard{padding:20px;max-width:100%;width:100%;margin:0 auto;box-sizing:border-box;overflow-x:hidden;position:relative}.course-header{background:var(--color-surface);border-radius:var(--radius-md);padding:24px;margin-bottom:24px;box-shadow:var(--shadow-md);width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.course-header-main{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.course-title{font-size:32px;font-weight:700;color:var(--color-text-primary);margin:0;flex:1;min-width:0;overflow-wrap:break-word;word-wrap:break-word}.course-meta{display:flex;gap:8px;flex-shrink:0;margin-left:16px}.course-badge{background:var(--color-primary-soft);color:var(--color-text-secondary);padding:6px 14px;border-radius:20px;font-size:14px;font-weight:500;white-space:nowrap}.course-badge.exam{background:#fef5e7;color:var(--color-warning)}.course-description{color:var(--color-text-secondary);font-size:16px;line-height:1.6;margin:0 0 12px;overflow-wrap:break-word;word-wrap:break-word;max-width:100%}.course-header-info{display:flex;gap:12px;margin-top:16px;flex-wrap:wrap}.header-info-item{display:inline-flex;align-items:center;gap:6px;background:var(--color-primary-soft);color:var(--color-text-primary);padding:8px 16px;border-radius:20px;font-size:14px;font-weight:500}.stats-section{margin-bottom:32px}.stats-section .section-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px}.stats-grid{display:flex!important;flex-direction:column!important;gap:12px;width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin-bottom:0}.stat-card{background:var(--color-surface);border-radius:var(--radius-md);padding:16px 20px;box-shadow:var(--shadow-md);display:flex;align-items:center;gap:16px;transition:all var(--transition-base);border:2px solid transparent;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.stat-icon-large{font-size:40px;line-height:1;flex-shrink:0}.stat-content{flex:1;min-width:0;overflow:hidden}.stat-value{font-size:32px;font-weight:700;color:var(--color-text-primary);line-height:1;margin-bottom:4px;word-wrap:break-word;overflow-wrap:break-word}.stat-label{font-size:14px;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;word-wrap:break-word;overflow-wrap:break-word}.stat-hint{font-size:12px;color:var(--color-text-secondary);margin-top:4px;word-wrap:break-word;overflow-wrap:break-word}.stat-icon{font-size:40px;line-height:1}.stat-content{flex:1}.stat-value{font-size:32px;font-weight:700;color:var(--color-text-primary);line-height:1;margin-bottom:8px}.stat-label{font-size:14px;font-weight:500;color:var(--color-text-secondary);margin-bottom:4px}.stat-hint{font-size:12px;color:var(--color-text-secondary);opacity:.7}.actions-section,.course-info-section{margin-bottom:32px}.section-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin-bottom:16px}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.action-card{background:var(--color-surface);border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-md);display:flex;align-items:center;gap:16px;cursor:pointer;transition:all var(--transition-base);border:2px solid transparent;text-align:left;width:100%}.action-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.action-card:active{transform:translateY(-2px)}.action-icon{font-size:36px;line-height:1;flex-shrink:0}.action-content{flex:1}.action-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0 0 8px}.action-description{font-size:14px;color:var(--color-text-secondary);margin:0;line-height:1.5}.action-arrow{font-size:24px;color:var(--color-text-secondary);opacity:.5;flex-shrink:0;transition:all var(--transition-base)}.action-card:hover .action-arrow{color:var(--color-primary);opacity:1;transform:translate(4px)}.info-grid{background:var(--color-surface);border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-md);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{font-size:14px;font-weight:500;color:var(--color-text-secondary)}.info-value{font-size:16px;font-weight:600;color:var(--color-text-primary)}.course-dashboard .loading,.course-dashboard .error{text-align:center;padding:48px 24px;background:var(--color-surface);border-radius:var(--radius-md);margin-top:24px}.course-dashboard .error{color:var(--color-error);font-weight:500}.submissions-section,.learners-section{margin-bottom:32px}.submissions-list,.learners-list{display:flex;flex-direction:column;gap:12px}.submission-card,.learner-card{background:var(--color-surface);border-radius:var(--radius-md);padding:16px 20px;box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:16px;cursor:pointer;transition:all var(--transition-base);border:2px solid transparent}.submission-card:hover,.learner-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary);transform:translate(4px)}.submission-user,.learner-info{display:flex;align-items:center;gap:12px;flex:1}.user-avatar,.learner-avatar{width:40px;height:40px;border-radius:50%;background:var(--color-primary);color:var(--color-text-on-primary);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;flex-shrink:0}.user-info,.learner-details{flex:1}.user-name,.learner-name{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.submission-step,.learner-progress{font-size:14px;color:var(--color-text-secondary)}.submission-status,.learner-status{display:flex;align-items:center;gap:8px}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;white-space:nowrap}.status-badge.sent{background:#fef5e7;color:var(--color-warning)}.status-badge.ai_reviewed,.status-badge.in_progress{background:#e3f2fd;color:var(--color-info)}.status-badge.completed{background:#e8f5e9;color:var(--color-success)}.ai-score{font-size:12px;font-weight:600;color:var(--color-text-secondary);padding:4px 8px;background:var(--color-primary-soft);border-radius:8px}.submission-arrow,.learner-arrow{font-size:20px;color:var(--color-text-secondary);opacity:.5;transition:all var(--transition-base)}.submission-card:hover .submission-arrow,.learner-card:hover .learner-arrow{color:var(--color-primary);opacity:1;transform:translate(4px)}@media (max-width: 768px){.course-dashboard{padding:16px;max-width:100vw}.course-header{padding:16px}.course-header-main{flex-direction:column;gap:12px}.course-meta{margin-left:0}.course-title{font-size:24px;max-width:100%}.course-description{font-size:14px;max-width:100%}.stats-grid{display:flex!important;flex-direction:column!important;gap:12px}.actions-grid,.info-grid{grid-template-columns:1fr;gap:12px}.submission-status,.learner-status{flex-direction:column;align-items:flex-end}.modules-grid{grid-template-columns:1fr;gap:16px;max-width:100%}.module-card{min-width:0;max-width:100%}.module-card-content{padding:16px}.module-actions-row{flex-direction:column;width:100%}.btn-unlock,.btn-lock,.btn-edit{width:100%;flex:none;min-width:0}}.modules-section{margin-bottom:32px;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.modules-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0}.modules-section .btn{padding:10px 20px;font-size:14px;font-weight:600;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all var(--transition-base)}.modules-section .btn-secondary{background:var(--color-primary-soft);color:var(--color-text-primary)}.modules-section .btn-secondary:hover{background:var(--color-border);transform:translateY(-2px)}.modules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:20px;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.module-card{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:all var(--transition-base);border:2px solid transparent;position:relative;display:flex;flex-direction:column;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}.module-card-content{padding:20px;cursor:pointer;flex:1;min-width:0;overflow-wrap:break-word;word-wrap:break-word}.module-card-content:hover{background:var(--color-primary-soft)}.module-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.module-card-header{margin-bottom:12px}.module-title-wrapper{display:flex;flex-direction:column;gap:8px}.module-card-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.module-badges{display:flex;gap:8px;flex-wrap:wrap}.module-card-index{background:var(--color-primary-soft);color:var(--color-text-secondary);padding:4px 12px;border-radius:16px;font-size:12px;font-weight:500;white-space:nowrap}.module-card-description{color:var(--color-text-secondary);font-size:14px;line-height:1.5;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.module-card-stats{display:flex;gap:16px;padding-top:12px;padding-bottom:12px;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.module-status{margin-top:12px}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600}.status-unlocked{background:#d4edda;color:#155724}.status-locked{background:#f8d7da;color:#721c24}.module-badge{position:absolute;top:12px;right:12px;padding:4px 12px;border-radius:16px;font-size:11px;font-weight:600;text-transform:uppercase}.exam-badge{background:#fef5e7;color:var(--color-warning)}.module-card-actions{padding:12px 20px;background:var(--color-background);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:10px;width:100%;box-sizing:border-box}.module-actions-row{display:flex;gap:10px;width:100%;box-sizing:border-box;flex-wrap:wrap}.btn-unlock,.btn-lock,.btn-edit{flex:1;min-width:0;padding:10px 16px;font-size:14px;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.btn-unlock{border:2px solid var(--color-primary);background:var(--color-surface);color:var(--color-primary)}.btn-unlock:hover:not(:disabled){background:var(--color-primary);color:var(--color-text-on-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-unlock:active:not(:disabled){transform:translateY(0)}.btn-unlock:disabled{opacity:.6;cursor:not-allowed;border-color:var(--color-border);color:var(--color-text-secondary)}.btn-lock{border:2px solid #dc2626;background:var(--color-surface);color:#dc2626}.btn-lock:hover:not(:disabled){background:#dc2626;color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-lock:active:not(:disabled){transform:translateY(0)}.btn-lock:disabled{opacity:.6;cursor:not-allowed;border-color:var(--color-border);color:var(--color-text-secondary)}.btn-edit{border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary)}.btn-edit:hover{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-edit:active{transform:translateY(0)}.btn-auto-unlock{width:100%;padding:10px 16px;font-size:14px;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;gap:6px;border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text-primary)}.btn-auto-unlock:hover:not(:disabled){background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-auto-unlock:active:not(:disabled){transform:translateY(0)}.btn-auto-unlock.active{border:2px solid var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary);font-weight:700}.btn-auto-unlock.active:hover:not(:disabled){background:var(--color-primary);color:var(--color-text-on-primary)}.btn-auto-unlock:disabled{opacity:.6;cursor:not-allowed}.modules-section .empty-state{background:var(--color-primary-soft);border-radius:var(--radius-lg);padding:48px 24px;text-align:center}.modules-section .empty-state-icon{font-size:48px;margin-bottom:12px}.modules-section .empty-state-title{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0 0 8px}.modules-section .empty-state-description{font-size:14px;color:var(--color-text-secondary);margin:0}.btn-unlock-learner{flex:1;min-width:0;padding:10px 16px;font-size:14px;font-weight:600;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;border:2px dashed var(--color-primary);background:var(--color-surface);color:var(--color-primary)}.btn-unlock-learner:hover:not(:disabled){background:var(--color-primary-soft);transform:translateY(-2px)}.btn-unlock-learner:disabled{opacity:.6;cursor:not-allowed;border-color:var(--color-border);color:var(--color-text-secondary)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px;z-index:2000}.modal{width:min(640px,100%);max-height:80vh;background:var(--color-background, #fff);border-radius:16px;box-shadow:0 12px 32px #0000002e;display:flex;flex-direction:column;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.modal-header h3{margin:0;font-size:18px}.modal-close{background:none;border:none;font-size:18px;cursor:pointer}.modal-body{padding:16px 20px;overflow:auto;display:flex;flex-direction:column;gap:12px}.modal-hint{color:var(--color-text-secondary);font-size:14px}.modal-search{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;font-size:14px}.modal-error{color:#b00020;background:#fde8eb;border:1px solid #f5c5cd;border-radius:10px;padding:10px 12px}.modal-loading{padding:12px 0;color:var(--color-text-secondary)}.learner-list{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto}.learner-item{display:flex;gap:10px;padding:10px 12px;border:1px solid var(--color-border);border-radius:12px;cursor:pointer}.learner-item.selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.learner-info{display:flex;flex-direction:column;gap:6px}.learner-name{font-weight:600}.learner-meta{display:flex;flex-wrap:wrap;gap:6px}.tag{padding:4px 8px;border-radius:10px;background:var(--color-background-secondary);font-size:12px;color:var(--color-text-secondary)}.tag.status-locked{background:#f8d7da;color:#721c24}.tag.status-in_progress{background:#e7f1ff;color:#0c4da2}.tag.status-completed{background:#d4edda;color:#155724}.modal-footer{padding:12px 20px;border-top:1px solid var(--color-border);display:flex;gap:10px;justify-content:flex-end}.learners-list{margin-top:24px;width:100%;max-width:100%;box-sizing:border-box}.learner-card{position:relative;cursor:pointer;transition:all .2s ease;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.learner-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.learner-card:active{transform:translateY(0)}.learner-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;width:100%;max-width:100%;box-sizing:border-box;min-width:0}.learner-main-info{flex:1;min-width:0}.card-title{font-size:16px;font-weight:600;color:var(--tg-theme-text-color, #000000);margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-subtitle{font-size:13px;color:var(--tg-theme-hint-color, #999999);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learner-badges{display:flex;gap:6px;flex-shrink:0;flex-wrap:wrap;align-items:center}.pending-badge{background-color:#ff9800;color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.returned-badge{background-color:#f44336;color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.resubmission-badge{background-color:#2196f3;color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.learner-stats{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--tg-theme-hint-color, rgba(0, 0, 0, .1))}.stat-item{display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.4;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.stat-icon{font-size:16px;flex-shrink:0}.stat-text{color:var(--tg-theme-text-color, #000000);flex:1;min-width:0;max-width:100%;overflow-wrap:break-word;word-wrap:break-word;overflow:hidden;text-overflow:ellipsis}.stat-text strong{font-weight:600;color:var(--tg-theme-text-color, #000000)}.filters-section{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:6px;flex:1;min-width:150px}.filter-label{font-size:13px;font-weight:600;color:var(--tg-theme-text-color, #000000)}.filter-select{padding:8px 12px;border:1px solid var(--tg-theme-hint-color, rgba(0, 0, 0, .2));border-radius:8px;font-size:14px;background-color:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #000000);cursor:pointer;transition:border-color .2s}.filter-select:hover{border-color:var(--tg-theme-button-color, #3390ec)}.filter-select:focus{outline:none;border-color:var(--tg-theme-button-color, #3390ec);box-shadow:0 0 0 2px #3390ec33}.stats-dashboard{margin-bottom:24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:12px}.stat-card{background:var(--tg-theme-bg-color, #ffffff);border:1px solid var(--tg-theme-hint-color, rgba(0, 0, 0, .1));border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-icon-large{font-size:32px;margin-bottom:8px}.stat-content{width:100%}.stat-value{font-size:24px;font-weight:700;color:var(--tg-theme-text-color, #000000);margin-bottom:4px}.stat-label{font-size:13px;font-weight:600;color:var(--tg-theme-hint-color, #999999);margin-bottom:6px}.stat-details{font-size:11px;color:var(--tg-theme-hint-color, #999999);line-height:1.4}.stats-section{margin-bottom:24px}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}.stat-card{background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-radius:8px;padding:16px;text-align:center}.stat-value{font-size:24px;font-weight:600;color:var(--tg-theme-text-color, #000000);margin-bottom:4px}.stat-value-warning{color:#ff9800}.stat-value-error{color:#d32f2f}.stat-label{font-size:12px;color:var(--tg-theme-hint-color, #999999)}.modules-section,.submissions-section{margin-bottom:24px}.enrollment-card{margin-bottom:12px}.btn-small{margin-top:12px;padding:8px 16px;font-size:14px}.enrollment-meta{font-size:12px;color:var(--tg-theme-hint-color, #999999);margin-top:8px}.submission-card{margin-bottom:12px}.submission-card.clickable{cursor:pointer;transition:background-color .2s,transform .1s}.submission-card.clickable:hover{background-color:var(--tg-theme-secondary-bg-color, #f5f5f5)}.submission-card.clickable:active{transform:scale(.98)}.submission-score{font-size:14px;font-weight:500;margin-top:8px;color:var(--tg-theme-text-color, #000000)}.submission-date{font-size:12px;color:var(--tg-theme-hint-color, #999999);margin-top:8px}.resubmission-request-badge{display:inline-block;margin-top:8px;padding:6px 12px;background-color:#ff980026;border:1px solid #ff9800;border-radius:4px;font-size:13px;font-weight:500;color:#ff9800}.empty-state{text-align:center;padding:24px;color:var(--tg-theme-hint-color, #999999)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:12px;width:100%;max-width:100%;box-sizing:border-box;flex-wrap:wrap}.page-title{margin:0 0 4px;font-size:24px;font-weight:600;color:var(--tg-theme-text-color, #000000);flex:1;min-width:0;overflow-wrap:break-word;word-wrap:break-word}.page-subtitle{margin:0;font-size:14px;color:var(--tg-theme-hint-color, #999999)}.btn-danger{padding:10px 16px;font-size:14px;font-weight:600;border-radius:8px;border:2px solid #dc2626;background:var(--color-surface, #ffffff);color:#dc2626;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0;max-width:100%;box-sizing:border-box}.btn-danger:hover:not(:disabled){background:#dc2626;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #dc26264d}.btn-danger:active:not(:disabled){transform:translateY(0)}.curator-submission-page{padding:16px}.btn-back{display:inline-flex;align-items:center;padding:8px 16px;margin-bottom:16px;background-color:transparent;border:1px solid var(--tg-theme-hint-color, #e0e0e0);border-radius:8px;color:var(--tg-theme-link-color, #0088cc);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-back:hover{background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-color:var(--tg-theme-link-color, #0088cc)}.submission-info-card{margin-bottom:16px}.info-row{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--tg-theme-hint-color, rgba(0, 0, 0, .1))}.info-row:last-child{border-bottom:none}.info-label{font-weight:500;color:var(--tg-theme-hint-color, #666666);min-width:100px;margin-right:12px}.info-value{flex:1;text-align:right;color:var(--tg-theme-text-color, #000000)}.status-badge{display:inline-block;padding:4px 12px;border-radius:4px;font-size:13px;font-weight:500}.status-sent{background-color:#2196f31a;color:#2196f3}.status-ai_reviewed{background-color:#9c27b01a;color:#9c27b0}.status-curator_approved{background-color:#4caf501a;color:#4caf50}.status-curator_returned{background-color:#ff98001a;color:#ff9800}.resubmission-notice{margin-top:12px;padding:12px;background-color:#ff98001a;border-left:3px solid #ff9800;border-radius:4px;font-size:14px;color:#ff9800;font-weight:500}.section-title{font-size:18px;font-weight:600;margin-bottom:12px;color:var(--tg-theme-text-color, #000000)}.task-content,.answer-text{white-space:pre-wrap;line-height:1.6;color:var(--tg-theme-text-color, #000000);padding:12px;background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-radius:8px}.form-answers{display:flex;flex-direction:column;gap:12px}.form-answer-item{padding:12px;background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-radius:8px}.form-answer-label{font-weight:500;color:var(--tg-theme-hint-color, #666666);margin-bottom:6px;font-size:14px}.form-answer-value{color:var(--tg-theme-text-color, #000000);font-size:15px;line-height:1.5}.answer-file{padding:12px;background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-radius:8px}.answer-file code{background-color:#0000000d;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:13px}.answer-file .hint{margin-top:8px;font-size:12px;color:var(--tg-theme-hint-color, #999999)}.empty-answer{text-align:center;padding:24px;color:var(--tg-theme-hint-color, #999999)}.ai-review-card{background-color:#9c27b008;border-left:3px solid #9c27b0}.ai-score{font-size:16px;font-weight:600;margin-bottom:12px;color:#9c27b0}.ai-feedback{margin-top:12px}.feedback-label{font-weight:500;color:var(--tg-theme-hint-color, #666666);margin-bottom:6px;font-size:14px}.feedback-text{white-space:pre-wrap;line-height:1.6;color:var(--tg-theme-text-color, #000000);padding:12px;background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-radius:8px}.curator-decision-card{background-color:#2196f308;border-left:3px solid #2196f3}.form-label{display:block;font-weight:500;margin-bottom:8px;color:var(--tg-theme-text-color, #000000)}.form-input{width:100%;padding:10px 12px;border:1px solid var(--tg-theme-hint-color, #e0e0e0);border-radius:8px;font-size:15px;color:var(--tg-theme-text-color, #000000);background-color:var(--tg-theme-bg-color, #ffffff);box-sizing:border-box}.form-input:focus{outline:none;border-color:var(--tg-theme-link-color, #0088cc)}.form-textarea{width:100%;padding:10px 12px;border:1px solid var(--tg-theme-hint-color, #e0e0e0);border-radius:8px;font-size:15px;color:var(--tg-theme-text-color, #000000);background-color:var(--tg-theme-bg-color, #ffffff);font-family:inherit;resize:vertical;box-sizing:border-box}.form-textarea:focus{outline:none;border-color:var(--tg-theme-link-color, #0088cc)}.action-buttons{display:flex;gap:12px;margin-top:20px}.action-buttons .btn{flex:1}.btn-danger{background-color:#ff5252;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-danger:hover{background-color:#ff1744}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.finalized-card{background-color:#4caf5008;border-left:3px solid #4caf50}.curator-score{font-size:16px;font-weight:600;margin-bottom:12px;color:#4caf50}.curator-feedback{margin-top:12px}.danger-zone-card{background-color:#f4433608;border-left:3px solid #f44336;margin-top:24px}.danger-title{color:#f44336!important;font-size:16px!important}.danger-description{color:var(--tg-theme-hint-color, #666666);font-size:14px;line-height:1.5;margin-bottom:16px}.btn-delete{background-color:#f44336;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s;width:100%}.btn-delete:hover{background-color:#d32f2f}.btn-delete:disabled{opacity:.6;cursor:not-allowed}.answer-type-badge{display:inline-block;padding:8px 16px;background:linear-gradient(135deg,var(--tg-theme-link-color, #0088cc),#9c27b0);color:#fff;border-radius:20px;font-size:14px;font-weight:500;margin-bottom:16px}.transcription-block{background-color:#0088cc0d;border-left:3px solid var(--tg-theme-link-color, #0088cc);padding:12px 16px;border-radius:8px;margin-bottom:16px}.transcription-title{font-weight:600;color:var(--tg-theme-link-color, #0088cc);margin-bottom:8px;font-size:14px}.transcription-text{font-size:15px;line-height:1.6;color:var(--tg-theme-text-color, #000000);font-style:italic}.btn-play-audio{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border:none;padding:14px 24px;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;width:100%;margin-bottom:12px;display:flex;align-items:center;justify-content:center;gap:8px}.btn-play-audio:hover{background:linear-gradient(135deg,#45a049,#3d8b40);transform:translateY(-1px);box-shadow:0 4px 12px #4caf504d}.btn-play-audio:active{transform:translateY(0)}.file-info{margin-top:12px}.file-info code{background-color:#0000000d;padding:2px 6px;border-radius:4px;font-size:13px;word-break:break-all}.file-info .hint{font-size:13px;color:var(--tg-theme-hint-color, #666666);margin-top:8px}.modules-list{margin-top:24px}.module-card{margin-bottom:12px}.module-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.module-title{font-size:18px;font-weight:600;color:var(--tg-theme-text-color, #000000);flex:1}.exam-badge{display:inline-block;margin-left:8px;padding:2px 8px;background-color:#ff9800;color:#fff;border-radius:4px;font-size:12px;font-weight:500}.delete-btn{background:none;border:none;font-size:18px;cursor:pointer;padding:4px 8px;opacity:.6;transition:opacity .2s}.delete-btn:hover{opacity:1}.module-description{font-size:14px;color:var(--tg-theme-hint-color, #999999);margin-bottom:8px}.module-meta{font-size:12px;color:var(--tg-theme-hint-color, #999999);margin-top:8px}.empty-state{text-align:center;padding:48px 16px;color:var(--tg-theme-hint-color, #999999)}.course-builder-courses{padding:20px;max-width:1200px;margin:0 auto}.course-builder-courses .page-header{margin-bottom:32px;text-align:center}.course-builder-courses .page-title{font-size:32px;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.course-builder-courses .page-subtitle{font-size:16px;color:var(--color-text-secondary);margin:0}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:24px}.course-card{background:var(--color-surface);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-md);cursor:pointer;transition:all var(--transition-base);border:2px solid transparent;position:relative;overflow:hidden}.course-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-warning))}.course-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.course-card:active{transform:translateY(-2px)}.course-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.course-card-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0;flex:1;line-height:1.4}.course-card-description{color:var(--color-text-secondary);font-size:14px;line-height:1.5;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.course-card-stats{display:flex;gap:16px;padding-top:12px;margin-bottom:12px;border-top:1px solid var(--color-border)}.stat-item{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--color-text-secondary)}.stat-icon{font-size:16px}.stat-text{font-weight:500}.builder-badge{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-primary) 100%);color:var(--color-text-on-primary);padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600;margin-top:8px}.builder-badge-icon{font-size:14px}.builder-badge-text{text-transform:uppercase;letter-spacing:.5px}.course-builder-courses .empty-state{text-align:center;padding:64px 24px;background:var(--color-primary-soft);border-radius:var(--radius-lg);margin-top:40px}.course-builder-courses .empty-state-icon{font-size:64px;margin-bottom:16px}.course-builder-courses .empty-state-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:12px}.course-builder-courses .empty-state-description{font-size:16px;color:var(--color-text-secondary);line-height:1.6;margin:0}.course-builder-courses .loading,.course-builder-courses .error{text-align:center;padding:40px 24px;font-size:16px;color:var(--color-text-secondary)}.course-builder-courses .error{color:var(--color-error)}@media (max-width: 768px){.courses-grid{grid-template-columns:1fr}.course-builder-courses .page-title{font-size:24px}.course-builder-courses .page-subtitle{font-size:14px}}.course-builder-modules{padding:20px;max-width:1200px;margin:0 auto}.btn-back{background:none;border:none;color:var(--color-primary);font-size:16px;font-weight:500;cursor:pointer;padding:8px 0;margin-bottom:20px;display:inline-flex;align-items:center;gap:4px;transition:all var(--transition-base)}.btn-back:hover{color:var(--color-primary-hover);transform:translate(-4px)}.page-header{background:linear-gradient(135deg,var(--color-primary-soft) 0%,var(--color-surface) 100%);border-radius:var(--radius-md);padding:24px;margin-bottom:24px;box-shadow:var(--shadow-md)}.header-main{display:flex;align-items:center;gap:12px;margin-bottom:8px;flex-wrap:wrap}.page-title{font-size:28px;font-weight:700;color:var(--color-text-primary);margin:0;flex:1}.builder-mode-badge{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-primary) 100%);color:var(--color-text-on-primary);padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.page-description{color:var(--color-text-secondary);font-size:15px;line-height:1.5;margin:0}.actions-bar{margin-bottom:24px;display:flex;gap:12px}.btn{padding:12px 24px;font-size:16px;font-weight:600;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all var(--transition-base);display:inline-flex;align-items:center;gap:6px}.btn-primary{background:var(--color-primary);color:var(--color-text-on-primary)}.btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-primary:active{transform:translateY(0)}.modules-list{display:flex;flex-direction:column;gap:16px}.module-card{background:var(--color-surface);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-md);cursor:pointer;transition:all var(--transition-base);border:2px solid transparent;position:relative}.module-card:before{content:"";position:absolute;top:0;left:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--color-primary),var(--color-warning));border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.module-card:hover{transform:translate(4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary)}.module-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.module-title-wrapper{display:flex;flex-direction:column;gap:4px;flex:1}.module-index{font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.module-title{font-size:18px;font-weight:600;color:var(--color-text-primary);margin:0;line-height:1.4}.exam-badge{display:inline-flex;align-items:center;gap:4px;background:#fef5e7;color:var(--color-warning);padding:4px 12px;border-radius:16px;font-size:12px;font-weight:600;margin-top:4px;align-self:flex-start}.delete-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:8px;border-radius:var(--radius-sm);transition:all var(--transition-base);opacity:.6}.delete-btn:hover{opacity:1;background:var(--color-error-soft);transform:scale(1.1)}.module-description{color:var(--color-text-secondary);font-size:14px;line-height:1.5;margin:0 0 12px}.module-meta{display:flex;gap:16px;padding-top:12px;border-top:1px solid var(--color-border)}.meta-item{font-size:14px;color:var(--color-text-secondary);font-weight:500}.empty-state{text-align:center;padding:64px 24px;background:var(--color-primary-soft);border-radius:var(--radius-lg);margin-top:24px}.empty-state-icon{font-size:64px;margin-bottom:16px}.empty-state-title{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:12px}.empty-state-description{font-size:16px;color:var(--color-text-secondary);line-height:1.6;margin:0}.loading,.error{text-align:center;padding:40px 24px;font-size:16px;color:var(--color-text-secondary)}.error{color:var(--color-error)}@media (max-width: 768px){.page-title{font-size:22px}.header-main{flex-direction:column;align-items:flex-start}.module-card{padding:16px}.module-header{flex-direction:column;gap:12px}.delete-btn{align-self:flex-end}}.form-actions{display:flex;gap:12px;margin-top:24px}.form-actions .btn{flex:1}.form-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer}.form-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer}.form-checkbox span{font-size:16px;color:var(--tg-theme-text-color, #000000)}.steps-list{margin-top:24px}.step-card{margin-bottom:12px}.step-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.step-title{font-size:16px;font-weight:600;color:var(--tg-theme-text-color, #000000);flex:1}.step-meta{display:flex;gap:8px;align-items:center;margin-top:8px}.step-type{font-size:12px;color:var(--tg-theme-hint-color, #999999)}.required-badge{display:inline-block;padding:2px 8px;background-color:#4caf50;color:#fff;border-radius:4px;font-size:11px;font-weight:500}.form-schema-builder{margin-top:16px}.empty-form{text-align:center;padding:24px;background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-radius:8px}.empty-form p{margin-bottom:16px;color:var(--tg-theme-hint-color, #999999);font-size:14px}.form-field-editor{padding:16px;background-color:var(--tg-theme-secondary-bg-color, #f5f5f5);border-radius:8px;margin-bottom:12px}.field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.field-number{font-weight:600;color:var(--tg-theme-text-color, #000000);font-size:14px}.delete-field-btn{background:none;border:none;font-size:16px;cursor:pointer;padding:4px;opacity:.6;transition:opacity .2s}.delete-field-btn:hover{opacity:1}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.field-group{margin-bottom:12px}.field-label{display:block;font-size:14px;font-weight:500;margin-bottom:6px;color:var(--tg-theme-text-color, #000000)}.field-input{width:100%;padding:10px;border:1px solid var(--tg-theme-hint-color, #e0e0e0);border-radius:6px;font-size:14px;font-family:inherit;background-color:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #000000)}.field-input:focus{outline:none;border-color:var(--tg-theme-button-color, #0088cc)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-section{margin-top:32px;padding-top:24px;border-top:1px solid var(--tg-theme-hint-color, #e0e0e0)}.section-title{font-size:18px;font-weight:600;margin-bottom:8px;color:var(--tg-theme-text-color, #000000)}.section-hint{font-size:14px;color:var(--tg-theme-hint-color, #999999);margin-bottom:16px}:root{--color-primary: #667eea;--color-primary-soft: #edf2f7;--color-primary-hover: #5568d3;--color-background: #f7fafc;--color-surface: #ffffff;--color-surface-hover: #f7fafc;--color-text-primary: #1a202c;--color-text-secondary: #718096;--color-text-on-primary: #ffffff;--color-border: #e2e8f0;--color-success: #48bb78;--color-warning: #ed8936;--color-error: #f56565;--color-info: #4299e1;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-background);color:var(--color-text-primary)}*{box-sizing:border-box}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-on-primary{color:var(--color-text-on-primary)}.bg-primary{background-color:var(--color-primary)}.bg-surface{background-color:var(--color-surface)}.bg-background{background-color:var(--color-background)}html{width:100%;overflow-x:hidden;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #000000);min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box}#root{min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box}.loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:16px;color:var(--tg-theme-hint-color, #999999)}.container{padding:16px;max-width:100%;width:100%;box-sizing:border-box;overflow-x:hidden}.page-header{margin-bottom:24px}.page-title{font-size:24px;font-weight:600;margin-bottom:8px;color:var(--tg-theme-text-color, #000000)}.page-subtitle{font-size:14px;color:var(--tg-theme-hint-color, #999999)}.btn{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:opacity .2s;width:100%;margin-top:12px}.btn:active{opacity:.7}.btn-primary{background-color:var(--tg-theme-button-color, #0088cc);color:var(--tg-theme-button-text-color, #ffffff)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background-color:var(--tg-theme-secondary-bg-color, #f0f0f0);color:var(--tg-theme-text-color, #000000)}.card{background-color:var(--tg-theme-bg-color, #ffffff);border:1px solid var(--tg-theme-hint-color, #e0e0e0);border-radius:12px;padding:16px;margin-bottom:12px;cursor:pointer;transition:transform .1s,box-shadow .1s;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.card:active{transform:scale(.98)}.card-title{font-size:18px;font-weight:600;margin-bottom:8px;color:var(--tg-theme-text-color, #000000)}.card-subtitle{font-size:14px;color:var(--tg-theme-hint-color, #999999);margin-bottom:4px}.card-status{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;margin-top:8px}.status-locked{background-color:#f0f0f0;color:#666}.status-in-progress{background-color:#e3f2fd;color:#1976d2}.status-completed{background-color:#e8f5e9;color:#388e3c}.form-group{margin-bottom:16px}.form-label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;color:var(--tg-theme-text-color, #000000)}.form-input,.form-textarea{width:100%;padding:12px;border:1px solid var(--tg-theme-hint-color, #e0e0e0);border-radius:8px;font-size:16px;font-family:inherit;background-color:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #000000)}.form-textarea{min-height:120px;resize:vertical}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--tg-theme-button-color, #0088cc)}.list{list-style:none}.list-item{padding:12px 0;border-bottom:1px solid var(--tg-theme-hint-color, #e0e0e0)}.list-item:last-child{border-bottom:none}.text-center{text-align:center}.mt-16{margin-top:16px}.mb-16{margin-bottom:16px}.error{color:#d32f2f;font-size:14px;margin-top:8px}.success{color:#388e3c;font-size:14px;margin-top:8px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--tg-theme-bg-color, #ffffff);color:var(--tg-theme-text-color, #000000)}#root{min-height:100vh}
