/* Shared type foundations. Load after the page skin; do not override its composition. */
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('./assets/fonts/NotoSans-central-asian.woff2') format('woff2');
  unicode-range: U+0304, U+0306, U+0406, U+040E, U+0418-0419, U+0423, U+0438-0439, U+0443, U+0456, U+045E, U+0492-0493, U+049A-049B, U+04A2-04A3, U+04AE-04B3, U+04B6-04B7, U+04BA-04BB, U+04D8-04D9, U+04E2-04E3, U+04E8-04E9, U+04EE-04EF;
}
@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('./assets/fonts/NotoSans-azerbaijani.woff2') format('woff2');
  unicode-range: U+018F, U+0259;
}
@font-face {
  font-family: 'Noto Sans Armenian';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('./assets/fonts/NotoSansArmenian-armenian.woff2') format('woff2');
  unicode-range: U+0308, U+0530-058F, U+2010, U+2024, U+25CC, U+FB13-FB17;
}
@font-face {
  font-family: 'Noto Sans Georgian';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 100%;
  font-display: swap;
  src: url('./assets/fonts/NotoSansGeorgian-georgian.woff2') format('woff2');
  unicode-range: U+0589, U+10A0-10FF, U+1C90-1CBA, U+1CBD-1CBF, U+205A, U+2D00-2D2F, U+2E31;
}

:root {
  --interface-font: 'Manrope', 'Noto Sans', 'Noto Sans Armenian', 'Noto Sans Georgian', 'Noto Sans Math', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --type-display-size: clamp(4rem, 6.6vw, 6rem);
  --type-display-leading: 1.06;
  --type-display-tracking: -.045em;
  --type-section-size: clamp(2.25rem, 4vw, 3.5rem);
  --type-section-leading: 1.12;
  --type-section-tracking: -.03em;
  --type-panel-size: clamp(1.5rem, 2vw, 1.75rem);
  --type-panel-leading: 1.25;
  --type-panel-tracking: -.02em;
  --type-body-size: 1rem;
  --type-body-leading: 1.6;
  --type-control-size: .9375rem;
  --type-label-size: .875rem;
  --type-caption-size: .75rem;
  --type-balance-size: clamp(3rem, 4.5vw, 4rem);
  --type-balance-leading: 1.12;
  --type-balance-tracking: -.035em;
  --control-min-height: 2.75rem;
}

html:lang(ka) {
  --interface-font: 'Noto Sans Georgian', 'Manrope', 'Noto Sans', 'Noto Sans Armenian', 'Noto Sans Math', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
html:lang(hy) {
  --interface-font: 'Noto Sans Armenian', 'Manrope', 'Noto Sans', 'Noto Sans Georgian', 'Noto Sans Math', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

body, button, input, select, textarea {
  font-family: var(--interface-font);
}
body {
  font-size: var(--type-body-size);
  line-height: var(--type-body-leading);
}

/* Preserve deliberate large calculator inputs while keeping ordinary fields readable. */
.velar-studio :is(input:not([type='range']):not([type='checkbox']):not([type='radio']), select, textarea),
.lab-cabinet :is(input:not([type='range']):not([type='checkbox']):not([type='radio']), select, textarea) {
  font-size: 1rem;
  line-height: 1.5;
  min-height: var(--control-min-height);
}

.preview-balance,
.preview-bottom strong,
.balance-value,
.metric-value,
.coin-balance,
.income-total,
.market-quote strong,
.market-change strong,
.ohlc-readout strong,
.investment-metrics strong,
.strategy-numbers dd,
.calculator-result > output,
.result-line strong,
.ledger-table,
.position-capital,
.position-income,
.hold-date strong,
.hold-remaining strong,
.chart-inspector strong,
.chart-axis,
.chart-xlabels {
  font-variant-numeric: lining-nums tabular-nums;
}

@media (max-width: 700px) {
  :root {
    --type-display-size: clamp(2.75rem, 11.5vw, 4rem);
    --type-display-leading: 1.08;
    --type-display-tracking: -.035em;
    --type-section-size: clamp(2rem, 8vw, 2.5rem);
    --type-section-leading: 1.16;
    --type-panel-size: clamp(1.375rem, 6vw, 1.625rem);
    --type-panel-leading: 1.28;
    --type-balance-size: clamp(2.25rem, 9vw, 2.75rem);
    --type-balance-leading: 1.18;
  }
}

/* Complex scripts need natural spacing and enough room for ascenders and descenders. */
html:lang(ka), html:lang(hy) {
  --type-display-tracking: 0;
  --type-section-tracking: 0;
  --type-panel-tracking: 0;
  --type-display-leading: 1.2;
  --type-section-leading: 1.2;
  --type-panel-leading: 1.3;
  --type-body-leading: 1.65;
}
html:is(:lang(ka), :lang(hy)) :is(.velar-studio, .lab-cabinet) :is(h1, h2, h3) {
  letter-spacing: 0;
  line-height: 1.2;
}
html:is(:lang(ka), :lang(hy)) :is(.velar-studio, .lab-cabinet) :is(h1, h2, h3) :is(em, span) {
  letter-spacing: 0;
}
html:is(:lang(ka), :lang(hy)) :is(.eyebrow, .hero-kicker, .card-type, .sidebar-label) {
  letter-spacing: 0;
  text-transform: none;
  line-height: 1.6;
}

/* Верхняя навигация /epochs: ссылки были 22px по высоте — единственный промах 2.5.8
   на странице. 44px по короткой стороне закрывает и AA, и AAA-ориентир волны. */
.topbar-nav a{min-height:44px;display:inline-flex;align-items:center}
