/* Public product site (tools/web/publish.mjs): layout only, every value comes from foundry-ui tokens. */
.site { display: flex; flex-direction: column; min-block-size: 100dvh; }
.site a:not(.fd-btn) { color: var(--fd-primary-text); }

.site__bar {
  display: flex; align-items: center; justify-content: space-between; gap: var(--fd-space-4);
  padding-block: var(--fd-space-3); padding-inline: var(--fd-space-6);
  border-block-end: var(--fd-border-width) solid var(--fd-border); background: var(--fd-surface);
}
.site__bar .fd-brand { text-decoration: none; }
.site__nav { display: flex; flex-wrap: wrap; align-items: center; gap: var(--fd-space-4); }
.site .site__nav a { color: var(--fd-text-muted); text-decoration: none; font-weight: var(--fd-weight-medium); }
.site .site__nav a:hover { color: var(--fd-text); }

.site__main { flex: 1; inline-size: 100%; max-inline-size: 72rem; margin-inline: auto; padding-inline: var(--fd-space-4); }

.site__hero { padding-block: calc(var(--fd-space-6) * 2.5) var(--fd-space-6); text-align: center; }
.site__hero--small { padding-block: var(--fd-space-6) var(--fd-space-4); }
.site__hero h1 { margin: 0; font-family: var(--fd-font-display); font-size: calc(var(--fd-text-3xl) * 1.5); }
.site__hero p { margin-block: var(--fd-space-3); margin-inline: auto; max-inline-size: 44rem; color: var(--fd-text-muted); font-size: var(--fd-text-lg); }
.site__facts { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--fd-space-2); }
.site__facts span {
  padding-block: var(--fd-space-1); padding-inline: var(--fd-space-3); border-radius: var(--fd-radius-chip);
  background: var(--fd-primary-subtle); color: var(--fd-on-primary-subtle); font-size: var(--fd-text-sm);
}

.site__section { padding-block: var(--fd-space-6); }
.site__section h2 { display: flex; align-items: center; gap: var(--fd-space-2); font-size: var(--fd-text-2xl); }
.site__grid { display: grid; gap: var(--fd-space-4); grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr)); }
.site__engines { display: grid; gap: var(--fd-space-3); }
.site__engine { display: flex; flex-wrap: wrap; align-items: center; gap: var(--fd-space-2); }
.site__engine .fd-badge { margin-inline-end: auto; }

.site__log {
  margin: 0; padding: var(--fd-space-4); overflow-x: auto; white-space: pre-wrap;
  border: var(--fd-border-width) solid var(--fd-border); border-radius: var(--fd-radius-surface);
  background: var(--fd-surface-sunken); font-family: var(--fd-font-mono); font-size: var(--fd-text-xs);
}

.site__footer {
  padding: var(--fd-space-6) var(--fd-space-4); text-align: center; color: var(--fd-text-subtle);
  border-block-start: var(--fd-border-width) solid var(--fd-border); font-size: var(--fd-text-xs);
}
