.customer-reset-page { margin: 0; min-height: 100vh; background: #f6f0e9; color: #2e2336; font: 1rem/1.6 system-ui, sans-serif; }
.customer-reset-page main { box-sizing: border-box; width: calc(100% - 2rem); max-width: 32rem; margin: 3rem auto; padding: 1.5rem; background: white; border: 1px solid #d9ccdf; border-radius: 1rem; }
.customer-reset-page h1 { font-size: 1.7rem; line-height: 1.3; }
.customer-reset-page label, .customer-reset-page input { display: block; }
.customer-reset-page label { margin-top: 1rem; font-weight: 600; }
.customer-reset-page input { box-sizing: border-box; width: 100%; min-width: 0; min-height: 2.75rem; padding: .7rem; border: 1px solid #796a81; border-radius: .4rem; font: inherit; }
.customer-reset-page button, .customer-reset-page a { touch-action: manipulation; }
.customer-reset-page button { min-height: 2.75rem; padding: .6rem 1rem; margin: .6rem .5rem .6rem 0; font: inherit; border: 1px solid #493459; border-radius: .4rem; background: #493459; color: white; cursor: pointer; }
.customer-reset-page button[data-password-toggle] { background: white; color: #493459; }
.customer-reset-page button:disabled { opacity: .65; cursor: wait; }
.customer-reset-page :focus-visible { outline: 3px solid #176a99; outline-offset: 3px; }
.customer-reset-page [data-error="true"] { color: #9c1731; }
.customer-reset-page [hidden] { display: none !important; }
.customer-reset-page .brand { font-weight: 700; }
.customer-reset-page .password-help { font-size: .95rem; }
@media (max-width: 400px) { .customer-reset-page main { margin: 1rem auto; padding: 1rem; } }
