/* Public pages share the product's type, spacing and readable line lengths. */
@font-face { font-family: Outfit; src: url('/fonts/Outfit-Latin.woff2') format('woff2'); font-style: normal; font-weight: 100 900; font-display: swap; }
:root { color-scheme: light dark; }
body { margin: 0; padding: 32px 20px 56px; background: #EBEAE4; color: #0A0A0A;
  font: 16px/1.6 Outfit, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
@media (prefers-color-scheme: dark) { body { background: #0A0A0A; color: #EBEAE4; } a { color: #FF8A55; } }
main { max-width: 680px; margin: 0 auto; }
header { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
header img { width: 48px; height: 48px; border-radius: 12px; }
header strong { font-size: 1.15rem; }
h1 { font-size: clamp(1.625rem, 4vw, 2rem); font-weight: 600; letter-spacing: -.035em; line-height: 1.2; margin: 0 0 12px; text-wrap: balance; }
h2 { font-size: 1.125rem; font-weight: 600; margin: 28px 0 8px; }
a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
a { color: #9A3412; font-weight: 600; }
li { margin: 6px 0; }
.note { opacity: 0.75; font-size: 0.95rem; }
.draft { background: #FFD11A; color: #0A0A0A; border-radius: 12px; padding: 10px 14px; font-weight: 600; }
table { width: 100%; border-collapse: collapse; font-size: 0.95rem; margin: 8px 0; }
th, td { text-align: left; vertical-align: top; padding: 8px 10px; border-bottom: 1px solid #DAD8D0; }
@media (prefers-color-scheme: dark) { th, td { border-color: #2A2A28; } }
@media (max-width: 560px) { table { display: block; overflow-x: auto; } }
