/* «הרשמה לעדכונים» (app/newsletter.js): the footer's sign-up zone. Its own
   file, so nothing here touches the footer a shop without the form draws.
   The footer's colours (theme.css «FOOTER»): cream text on the brand colour;
   the fields are light, the button is the cream pill with the brand ink. */

/* The compact footer: a row under the three zones, centred, the fields side
   by side on a computer and stacked on a phone. */
.footer-zone-news{grid-column:1/-1; width:100%; max-width:46rem; justify-self:center; align-items:stretch; text-align:start;
  padding-top:18px; border-top:1px solid rgba(251,246,236,0.18);}
.footer-news-title{text-align:center;}
.footer-news-form{display:grid; gap:10px;}
.footer-news-form[hidden]{display:none;}
.footer-news-fields{display:grid; gap:10px; grid-template-columns:repeat(auto-fit, minmax(min(100%, 11rem), 1fr));}
.footer-news-field{display:flex; flex-direction:column; gap:4px; min-width:0;}
.footer-news-label{font-size:0.8125rem; font-weight:600; color:rgba(251,246,236,0.92);}
.footer-news-input{width:100%; min-height:44px; box-sizing:border-box; padding:0 12px; font:inherit; font-size:1rem;
  color:var(--ink, #1F2A24); background:#FBF6EC; border:1px solid rgba(251,246,236,0.6); border-radius:var(--r-control, 10px);}
.footer-news-input[dir="ltr"]{text-align:start;}
.footer-news-input[dir="ltr"]::placeholder{text-align:right;}
.footer-news-consent-row{display:flex; flex-wrap:wrap; align-items:center; gap:4px 14px;}
.footer-news-consent{display:inline-flex; align-items:center; gap:10px; min-height:44px; cursor:pointer;
  font-size:0.875rem; color:rgba(251,246,236,0.92);}
.footer-news-consent input{width:22px; height:22px; flex:none; margin:0; accent-color:#FBF6EC;}
.footer-news-privacy{display:inline-flex; align-items:center; min-height:44px; font-size:0.8125rem;
  color:rgba(251,246,236,0.85); text-decoration:underline; text-underline-offset:3px;}
.footer-news-privacy:hover{color:#fff;}
.footer-news-error{margin:0; padding:8px 12px; border-radius:var(--r-control, 10px); font-size:0.875rem; font-weight:600;
  color:var(--danger, #B42318); background:#FBF6EC;}
.footer-news-error[hidden]{display:none;}
.footer-news-btn{justify-self:start; min-height:44px; min-width:8rem; padding:0 22px; border:0; cursor:pointer;
  border-radius:var(--r-chip, 999px); font:inherit; font-size:1rem; font-weight:700;
  color:var(--primary, #1F4D3A); background:#FBF6EC;}
.footer-news-btn:hover{background:#fff;}
.footer-news-btn:disabled{cursor:wait; color:var(--ink, #1F2A24);}
.footer-news-done{margin:0; text-align:center; font-size:1.0625rem; font-weight:700; color:#fff;}
.footer-news-done[hidden]{display:none;}
/* The honeypot: out of sight and out of reach, but still in the form. */
.footer-news-hp{position:absolute; inset-inline-start:-10000px; width:1px; height:1px; opacity:0; pointer-events:none;}
.footer-zone-news :is(input, button, a):focus-visible{outline:3px solid #FBF6EC; outline-offset:2px;}

/* «תחתית מלאה»: a column of its own at the end, the fields stacked. */
html[data-layout-footer="full"] .footer-zones:has(.footer-zone-news){grid-template-columns:minmax(0, 1.2fr) repeat(3, minmax(0, 1fr)) minmax(0, 1.5fr);}
html[data-layout-footer="full"] .footer-zone-news{grid-column:-2; grid-row:1 / span 2; max-width:none; justify-self:stretch;
  padding-top:0; border-top:0;}
html[data-layout-footer="full"] .footer-news-title{text-align:start;}
html[data-layout-footer="full"] .footer-news-fields{grid-template-columns:1fr;}
html[data-layout-footer="full"] .footer-news-btn{justify-self:stretch;}
html[data-layout-footer="full"] .footer-news-done{text-align:start;}

@media (max-width:768px){
  .footer-news-fields{grid-template-columns:1fr;}
  .footer-news-btn{justify-self:stretch;}
  html[data-layout-footer="full"] .footer-zone-news{grid-column:1 / -1; grid-row:auto;}
}

/* High contrast (the accessibility menu): the footer turns black and white. */
html[data-a11y-contrast="1"] .footer-zone-news :is(.footer-news-input, .footer-news-btn, .footer-news-error){
  background:#000000 !important; color:#ffffff !important; border:2px solid #ffffff !important;}

/* The phone's light footer (app/home.css, html[data-home-footer="light"]):
   the page's own ground, so the form takes the page's ink. */
@media (max-width:640px){
  html[data-home-footer="light"]:not([data-a11y-contrast="1"]) #siteFooter:not([data-part-ground]) .footer-zone-news{border-top-color:var(--line, rgba(0,0,0,.14));}
  html[data-home-footer="light"]:not([data-a11y-contrast="1"]) #siteFooter:not([data-part-ground]) .footer-zone-news :is(.footer-news-label, .footer-news-consent){color:var(--ink, #1F2A24);}
  html[data-home-footer="light"]:not([data-a11y-contrast="1"]) #siteFooter:not([data-part-ground]) .footer-news-privacy{color:var(--ink-soft, #4A564E);}
  html[data-home-footer="light"]:not([data-a11y-contrast="1"]) #siteFooter:not([data-part-ground]) .footer-news-input{background:var(--surface, #fff); border-color:var(--line, rgba(0,0,0,.18));}
  html[data-home-footer="light"]:not([data-a11y-contrast="1"]) #siteFooter:not([data-part-ground]) .footer-news-consent input{accent-color:var(--primary, #1F4D3A);}
  html[data-home-footer="light"]:not([data-a11y-contrast="1"]) #siteFooter:not([data-part-ground]) .footer-news-btn{background:var(--primary, #1F4D3A); color:var(--on-primary, #fff);}
  html[data-home-footer="light"]:not([data-a11y-contrast="1"]) #siteFooter:not([data-part-ground]) .footer-news-done{color:var(--primary, #1F4D3A);}
  html[data-home-footer="light"]:not([data-a11y-contrast="1"]) #siteFooter:not([data-part-ground]) .footer-zone-news :is(input, button, a):focus-visible{outline-color:var(--focus-ring, #0B5FFF);}
}
