/* Vendored from the flytedesk Design System (Claude Design project
   "flytedesk Design System"), foundations/base.css verbatim.
   Source of truth stays the Design System project — re-sync by hand if it
   changes upstream. */
/* MP-225: every component renders icons as `<i className="ph ph-*">`, so the
   icon font ships here — imported by every consumer that already imports
   foundations.css, with no separate <link> or CDN needed. */
@import "./icons.css";
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--page);color:var(--text);font-family:var(--font-sans);font-size:var(--body-size);line-height:var(--body-lh);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6,p,figure,blockquote{margin:0}
img,svg,video{display:block;max-width:100%}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--link);text-decoration:none;transition:color var(--dur-fast) var(--ease)}
a:hover{color:var(--link-hover);text-decoration:underline;text-underline-offset:2px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:none;box-shadow:var(--focus-ring)}
::selection{background:var(--selection-bg);color:var(--selection-text)}
hr{border:0;border-top:1px solid var(--border);margin:0}

/* --- type utilities --- */
.fd-display-1{font-size:var(--display-1-size);line-height:var(--display-1-lh);letter-spacing:var(--display-1-track);font-weight:var(--w-bold);color:var(--display-ink)}
.fd-display-2{font-size:var(--display-2-size);line-height:var(--display-2-lh);letter-spacing:var(--display-2-track);font-weight:var(--w-bold);color:var(--display-ink)}
.fd-display-3{font-size:var(--display-3-size);line-height:var(--display-3-lh);letter-spacing:var(--display-3-track);font-weight:var(--w-bold);color:var(--display-ink)}
.fd-h1{font-size:var(--h1-size);line-height:var(--h1-lh);letter-spacing:var(--h1-track);font-weight:var(--w-semibold)}
.fd-h2{font-size:var(--h2-size);line-height:var(--h2-lh);letter-spacing:var(--h2-track);font-weight:var(--w-semibold)}
.fd-h3{font-size:var(--h3-size);line-height:var(--h3-lh);letter-spacing:var(--h3-track);font-weight:var(--w-semibold)}
.fd-h4{font-size:var(--h4-size);line-height:var(--h4-lh);letter-spacing:var(--h4-track);font-weight:var(--w-semibold)}
.fd-body-lg{font-size:var(--body-lg-size);line-height:var(--body-lg-lh)}
.fd-body{font-size:var(--body-size);line-height:var(--body-lh)}
.fd-body-sm{font-size:var(--body-sm-size);line-height:var(--body-sm-lh)}
.fd-label-lg{font-size:var(--label-lg-size);line-height:var(--label-lg-lh);letter-spacing:var(--label-lg-track);font-weight:var(--w-semibold)}
.fd-label{font-size:var(--label-size);line-height:var(--label-lh);letter-spacing:var(--label-track);font-weight:var(--w-semibold)}
.fd-overline{font-size:var(--overline-size);line-height:var(--overline-lh);letter-spacing:var(--overline-track);font-weight:var(--w-bold);text-transform:uppercase}
.fd-num-hero{font-size:var(--num-hero-size);line-height:var(--num-hero-lh);letter-spacing:var(--num-hero-track);font-weight:var(--w-bold);font-variant-numeric:tabular-nums lining-nums}
.fd-num{font-size:var(--num-size);line-height:var(--num-lh);font-weight:var(--w-medium);font-variant-numeric:tabular-nums lining-nums}
.fd-mono{font-family:var(--font-mono);font-size:var(--mono-size);line-height:var(--mono-lh);font-weight:var(--w-medium)}
.fd-tabular{font-variant-numeric:tabular-nums lining-nums}
.fd-muted{color:var(--text-muted)}
.fd-secondary{color:var(--text-2)}
.fd-prose{max-width:var(--measure-prose);text-wrap:pretty}
.fd-lede{max-width:var(--measure-lede);text-wrap:pretty}
.fd-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media (max-width:768px){
  .fd-display-1{font-size:clamp(38px,10vw,52px)}
  .fd-display-2{font-size:clamp(32px,8vw,40px)}
  .fd-display-3{font-size:30px}
  .fd-h1{font-size:24px}
  .fd-num-hero{font-size:34px}
}
