:root{--color-ink:#0f1620;--color-ink-secondary:#3f4d60;--color-muted:#5b687a;--color-border:#dde4ee;--color-border-strong:#c5d0de;--color-surface:#fff;--color-surface-muted:#f7f9fc;--color-app-background:#f2f5f9;--color-field:#fff;--color-field-border:#c9d3e0;--color-field-disabled:#eef2f7;--color-primary:#2a5cc4;--color-primary-hover:#234fab;--color-on-primary:#fff;--color-primary-tint:#2a5cc41a;--color-primary-tint-strong:#2a5cc42e;--color-focus:#3a6fd8;--ring-focus:0 0 0 3px #3a6fd859;--color-danger:#c03b3b;--color-danger-hover:#a53030;--color-danger-tint:#d645451a;--color-success:#23794a;--color-success-tint:#2f9e5e21;--color-warning:#8a5d0f;--color-warning-tint:#d6962d29;--color-info:#2a5cc4;--color-info-tint:#2a5cc41a;--color-neutral-tint:#3f4d601a;--color-sidebar:#111a26;--color-sidebar-ink:#c6d1df;--color-sidebar-ink-strong:#fff;--color-sidebar-hover:#ffffff12;--color-sidebar-active:#4d80e838;--color-sidebar-accent:#6f9bf0;--color-sidebar-border:#ffffff14;--color-badge:#c03b3b;--color-badge-ink:#fff;--color-backdrop:#080e168c;--color-message-mine:#2a5cc4;--color-message-mine-ink:#fff;--color-message-theirs:#eef2f7;--shadow-card:0 1px 2px #0c16260f;--shadow-raised:0 8px 24px #0c16261f;--shadow-dialog:0 28px 70px #0c16264d;--radius-small:6px;--radius-medium:10px;--radius-large:14px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--font-sans:var(--font-montserrat), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-small:12.5px;--font-size-base:14px;--font-size-medium:15px;--font-size-large:18px;--font-size-title:22px;--font-size-stat:28px;--sidebar-width:240px;--header-height:60px;--content-max-width:1280px;--z-sidebar:30;--z-header:20;--z-dialog:60;--z-toast:80;--motion-fast:.15s}
*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--color-ink);background:var(--color-app-background);line-height:1.5;overflow-x:hidden}a{color:var(--color-primary)}button,input,select,textarea{font:inherit;color:inherit}img{max-width:100%}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:0s!important;animation-duration:0s!important}}
