/* Shared across every app's pages. Edit once, all apps inherit.
   Warm paper palette, system fonts only — no external requests, so the
   pages load instantly and depend on nothing that can go down. */

:root {
  --bg: #FAF3EB;
  --card: #FFFDF9;
  --ink: #3F2E27;
  --sub: #7A6459;
  --faint: #A8968B;
  --accent: #C4644A;
  --line: #E8DACE;
}

@media (prefers-color-scheme: dark) {
  :root {
    --bg: #1C1512;
    --card: #262019;
    --ink: #F2E6DC;
    --sub: #B8A496;
    --faint: #8A7869;
    --accent: #D97D60;
    --line: #362C25;
  }
}

* { box-sizing: border-box; }

body {
  margin: 0;
  padding: 0 20px 72px;
  background: var(--bg);
  color: var(--ink);
  font: 17px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  -webkit-text-size-adjust: 100%;
}

main { max-width: 680px; margin: 0 auto; }

/* Site-wide nav. Identical on every page of every app — the one thing that
   makes a pile of subpaths read as one studio rather than orphan documents. */
.site-nav {
  max-width: 680px;
  margin: 0 auto;
  padding: 20px 0 0;
  display: flex;
  align-items: baseline;
  gap: 20px;
  font-size: 14px;
}

.site-nav .wordmark {
  font-weight: 700;
  color: var(--ink);
  text-decoration: none;
  margin-right: auto;
  letter-spacing: -0.2px;
}

.site-nav a { color: var(--sub); text-decoration: none; }
.site-nav a:hover { color: var(--accent); text-decoration: underline; }
.site-nav .wordmark:hover { color: var(--accent); }

header {
  padding: 28px 0 8px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 32px;
}

/* The eyebrow doubles as a breadcrumb up to the app's own hub page, so every
   legal page has a way back that isn't the browser button. */
header .app { font-size: 14px; font-weight: 700; color: var(--accent); letter-spacing: 1.2px; text-transform: uppercase; }
header .app a { color: inherit; text-decoration: none; }
header .app a:hover { text-decoration: underline; }

/* App-scoped links, shown above the studio footer on an app's pages. These
   are the ONLY per-app links on a page — the footer below stays studio level,
   so adding app #2 never means editing app #1's pages. */
.applinks {
  max-width: 680px;
  margin: 48px auto 0;
  padding-top: 20px;
  border-top: 1px solid var(--line);
  font-size: 14px;
}

.applinks a { color: var(--sub); text-decoration: none; margin-right: 16px; }
.applinks a:hover { text-decoration: underline; }
.applinks .here { color: var(--faint); margin-right: 16px; }

/* App cards on the studio home. */
.tile { display: block; text-decoration: none; color: inherit; }
.tile:hover { border-color: var(--accent); }
.tile h3 { margin: 0 0 4px; font-size: 19px; color: var(--ink); letter-spacing: -0.2px; }
.tile p { margin: 0; }
.tile .more { color: var(--accent); font-size: 14px; display: inline-block; margin-top: 10px; }

h1 { font-size: 34px; line-height: 1.2; margin: 10px 0 6px; letter-spacing: -0.5px; }
h2 { font-size: 21px; margin: 36px 0 10px; letter-spacing: -0.2px; }

p, li { color: var(--sub); }
li { margin-bottom: 8px; }

a { color: var(--accent); }

.updated { color: var(--faint); font-size: 14px; margin: 0; }

.card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 20px 24px;
  margin: 24px 0;
}

.card p:first-child { margin-top: 0; }
.card p:last-child { margin-bottom: 0; }

.lede { font-size: 19px; color: var(--ink); }

footer {
  max-width: 680px;
  margin: 56px auto 0;
  padding-top: 24px;
  border-top: 1px solid var(--line);
  color: var(--faint);
  font-size: 14px;
}

footer a { color: var(--sub); text-decoration: none; margin-right: 16px; }
footer a:hover { text-decoration: underline; }

footer .fine { color: var(--faint); font-size: 13px; margin: 12px 0 0; }

/* When an app-links row sits directly above the footer, the footer's own rule
   would draw a second hairline 20px under the first. */
.applinks + footer { border-top: 0; padding-top: 0; margin-top: 28px; }
