/* Account-only styles. Product pages, shared navigation and layout remain parent-owned. */
.shop-account{max-width:48rem;margin-inline:auto;padding-block:clamp(1.5rem,4vw,3rem);color:var(--ink,#1d1d1f);font:inherit;line-height:1.65}
.shop-account *{box-sizing:border-box}
.account-heading h1{font-size:clamp(2rem,4vw,2.7rem);font-weight:650;letter-spacing:-.025em;line-height:1.25;margin:0 0 1.5rem}
.shop-account[dir=rtl] .account-heading h1{letter-spacing:0}
.account-body{display:grid;gap:1rem}
.account-panel{padding:clamp(1rem,3vw,1.75rem);background:var(--surface,#f5f5f7);border:1px solid var(--line,#d2d2d7);border-radius:1.25rem;min-width:0}
.account-panel h2{font-size:1.25rem;font-weight:650;line-height:1.4;margin:0 0 1.2rem}
.account-panel p{margin:.5rem 0 1rem;overflow-wrap:anywhere}
.account-login{max-width:31rem;width:100%;margin-inline:auto}
.account-intro,.account-muted,.account-meta{color:var(--muted,#59595e)}
.account-meta{font-size:.875rem;font-variant-numeric:tabular-nums}
.account-field{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0;font-size:1rem}
.account-field>span{font-weight:550}
.account-field input{font:inherit;color:inherit;background:var(--bg,#fff);border:1px solid var(--line,#b8b8bd);border-radius:.75rem;padding:.75rem;min-width:0;min-height:3rem;width:100%}
.account-field input.account-code{font-size:1.5rem;letter-spacing:.25em;font-variant-numeric:tabular-nums;text-align:center}
.account-button,.account-link{font:inherit;min-height:2.75rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:.75rem;padding:.6rem 1rem;cursor:pointer;text-decoration:none;color:var(--blue,#0066cc);border:1px solid var(--line,#d2d2d7);background:transparent;line-height:1.5;max-width:100%;overflow-wrap:anywhere}
.account-button.primary{background:#0071e3;color:#fff;border-color:#0071e3}
.account-login>.account-button,.account-login>form>.account-button{width:100%}
.account-button:disabled{opacity:.55;cursor:default}
.account-button:active:not(:disabled){filter:brightness(.92)}
.account-button:focus-visible,.account-link:focus-visible,.account-field input:focus-visible,.shop-account summary:focus-visible{outline:3px solid var(--blue,#0066cc);outline-offset:3px}
.account-actions{display:flex;gap:.75rem;justify-content:space-between;flex-wrap:wrap;margin-top:1rem}
.account-verified{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;padding:.75rem 0;margin-bottom:1rem}
.account-verified>span{color:var(--muted,#59595e)}
.account-link{display:flex;justify-content:space-between;border:0;border-radius:.5rem;padding:.65rem .25rem;text-align:start}
.account-link>span{font-size:1.4em}
.shop-account[dir=rtl] .account-link>span{transform:rotate(180deg)}
.account-activity-item{padding:1.1rem 0;border-bottom:1px solid var(--line,#d2d2d7)}
.account-activity-item:first-child{padding-top:0}.account-activity-item:last-child{border-bottom:0}
.account-activity-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem}
.account-activity-head h3{font-size:1rem;font-weight:600;margin:0}
.account-badge{font-size:.8rem;color:var(--muted,#59595e);border:1px solid var(--line,#d2d2d7);border-radius:2rem;padding:.2rem .65rem}
.shop-account summary{cursor:pointer;min-height:2.75rem;padding-block:.6rem;font-weight:550}
.account-note{white-space:pre-wrap}
.account-recovery{padding-block:.75rem;border-bottom:1px solid var(--line,#d2d2d7)}
.account-sign-out{padding:1rem .25rem}.account-sign-out p{font-size:.875rem}
.account-status,.account-error{margin:1rem 0;min-height:1.5rem;overflow-wrap:anywhere}
.account-error{color:#b42318}.shop-account [hidden]{display:none!important}
@media(prefers-color-scheme:dark){.account-panel{background:var(--surface,#1d1d1f)}.account-field input{background:var(--bg,#111113)}.account-error{color:#ff9c94}.account-button.primary{background:#0071e3;color:#fff}}
@media(prefers-reduced-motion:reduce){.shop-account *{scroll-behavior:auto;transition:none;animation:none}}
@media(prefers-contrast:more){.account-panel,.account-field input,.account-button,.account-badge{border-color:currentColor}.account-muted,.account-meta{color:inherit}}
