@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Fira+Code:wght@400;500;600&display=swap";:root{box-sizing:border-box}#root{width:100%;min-height:100vh}body{background-color:#f8fafc;margin:0;padding:0;font-family:Inter,sans-serif}.sidebar{width:var(--sidebar-width);background-color:var(--bg-sidebar);color:var(--text-light);z-index:50;transition:transform var(--transition-normal);border-right:1px solid #ffffff0d;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-header{border-bottom:1px solid #ffffff14;flex-direction:column;justify-content:center;align-items:center;height:auto;padding:20px 10px;display:flex}.logo-container{text-align:center;flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.logo-icon{width:38px;height:38px}.logo-text{letter-spacing:.5px;color:var(--text-light);text-align:center;word-wrap:break-word;max-width:70px;font-size:.85rem;font-weight:800;line-height:1.25}.sidebar-close-btn{color:var(--text-light);cursor:pointer;background:0 0;border:none;display:none}.sidebar-nav{flex-direction:column;flex:1;gap:8px;padding:20px 10px;display:flex}.nav-item{border-radius:var(--radius-md);width:100%;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:14px 10px;font-size:.75rem;font-weight:500;display:flex}.nav-item:hover{color:var(--text-light);background-color:#ffffff0d}.nav-item.active{background-color:var(--color-primary);color:var(--text-light)}.nav-icon{margin-bottom:2px}.sidebar-overlay{display:none}@media (width<=1024px){.sidebar{width:250px;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-header{height:var(--header-height);flex-direction:row;justify-content:space-between;padding:0 20px}.logo-container{text-align:left;flex-direction:row;gap:12px;width:auto}.logo-text{text-align:left;max-width:none;font-size:1.15rem}.sidebar-close-btn{display:block}.sidebar-overlay{z-index:40;background-color:#00000080;display:block;position:fixed;inset:0}.nav-item{flex-direction:row;justify-content:flex-start;gap:16px;padding:12px 20px;font-size:.9rem}}.topbar{top:0;left:var(--sidebar-width);height:var(--header-height);background-color:var(--bg-card);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);z-index:40;justify-content:space-between;align-items:center;padding:0 30px;display:flex;position:fixed;right:0}.topbar-left{flex:1;align-items:center;gap:15px;max-width:400px;display:flex}.mobile-menu-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;display:none}.search-container{width:100%;position:relative}.search-icon{color:var(--text-muted);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-container input{border-radius:var(--radius-md);width:100%;transition:all var(--transition-fast);background-color:#f1f5f9;border:1px solid #0000;outline:none;padding:10px 14px 10px 42px;font-size:.9rem}.search-container input:focus{background-color:var(--bg-card);border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.topbar-right{align-items:center;gap:20px;display:flex}.icon-badge-container{position:relative}.topbar-btn{cursor:pointer;color:var(--text-secondary);width:40px;height:40px;transition:background-color var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.topbar-btn:hover{background-color:var(--border-light)}.topbar-btn .badge{background-color:var(--color-primary);color:var(--text-light);border:2px solid var(--bg-card);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:6px;right:6px}.profile-section{position:relative}.profile-trigger{cursor:pointer;border-radius:var(--radius-md);transition:background-color var(--transition-fast);align-items:center;gap:10px;padding:6px 12px;display:flex}.profile-trigger:hover{background-color:var(--border-light)}.user-avatar{object-fit:cover;border-radius:50%;width:32px;height:32px}.user-id{color:var(--text-primary);font-size:.9rem;font-weight:600}.chevron-icon{color:var(--text-muted)}.profile-dropdown,.notifications-dropdown{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;flex-direction:column;width:240px;padding:8px 0;animation:.2s slideIn;display:flex;position:absolute;top:calc(100% + 10px);right:0}.notifications-dropdown{width:320px}.dropdown-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.dropdown-header h3{font-size:.95rem;font-weight:600}.dropdown-header button{color:var(--color-primary);cursor:pointer;background:0 0;border:none;font-size:.8rem;font-weight:600}.notifications-list{max-height:280px;overflow-y:auto}.notif-item{cursor:pointer;border-bottom:1px solid var(--border-light);transition:background-color var(--transition-fast);padding:12px 16px}.notif-item:hover{background-color:var(--border-light)}.notif-item.unread{background-color:var(--color-primary-light)}.notif-title{color:var(--text-primary);margin-bottom:2px;font-size:.85rem;font-weight:600}.notif-msg{color:var(--text-secondary);font-size:.8rem;line-height:1.3}.notif-time{color:var(--text-muted);margin-top:4px;font-size:.7rem}.empty-notif{text-align:center;color:var(--text-muted);padding:30px;font-size:.85rem}.dropdown-user-info{flex-direction:column;padding:12px 16px;display:flex}.dropdown-user-info strong{color:var(--text-primary);font-size:.9rem}.dropdown-user-info span{color:var(--text-muted);font-size:.8rem}.profile-dropdown button{text-align:left;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:12px;padding:10px 16px;font-size:.85rem;font-weight:500;display:flex}.profile-dropdown button:hover{background-color:var(--border-light);color:var(--text-primary)}.profile-dropdown hr{border:none;border-top:1px solid var(--border-light);margin:6px 0}.profile-dropdown .logout-btn{color:var(--danger)}.profile-dropdown .logout-btn:hover{background-color:var(--danger-light);color:var(--danger)}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=1024px){.topbar{padding:0 20px;left:0}.mobile-menu-btn{display:block}}@media (width<=576px){.user-id,.chevron-icon{display:none}.search-container{max-width:150px}}.labs-container{gap:30px;width:100%;display:flex}.labs-main{flex:1}.labs-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:24px;display:flex}.labs-header h2{color:var(--text-primary);font-size:1.5rem;font-weight:700}.labs-controls{align-items:center;gap:15px;display:flex}.sort-dropdown-container select{border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:border-color var(--transition-fast);outline:none;padding:8px 12px;font-size:.85rem;font-weight:500}.sort-dropdown-container select:focus{border-color:var(--color-primary)}.filter-buttons{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-card);display:flex;overflow:hidden}.filter-btn{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:8px 16px;font-size:.85rem;font-weight:500}.filter-btn:not(:last-child){border-right:1px solid var(--border-color)}.filter-btn:hover{background-color:var(--border-light)}.filter-btn.active{background-color:var(--color-primary);color:var(--text-light)}.labs-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.lab-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-premium);transition:transform var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;padding:20px;display:flex}.lab-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000000d}.lab-card-top{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.lab-icon-wrapper{border-radius:var(--radius-md);width:44px;height:44px;color:var(--text-light);justify-content:center;align-items:center;display:flex}.lab-icon-wrapper.code{background-color:#0c1a30}.lab-icon-wrapper.db{background-color:var(--info)}.lab-icon-wrapper.java{background-color:#ef4444}.lab-icon-wrapper.cpp{background-color:#8b5cf6}.lab-icon-wrapper.cloud{background-color:#06b6d4}.info-icon-btn{color:var(--text-muted);cursor:pointer;width:32px;height:32px;transition:background-color var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.info-icon-btn:hover{background-color:var(--border-light);color:var(--text-secondary)}.lab-card-title{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;height:40px;margin-bottom:6px;font-size:.95rem;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.lab-card-course{color:var(--text-secondary);margin-bottom:16px;font-size:.8rem}.validity-indicator{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.75rem;font-weight:600;display:flex}.status-tag{border-radius:4px;padding:2px 6px}.status-tag.expired{color:var(--danger);background-color:var(--danger-light)}.status-tag.active{color:var(--success);background-color:var(--success-light)}.status-tag.upcoming{color:var(--warning);background-color:var(--warning-light)}.progress-percentage{color:var(--text-muted)}.progress-percentage.active{color:var(--success)}.progress-bar-container{background-color:var(--border-light);border-radius:3px;width:100%;height:6px;margin-bottom:16px;overflow:hidden}.progress-bar-fill{background-color:var(--color-primary);height:100%;transition:width var(--transition-normal);border-radius:3px}.lab-card.expired .progress-bar-fill{background-color:var(--danger)}.lab-stats-row{border-bottom:1px solid var(--border-light);margin-bottom:12px;padding-bottom:12px;display:flex}.stat-col{flex:1}.stat-val{color:var(--text-primary);font-size:1rem;font-weight:700}.stat-lbl{color:var(--text-muted);font-size:.7rem;font-weight:500}.lab-dates-row{flex-direction:column;gap:6px;margin-bottom:18px;display:flex}.date-item{color:var(--text-secondary);align-items:center;gap:8px;font-size:.75rem;font-weight:600;display:flex}.date-lbl{color:var(--text-muted);margin-left:4px;font-weight:400}.lab-actions button{border-radius:var(--radius-md);cursor:pointer;width:100%;transition:all var(--transition-fast);padding:10px;font-size:.85rem;font-weight:600}.launch-btn{background-color:var(--color-primary);color:var(--text-light);border:none}.launch-btn:hover{background-color:var(--color-primary-hover)}.renew-btn,.enroll-btn{background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.renew-btn:hover,.enroll-btn:hover{background-color:var(--border-light)}.renew-btn:disabled,.enroll-btn:disabled{background-color:var(--border-light);color:var(--text-muted);cursor:not-allowed}.labs-stats-sidebar{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:280px;box-shadow:var(--shadow-sm);flex-direction:column;align-self:flex-start;gap:20px;padding:24px 20px;display:flex}.labs-stats-sidebar h3{color:var(--text-primary);border-bottom:1px solid var(--border-light);padding-bottom:10px;font-size:1.1rem;font-weight:700}.sidebar-stats-list{flex-direction:column;gap:14px;display:flex}.stat-item-card{border:1px solid var(--border-light);border-radius:var(--radius-md);transition:background-color var(--transition-fast);background-color:#fafbfc;align-items:center;gap:14px;padding:12px 14px;display:flex}.stat-item-card:hover{background-color:var(--border-light)}.stat-item-icon-wrapper{border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.stat-item-icon-wrapper.blue{background-color:var(--info-light);color:var(--info)}.stat-item-icon-wrapper.green{color:#10b981;background-color:#ecfdf5}.stat-item-icon-wrapper.orange{color:#f97316;background-color:#fff7ed}.stat-item-icon-wrapper.purple{color:#a855f7;background-color:#faf5ff}.stat-item-text{flex:1;justify-content:space-between;align-items:center;display:flex}.stat-item-lbl{color:var(--text-secondary);font-size:.8rem;font-weight:500}.stat-item-val{color:var(--text-primary);font-size:.95rem;font-weight:700}.info-modal-overlay{z-index:1000;background-color:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.info-modal{background-color:var(--bg-card);border-radius:var(--radius-lg);width:450px;max-width:100%;box-shadow:var(--shadow-lg);animation:.25s slideUp;overflow:hidden}.info-modal-header{background-color:var(--bg-primary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.info-modal-header h3{font-size:1.1rem;font-weight:700}.info-modal-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;font-size:1.5rem}.info-modal-body{padding:20px}.info-modal-body h4{margin-bottom:4px;font-size:1.05rem;font-weight:700}.modal-course{color:var(--text-secondary);margin-bottom:14px;font-size:.85rem}.info-modal-body hr{border:none;border-top:1px solid var(--border-light);margin:14px 0}.info-grid{color:var(--text-secondary);flex-direction:column;gap:10px;font-size:.85rem;display:flex}.info-desc{color:var(--text-secondary);font-size:.85rem;line-height:1.4}.labs-empty-state{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);text-align:center;padding:40px}.empty-state-illustration{margin-bottom:16px;font-size:3rem}.labs-empty-state h3{margin-bottom:8px;font-size:1.15rem;font-weight:600}.labs-empty-state p{color:var(--text-muted);font-size:.85rem}@media (width<=1200px){.labs-container{flex-direction:column}.labs-stats-sidebar{order:-1;width:100%}.sidebar-stats-list{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}}.lab-workspace-wrapper{flex-direction:column;gap:24px;width:100%;display:flex}.workspace-head-nav{border-bottom:1px solid var(--border-color);align-items:center;gap:16px;padding-bottom:16px;display:flex}.back-labs-btn{background-color:var(--border-light);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:8px;padding:8px 14px;font-size:.85rem;font-weight:600;display:flex}.back-labs-btn:hover{background-color:var(--border-color);color:var(--text-primary)}.workspace-head-nav h2{font-size:1.3rem;font-weight:700}.course-code-lbl{background-color:var(--color-primary-light);color:var(--color-primary);border-radius:4px;padding:4px 8px;font-size:.75rem;font-weight:700}.workspace-loading{text-align:center;color:var(--text-muted);padding:40px}.workspace-empty{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);text-align:center;max-width:500px;margin:0 auto;padding:60px 40px}.empty-sub-icon{color:var(--text-muted);margin-bottom:16px}.subparts-flow{flex-direction:column;gap:20px;display:flex}.subpart-flow-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:16px;padding:24px;display:flex}.subpart-info h3{color:var(--text-primary);margin-bottom:4px;font-size:1.1rem;font-weight:700}.subpart-info p{color:var(--text-secondary);font-size:.85rem}.questions-box-list{border-top:1px solid var(--border-light);flex-direction:column;gap:10px;padding-top:14px;display:flex}.questions-box-list h4{text-transform:uppercase;color:var(--text-muted);letter-spacing:.5px;margin-bottom:6px;font-size:.85rem}.question-row-item{border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background-color:#fafbfc;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.question-row-item:hover{border-color:var(--color-primary);background-color:#f8fafc}.question-row-item.solved{background-color:var(--success-light);border-color:#10b98133}.q-left{align-items:center;gap:12px;font-size:.9rem;font-weight:600;display:flex}.q-status-checkbox{color:var(--text-muted)}.q-status-checkbox.checked{color:var(--success)}.q-right{align-items:center;gap:16px;display:flex}.q-type-badge{text-transform:uppercase;border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:700}.q-type-badge.mcq{background-color:var(--warning-light);color:var(--warning)}.q-type-badge.coding{background-color:var(--info-light);color:var(--info)}.solve-btn-action{background-color:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);padding:6px 12px;font-size:.75rem;font-weight:700}.question-row-item:hover .solve-btn-action{background-color:var(--color-primary);color:var(--text-light);border-color:var(--color-primary)}.question-row-item.solved .solve-btn-action{color:var(--success);border-color:#10b9814d}.question-row-item.solved:hover .solve-btn-action{background-color:var(--success);color:var(--text-light);border-color:var(--success)}.question-solver-modal{background-color:var(--bg-card);border-radius:var(--radius-lg);width:700px;max-width:100%;box-shadow:var(--shadow-lg);flex-direction:column;animation:.3s slideUp;display:flex;overflow:hidden}.solver-modal-body{max-height:80vh;padding:24px;overflow-y:auto}.q-desc-bold{color:var(--text-primary);white-space:pre-wrap;margin-bottom:20px;font-size:1rem;font-weight:600;line-height:1.5}.mcq-options-container{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.mcq-options-container label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.mcq-option-label{border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background-color:#fafbfc;align-items:center;gap:12px;padding:12px 16px;display:flex}.mcq-option-label:hover{background-color:var(--border-light)}.mcq-option-label.selected{border-color:var(--color-primary);background-color:var(--color-primary-light);color:var(--color-primary);font-weight:700}.coding-solve-container{flex-direction:column;gap:14px;margin-bottom:20px;display:flex}.coding-solve-container label{color:var(--text-secondary);font-size:.85rem;font-weight:600}.editor-modal-wrap{border-radius:var(--radius-md);border:1px solid #2d2d2d;overflow:hidden}.stdin-field input{border:1px solid var(--border-color);border-radius:var(--radius-md);outline:none;width:100%;padding:10px 14px;font-size:.9rem}.stdin-field input:focus{border-color:var(--color-primary)}.output-pane{color:#a7f3d0;border-radius:var(--radius-md);white-space:pre-wrap;background-color:#1e1e1e;max-height:120px;padding:12px;font-family:Fira Code,monospace;font-size:.85rem;overflow-y:auto}.output-pane.has-error{color:#fca5a5;border:1px solid #7f1d1d}.solver-actions-row{border-top:1px solid var(--border-light);justify-content:flex-end;gap:12px;padding-top:16px;display:flex}.run-test-btn{background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:8px;padding:10px 18px;font-size:.85rem;font-weight:600;display:flex}.run-test-btn:hover{background-color:var(--border-light)}.submit-sol-btn{background-color:var(--color-primary);color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 18px;font-size:.85rem;font-weight:700;display:flex}.submit-sol-btn:hover{background-color:var(--color-primary-hover)}.solving-success-alert{background-color:var(--success-light);border-radius:var(--radius-lg);text-align:center;color:var(--success);border:1px solid #10b98133;flex-direction:column;align-items:center;gap:12px;padding:24px;display:flex}.solving-success-alert p{font-size:1rem;font-weight:700}.text-solve-container{flex-direction:column;gap:16px;margin-bottom:20px;display:flex}.text-image-wrapper{justify-content:center;align-items:center;width:100%;display:flex}.text-attached-image{border-radius:var(--radius-md);border:1px solid var(--border-color);object-fit:contain;max-width:100%;max-height:280px;box-shadow:var(--shadow-sm)}.study-guide-text{color:var(--text-secondary);background-color:var(--border-light);border-radius:var(--radius-sm);border-left:4px solid var(--success);padding:12px 16px;font-size:.85rem;font-style:italic;line-height:1.4}.q-type-badge.text{background-color:var(--success-light);color:var(--success)}.inner-lab-banner-container{color:#fff;box-shadow:var(--shadow-sm);background:radial-gradient(circle at 80% 20%,#ffffff0d 0%,#0000 60%);border-radius:8px;align-items:center;margin-bottom:16px;padding:24px;display:flex}.inner-lab-banner-blue-box{background-color:var(--color-primary);border-radius:8px;justify-content:center;align-items:center;width:48px;height:48px;margin-right:18px;display:flex;box-shadow:0 4px 6px -1px #0000001a}.inner-lab-banner-info{flex-direction:column;flex:1;gap:8px;display:flex}.inner-lab-banner-info h2{color:#fff;letter-spacing:-.025em;margin:0;font-size:1.25rem;font-weight:700}.inner-lab-banner-progress-wrap{align-items:center;gap:12px;width:100%;max-width:400px;display:flex}.inner-lab-banner-progress-bar{background-color:#fff3;border-radius:3px;flex:1;height:6px;overflow:hidden}.inner-lab-banner-progress-fill{background-color:#fff;border-radius:3px;height:100%;transition:width .3s}.inner-lab-banner-progress-text{color:#ffffffe6;font-size:13px;font-weight:700}.inner-stats-row{gap:16px;margin-bottom:24px;display:flex}.inner-stat-card{background-color:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);background-image:linear-gradient(#0000,#00000003);border-radius:8px;flex-direction:column;flex:1;gap:4px;padding:12px 16px;display:flex}.stat-card-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.stat-card-value{font-size:14px;font-weight:700}.inner-stat-card.border-green{border-left:4px solid #10b981}.text-green{color:#10b981}.inner-stat-card.border-red{border-left:4px solid #ef4444}.text-red{color:#ef4444}.inner-stat-card.border-purple{border-left:4px solid #8b5cf6}.text-purple{color:#8b5cf6}.inner-stat-card.border-yellow{border-left:4px solid #f59e0b}.text-yellow{color:#f59e0b}.inner-stat-card.border-blue{border-left:4px solid var(--info)}.text-blue{color:var(--info)}.workspace-split-layout{grid-template-columns:300px 1fr;align-items:start;gap:24px;display:grid}.workspace-sidebar-pane{background-color:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:8px;flex-direction:column;gap:16px;padding:16px;display:flex}.workspace-sidebar-search{border:1px solid var(--border-color);background-color:var(--border-light);border-radius:6px;align-items:center;gap:8px;padding:8px 12px;transition:border-color .2s;display:flex}.workspace-sidebar-search:focus-within{border-color:var(--primary-color)}.workspace-sidebar-search input{color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:13px}.workspace-sidebar-search input::placeholder,.search-pane-icon{color:var(--text-secondary)}.workspace-sidebar-pane{flex-direction:column;max-height:calc(100vh - 220px);display:flex}.workspace-accordion-container{flex-direction:column;gap:8px;max-height:calc(100vh - 280px);padding-right:6px;display:flex;overflow-y:auto}.workspace-accordion-container::-webkit-scrollbar{width:6px}.workspace-accordion-container::-webkit-scrollbar-track{background:var(--bg-card);border-radius:4px}.workspace-accordion-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.workspace-accordion-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}.accordion-unit-card{border:1px solid var(--border-color);background-color:var(--card-bg);border-radius:6px;overflow:hidden}.accordion-unit-header{cursor:pointer;background-color:var(--card-bg);-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;padding:12px;transition:background-color .2s;display:flex}.accordion-unit-header:hover{background-color:var(--border-light)}.accordion-unit-header.active{background-color:var(--border-light);border-bottom:1px solid var(--border-color)}.accordion-header-left{align-items:center;gap:8px;display:flex}.accordion-chevron{color:var(--text-secondary);width:12px;font-size:10px}.accordion-unit-name{color:var(--text-primary);font-size:13px;font-weight:600}.accordion-unit-progress-circle{background-color:var(--border-color);color:var(--text-secondary);border-radius:12px;padding:2px 8px;font-size:11px;font-weight:700}.accordion-unit-body{background-color:var(--border-light);padding:6px 12px 12px}.accordion-lecture-header{cursor:pointer;color:var(--text-secondary);align-items:center;gap:8px;padding:8px 0;font-size:13px;font-weight:600;display:flex}.lecture-chevron{color:var(--text-secondary);width:10px;font-size:9px}.lecture-title-text{-webkit-user-select:none;user-select:none}.accordion-questions-list{border-left:1px dashed var(--border-color);flex-direction:column;gap:8px;margin-top:6px;padding-left:14px;display:flex}.accordion-question-item{cursor:pointer;background-color:var(--card-bg);border:1px solid #0000;border-radius:6px;gap:10px;padding:8px 10px;transition:all .2s;display:flex}.accordion-question-item:hover{border-color:var(--border-color);background-color:#4f46e508}.accordion-question-item.selected{border-color:#4f46e526;border-left:3px solid var(--primary-color);background-color:#4f46e50f}.accordion-q-status{justify-content:center;align-items:center;display:flex}.solved-dot-indicator{border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;font-weight:700;display:flex}.solved-dot-indicator.green{color:#10b981;background-color:#d1fae5}.solved-dot-indicator.red{color:#ef4444;background-color:#fee2e2}.accordion-q-details{flex-direction:column;gap:2px;display:flex}.accordion-q-title{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.3}.accordion-q-subtitle{color:var(--text-secondary);font-size:10px}.workspace-details-pane{flex:1}.details-pane-card{background-color:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:8px;padding:24px}.details-pane-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.details-header-title-box h3{color:var(--text-primary);margin:0;font-size:1.15rem;font-weight:700;line-height:1.4}.details-header-actions{gap:12px;display:flex}.btn-view-instructions{border:1px solid var(--color-primary);color:var(--color-primary);cursor:pointer;background-color:#0000;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s}.btn-view-instructions:hover{background-color:#f973160d}.btn-take-test{background-color:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 24px;font-size:13px;font-weight:700;transition:background-color .2s;box-shadow:0 2px 4px #f9731633}.btn-take-test:hover{background-color:var(--color-primary-hover)}.details-tabs-row{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.details-tab.active{color:var(--color-primary);border-bottom:2px solid var(--color-primary);margin-bottom:-2px;padding:8px 16px;font-size:14px;font-weight:700}.details-attempts-label{color:#f59e0b;background-color:#fffbeb;border:1px solid #fde68a;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:600}.details-deadline-label{color:#ef4444;margin-bottom:16px;font-size:12px;font-weight:600}.details-table-wrapper{border:1px solid var(--border-color);border-radius:6px;margin-bottom:24px;overflow:hidden}.details-metadata-table{border-collapse:collapse;text-align:left;width:100%}.details-metadata-table th{border-bottom:1px solid var(--border-color);color:var(--text-secondary);background-color:#f8fafc;padding:10px 12px;font-size:12px;font-weight:600}.details-metadata-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:12px;font-size:13px}.details-metadata-table tr:last-child td{border-bottom:none}.details-metadata-table tr.total-row td{color:var(--color-primary);background-color:var(--color-primary-light);font-weight:700}.details-description-box h4{color:var(--text-primary);margin-bottom:8px;font-size:14px;font-weight:700}.details-description-box p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.6}.details-pane-empty{background-color:var(--card-bg);border:1px dashed var(--border-color);text-align:center;color:var(--text-secondary);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px;display:flex}.terms-instructions-modal{border:1px solid var(--border-color);border-radius:8px;flex-direction:column;width:90%;max-width:750px;padding:24px;animation:.25s ease-out modalReveal;display:flex;box-shadow:0 20px 25px -5px #00000026;background-color:#fff!important}.terms-modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;display:flex}.terms-modal-header h3{color:var(--text-primary);margin:0;font-size:1.2rem;font-weight:700}.terms-modal-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;font-size:24px;line-height:1}.terms-modal-body{min-height:300px;max-height:400px;margin-bottom:20px;padding-right:8px;overflow-y:auto}.terms-modal-body h4{color:var(--text-primary);margin-bottom:16px;font-size:15px;font-weight:700}.terms-list{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.terms-list li{color:var(--text-secondary);align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;display:flex}.terms-bullet{color:#94a3b8;margin-top:3px;font-size:10px}.terms-modal-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-top:16px;display:flex}.terms-carousel-dots{gap:6px;display:flex}.terms-carousel-dots .dot{background-color:var(--border-color);border-radius:50%;width:6px;height:6px}.terms-carousel-dots .dot.active{background-color:var(--color-primary);border-radius:3px;width:16px}.terms-footer-actions{gap:12px;display:flex}.terms-btn-close{border:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);background:0 0;border-radius:6px;padding:8px 24px;font-size:13px;font-weight:600;transition:background-color .2s}.terms-btn-close:hover{background-color:var(--border-light)}.terms-btn-proceed{background-color:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 24px;font-size:13px;font-weight:700;transition:background-color .2s;box-shadow:0 2px 4px #f9731633}.terms-btn-proceed:hover{background-color:var(--color-primary-hover)}@keyframes modalReveal{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.info-modal-overlay.solver-active{background-color:#fff!important;padding:0!important}.question-solver-modal.full-screen{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;box-shadow:none!important;background-color:#fff!important;border:none!important;border-radius:0!important;margin:0!important}.question-solver-modal.full-screen .solver-modal-body{background-color:#fff!important;height:calc(100vh - 80px)!important;max-height:calc(100vh - 80px)!important;padding:32px 48px!important;overflow-y:auto!important}.question-solver-modal.full-screen .info-modal-header{border-bottom:1px solid var(--border-color)!important;background-color:#f8fafc!important;padding:16px 48px!important}.exams-container{gap:30px;width:100%;display:flex}.exams-main{flex:1}.exams-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.exams-header h2{color:var(--text-primary);font-size:1.5rem;font-weight:700}.exams-controls{align-items:center;display:flex}.exams-empty-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;justify-content:center;align-items:center;min-height:380px;padding:60px 40px;display:flex}.clipboard-illustration-container{width:150px;height:150px;margin-bottom:20px}.clipboard-illustration{width:100%;height:100%}.no-data-text{color:var(--text-secondary);text-align:center;font-size:1.1rem;font-weight:600}.exams-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.exam-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-premium);transition:transform var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;padding:20px;display:flex}.exam-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000000d}.exam-card-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.exam-status-tag{text-transform:capitalize;border-radius:4px;padding:3px 8px;font-size:.75rem;font-weight:600}.exam-status-tag.active{color:var(--success);background-color:var(--success-light)}.exam-status-tag.completed{color:var(--info);background-color:var(--info-light)}.exam-status-tag.upcoming{color:var(--warning);background-color:var(--warning-light)}.exam-status-tag.expired{color:var(--danger);background-color:var(--danger-light)}.duration-info{color:var(--text-secondary);align-items:center;gap:6px;font-size:.8rem;font-weight:500;display:flex}.exam-card-title{color:var(--text-primary);margin-bottom:12px;font-size:1rem;font-weight:700;line-height:1.4}.exam-dates{color:var(--text-secondary);gap:12px;margin-bottom:16px;font-size:.8rem;display:flex}.exam-date-item{align-items:center;gap:6px;display:flex}.exam-score-banner{background-color:var(--border-light);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:16px;padding:8px 12px;font-size:.85rem;display:flex}.result-tag{text-transform:uppercase;border-radius:3px;padding:2px 6px;font-size:.7rem;font-weight:700}.result-tag.pass{background-color:var(--success-light);color:var(--success)}.result-tag.fail{background-color:var(--danger-light);color:var(--danger)}.exam-card-footer{margin-top:auto}.start-exam-btn{background-color:var(--color-primary);width:100%;color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;display:flex}.start-exam-btn:hover{background-color:var(--color-primary-hover)}.view-results-btn{background-color:var(--bg-primary);width:100%;color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;display:flex}.view-results-btn:hover{background-color:var(--border-light)}.upcoming-btn{background-color:var(--border-light);width:100%;color:var(--text-muted);border-radius:var(--radius-md);cursor:not-allowed;border:none;padding:10px;font-size:.85rem;font-weight:600}.exams-stats-sidebar{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:280px;box-shadow:var(--shadow-sm);flex-direction:column;align-self:flex-start;gap:20px;padding:24px 20px;display:flex}.exams-stats-sidebar h3{color:var(--text-primary);border-bottom:1px solid var(--border-light);padding-bottom:10px;font-size:1.1rem;font-weight:700}.quiz-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.quiz-modal{background-color:var(--bg-card);border-radius:var(--radius-lg);width:580px;max-width:100%;box-shadow:var(--shadow-lg);flex-direction:column;animation:.3s slideUp;display:flex;overflow:hidden}.quiz-modal-header{background-color:var(--bg-primary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.quiz-modal-header h3{color:var(--text-primary);font-size:1.15rem;font-weight:700}.q-tracker{color:var(--text-muted);font-size:.8rem;font-weight:500}.quit-btn{border:1px solid var(--danger);color:var(--danger);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:6px 12px;font-size:.8rem;font-weight:600}.quit-btn:hover{background-color:var(--danger-light)}.quiz-modal-body{flex:1;padding:30px 24px}.quiz-question{color:var(--text-primary);margin-bottom:24px;font-size:1.1rem;font-weight:600;line-height:1.4}.quiz-options-list{flex-direction:column;gap:12px;display:flex}.quiz-option-btn{text-align:left;border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);padding:14px 20px;font-size:.95rem;font-weight:500}.quiz-option-btn:hover{background-color:var(--border-light);border-color:var(--text-muted)}.quiz-option-btn.selected{border-color:var(--color-primary);background-color:var(--color-primary-light);color:var(--color-primary);font-weight:600}.quiz-modal-footer{border-top:1px solid var(--border-color);background-color:var(--bg-primary);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.quiz-modal-footer button{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);padding:10px 20px;font-size:.85rem;font-weight:600}.prev-btn{border:1px solid var(--border-color);color:var(--text-secondary);background:0 0}.prev-btn:hover{background-color:var(--border-light)}.next-btn,.submit-quiz-btn{background-color:var(--color-primary);color:var(--text-light);border:none}.next-btn:hover,.submit-quiz-btn:hover{background-color:var(--color-primary-hover)}.next-btn:disabled,.submit-quiz-btn:disabled{background-color:var(--text-muted);cursor:not-allowed}.quiz-completion-panel{text-align:center;flex-direction:column;align-items:center;padding:10px 0;display:flex}.trophy-illus{margin-bottom:16px;font-size:3.5rem}.quiz-completion-panel h3{margin-bottom:6px;font-size:1.3rem;font-weight:700}.quiz-completion-panel p{color:var(--text-secondary);font-size:.85rem}.final-score-circle{border:6px solid var(--color-primary);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:120px;height:120px;margin:20px 0;display:flex}.final-score-circle strong{color:var(--color-primary);font-size:2rem}.final-score-circle span{color:var(--text-muted);font-size:.8rem;font-weight:600}.finish-modal-btn{background-color:var(--color-primary);color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;border:none;margin-top:10px;padding:10px 24px;font-weight:600}.result-stats-table{flex-direction:column;gap:12px;display:flex}.result-row{color:var(--text-secondary);justify-content:space-between;align-items:center;font-size:.9rem;display:flex}@media (width<=1200px){.exams-container{flex-direction:column}.exams-stats-sidebar{order:-1;width:100%}}.ide-container{height:calc(100vh - var(--header-height) - 40px);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background-color:#1e1e1e;border:1px solid #2d2d2d;display:flex;overflow:hidden}.ide-explorer{color:#ccc;background-color:#252526;border-right:1px solid #2d2d2d;flex-direction:column;width:220px;display:flex}.explorer-header{border-bottom:1px solid #2d2d2d;padding:14px 18px}.explorer-header h3{text-transform:uppercase;letter-spacing:.5px;color:#8e8e8e;font-size:.85rem;font-weight:700}.explorer-files-list{flex-direction:column;flex:1;gap:2px;padding:10px 6px;display:flex;overflow-y:auto}.file-item{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);justify-content:space-between;align-items:center;padding:8px 12px;font-size:.85rem;display:flex}.file-item:hover{color:#fff;background-color:#2a2d2e}.file-item.active{color:#fff;background-color:#37373d}.file-item-left{align-items:center;gap:8px;display:flex}.file-item-left svg.javascript{color:#f59e0b}.file-item-left svg.python{color:#3b82f6}.file-item-left svg.cpp,.file-item-left svg.c{color:#0284c7}.file-item-left svg.java{color:#ef4444}.delete-file-btn{color:#7a7a7a;cursor:pointer;opacity:0;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;display:flex}.file-item:hover .delete-file-btn{opacity:1}.delete-file-btn:hover{color:var(--danger)}.create-file-form{background-color:#202021;border-top:1px solid #2d2d2d;flex-direction:column;gap:8px;padding:14px;display:flex}.create-file-form input{border-radius:var(--radius-sm);color:#fff;background-color:#3c3c3c;border:1px solid #4a4a4a;outline:none;padding:8px 12px;font-size:.8rem}.create-file-form input:focus{border-color:var(--color-primary)}.file-form-row{gap:8px;display:flex}.create-file-form select{border-radius:var(--radius-sm);color:#fff;background-color:#3c3c3c;border:1px solid #4a4a4a;outline:none;flex:1;padding:6px;font-size:.8rem}.create-file-form button{background-color:var(--color-primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;align-items:center;gap:4px;padding:6px 12px;font-size:.8rem;font-weight:600;display:flex}.create-file-form button:hover{background-color:var(--color-primary-hover)}.ide-workspace{background-color:#1e1e1e;flex-direction:column;flex:1;display:flex}.workspace-header{background-color:#1e1e1e;border-bottom:1px solid #2d2d2d;justify-content:space-between;align-items:center;height:50px;padding:0 20px;display:flex}.active-file-badge{color:#858585;align-items:center;gap:8px;font-size:.85rem;display:flex}.active-file-badge strong{color:#fff}.run-code-btn{background-color:var(--success);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-fast);border:none;align-items:center;gap:8px;padding:8px 16px;font-size:.85rem;font-weight:600;display:flex}.run-code-btn:hover{background-color:#059669}.run-code-btn:disabled{cursor:not-allowed;background-color:#4a4a4a}.editor-container{border-bottom:1px solid #2d2d2d;flex:1;min-height:250px}.console-panel{background-color:#1e1e1e;flex-direction:column;height:220px;display:flex}.console-tabs{background-color:#252526;border-bottom:1px solid #2d2d2d;display:flex}.console-tab-item{color:#8e8e8e;cursor:pointer;border-right:1px solid #2d2d2d;align-items:center;gap:8px;padding:10px 18px;font-size:.8rem;display:flex}.console-tab-item.active{color:#fff;border-top:2px solid var(--color-primary);background-color:#1e1e1e;font-weight:600}.console-body{background-color:#181818;flex:1;display:flex;overflow:hidden}.console-input-pane{border-right:1px solid #2d2d2d;flex-direction:column;flex:1;padding:10px 14px;display:flex}.console-input-pane label,.console-output-pane label{color:#858585;text-transform:uppercase;margin-bottom:6px;font-size:.75rem;font-weight:700}.console-input-pane textarea{border-radius:var(--radius-sm);color:#fff;resize:none;background-color:#1e1e1e;border:1px solid #2d2d2d;outline:none;flex:1;padding:10px;font-family:Fira Code,monospace;font-size:.85rem}.console-input-pane textarea:focus{border-color:#444}.console-output-pane{flex-direction:column;flex:1;padding:10px 14px;display:flex}.output-screen{border-radius:var(--radius-sm);color:#a7f3d0;white-space:pre-wrap;background-color:#1e1e1e;border:1px solid #2d2d2d;flex:1;padding:10px;font-family:Fira Code,monospace;font-size:.85rem;line-height:1.4;overflow-y:auto}.output-screen.has-error{color:#fca5a5;border-color:#7f1d1d}.error-text{color:#f87171}@media (width<=768px){.ide-container{flex-direction:column;height:auto}.ide-explorer{border-bottom:1px solid #2d2d2d;border-right:none;width:100%}.editor-container{height:300px}.console-body{flex-direction:column}.console-input-pane{border-bottom:1px solid #2d2d2d;border-right:none;height:100px}}.certificates-container{flex-direction:column;gap:24px;width:100%;display:flex}.certificates-header h2{color:var(--text-primary);font-size:1.5rem;font-weight:700}.certificates-empty-state{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;max-width:600px;margin:0 auto;padding:60px 40px;display:flex}.empty-cert-icon{background-color:var(--color-primary-light);width:80px;height:80px;color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.certificates-empty-state h3{color:var(--text-primary);margin-bottom:8px;font-size:1.2rem;font-weight:700}.certificates-empty-state p{color:var(--text-muted);font-size:.85rem;line-height:1.5}.certificates-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;display:grid}.certificate-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-premium);transition:transform var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;padding:24px;display:flex;position:relative}.certificate-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000000d}.cert-card-icon{border-radius:var(--radius-md);color:#d97706;background-color:#fef3c7;justify-content:center;align-items:center;width:50px;height:50px;margin-bottom:16px;display:flex}.cert-card-body h3{color:var(--text-primary);margin-bottom:12px;font-size:1.05rem;font-weight:700;line-height:1.4}.cert-info-item{color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:6px;font-size:.8rem;display:flex}.cert-id-code{background-color:var(--border-light);border-radius:4px;padding:2px 6px;font-family:monospace;font-weight:600}.cert-card-actions{gap:10px;margin-top:20px;display:flex}.view-cert-btn,.download-cert-btn{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem;font-weight:600;display:flex}.view-cert-btn{background-color:var(--color-primary);color:var(--text-light);border:none}.view-cert-btn:hover{background-color:var(--color-primary-hover)}.download-cert-btn{background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.download-cert-btn:hover{background-color:var(--border-light)}.cert-viewer-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172ab3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.cert-viewer-modal{border-radius:var(--radius-lg);width:100%;max-width:800px;box-shadow:var(--shadow-lg);background-color:#f1f5f9;flex-direction:column;gap:20px;padding:24px;animation:.3s slideUp;display:flex;position:relative}.cert-close-btn{color:var(--text-secondary);cursor:pointer;z-index:10;background:0 0;border:none;position:absolute;top:14px;right:14px}.certificate-canvas{background-color:#faf7f0;border:2px solid #b45309;padding:10px;box-shadow:0 4px 15px #0000001a}.cert-inner-border{border:1px solid #d97706;padding:30px 40px;position:relative}.cert-corner{border:3px solid #d97706;width:20px;height:20px;position:absolute}.cert-corner.tl{border-bottom:none;border-right:none;top:-2px;left:-2px}.cert-corner.tr{border-bottom:none;border-left:none;top:-2px;right:-2px}.cert-corner.bl{border-top:none;border-right:none;bottom:-2px;left:-2px}.cert-corner.br{border-top:none;border-left:none;bottom:-2px;right:-2px}.cert-content{text-align:center;flex-direction:column;align-items:center;display:flex}.cert-logo-section{flex-direction:column;align-items:center;gap:8px;margin-bottom:20px;display:flex}.cert-logo{width:44px;height:44px}.cert-logo-section h4{letter-spacing:2px;color:#b45309;font-size:.75rem;font-weight:700}.cert-title{color:#1e293b;margin-bottom:12px;font-family:Times New Roman,Times,serif;font-size:2rem;font-weight:700}.cert-subtitle{letter-spacing:1.5px;color:#64748b;margin-bottom:16px;font-size:.7rem;font-weight:600}.cert-recipient-name{color:#0f172a;border-bottom:2px solid #cbd5e1;width:80%;margin-bottom:16px;padding-bottom:6px;font-family:Times New Roman,Times,serif;font-size:1.75rem;font-style:italic;font-weight:600}.cert-description{color:#64748b;width:75%;margin-bottom:16px;font-size:.8rem;line-height:1.4}.cert-course-title{color:#ea580c;margin-bottom:24px;font-size:1.25rem;font-weight:700}.cert-signatures{justify-content:space-between;align-items:center;width:100%;margin-bottom:24px;padding:0 20px;display:flex}.sig-block{flex-direction:column;align-items:center;width:180px;display:flex}.signature-font{color:#334155;height:35px;font-family:Brush Script MT,cursive,sans-serif;font-size:1.5rem}.sig-block hr{border:none;border-top:1px solid #cbd5e1;width:100%;margin:4px 0}.sig-block span{color:#64748b;text-transform:uppercase;font-size:.7rem}.cert-seal{width:60px;height:60px}.seal-circle{color:#fff;background-color:#d97706;border:4px double #fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:60px;height:60px;font-size:.55rem;font-weight:700;display:flex;box-shadow:0 4px 10px #d9770666}.cert-footer-meta{color:#64748b;border-top:1px solid #e2e8f0;justify-content:space-between;width:100%;padding-top:12px;font-size:.75rem;display:flex}.cert-viewer-actions{justify-content:center;display:flex}.cert-viewer-actions button{background-color:var(--color-primary);color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;display:flex}.cert-viewer-actions button:hover{background-color:var(--color-primary-hover)}@media (width<=640px){.cert-inner-border{padding:16px}.cert-title{font-size:1.5rem}.cert-recipient-name{font-size:1.3rem}.cert-course-title{font-size:1rem}.cert-signatures{flex-direction:column;gap:16px}.sig-block{width:100%}.cert-seal{display:none}}.profile-page-container{flex-direction:column;gap:30px;width:100%;display:flex}.profile-banner-container{border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);background-color:var(--bg-card);padding-bottom:24px;position:relative;overflow:hidden}.sunset-banner{background:linear-gradient(135deg,#ea580c 0%,#f97316 40%,#fbbf24 100%);height:180px;position:relative;overflow:hidden}.lighthouse-illustration{width:160px;height:150px;position:absolute;bottom:0;right:120px}.lighthouse-svg{width:100%;height:100%}.banner-hills{height:50px;position:absolute;bottom:-2px;left:0;right:0}.banner-hills svg{width:100%;height:100%}.academic-badges-row{z-index:10;flex-wrap:wrap;gap:16px;margin-top:-30px;padding:0 24px;display:flex;position:relative}.academic-badge-item{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);min-width:160px;color:var(--text-secondary);flex:1;align-items:center;gap:12px;padding:12px 18px;display:flex}.academic-badge-item.clickable{cursor:pointer;transition:all var(--transition-fast)}.academic-badge-item.clickable:hover{border-color:var(--color-primary);transform:translateY(-2px)}.academic-badge-item svg{color:var(--color-primary)}.badge-text{flex-direction:column;display:flex}.badge-label{color:var(--text-muted);text-transform:uppercase;font-size:.7rem;font-weight:500}.badge-val{color:var(--text-primary);font-size:.85rem;font-weight:700}.arrow-indicator{color:var(--text-muted);margin-left:auto;font-weight:700}.profile-layout-grid{grid-template-columns:280px 1fr;gap:30px;display:grid}.profile-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;align-self:flex-start;align-items:center;padding:24px;display:flex}.profile-avatar-container{margin-bottom:16px;position:relative}.profile-large-avatar{object-fit:cover;border:3px solid var(--color-primary-light);border-radius:50%;width:96px;height:96px}.change-avatar-btn{background-color:var(--color-primary);color:var(--text-light);border:2px solid var(--bg-card);cursor:pointer;width:28px;height:28px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:0;right:0}.profile-card-name{color:var(--text-primary);margin-bottom:4px;font-size:1.15rem;font-weight:700}.profile-status-tag{color:#ea580c;background-color:#fff7ed;border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:600}.profile-card-divider{border:none;border-top:1px solid var(--border-light);width:100%;margin:20px 0}.profile-info-header{justify-content:space-between;align-items:center;width:100%;margin-bottom:14px;display:flex}.profile-info-header h4{text-transform:uppercase;color:var(--text-muted);letter-spacing:.5px;font-size:.85rem}.edit-text-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;font-size:.8rem;font-weight:600;display:flex}.personal-info-list{flex-direction:column;gap:12px;width:100%;display:flex}.info-field{flex-direction:column;display:flex}.info-field label{color:var(--text-muted);margin-bottom:2px;font-size:.75rem}.info-field span{color:var(--text-primary);font-size:.85rem;font-weight:600}.profile-tabs-panel{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.profile-tabs-nav{border-bottom:1px solid var(--border-light);display:flex;overflow-x:auto}.tab-nav-link{color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;padding:18px 24px;font-size:.9rem;font-weight:600}.tab-nav-link:hover{color:var(--text-primary)}.tab-nav-link.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.profile-tab-content{flex:1;padding:30px}.profile-tab-content h3{margin-bottom:20px;font-size:1.15rem;font-weight:700}.academic-empty-pane{border:1px dashed var(--border-color);border-radius:var(--radius-md);text-align:center;background-color:#fafbfc;padding:40px}.academic-empty-pane p{color:var(--text-muted);font-size:.9rem;font-weight:500}.info-grid-rows{flex-direction:column;gap:16px;display:flex}.info-row{border-bottom:1px solid var(--border-light);flex-direction:column;gap:4px;padding-bottom:12px;display:flex}.info-row strong{color:var(--text-muted);text-transform:uppercase;font-size:.85rem}.info-row span,.info-row a{font-size:.95rem;font-weight:600}.info-row a{color:var(--color-primary)}.resume-section-box{border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center;background-color:#fafbfc;flex-direction:column;align-items:center;max-width:400px;margin:0 auto;padding:40px;display:flex}.resume-icon{color:var(--color-primary);margin-bottom:16px}.resume-section-box h4{margin-bottom:4px;font-size:.95rem;font-weight:700}.resume-section-box p{color:var(--text-muted);margin-bottom:20px;font-size:.75rem}.download-resume-btn{background-color:var(--color-primary);color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;border:none;padding:8px 18px;font-size:.85rem;font-weight:600}.rewards-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;display:grid}.reward-card-stat{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:#fafbfc;align-items:center;gap:16px;padding:20px;display:flex}.reward-card-stat svg{color:var(--color-primary)}.reward-stat-info{flex-direction:column;display:flex}.reward-stat-info strong{font-size:1.4rem;font-weight:700}.reward-stat-info span{color:var(--text-secondary);font-size:.8rem;font-weight:500}.editable-form{flex-direction:column;gap:16px;display:flex}.form-field-group{flex-direction:column;gap:6px;display:flex}.form-field-group label{color:var(--text-secondary);font-size:.8rem;font-weight:600}.form-field-group input{border-radius:var(--radius-md);border:1px solid var(--border-color);outline:none;padding:10px 14px;font-size:.9rem}.form-field-group input:focus{border-color:var(--color-primary)}.settings-form{flex-direction:column;gap:16px;max-width:400px;display:flex}.form-group-item{flex-direction:column;gap:6px;display:flex}.form-group-item label{font-size:.8rem;font-weight:600}.settings-form input{border-radius:var(--radius-md);border:1px solid var(--border-color);outline:none;padding:10px 14px;font-size:.9rem}.settings-form input:focus{border-color:var(--color-primary)}.save-settings-btn{background-color:var(--color-primary);color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;margin-top:10px;padding:10px 16px;font-size:.85rem;font-weight:600;display:flex}@media (width<=1024px){.profile-layout-grid{grid-template-columns:1fr}.profile-card{width:100%}}.cart-page-container,.orders-container{flex-direction:column;width:100%;display:flex}.cart-empty-state{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;align-items:center;padding:40px;display:flex}.cart-empty-header{border-bottom:1px solid var(--border-light);align-items:center;gap:16px;width:100%;margin-bottom:24px;padding-bottom:16px;display:flex}.back-arrow-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;align-items:center;display:flex}.cart-empty-header h2{color:var(--text-primary);font-size:1.3rem;font-weight:700}.cart-illustration-container{width:280px;height:220px;margin-bottom:20px}.cart-empty-svg{width:100%;height:100%}.empty-cart-message{color:var(--text-primary);text-align:center;margin-bottom:8px;font-size:1.15rem;font-weight:600}.empty-cart-help{color:var(--text-secondary);font-size:.95rem}.click-here-link{color:var(--color-primary);cursor:pointer;font-weight:600;text-decoration:underline}.cart-grid-panel{grid-template-columns:1fr 340px;gap:30px;display:grid}.cart-items-column{flex-direction:column;gap:20px;display:flex}.cart-items-column h2{font-size:1.3rem;font-weight:700}.cart-items-list{flex-direction:column;gap:14px;display:flex}.cart-item-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.cart-item-info h4{color:var(--text-primary);margin-bottom:4px;font-size:.95rem;font-weight:700}.cart-item-info p{color:var(--text-secondary);font-size:.8rem}.cart-item-actions{align-items:center;gap:20px;display:flex}.cart-item-price{color:var(--text-primary);font-size:1.05rem;font-weight:700}.remove-item-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:6px;display:flex}.remove-item-btn:hover{background-color:var(--danger-light);color:var(--danger)}.cart-navigation-row{gap:12px;margin-top:10px;display:flex}.view-orders-history-btn{border:1px solid var(--border-color);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast);background:0 0;padding:8px 16px;font-size:.85rem;font-weight:600}.view-orders-history-btn:hover{background-color:var(--border-light)}.cart-summary-column{align-self:flex-start}.cart-summary-column h3{margin-bottom:20px;font-size:1.15rem;font-weight:700}.summary-box{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:16px;padding:24px;display:flex}.summary-row{color:var(--text-secondary);justify-content:space-between;font-size:.9rem;display:flex}.grand-total-row{color:var(--text-primary);font-size:1.05rem}.grand-total{color:var(--color-primary);font-size:1.2rem}.checkout-btn{background-color:var(--color-primary);width:100%;color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast);border:none;padding:12px;font-size:.9rem;font-weight:700}.checkout-btn:hover{background-color:var(--color-primary-hover)}.orders-header{border-bottom:1px solid var(--border-light);flex-direction:column;gap:14px;margin-bottom:24px;padding-bottom:16px;display:flex}.back-to-cart-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;font-size:.85rem;font-weight:600;display:flex}.orders-header h2{font-size:1.5rem;font-weight:700}.orders-loading{text-align:center;color:var(--text-muted);padding:40px}.orders-empty{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);text-align:center;max-width:500px;margin:0 auto;padding:60px 40px}.empty-order-icon{color:var(--text-muted);margin-bottom:16px}.orders-list{flex-direction:column;gap:16px;display:flex}.order-history-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px}.order-card-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:12px;display:flex}.header-meta{color:var(--text-secondary);gap:20px;font-size:.85rem;display:flex}.order-status-badge{text-transform:uppercase;border-radius:4px;padding:3px 8px;font-size:.75rem;font-weight:700}.order-status-badge.completed{background-color:var(--success-light);color:var(--success)}.order-card-body h4{text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;font-size:.85rem}.order-items-list{flex-direction:column;gap:6px;list-style:none;display:flex}.order-item-detail{color:var(--text-secondary);justify-content:space-between;font-size:.9rem;display:flex}.order-card-footer{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;margin-top:14px;padding-top:12px;font-size:.9rem;display:flex}.order-grand-total{color:var(--color-primary);font-size:1.1rem}.checkout-modal{width:480px}.checkout-form{flex-direction:column;gap:16px;display:flex}.checkout-amount-banner{background-color:var(--color-primary-light);border-radius:var(--radius-md);color:var(--color-primary);justify-content:space-between;align-items:center;padding:14px 20px;font-size:1rem;display:flex}.checkout-amount-banner strong{font-size:1.3rem}.card-mock-input{flex-direction:column;gap:12px;display:flex}.form-row-half{gap:12px;display:flex}.form-row-half .form-field-group{flex:1}.checkout-warning{color:var(--warning);text-align:center;font-size:.75rem;font-weight:500}.confirm-payment-btn{background-color:var(--color-primary);width:100%;color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.9rem;font-weight:700;display:flex}.confirm-payment-btn:hover{background-color:var(--color-primary-hover)}.checkout-success-panel{text-align:center;flex-direction:column;align-items:center;padding:20px 0;display:flex}.checkout-success-panel .success-icon{color:var(--success);margin-bottom:16px}.checkout-success-panel h3{margin-bottom:6px;font-size:1.25rem;font-weight:700}.checkout-success-panel p{color:var(--text-secondary);margin-bottom:24px;font-size:.85rem;line-height:1.4}.success-done-btn{background-color:var(--color-primary);color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;border:none;padding:10px 24px;font-weight:600}@media (width<=900px){.cart-grid-panel{grid-template-columns:1fr}}.admin-page-container{flex-direction:column;gap:24px;width:100%;display:flex}.admin-header h2{color:var(--text-primary);margin-bottom:4px;font-size:1.5rem;font-weight:700}.admin-header p{color:var(--text-secondary);font-size:.85rem}.admin-sub-tabs{border-bottom:1px solid var(--border-color);gap:12px;padding-bottom:6px;display:flex}.admin-tab-link{color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:10px 18px;font-size:.85rem;font-weight:600;display:flex}.admin-tab-link:hover{background-color:var(--border-light);color:var(--text-primary)}.admin-tab-link.active{border-color:var(--border-color);background-color:var(--bg-card);color:var(--color-primary);box-shadow:var(--shadow-sm)}.admin-loading{text-align:center;color:var(--text-muted);padding:40px}.admin-panel-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:14px;padding:24px;display:flex}.admin-panel-card h3{color:var(--text-primary);font-size:1.15rem;font-weight:700}.panel-hint{color:var(--text-muted);font-size:.8rem;line-height:1.4}.admin-form{flex-direction:column;gap:16px;max-width:500px;margin-top:10px;display:flex}.form-field-row{gap:16px;display:flex}.form-field-row .form-field-group{flex:1}.admin-form select,.admin-form input,.admin-form textarea,.question-selectors-row select,.question-main-form input,.question-main-form select,.question-main-form textarea{border:1px solid var(--border-color);border-radius:var(--radius-md);transition:border-color var(--transition-fast);background-color:#fafbfc;outline:none;padding:10px 14px;font-size:.9rem}.admin-form select:focus,.admin-form input:focus,.admin-form textarea:focus,.question-selectors-row select:focus,.question-main-form input:focus,.question-main-form select:focus,.question-main-form textarea:focus{border-color:var(--color-primary)}.admin-form textarea{resize:vertical;min-height:100px}.admin-submit-btn{background-color:var(--color-primary);color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast);border:none;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.85rem;font-weight:700;display:flex}.admin-submit-btn:hover{background-color:var(--color-primary-hover)}.create-lab-split-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.question-selectors-row{gap:20px;display:flex}.question-selectors-row .form-field-group{flex:1}.question-main-form{flex-direction:column;gap:16px;margin-top:10px;display:flex}.form-divider{border:none;border-top:1px solid var(--border-light);margin:10px 0}.radio-group{gap:24px;padding:8px 0;display:flex}.radio-label{color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:flex}.mcq-inputs-box{border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:#fafbfc;flex-direction:column;gap:12px;padding:16px;display:flex}.coding-inputs-box{border-radius:var(--radius-md);border:1px solid var(--border-color);background-color:#fafbfc;flex-direction:column;gap:16px;padding:16px;display:flex}.starter-code-textarea{min-height:120px;font-family:Fira Code,monospace;font-size:.85rem}@media (width<=900px){.create-lab-split-grid{grid-template-columns:1fr}.question-selectors-row{flex-direction:column;gap:12px}}.admin-table-wrapper{border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-card);margin-top:10px;overflow-x:auto}.admin-data-table{border-collapse:collapse;text-align:left;width:100%;font-size:.85rem}.admin-data-table th{color:var(--text-secondary);border-bottom:1px solid var(--border-color);background-color:#f1f5f9;padding:14px 18px;font-weight:700}.admin-data-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);vertical-align:middle;padding:14px 18px}.admin-data-table tr:last-child td{border-bottom:none}.admin-data-table tr:hover td{background-color:#f8fafc}.tbl-course-name{color:var(--text-primary);font-weight:700}.tbl-course-code{color:var(--text-muted);margin-top:2px;font-size:.75rem}.tbl-progress-fraction{color:var(--text-secondary);font-weight:600}.tbl-progress-indicator{align-items:center;gap:12px;display:flex}.tbl-progress-bar{background-color:#e2e8f0;border-radius:4px;flex:1;max-width:140px;height:8px;overflow:hidden}.tbl-progress-bar-fill{background-color:var(--success);border-radius:4px;height:100%;transition:width .4s}.tbl-progress-text{color:var(--text-primary);min-width:36px;font-weight:700}.status-pill{text-transform:uppercase;border-radius:9999px;padding:4px 10px;font-size:.75rem;font-weight:700}.status-pill.pass{background-color:var(--success-light);color:var(--success)}.status-pill.fail{background-color:var(--danger-light);color:var(--danger)}.table-empty{text-align:center;color:var(--text-muted);padding:40px;font-style:italic}.dashboard-layout{min-height:100vh;display:flex}.dashboard-main-content{margin-left:var(--sidebar-width);min-width:0;transition:margin-left var(--transition-normal);flex-direction:column;flex:1;display:flex}.tab-content-container{margin-top:var(--header-height);min-height:calc(100vh - var(--header-height));flex:1;padding:30px;display:flex;overflow-y:auto}.tab-content-container::-webkit-scrollbar{width:6px;height:6px}.notifications-list::-webkit-scrollbar{width:6px;height:6px}.chat-messages::-webkit-scrollbar{width:6px;height:6px}.tab-content-container::-webkit-scrollbar-track{background:0 0}.notifications-list::-webkit-scrollbar-track{background:0 0}.chat-messages::-webkit-scrollbar-track{background:0 0}.tab-content-container::-webkit-scrollbar-thumb{background-color:var(--text-muted);border-radius:3px}.notifications-list::-webkit-scrollbar-thumb{background-color:var(--text-muted);border-radius:3px}.chat-messages::-webkit-scrollbar-thumb{background-color:var(--text-muted);border-radius:3px}@media (width<=1024px){.dashboard-main-content{margin-left:0}}@media (width<=576px){.tab-content-container{padding:20px 15px}}.login-page-wrapper{background-color:#f1f5f9;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card-container{background-color:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid #e2e8f0;width:820px;max-width:100%;transition:all .3s;display:flex;overflow:hidden}.login-card-container.register-mode{width:880px}.login-branding{background-color:var(--bg-sidebar);text-align:center;color:var(--text-light);border-right:1px solid var(--border-color);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.login-logo{width:64px;height:64px;margin-bottom:20px}.login-branding h2{letter-spacing:2px;margin-bottom:8px;font-size:1.5rem;font-weight:800}.login-branding p{color:var(--text-muted);font-size:.85rem}.login-form-pane{flex-direction:column;flex:1.4;justify-content:center;max-height:90vh;padding:36px 40px;display:flex;overflow-y:auto}.auth-tab-row{background-color:#f1f5f9;border-radius:8px;gap:8px;margin-bottom:20px;padding:4px;display:flex}.auth-tab-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;padding:8px 12px;font-size:13px;font-weight:600;transition:all .2s}.auth-tab-btn.active{color:#1e293b;background-color:#fff;box-shadow:0 1px 3px #0000001a}.login-form,.register-form{flex-direction:column;display:flex}.login-form h3,.register-form h3{color:var(--text-primary);margin-bottom:4px;font-size:1.3rem;font-weight:700}.login-subtitle{color:var(--text-secondary);margin-bottom:20px;font-size:.82rem}.login-error-alert{background-color:var(--danger-light);color:var(--danger);border-radius:var(--radius-md);border:1px solid #ef444433;align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:.85rem;font-weight:500;display:flex}.login-input-group{flex-direction:column;flex:1;gap:4px;margin-bottom:14px;display:flex}.login-input-group label{color:var(--text-secondary);font-size:.78rem;font-weight:600}.input-with-icon{position:relative}.input-icon{color:var(--text-muted);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.input-with-icon input,.login-input-group input,.login-input-group select{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;transition:all var(--transition-fast);color:var(--text-primary);background-color:#fafbfc;outline:none;padding:8px 12px 8px 36px;font-size:.85rem}.login-input-group input:not(.input-with-icon input),.login-input-group select{padding-left:12px}.input-with-icon input:focus,.login-input-group input:focus,.login-input-group select:focus{background-color:var(--bg-card);border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.input-two-col{gap:12px;display:flex}.input-three-col{gap:10px;display:flex}.avatar-selector-block{margin-bottom:14px}.avatar-selector-block label{color:var(--text-secondary);margin-bottom:6px;font-size:.78rem;font-weight:600;display:block}.avatar-grid-options{justify-content:space-between;gap:10px;display:flex}.avatar-option-thumb{cursor:pointer;border:2px solid #0000;border-radius:50%;width:44px;height:44px;transition:all .2s;position:relative;overflow:hidden}.avatar-option-thumb img{object-fit:cover;width:100%;height:100%}.avatar-option-thumb:hover{transform:scale(1.08)}.avatar-option-thumb.selected{border-color:#f97316;box-shadow:0 0 0 3px #f9731640}.avatar-option-thumb .check-overlay{color:#fff;background-color:#f9731699;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.login-submit-btn{background-color:var(--color-primary);width:100%;color:var(--text-light);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast);border:none;margin-top:6px;padding:11px;font-size:.9rem;font-weight:700}.login-submit-btn:hover{background-color:var(--color-primary-hover)}.login-submit-btn:disabled{background-color:var(--text-muted);cursor:not-allowed}@media (width<=768px){.login-card-container{flex-direction:column}.login-branding{border-right:none;border-bottom:1px solid var(--border-color);padding:24px}.input-two-col,.input-three-col{flex-direction:column;gap:0}}.landing-container{color:#0f172a;background-color:#f8fafc;flex-direction:column;min-height:100vh;font-family:Inter,sans-serif;display:flex}.landing-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background-color:#ffffffe6;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:sticky;top:0}.landing-nav{align-items:center;gap:28px;display:flex}.landing-nav-link{color:#475569;font-size:14px;font-weight:500;text-decoration:none;transition:color .2s}.landing-nav-link:hover{color:#f97316}.landing-nav-link.active{color:#f97316;font-weight:600}.hero-wrapper{width:100%;transition:background 1s;position:relative;overflow:hidden}.hero-container{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;max-width:1200px;margin:0 auto;padding:80px 24px 110px;display:grid}.hero-text-block{flex-direction:column;gap:24px;display:flex}.hero-title{color:#fff;letter-spacing:-1.5px;margin:0;font-size:54px;font-weight:800;line-height:1.15}.hero-desc{color:#fffc;margin:0;font-size:18px;line-height:1.6}.hero-buttons{flex-wrap:wrap;gap:16px;display:flex}.hero-btn-primary{color:#fff;cursor:pointer;background-color:#f97316;border:none;border-radius:8px;align-items:center;gap:8px;padding:14px 28px;font-size:15px;font-weight:700;transition:background-color .2s;display:flex;box-shadow:0 4px 14px #f973164d}.hero-btn-primary:hover{background-color:#ea580c}.hero-btn-secondary{color:#fff;text-align:center;background-color:#0000;border:1px solid #fff6;border-radius:8px;padding:14px 28px;font-size:15px;font-weight:600;text-decoration:none;transition:background-color .2s}.hero-btn-secondary:hover{background-color:#ffffff1a}.section-problem{background-color:#fff;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:80px 24px}.grid-two-col{grid-template-columns:1fr 1fr;align-items:center;gap:64px;max-width:1200px;margin:0 auto;display:grid}.learning-path-section{box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto;padding:24px}.learning-path-banner{background-color:#0f2923;border-radius:16px;grid-template-columns:1.2fr .8fr;min-height:260px;display:grid;overflow:hidden;box-shadow:0 10px 30px #0f292326}.support-section{background-color:#fff;border-top:1px solid #e2e8f0;padding:80px 24px}.support-grid{grid-template-columns:1fr 1fr 1fr;gap:24px;display:grid}@media (width<=992px){.hero-container{text-align:center;grid-template-columns:1fr;gap:40px;padding:60px 24px 90px}.hero-text-block{align-items:center}.hero-title{font-size:42px}.hero-buttons{justify-content:center}.grid-two-col{grid-template-columns:1fr;gap:40px}.learning-path-banner{grid-template-columns:1.1fr .9fr}.support-grid{grid-template-columns:1fr 1fr}}@media (width<=768px){.landing-nav{display:none}.learning-path-banner{grid-template-columns:1fr}.learning-path-photo-box{display:none}}@media (width<=576px){.hero-container{padding:40px 16px 80px}.hero-title{letter-spacing:-1px;font-size:32px}.hero-desc{font-size:15px}.section-problem,.support-section{padding:60px 16px}.support-grid{grid-template-columns:1fr}.learning-path-section{padding:16px}.learning-path-banner{padding:24px 20px}}.engine-console-card{box-sizing:border-box;background-color:#0b1329;border:1px solid #1e293b;border-radius:16px;flex-direction:column;gap:20px;width:100%;padding:28px 24px;display:flex;box-shadow:0 20px 40px #0f172a66}.engine-header-bar{border-bottom:1px solid #1e293b;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.engine-status-tag{color:#10b981;background-color:#10b9811a;border:1px solid #10b98133;border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-family:monospace;font-size:11px;font-weight:700;display:flex}.engine-sys-tags{color:#64748b;gap:12px;font-family:monospace;font-size:10px;display:flex}.engine-visualizer{background-color:#0f172a80;border:1px solid #1e293b;border-radius:8px;flex-direction:column;gap:16px;padding:16px;display:flex}.engine-node-row{justify-content:space-between;align-items:center;display:flex;position:relative}.engine-node{color:#f8fafc;z-index:2;background-color:#1e293b;border:1px solid #334155;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-family:monospace;font-size:12px;font-weight:700;display:flex;box-shadow:0 4px 6px #0003}.engine-node.active{border-color:#f97316;box-shadow:0 0 12px #f9731640}.engine-connector-line{z-index:1;border-top:2px dashed #334155;height:2px;position:absolute;top:50%;left:10%;right:10%;transform:translateY(-50%)}.engine-connector-line.active{border-top-color:#f97316}.engine-terminal{color:#cbd5e1;text-align:left;background-color:#020617;border-radius:6px;padding:12px 16px;font-family:monospace;font-size:11px;line-height:1.6}.engine-term-line{gap:8px;margin:0;display:flex}.engine-term-line span.success{color:#10b981}.engine-term-line span.info{color:#38bdf8}.engine-tags-row{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}.engine-tag-badge{color:#f97316;background-color:#f973161a;border:1px solid #f9731633;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.premium-footer{color:#94a3b8;background-color:#0b0f19;border-top:1px solid #1e293b;padding:80px 24px 40px;position:relative}.footer-top-grid{border-bottom:1px solid #1e293b;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;max-width:1200px;margin:0 auto;padding-bottom:60px;display:grid}.footer-col{flex-direction:column;gap:20px;display:flex}.footer-logo-block{align-items:center;gap:10px;display:flex}.footer-logo-icon{color:#fff;background-color:#f97316;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:700;display:flex}.footer-logo-text{color:#fff;letter-spacing:-.5px;font-size:20px;font-weight:800}.footer-logo-text span{color:#f97316}.footer-col-title{color:#fff;letter-spacing:.5px;margin:0;font-size:15px;font-weight:700}.footer-link-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.footer-link-item a{color:#94a3b8;font-size:14px;text-decoration:none;transition:color .2s}.footer-link-item a:hover{color:#f97316}.footer-contact-info{flex-direction:column;gap:12px;font-size:14px;display:flex}.footer-contact-item{align-items:center;gap:8px;display:flex}.footer-contact-icon{color:#f97316}.footer-bottom-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;max-width:1200px;margin:40px auto 0;font-size:13px;display:flex}.footer-legal-links{gap:24px;display:flex}.footer-legal-links a{color:#64748b;text-decoration:none;transition:color .2s}.footer-legal-links a:hover{color:#f97316}@media (width<=992px){.footer-top-grid{grid-template-columns:1fr 1fr;gap:40px}}@media (width<=576px){.footer-top-grid{grid-template-columns:1fr;gap:32px}.footer-bottom-bar{flex-direction:column;align-items:flex-start}}.landing-contact-section{background-color:#fff;border-top:1px solid #e2e8f0;padding:80px 24px}.contact-container{text-align:left;max-width:1200px;margin:0 auto}.contact-badge-container{text-align:center;margin-bottom:16px}.contact-badge{color:#f97316;letter-spacing:1px;background-color:#f9731614;border:1px solid #f9731633;border-radius:20px;padding:6px 14px;font-size:11px;font-weight:700}.contact-title{text-align:center;color:#0f172a;letter-spacing:-1px;margin:0 0 16px;font-size:42px;font-weight:800}.contact-title .highlight-text{color:#f97316}.contact-subtitle{text-align:center;color:#475569;max-width:600px;margin:0 auto 60px;font-size:16px;line-height:1.6}.contact-grid{grid-template-columns:1fr 1.2fr;gap:60px;display:grid}.contact-left-col,.contact-right-col{flex-direction:column;display:flex}.column-title{color:#0f172a;margin:0 0 20px;font-size:24px;font-weight:800}.column-subtitle{color:#475569;margin:0 0 24px;font-size:14px;line-height:1.5}.contact-info-cards{flex-direction:column;gap:16px;margin-bottom:32px;display:flex}.info-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;gap:16px;padding:20px;display:flex;box-shadow:0 4px 6px -1px #0000000d}.info-card-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.address-icon{color:#3b82f6;background-color:#3b82f61a}.phone-icon{color:#10b981;background-color:#10b9811a}.email-icon{color:#a855f7;background-color:#a855f71a}.info-card-content h4{color:#0f172a;margin:0 0 6px;font-size:15px;font-weight:700}.info-card-content p{color:#475569;margin:0;font-size:13px;line-height:1.5}.email-label{color:#64748b;font-weight:600}.map-mockup-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 4px 6px -1px #0000000d}.map-mockup-card h4{color:#0f172a;margin:0 0 16px;font-size:15px;font-weight:700}.map-canvas{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;height:160px;position:relative;overflow:hidden}.map-grid-lines{position:absolute;inset:0}.map-grid-line-h{background-color:#f1f5f9;height:1px;position:absolute;left:0;right:0}.map-grid-line-v{background-color:#f1f5f9;width:1px;position:absolute;top:0;bottom:0}.map-marker{flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.marker-pin{font-size:24px;animation:2s infinite mapBounce}@keyframes mapBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.marker-label{color:#0f172a;background-color:#fff;border:1px solid #cbd5e1;border-radius:12px;margin-top:4px;padding:2px 8px;font-size:11px;font-weight:700;box-shadow:0 2px 4px #0000000d}.contact-status-alert{text-align:left;border-radius:8px;margin-bottom:24px;padding:14px 16px;font-size:14px;font-weight:600}.contact-status-alert.success{color:#059669;background-color:#10b9811a;border:1px solid #10b98133}.contact-status-alert.error{color:#dc2626;background-color:#ef44441a;border:1px solid #ef444433}.contact-form{flex-direction:column;gap:18px;display:flex}.form-row-two{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-group{text-align:left;flex-direction:column;gap:6px;display:flex}.form-group label{color:#475569;text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.form-group input,.form-group textarea{color:#0f172a;box-sizing:border-box;background-color:#fff;border:1px solid #cbd5e1;border-radius:8px;width:100%;padding:12px 14px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus{border-color:#f97316;outline:none;box-shadow:0 0 0 3px #f973161a}.contact-submit-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:10px;padding:14px 28px;font-size:14px;font-weight:700;transition:opacity .2s,transform .1s;display:inline-flex;box-shadow:0 4px 12px #f9731633}.contact-submit-btn:hover{opacity:.95}.contact-submit-btn:active{transform:scale(.98)}.contact-submit-btn:disabled{opacity:.6;cursor:not-allowed}@media (width<=992px){.contact-grid{grid-template-columns:1fr;gap:40px}}@media (width<=768px){.contact-title{font-size:32px}.contact-subtitle{margin-bottom:40px}}@media (width<=576px){.form-row-two{grid-template-columns:1fr;gap:18px}}.features-grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.about-workflow-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=992px){.features-grid{grid-template-columns:repeat(2,1fr)}.about-workflow-grid{grid-template-columns:1fr;gap:20px}}@media (width<=576px){.features-grid{grid-template-columns:1fr}}:root{--bg-primary:#f8fafc;--bg-sidebar:#1c1917;--bg-card:#fff;--color-primary:#f97316;--color-primary-hover:#ea580c;--color-primary-light:#fff7ed;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-light:#fff;--border-color:#e2e8f0;--border-light:#f1f5f9;--success:#10b981;--success-light:#ecfdf5;--warning:#f59e0b;--warning-light:#fef3c7;--danger:#ef4444;--danger-light:#fef2f2;--info:#10b981;--info-light:#ecfdf5;--sidebar-width:85px;--sidebar-collapsed-width:70px;--header-height:70px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-premium:0 10px 30px -10px #0000000a, 0 1px 3px #00000005;--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--transition-fast:.15s ease;--transition-normal:.25s ease}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}input,button,select,textarea{color:inherit;font-family:inherit}a{color:inherit;text-decoration:none}
