#customerWorkspaceNav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:8px;border-radius:20px;border:1px solid #8dbcf03b;background:#102a45}
#customerWorkspaceNav button{display:flex;align-items:center;gap:10px;text-align:left;padding:12px;min-height:72px;min-width:0;border-radius:13px;background:transparent;color:#e9f2fc;line-height:1.4;overflow-wrap:anywhere}
#customerWorkspaceNav button i{font-size:17px;color:#b7d9ff;flex-shrink:0}#customerWorkspaceNav strong{display:block;font-size:.85rem}#customerWorkspaceNav small{display:block;font-size:.68rem;color:#c0d0e3;margin-top:4px}
#customerWorkspaceNav button:hover{background:#7bb8f31a}#customerWorkspaceNav button[aria-pressed=true]{background:#256ba7;box-shadow:inset 0 -3px #abdaff}
#customerWorkspaceNav button[aria-pressed=true] small{color:#ebf6ff}#customerWorkspaceNav button:focus-visible{outline:3px solid #a1d6ff;outline-offset:2px}
#customerWorkspaceContent{display:flex;flex-direction:column;gap:18px;min-width:0}
[data-customer-pane][hidden],#customerPaneEmpty[hidden]{display:none!important}
.customer-pane-heading{padding:18px 20px;border:1px solid #86bdef38;background:#23578526;border-radius:18px}
#customerPaneState{color:#b7daff;font-size:.68rem;letter-spacing:.05em;font-weight:800}#customerPaneTitle{font-size:1.4rem;line-height:1.3;font-weight:900;margin:8px 0;scroll-margin-top:20px}
#customerPaneDescription{color:#d9e4f0;font-size:.89rem;line-height:1.6}.customer-empty{border:1px dashed #8db6dd52;border-radius:16px;padding:22px;color:#cfdeed;font-size:.9rem;line-height:1.6}
#customerWorkspaceContent .text-gray-500{color:#b5c6d8}#customerWorkspaceContent .text-gray-400{color:#c4d1df}
body:has(#wallet:not(.hidden))>main,body:has(#wallet:not(.hidden))>header>div{max-width:1100px!important}
#customerWorkspaceContent .loyalty-points{margin:0}
@media(max-width:760px){#customerWorkspaceNav{display:flex;overflow-x:auto;gap:7px;scrollbar-width:thin}#customerWorkspaceNav button{flex:0 0 165px;min-height:72px}.customer-pane-heading{padding:16px}#customerPaneTitle{font-size:1.25rem}}
/* V227: errors stay visible beside the login controls. */
.customer-login form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.customer-login label{display:grid;gap:6px;font-size:.85rem;font-weight:700;color:#dce9f8}
.customer-login input{width:100%;min-width:0;min-height:46px;background:#102841;color:#fff;border:1px solid #89b2d955;border-radius:12px;padding:11px 12px}
.customer-login button{grid-column:1/-1;min-height:46px;border-radius:12px;background:#a4d5ff;color:#10253b;font-weight:900;padding:12px}
.customer-login-help{color:#c0d0e2;font-size:.8rem;line-height:1.6;margin-top:10px}.customer-login-message{margin-top:15px;border:1px solid #f5c87c66;background:#8c5d2026;color:#ffe6bd;border-radius:12px;padding:14px;line-height:1.6;font-size:.88rem;overflow-wrap:anywhere}.customer-login-message[hidden]{display:none!important}
.customer-login button:disabled{opacity:.6;cursor:wait}.customer-login :is(input,button):focus-visible{outline:3px solid #b5dfff;outline-offset:3px}
@media(max-width:560px){.customer-login form{grid-template-columns:1fr}}
/* V228: one form for existing and new customer accounts. */
.customer-account-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.customer-account-actions button{background:#153c5d;color:#d9eeff;border:1px solid #a0c8ed59;min-height:44px;padding:10px 14px;font-size:.82rem}
#customerPasswordConfirmLabel[hidden]{display:none!important}.customer-privacy-link{display:inline-flex;align-items:center;color:#bce0ff;font-size:.8rem;text-decoration:underline;padding:8px 0}
