.typex-account-form{max-width:480px;color:#102747;text-align:left}
.typex-account-form h2{font-size:26px;margin:0 0 12px}
.typex-dialog .typex-account-form h2{margin-right:64px}
.typex-account-form p{line-height:1.65}
.typex-account-form label{display:block;margin:18px 0 8px;font-weight:600}
.typex-account-form input:not([type=checkbox]){display:block;box-sizing:border-box;width:100%;min-height:48px;margin-top:8px;padding:12px;border:1px solid #7b8b9e;border-radius:10px;font:inherit;color:#102747;background:#fff}
.typex-account-form input::placeholder{color:#52647b;opacity:1}
.typex-account-form .account-remember{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:400;min-height:44px}
.account-remember input{width:20px;height:20px;accent-color:#294bc8}
.typex-account-form button,.typex-account-form a{font:inherit;cursor:pointer;min-height:44px;box-sizing:border-box}
.account-tabs{display:flex;gap:8px;margin:24px 0 12px}
.account-tabs button{flex:1;padding:10px;border:1px solid #8290a2;border-radius:10px;background:white;color:#102747}
.account-tabs button[aria-pressed=true]{background:#102747;color:#fff;border-color:#102747}
.typex-account-form .account-primary{display:block;width:100%;padding:14px;text-align:center;border:0;border-radius:10px;background:#294bc8;color:#fff;text-decoration:none;font-weight:600;margin-top:20px}
.typex-account-form .account-secondary{display:block;width:100%;padding:12px;border:1px solid #294bc8;border-radius:10px;background:#fff;color:#1b3598;margin:12px 0}
.typex-account-form .account-note{font-size:14px;color:#52647b;margin-top:20px}
.typex-account-form [hidden]{display:none!important}
.typex-account-form :focus-visible,.typex-home-account a:focus-visible{outline:3px solid #9a7200;outline-offset:3px}
.typex-account-form button:disabled{opacity:.65;cursor:wait}
.typex-account-form ::selection{background:#d6e1fc;color:#102747}
.typex-home-account .typex-member-actions{display:flex;gap:10px;flex-wrap:wrap}
.typex-home-account .typex-member-actions a{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;min-height:44px;border-radius:10px;text-decoration:none;background:#fff;color:#1b3598;border:1px solid #294bc8;font-weight:600;box-sizing:border-box}
.typex-home-account .typex-member-actions a[data-typex-redeem]{background:#294bc8;color:white}
.customer-login-page{margin:0;min-height:100vh;display:grid;place-items:center;background:#f2f5fb;font:16px/1.6 system-ui,sans-serif;color:#102747;padding:24px;box-sizing:border-box}
.customer-login-main{width:min(100%,480px);background:#fff;padding:clamp(20px,4vw,40px);box-sizing:border-box;border-radius:16px;box-shadow:0 12px 36px #10274718}
.customer-login-brand{display:block;color:#102747;font-size:21px;font-weight:700;text-decoration:none;margin-bottom:28px}
.typex-card-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}
.typex-card-actions button{min-height:48px;flex:0 1 260px}
.typex-dialog.typex-purchase-dialog{width:min(560px,calc(100% - 32px));padding:32px;border-radius:16px}
.typex-purchase-dialog .membership-purchase{max-width:none;width:100%}
.membership-purchase h2{font-size:28px;line-height:1.4;margin-bottom:14px}
.membership-purchase .membership-purchase-description{margin:0;color:#52647b;font-size:16px;line-height:1.85}
.membership-purchase-actions{display:flex;flex-direction:column;gap:12px;margin-top:28px}
.membership-purchase .account-primary,.membership-purchase .account-secondary{display:grid;grid-template-columns:24px 1fr 24px;align-items:center;gap:12px;min-height:58px;margin:0;padding:16px 20px;border-radius:12px;font-size:17px;font-weight:600;text-align:center;transition:background-color .15s ease}
.membership-purchase .account-primary{background:#294bc8}
.membership-purchase .account-primary:hover{background:#203ca5}
.membership-purchase .account-secondary{background:#f1f5fc;border:0;color:#193b9c}
.membership-purchase .account-secondary:hover{background:#e5edfb}
.membership-purchase-actions svg{width:24px;height:24px}
.membership-purchase .membership-purchase-status{margin:16px 0 0;font-size:14px;color:#52647b}
@media(max-width:600px){.typex-dialog.typex-purchase-dialog{padding:28px 22px}.membership-purchase h2{font-size:25px}.membership-purchase .membership-purchase-description{font-size:15px}.membership-purchase-actions{margin-top:24px}}
