@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-primary:#0f1115;--bg-secondary:#16181d;--bg-tertiary:#1c1e24;--brand-primary:#6366f1;--brand-primary-hover:#4f46e5;--brand-accent:#8b5cf6;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--border-color:#ffffff14;--border-hover:#ffffff26;--danger:#ef4444;--danger-hover:#dc2626;--font-family:"Inter", system-ui, -apple-system, sans-serif;--shadow-sm:0 1px 2px 0 #0003;--shadow-md:0 4px 6px -1px #0000004d;--shadow-lg:0 10px 15px -3px #0006;--glass-bg:#16181db3;--glass-border:#ffffff0d;--glass-blur:blur(12px);--sidebar-width:280px;--topbar-height:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{letter-spacing:-.025em;color:var(--text-primary);font-weight:600}a{color:var(--brand-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--brand-primary-hover)}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea{font-family:inherit}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.app-container{width:100vw;height:100vh;display:flex;overflow:hidden}.main-content-wrapper{flex-direction:column;flex:1;height:100vh;display:flex;overflow:hidden}.page-content{flex:1;padding:2rem 2rem 4rem;overflow-y:auto}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-slow) forwards}.modal-overlay{-webkit-backdrop-filter:blur(4px);z-index:100;background:#0009;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-lg);width:100%;max-width:500px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-title{margin:0;font-size:1.125rem}.modal-body{padding:1.5rem;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.btn{border-radius:var(--radius-sm);transition:all var(--transition-fast);justify-content:center;align-items:center;gap:.5rem;font-weight:500;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand-primary);color:#fff}.btn-primary:not(:disabled):hover{background:var(--brand-primary-hover);box-shadow:0 4px 12px #6366f14d}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:not(:disabled):hover{background:var(--border-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:not(:disabled):hover{background:var(--danger-hover)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:not(:disabled):hover{color:var(--text-primary);background:#ffffff0d}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-md{padding:.5rem 1rem;font-size:.875rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.btn-full{width:100%}.sidebar{width:var(--sidebar-width);border-right:1px solid var(--border-color);z-index:10;flex-direction:column;flex-shrink:0;height:100vh;display:flex}.sidebar-header{height:var(--topbar-height);border-bottom:1px solid var(--border-color);align-items:center;padding:0 1.5rem;display:flex}.brand-name{letter-spacing:-.05em;color:var(--text-primary);font-size:1.25rem;font-weight:700}.text-accent{color:var(--brand-accent)}.sidebar-content{flex:1;padding:1.5rem 1rem;overflow-y:auto}.category-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;padding:0 .5rem;display:flex}.section-title{color:var(--text-muted);letter-spacing:.05em;font-size:.75rem;font-weight:600}.icon-btn{color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);justify-content:center;align-items:center;padding:4px;display:flex}.icon-btn:hover{color:var(--text-primary);background:var(--border-hover)}.add-category-form{margin-bottom:1rem;padding:0 .5rem}.ui-input{background:var(--bg-secondary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:var(--radius-sm);transition:border-color var(--transition-fast);outline:none;padding:.5rem .75rem;font-size:.875rem}.ui-input:focus{border-color:var(--brand-primary)}.empty-state-text{color:var(--text-muted);padding:0 .5rem;font-size:.875rem;font-style:italic}.category-list{flex-direction:column;gap:2px;list-style:none;display:flex}.category-item{border-radius:var(--radius-md);position:relative;overflow:hidden}.category-link{color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-fast);align-items:center;padding:.625rem .75rem;font-size:.875rem;font-weight:500;display:flex}.category-icon{color:inherit;opacity:.7;margin-right:.75rem}.category-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.category-link:hover{background:var(--border-color);color:var(--text-primary)}.category-link.active{background:var(--brand-primary);color:#fff}.category-link.active .category-icon{opacity:1}.category-actions{align-items:center;gap:4px;display:none;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.category-item:hover .category-actions{display:flex}.action-btn{color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);justify-content:center;align-items:center;padding:4px;display:flex}.action-btn.text-danger:hover{color:var(--danger);background:#ef44441a}.topbar{height:var(--topbar-height);border-bottom:1px solid var(--border-color);background:var(--bg-primary);z-index:20;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 2rem;display:flex}.topbar-search{flex:1;max-width:600px;position:relative}.search-input-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-muted);position:absolute;left:1rem}.search-input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-full);width:100%;color:var(--text-primary);transition:all var(--transition-normal);padding:.625rem 1rem .625rem 2.75rem;font-size:.9375rem}.search-input:focus{border-color:var(--brand-primary);background:var(--bg-tertiary);outline:none;box-shadow:0 0 0 2px #6366f133}.search-input::placeholder{color:var(--text-muted)}.topbar-actions{align-items:center;gap:1rem;display:flex}.search-dropdown{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;max-height:400px;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow-y:auto}.search-empty{color:var(--text-muted);text-align:center;padding:1rem;font-size:.875rem}.search-results-list{margin:0;padding:.5rem;list-style:none}.search-result-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.search-result-item:hover{background:var(--border-color)}.search-result-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.875rem;font-weight:500;overflow:hidden}.search-result-category{color:var(--brand-primary);border-radius:var(--radius-full);white-space:nowrap;background:#6366f11a;align-items:center;margin-left:1rem;padding:.125rem .5rem;font-size:.75rem;display:flex}.lang-switcher{border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--border-color);align-items:center;gap:.5rem;padding:.25rem .5rem;display:flex}.lang-select{color:var(--text-primary);cursor:pointer;appearance:none;background:0 0;border:none;outline:none;font-family:inherit;font-size:.875rem}.lang-select option{background:var(--bg-secondary);color:var(--text-primary)}
