/**
 * TTDS Layer 2 — Base reset & layout (scoped to .tt-premium)
 */

body.tt-premium {
  font-family: var(--tt-font-sans);
  font-size: 1rem;
  line-height: 1.55;
  color: var(--tt-obsidian);
  background: var(--tt-canvas);
  letter-spacing: -0.011em;
  -webkit-font-smoothing: antialiased;
}

body.tt-premium--rtl {
  font-family: var(--tt-font-ar);
  letter-spacing: 0;
}

body.tt-premium .tt-icon {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}

body.tt-premium .tt-container {
  width: min(var(--tt-container), 100% - var(--tt-space-8));
  margin-inline: auto;
}

body.tt-premium .tt-container--prose {
  width: min(var(--tt-prose), 100% - var(--tt-space-8));
  margin-inline: auto;
}

body.tt-premium .tt-section {
  padding-block: var(--tt-section-md);
}

body.tt-premium .tt-section--subtle {
  background: var(--tt-canvas-subtle);
}

body.tt-premium :focus-visible {
  outline: 2px solid var(--tt-signal-ring);
  outline-offset: 2px;
}

body.tt-premium .tt-skip-link {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 9999;
  padding: var(--tt-space-3) var(--tt-space-4);
  background: var(--tt-obsidian);
  color: var(--tt-canvas);
}

body.tt-premium .tt-skip-link:focus {
  left: var(--tt-space-4);
  top: var(--tt-space-4);
}

@media (max-width: 768px) {
  body.tt-premium {
    --tt-header-h: var(--tt-header-h-m);
  }
}
