/* Account feedback is persistent, scoped, and does not alter the shared header. */
.account-feedback { padding:16px 18px; margin:18px 0; border:1px solid #d9c9b5; border-radius:14px; background:#fff8eb; color:#513d25; font-size:14px; line-height:1.6; overflow-wrap:anywhere; }
.account-feedback[hidden] { display:none !important; }
.account-feedback.is-error { border-color:#d49c91; background:#fff2ee; color:#822d20; }
.account-feedback.is-success { border-color:#aac3aa; background:#edf5eb; color:#294f2e; }
.account-feedback ul { padding-left:20px; margin:0; }
.account-feedback p { margin:0; }
.account-feedback a { text-decoration:underline; font-weight:700; }
.account-feedback button { margin-top:10px; }
.account-main { padding:150px 20px 72px; min-height:70vh; }
.account-card { width:min(100%,540px); margin-inline:auto; border-radius:24px; padding:clamp(22px,5vw,40px); background:#fffdf8; border:1px solid #e4d9c8; box-shadow:0 20px 60px #30201512; }
.account-card h1 { font-size:clamp(28px,5vw,38px); line-height:1.15; margin:12px 0 20px; }
.account-card p { line-height:1.65; overflow-wrap:anywhere; }
.account-form { display:grid; gap:12px; margin:24px 0 16px; }
.account-form label { font-size:14px; font-weight:700; }
.account-form input { box-sizing:border-box; width:100%; min-width:0; padding:13px 14px; border:1px solid #c9c0b2; border-radius:10px; background:#fff; color:#211a14; font:inherit; font-size:16px; }
.account-form input:focus-visible { outline:3px solid #ad7c35; outline-offset:2px; }
.account-form input[name=code] { letter-spacing:.18em; font-size:24px; font-variant-numeric:tabular-nums; }
.account-form .button { margin-top:8px; width:100%; white-space:normal; }
.account-form small { line-height:1.5; color:#625447; }
.account-links { display:flex; flex-wrap:wrap; gap:14px 22px; margin-top:24px; align-items:center; }
.account-links form { margin:0; }
.account-links .text-link { font-size:14px; }
.account-bonus { color:#79521b; font-weight:600; }
.profile-email-box { margin:20px 0; }
.profile-email-box a { display:inline-block; margin-top:10px; }
.pickup-notice { padding:14px 16px; margin:16px 0; background:#f6efe3; border:1px solid #e0d1b9; border-radius:12px; color:#554334; font-size:13px; line-height:1.6; }
.pickup-notice strong { display:block; color:#36261b; }
.account-recovery-link { display:inline-block; margin:10px 0; text-decoration:underline; font-size:14px; }
[data-access-panel] [aria-invalid=true] { border-color:#a84331; }
@media(max-width:600px) { .account-main { padding:110px 14px 40px; } .account-card { border-radius:18px; } .account-links { flex-direction:column; align-items:flex-start; } }
