/* Scoped long-form styles. Existing TGD surfaces retain their styles. */
.ma-public, .ma-preview {
  --ma-bg:#0a0b0d; --ma-surface:#13161b; --ma-text:#e8eaed; --ma-muted:#a3adbc;
  --ma-line:#303641; --ma-accent:#f5ad32; --ma-ink:#0a0b0d;
  --ma-xs:.75rem; --ma-sm:.875rem; --ma-base:1rem; --ma-lg:1.125rem;
  color:var(--ma-text); background:var(--ma-bg); font:var(--ma-base)/1.65 Inter, sans-serif;
}
html[data-theme="light"] .ma-public, html[data-theme="light"] .ma-preview {
  --ma-bg:#f6f4ee; --ma-surface:#fffdf8; --ma-text:#222831; --ma-muted:#555e6a;
  --ma-line:#d2d0c7; --ma-accent:#855200; --ma-ink:#fff;
}
.ma-public { margin:0; }
.ma-public *, .ma-preview * { box-sizing:border-box; }
.ma-public a, .ma-preview a { color:var(--ma-accent); text-underline-offset:.2em; overflow-wrap:anywhere; }
.ma-public button, .ma-public input, .ma-public select { font:inherit; }
.ma-public :focus-visible, .ma-preview :focus-visible { outline:2px solid var(--ma-accent); outline-offset:4px; }
.ma-site-header { display:flex; align-items:center; justify-content:space-between; gap:1.5rem; padding:1.25rem max(1.5rem,calc((100% - 1200px)/2)); border-bottom:1px solid var(--ma-line); }
.ma-brand { display:flex; align-items:center; gap:.75rem; text-decoration:none; font:600 1rem/1.3 'Space Grotesk',sans-serif; color:var(--ma-text)!important; }
.ma-brand svg { flex:none; }
.ma-brand small { display:block; font:400 .75rem/1.6 Inter,sans-serif; color:var(--ma-muted); }
.ma-site-header nav { display:flex; flex-wrap:wrap; gap:1.25rem; font-size:.875rem; }
.ma-site-header nav a { text-decoration:none; color:var(--ma-muted); }
.ma-site-header nav a[aria-current] { color:var(--ma-accent); }
.ma-public main { max-width:1160px; margin:auto; padding:0 1.5rem 4rem; }
.ma-archive-head { padding:5rem 0 3rem; max-width:800px; }
.ma-kicker { font:500 .75rem/1.8 'JetBrains Mono',monospace; letter-spacing:.12em; color:var(--ma-accent); }
.ma-kicker span { padding:0 .5rem; color:var(--ma-muted); }
.ma-archive-head h1 { font:600 clamp(2.5rem,5vw,4rem)/1.08 'Space Grotesk',sans-serif; letter-spacing:-.035em; margin:1rem 0 1.5rem; }
.ma-archive-head p { color:var(--ma-muted); font-size:1.125rem; max-width:60ch; }
.ma-cadence { display:block; margin-top:2rem; font:400 .75rem 'JetBrains Mono',monospace; color:var(--ma-muted); }
.ma-filters { display:flex; align-items:end; gap:1rem; padding:1.5rem 0; border-block:1px solid var(--ma-line); margin-bottom:1rem; flex-wrap:wrap; }
.ma-filters div:first-child { flex:1; min-width:220px; }
.ma-filters label { display:block; font-size:.75rem; margin-bottom:.5rem; color:var(--ma-muted); }
.ma-filters input, .ma-filters select { background:var(--ma-surface); color:var(--ma-text); border:1px solid var(--ma-line); border-radius:4px; min-height:44px; padding:.6rem .75rem; width:100%; }
.ma-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:.65rem 1rem; border:1px solid var(--ma-accent); border-radius:4px; background:var(--ma-accent); color:var(--ma-ink); cursor:pointer; font:600 .875rem Inter,sans-serif; text-decoration:none; }
.ma-button:hover { filter:brightness(1.1); }
.ma-button.ma-quiet { color:var(--ma-text); border-color:var(--ma-line); background:transparent; }
.ma-button:disabled { opacity:.4; cursor:not-allowed; }
.ma-results-note { font:.75rem 'JetBrains Mono',monospace; color:var(--ma-muted); padding:1rem 0; }
.ma-archive-card { display:grid; grid-template-columns:145px 1fr; gap:2.5rem; padding:2.75rem 0; border-bottom:1px solid var(--ma-line); }
.ma-edition { font:500 .875rem 'JetBrains Mono',monospace; color:var(--ma-accent); padding-top:.5rem; }
.ma-edition span { display:block; color:var(--ma-muted); font-size:.75rem; margin-top:.75rem; }
.ma-archive-card h2 { margin:0 0 1rem; max-width:32ch; font:600 clamp(1.5rem,2.5vw,2rem)/1.25 'Space Grotesk',sans-serif; letter-spacing:-.025em; }
.ma-archive-card h2 a { color:var(--ma-text); text-decoration:none; }
.ma-archive-card h2 a:hover { color:var(--ma-accent); }
.ma-archive-card p { color:var(--ma-muted); max-width:75ch; margin:0 0 1rem; }
.ma-meta { display:flex; flex-wrap:wrap; gap:.5rem 1.5rem; font-size:.75rem; color:var(--ma-muted); }
.ma-read-link { display:inline-block; padding-top:1.5rem; font-size:.875rem; }
.ma-pages { display:flex; justify-content:center; align-items:center; gap:1.5rem; padding-top:2rem; }
.ma-state { padding:4rem 1rem; color:var(--ma-muted); max-width:65ch; }
.ma-state h2 { font:500 1.5rem 'Space Grotesk',sans-serif; color:var(--ma-text); }
.ma-state p { margin:1rem 0 1.5rem; }
.ma-reader-tools { display:flex; justify-content:space-between; align-items:center; padding:1.5rem 0; font-size:.875rem; }
.ma-article { max-width:790px; margin:0 auto; padding-bottom:3rem; overflow-wrap:anywhere; }
.ma-article-head { padding:3rem 0 2rem; border-bottom:1px solid var(--ma-line); }
.ma-article-head h1 { font:600 clamp(2rem,4.2vw,3.35rem)/1.12 'Space Grotesk',sans-serif; letter-spacing:-.03em; margin:1rem 0 1.5rem; }
.ma-subtitle { color:var(--ma-muted); font-size:1.125rem; line-height:1.65; margin:0 0 1.5rem; }
.ma-confidence { display:flex; flex-wrap:wrap; gap:.5rem 1rem; color:var(--ma-muted); font-size:.75rem; padding-top:1.25rem; }
.ma-confidence strong { color:var(--ma-accent); }
.ma-bluf { margin:2.5rem 0; padding:1.5rem 1.75rem; background:var(--ma-surface); border:1px solid var(--ma-line); border-radius:4px; }
.ma-bluf h2 { margin:0 0 1rem; color:var(--ma-accent); font:500 .75rem 'JetBrains Mono',monospace; text-transform:uppercase; letter-spacing:.12em; }
.ma-section { margin-top:2.5rem; }
.ma-section>h2, .ma-prose h2 { font:600 clamp(1.4rem,2.5vw,1.85rem)/1.3 'Space Grotesk',sans-serif; letter-spacing:-.015em; color:var(--ma-text); margin:2.5rem 0 1.25rem; }
.ma-prose { font-size:1.0625rem; line-height:1.85; color:var(--ma-text); }
.ma-prose p { margin:0 0 1.4rem; }
.ma-prose h3,.ma-prose h4 { font:600 1.25rem/1.45 'Space Grotesk',sans-serif; margin:2rem 0 1rem; }
.ma-prose ul,.ma-prose ol { padding-left:1.4rem; margin:0 0 1.5rem; }
.ma-prose li { margin:.65rem 0; }
.ma-prose blockquote { margin:1.5rem 0; padding:1rem 1.5rem; background:var(--ma-surface); }
.ma-prose code { font:.875rem 'JetBrains Mono',monospace; }
.ma-prose pre { overflow-x:auto; padding:1rem; background:var(--ma-surface); }
.ma-prose hr { border:0; border-top:1px solid var(--ma-line); margin:2rem 0; }
.ma-table-scroll { overflow:auto; margin:1.5rem 0; }
.ma-prose table { border-collapse:collapse; width:100%; font-size:.875rem; min-width:520px; }
.ma-prose th,.ma-prose td { padding:.9rem; border:1px solid var(--ma-line); vertical-align:top; text-align:left; }
.ma-prose th { background:var(--ma-surface); }
.ma-notice { border:1px solid var(--ma-accent); color:var(--ma-accent); padding:1rem; margin:1rem 0; font:.75rem 'JetBrains Mono',monospace; }
.ma-article-footer { margin-top:3rem; padding-top:1.5rem; border-top:1px solid var(--ma-line); color:var(--ma-muted); font-size:.75rem; line-height:1.8; }
.ma-site-footer { max-width:1160px; padding:2rem 1.5rem; margin:auto; border-top:1px solid var(--ma-line); display:flex; flex-wrap:wrap; justify-content:space-between; gap:1rem; color:var(--ma-muted); font-size:.75rem; }
.ma-skip { position:absolute; top:-100px; left:1rem; background:var(--ma-bg); padding:1rem; z-index:99; }
.ma-skip:focus { top:0; }
[hidden] { display:none!important; }
@media(max-width:760px) {
  .ma-site-header { flex-wrap:wrap; padding:1rem; gap:1rem; }
  .ma-site-header nav { order:3; width:100%; gap:1rem; font-size:.75rem; }
  .ma-public main { padding-inline:1rem; }
  .ma-archive-head { padding-top:3rem; }
  .ma-archive-card { grid-template-columns:1fr; gap:1rem; padding:2rem 0; }
  .ma-edition span { display:inline; margin-left:1rem; }
  .ma-article-head { padding-top:1.5rem; }
  .ma-bluf { padding:1.25rem; }
  .ma-filters>div { flex:1; min-width:130px; }
  .ma-prose { font-size:1rem; }
}
@media print {
  .ma-site-header,.ma-site-footer,.ma-reader-tools,.ma-notice { display:none; }
  .ma-public,.ma-preview { --ma-bg:white; --ma-text:black; --ma-muted:#444; --ma-line:#aaa; --ma-accent:#333; --ma-surface:#f4f4f4; }
  .ma-article { max-width:none; }
  .ma-prose table { min-width:0; }
}
@media(max-width:500px) {
  .ma-brand { font-size:.875rem; }
  .ma-brand small { display:none; }
  #ma-theme { padding:.6rem .75rem; font-size:.75rem; }
}
