.customer-login-page{margin:0;min-height:100vh;background:#f4f6fa;color:#172238;font:16px/1.55 system-ui,sans-serif;display:grid;place-items:center;padding:24px;box-sizing:border-box}.customer-login-card{width:min(440px,100%);background:white;border:1px solid #dde3ed;border-radius:20px;padding:28px;box-shadow:0 14px 40px #2034550b;box-sizing:border-box}.customer-brand{font-weight:750;letter-spacing:.02em;color:#3154a4}.customer-login-card h1{font-size:26px;margin:12px 0}.customer-login-card label{display:block;font-weight:600;margin:14px 0}.customer-login-card [hidden]{display:none}.customer-login-card input{display:block;width:100%;box-sizing:border-box;border:1px solid #9cabc2;border-radius:8px;padding:11px;margin-top:6px;font:inherit}.customer-login-card button,.customer-account-bar button{font:inherit;border:1px solid #b6c3d8;border-radius:8px;background:white;color:#183c85;cursor:pointer;padding:9px 14px}.customer-login-card #customer-submit{background:#244fc1;color:white;border-color:#244fc1;width:100%;font-weight:700}.customer-login-card button:disabled{opacity:.55;cursor:wait}.customer-tabs{display:flex;gap:8px}.customer-tabs [aria-pressed=true]{background:#e9efff;border-color:#244fc1}.customer-hint{font-size:13px;color:#53647d}#customer-message{color:#a52a20;overflow-wrap:anywhere}.customer-account-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;font:13px/1.4 system-ui,sans-serif;background:#eef3ff;color:#183460}.customer-account-bar span{overflow-wrap:anywhere}.customer-account-bar button{font-size:12px;white-space:nowrap}/* Reserve a visible account switch area in the fixed phone workspace. */
html[data-customer-id] .customer-account-bar{box-sizing:border-box;min-height:48px;position:relative;z-index:100}
html[data-customer-id] .customer-account-bar span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:540px),(max-width:960px) and (pointer:coarse){
 html[data-customer-id] .customer-account-bar{position:fixed;top:var(--app-top,0px);left:0;right:0;height:48px;padding:4px max(12px,env(safe-area-inset-right)) 4px max(12px,env(safe-area-inset-left))}
 html[data-customer-id] .studio{top:calc(var(--app-top,0px) + 48px);height:calc(var(--app-height,100dvh) - 48px)}
}
/* Self-service entry; keep the authenticated workspace account bar unchanged. */
.customer-login-page{padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));min-height:100dvh}
.customer-login-card{width:min(520px,100%);overflow-wrap:anywhere}
.customer-login-card [hidden]{display:none!important}
.customer-login-card #customer-intro,.customer-login-card #recovery-result-context{white-space:pre-line}
.customer-login-card button,.customer-login-card input,.customer-login-card textarea{min-height:44px}
.customer-login-card button:focus-visible,.customer-login-card input:focus-visible,.customer-login-card textarea:focus-visible{outline:3px solid #7999e9;outline-offset:3px}
.customer-login-card input[aria-invalid=true]{border-color:#b83a2a}
.customer-tabs{margin:24px 0 18px;align-items:stretch}
.customer-tabs button{flex:1;min-width:0;padding:11px 8px;font-weight:650;line-height:1.4}
.customer-tabs span,.customer-other-actions span{font-size:12px;font-weight:400}
.customer-tabs [aria-pressed=true]{background:#e9efff;border-color:#244fc1;color:#183c85}
.customer-login-card .password-visibility{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:450;margin:8px 0;min-height:44px}
.customer-login-card .password-visibility input{display:inline-block;width:18px;height:18px;min-height:18px;margin:0;flex:none;accent-color:#244fc1}
.customer-login-card #customer-message:empty{display:none}
.customer-login-card #customer-message{font-size:14px;line-height:1.55;margin:15px 0}
.customer-other-actions{display:grid;gap:10px;margin-top:20px}
.customer-other-actions button{border:0;background:#f2f5fb;text-align:left;font-size:13px;line-height:1.45}
.customer-service-note{border-top:1px solid #e1e7f0;padding-top:17px;margin-top:22px}
.customer-recovery-result{background:#f1f7f5;border:1px solid #b8d7cb;border-radius:12px;padding:18px;margin-top:20px;font-size:14px}
.customer-recovery-result h2{font-size:18px;line-height:1.4;margin:0 0 14px}
.customer-login-card textarea{font:14px/1.5 ui-monospace,monospace;display:block;width:100%;box-sizing:border-box;padding:12px;border:1px solid #829ca9;border-radius:8px;resize:vertical;overflow-wrap:anywhere;word-break:break-all;background:white;color:#172238}
.customer-login-card #recovery-continue{display:block;width:100%;background:#244fc1;color:white;border-color:#244fc1;font-size:14px;font-weight:650;white-space:normal}
@media(max-width:540px){.customer-login-card{padding:22px 18px;border-radius:16px}.customer-login-card h1{font-size:23px;line-height:1.35}.customer-login-card>p:not(.customer-brand){font-size:14px}.customer-login-card label{font-size:14px}.customer-login-card input{font-size:16px}.customer-recovery-result{padding:15px}.customer-tabs{gap:8px}}

.recovery-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.customer-login-card .recovery-tools button{font-size:13px;flex:1;padding:8px;white-space:normal}

.commerce-products{display:grid;gap:12px}.commerce-product,.commerce-order{border:1px solid #d9e1e7;border-radius:14px;padding:14px;margin:10px 0}.commerce-product h4,.commerce-order h4{margin:0 0 8px}.commerce-product p,.commerce-order p{overflow-wrap:anywhere}.commerce-product button{width:100%}#commerce-refund-form{padding:14px;border:1px solid #d9e1e7;border-radius:14px}#commerce-refund-reason{width:100%;min-height:90px;margin:8px 0}
