:root{--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:var(--font-sans);--font-heading:var(--font-sans);--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--bg-color:#fcfcfc;--text-color:#18181b;--text-muted:#71717a;--border-color:#e4e4e7;--btn-bg:#18181b;--btn-text:#fff;--card-bg:#fff;--element-bg:#f4f4f5;--element-hover:#e4e4e7;--shadow-color:#0000000a;--accent:#f97316;--accent-hover:#ea580c;--accent-soft:#f973161a;--accent-border:#f973163d}:root.dark{--bg-color:#161618;--text-color:#f4f4f5;--text-muted:#a1a1aa;--border-color:#27272a;--btn-bg:#f4f4f5;--btn-text:#161618;--card-bg:#1c1c1f;--element-bg:#27272a;--element-hover:#3f3f46;--shadow-color:#0000004d;--accent:#f97316;--accent-hover:#fb923c;--accent-soft:#f9731621;--accent-border:#f9731647}html{background-color:var(--bg-color);height:100%}body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-body);letter-spacing:-.01em;flex-direction:column;min-height:100vh;margin:0;padding:0;line-height:1.6;transition:background-color .2s,color .2s;display:flex}h1,h2,h3,h4,h5,h6,button,input,textarea,select,.badge,.nav-link,.admin-logo,.admin-logo-link{font-family:var(--font-heading)}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;border-radius:6px;transition:all .2s}button:hover{opacity:.85}.container{box-sizing:border-box;flex:1;width:100%;max-width:800px;margin:0 auto;padding:0 20px}.theme-toggle-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.theme-toggle-btn:hover{color:var(--text-color);background:var(--element-bg)}.dropdown-menu{background:var(--card-bg)!important;border-color:var(--border-color)!important;box-shadow:0 10px 30px var(--shadow-color)!important}.dropdown-header,.dropdown-footer{background:var(--bg-color)!important;border-bottom:1px solid var(--border-color)!important;border-top:1px solid var(--border-color)!important}.dropdown-menu .user-name,.dropdown-menu .user-email,.dropdown-menu .item-title{color:var(--text-color)!important}.action-btn,.learning-list li{background:var(--element-bg)!important;border:1px solid var(--border-color)!important;color:var(--text-color)!important}.action-btn:hover{background:var(--element-hover)!important}.filter-btn,.category-btn{background:var(--element-bg);border:1px solid var(--border-color);color:var(--text-color)}.navbar.svelte-zhmac3{background-color:var(--bg-color,#0a0a0a);border-bottom:1px solid var(--border-color,#222);z-index:100;justify-content:space-between;align-items:center;max-height:72px;padding:15px 40px;transition:max-height .22s,padding .22s,border-color .22s;display:flex;position:sticky;top:0;overflow:visible}.navbar.collapsed.svelte-zhmac3{border-bottom-color:#0000;max-height:0;padding-top:0;padding-bottom:0;overflow:hidden}.navbar-toggle.svelte-zhmac3{background:var(--card-bg,#111);border:1px solid var(--border-color,#333);color:var(--text-muted,#888);cursor:pointer;z-index:101;border-top:0;border-radius:0 0 8px 8px;justify-content:center;align-items:center;width:42px;height:22px;padding:0;transition:color .2s,top .22s;display:inline-flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.navbar-toggle.expanded.svelte-zhmac3{top:62px}.navbar-toggle.svelte-zhmac3:hover{color:var(--text-color,#fff)}.navbar-toggle.svelte-zhmac3 svg:where(.svelte-zhmac3){fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:15px;height:15px}.logo.svelte-zhmac3{color:var(--text-color,#fff);letter-spacing:0;font-size:1.05rem;font-weight:700;text-decoration:none}.nav-right.svelte-zhmac3{justify-content:flex-end;align-items:center;gap:clamp(12px,2vw,25px);display:flex}.nav-link.svelte-zhmac3{color:var(--text-muted,#888);align-items:center;gap:7px;font-size:.95rem;text-decoration:none;transition:color .2s;display:inline-flex}.nav-link-icon.svelte-zhmac3{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;flex:none;width:18px;height:18px;display:block}.nav-link.svelte-zhmac3:hover{color:var(--text-color,#fff)}.nav-theme-toggle.svelte-zhmac3{flex:none}.login-btn.svelte-zhmac3{color:var(--text-color,#fff);border:1px solid var(--border-color,#333);background:0 0;border-radius:20px;padding:6px 18px;font-size:.9rem;text-decoration:none;transition:all .2s}.login-btn.svelte-zhmac3:hover{border-color:var(--text-color,#fff)}.user-menu-container.svelte-zhmac3{position:relative}.avatar-btn.svelte-zhmac3{cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:flex}.avatar-img.svelte-zhmac3{object-fit:cover;border:1px solid var(--border-color,#333);border-radius:50%;width:32px;height:32px;transition:border-color .2s}.avatar-btn.svelte-zhmac3:hover .avatar-img:where(.svelte-zhmac3){border-color:var(--text-color,#fff)}.dropdown-menu.svelte-zhmac3{background:var(--card-bg,#111);border:1px solid var(--border-color,#333);border-radius:8px;width:250px;position:absolute;top:45px;right:0;overflow:hidden;box-shadow:0 10px 30px #00000080}.dropdown-header.svelte-zhmac3{border-bottom:1px solid var(--border-color,#222);background:var(--bg-color);padding:15px 18px}.user-name.svelte-zhmac3{color:var(--text-color);margin:0;font-size:1rem;font-weight:700}.user-email.svelte-zhmac3{color:var(--text-muted);margin:4px 0 0;font-size:.8rem}.dropdown-footer.svelte-zhmac3{background:var(--card-bg);flex-direction:column;gap:8px;padding:12px 15px;display:flex}.theme-toggle-btn.svelte-zhmac3{background:var(--element-bg,#222);border:1px solid var(--border-color,#333);color:var(--text-color);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.theme-toggle-btn.svelte-zhmac3:hover{background:var(--border-color,#333)}.theme-toggle-btn.svelte-zhmac3 svg:where(.svelte-zhmac3){display:block}.action-btn.svelte-zhmac3{color:var(--text-color);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:10px 12px;font-family:inherit;font-size:.85rem;text-decoration:none;transition:all .2s;display:block}.action-btn.svelte-zhmac3:hover{background:var(--element-bg,#222);border-color:var(--border-color,#333)}.logout-btn.svelte-zhmac3{color:#f44;cursor:pointer;background:0 0;border:1px solid #f44;border-radius:6px;margin-top:10px;padding:8px;font-family:inherit;font-size:.85rem;font-weight:500;transition:all .2s}.logout-btn.svelte-zhmac3:hover{color:#fff;background:#f44}.palette-overlay.svelte-1e5zcgo{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0006;justify-content:center;align-items:flex-start;padding-top:10vh;display:flex;position:fixed;inset:0}.palette-content.svelte-1e5zcgo{background:var(--bg-color,#1a1a1a);border:1px solid var(--border-color,#333);border-radius:12px;flex-direction:column;width:100%;max-width:600px;max-height:80vh;animation:.2s ease-out svelte-1e5zcgo-slideDown;display:flex;overflow:hidden;box-shadow:0 20px 40px #00000080}@keyframes svelte-1e5zcgo-slideDown{0%{opacity:0;transform:translateY(-20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.palette-header.svelte-1e5zcgo{border-bottom:1px solid var(--border-color,#333);background:var(--card-bg,#111);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.header-left.svelte-1e5zcgo{align-items:center;gap:8px;display:flex}.cmd-icon.svelte-1e5zcgo,.cmd-text.svelte-1e5zcgo{background:var(--element-bg,#333);color:var(--text-color,#fff);border-radius:4px;padding:2px 6px;font-family:monospace;font-size:.8rem}.header-title.svelte-1e5zcgo{color:var(--text-color,#fff);margin-left:8px;font-weight:600}.close-btn.svelte-1e5zcgo{color:var(--text-muted,#888);cursor:pointer;background:0 0;border:none;font-size:1.2rem;transition:color .2s}.close-btn.svelte-1e5zcgo:hover{color:var(--text-color,#fff)}.tree-menu.svelte-1e5zcgo{flex:1;padding:10px;overflow-y:auto}.loading-state.svelte-1e5zcgo{text-align:center;color:var(--text-muted,#888);padding:40px}.folder.svelte-1e5zcgo{margin-bottom:4px}.folder-header.svelte-1e5zcgo{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;width:100%;padding:10px 12px;transition:background .2s;display:flex}.folder-header.svelte-1e5zcgo:hover{background:var(--element-bg,#222)}.folder-icon.svelte-1e5zcgo{margin-right:10px;font-size:1.1rem}.folder-title.svelte-1e5zcgo{color:var(--text-color,#fff);flex:1;font-size:.95rem;font-weight:600}.item-count.svelte-1e5zcgo{background:var(--element-bg,#333);color:var(--text-muted,#aaa);border-radius:10px;padding:2px 8px;font-size:.75rem}.folder-content.svelte-1e5zcgo{flex-direction:column;gap:2px;margin-top:2px;padding-left:28px;display:flex}.program-item.svelte-1e5zcgo{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;transition:background .2s;display:flex}.program-item.svelte-1e5zcgo:hover{background:var(--element-bg,#222)}.program-title.svelte-1e5zcgo{color:var(--text-color,#ccc);font-size:.9rem}.program-item.svelte-1e5zcgo:hover .program-title:where(.svelte-1e5zcgo){color:var(--text-color,#fff)}.program-tag.svelte-1e5zcgo{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:600}.program-tag.free.svelte-1e5zcgo{color:#2ecc71;background:#2ecc7126}.program-tag.solo.svelte-1e5zcgo{color:#3498db;background:#3498db26}.program-tag.expert.svelte-1e5zcgo{color:#9b59b6;background:#9b59b626}.empty-folder.svelte-1e5zcgo{color:var(--text-muted,#666);padding:10px 12px;font-size:.85rem;font-style:italic}.palette-footer.svelte-1e5zcgo{background:var(--card-bg,#111);border-top:1px solid var(--border-color,#333);color:var(--text-muted,#888);justify-content:space-between;padding:12px 20px;font-size:.8rem;display:flex}.palette-footer.svelte-1e5zcgo kbd:where(.svelte-1e5zcgo){background:var(--element-bg,#333);color:var(--text-color,#ccc);border-radius:4px;padding:2px 5px;font-family:monospace}.student-shell.svelte-qpbacv{flex-direction:column;min-height:100vh;display:flex}.main-content.svelte-qpbacv{flex-grow:1}.global-footer.svelte-qpbacv{text-align:center;color:var(--text-muted);letter-spacing:0;padding:40px 20px 30px;font-family:inherit;font-size:.85rem}
