* { box-sizing: border-box; }
html { background: #32144c; color-scheme: light; }
body { margin: 0; padding: 3px; font: 15px/1.5 Arial, Helvetica, sans-serif; color: #fffaf2; background: transparent; }
form { margin: 0; }
.email-label { display: block; margin-bottom: 8px; font-weight: 600; }
.newsletter-input-row { display: flex; gap: 9px; }
input[type="email"] { flex: 1; min-width: 0; width: 100%; min-height: 50px; padding: 12px 13px; border: 1px solid #cbb3df; border-radius: 10px; background: #fffaf2; color: #32144c; font: inherit; font-size: 16px; }
input::placeholder { color: #725d81; opacity: 1; }
button { flex: 0 0 auto; display: inline-flex; gap: 12px; justify-content: center; align-items: center; min-height: 50px; padding: 12px 17px; border: 1px solid #dfff53; border-radius: 10px; background: #dfff53; color: #32144c; box-shadow: 0 0 14px #dfff5329; font: inherit; font-weight: 600; cursor: pointer; touch-action: manipulation; }
button:hover:not(:disabled) { background: #eaff8a; }
button:disabled { cursor: wait; opacity: .65; }
input:focus-visible, button:focus-visible, a:focus-visible { outline: 2px solid #dfff53; outline-offset: 2px; }
.newsletter-consent { display: flex; align-items: flex-start; gap: 10px; margin-top: 16px; cursor: pointer; font-size: 13px; line-height: 1.55; }
input[type="checkbox"] { flex: 0 0 19px; width: 19px; height: 19px; margin: 1px 0 0; accent-color: #dfff53; }
.newsletter-privacy { margin: 13px 0 0; color: #eadef4; font-size: 12px; }
a { color: #dfff53; text-underline-offset: 3px; }
#newsletter-status { min-height: 21px; margin: 12px 0 0; font-size: 13px; line-height: 1.5; }
#newsletter-status[data-state="error"] { color: #ffb7c4; }
#newsletter-status[data-state="success"] { color: #dfff53; font-weight: 600; }
.newsletter-trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width: 420px) {
  .newsletter-input-row { flex-direction: column; }
  button { width: 100%; }
}
