.temporary-header, .temporary-footer { padding: 24px clamp(20px, 5vw, 80px); }
.temporary-header { position: sticky; top: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; gap: 24px; background: #FDFAEB; border-bottom: 1px solid var(--color-border-light); }
.temporary-logo { display: block; flex-shrink: 0; width: 180px; text-decoration: none; }
.temporary-logo img { display: block; width: 100%; height: auto; }
.temporary-actions { display: flex; align-items: center; gap: 24px; }
.temporary-actions select { font: 14px var(--font-mono); padding: 8px; color: var(--color-green-dark); background: transparent; border: 1px solid var(--color-border-light); }
.temporary-profile { display: flex; flex-direction: column; align-items: center; gap: 3px; color: var(--color-green-muted); background: none; border: 0; font: 11px var(--font-sans); cursor: not-allowed; }
.temporary-profile svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.temporary-footer { margin-top: 40px; background: var(--color-footer-bg); border-top: 1px solid var(--color-border); }
.temporary-footer-top { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.temporary-copyright { margin-top: 32px; padding-top: 20px; border-top: 1px solid var(--color-border); color: var(--color-green-muted); font: 12px/1.6 var(--font-mono); }
.public-signup { max-width: 1120px; margin: 48px auto; padding: 0 24px; }
.public-signup h1 { color: var(--color-text-light); font: 500 clamp(32px, 4vw, 48px)/1.3 var(--font-serif); }
.signup-intro { max-width: 448px; margin-top: 20px; color: var(--color-text-muted); line-height: 1.7; }
.public-signup .cta-checkbox-row { display: grid; grid-template-columns: 20px 1fr; align-items: start; }
.public-signup .cta-checkbox-row label, .public-signup .cta-status { font: 14px/1.6 var(--font-sans); }
.public-signup .cta-checkbox-row a { color: inherit; text-decoration: underline; }
.public-signup .cta-checkbox-row input { margin-top: 4px; }
.public-signup [data-turnstile-widget] { align-self: center; min-height: 65px; }
.public-signup .cta-form input:focus-visible, .temporary-header a:focus-visible, .temporary-header select:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 3px; }
.public-signup [data-signup-submit]:disabled { opacity: .6; cursor: not-allowed; }
@media (max-width: 600px) {
  .temporary-header { gap: 12px; padding: 18px 16px; }
  .temporary-header .temporary-logo { width: 130px; }
  .temporary-actions { gap: 10px; }
  .temporary-actions .btn { padding: 10px 12px; font-size: 12px; }
  .temporary-profile { font-size: 9px; }
  .public-signup { margin: 24px auto; padding: 0 16px; }
  .public-signup .cta-stripe { padding: 40px 16px; }
}

.temporary-forecast-return { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; text-transform: none; letter-spacing: 0; font-weight: 700; }
.privacy-page > .temporary-forecast-return:first-child { margin-bottom: 28px; }
.privacy-page > .temporary-forecast-return:last-child { margin-top: 32px; }
.temporary-forecast-return:focus-visible { outline: 3px solid var(--color-accent); outline-offset: 4px; }

/* Use the existing button accent for a clear, consistent success state. */
.forecast-signup .cta-status[data-state="success"],
.public-signup .cta-status[data-state="success"] {
  color: var(--color-accent);
  font-weight: 700;
}

@media (max-width: 400px) {
  .temporary-header .temporary-logo { width: 100px; }
  .temporary-actions { gap: 8px; }
  .temporary-actions .btn { white-space: nowrap; padding-inline: 8px; }
}
