/* Follow block. Forge Terminal: hairline border, mono button, color kept to the
   accent. Tokens come from styles.css. */
.follow { padding: 3rem 1.25rem; border-top: 1px solid var(--border-hairline); }
.follow-inner { max-width: 40rem; margin: 0 auto; }
.follow h2 { margin: 0 0 0.5rem; font-size: 1.25rem; }
.follow-lead, .follow-note, .follow-alt { color: var(--muted-text); }
.follow a { color: var(--accent); }
.follow-form { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 1rem 0; }
.follow-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.follow-form input[type="email"] { flex: 1 1 16rem; min-width: 0; padding: 0.7rem 0.9rem; font: inherit; color: var(--text); background: transparent; border: 1px solid var(--border); border-radius: 4px; }
.follow-form input[type="email"]:focus-visible, .follow-button:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.follow-button { padding: 0.7rem 1.2rem; font: 500 0.9rem var(--font-mono); color: var(--accent); background: transparent; border: 1px solid var(--accent); border-radius: 4px; cursor: pointer; }
.follow-button:hover { background: var(--panel); }
.follow-button:disabled { opacity: 0.6; cursor: default; }
.follow-hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.follow-note { font-size: 0.85rem; margin: 0.5rem 0; }
.follow-alt { display: flex; flex-wrap: wrap; gap: 0.5rem 1.5rem; font-size: 0.9rem; margin: 0.5rem 0 0; }
/* The confirmation lines show only when the Worker redirects to their fragment, or when follow.js adds .is-shown. No script needed. */
/* The persistent live region is always rendered (visually hidden, not display:none) so screen readers announce what follow.js writes into it. */
.follow-live { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; margin: 0; }
.follow-status { display: none; margin: 0.5rem 0; }
.follow-status:target, .follow-status.is-shown { display: block; }
.follow-status-error:target, .follow-status-error.is-shown { color: var(--warning); }
@media (max-width: 520px) { .follow { padding: 2rem 1rem; } }
