/* Back-in-stock waiting list box (product page). Uses the shop's theme colours. */
.wl-box { margin: 1rem 0 1.25rem; padding: 1rem 1.1rem 1.1rem; background: var(--c-bg-alt); border: 1px solid var(--c-border); border-left: 4px solid var(--c-gold-deep); border-radius: 10px; }
.wl-box[hidden] { display: none; }
.wl-title { margin: 0 0 .35rem; font-size: 1.1rem; line-height: 1.3; }
.wl-text { margin: 0 0 .85rem; color: var(--c-muted); font-size: .94rem; line-height: 1.5; }
.wl-form { display: grid; gap: .7rem; }
.wl-field { display: grid; gap: .25rem; }
.wl-field label { font-size: .85rem; font-weight: 600; }
.wl-field input, .wl-field select { width: 100%; min-height: 44px; padding: .5rem .75rem; font: inherit; color: var(--c-text); background: #fff; border: 1px solid var(--c-border); border-radius: 8px; }
.wl-field input:focus-visible, .wl-field select:focus-visible { outline: 2px solid var(--c-gold-deep); outline-offset: 1px; }
/* scoped to the waiting-list form: the same class name is also used by the product-page "Add to wishlist" link */
.wl-form .wl-btn { width: 100%; min-height: 46px; justify-content: center; }
.wl-form .wl-btn[disabled] { opacity: .65; cursor: wait; }
.wl-trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.wl-msg { margin: 0; padding: .6rem .75rem; border-radius: 8px; font-size: .92rem; line-height: 1.45; }
.wl-msg.is-ok { background: #e8f6ec; color: #17602d; border: 1px solid #bfe3c9; }
.wl-msg.is-err { background: #fdecea; color: #9b1c14; border: 1px solid #f3c2bd; }
.wl-fine { margin: .6rem 0 0; font-size: .8rem; color: var(--c-muted); }
.wl-box.is-done .wl-form > :not(.wl-msg), .wl-box.is-done .wl-text, .wl-box.is-done .wl-fine { display: none; }
