/* ===== Client account: chooser, login/signup, dashboard ===== */

/* ---------- Login chooser ---------- */
.account-chooser{padding-block:var(--space-2xl)}
.account-chooser__inner{max-width:44rem}
.account-chooser__inner h1{margin-top:.3rem;margin-bottom:var(--space-lg)}
.account-chooser__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.account-chooser__card{display:flex;flex-direction:column;gap:.6rem;align-items:flex-start;background:var(--color-bg);border:1px solid var(--color-border);padding:1.75rem;transition:border-color var(--dur-fast)}
.account-chooser__card:hover,.account-chooser__card:focus-visible{border-color:var(--color-olive)}
.account-chooser__card h2{font-family:var(--font-serif);font-size:1.4rem;font-weight:400}
.account-chooser__card p{color:var(--color-muted);font-size:.9375rem;line-height:1.6}

@media (max-width:640px){
  .account-chooser__grid{grid-template-columns:1fr}
}

/* ---------- Login / signup ---------- */
.account{padding-block:var(--space-2xl)}
.account__inner{max-width:64rem}
#account-auth{max-width:34rem}
.account-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}
.account-tab{background:transparent;border:1px solid var(--color-border);border-radius:999px;padding:.6rem 1.1rem;font-size:.8125rem;cursor:pointer;color:var(--color-text)}
.account-tab.is-active{background:var(--color-olive);color:var(--color-on-dark);border-color:var(--color-olive)}

.account-form{display:flex;flex-direction:column;gap:1rem}
.account-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.8125rem;font-weight:600}
.account-form input{font:inherit;font-size:.9375rem;font-weight:400;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg);padding:.65rem 1.1rem}
.account-form__hint{font-weight:400;color:var(--color-muted);text-transform:none;letter-spacing:0;font-size:.75rem}
.account-form__error{background:#F6E4E2;color:#7A2E24;padding:.75rem 1rem;font-size:.875rem}
.account-form__success{background:#E3E8DA;color:#3C4A30;padding:.75rem 1rem;font-size:.875rem}
.account-form .btn{align-self:flex-start}

/* ---------- Dashboard ---------- */
.account-dash__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:var(--space-lg);flex-wrap:wrap}
.account-dash__head h1{margin-top:.2rem}
.account-dash__grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.account-card{background:var(--color-bg);border:1px solid var(--color-border);padding:1.5rem}
.account-card h2{font-family:var(--font-serif);font-size:1.15rem;font-weight:400;margin-bottom:1rem}
.account-link-btn{background:none;border:none;padding:0;color:var(--color-olive);text-decoration:underline;cursor:pointer;font:inherit}

.account-order{padding:.9rem 0;border-bottom:1px solid var(--color-border)}
.account-order:last-child{border-bottom:none}
.account-order__head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}
.account-order__id{font-weight:600;font-size:.875rem}
.account-order__meta{color:var(--color-muted);font-size:.8125rem;margin-top:.25rem}
.account-order__items{font-size:.8125rem;margin-top:.15rem}
.account-empty{color:var(--color-muted);font-size:.875rem}

.account-recs{margin-top:1.5rem}
.account-recs__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:1rem}
.account-rec{display:flex;flex-direction:column;gap:.2rem;color:var(--color-text)}
.account-rec:hover .account-rec__name{color:var(--color-olive)}
.account-rec__img{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--color-surface);border:1px solid var(--color-border);margin-bottom:.4rem}
.account-rec__img--placeholder{background:var(--color-surface)}
.account-rec__kind{font-size:.6875rem;font-weight:700;letter-spacing:var(--track-ui);text-transform:uppercase;color:var(--color-muted)}
.account-rec__name{font-size:.875rem;font-weight:600;transition:color var(--dur-fast)}
.account-rec__price{font-size:.8125rem;color:var(--color-muted)}

.admin-status{display:inline-block;padding:.2rem .6rem;font-size:.75rem;border-radius:999px;text-transform:capitalize}
.admin-status--pending_payment{background:#F6E4E2;color:#7A2E24}
.admin-status--deposit_paid{background:#F3E7C9;color:#8A6D1F}
.admin-status--paid{background:#E3E8DA;color:#3C4A30}
.admin-status--fulfilled{background:#DDE6EC;color:#2B4A5E}
.admin-status--cancelled{background:var(--color-border);color:var(--color-muted)}
.admin-link-btn{background:none;border:none;padding:0;color:var(--color-olive);text-decoration:underline;cursor:pointer;font:inherit;font-size:.8125rem}

@media (max-width:720px){
  .account-dash__grid{grid-template-columns:1fr}
}

/* ---------- Favorites ---------- */
.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:1.5rem}
.favorite-card{display:flex;flex-direction:column;gap:.5rem}
.favorite-card__link{display:flex;flex-direction:column;gap:.5rem;color:var(--color-text);text-decoration:none}
.favorite-card__img{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--color-surface);border:1px solid var(--color-border)}
.favorite-card__img--placeholder{background:var(--color-surface)}
.favorite-card__name{font-size:.875rem;font-weight:600}
