/* shell.css — styles for app-shell elements added on top of the prototype system
   (staff gate, draft preview strip, footer newsletter, honeypot). */

.hp-field { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }

.preview-strip {
  position: sticky; top: 0; z-index: 300;
  background: #2A1A5E; color: var(--bg); text-align: center;
  font-size: 0.8125rem; letter-spacing: .06em; text-transform: uppercase;
  padding: 6px 12px;
}

.gate-form { display: flex; flex-direction: column; gap: var(--space-4, 16px); margin-top: var(--space-6, 24px); }
.gate-form input[type="password"] {
  padding: 14px 16px; border: 1px solid var(--sand, var(--sand)); border-radius: 10px;
  font: inherit; background: #fff; width: 100%;
}
.gate-form input[type="password"]:focus { outline: 2px solid var(--accent-line, #5C4E96); outline-offset: 1px; }
.gate-error { color: #8C2E3C; background: #F7E4E7; border-radius: 8px; padding: 10px 14px; margin-top: var(--space-4, 16px); }
.gate-help { color: var(--muted, #6A6480); font-size: 0.875rem; margin-top: var(--space-4, 16px); }

.footer-news { margin-top: var(--space-6, 24px); max-width: min(22rem, 100%); }
.footer-news label { display: block; font-size: 0.75rem; text-transform: uppercase; letter-spacing: .08em; opacity: .7; margin-bottom: 6px; }
.footer-news__row { display: flex; gap: 8px; }
.footer-news__row input[type="email"] {
  flex: 1; min-width: 0; padding: 10px 12px; border-radius: 8px; border: 1px solid rgba(255,255,255,.25);
  background: rgba(255,255,255,.08); color: inherit; font: inherit;
}
.footer-news__row input[type="email"]::placeholder { color: rgba(244,242,250,.5); }
.footer-news__ok { font-size: 0.8125rem; color: #CBD9A8; margin-top: 8px; }

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
