.sidebar[data-v-f0f4c017]{height:100vh;width:var(--sidebar-width);background:var(--color-surface);border-right:1px solid var(--color-border);z-index:var(--z-sticky);transition:width var(--transition-slow), transform var(--transition-slow);flex-direction:column;display:flex;position:fixed;top:0;left:0}.sidebar.collapsed[data-v-f0f4c017]{width:var(--sidebar-collapsed-width)}.sidebar-header[data-v-f0f4c017]{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.logo[data-v-f0f4c017]{align-items:center;gap:var(--spacing-md);display:flex}.logo-text[data-v-f0f4c017]{font-size:var(--text-xl);white-space:nowrap;font-weight:700}.collapse-toggle[data-v-f0f4c017]{padding:var(--spacing-sm);border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition-fast)}.collapse-toggle[data-v-f0f4c017]:hover{background:var(--color-surface-hover);color:var(--color-text)}.sidebar-nav[data-v-f0f4c017]{padding:var(--spacing-md);flex:1;overflow-y:auto}.nav-item[data-v-f0f4c017]{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);margin-bottom:var(--spacing-xs);border-radius:var(--radius-lg);color:var(--color-text-secondary);transition:all var(--transition-fast);white-space:nowrap;text-decoration:none;display:flex}.nav-item[data-v-f0f4c017]:hover{background:var(--color-surface-hover);color:var(--color-text)}.nav-item.active[data-v-f0f4c017]{background:var(--color-primary);color:#fff}.nav-label[data-v-f0f4c017]{font-size:var(--text-sm);flex:1;font-weight:500}.nav-badge[data-v-f0f4c017]{background:var(--color-accent);color:#fff;font-size:var(--text-xs);border-radius:var(--radius-full);padding:2px 6px;font-weight:600}.sidebar-footer[data-v-f0f4c017]{padding:var(--spacing-md);border-top:1px solid var(--color-border)}.theme-toggle[data-v-f0f4c017]{width:100%}@media (width<=1023px){.sidebar[data-v-f0f4c017]{transform:translate(-100%)}.sidebar.mobile-open[data-v-f0f4c017]{transform:translate(0)}.collapse-toggle[data-v-f0f4c017]{display:none}}@media (width>=1024px){.sidebar-overlay[data-v-f0f4c017]{display:none}}.header[data-v-a14b4256]{height:var(--header-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:0 var(--spacing-xl);justify-content:space-between;align-items:center;gap:var(--spacing-lg);z-index:var(--z-sticky);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;position:sticky;top:0}.header-left[data-v-a14b4256]{align-items:center;gap:var(--spacing-md);flex:1;display:flex}.menu-toggle[data-v-a14b4256]{padding:var(--spacing-sm);border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition-fast)}.menu-toggle[data-v-a14b4256]:hover{background:var(--color-surface-hover);color:var(--color-text)}.search-container[data-v-a14b4256]{align-items:center;gap:var(--spacing-sm);max-width:600px;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast);flex:1;display:flex;position:relative}.search-container[data-v-a14b4256]:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.search-container svg[data-v-a14b4256]{color:var(--color-text-muted);flex-shrink:0}.search-input[data-v-a14b4256]{color:var(--color-text);font-size:var(--text-sm);background:0 0;border:none;outline:none;flex:1}.search-input[data-v-a14b4256]::placeholder{color:var(--color-text-muted)}.search-shortcut[data-v-a14b4256]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--color-text-muted);font-family:var(--font-sans);padding:2px 6px}.header-right[data-v-a14b4256]{align-items:center;gap:var(--spacing-md);display:flex}.category-filter[data-v-a14b4256]{position:relative}.category-select[data-v-a14b4256]{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);outline:none}.category-select[data-v-a14b4256]:hover{border-color:var(--color-primary)}.category-select[data-v-a14b4256]:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #6366f11a}.theme-toggle-btn[data-v-a14b4256]{padding:var(--spacing-sm);border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition-fast)}.theme-toggle-btn[data-v-a14b4256]:hover{background:var(--color-surface-hover);color:var(--color-text)}@media (width<=1023px){.header[data-v-a14b4256]{padding:0 var(--spacing-md)}.search-container[data-v-a14b4256]{max-width:none}.search-shortcut[data-v-a14b4256]{display:none}}.app-layout[data-v-9dbb1ba6]{min-height:100vh;display:flex}.main-content[data-v-9dbb1ba6]{margin-left:var(--sidebar-width);transition:margin-left var(--transition-slow);flex-direction:column;flex:1;display:flex}@media (width<=1023px){.main-content[data-v-9dbb1ba6]{margin-left:0}}.content-wrapper[data-v-9dbb1ba6]{padding:var(--spacing-xl);flex:1;width:100%;max-width:1400px;margin:0 auto}@media (width<=640px){.content-wrapper[data-v-9dbb1ba6]{padding:var(--spacing-md)}}.fade-enter-active[data-v-9dbb1ba6],.fade-leave-active[data-v-9dbb1ba6]{transition:opacity var(--transition-base), transform var(--transition-base)}.fade-enter-from[data-v-9dbb1ba6]{opacity:0;transform:translateY(10px)}.fade-leave-to[data-v-9dbb1ba6]{opacity:0;transform:translateY(-10px)}:root{--color-primary:#6366f1;--color-primary-light:#818cf8;--color-primary-dark:#4f46e5;--color-secondary:#0ea5e9;--color-accent:#f59e0b;--color-background:#f8fafc;--color-surface:#fff;--color-surface-hover:#f1f5f9;--color-text:#0f172a;--color-text-secondary:#64748b;--color-text-muted:#94a3b8;--color-border:#e2e8f0;--color-border-light:#f1f5f9;--color-success:#22c55e;--color-warning:#f59e0b;--color-error:#ef4444;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--sidebar-width:260px;--sidebar-collapsed-width:72px;--header-height:64px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.3s cubic-bezier(.4, 0, .2, 1);--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500}[data-theme=dark]{--color-primary:#818cf8;--color-primary-light:#a5b4fc;--color-primary-dark:#6366f1;--color-secondary:#38bdf8;--color-accent:#fbbf24;--color-background:#0f172a;--color-surface:#1e293b;--color-surface-hover:#334155;--color-text:#f8fafc;--color-text-secondary:#cbd5e1;--color-text-muted:#64748b;--color-border:#334155;--color-border-light:#1e293b;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0006, 0 4px 6px -4px #0000004d;--shadow-xl:0 20px 25px -5px #00000080, 0 8px 10px -6px #0006}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-sans);background-color:var(--color-background);color:var(--color-text);min-height:100vh;line-height:1.6;overflow-x:hidden}#app{flex-direction:column;min-height:100vh;display:flex}a{color:var(--color-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary-light)}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}img,svg{max-width:100%;display:block}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-background)}::-webkit-scrollbar-thumb{background:var(--color-text-muted);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-gradient{background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInFromLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideInFromRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn var(--transition-slow) ease-out}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) ease-out}.animate-fade-in-down{animation:fadeInDown var(--transition-slow) ease-out}.animate-scale-in{animation:scaleIn var(--transition-slow) ease-out}.animate-slide-in-left{animation:slideInFromLeft var(--transition-slow) ease-out}.animate-slide-in-right{animation:slideInFromRight var(--transition-slow) ease-out}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-spin{animation:1s linear infinite spin}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}.hover-lift{transition:transform var(--transition-base), box-shadow var(--transition-base)}.hover-lift:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.hover-scale{transition:transform var(--transition-base)}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow var(--transition-base)}.hover-glow:hover{box-shadow:0 0 20px var(--color-primary-light)}.app-grid{gap:var(--spacing-lg);grid-template-columns:repeat(1,1fr);display:grid}@media (width>=640px){.app-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.app-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=1280px){.app-grid{grid-template-columns:repeat(4,1fr)}}.container{width:100%;max-width:1400px;padding:0 var(--spacing-lg);margin:0 auto}.responsive-title{font-size:var(--text-2xl);font-weight:700}@media (width>=640px){.responsive-title{font-size:var(--text-3xl)}}@media (width>=1024px){.responsive-title{font-size:var(--text-4xl)}}.responsive-subtitle{font-size:var(--text-sm);color:var(--color-text-secondary)}@media (width>=640px){.responsive-subtitle{font-size:var(--text-base)}}.responsive-padding{padding:var(--spacing-md)}@media (width>=640px){.responsive-padding{padding:var(--spacing-lg)}}@media (width>=1024px){.responsive-padding{padding:var(--spacing-xl)}}.mobile-only{display:block}@media (width>=1024px){.mobile-only{display:none}}.desktop-only{display:none}@media (width>=1024px){.desktop-only{display:block}}.sidebar-overlay{z-index:var(--z-overlay);opacity:0;visibility:hidden;transition:opacity var(--transition-base), visibility var(--transition-base);background:#00000080;position:fixed;inset:0}.sidebar-overlay.active{opacity:1;visibility:visible}@media (width>=1024px){.sidebar-overlay{display:none}}
