body.has-preorder-modal{overflow:hidden}.preorder-modal[hidden]{display:none}.preorder-modal{z-index:1000;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.preorder-modal__backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);cursor:pointer;background:oklch(0% 0 0/.62);border:0;width:100%;height:100%;position:absolute;inset:0}.preorder-modal__dialog{background:var(--surface,#fff);border-radius:22px;width:min(480px,100%);max-height:calc(100vh - 40px);padding:32px;position:relative;overflow:auto;box-shadow:0 24px 80px oklch(0% 0 0/.28)}.preorder-modal__close{width:36px;height:36px;color:var(--muted,#64748b);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;font-size:28px;display:grid;position:absolute;top:12px;right:14px}.preorder-modal__close:hover{background:var(--accent-light,#fff1f2);color:var(--accent,#dc2626)}.preorder-modal__eyebrow{color:var(--accent,#dc2626);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700;display:block}.preorder-modal h2{font-family:var(--font-display,system-ui);color:var(--fg,#0f172a);margin-top:6px;font-size:26px}.preorder-modal__dialog>p{color:var(--muted,#64748b);margin-top:8px;font-size:14px;line-height:1.55}.preorder-modal__product{background:var(--accent-light,#fff1f2);color:var(--fg,#0f172a);border-radius:12px;margin:20px 0;padding:12px 14px;font-size:14px;font-weight:700}.preorder-modal form{gap:15px;display:grid}.preorder-modal label{color:var(--fg,#0f172a);gap:6px;font-size:13px;font-weight:600;display:grid}.preorder-modal input{border:1px solid var(--border,#e2e8f0);background:var(--surface,#fff);width:100%;color:var(--fg,#0f172a);font:inherit;border-radius:11px;outline:0;padding:12px 14px}.preorder-modal input:focus{border-color:var(--accent,#dc2626);box-shadow:0 0 0 3px var(--accent-light,#fff1f2)}.preorder-modal__submit{background:var(--accent,#dc2626);color:#fff;cursor:pointer;border:0;border-radius:11px;min-height:48px;font-weight:700}.preorder-modal__submit:hover{background:var(--accent-dark,#b91c1c)}.preorder-modal__submit:disabled{cursor:wait;opacity:.65}.preorder-modal__status{min-height:20px;color:var(--muted,#64748b);font-size:13px}.preorder-modal__status.is-success{color:oklch(48% .14 145)}.preorder-modal__status.is-error{color:oklch(50% .2 25)}@media (width<=520px){.preorder-modal{padding:10px}.preorder-modal__dialog{max-height:calc(100vh - 20px);padding:28px 20px}}
