:root{--color-bg-primary:#fff;--color-bg-secondary:#f3f5f6;--color-bg-tertiary:#e7ecee;--color-surface:#fff;--color-surface-hover:#f6f8f9;--color-text-primary:#15242c;--color-text-secondary:#3d515b;--color-text-muted:#5e727b;--color-text-faint:#8a9ba3;--color-text-inverse:#fff;--color-border:#dde4e8;--color-border-strong:#bcc9cf;--color-brand-primary:#0c5f73;--color-brand-primary-hover:#0a5162;--color-brand-primary-active:#08424f;--color-brand-contrast:#fff;--color-brand-subtle:#e2f0f3;--color-brand-ink:#0a323b;--color-accent:#149a5c;--color-accent-hover:#0f7f4c;--color-accent-on-dark:#6fd598;--color-danger:#dc2626;--color-danger-hover:#b91c1c;--color-status-success:#0e6b3c;--color-status-success-bg:#dff3e7;--color-status-success-border:#bde6cc;--color-status-success-text:#0e6b3c;--color-status-warning:#8a4b0e;--color-status-warning-bg:#fdf0dc;--color-status-warning-border:#f5d9a8;--color-status-warning-text:#8a4b0e;--color-status-error:#a11a1a;--color-status-error-bg:#fbe4e4;--color-status-error-border:#f3bfbf;--color-status-error-text:#a11a1a;--color-status-info:#0b5b6b;--color-status-info-bg:#e2f0f3;--color-status-info-border:#bfe0e7;--color-status-info-text:#0b5b6b;--color-status-neutral:#3d515b;--color-status-neutral-bg:#e7ecee;--color-status-neutral-border:#dde4e8;--color-status-neutral-text:#3d515b;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #15242c0f;--shadow-md:0 6px 12px -4px #15242c1a, 0 2px 4px -2px #15242c0f;--shadow-lg:0 16px 28px -8px #15242c24, 0 4px 8px -4px #15242c14;--shadow-overlay:0 24px 48px -12px #0a323b38, 0 8px 16px -8px #0a323b1f;--font-display:var(--font-space-grotesk), "Space Grotesk", "Inter", -apple-system, "Segoe UI", sans-serif;--font-sans:var(--font-inter), "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:var(--font-jetbrains-mono), "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-editorial:var(--font-instrument-serif), "Instrument Serif", Georgia, serif;--text-display-size:30px;--text-h1-size:24px;--text-h2-size:20px;--text-h3-size:16px;--text-body-size:14px;--text-body-sm-size:13px;--text-caption-size:12px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--motion-fast:.12s;--motion-base:.2s;--motion-slow:.32s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.32, .72, 0, 1);--transition-fast:.12s cubic-bezier(.2, .8, .2, 1);--transition-base:.2s cubic-bezier(.2, .8, .2, 1);--bp-sm:640px;--bp-md:900px;--bp-lg:1200px;--sidebar-width:264px;--topbar-height:64px;--z-sticky:20;--z-drawer:40;--z-modal:50;--z-toast:60}
*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--text-body-size);color:var(--color-text-primary);background:var(--color-bg-secondary);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:20px}a{color:inherit;text-decoration:none}button{font-family:inherit}::selection{background:var(--color-brand-subtle)}.text-display{font-family:var(--font-display);font-size:var(--text-display-size);letter-spacing:-.03em;font-weight:600;line-height:36px}.text-h1{font-family:var(--font-display);font-size:var(--text-h1-size);letter-spacing:-.02em;font-weight:600;line-height:32px}.text-h2{font-family:var(--font-display);font-size:var(--text-h2-size);letter-spacing:-.01em;font-weight:600;line-height:28px}.text-h3{font-size:var(--text-h3-size);font-weight:600;line-height:24px}.text-body-sm{font-size:var(--text-body-sm-size);line-height:18px}.text-caption{font-size:var(--text-caption-size);line-height:16px}.text-label{font-size:var(--text-body-sm-size);font-weight:600;line-height:18px}.text-mono{font-family:var(--font-mono);font-size:var(--text-caption-size)}.text-muted{color:var(--color-text-muted)}:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
