/* Customer pages use the same surfaces and spacing as the storefront. */
.page.customer-entry, .page.customer-orders {
    width: 100%;
    padding: 40px clamp(16px, 4vw, 48px) 56px;
    min-height: 0;
}
.page.customer-entry { max-width: 720px; }
.page.customer-orders { max-width: 1360px; }
.customer-entry > .kicker, .customer-heading .kicker { margin: 0 0 10px; }
.customer-entry > h1 { margin: 0 0 20px; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.12; }
.customer-entry > p { color: var(--theme-muted); }
.customer-entry .customer-card { margin: 24px 0 16px; }
.customer-entry .customer-card > .btn { margin-top: 16px; min-height: 52px; letter-spacing: .04em; }
.customer-entry .customer-card > p:last-child { margin-bottom: 0; }
.customer-heading { margin: 16px 0 24px; align-items: flex-start; }
.customer-heading h1 { margin: 0; font-size: clamp(1.8rem, 3.3vw, 2.7rem); line-height: 1.15; }
.customer-heading .customer-muted { margin: 10px 0 0; }
.customer-heading form { flex-shrink: 0; }
.customer-entry .customer-card, .customer-orders .customer-card {
    background: var(--theme-surface);
    color: var(--theme-ink);
    border-color: var(--theme-border);
    padding: 24px;
    margin-top: 0;
    margin-bottom: 20px;
}
.customer-orders :is(.customer-muted, .customer-card small), .customer-entry .customer-muted { color: var(--theme-muted); }
.customer-orders .customer-order-card { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) auto; gap: 20px; }
.customer-order-card > div { min-width: 0; }
.customer-order-card h2 { margin: 8px 0 12px; overflow-wrap: anywhere; }
.customer-order-card p { margin: 8px 0; }
.customer-order-card .btn { min-height: 44px; letter-spacing: .035em; padding: 12px 16px; }
.customer-order-card .btn--secondary { background: var(--theme-soft); color: var(--theme-link); border: 1px solid var(--theme-border); border-radius: 6px; }
.customer-orders .customer-badge { padding: 8px 12px; background: var(--theme-note); color: var(--theme-ink); line-height: 1.5; }
.customer-orders .customer-progress { margin: 0 0 24px; gap: 24px; padding: 24px; background: var(--theme-note); border-color: var(--theme-border); }
.customer-orders .customer-progress .kicker { margin: 0; }
.customer-orders .customer-progress p:last-child { color: var(--theme-muted); }
.customer-orders .customer-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.customer-orders .customer-steps li { color: var(--theme-muted); border-color: var(--theme-border); line-height: 1.45; }
.customer-orders .customer-steps li.complete { color: var(--theme-success); border-color: var(--theme-success); }
.customer-orders .customer-steps li.current { color: var(--theme-ink); border-color: var(--blue); }
.customer-orders .customer-steps li.current span { background: var(--blue); border-color: var(--blue); color: #fff; }
.customer-orders .customer-detail-grid { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 24px; }
.customer-detail-grid > *, .customer-line > div { min-width: 0; }
.customer-orders .customer-line { gap: 16px; padding: 16px 0; border-color: var(--theme-border); overflow-wrap: anywhere; }
.customer-orders .customer-line > span:first-child { white-space: normal; }
.customer-line > span:last-child, .customer-total > strong { flex-shrink: 0; text-align: right; }
.customer-orders .customer-line p { margin: 8px 0 0; }
.customer-orders .customer-card > .btn { max-width: 100%; white-space: normal; text-align: center; }
.customer-orders .pickup-details { padding: 16px; border-radius: 8px; background: var(--theme-note); color: var(--theme-ink); border-color: var(--theme-border); }
.customer-orders .customer-action-note { border-color: var(--theme-success); color: var(--theme-success); background: var(--theme-soft); border-radius: 4px; }
.customer-orders :is(.customer-return-body, .customer-return-history, .customer-review-item) { border-color: var(--theme-border); }
.customer-orders .customer-return-toggle { background: var(--theme-soft); color: var(--theme-link); border-color: var(--theme-border); }
.customer-orders .customer-return-request { background: var(--theme-soft); border-color: var(--theme-border); }
.customer-orders .customer-reviews { margin-top: 4px; }
.customer-orders .customer-review-item label { display: block; margin-bottom: 16px; }
.customer-orders :is(.customer-return-field input, .customer-return-field select, .customer-return-field textarea, .customer-review-item select, .customer-review-item textarea), .customer-entry .customer-card input {
    background-color: var(--theme-input);
    color: var(--theme-ink);
    border-color: var(--theme-border);
    min-height: 48px;
    font-size: 1rem;
}
.customer-orders :is(.customer-return-refund, .customer-review-confirmed) { color: var(--theme-success); }
.customer-orders .customer-field-error { color: var(--theme-danger); }
.customer-orders .customer-text-link, .customer-entry .customer-text-link, .customer-pagination a { color: var(--theme-link); min-height: 44px; padding-block: 12px; }
.customer-orders .customer-pagination { align-items: center; gap: 12px 24px; }
.customer-orders .customer-pagination span { color: var(--theme-muted); }
.customer-orders .customer-test, .customer-entry .customer-test { background: var(--theme-note); color: var(--theme-ink); border-color: var(--theme-border); }
@media (max-width: 900px) {
    .customer-orders .customer-progress, .customer-orders .customer-detail-grid { grid-template-columns: minmax(0, 1fr); }
    .customer-orders .customer-detail-grid { gap: 0; }
}
@media (max-width: 800px) {
    .customer-orders .customer-order-card { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .customer-order-card > div:last-child { width: 100%; flex-direction: row; align-items: center; justify-content: space-between; flex-wrap: wrap; }
    .customer-heading { gap: 8px; }
}
@media (max-width: 600px) {
    .page.customer-entry, .page.customer-orders { padding: 28px 16px 40px; }
    .customer-entry .customer-card, .customer-orders .customer-card, .customer-orders .customer-progress { padding: 20px; }
    .customer-orders .customer-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .customer-orders .customer-total { font-size: 1.15rem; }
    .customer-entry .customer-card > .btn { padding-inline: 12px; font-size: .8rem; }
}
.customer-payment-window{padding:16px;margin:16px 0;border:1px solid var(--border, #64748b);border-radius:10px}.customer-payment-window strong{font-variant-numeric:tabular-nums;font-size:1.2rem}.customer-payment-window [hidden]{display:none!important}.customer-payment-window p{margin:6px 0 12px}
