:root{--color-primary: #3B82F6;--color-primary-dark: #0A1628;--color-accent: #F59E0B;--color-text-primary: #0A1628;--color-text-secondary: #64748B;--color-bg-primary: #F8FAFC;--color-bg-surface: #FFFFFF;--color-border: #E2E8F0;--color-success: #10B981;--color-warning: #F59E0B;--color-error: #EF4444;--color-info: #3B82F6;--color-success-bg: #ECFDF5;--color-error-bg: #FEF2F2;--color-warning-bg: #FFFBEB;--color-info-bg: #EFF6FF;--color-bg-secondary: #F1F5F9;--code-bg: #FFFFFF;--code-text: #1E293B;--code-comment: #64748B;--code-keyword: #0369A1;--code-function: #7C3AED;--code-string: #059669;--code-number: #DC2626;--code-variable: #EA580C}@media (prefers-color-scheme: dark){html.dark-mode,html:not(.light-mode){--color-primary: #60A5FA;--color-primary-dark: #0A1628;--color-accent: #F59E0B;--color-text-primary: #F8FAFC;--color-text-secondary: #94A3B8;--color-bg-primary: #0F172A;--color-bg-surface: #1E293B;--color-border: #334155;--color-success: #34D399;--color-warning: #FBBF24;--color-error: #F87171;--color-info: #60A5FA;--color-success-bg: #064E3B;--color-error-bg: #7F1D1D;--color-warning-bg: #78350F;--color-info-bg: #1E3A8A;--color-bg-secondary: #1E293B;--code-bg: #1E293B;--code-text: #E2E8F0;--code-comment: #94A3B8;--code-keyword: #38BDF8;--code-function: #A78BFA;--code-string: #34D399;--code-number: #FB923C;--code-variable: #FB7185}}html.dark-mode{--color-primary: #60A5FA;--color-primary-dark: #0A1628;--color-accent: #F59E0B;--color-text-primary: #F8FAFC;--color-text-secondary: #94A3B8;--color-bg-primary: #0F172A;--color-bg-surface: #1E293B;--color-border: #334155;--color-success: #34D399;--color-warning: #FBBF24;--color-error: #F87171;--color-info: #60A5FA;--color-success-bg: #064E3B;--color-error-bg: #7F1D1D;--color-warning-bg: #78350F;--color-info-bg: #1E3A8A;--color-bg-secondary: #1E293B;--code-bg: #1E293B;--code-text: #E2E8F0;--code-comment: #94A3B8;--code-keyword: #38BDF8;--code-function: #A78BFA;--code-string: #34D399;--code-number: #FB923C;--code-variable: #FB7185}html.light-mode{--color-primary: #3B82F6;--color-primary-dark: #0A1628;--color-accent: #F59E0B;--color-text-primary: #0A1628;--color-text-secondary: #64748B;--color-bg-primary: #F8FAFC;--color-bg-surface: #FFFFFF;--color-border: #E2E8F0;--color-success: #10B981;--color-warning: #F59E0B;--color-error: #EF4444;--color-info: #3B82F6;--color-success-bg: #ECFDF5;--color-error-bg: #FEF2F2;--color-warning-bg: #FFFBEB;--color-info-bg: #EFF6FF;--color-bg-secondary: #F1F5F9;--code-bg: #FFFFFF;--code-text: #1E293B;--code-comment: #64748B;--code-keyword: #0369A1;--code-function: #7C3AED;--code-string: #059669;--code-number: #DC2626;--code-variable: #EA580C}*{transition:background-color .25s cubic-bezier(.4,0,.2,1),color .25s cubic-bezier(.4,0,.2,1),border-color .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1)}code,pre,input,textarea,select{transition:none!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes airplaneFly{0%{transform:translate(-100px) translateY(50px) rotate(-45deg);opacity:0}15%{opacity:1}50%{transform:translate(50%) translateY(-20px) rotate(5deg)}85%{opacity:1}to{transform:translate(calc(100% + 100px)) translateY(30px) rotate(15deg);opacity:0}}@keyframes airplaneTilt{0%,to{transform:rotate(0)}25%{transform:rotate(-8deg) translateY(-2px)}75%{transform:rotate(8deg) translateY(-2px)}}@keyframes confetti{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-in{animation:fadeIn .25s cubic-bezier(.4,0,.2,1) ease-out}.animate-slide-up{animation:slideUp .35s cubic-bezier(.4,0,.2,1) ease-out}.animate-slide-in-right{animation:slideInRight .35s cubic-bezier(.4,0,.2,1) ease-out}.animate-scale-in{animation:scaleIn .25s cubic-bezier(.4,0,.2,1) ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-stagger-1{animation-delay:.1s}.animate-stagger-2{animation-delay:.2s}.animate-stagger-3{animation-delay:.3s}.animate-stagger-4{animation-delay:.4s}.animate-stagger-5{animation-delay:.5s}.animate-stagger-6{animation-delay:.6s}.animate-stagger-7{animation-delay:.7s}.animate-stagger-8{animation-delay:.8s}.animate-stagger-9{animation-delay:.9s}.animate-stagger-10{animation-delay:1s}.hover-lift{transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1)}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.hover-scale{transition:transform .15s cubic-bezier(.4,0,.2,1)}.hover-scale:hover{transform:scale(1.05)}.hover-glow{position:relative;transition:box-shadow .25s cubic-bezier(.4,0,.2,1)}.hover-glow:hover{box-shadow:0 0 20px #3b82f666}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*{scrollbar-width:thin;scrollbar-color:var(--color-border) var(--color-bg-secondary)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:.5rem}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:.5rem;border:2px solid var(--color-bg-secondary);transition:background-color .25s cubic-bezier(.4,0,.2,1)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}::-webkit-scrollbar-thumb:active{background:var(--color-primary-dark)}::-webkit-scrollbar-corner{background:var(--color-bg-secondary)}.editor-container,.cm-scroller,app-console,app-description,app-solution{scrollbar-width:thin}.editor-container::-webkit-scrollbar,.cm-scroller::-webkit-scrollbar,app-console::-webkit-scrollbar,app-description::-webkit-scrollbar,app-solution::-webkit-scrollbar{width:8px;height:8px}.editor-container::-webkit-scrollbar-thumb,.cm-scroller::-webkit-scrollbar-thumb,app-console::-webkit-scrollbar-thumb,app-description::-webkit-scrollbar-thumb,app-solution::-webkit-scrollbar-thumb{border:1px solid var(--color-bg-secondary)}@media (prefers-reduced-motion: reduce){::-webkit-scrollbar-thumb{transition:none}*{scrollbar-width:auto}}@media (max-width: 768px){::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{border:1px solid var(--color-bg-secondary)}*{scrollbar-width:thin}}html,body{height:100%;margin:0;padding:0;font-family:Roboto,sans-serif;background-color:var(--color-bg-primary);color:var(--color-text-primary)}@media (prefers-color-scheme: dark){html{color-scheme:dark}html,body{background-color:var(--surface-ground, #1a1a1a);color:var(--text-color, #ffffff)}html:not(.light-mode).dark-mode .dark-mode,html:not(.light-mode) .dark-mode{display:contents}}html.dark-mode,html:not(.light-mode){background-color:var(--surface-ground, #1a1a1a);color:var(--text-color, #ffffff)}html.light-mode{background-color:var(--surface-ground, #ffffff);color:var(--text-color, #000000)}html.light-mode .dark-mode{display:none}app-root{display:flex;flex-direction:column;height:100vh}app-home,app-courses,app-course-detail,app-questions,app-not-found{display:block;height:93vh;overflow-y:auto}p-splitter{width:100%!important;box-sizing:border-box!important}p-splitter .p-splitter{width:100%!important;box-sizing:border-box!important}p-splitter .p-splitter .p-splitter-panel{box-sizing:border-box!important;min-width:0!important;overflow:hidden!important;position:relative!important}p-splitter .p-splitter .p-splitter-panel:first-child{flex-shrink:0!important;min-width:250px!important;max-width:70%!important}app-content-tabs{display:block!important;width:100%!important;height:100%!important;box-sizing:border-box!important;contain:layout style!important;will-change:contents!important}app-description,app-solution{display:block!important;width:100%!important;height:100%!important;box-sizing:border-box!important;contain:layout!important}@media (prefers-color-scheme: dark){.cm-editor.cm-focused .cm-lineNumbers .cm-gutterElement,.cm-editor .cm-lineNumbers .cm-gutterElement,.cm-lineNumbers .cm-gutterElement,.cm-gutter.cm-lineNumbers{color:#888!important}}html.dark-mode .cm-editor.cm-focused .cm-lineNumbers .cm-gutterElement,html.dark-mode .cm-editor .cm-lineNumbers .cm-gutterElement,html.dark-mode .cm-lineNumbers .cm-gutterElement,html.dark-mode .cm-gutter.cm-lineNumbers{color:#888!important}.p-autocomplete-panel{z-index:9999!important}.question-search .p-autocomplete-panel{z-index:10000!important}body>.p-autocomplete-panel{z-index:10001!important}.p-autocomplete{display:flex;align-items:center}.p-autocomplete .p-autocomplete-input{background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:.5rem!important;color:var(--color-text-primary);padding:.5rem .75rem;transition:all .25s cubic-bezier(.4,0,.2,1)}.p-autocomplete .p-autocomplete-input:enabled:hover{border-color:var(--color-primary)}.p-autocomplete .p-autocomplete-input:enabled:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.p-autocomplete .p-autocomplete-dropdown{background:transparent;border:2px solid var(--color-border);border-radius:.5rem;color:var(--color-text-secondary);transition:all .25s cubic-bezier(.4,0,.2,1);margin-left:.25rem;height:2rem}.p-autocomplete .p-autocomplete-dropdown:enabled:hover{background:var(--color-bg-primary);border-color:var(--color-primary);color:var(--color-primary);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.p-autocomplete .p-autocomplete-dropdown:enabled:focus{outline:none;box-shadow:0 0 0 3px #3b82f61a}.p-autocomplete .p-autocomplete-dropdown:active{transform:translateY(0)}.p-autocomplete-panel{background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;margin-top:.25rem}.p-autocomplete-panel .p-autocomplete-items{padding:.25rem}.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item{color:var(--color-text-primary);padding:.5rem .75rem;border-radius:.375rem;transition:all .2s ease;margin:.125rem 0}.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item:hover,.p-autocomplete-panel .p-autocomplete-items .p-autocomplete-item.p-highlight{background:var(--color-bg-secondary);color:var(--color-primary)}.p-autocomplete-panel .p-autocomplete-empty-message{color:var(--color-text-secondary);padding:.75rem}
