.page_appContainer__s9jEy{display:flex;height:100vh;height:100dvh;overflow:hidden}.page_sidebar__uLp0h{width:var(--sidebar-width);background:var(--sidebar-bg);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.page_sidebarHeader__rYh2R{padding:16px 20px;border-bottom:1px solid var(--sidebar-border)}.page_logo__5MGzX{display:flex;align-items:center;gap:10px;color:var(--sidebar-text-bright);font-size:18px;font-weight:700}.page_logo__5MGzX svg{width:24px;height:24px;color:var(--primary)}.page_courseSelector__7qFA_{padding:8px 12px;border-bottom:1px solid var(--sidebar-border);position:relative}.page_courseSelectorBtn__GuzHk{display:flex;align-items:center;gap:8px;padding:8px 10px;width:100%;background:var(--sidebar-hover);border:1px solid var(--sidebar-border);border-radius:var(--border-radius);color:var(--sidebar-text-bright);cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;text-align:left;transition:all var(--transition-fast)}.page_courseSelectorBtn__GuzHk:hover{border-color:var(--primary)}.page_courseSelectorIcon__OLQtn{width:16px;height:16px;color:var(--primary);flex-shrink:0}.page_courseSelectorLabel__9w5B4{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page_courseMenu__p2xwi{list-style:none;position:absolute;top:calc(100% - 4px);left:12px;right:12px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:0 8px 24px rgba(0,0,0,.4);z-index:100;overflow:hidden}.page_courseMenuItem__2cawU{display:flex;flex-direction:column;gap:2px;padding:10px 14px;width:100%;background:none;border:none;border-bottom:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;font-family:inherit;text-align:left;transition:background var(--transition-fast)}.page_courseMenuItem__2cawU:last-child{border-bottom:none}.page_courseMenuItem__2cawU:hover{background:var(--bg-main)}.page_courseMenuItemActive__XiOEt{background:color-mix(in srgb,var(--primary) 12%,transparent)}.page_courseMenuTitle__wH4iz{font-size:13px;font-weight:600;color:var(--text-primary)}.page_courseMenuDesc__q51oO{font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page_breadcrumbCourse__tgY0X{color:var(--primary);font-weight:500}.page_searchBox__Vj0eh{padding:12px 16px;position:relative}.page_searchIcon__UuvgY{position:absolute;left:28px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--sidebar-text)}.page_searchBox__Vj0eh input{width:100%;padding:10px 12px 10px 38px;background:var(--sidebar-hover);border:1px solid var(--sidebar-border);border-radius:var(--border-radius);color:var(--sidebar-text-bright);font-size:13px;outline:none;transition:border-color var(--transition-fast)}.page_searchBox__Vj0eh input::placeholder{color:var(--sidebar-text)}.page_searchBox__Vj0eh input:focus{border-color:var(--primary)}.page_sidebarNav__fdyEj{flex:1 1;overflow-y:auto;padding:8px 0}.page_navCategory__o9rcf{margin-bottom:4px}.page_categoryHeader__YAhyB{display:flex;align-items:center;gap:10px;padding:10px 20px;color:var(--sidebar-text);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;-moz-user-select:none;user-select:none;border:none;background:none;width:100%;font-family:inherit}.page_categoryHeader__YAhyB:hover{background:var(--sidebar-hover);color:var(--sidebar-text-bright)}.page_categoryHeader__YAhyB svg{width:18px;height:18px}.page_categoryHeaderText__489oR{flex:1 1;font-size:13px;font-weight:500;text-align:left}.page_chevron__sv66f{width:16px;height:16px;transition:transform var(--transition-fast)}.page_chevronCollapsed__lT_9o{transform:rotate(-90deg)}.page_categoryItems__vH6YX{list-style:none;padding:4px 0}.page_categoryItems__vH6YX li{position:relative}.page_navItem__oy1U2{display:flex;align-items:center;gap:10px;padding:8px 20px 8px 48px;color:var(--sidebar-text);text-decoration:none;font-size:13px;cursor:pointer;transition:all var(--transition-fast);border:none;background:none;width:100%;font-family:inherit;text-align:left}.page_navItem__oy1U2:hover{background:var(--sidebar-hover);color:var(--sidebar-text-bright)}.page_navItemActive__e5Ddl{background:var(--sidebar-active);color:var(--text-light)}.page_navItemCompleted__xi_B3:before{content:"";position:absolute;left:24px;width:16px;height:16px;background:var(--success);border-radius:50%}.page_mainContent__V9Dna{flex:1 1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-main)}.page_mainHeader__g1Xv9{height:var(--header-height);background:var(--bg-card);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0}.page_breadcrumb__u8_JX{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary)}.page_breadcrumbSeparator__Hh2aP{color:var(--text-muted)}.page_breadcrumbTitle__V_bNp{color:var(--text-primary);font-weight:600}.page_headerActions__MmwWg{display:flex;align-items:center;gap:16px}.page_iconBtn__Czqdg{width:36px;height:36px;border:none;border-radius:var(--border-radius);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.page_iconBtn__Czqdg:hover{background:var(--bg-main);color:var(--text-primary)}.page_iconBtn__Czqdg svg{width:20px;height:20px}.page_userMenu__BXTeP{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:var(--border-radius);cursor:pointer;transition:background var(--transition-fast)}.page_userMenu__BXTeP:hover{background:var(--bg-main)}.page_userAvatar__eVMcy{width:32px;height:32px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center}.page_userAvatar__eVMcy svg{width:18px;height:18px;color:#fff}.page_userName__jdihM{font-size:13px;font-weight:500;color:var(--text-primary)}.page_contentArea__iabXw{flex:1 1;display:flex;flex-direction:column;padding:24px;overflow:hidden;gap:16px}.page_tutorialHeader__IKG0E{background:var(--bg-card);padding:20px 24px;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.page_tutorialHeader__IKG0E h1{font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.page_tutorialHeader__IKG0E p{color:var(--text-secondary);margin-bottom:12px}.page_tutorialMeta__mW_hv{display:flex;gap:16px}.page_metaItem__FrfrG{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary);font-weight:500}.page_metaItem__FrfrG svg{width:16px;height:16px}.page_actionBar__m2euM{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.page_actionButtons__4Eldh{display:flex;gap:8px}.page_outputTabs__N3oec{display:flex;gap:4px;background:var(--bg-card);padding:4px;border-radius:var(--border-radius);border:1px solid var(--border-color)}.page_tabBtn__UF4Io{padding:8px 16px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.page_tabBtn__UF4Io:hover{color:var(--text-primary)}.page_tabBtnActive__E1I1v{background:var(--primary);color:#fff}.page_stepDivider__N_H_T{width:1px;height:24px;background:var(--border-color);flex-shrink:0;margin:0 4px}.page_stepNavBtn__YLBjD{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-card);color:var(--text-primary);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.page_stepNavBtn__YLBjD:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.page_stepNavBtn__YLBjD:disabled{opacity:.4;cursor:not-allowed}.page_stepCounter__5C0Gn{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap}.page_stepLineNo__r1H5E{font-weight:400;color:var(--text-secondary);margin-left:4px}.page_stepExitBtn__COCFH{display:flex;align-items:center;gap:4px;padding:6px 10px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:transparent;color:var(--text-muted);font-family:inherit;font-size:12px;cursor:pointer;transition:all var(--transition-fast)}.page_stepExitBtn__COCFH:hover{background:var(--bg-main);color:var(--text-primary)}.page_stepView__JE3vQ{display:flex;flex-direction:column;height:100%;overflow:auto}.page_stepMeta__PxAHS{display:flex;flex-direction:column;gap:4px;padding:12px 16px;background:color-mix(in srgb,var(--primary) 8%,var(--bg-main));border-bottom:1px solid var(--border-color)}.page_stepMetaError__1tckR{background:color-mix(in srgb,var(--error) 8%,var(--bg-main))}.page_stepAction__YmSPP{font-size:13px;font-weight:600;color:var(--primary);font-family:JetBrains Mono,monospace}.page_stepMetaError__1tckR .page_stepAction__YmSPP{color:var(--error)}.page_stepErrorMsg__69QKQ{font-size:12px;color:var(--error);font-family:JetBrains Mono,monospace}.page_stepOutput__0upJW{padding:12px 16px;border-top:1px solid var(--border-color);margin-top:auto}.page_stepOutputLabel__l0YCF{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:6px}.page_stepOutputContent__jn1je{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word;margin:0;padding:8px;background:var(--bg-code);border-radius:var(--border-radius);max-height:80px;overflow:auto}.page_editorPanel__yK3Vj{flex:1 1;display:flex;gap:16px;min-height:0}.page_codeEditorContainer__m_i5t{flex:1 1;background:var(--bg-code);border-radius:var(--border-radius-lg);overflow:hidden;min-width:0}.page_codeEditor__Ivx_i{height:100%;width:100%}.page_outputPanel__BDcey{flex:1 1;background:var(--bg-card);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column;min-width:0}.page_tabContent__oJRzY{flex:1 1;display:none;overflow:auto}.page_tabContentActive__FIzcs{display:flex;flex-direction:column}.page_outputContent__3K61q{flex:1 1;padding:16px;margin:0;font-family:JetBrains Mono,monospace;font-size:13px;line-height:1.6;background:var(--bg-code);color:#e2e8f0;overflow:auto;white-space:pre-wrap;word-wrap:break-word}.page_outputError__JR_hQ{color:#f87171}.page_outputSuccess__vRFTk{color:#4ade80}.page_emptyState__D0lc4{color:var(--text-muted);text-align:center;padding:40px 20px;display:flex;align-items:center;justify-content:center;gap:8px}@keyframes page_spin__Aue9B{to{transform:rotate(1turn)}}.page_spinner__GYu7_{animation:page_spin__Aue9B 1s linear infinite;width:16px;height:16px}.page_timelineContainer__4Hh1P{width:100%;overflow-x:auto;padding:16px}.page_timelineTable__u_W9S{width:100%;border-collapse:collapse;font-size:13px}.page_timelineTable__u_W9S td,.page_timelineTable__u_W9S th{padding:10px 12px;text-align:center;border-bottom:1px solid var(--border-color);font-family:JetBrains Mono,monospace}.page_timelineTable__u_W9S th{background:var(--bg-main);font-weight:600;color:var(--text-secondary);position:-webkit-sticky;position:sticky;top:0;z-index:1}.page_visualizationArea__WYWJ2{padding:16px;display:flex;flex-direction:column;align-items:center;height:100%;overflow:auto}.page_visContainer__LI2ff{width:100%;max-width:600px}.page_visHeader__4ud6C{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.page_visTitle__W_Mtb{font-weight:600;color:var(--text-primary);font-size:14px}.page_visMessage__3er_n{font-size:13px;color:var(--primary);background:rgba(37,99,235,.1);padding:4px 12px;border-radius:20px}.page_arrayVisualization__O40wx{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:20px}.page_arrayCellWrapper__DSbqS{gap:6px}.page_arrayCellWrapper__DSbqS,.page_arrayCell__oWlpw{display:flex;flex-direction:column;align-items:center}.page_arrayCell__oWlpw{width:52px;height:52px;justify-content:center;background:var(--bg-main);border:2px solid var(--border-color);border-radius:var(--border-radius);font-family:JetBrains Mono,monospace;position:relative;transition:all .3s ease}.page_cellValue__8WHHd{font-weight:600;font-size:16px;color:var(--text-primary)}.page_cellIndex__Mk4QM{font-size:10px;color:var(--text-muted);position:absolute;bottom:2px}.page_cellLabel__cEDZ2{font-size:11px;font-weight:600;color:var(--primary);background:rgba(37,99,235,.1);padding:2px 8px;border-radius:10px}.page_arrayCellHighlight__5n0eY{background:var(--primary);border-color:var(--primary);transform:scale(1.1)}.page_arrayCellHighlight__5n0eY .page_cellIndex__Mk4QM,.page_arrayCellHighlight__5n0eY .page_cellValue__8WHHd{color:#fff}.page_arrayCellCurrent__shuYt{border-color:var(--warning);background:rgba(245,158,11,.1)}.page_arrayCellComparing__WHsUi{border-color:var(--warning);background:rgba(245,158,11,.15);animation:page_pulse__9dp9C .5s ease-in-out}.page_arrayCellSwapping__k9jEg{border-color:var(--hint);background:rgba(249,115,22,.2);animation:page_swap__fnU7y .4s ease-in-out}.page_arrayCellFound__hcS37{border-color:var(--success);background:var(--success);transform:scale(1.15)}.page_arrayCellFound__hcS37 .page_cellIndex__Mk4QM,.page_arrayCellFound__hcS37 .page_cellValue__8WHHd{color:#fff}.page_arrayCellSorted__ulSYY{border-color:var(--success);background:rgba(34,197,94,.15)}.page_explanationContent__fYunm{padding:20px;line-height:1.8}.page_explanationContent__fYunm h3{font-size:16px;font-weight:600;margin-bottom:12px;color:var(--text-primary)}.page_explanationContent__fYunm p{margin-bottom:16px;color:var(--text-secondary)}.page_statusBar__M8_00{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:var(--bg-card);border-radius:var(--border-radius);font-size:12px}.page_statusLeft__gn9px,.page_statusRight__CYATj{display:flex;align-items:center;gap:16px}.page_statusItem___4VDb{display:flex;align-items:center;gap:6px;color:var(--text-muted)}.page_statusItem___4VDb svg{width:14px;height:14px}.page_statusReady__F4hxy{color:var(--success)}.page_statusError__yFUG8{color:var(--error)}.page_retryBtn___J6kJ{margin-left:8px;padding:2px 8px;font-size:11px;cursor:pointer;border-radius:4px;border:1px solid var(--error);color:var(--error);background:transparent;line-height:1.4}.page_retryBtn___J6kJ:hover{background:var(--error);color:#fff}.page_modalOverlay__jiMrQ{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.page_modalContent__jVFIr{background:var(--bg-card);border-radius:var(--border-radius-lg);width:90%;max-width:500px;max-height:80vh;overflow:hidden;box-shadow:var(--shadow-lg)}.page_modalHeader__Q_aAc{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color)}.page_modalHeader__Q_aAc h3{display:flex;align-items:center;gap:8px;font-size:16px;color:var(--text-primary)}.page_modalHeader__Q_aAc svg{width:20px;height:20px;color:var(--hint)}.page_modalClose__MaM_Z{width:32px;height:32px;border:none;border-radius:var(--border-radius);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.page_modalClose__MaM_Z:hover{background:var(--bg-main);color:var(--text-primary)}.page_modalBody__fNXD2{padding:20px;overflow-y:auto;max-height:60vh;line-height:1.7;color:var(--text-secondary)}.page_toast__XposH{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:10px;padding:12px 20px;color:#fff;border-radius:var(--border-radius);box-shadow:var(--shadow-lg);font-size:14px;font-weight:500;z-index:1001;transition:all .3s ease}.page_toastSuccess__Ny4cs{background:var(--success)}.page_toastError__WATS5{background:var(--error)}.page_hamburgerBtn___gMjf{display:none;width:40px;height:40px;border:none;border-radius:var(--border-radius);background:transparent;color:var(--text-secondary);cursor:pointer;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.page_hamburgerBtn___gMjf:hover{background:var(--bg-main);color:var(--text-primary)}.page_hamburgerBtn___gMjf svg{width:24px;height:24px}.page_sidebarOverlay__4tRbO{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:99}@media (max-width:1024px){.page_editorPanel__yK3Vj{flex-direction:column}.page_codeEditorContainer__m_i5t,.page_outputPanel__BDcey{flex:none;height:300px}}@media (max-width:768px){.page_appContainer__s9jEy{height:auto;min-height:100vh;min-height:100dvh;overflow-y:auto}.page_mainContent__V9Dna{overflow-y:auto;min-width:0}.page_contentArea__iabXw{padding:12px;overflow-y:visible}.page_sidebar__uLp0h{position:fixed;left:-260px;top:0;bottom:0;z-index:100;transition:left .3s ease}.page_sidebarOpen__NS_oJ{left:0}.page_sidebarOverlay__4tRbO{display:block}.page_hamburgerBtn___gMjf{display:flex}.page_mainHeader__g1Xv9{padding:0 12px}.page_breadcrumb__u8_JX{font-size:12px;overflow:hidden;max-width:180px}.page_breadcrumbTitle__V_bNp{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page_userName__jdihM{display:none}.page_actionBar__m2euM{flex-direction:column;align-items:stretch;gap:8px}.page_actionButtons__4Eldh{flex-wrap:wrap;gap:6px}.page_outputTabs__N3oec{justify-content:center;flex-wrap:wrap}.page_tabBtn__UF4Io{padding:6px 12px;font-size:12px}.page_codeEditorContainer__m_i5t,.page_outputPanel__BDcey{flex:none;height:240px}.page_editorPanel__yK3Vj{flex-direction:column;gap:12px}.page_tutorialHeader__IKG0E{padding:16px}.page_tutorialHeader__IKG0E h1{font-size:16px}.page_tutorialMeta__mW_hv{flex-wrap:wrap;gap:8px}.page_statusBar__M8_00{flex-wrap:wrap;gap:8px;font-size:11px}.page_statusLeft__gn9px,.page_statusRight__CYATj{gap:8px}.page_toast__XposH{bottom:12px;right:12px;left:12px;justify-content:center}}