
/* ============================================================
   Account page - forms, buy list, orders   (13 Sep 2026)
   ============================================================ */
.acct{max-width:1000px}
.acct-msg{margin:0 0 1.2rem;padding:.75rem 1rem;border-radius:12px;font-weight:700;font-size:.92rem;
  border:1px solid var(--surface-ring)}
.acct-msg.is-ok{color:var(--accent)}
.acct-msg.is-error{color:#e0455f;border-color:#e0455f}
.acct-grid{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.acct-card{border:1px solid var(--surface-ring);border-radius:var(--radius-lg,20px);
  padding:clamp(1.1rem,2.5vw,1.7rem);background:var(--bg-sunk)}
.acct-card h3{margin:0 0 .9rem;font-size:1.15rem}
.acct-card .acct-h-sp{margin-top:1.8rem}
.acct-card label{display:block;margin-bottom:.75rem;font-size:.82rem;font-weight:700;color:var(--text-soft)}
.acct-card input[type=text],.acct-card input[type=email],.acct-card input[type=tel],
.acct-card input[type=password],.acct-card input:not([type]){display:block;width:100%;margin-top:.3rem;
  padding:.62rem .8rem;border-radius:10px;border:1px solid var(--surface-ring);
  background:var(--bg,#fff);color:inherit;font:inherit;font-weight:500}
.acct-card input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.acct-row{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.acct-check{display:flex;gap:.55rem;align-items:flex-start;font-weight:500;line-height:1.35;margin:.9rem 0 1rem}
.acct-check input{margin-top:.15rem;flex:none}
.acct-note{font-size:.8rem;color:var(--text-soft);margin:.6rem 0 0}
.acct-dim{color:var(--text-soft);font-weight:500}
.acct-or{display:flex;align-items:center;gap:.8rem;margin:1.1rem 0;color:var(--text-soft);font-size:.8rem}
.acct-or::before,.acct-or::after{content:"";flex:1;height:1px;background:var(--surface-ring)}
.acct-head{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between;margin-bottom:1.2rem}
.acct-head p{margin:0}

.buy-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.buy-list li{border:1px solid var(--surface-ring);border-radius:12px}
.buy-item{display:block;padding:.65rem .75rem}
.buy-head{display:grid;grid-template-columns:1fr auto auto;gap:.7rem;align-items:center}
.buy-name{font-weight:700;font-size:.9rem}
.buy-price{font-weight:800;color:var(--accent);font-size:.9rem}
.btn--sm{padding:.35rem .8rem;font-size:.8rem}
.buy-pp-toggle{margin-top:.55rem;width:100%}
.buy-pp{margin-top:.55rem;min-height:38px}
.buy-pp:empty{display:none}

.order-list{display:grid;gap:.45rem}
.order-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:.6rem;align-items:center;
  padding:.55rem .7rem;border:1px solid var(--surface-ring);border-radius:10px;font-size:.85rem}
.order-id{font-weight:800;color:var(--text-soft)}
.order-items{font-weight:600}
.order-amt{font-weight:800}
.order-status{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;
  padding:.15rem .5rem;border-radius:999px;border:1px solid currentColor}
.order-status.is-paid{color:#1f9d55}
.order-status.is-created{color:var(--text-soft)}
.order-status.is-failed{color:#e0455f}

@media (max-width:520px){.acct-row{grid-template-columns:1fr}}
@media (max-width:420px){.buy-head{grid-template-columns:1fr;gap:.35rem}}
