.course-card{flex-direction:column;height:100%;display:flex;overflow:hidden}.card-media{width:100%;height:180px;position:relative;overflow:hidden}.card-img{object-fit:cover;width:100%;height:100%;transition:var(--transition-smooth)}.course-card:hover .card-img{transform:scale(1.08)}.card-media-overlay{pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:12px;left:12px;right:12px}.card-content{flex-direction:column;flex-grow:1;padding:20px;display:flex}.card-title{margin-bottom:8px;font-size:1.25rem;line-height:1.3}.card-description{color:var(--text-secondary);-webkit-line-clamp:3;text-overflow:ellipsis;-webkit-box-orient:vertical;flex-grow:1;margin-bottom:20px;font-size:.9rem;display:-webkit-box;overflow:hidden}.admin-card-stats{border-top:1px solid var(--border-glass);justify-content:space-between;align-items:center;margin-top:auto;padding-top:15px;display:flex}.student-count{color:var(--text-secondary);font-size:.85rem}.card-actions{gap:8px;display:flex}.icon-btn{border:1px solid var(--border-glass-bright);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;transition:var(--transition-fast);background:#ffffff0d;justify-content:center;align-items:center;display:flex}.btn-edit:hover{background:var(--glow-cyan);color:var(--primary-cyan);border-color:var(--primary-cyan)}.btn-delete:hover{background:var(--danger-glow);color:var(--danger);border-color:var(--danger)}.student-card-progress{flex-direction:column;gap:8px;margin-top:auto;display:flex}.progress-label{color:var(--text-secondary);justify-content:space-between;font-size:.8rem;font-weight:600;display:flex}.progress-bar-track{background:#ffffff14;border-radius:99px;width:100%;height:6px;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--primary-cyan) 0%, var(--primary-purple) 100%);border-radius:99px;height:100%;transition:width .5s ease-out}.card-footer{border-top:1px solid var(--border-glass);background:#ffffff03;justify-content:space-between;align-items:center;padding:15px 20px;display:flex}.footer-action-text{font-size:.85rem;font-weight:600;font-family:var(--font-title);color:var(--primary-cyan);letter-spacing:.02em}.footer-action-icon{color:var(--primary-cyan);transition:var(--transition-fast);transform:translate(0)}.course-card:hover .footer-action-icon{transform:translate(5px)}.card-badges-row{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}
.modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:2000;background:#0f172a66;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:600px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 50px #0009}.modal-header{border-bottom:1px solid var(--border-glass-bright);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title{font-size:1.35rem;font-family:var(--font-title);font-weight:700}.modal-close{border:1px solid var(--border-glass);color:var(--text-secondary);cursor:pointer;width:32px;height:32px;transition:var(--transition-fast);background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;display:flex}.modal-close:hover{color:var(--danger);background:var(--danger-glow);border-color:var(--danger)}.modal-body{flex-grow:1;padding:24px;overflow-y:auto}.modal-actions{border-top:1px solid var(--border-glass);justify-content:flex-end;gap:12px;margin-top:24px;padding-top:15px;display:flex}.modal-actions-sticky{background:var(--bg-glass-heavy);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border-glass-bright);z-index:10;justify-content:flex-end;gap:12px;margin:24px -24px -24px;padding:16px 24px 24px;display:flex;position:sticky;bottom:-24px}
.printable-certificate-container{color:#1e293b;aspect-ratio:1.414;background:#fff;justify-content:stretch;align-items:stretch;width:100%;max-width:1000px;margin:0 auto;padding:40px;font-family:Georgia,serif;display:flex;position:relative;box-shadow:0 25px 50px -12px #00000040}.certificate-inner{background:#f8fafc;border:10px solid #0f172a;flex:1;width:100%;padding:15px;display:flex}.certificate-border{background:linear-gradient(135deg,#fff 0%,#f1f5f9 100%);border:2px solid #cbd5e1;flex-direction:column;width:100%;padding:40px;display:flex;position:relative}.certificate-border:before{content:"";opacity:.05;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"%2394a3b8\" stroke-width=\"0.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M22 10v6M2 10l10-5 10 5-10 5z\"/><path d=\"M6 12v5c3 3 9 3 12 0v-5\"/></svg>");background-size:cover;width:300px;height:300px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.certificate-content{text-align:center;z-index:1;flex-direction:column;justify-content:space-between;height:100%;display:flex;position:relative}.cert-header{margin-bottom:20px}.cert-logo{color:#0f172a;flex-direction:column;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.cert-logo span{letter-spacing:2px;text-transform:uppercase;margin-top:10px;font-family:Inter,sans-serif;font-size:1rem;font-weight:700}.cert-title{letter-spacing:3px;text-transform:uppercase;color:#0f172a;border-bottom:2px solid #0f172a;margin:0;padding-bottom:10px;font-size:3rem;font-weight:700;display:inline-block}.cert-body{flex-direction:column;flex-grow:1;justify-content:center;display:flex}.cert-presented{color:#475569;margin-bottom:20px;font-size:1.2rem;font-style:italic}.cert-student-name{color:#0ea5e9;margin:0 0 20px;font-family:Brush Script MT,Great Vibes,cursive,serif;font-size:3.5rem;line-height:1.2}.cert-completed{color:#475569;margin-bottom:20px;font-size:1.2rem}.cert-course-name{color:#0f172a;margin:0;font-size:2.2rem;font-weight:600}.cert-footer{justify-content:space-between;align-items:flex-end;margin-top:40px;display:flex}.cert-signature-block{text-align:center;width:250px}.cert-signature-line{border-bottom:1px solid #0f172a;height:40px;margin-bottom:10px}.cert-signature-title{color:#475569;text-transform:uppercase;letter-spacing:1px;margin:0;font-size:1rem}.cert-details{text-align:center;color:#64748b;font-family:Inter,sans-serif;font-size:.85rem;line-height:1.6}.cert-details strong{color:#334155}
.student-dashboard{flex-direction:column;gap:30px;display:flex}.dashboard-welcome h1{margin-bottom:5px;font-size:2.2rem;font-weight:800}.dashboard-welcome .subtitle{color:var(--text-secondary);font-size:1.05rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.stat-card{align-items:center;gap:20px;padding:24px;display:flex}.stat-icon-wrapper{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:54px;height:54px;display:flex}.stat-icon-wrapper.cyan{background:var(--glow-cyan);color:var(--primary-cyan);border:1px solid #06b6d433}.stat-icon-wrapper.purple{background:var(--glow-purple);color:var(--primary-purple);border:1px solid #8b5cf633}.stat-icon-wrapper.pink{color:var(--primary-pink);background:#d946ef1a;border:1px solid #d946ef33}.stat-info{flex-direction:column;gap:2px;display:flex}.stat-label{color:var(--text-secondary);font-size:.85rem;font-family:var(--font-title);text-transform:uppercase;letter-spacing:.05em}.stat-val{font-size:1.8rem;font-family:var(--font-title);font-weight:800;line-height:1}.dashboard-courses-section{flex-direction:column;gap:20px;display:flex}.section-title{font-size:1.4rem;font-family:var(--font-title);align-items:center;gap:10px;font-weight:700;display:flex}.courses-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px;display:grid}.no-courses-card{text-align:center;border-radius:var(--radius-lg);flex-direction:column;align-items:center;gap:15px;max-width:600px;margin:20px auto;padding:50px 30px;display:flex}.no-courses-icon{color:var(--text-muted)}.no-courses-card h3{font-size:1.4rem;font-weight:700}.no-courses-card p{color:var(--text-secondary);max-width:440px;line-height:1.7}.admin-contact{border-radius:var(--radius-sm);border:1px solid var(--border-glass);color:var(--text-secondary);background:#ffffff08;align-items:center;gap:8px;margin-top:10px;padding:10px 20px;font-size:.9rem;display:inline-flex}
.course-viewer{grid-template-columns:320px 1fr;align-items:start;gap:30px;display:grid}.viewer-sidebar{flex-direction:column;gap:25px;max-height:calc(100vh - 120px);padding:24px;display:flex;position:sticky;top:90px;overflow-y:auto}.btn-back{color:var(--text-secondary);cursor:pointer;width:max-content;transition:var(--transition-fast);background:0 0;border:none;align-items:center;gap:8px;padding:8px 0;font-size:.88rem;font-weight:600;display:inline-flex}.btn-back:hover{color:var(--primary-cyan)}.sidebar-course-details h2{margin-top:8px;font-size:1.3rem;font-weight:700;line-height:1.3}.syllabus-completion-bar{flex-direction:column;gap:6px;margin-top:15px;display:flex}.syllabus-completion-track{background:#ffffff14;border-radius:99px;width:100%;height:4px;overflow:hidden}.syllabus-completion-fill{background:var(--primary-cyan);border-radius:99px;height:100%;transition:width .3s}.syllabus-completion-label{color:var(--text-secondary);font-size:.78rem;font-weight:500}.syllabus-list{flex-direction:column;gap:10px;display:flex}.syllabus-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-glass);padding-bottom:5px;font-size:.75rem;font-weight:700}.no-lessons{color:var(--text-muted);font-size:.85rem;font-style:italic}.syllabus-item{border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);background:#ffffff03;border:1px solid #0000;align-items:center;gap:12px;padding:10px 12px;display:flex}.syllabus-item:hover{border-color:var(--border-glass);background:#ffffff08}.syllabus-item.active{background:var(--bg-glass-light);border-color:#06b6d433}.btn-complete-check{cursor:pointer;color:var(--text-muted);transition:var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.btn-complete-check:hover{color:var(--primary-cyan)}.btn-complete-check.checked{color:var(--success)}.syllabus-item-meta{flex-direction:column;flex-grow:1;display:flex;overflow:hidden}.lesson-order-wrapper{align-items:center;gap:6px;display:flex}.lesson-assignment-indicator{color:var(--primary-cyan);align-items:center;display:inline-flex}.lesson-order{color:var(--text-secondary);text-transform:uppercase;font-size:.72rem;font-weight:600}.lesson-name{white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-weight:500;overflow:hidden}.syllabus-item.active .lesson-name{color:var(--primary-cyan)}.active-arrow{color:var(--primary-cyan);opacity:0;transition:var(--transition-fast);transform:translate(-5px)}.syllabus-item.active .active-arrow{opacity:1;transform:translate(0)}.exam-trigger-section{border-top:1px solid var(--border-glass);flex-direction:column;gap:10px;padding-top:20px;display:flex}.btn-exam-launch{width:100%}.exam-hint{color:var(--text-muted);align-items:center;gap:6px;font-size:.75rem;display:flex}.exam-status-box{border-radius:var(--radius-sm);gap:12px;padding:12px 16px;font-size:.82rem;display:flex}.exam-status-box.success{background:var(--success-glow);color:var(--success);border:1px solid #10b9814d}.exam-status-box h4{margin-bottom:2px;font-weight:700}.exam-status-box p{color:var(--text-secondary)}.viewer-content{flex-direction:column;width:100%;min-width:0;max-width:1000px;display:flex}.lesson-details{flex-direction:column;display:flex;overflow:hidden}.video-player-container{aspect-ratio:16/9;border-bottom:1px solid var(--border-glass);background:#000;width:100%}.lesson-video{width:100%;height:100%;display:block}.lesson-body-section{padding:30px}.lesson-header{border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:25px;padding-bottom:20px;display:flex}.lesson-label{color:var(--primary-cyan);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:700}.lesson-title{margin-top:4px;font-size:1.8rem;font-weight:700}.lesson-text-content{color:var(--text-secondary);font-size:1.02rem;line-height:1.85}.lesson-text-content h1,.lesson-text-content h2,.lesson-text-content h3{color:var(--text-primary);margin-top:30px;margin-bottom:15px}.lesson-text-content p{margin-bottom:15px}.lesson-text-content ul{margin-bottom:20px;padding-left:20px}.lesson-text-content li{margin-bottom:8px}.lesson-text-content pre{border:1px solid var(--border-glass-bright);border-radius:var(--radius-sm);background:#0006;margin:20px 0;padding:16px;font-family:monospace;overflow-x:auto}.lesson-text-content code{color:#fb7185;background:#ffffff14;border-radius:4px;padding:2px 6px;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:.9rem}.lesson-text-content pre code{color:var(--text-primary);background:0 0;border-radius:0;padding:0}.course-completed-banner{background:var(--glow-cyan);border-radius:var(--radius-md);box-shadow:var(--shadow-cyan-glow);border:1px solid #06b6d44d;align-items:center;gap:20px;margin-top:40px;padding:24px;display:flex}.banner-icon-wrapper{color:var(--primary-cyan);border-radius:var(--radius-sm);background:#06b6d433;border:1px solid #06b6d44d;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.banner-info{flex-grow:1}.banner-info h3{margin-bottom:4px;font-size:1.25rem;font-weight:700}.banner-info p{color:var(--text-secondary);margin:0;font-size:.92rem}.lesson-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:15px;padding:80px 40px;display:flex}.empty-icon{color:var(--text-muted)}.lesson-empty h3{font-size:1.4rem}.lesson-empty p{color:var(--text-secondary);max-width:320px}@media (max-width:992px){.course-viewer{grid-template-columns:1fr}.viewer-sidebar{max-height:none;position:static;overflow-y:visible}}@media (max-width:768px){.lesson-header{flex-direction:column;align-items:stretch}.course-completed-banner{text-align:center;flex-direction:column}}.lesson-pdf-container{border-top:1px solid var(--border-glass);margin-top:40px;padding-top:30px}.lesson-pdf-title{color:var(--text-primary);margin-bottom:15px;font-size:1.25rem;font-weight:700}.lesson-pdf-viewer{border:1px solid var(--border-glass-bright);border-radius:var(--radius-sm);background:#0003;width:100%;height:600px}.course-viewer.fullscreen-mode{grid-template-columns:1fr;max-width:1400px;margin:0 auto}.course-viewer.fullscreen-mode .viewer-content{max-width:1400px}.lesson-control-bar{border-bottom:1px solid var(--border-glass);box-sizing:border-box;background:#ffffff05;justify-content:space-between;align-items:center;padding:12px 24px;display:flex}.control-bar-left,.control-bar-right{align-items:center;gap:10px;display:flex}.btn-control-bar{border:1px solid var(--border-glass);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff0a;justify-content:center;align-items:center;gap:8px;padding:6px 14px;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-control-bar:hover:not(:disabled){color:var(--primary-cyan);background:#ffffff14;border-color:#06b6d466;transform:translateY(-1px)}.btn-control-bar:active:not(:disabled){transform:translateY(0)}.btn-control-bar:disabled{opacity:.3;cursor:not-allowed;color:var(--text-muted);background:#ffffff03;border-color:#ffffff05}.lesson-progress-text{color:var(--text-muted);-webkit-user-select:none;user-select:none;margin:0 4px;font-size:.85rem;font-weight:500}.fullscreen-btn{color:var(--primary-cyan);background:#06b6d41a;border-color:#06b6d433}.fullscreen-btn:hover:not(:disabled){background:#06b6d42e;border-color:#06b6d480;box-shadow:0 0 12px #06b6d426}@media (max-width:600px){.lesson-control-bar{flex-direction:column;align-items:stretch;gap:12px;padding:12px 16px}.control-bar-left,.control-bar-right{justify-content:space-between;width:100%}.fullscreen-btn-text{display:none}.btn-control-bar{padding:6px 10px}}
.exam-page{flex-direction:column;gap:25px;display:flex}.exam-header-bar{border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:center;gap:20px;padding-bottom:20px;display:flex}.exam-title-section{flex-grow:1}.exam-subtitle{color:var(--primary-cyan);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700}.exam-title{margin-top:4px;font-size:1.6rem;font-weight:800}.exam-timer{border-radius:var(--radius-sm);transition:var(--transition-smooth);align-items:center;gap:10px;padding:10px 20px;font-size:.92rem;display:inline-flex}.timer-warning{border-color:var(--danger);color:var(--danger);background:var(--danger-glow);animation:1s ease-in-out infinite pulse-glow}.exam-body-grid{grid-template-columns:1fr 280px;align-items:start;gap:30px;display:grid}.exam-main-panel{flex-direction:column;gap:25px;padding:30px;display:flex}.question-header{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.88rem;font-weight:600;display:flex}.question-num{font-family:var(--font-title);font-size:1.05rem}.question-text h3{font-size:1.35rem;font-weight:600;line-height:1.5}.options-list{flex-direction:column;gap:12px;display:flex}.option-card{border-radius:var(--radius-sm);border:1px solid var(--border-glass);cursor:pointer;transition:var(--transition-fast);background:#ffffff05;align-items:center;gap:15px;padding:15px 20px;display:flex}.option-card:hover{border-color:var(--border-glass-bright);background:#ffffff0a}.option-card.selected{background:var(--glow-cyan);border-color:var(--primary-cyan);box-shadow:0 0 10px #06b6d433}.option-indicator{border:1px solid var(--border-glass);width:28px;height:28px;color:var(--text-secondary);background:#ffffff0d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.option-card.selected .option-indicator{background:var(--primary-cyan);color:var(--text-dark);border-color:var(--primary-cyan)}.option-text{font-size:.98rem;font-weight:500}.question-footer{border-top:1px solid var(--border-glass);justify-content:space-between;margin-top:15px;padding-top:20px;display:flex}.exam-sidebar{flex-direction:column;gap:20px;padding:24px;display:flex}.sidebar-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-glass);padding-bottom:5px;font-size:.75rem;font-weight:700}.question-grid{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.grid-cell{aspect-ratio:1;border:1px solid var(--border-glass);color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);background:#ffffff05;border-radius:6px;justify-content:center;align-items:center;font-weight:700;display:flex}.grid-cell:hover{border-color:var(--border-glass-bright);background:#ffffff0d}.grid-cell.current{border-color:var(--primary-cyan);color:var(--primary-cyan);background:var(--glow-cyan)}.grid-cell.answered{color:var(--primary-purple);background:#8b5cf626;border-color:#8b5cf666}.grid-cell.answered.current{background:linear-gradient(135deg, var(--glow-cyan) 0%, #8b5cf626 100%);border-color:var(--primary-cyan);color:var(--primary-cyan)}.grid-legend{color:var(--text-secondary);border-top:1px solid var(--border-glass);flex-direction:column;gap:8px;padding-top:15px;font-size:.8rem;display:flex}.legend-item{align-items:center;gap:8px;display:flex}.legend-dot{border:1px solid var(--border-glass);background:#ffffff05;border-radius:3px;width:12px;height:12px}.legend-dot.current{background:var(--glow-cyan);border-color:var(--primary-cyan)}.legend-dot.answered{background:#8b5cf626;border-color:#8b5cf666}.exam-empty-container{justify-content:center;align-items:center;min-height:calc(100vh - 120px);padding:20px;display:flex}.exam-empty-card{text-align:center;flex-direction:column;align-items:center;gap:15px;max-width:500px;padding:40px;display:flex}.exam-empty-card h2{font-size:1.5rem}.exam-empty-card p{color:var(--text-secondary);line-height:1.6}.exam-empty-card .btn{margin-top:10px}.exam-results-container{border-radius:var(--radius-lg);max-width:800px;margin:0 auto;padding:40px}.results-header{text-align:center;border-bottom:1px solid var(--border-glass-bright);margin-bottom:30px;padding-bottom:30px}.results-badge{flex-direction:column;align-items:center;gap:15px;margin-bottom:20px;display:flex}.results-badge h1{font-size:2.2rem;font-weight:800}.results-badge.success{color:var(--success)}.results-badge.danger{color:var(--danger)}.results-summary{color:var(--text-secondary);font-size:1.1rem;line-height:1.6}.results-summary strong{color:var(--text-primary);font-size:1.25rem}.results-review{margin-bottom:35px}.results-review h3{font-size:1.3rem;font-family:var(--font-title);margin-bottom:20px}.review-list{flex-direction:column;gap:20px;display:flex}.review-card{border-radius:var(--radius-md);border:1px solid var(--border-glass);padding:20px}.review-card.correct{background:#10b98108;border-color:#10b98133}.review-card.incorrect{background:#ef444408;border-color:#ef444433}.review-card.pending{background:#f59e0b08;border-color:#f59e0b4d}.review-status-header{text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.8rem;font-weight:700;display:flex}.review-num{color:var(--text-secondary)}.review-badge-text.text-success{color:var(--success)}.review-badge-text.text-danger{color:var(--danger)}.review-badge-text.text-warning{color:#f59e0b}.review-question{margin-bottom:15px;font-size:1.05rem;font-weight:600;line-height:1.4}.review-options{flex-direction:column;gap:8px;display:flex}.review-option-item{border-radius:var(--radius-sm);color:var(--text-secondary);background:#ffffff03;align-items:center;gap:10px;padding:8px 12px;font-size:.92rem;display:flex}.review-option-item.correct-opt{background:var(--success-glow);color:var(--success);border:1px solid #10b98133;font-weight:600}.review-option-item.student-wrong-opt{background:var(--danger-glow);color:var(--danger);border:1px solid #ef444433;font-weight:600}.option-letter{font-weight:700}.opt-indicator-label{text-transform:uppercase;letter-spacing:.03em;margin-left:auto;font-size:.72rem;font-weight:700}.results-footer{justify-content:center;display:flex}@media (max-width:900px){.exam-body-grid{grid-template-columns:1fr}.exam-sidebar{order:-1}}
.exams-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:24px;display:grid}.exam-card{flex-direction:column;padding:24px;transition:transform .2s,box-shadow .2s;display:flex}.exam-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #0006}.exam-card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.exam-title{color:var(--text-primary);margin-bottom:12px;font-size:1.25rem}.exam-meta{color:var(--text-muted);align-items:center;gap:16px;margin-bottom:24px;font-size:.9rem;display:flex}.exam-meta span{align-items:center;gap:6px;display:flex}.exam-status-section{border-top:1px solid var(--border-glass);margin-top:auto;padding-top:16px}.exam-result{justify-content:space-between;align-items:center;display:flex}.result{align-items:center;gap:8px;font-size:.95rem;font-weight:500;display:flex}.result.success{color:var(--text-success)}.result.warning{color:#fbbf24}.exam-action button{justify-content:center;align-items:center;gap:8px;width:100%;display:flex}
.admin-dashboard{flex-direction:column;gap:25px;display:flex}.admin-dashboard-header{border-bottom:1px solid var(--border-glass-bright);padding-bottom:20px}.admin-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.admin-dashboard-header h1{margin-bottom:5px;font-size:2rem;font-weight:800}.admin-dashboard-header .subtitle{color:var(--text-secondary);max-width:700px;font-size:.98rem}.admin-tabs{border-radius:var(--radius-sm);border:1px solid var(--border-glass);background:#00000008;padding:4px;display:flex}.admin-tab-btn{color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 16px;font-size:.9rem;font-weight:600;display:flex}.admin-tab-btn:hover{color:var(--text-primary)}.admin-tab-btn.active{color:var(--primary-cyan);border:1px solid var(--border-glass);background:#fff;box-shadow:0 2px 8px #0000000d}.admin-tab-pane{flex-direction:column;gap:20px;display:flex}.tab-section-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.tab-section-header h2{font-size:1.35rem;font-family:var(--font-title);font-weight:700}.btn-back-link{color:var(--text-secondary);cursor:pointer;width:max-content;transition:var(--transition-fast);background:0 0;border:none;padding:8px 0;font-size:.9rem;font-weight:600}.btn-back-link:hover{color:var(--primary-cyan)}.course-detail-header-panel{padding:24px}.detail-meta h1{margin-top:8px;margin-bottom:10px;font-size:1.8rem}.detail-meta p{color:var(--text-secondary);font-size:.98rem;line-height:1.6}.syllabus-exam-split-grid{grid-template-columns:1.1fr .9fr;align-items:start;gap:30px;display:grid}.lessons-manager-column,.exam-manager-column{flex-direction:column;gap:20px;padding:24px;display:flex}.column-header{border-bottom:1px solid var(--border-glass);justify-content:space-between;align-items:center;gap:15px;padding-bottom:12px;display:flex}.column-header h3{font-size:1.15rem;font-family:var(--font-title);font-weight:700}.column-list{flex-direction:column;gap:10px;display:flex}.empty-column-state{text-align:center;color:var(--text-muted);border:1px dashed var(--border-glass);border-radius:var(--radius-sm);padding:30px;font-size:.88rem;font-style:italic}.detail-item-row{border:1px solid var(--border-glass);border-radius:var(--radius-sm);transition:var(--transition-fast);background:#00000003;justify-content:space-between;align-items:center;gap:15px;padding:12px 16px;display:flex}.detail-item-row:hover{border-color:var(--border-glass-bright);background:#00000005}.item-meta{flex-direction:column;display:flex;overflow:hidden}.item-order{text-transform:uppercase;color:var(--primary-cyan);font-size:.72rem;font-weight:700}.item-title{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:600;overflow:hidden}.question-label-text{font-family:monospace}.item-actions{flex-shrink:0;gap:6px;display:flex}.passing-score-settings{border:1px solid var(--border-glass);border-radius:var(--radius-sm);background:#00000003;flex-direction:column;gap:8px;padding:15px;display:flex}.inline-action-group{align-items:center;gap:10px;display:flex}.student-table-container{overflow-x:auto}.student-table{border-collapse:collapse;text-align:left;width:100%}.student-table th{border-bottom:1px solid var(--border-glass-bright);font-family:var(--font-title);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);padding:15px 20px;font-size:.85rem;font-weight:600}.student-table td{border-bottom:1px solid var(--border-glass);color:var(--text-secondary);vertical-align:middle;padding:15px 20px;font-size:.92rem}.student-table tbody tr:hover td{background:#00000001}.student-cell-name{color:var(--text-primary);align-items:center;gap:10px;display:flex}.student-courses-badges{flex-wrap:wrap;gap:6px;max-width:320px;display:flex}.student-row-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.empty-table-state{text-align:center;color:var(--text-muted);padding:60px 40px;font-size:1rem}.text-right{text-align:right}.student-manage-modal{flex-direction:column;gap:20px;display:flex}.modal-sub-tabs{border-radius:var(--radius-sm);border:1px solid var(--border-glass);background:#00000008;gap:4px;padding:4px;display:flex}.sub-tab-btn{color:var(--text-secondary);cursor:pointer;transition:var(--transition-fast);text-align:center;background:0 0;border:none;border-radius:6px;flex:1;padding:10px;font-size:.88rem;font-weight:600}.sub-tab-btn:hover{color:var(--text-primary)}.sub-tab-btn.active{color:var(--primary-cyan);background:#fff;box-shadow:0 2px 6px #0000000d}.sub-tab-btn.danger.active{color:var(--danger);background:var(--danger-glow);border:1px solid #dc262626}.profile-form-scrollable,.progress-history-scrollable{max-height:380px;padding-right:5px;overflow-y:auto}.sub-section-title{border-bottom:1px solid var(--border-glass);color:var(--text-primary);margin-bottom:12px;padding-bottom:6px;font-size:1rem;font-weight:700}.access-checkbox-list{flex-direction:column;gap:8px;display:flex}.access-checkbox-card{border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-fast);background:#fff;border:1px solid #0000000f;align-items:center;gap:12px;padding:10px 14px;display:flex}.access-checkbox-card:hover{background:var(--bg-deep)}.access-checkbox-card.checked{border-color:var(--primary-cyan);background:var(--glow-cyan)}.checkbox-box{border:2px solid var(--text-muted);color:#fff;width:18px;height:18px;transition:var(--transition-fast);background:#fff;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.checkbox-box.checked{background:var(--primary-cyan);border-color:var(--primary-cyan)}.checkbox-labels{flex-direction:column;display:flex}.checkbox-title{color:var(--text-primary);font-size:.88rem;font-weight:600}.checkbox-diff{color:var(--text-secondary);font-size:.7rem}.student-course-progress-list{flex-direction:column;gap:12px;margin-bottom:25px;display:flex}.course-progress-summary-card{border-radius:var(--radius-sm);border:1px solid var(--border-glass);background:#fff;padding:16px}.course-progress-summary-card.not-enrolled{opacity:.65;background:#00000004}.summary-card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.summary-card-header h4{margin-right:10px;font-size:.95rem;font-weight:700;display:inline-block}.lessons-completed-text{color:var(--text-secondary);font-size:.82rem;font-weight:600}.progress-track-wrapper{flex-direction:column;gap:10px;display:flex}.progress-exam-outcome{color:var(--text-secondary);gap:20px;font-size:.82rem;display:flex}.outcome-item{align-items:center;gap:6px;display:flex}.attempts-card-grid{flex-direction:column;gap:8px;display:flex}.attempt-log-item{border:1px solid var(--border-glass);border-radius:var(--radius-sm);background:#fff;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.attempt-log-item.passed{border-left:4px solid var(--success)}.attempt-log-item.failed{border-left:4px solid var(--danger)}.attempt-meta{flex-direction:column;display:flex}.attempt-meta strong{color:var(--text-primary);font-size:.88rem}.attempt-meta span{color:var(--text-muted);font-size:.72rem}.attempt-score{align-items:center;gap:10px;display:flex}.score-num{font-size:1.05rem;font-weight:700;font-family:var(--font-title)}.danger-zone-content{flex-direction:column;gap:20px;display:flex}.danger-zone-alert{background:var(--danger-glow);border-radius:var(--radius-sm);color:var(--danger);border:1px solid #dc262633;align-items:flex-start;gap:15px;padding:20px;line-height:1.5;display:flex}.danger-icon-heavy{flex-shrink:0;margin-top:2px}.danger-zone-alert h4{color:var(--danger);margin-bottom:4px;font-size:1.05rem;font-weight:700}.danger-zone-alert p{color:var(--text-secondary);font-size:.88rem}.danger-actions-panel{border:1px solid var(--border-glass);border-radius:var(--radius-sm);background:#00000003;flex-direction:column;align-items:flex-start;gap:12px;padding:20px;display:flex}.danger-actions-panel p{color:var(--text-secondary);font-size:.92rem}.attempts-history-panel{padding:24px}.attempts-history-panel h3{font-size:1.2rem;font-family:var(--font-title);margin-bottom:20px}.attempts-table-wrapper{overflow-x:auto}.attempts-table{border-collapse:collapse;text-align:left;width:100%}.attempts-table th{border-bottom:1px solid var(--border-glass-bright);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;padding:12px 16px;font-size:.8rem}.attempts-table td{border-bottom:1px solid var(--border-glass);color:var(--text-secondary);padding:12px 16px;font-size:.88rem}@media (max-width:992px){.syllabus-exam-split-grid{grid-template-columns:1fr}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin-animation{animation:1s linear infinite spin}
.storefront-page{max-width:1200px;margin:0 auto;padding:40px}.store-hero{text-align:center;margin-bottom:50px}.store-hero h1{margin-bottom:15px;font-size:3rem}.store-hero p{color:var(--text-muted);max-width:600px;margin:0 auto 30px;font-size:1.1rem}.store-search{max-width:500px;margin:0 auto;position:relative}.store-search .search-icon{color:var(--text-muted);position:absolute;top:50%;left:15px;transform:translateY(-50%)}.store-search input{border:1px solid var(--border-glass);background:var(--glass-bg);width:100%;color:var(--text-primary);border-radius:30px;padding:15px 15px 15px 45px;font-size:1rem;transition:all .3s}.store-search input:focus{border-color:var(--primary-cyan);outline:none;box-shadow:0 0 0 3px #06b6d433}.store-tabs{flex-wrap:wrap;justify-content:center;gap:15px;margin-bottom:40px;display:flex}.store-tab{background:var(--glass-bg);border:1px solid var(--border-glass);color:var(--text-muted);cursor:pointer;border-radius:30px;align-items:center;gap:8px;padding:12px 24px;font-weight:500;transition:all .2s;display:flex}.store-tab:hover{color:var(--text-primary);background:#ffffff0d}.store-tab.active{background:var(--primary-cyan);color:#fff;border-color:var(--primary-cyan);box-shadow:0 4px 12px #06b6d44d}.store-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px;display:grid}.store-card{flex-direction:column;transition:transform .3s,box-shadow .3s;display:flex;overflow:hidden}.store-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0003}.store-img-wrapper{width:100%;height:180px;overflow:hidden}.store-img-wrapper img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.store-card:hover .store-img-wrapper img{transform:scale(1.05)}.store-card-content{flex-direction:column;flex:1;padding:20px;display:flex}.store-context{text-transform:uppercase;letter-spacing:1px;color:var(--primary-cyan);margin-bottom:8px;font-size:.75rem;font-weight:600}.store-title{color:var(--text-primary);margin:0 0 10px;font-size:1.2rem}.store-desc{color:var(--text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin:0 0 20px;font-size:.9rem;line-height:1.5;display:-webkit-box;overflow:hidden}.store-card-footer{border-top:1px solid var(--border-glass);justify-content:space-between;align-items:center;margin-top:auto;padding-top:15px;display:flex}.store-price{color:var(--text-primary);font-size:1.25rem;font-weight:700}.empty-catalog{text-align:center;color:var(--text-muted);background:var(--glass-bg);border-radius:var(--radius-lg);border:1px dashed var(--border-glass-bright);padding:60px 20px}.toast-notification{background-color:var(--success-color,#10b981);color:#fff;border-radius:var(--radius-md);z-index:9999;align-items:center;gap:8px;padding:12px 24px;font-weight:500;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}
.announcement-code{color:var(--primary-color);background:#0003;border-radius:4px;padding:4px 8px;font-family:monospace;font-size:.85rem;font-weight:600}.data-table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:500}.data-table tbody tr:hover{background-color:#ffffff05}
.student-announcements{max-width:900px;margin:0 auto;padding:20px}.announcements-list{flex-direction:column;gap:15px;display:flex}.student-announcement-card{background:var(--glass-bg);border:1px solid var(--border-glass);border-radius:var(--radius-lg);cursor:pointer;padding:20px;transition:all .2s;position:relative;overflow:hidden}.student-announcement-card:hover{background:#ffffff0d;border-color:#ffffff1a;transform:translateY(-2px)}.student-announcement-card.unread{border-left:4px solid var(--primary-color)}.announcement-header{justify-content:space-between;align-items:center;display:flex}.announcement-title-group{align-items:center;gap:10px;display:flex}.announcement-title{color:var(--text-light);font-size:1.1rem;font-weight:600}.announcement-code{color:var(--text-muted);background:#0003;border-radius:4px;padding:2px 6px;font-family:monospace;font-size:.85rem}.badge-new{background-color:var(--primary-color);color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:2px 8px;font-size:.75rem;font-weight:700}.announcement-date{color:var(--text-muted);font-size:.85rem}.announcement-body{border-top:1px solid var(--border-glass);color:var(--text-regular);white-space:pre-wrap;margin-top:15px;padding-top:15px;line-height:1.6;animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
.student-app-form-container{max-width:800px;margin:0 auto;padding:20px 0 60px}.app-form-loading{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:100px 0;display:flex}.app-form-empty{text-align:center;max-width:600px;margin:40px auto;padding:60px 40px}.submission-success-banner{background:var(--glow-cyan);border:1px solid var(--border-glow-cyan);border-radius:var(--radius-lg);align-items:flex-start;gap:20px;margin-bottom:30px;padding:30px;display:flex}.submission-success-banner h3{color:var(--primary-cyan);margin-bottom:8px;font-size:1.25rem}.submission-success-banner p{color:var(--text-secondary);font-size:.95rem;line-height:1.6}.submission-success-banner .submission-date{color:var(--text-muted);margin-top:12px;font-size:.8rem;font-weight:500;display:inline-block}.app-form-progress-card{margin-bottom:30px;padding:24px}.progress-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.progress-badge{color:var(--primary-cyan);border-radius:var(--radius-sm);background:#06b6d41a;padding:6px 12px;font-size:.9rem;font-weight:700}.progress-track{background:#ffffff0d;border-radius:4px;width:100%;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#06b6d4,#3b82f6);border-radius:4px;height:100%;transition:width .4s ease-out}.app-form-questions-list{flex-direction:column;gap:24px;display:flex}.question-card{padding:30px;transition:transform .25s cubic-bezier(.4,0,.2,1),border-color .25s;position:relative}.question-card:hover{border-color:#ffffff26;transform:translateY(-2px)}.question-card.read-only:hover{border-color:var(--border-glass);transform:none}.question-card.card-error{background:#ef444405;border-color:#ef444466}.question-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.question-number{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.8rem;font-weight:700}.error-text{color:#ef4444;align-items:center;gap:4px;font-size:.8rem;font-weight:600;display:flex}.question-text-title{color:var(--text-primary);margin-bottom:20px;font-size:1.15rem;font-weight:500;line-height:1.5}.text-answer-input{resize:vertical;background:#0003;border-color:#ffffff14;min-height:120px}.text-answer-input:focus{background:#0000004d}.options-answers-container{flex-direction:column;gap:12px;display:flex}.option-choice-item{border-radius:var(--radius-md);cursor:pointer;background:#ffffff05;border:1px solid #ffffff0d;align-items:center;gap:14px;padding:14px 20px;transition:all .2s;display:flex}.option-choice-item:hover:not(.disabled){background:#ffffff0d;border-color:#ffffff1f;transform:translate(4px)}.option-choice-item.selected{background:#06b6d40d;border-color:#06b6d44d}.option-choice-item.disabled{cursor:default}.option-choice-item input[type=radio]{accent-color:var(--primary-cyan);width:18px;height:18px;cursor:inherit}.option-label-text{color:var(--text-secondary);font-size:.95rem}.option-choice-item.selected .option-label-text{color:var(--text-primary);font-weight:500}.app-form-actions-row{border-top:1px solid var(--border-glass);justify-content:flex-end;gap:16px;margin-top:30px;padding-top:20px;display:flex}.question-code-badge{color:var(--primary-cyan);text-transform:none;letter-spacing:normal;background:#06b6d426;border:1px solid #06b6d433;border-radius:4px;margin-left:8px;padding:2px 6px;font-size:.75rem;font-weight:600;display:inline-block}
