/* Only login and account forms; shared product-card styles remain untouched. */
.email-login-page{align-items:flex-start;padding-top:16px}
.email-login-page .login-intro h1{font-size:26px;margin:10px 0}
.email-login-page .login-characters{display:block;max-width:240px;max-height:180px;margin:14px auto 20px}
.email-form{display:flex;flex-direction:column;gap:8px;text-align:left;min-width:0}
.email-form>label:not(.login-remember){font-size:12px;font-weight:600;color:#554764;margin-top:6px}
.email-form>input:not([type=hidden]){box-sizing:border-box;display:block;width:100%;min-width:0;min-height:48px;border:1px solid #ded9e7;border-radius:11px;background:#fff;color:#28233b;padding:12px 14px;font:inherit;font-size:14px;line-height:1.5;box-shadow:none}
.email-form input:focus-visible,.email-form button:focus-visible,.email-switch a:focus-visible{outline:2px solid #7963a8;outline-offset:3px}
.email-form .login-remember{margin:0;min-height:42px}
.email-primary{display:block;width:100%;min-height:50px;border:0;border-radius:12px;background:#242845;color:#fff;font:inherit;font-size:14px;font-weight:700;padding:13px 16px;line-height:1.5;cursor:pointer}
.email-primary:hover{background:#363457}.email-primary:disabled{opacity:.5;cursor:default}
.email-switch{margin:16px 0 12px;font-size:12px;line-height:1.7;color:#80758c}
.email-switch a{color:#554174;font-weight:700;text-decoration:underline;text-underline-offset:3px;margin-left:5px}
.email-help{font-size:11px;line-height:1.7;color:#82768e;margin:2px 0 8px;word-break:keep-all;overflow-wrap:anywhere}
.email-mail-notice{font-size:10px;margin:12px 0 18px}
.email-error{border:1px solid #e9c9d2;border-radius:10px;padding:12px;background:#fff4f6;color:#962e4c;font-size:12px;line-height:1.7;margin:14px 0;text-align:left}
.email-divider{display:flex;align-items:center;gap:12px;margin:20px 0 10px;color:#9d91a7;font-size:11px}
.email-divider:before,.email-divider:after{content:"";height:1px;background:#ece8f1;flex:1}
.email-collection{font-size:11px;line-height:1.75;color:#786987;background:#f7f5fa;border:1px solid #ece7f2;border-radius:10px;padding:13px;margin:12px 0 2px}
.email-collection strong{display:block;color:#514365;margin-bottom:5px}.email-collection a{display:inline-block;margin-top:5px;text-decoration:underline}
.email-consents{display:grid;gap:3px;margin:4px 0}
.email-consents label{display:flex;gap:9px;align-items:center;min-height:40px;font-size:12px;color:#655570;line-height:1.6;cursor:pointer}
.email-consents input{width:17px;height:17px;flex:none;margin:0;accent-color:#7963a8}
.email-consents a{text-decoration:underline;text-underline-offset:3px}
body[data-page=account] .email-form{margin-top:12px}body[data-page=account] #password{scroll-margin-top:100px}
@media(max-width:374px){.email-login-page{padding-left:24px;padding-right:24px}.email-login-page .login-intro h1{font-size:24px}}

/* Signup availability controls, confined to member email forms. */
.email-form .email-address-row{display:flex;align-items:stretch;gap:8px;min-width:0}
.email-form .email-address-row input{box-sizing:border-box;display:block;flex:1;width:0;min-width:0;min-height:48px;border:1px solid #ded9e7;border-radius:11px;background:#fff;color:#28233b;padding:12px 14px;font:inherit;font-size:14px;line-height:1.5;box-shadow:none}
.email-form .email-check-button{flex:none;min-height:48px;border:1px solid #d8cfe4;border-radius:11px;background:#f6f2fa;color:#554174;padding:10px 12px;font:inherit;font-size:12px;font-weight:700;white-space:nowrap;cursor:pointer}
.email-form .email-check-button:disabled{opacity:.55;cursor:wait}
.email-form [data-email-check][hidden],.email-form [data-email-availability][hidden]{display:none}
.email-form .email-availability{margin:0;min-height:19px}
.email-form .email-availability[data-state=available]{color:#35684f}
.email-form .email-availability[data-state=taken],.email-form .email-availability[data-state=error]{color:#962e4c}
