:root{--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--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;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 10;--z-sticky: 20;--z-fixed: 30;--z-modal-backdrop: 40;--z-modal: 50;--z-popover: 60;--z-tooltip: 70;--sidebar-width-collapsed: 3.5rem;--sidebar-width-expanded: 12.5rem;--header-height: 3.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-lg);border:1px solid transparent;cursor:pointer;transition:all var(--transition-base);outline:none}.btn:focus-visible{box-shadow:0 0 0 2px var(--color-bg),0 0 0 4px var(--color-accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-secondary{background:var(--color-secondary);color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-hover)}.btn-ghost{background:transparent;color:var(--color-text);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--color-hover)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--text-base)}.card{background:var(--color-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6)}.card-hover{transition:all var(--transition-base)}.card-hover:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md)}.input{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);background:var(--color-primary);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-base);outline:none}.input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 20%,transparent)}.input::-moz-placeholder{color:var(--color-text);opacity:.5}.input::placeholder{color:var(--color-text);opacity:.5}.label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--color-text);margin-bottom:var(--space-2)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-text)}.badge-accent{background:color-mix(in srgb,var(--color-accent) 15%,transparent);color:var(--color-accent)}.badge-success{background:#22c55e26;color:#22c55e}.badge-error{background:color-mix(in srgb,var(--color-error) 15%,transparent);color:var(--color-error)}.section-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--color-secondary);border-bottom:1px solid var(--color-border)}.section-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-text);text-transform:uppercase;letter-spacing:.05em}.divider{height:1px;background:var(--color-border);margin:var(--space-4) 0}.divider-vertical{width:1px;height:100%;background:var(--color-border);margin:0 var(--space-4)}.text-primary{color:var(--color-text)}.text-secondary{color:var(--color-text);opacity:.7}.text-muted{color:var(--color-text);opacity:.5}.text-accent{color:var(--color-accent)}.text-error{color:var(--color-error)}.bg-base{background:var(--color-bg)}.bg-primary{background:var(--color-primary)}.bg-secondary{background:var(--color-secondary)}.bg-accent{background:var(--color-accent)}.border-default{border:1px solid var(--color-border)}.border-accent{border:1px solid var(--color-accent)}.interactive{transition:all var(--transition-base);cursor:pointer}.interactive:hover{background:var(--color-hover)}.focus-ring:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-bg),0 0 0 4px var(--color-accent)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glass{background:color-mix(in srgb,var(--color-secondary) 80%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.scroll-smooth{scroll-behavior:smooth}.scrollbar-hide{scrollbar-width:none;-ms-overflow-style:none}.scrollbar-hide::-webkit-scrollbar{display:none}.animate-fade-in{animation:fadeIn var(--transition-base) ease-out}.animate-slide-up{animation:slideUp var(--transition-base) ease-out}.animate-scale-in{animation:scaleIn var(--transition-fast) ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
