.account-page { max-width: 1100px; padding-top: 40px; padding-bottom: 48px; color: #18233b; }
.account-page h1 { font-size: clamp(1.8rem, 4vw, 2.4rem); font-weight: 700; margin-bottom: 12px; }
.account-page h2 { font-size: 1.2rem; font-weight: 650; margin-bottom: 16px; }
.account-page h3 { font-size: 1rem; font-weight: 650; margin-top: 20px; }
.account-page p { line-height: 1.6; }
.account-panel { display: block; padding: 28px; border: 1px solid #dbe2ee; border-radius: 10px; background: #fff; }
.account-sign-in { max-width: 530px; margin: 16px auto; }
.account-eyebrow { display: block; color: #516383; font-size: .8rem; letter-spacing: .06em; text-transform: uppercase; font-weight: 650; margin-bottom: 10px; }
.account-page .account-help { color: #52627b; font-size: .875rem; margin-top: 12px; }
.account-page label { display: block; font-weight: 600; margin-top: 24px; }
.account-page input { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid #91a2bb; border-radius: 5px; font-size: 1rem; }
.account-page input:focus-visible, .account-page a:focus-visible, .account-page button:focus-visible { outline: 3px solid #164bbc; outline-offset: 3px; }
.account-page input.account-code { font-size: 1.5rem; letter-spacing: .3em; }
.account-button { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 10px 20px; border: 1px solid #164bbc; border-radius: 5px; background: #164bbc; color: #fff; font-weight: 600; text-decoration: none; cursor: pointer; }
.account-button:hover { background: #103d9c; color: #fff; text-decoration: none; }
.account-sign-in form .account-button { width: 100%; margin-top: 20px; }
.account-button-secondary { background: #fff; color: #164bbc; }
.account-button-secondary:hover { background: #edf3ff; color: #103d9c; }
.account-errors { display: block; color: #a82525; margin-top: 10px; }
.account-errors ul { padding-left: 20px; }
.account-errors.validation-summary-valid { display: none; }
.account-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 28px; }
.account-email { overflow-wrap: anywhere; color: #52627b; }
.account-status { display: inline-block; width: fit-content; border-radius: 20px; padding: 7px 12px; background: #edf3ff; color: #173e80; font-size: .875rem; font-weight: 600; white-space: nowrap; }
.account-order-list { display: grid; gap: 16px; }
.account-order-summary { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 12px 28px; color: inherit; }
.account-order-summary:hover { border-color: #164bbc; color: inherit; text-decoration: none; box-shadow: 0 2px 8px #101c4b0d; }
.account-order-summary h2 { margin-bottom: 5px; }
.account-order-summary .account-eyebrow { margin-bottom: 6px; }
.account-order-total { text-align: right; }
.account-order-total span, .account-price span { font-size: .75rem; font-weight: 400; }
.account-order-view { grid-column: 1 / -1; color: #164bbc; font-size: .875rem; }
.account-pagination { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 24px; margin-top: 28px; }
.account-back { display: inline-block; margin-bottom: 24px; }
.account-order-info { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-bottom: 24px; }
.account-page address { line-height: 1.7; margin-bottom: 0; }
.account-price { font-size: 1.8rem; font-weight: 700; }
.account-items-scroll { overflow-x: auto; }
.account-items { width: 100%; border-collapse: collapse; }
.account-items th { color: #52627b; font-size: .8rem; font-weight: 600; }
.account-items td, .account-items th { padding: 14px 10px; border-bottom: 1px solid #e1e7ef; }
.account-items th:not(:first-child), .account-items td:not(:first-child) { text-align: right; white-space: nowrap; }
.account-items tr:last-child td { border-bottom: 0; }
.account-item { display: flex; align-items: center; gap: 16px; min-width: 230px; color: inherit; text-decoration: none; }
.account-item:hover, .account-item:focus-visible { color: #164bbc; text-decoration: none; }
.account-item:hover strong, .account-item:focus-visible strong { text-decoration: underline; }
.account-item img { flex-shrink: 0; object-fit: contain; }
.account-item strong, .account-item span { display: block; }
.account-item .account-help { margin-top: 4px; }
@media (max-width: 767px) {
    .account-page { padding-top: 24px; }
    .account-panel { padding: 20px; }
    .account-heading { align-items: flex-start; flex-wrap: wrap; }
    .account-order-summary { grid-template-columns: 1fr auto; gap: 12px; }
    .account-order-summary .account-status { grid-column: 1 / -1; grid-row: 2; }
    .account-order-total { grid-column: 2; grid-row: 1; }
    .account-order-info { grid-template-columns: 1fr; }
}
