/* Shared type and spacing tokens for the public site, workspace and native UI. */
:root {
  --type-body: 1rem;
  --type-small: .875rem;
  --type-label: 1rem;
  --type-page-title: clamp(1.75rem, 2.7vw, 2.25rem);
  --type-hero: clamp(2rem, 3.8vw, 3rem);
  --type-section: clamp(1.5rem, 2.3vw, 1.875rem);
  --line-body: 1.7;
  --line-heading: 1.35;
  --tracking-heading: -.02em;
  --space-section: clamp(2rem, 4vw, 3.5rem);
  --radius-card: 1rem;
  --radius-control: .75rem;
}
:lang(ar), :lang(th), :lang(ka), :lang(ja), :lang(zh), :lang(ko) {
  --tracking-heading: 0;
  --line-heading: 1.5;
}
:lang(ar), :lang(th) { --line-body: 1.8; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { font-size: var(--type-body); line-height: var(--line-body); }
:where(h1, h2, h3, h4) {
  font-weight: 700;
  line-height: var(--line-heading);
  letter-spacing: var(--tracking-heading);
  overflow-wrap: break-word;
  text-wrap: balance;
}
:where(p, li, label, summary) { overflow-wrap: break-word; }
:where(button, input, textarea, select) { font: inherit; }
:where(button, [role="button"], summary) { touch-action: manipulation; }
:where(button, [role="button"]) { white-space: normal; }
:where(button, a) > svg { flex-shrink: 0; }
:where(input, select, textarea) { max-width: 100%; }
:lang(ar) :where(h1,h2,h3,h4,button,label,summary) { letter-spacing: normal; }
:lang(ko) :where(h1,h2,h3) { word-break: keep-all; overflow-wrap: anywhere; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
