.account-page,
.auth-shell,
.account-dashboard,
.address-list-page {
  width: 100%;
  max-width: 680px;
  margin-inline: auto;
}

.account-page { padding-block: .5rem 1rem; }
.account-page__heading { margin: 0 0 1.15rem; }
.account-page__eyebrow { margin: 0 0 .25rem; color: var(--arcade-lime); font-size: .7rem; font-weight: 800; }
.account-page__heading h1 { margin: 0; font-size: clamp(1.45rem, 6vw, 1.9rem); font-weight: 900; letter-spacing: -.05em; }
.account-page__heading p { margin: .3rem 0 0; color: var(--arcade-muted); font-size: .78rem; }
.account-panel,
.auth-card,
.content-narrow > article,
.address-list-page {
  border: 1px solid var(--arcade-line);
  border-radius: 1.25rem;
  background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018)), var(--arcade-panel);
  box-shadow: 0 16px 44px rgba(0,0,0,.19);
}
.auth-shell { display: grid; min-height: min(640px, 100%); place-items: center; padding-block: .5rem 1.2rem; }
.auth-shell--compact { min-height: auto; }
.auth-card { width: 100%; max-width: 460px; padding: clamp(1.1rem, 5vw, 1.65rem); }
.auth-card__top { margin-bottom: 1.15rem; }
.auth-card__icon { display: grid; width: 3rem; height: 3rem; margin-bottom: .85rem; place-items: center; border: 1px solid rgba(200,255,61,.2); border-radius: 1rem; background: rgba(200,255,61,.1); color: var(--arcade-lime); font-size: 1.25rem; }
.auth-card__top h1, .auth-card__top h2 { margin: 0; font-size: 1.35rem; font-weight: 900; letter-spacing: -.04em; }
.auth-card__top p { margin: .35rem 0 0; color: var(--arcade-muted); font-size: .78rem; line-height: 1.8; }
.auth-form, .account-form { display: grid; gap: .85rem; }
.field { display: grid; gap: .35rem; min-width: 0; }
.field > label { color: #e8e3ec; font-size: .75rem; font-weight: 700; }
.field input:not([type="checkbox"]):not([type="file"]),
.field textarea,
.field select,
.auth-form > input:not([type="hidden"]),
.account-form input:not([type="checkbox"]):not([type="file"]),
.account-form textarea,
.account-form select,
.content-narrow input:not([type="checkbox"]),
.content-narrow textarea,
.address-list-page input:not([type="checkbox"]),
.address-list-page textarea {
  width: 100%; min-height: 2.9rem; padding: .7rem .85rem; border: 1px solid rgba(255,255,255,.1); border-radius: .8rem; outline: 0; background: rgba(8,7,11,.4); color: var(--arcade-text); font: inherit; font-size: .82rem; transition: border-color .18s, box-shadow .18s;
}
.field textarea, .account-form textarea, .content-narrow textarea { min-height: 6rem; resize: vertical; }
.field input:focus, .field textarea:focus, .field select:focus { border-color: rgba(71,230,238,.65); box-shadow: 0 0 0 3px rgba(71,230,238,.09); }
.field input::placeholder { color: #78727f; }
.field input[type="checkbox"], .account-form input[type="checkbox"], .content-narrow input[type="checkbox"] { accent-color: var(--arcade-lime); }
.auth-password { position: relative; }
.auth-password input { padding-inline-end: 4.5rem !important; }
.auth-password button { position: absolute; left: .6rem; bottom: .45rem; border: 0; background: transparent; color: var(--arcade-cyan); font-size: .7rem; font-weight: 800; cursor: pointer; }
.button { display: inline-flex; min-height: 2.8rem; align-items: center; justify-content: center; gap: .4rem; padding: .55rem .9rem; border: 1px solid transparent; border-radius: .78rem; font: inherit; font-size: .78rem; font-weight: 850; cursor: pointer; transition: transform .16s, filter .16s, border-color .16s; }
.button:hover { transform: translateY(-1px); filter: brightness(1.08); }
.button--block { width: 100%; }
.button--primary { background: var(--arcade-lime); color: #15130f; }
.button--ghost { border-color: var(--arcade-line); background: rgba(255,255,255,.04); color: var(--arcade-text); }
.button--danger { border-color: rgba(255,79,154,.24); background: rgba(255,79,154,.12); color: #ff91bd; }
.auth-note { margin: .8rem 0 0; color: var(--arcade-soft); font-size: .68rem; line-height: 1.8; }
.auth-link-row { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .55rem; margin-top: .75rem; color: var(--arcade-soft); font-size: .68rem; }
.auth-link-row a, .account-link { color: var(--arcade-cyan); font-weight: 800; }
.auth-divider { display: flex; align-items: center; gap: .7rem; margin: .85rem 0; color: var(--arcade-soft); font-size: .68rem; }
.auth-divider::before, .auth-divider::after { height: 1px; flex: 1; background: var(--arcade-line); content: ""; }
.auth-identifier { display: grid; gap: .1rem; padding: .7rem .8rem; border: 1px solid var(--arcade-line); border-radius: .8rem; background: rgba(255,255,255,.025); }
.auth-identifier span { color: var(--arcade-soft); font-size: .65rem; }
.auth-identifier strong { direction: ltr; text-align: right; font-size: .85rem; }
.auth-otp-actions { display: flex; min-height: 2.3rem; align-items: center; justify-content: space-between; gap: .7rem; color: var(--arcade-muted); font-size: .7rem; }
.is-hidden { display: none !important; }
.alert, .messages { padding: .75rem .85rem; border: 1px solid var(--arcade-line); border-radius: .75rem; background: rgba(255,255,255,.04); font-size: .75rem; }
.alert-danger { border-color: rgba(255,79,154,.24); background: rgba(255,79,154,.08); color: #ff9bc2; }
.alert-success { border-color: rgba(200,255,61,.22); background: rgba(200,255,61,.07); color: var(--arcade-lime); }
.alert-info { border-color: rgba(71,230,238,.22); background: rgba(71,230,238,.07); color: var(--arcade-cyan); }
.content-narrow { width: 100%; max-width: 560px; margin: .5rem auto 1rem; }
.content-narrow > article { padding: 1.1rem; }
.content-narrow h1, .content-narrow h2 { margin: 0 0 .8rem; font-size: 1.2rem; font-weight: 900; }
.content-narrow p, .content-narrow li { color: var(--arcade-muted); font-size: .78rem; line-height: 1.8; }
.content-narrow ul { padding-inline-start: 1.2rem; }
.cluster, .actions { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem; }
.address-list-page { max-width: 680px; padding: 1rem; }
.address-list-header { display: flex; align-items: center; justify-content: space-between; gap: .7rem; margin-bottom: 1rem; }
.address-list-title { margin: 0; font-size: 1.15rem; font-weight: 900; }
.table-wrapper { overflow-x: auto; border: 1px solid var(--arcade-line); border-radius: .85rem; }
.address-table { width: 100%; border-collapse: collapse; text-align: right; font-size: .72rem; }
.address-table th, .address-table td { padding: .7rem .65rem; border-bottom: 1px solid var(--arcade-line); white-space: nowrap; }
.address-table th { background: rgba(255,255,255,.035); color: var(--arcade-muted); font-size: .66rem; }
.address-table tr:last-child td { border-bottom: 0; }
.badge, .chip { display: inline-flex; align-items: center; padding: .2rem .48rem; border: 1px solid rgba(71,230,238,.18); border-radius: 999px; background: rgba(71,230,238,.07); color: var(--arcade-cyan); font-size: .62rem; font-weight: 750; }
.badge-success { border-color: rgba(200,255,61,.2); background: rgba(200,255,61,.08); color: var(--arcade-lime); }
.empty-state { padding: 1rem; color: var(--arcade-soft); text-align: center; font-size: .8rem; }
.stack { display: grid; gap: .65rem; }
.address-card, .comment-card { padding: .85rem; border: 1px solid var(--arcade-line); border-radius: .95rem; background: rgba(255,255,255,.025); }
.address-card > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.address-card small { display: block; margin: .5rem 0; color: var(--arcade-soft); font-size: .67rem; }
.inline-form { display: inline-flex; }
.account-dashboard { max-width: 700px; padding-block: .3rem 1rem; }
.account-dashboard__header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: .15rem 0 1rem; }
.account-dashboard__eyebrow { margin: 0; color: var(--arcade-lime); font-size: .68rem; font-weight: 800; }
.account-dashboard__header h1 { margin: .1rem 0; font-size: clamp(1.4rem, 6vw, 1.8rem); font-weight: 900; letter-spacing: -.04em; }
.account-dashboard__header p { margin: 0; color: var(--arcade-muted); font-size: .72rem; }
.account-dashboard__avatar { display: grid; width: 3.5rem; height: 3.5rem; flex: 0 0 auto; overflow: hidden; place-items: center; border: 2px solid var(--arcade-pink); border-radius: 50%; background: rgba(255,79,154,.1); color: var(--arcade-pink); font-size: 1.4rem; font-weight: 900; }
.account-dashboard__avatar img, .account-avatar-field img { width: 100%; height: 100%; object-fit: cover; }
.account-tabs { display: flex; gap: .35rem; overflow-x: auto; margin: 0 -.1rem 1rem; padding: .2rem .1rem .55rem; scrollbar-width: none; }
.account-tabs a { display: inline-flex; flex: 0 0 auto; align-items: center; gap: .35rem; padding: .5rem .7rem; border: 1px solid var(--arcade-line); border-radius: 999px; background: rgba(255,255,255,.025); color: var(--arcade-muted); font-size: .68rem; font-weight: 750; }
.account-tabs a.is-active { border-color: rgba(200,255,61,.25); background: rgba(200,255,61,.09); color: var(--arcade-lime); }
.account-tabs a span { color: inherit; opacity: .7; }
.account-dashboard__two-col { display: grid; gap: .75rem; }
.account-panel { min-width: 0; padding: 1rem; }
.contact-prompt { margin-bottom: .8rem; }
.contact-prompt h2 { margin: 0 0 .35rem; color: var(--arcade-cyan); font-size: .95rem; }
.contact-prompt ul { display: grid; gap: .2rem; margin: .35rem 0 0; padding-inline-start: 1.1rem; }
.contact-form { display: grid; gap: .8rem; }
.contact-form .errorlist { margin: 0; padding-inline-start: 1rem; color: #ff94be; font-size: .68rem; }
.contact-form input[type="file"] { width: 100%; color: var(--arcade-muted); font-size: .7rem; }
.account-panel__heading { display: flex; align-items: center; justify-content: space-between; gap: .6rem; margin-bottom: .8rem; }
.account-panel__heading h2 { margin: 0; font-size: .98rem; font-weight: 900; }
.account-summary { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .45rem; margin: 0; }
.account-summary > div { min-width: 0; padding: .6rem; border: 1px solid var(--arcade-line); border-radius: .7rem; background: rgba(255,255,255,.02); }
.account-summary dt { color: var(--arcade-soft); font-size: .62rem; }
.account-summary dd { overflow-wrap: anywhere; margin: .15rem 0 0; color: #eee9f2; font-size: .72rem; font-weight: 700; }
.account-avatar-field { display: flex; align-items: center; gap: .8rem; margin-bottom: .2rem; }
.account-avatar-field > img, .account-avatar-field > span { display: grid; width: 3.2rem; height: 3.2rem; flex: 0 0 auto; place-items: center; overflow: hidden; border: 1px solid var(--arcade-line); border-radius: 50%; background: var(--arcade-panel-2); color: var(--arcade-lime); font-size: 1.2rem; font-weight: 900; }
.account-avatar-field .field { flex: 1; }
.account-address-grid, .account-product-grid, .account-comment-grid { display: grid; gap: .65rem; }
.address-card--default { border-color: rgba(200,255,61,.22); }
.account-product-card { overflow: hidden; border: 1px solid var(--arcade-line); border-radius: .95rem; background: rgba(255,255,255,.025); }
.account-product-card__media { display: grid; height: 130px; place-items: center; background: rgba(255,255,255,.03); color: var(--arcade-soft); }
.account-product-card__media img { width: 100%; height: 100%; object-fit: cover; }
.account-product-card > div { padding: .8rem; }
.account-product-card h2 { margin: .45rem 0; font-size: .9rem; }
.account-product-card p, .comment-card blockquote { color: var(--arcade-muted); font-size: .73rem; line-height: 1.8; }
.comment-card__top, .comment-card__target { display: flex; align-items: center; justify-content: space-between; gap: .7rem; color: var(--arcade-soft); font-size: .66rem; }
.comment-card blockquote { margin: .7rem 0; }
.comment-card__target a { color: var(--arcade-cyan); font-weight: 800; }
.grid { display: grid; gap: .75rem; }
.grid--two { grid-template-columns: 1fr; }
@media (min-width: 560px) {
  .account-dashboard__two-col { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .account-dashboard__two-col--wide { grid-template-columns: 1fr 1fr; }
  .account-address-grid, .account-product-grid, .account-comment-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .grid--two { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .auth-shell:not(.auth-shell--compact) { min-height: 70dvh; }
}
@media (max-width: 420px) {
  .address-list-page { padding: .75rem; }
  .address-list-header { align-items: flex-start; flex-direction: column; }
  .address-list-header .button { width: 100%; }
  .account-summary { grid-template-columns: 1fr 1fr; }
}
