/* Official, unmodified IBM Plex Sans 1.1.0. See LICENSE.txt. */
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-display:swap;src:url('./IBMPlexSans-Regular.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-display:swap;src:url('./IBMPlexSans-Medium.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-display:swap;src:url('./IBMPlexSans-SemiBold.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:700;font-display:swap;src:url('./IBMPlexSans-Bold.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:italic;font-weight:400;font-display:swap;src:url('./IBMPlexSans-Italic.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:italic;font-weight:500;font-display:swap;src:url('./IBMPlexSans-MediumItalic.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:italic;font-weight:600;font-display:swap;src:url('./IBMPlexSans-SemiBoldItalic.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-style:italic;font-weight:700;font-display:swap;src:url('./IBMPlexSans-BoldItalic.woff2') format('woff2')}

/* Opt-in first-party surfaces only. Publication artwork and reader preferences
   stay independent; this is not a universal descendant font override. */
html[data-xa-custom-type],
html[data-xa-custom-type] :is(.xa-news-route, .bf-root, .xa-swap-app),
html[data-xa-custom-type] [style*="--mono:"] {
  --xa-type-text: 'IBM Plex Sans', sans-serif;
  --xa-type-mono: 'IBM Plex Sans', sans-serif;
  --xa-font-sans: var(--xa-type-text) !important;
  --xa-font-display: var(--xa-type-text) !important;
  --xa-font-mono: var(--xa-type-mono) !important;
  --font-body: var(--xa-type-text) !important;
  --font-ui: var(--xa-type-text) !important;
  --font-mono: var(--xa-type-mono) !important;
  --xa-nyt-headline-font: var(--xa-type-text) !important;
  --xa-nyt-body-font: var(--xa-type-text) !important;
  --xa-nyt-sans-font: var(--xa-type-text) !important;
  --xa-news-mono-font: var(--xa-type-mono) !important;
  --xa-home-display-font: var(--xa-type-text) !important;
  --xa-home-sans-font: var(--xa-type-text) !important;
  --xa-home-mono-font: var(--xa-type-mono) !important;
  --bf-sans: var(--xa-type-text) !important;
  --bf-mono: var(--xa-type-mono) !important;
  --swap-mono: var(--xa-type-mono) !important;
  --sans: var(--xa-type-text) !important;
  --serif: var(--xa-type-text) !important;
  --mono: var(--xa-type-mono) !important;
}

html[data-xa-custom-type] :is(body, .xa-unified-site-header, .xa-swap-app,
  .xa-token-explorer-startup, .xa-token-explorer-startup-brand,
  .xa-transaction-notice, .xa-development-ticker),
html[data-xa-custom-type] :is([style*="Hanken Grotesk"], [style*="Newsreader"], [style*="Space Grotesk"], [style*="XLM ARMY Text"]):not([data-xa-publication-art], [data-xa-publication-art] *, [data-xa-reader-preference], [data-xa-reader-preference] *) {
  font-family: var(--xa-type-text) !important;
}

html[data-xa-custom-type] :is([style*="IBM Plex Mono"], [style*="JetBrains Mono"], [style*="XLM ARMY Mono"], code, pre, kbd, samp):not([data-xa-publication-art], [data-xa-publication-art] *, [data-xa-reader-preference], [data-xa-reader-preference] *) {
  font-family: var(--xa-type-mono) !important;
  font-variant-numeric: tabular-nums;
  font-feature-settings: 'zero' 1;
}

html[data-xa-custom-type] :is(button, input, select, textarea) {
  font-family: inherit;
}

/* Plex has its own rhythm: restrained controls, clear hierarchy, aligned values. */
html[data-xa-custom-type="plex-1.1.0"] :is(.xa-unified-site-header .research-nav-btn, .wallet-connect-btn) {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .015em;
}
html[data-xa-custom-type="plex-1.1.0"] .xlmarmy-nav-dropdown-item strong {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
}
html[data-xa-custom-type="plex-1.1.0"] .xlmarmy-nav-dropdown-item small {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}
html[data-xa-custom-type="plex-1.1.0"] :is(.wallet-connect-panel h2, .xa-swap-ticket-header h2, .xa-swap-heading h1) {
  font-weight: 600;
  letter-spacing: -.02em;
}
html[data-xa-custom-type="plex-1.1.0"] :is(.wallet-connect-intro, .xa-swap-ticket-header p) {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.55;
}
html[data-xa-custom-type="plex-1.1.0"] :is(.xa-transaction-notice-eyebrow, .wallet-connect-eyebrow) {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .065em;
}
html[data-xa-custom-type="plex-1.1.0"] :is(.xa-swap-field-main input, .xa-swap-rate, td, dd, [data-xa-market-chart]) {
  font-variant-numeric: lining-nums tabular-nums;
}
html[data-xa-custom-type="plex-1.1.0"] :is(.xa-news-article-title, .xa-published-reader-title, .xa-essay-title) {
  font-weight: 600;
  letter-spacing: -.025em;
  line-height: 1.12;
}
html[data-xa-custom-type="plex-1.1.0"] :is(.xa-news-article-body, .xa-published-reader-body, .xa-essay-body) p {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0;
}
@media (max-width: 600px) {
  html[data-xa-custom-type="plex-1.1.0"] :is(.xa-news-article-body, .xa-published-reader-body, .xa-essay-body) p { font-size: 17px; line-height: 1.7; }
}
