/* Phase 0 base — tokens + page shell only */
@import url("./tokens.css");

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: var(--color-background);
  color: var(--color-on-background);
  font-family: var(--font-sans);
  font-size: var(--text-body-md-size);
  line-height: var(--text-body-md-line);
  -webkit-font-smoothing: antialiased;
}

main {
  flex: 1;
}

.container {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--space-margin-mobile);
}

@media (min-width: 768px) {
  .container {
    padding-inline: var(--space-margin-desktop);
  }
}

.phase0-banner {
  margin: var(--space-stack-lg) auto;
  max-width: var(--container-max);
  padding: var(--space-stack-md);
  border: var(--border-width-strong) solid var(--color-primary-container);
  background: var(--color-surface-container-lowest);
}

.phase0-banner h1 {
  margin: 0 0 var(--space-stack-sm);
  font-size: var(--text-headline-lg-size);
  line-height: var(--text-headline-lg-line);
  font-weight: var(--text-headline-lg-weight);
}

.phase0-banner p {
  margin: 0;
  color: var(--color-on-surface-variant);
}
