:root{--bai-color-brand-50: var(--accent-subtle, hsl(234 80% 97%));--bai-color-brand-100: var(--accent-subtle, hsl(234 75% 92%));--bai-color-brand-200: var(--accent, hsl(234 70% 83%));--bai-color-brand-500: var(--accent, hsl(234 55% 50%));--bai-color-brand-600: var(--accent, hsl(234 55% 42%));--bai-color-brand-700: var(--accent-hover, hsl(234 55% 34%));--bai-color-brand-800: var(--surface-raised, hsl(234 50% 26%));--bai-color-brand-900: var(--sidebar-bg, hsl(234 45% 18%));--bai-color-brand-950: var(--sidebar-bg, hsl(234 45% 12%));--bai-color-accent-400: var(--accent, hsl(185 70% 45%));--bai-color-accent-500: var(--accent, hsl(185 75% 36%));--bai-color-neutral-0: var(--surface-raised, hsl(220 20% 100%));--bai-color-neutral-50: var(--surface-base, hsl(220 20% 98%));--bai-color-neutral-100: var(--surface-overlay, hsl(220 18% 95%));--bai-color-neutral-200: var(--border-default, hsl(220 16% 90%));--bai-color-neutral-300: var(--border-default, hsl(220 14% 80%));--bai-color-neutral-400: var(--text-muted, hsl(220 12% 65%));--bai-color-neutral-500: var(--text-secondary, hsl(220 10% 50%));--bai-color-neutral-700: var(--surface-overlay, hsl(220 10% 32%));--bai-color-neutral-800: var(--surface-raised, hsl(220 12% 22%));--bai-color-neutral-900: var(--surface-sunken, hsl(220 14% 13%));--bai-color-status-success: var(--status-ok, hsl(142 68% 35%));--bai-color-status-error: var(--status-error, hsl(0 72% 50%));--bai-color-status-warning: var(--status-warn, hsl(38 92% 45%));--bai-color-surface-base: var(--surface-base, hsl(220 20% 98%));--bai-color-surface-raised: var(--surface-raised, hsl(220 20% 100%));--bai-color-surface-overlay: var(--surface-overlay, hsl(220 18% 95%));--bai-color-text-primary: var(--text-primary, hsl(220 14% 13%));--bai-color-text-secondary: var(--text-secondary, hsl(220 10% 50%));--bai-color-text-on-brand: var(--avatar-text, hsl(220 20% 100%));--bai-color-border-default: var(--border-default, hsl(220 16% 90%));--bai-color-border-strong: var(--border-subtle, hsl(220 14% 80%));--bai-color-border: var(--border-default, hsl(220 16% 90%));--bai-color-primary-50: var(--accent-subtle, hsl(234 80% 97%));--bai-sidebar-bg: var(--sidebar-bg, hsl(234 45% 12%));--bai-sidebar-border: var(--border-subtle, hsl(234 45% 20%));--bai-sidebar-heading: var(--text-muted, hsl(234 40% 55%));--bai-sidebar-text: var(--sidebar-text, hsl(234 40% 80%));--bai-sidebar-text-hover: var(--text-primary, hsl(220 20% 100%));--bai-sidebar-hover-bg: var(--sidebar-hover-bg, hsl(234 45% 22%));--bai-sidebar-active-bg: var(--sidebar-active-bg, hsl(234 55% 34%));--bai-sidebar-active-text: var(--sidebar-active-text, hsl(220 20% 100%));--bai-sidebar-sub: var(--text-secondary, hsl(234 55% 70%));--bai-sidebar-footer-border: var(--border-subtle, hsl(234 45% 20%));--bai-sidebar-logout-bg: var(--surface-overlay, hsl(234 45% 20%));--bai-sidebar-logout-hover: var(--surface-overlay, hsl(234 45% 26%));--bai-sidebar-logout-text: var(--sidebar-text, hsl(234 40% 80%));--bai-space-1: .25rem;--bai-space-2: .5rem;--bai-space-3: .75rem;--bai-space-4: 1rem;--bai-space-5: 1.25rem;--bai-space-6: 1.5rem;--bai-space-8: 2rem;--bai-space-10: 2.5rem;--bai-space-12: 3rem;--bai-space-16: 4rem;--bai-font-sans: "Inter", system-ui, -apple-system, sans-serif;--bai-font-mono: "JetBrains Mono", "Fira Code", monospace;--bai-text-sm: .875rem;--bai-text-base: 1rem;--bai-text-lg: 1.125rem;--bai-text-xl: 1.25rem;--bai-text-2xl: 1.5rem;--bai-shadow-sm: var(--shadow-sm, 0 1px 2px 0 hsl(220 14% 13% / .05));--bai-shadow-md: var(--shadow-md, 0 4px 6px -1px hsl(220 14% 13% / .1), 0 2px 4px -1px hsl(220 14% 13% / .06));--bai-shadow-lg: var(--shadow-lg, 0 10px 15px -3px hsl(220 14% 13% / .1), 0 4px 6px -2px hsl(220 14% 13% / .05));--bai-focus-ring: 0 0 0 3px color-mix(in srgb, var(--border-focus, hsl(234 55% 50%)) 40%, transparent)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--bai-font-sans);font-size:var(--bai-text-base);color:var(--bai-color-text-primary);background:var(--bai-color-surface-base);-webkit-font-smoothing:antialiased}a{color:var(--bai-color-brand-600);text-decoration:none}a:hover{text-decoration:underline}.card{background:var(--bai-color-surface-raised);border:1px solid var(--bai-color-border-default);border-radius:.5rem;box-shadow:var(--bai-shadow-sm);padding:var(--bai-space-6)}.btn{display:inline-flex;align-items:center;gap:var(--bai-space-2);padding:var(--bai-space-2) var(--bai-space-4);border-radius:.375rem;font-size:var(--bai-text-sm);font-weight:500;cursor:pointer;border:none;transition:background .15s,box-shadow .15s}.btn:focus-visible{outline:none;box-shadow:var(--bai-focus-ring)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--bai-color-brand-600);color:var(--bai-color-text-on-brand)}.btn-primary:hover:not(:disabled){background:var(--bai-color-brand-700)}.btn-secondary{background:var(--bai-color-surface-raised);color:var(--bai-color-text-primary);border:1px solid var(--bai-color-border-default)}.btn-secondary:hover:not(:disabled){background:var(--bai-color-surface-overlay)}.btn-danger{background:var(--bai-color-status-error);color:var(--bai-color-text-on-brand)}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--bai-color-status-error) 85%,black)}.btn-ghost{background:transparent;color:var(--bai-color-text-secondary);border:1px solid transparent}.btn-ghost:hover:not(:disabled){background:var(--bai-color-surface-overlay);color:var(--bai-color-text-primary)}.form-input{width:100%;padding:var(--bai-space-2) var(--bai-space-3);border:1px solid var(--bai-color-border-default);border-radius:.375rem;font-size:var(--bai-text-sm);font-family:var(--bai-font-sans);color:var(--bai-color-text-primary);background:var(--bai-color-surface-raised);transition:border-color .15s,box-shadow .15s}.form-input:focus{outline:none;border-color:var(--bai-color-brand-500);box-shadow:var(--bai-focus-ring)}.badge{display:inline-flex;align-items:center;gap:var(--bai-space-1);padding:.125rem var(--bai-space-2);border-radius:9999px;font-size:.75rem;font-weight:500;background:var(--bai-color-brand-100);color:var(--bai-color-brand-700)}.badge-remove{background:none;border:none;cursor:pointer;color:var(--bai-color-brand-600);line-height:1;padding:0;font-size:.875rem}.badge-remove:hover{color:var(--bai-color-status-error)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:var(--bai-space-3) var(--bai-space-4);border-bottom:1px solid var(--bai-color-border-default);font-size:var(--bai-text-sm)}th{font-weight:600;color:var(--bai-color-text-secondary);background:var(--bai-color-surface-overlay);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}tr:hover td{background:var(--bai-color-surface-overlay)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--bai-space-6)}.page-title{font-size:var(--bai-text-2xl);font-weight:700;color:var(--bai-color-text-primary)}.page-subtitle{font-size:var(--bai-text-sm);color:var(--bai-color-text-secondary);margin-top:var(--bai-space-1)}.alert{padding:var(--bai-space-3) var(--bai-space-4);border-radius:.375rem;font-size:var(--bai-text-sm);margin-bottom:var(--bai-space-4)}.alert-error{background:color-mix(in srgb,var(--bai-color-status-error) 10%,transparent);color:var(--bai-color-status-error);border:1px solid color-mix(in srgb,var(--bai-color-status-error) 30%,transparent)}.alert-success{background:color-mix(in srgb,var(--bai-color-status-success) 10%,transparent);color:var(--bai-color-status-success);border:1px solid color-mix(in srgb,var(--bai-color-status-success) 30%,transparent)}.spinner{display:inline-block;width:1.25rem;height:1.25rem;border:2px solid var(--bai-color-border-default);border-top-color:var(--bai-color-brand-500);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-state{display:flex;justify-content:center;padding:var(--bai-space-16)}.empty-state{text-align:center;padding:var(--bai-space-16);color:var(--bai-color-text-secondary)}.modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--bai-color-surface-raised);border-radius:.5rem;box-shadow:var(--bai-shadow-lg);padding:var(--bai-space-6);width:100%;max-width:32rem}.modal-title{font-size:var(--bai-text-lg);font-weight:600;margin-bottom:var(--bai-space-4)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--bai-space-3);margin-top:var(--bai-space-6)}.tag-input-row{display:flex;gap:var(--bai-space-2);align-items:center;margin-top:var(--bai-space-2)}.tag-list{display:flex;flex-wrap:wrap;gap:var(--bai-space-2);margin-top:var(--bai-space-2)}.toggle{position:relative;display:inline-block;width:2.25rem;height:1.25rem}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background:var(--bai-color-neutral-300);border-radius:9999px;transition:background .2s}.toggle-slider:before{content:"";position:absolute;height:.875rem;width:.875rem;left:.1875rem;bottom:.1875rem;background:var(--bai-color-text-on-brand);border-radius:50%;transition:transform .2s}.toggle input:checked+.toggle-slider{background:var(--bai-color-brand-600)}.toggle input:checked+.toggle-slider:before{transform:translate(1rem)}.toggle input:focus-visible+.toggle-slider{box-shadow:var(--bai-focus-ring)}
