:root{--font-sans: "Fredoka", "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-gaming: "Lilita One", "Russo One", sans-serif;--font-mono: "Fira Code", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--sidebar-width: 256px;--header-height: 72px;--max-content-width: 100%}[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #fafafa;--bg-tertiary: #f3f4f6;--text-primary: #000000;--text-secondary: #4b5563;--text-light: #9ca3af;--border-color: #e5e7eb;--border-color-dark: #cbd5e1;--color-primary: #000000;--color-primary-dark: #1f2937;--color-primary-light: #f3f4f6;--color-secondary: #374151;--color-secondary-dark: #111827;--color-purple: #4b5563;--color-purple-dark: #1f2937;--color-heart: #ef4444;--color-heart-dark: #dc2626;--color-streak: #f59e0b;--color-streak-dark: #d97706;--color-gem: #06b6d4;--color-gem-dark: #0891b2;--color-card-bg: #ffffff;--color-editor-bg: #f9fafb;--color-editor-gutter: #f3f4f6;--color-editor-text: #111827;--shadow-3d: 0 4px 12px rgba(0, 0, 0, .04);--shadow-btn-primary: none;--shadow-btn-secondary: none;--shadow-btn-purple: none;--shadow-btn-heart: none;--shadow-btn-streak: none;--shadow-btn-neutral: none}[data-theme=dark]{--bg-primary: #000000;--bg-secondary: #0a0a0a;--bg-tertiary: #171717;--text-primary: #ffffff;--text-secondary: #a3a3a3;--text-light: #737373;--border-color: #262626;--border-color-dark: #404040;--color-primary: #ffffff;--color-primary-dark: #e5e5e5;--color-secondary: #a3a3a3;--color-secondary-dark: #737373;--color-purple: #d4d4d4;--color-purple-dark: #a3a3a3;--color-heart: #ff3366;--color-heart-dark: #cc1f4d;--color-streak: #f59e0b;--color-streak-dark: #d97706;--color-gem: #00f0ff;--color-gem-dark: #00c0cc;--color-card-bg: #090909;--color-editor-bg: #030303;--color-editor-gutter: #0f0f0f;--color-editor-text: #e5e5e5;--shadow-3d: 0 4px 16px rgba(0, 0, 0, .6);--shadow-btn-primary: none;--shadow-btn-secondary: none;--shadow-btn-purple: none;--shadow-btn-heart: none;--shadow-btn-streak: none;--shadow-btn-neutral: none}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .2s ease,border-color .2s ease}body{font-family:var(--font-sans);background-color:var(--bg-secondary);color:var(--text-primary);min-height:100vh;display:flex;overflow-x:hidden;-webkit-font-smoothing:antialiased}#root{width:100%;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-gaming);font-weight:700;color:var(--text-primary);line-height:1.2}p{color:var(--text-secondary);line-height:1.5}button{font-family:var(--font-sans);cursor:pointer;border:none;outline:none;background:none}.logo-text{font-family:Lilita One,sans-serif!important;letter-spacing:1px!important;text-transform:uppercase}.btn-3d{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;border-radius:8px;border:1px solid transparent;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;box-shadow:none!important;font-family:var(--font-gaming)}.btn-3d:active{transform:scale(.97)!important}.btn-3d:hover{transform:translateY(-1px);filter:brightness(1.08)}.btn-3d.btn-primary{background-color:var(--color-primary);color:var(--bg-primary)!important;border:1px solid var(--color-primary)}.btn-3d.btn-primary:hover{filter:brightness(1.1)}.btn-3d.btn-secondary{background-color:var(--color-secondary);color:var(--bg-primary)!important;border:1px solid var(--color-secondary)}.btn-3d.btn-secondary:hover{filter:brightness(1.1)}.btn-3d.btn-purple{background-color:var(--color-purple);color:var(--bg-primary)!important;border:1px solid var(--color-purple)}.btn-3d.btn-purple:hover{filter:brightness(1.1)}.btn-3d.btn-heart{background-color:var(--color-heart);color:#fff!important;border:1px solid var(--color-heart)}.btn-3d.btn-heart:hover{filter:brightness(1.1)}.btn-3d.btn-neutral{background-color:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color-dark)}.btn-3d.btn-neutral:hover{background-color:var(--bg-secondary)}.card-3d{background-color:var(--color-card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-3d);padding:24px}.app-container{display:flex;width:100%;min-height:100vh}.sidebar-spacer{width:var(--sidebar-width);flex-shrink:0}.main-content{flex-grow:1;display:flex;flex-direction:column;min-height:100vh;background-color:var(--bg-secondary);padding-bottom:40px}.content-limit{max-width:var(--max-content-width);width:100%;margin:0 auto;padding:0 24px}@keyframes wiggle{0%,to{transform:translate(0)}15%,45%,75%{transform:translate(-8px)}30%,60%,90%{transform:translate(8px)}}.animate-wiggle{animation:wiggle .5s ease-in-out}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-bounce-subtle{animation:bounce-subtle 2s infinite ease-in-out}@keyframes pulse-glow{0%,to{transform:scale(1);box-shadow:0 0 10px #00ff884d}50%{transform:scale(1.03);box-shadow:0 0 20px #0f89}}.pulse-glow-primary{animation:pulse-glow 2s infinite ease-in-out}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color-dark);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-light)}.tab-toggle-button{background-color:transparent;color:var(--text-secondary);border-bottom:3px solid transparent;padding:10px 20px;font-size:15px;font-weight:700;transition:all .15s ease;text-transform:uppercase;letter-spacing:.5px}.tab-toggle-button.active{color:var(--color-secondary);border-bottom:3px solid var(--color-secondary)}.options-btn-override{color:var(--text-primary)!important}.login-bg{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;width:100%;background:radial-gradient(circle at top,var(--bg-primary) 20%,var(--bg-secondary) 100%);padding:24px}.login-card{max-width:440px;width:100%;text-align:center;padding:40px;display:flex;flex-direction:column;align-items:center}.google-btn{display:inline-flex;align-items:center;justify-content:center;background-color:#fff;color:#374151!important;border:1px solid #d1d5db;border-radius:12px;padding:12px 24px;font-size:15px;font-weight:700;box-shadow:0 2px 4px #00000014;cursor:pointer;width:100%;margin-top:24px;transition:background-color .15s ease}.google-btn:hover{background-color:#f9fafb}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;width:100%;margin-top:24px}.course-card{display:flex;flex-direction:column;align-items:center;padding:20px;cursor:pointer;text-align:center;background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:16px;box-shadow:var(--shadow-3d)}.course-card:hover{border-color:var(--color-primary)}.btn-3d:disabled{opacity:.75;color:var(--text-primary)!important}@media (max-width: 900px){:root{--sidebar-width: 80px}.nav-label{display:none}}@media (max-width: 600px){:root{--sidebar-width: 0px}.sidebar-spacer{display:none}.sidebar{display:none!important}.mobile-bottom-nav{display:flex!important;position:fixed;bottom:0;left:0;right:0;height:64px;background-color:var(--bg-primary);border-top:2px solid var(--border-color);justify-content:space-around;align-items:center;z-index:1000;box-shadow:0 -4px 12px #0000000d}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-secondary);padding:6px;background:none;border:none;cursor:pointer;flex:1;font-family:var(--font-gaming);text-transform:uppercase;transition:color .15s ease}.mobile-nav-item.active{color:var(--color-primary)}.main-content{padding-bottom:80px!important}.path-tree-scale{transform:scale(.85);transform-origin:top center;margin-bottom:-120px}.lang-name-label{display:none!important}.stat-badge{padding:6px 10px!important;font-size:13px!important;border-radius:8px!important;box-shadow:0 1px 0 var(--border-color)!important}.stat-badge svg{width:16px!important;height:16px!important;margin-right:4px!important}}@media (max-width: 440px){.path-tree-scale{transform:scale(.72);transform-origin:top center;margin-bottom:-220px}}@media (max-width: 375px){.path-tree-scale{transform:scale(.62);transform-origin:top center;margin-bottom:-300px}}.mascot-sprite{image-rendering:-moz-crisp-edges;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;image-rendering:pixelated}.mobile-bottom-nav{display:none}.main-content{width:100%;max-width:100%;min-width:0}.lesson-content-card{padding:32px}@media (max-width: 600px){.lesson-content-card{padding:16px!important;margin:16px auto 12px!important;width:calc(100% - 24px)!important}.mascot-interaction-container{width:calc(100% - 24px)!important;gap:8px!important}.mascot-speech-bubble{padding:10px 12px!important;font-size:12px!important}.editor-footer{padding:0 12px!important;height:70px!important}.editor-footer-btn{padding:8px 12px!important;font-size:12px!important}.bottom-banner,.neutral-bottom-banner{height:auto!important;padding:16px 20px!important}.bottom-banner>div,.neutral-bottom-banner>div{flex-direction:column!important;gap:12px!important;align-items:center!important;text-align:center!important}.bottom-banner>div>div{flex-direction:column!important;text-align:center!important;gap:8px!important}.bottom-banner>div>div svg{margin-right:0!important}.bottom-banner button,.neutral-bottom-banner button{width:100%!important}}.profile-card{display:grid!important;grid-template-columns:280px 1fr;gap:48px;background-color:var(--bg-primary);padding:40px;align-items:start}.profile-left-col{display:flex;flex-direction:column;align-items:center;gap:20px;border-right:2px solid var(--border-color);padding-right:48px;width:100%}.profile-details-section{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%}.profile-right-col{display:flex;flex-direction:column;gap:32px}.profile-user-info{width:100%}.profile-sign-out-btn{margin-top:24px;align-self:center;width:100%;max-width:160px;padding:10px 16px}@media (max-width: 900px){.profile-card{grid-template-columns:1fr!important;padding:24px!important;gap:32px!important}.profile-left-col{border-right:none!important;padding-right:0!important}.profile-name-row,.profile-display-wrapper{justify-content:center!important;width:100%!important}.profile-name-text-wrapper{align-items:center!important;text-align:center!important}.profile-stats-row{justify-content:center!important;width:100%!important}.profile-sign-out-btn{align-self:center!important}}
