:root { --navy:#0b172a; --gold:#c59a3b; --paper:#fbfaf7; --ink:#172033; --muted:#5d6879; --line:#ddd7ca; color-scheme:light; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
body { margin:0; background:var(--paper); color:var(--ink); font:1rem/1.6 Arial,Helvetica,sans-serif; }
button,input { font:inherit; }
button,a,input { -webkit-tap-highlight-color:transparent; }
button,a { touch-action:manipulation; }
button { cursor:pointer; }
button:disabled { opacity:.6; cursor:wait; }
a { color:var(--navy); }
:focus-visible { outline:3px solid #b7841d; outline-offset:4px; }
.skip-link { position:absolute; left:20px; top:-100px; background:white; padding:12px; z-index:5; }
.skip-link:focus { top:12px; }
.account-header { display:flex; align-items:center; gap:32px; min-height:94px; padding:14px clamp(20px,5vw,80px); background:white; border-bottom:1px solid var(--line); }
.account-header img { width:110px; height:64px; object-fit:contain; display:block; }
.account-header>span { font-size:.875rem; letter-spacing:.13em; border-left:1px solid var(--line); padding-left:28px; font-weight:700; }
.shop-link { margin-left:auto; text-decoration:none; font-size:.9375rem; font-weight:700; }
.account-shell { width:min(1260px,calc(100% - 40px)); margin:auto; min-height:calc(100vh - 220px); padding:50px 0 70px; }
.signin-card { background:white; width:min(550px,100%); margin:25px auto 55px; padding:clamp(25px,5vw,48px); border:1px solid var(--line); border-top:4px solid var(--gold); border-radius:4px 4px 18px 18px; box-shadow:0 20px 50px #0b172a09; }
.eyebrow { color:#89621b; font-size:.875rem; font-weight:700; letter-spacing:.15em; margin:0 0 14px; }
h1,h2,h3,p { overflow-wrap:anywhere; }
h1 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(2.3rem,5vw,3.5rem); line-height:1.08; margin:0 0 20px; font-weight:400; color:var(--navy); }
h2 { font-size:1.35rem; line-height:1.3; margin:0; }
h3 { font-size:1.1rem; margin:0 0 8px; }
p { margin:0 0 16px; }
.signin-card>p:not(.eyebrow),.form-help,.fine-print,.account-email { color:var(--muted); }
form { margin-top:28px; }
label { display:block; font-weight:700; margin-bottom:8px; }
input { width:100%; min-height:54px; padding:12px 15px; border:1px solid #b7b1a7; border-radius:8px; background:white; color:var(--ink); }
.form-help,.fine-print { font-size:.875rem; line-height:1.55; margin:12px 0 20px; }
.fine-print { margin:20px 0 0; }
.primary,.secondary { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; border-radius:999px; min-height:48px; padding:11px 22px; font-weight:700; }
.primary { background:var(--navy); color:white; border:1px solid var(--navy); width:100%; }
.primary:hover { background:#213754; }
.secondary { background:white; color:var(--navy); border:1px solid #bdb5a7; }
.text-button { background:transparent; color:var(--navy); border:0; text-decoration:underline; text-underline-offset:4px; padding:10px 4px; min-height:44px; }
.signin-card>.text-button { display:block; margin:12px auto 0; }
.notice { border-radius:8px; padding:14px 18px; margin:20px 0; background:#edf6f0; color:#1c5f41; overflow-wrap:anywhere; }
.notice.error { background:#fff0eb; color:#912c1a; }
.account-title { display:flex; align-items:center; justify-content:space-between; gap:25px; margin-bottom:35px; }
.account-title h1 { margin-bottom:10px; }
.account-email { margin:0; font-size:.9375rem; }
.orders-layout { display:grid; grid-template-columns:minmax(260px,340px) minmax(0,1fr); gap:28px; align-items:start; }
.order-list-panel,.order-detail { min-width:0; background:white; border:1px solid var(--line); border-radius:14px; overflow:hidden; }
.panel-heading { display:flex; justify-content:space-between; align-items:center; gap:15px; border-bottom:1px solid var(--line); padding:16px 22px; }
.panel-heading h2 { font-size:1rem; }
.order-button { display:block; width:100%; text-align:left; padding:22px; border:0; border-bottom:1px solid var(--line); background:white; color:var(--ink); }
.order-button:hover,.order-button[aria-current="true"] { background:#f4f0e8; box-shadow:inset 4px 0 var(--gold); }
.order-button>span,.order-button>strong { display:block; }
.order-button strong { margin-bottom:4px; }
.order-button .order-date { color:var(--muted); font-size:.875rem; }
.order-button .status-label { margin-top:9px; color:#3c566d; font-size:.875rem; }
.load-more { display:flex; margin:18px auto; }
.empty-state { padding:35px 28px; color:var(--muted); }
.empty-state h2 { color:var(--navy); margin-bottom:12px; }
.detail-heading { background:var(--navy); color:white; padding:26px 28px; }
.detail-heading h2 { font-family:Georgia,serif; font-size:1.8rem; font-weight:400; }
.detail-heading p { color:#d4dce6; margin:10px 0 0; font-size:.9375rem; }
.detail-section { padding:26px 28px; border-bottom:1px solid var(--line); }
.detail-section:last-child { border-bottom:0; }
.detail-section>h3 { margin-bottom:16px; }
.payment-summary,.selection-list { margin:0; }
.payment-summary>div,.selection-list>div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:20px; border-bottom:1px solid #e9e5dd; padding:11px 0; }
.payment-summary>div:last-child,.selection-list>div:last-child { border:0; }
dt { color:var(--muted); overflow-wrap:anywhere; }
dd { margin:0; font-weight:600; overflow-wrap:anywhere; }
.payment-summary dd { text-align:right; }
.selection-list { font-size:.9375rem; }
.item-heading { display:flex; justify-content:space-between; align-items:start; gap:18px; margin-bottom:14px; }
.item-heading h3 { margin:0; }
.item-heading p { color:var(--muted); font-size:.9375rem; margin:5px 0 0; }
.item-price { white-space:nowrap; font-weight:700; }
.tracking-link { display:block; margin:10px 0; overflow-wrap:anywhere; }
.detail-section .fine-print { margin:15px 0 0; }
footer { padding:25px clamp(20px,5vw,80px); border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:18px; color:var(--muted); font-size:.875rem; }
@media(max-width:760px) { .account-header { gap:16px; padding:12px 20px; flex-wrap:wrap; } .account-header>span { padding-left:16px; } .shop-link { font-size:.875rem; } .account-shell { padding-top:26px; } .orders-layout { grid-template-columns:1fr; } .signin-card { margin-top:10px; } .detail-section,.detail-heading { padding:22px; } footer { flex-direction:column; } }
@media(max-width:420px) { .account-header img { width:86px; } .account-header>span { font-size:.8rem; } .shop-link { flex-basis:100%; text-align:right; } .account-title { align-items:start; gap:14px; } .account-title .secondary { padding:9px 14px; font-size:.875rem; } .payment-summary>div,.selection-list>div { gap:12px; } }

#signInCode { font-size:30px; letter-spacing:.3em; font-variant-numeric:tabular-nums; }
#codeCard .text-button { margin-top:20px; margin-right:20px; }
