/* Members-area additions on top of the copied public site style.css.
   Do not edit /workspace/website/site/style.css from this project. */

.members-main{padding:2.2rem 0 3.5rem}
.members-intro{max-width:38em;margin:0 auto 2rem}
.members-intro h1{margin-bottom:.4rem}
.members-intro .lede{font-size:1.2rem;color:var(--muted);margin:0}

.plan-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:1.1rem;
  margin:1.6rem 0 2rem;
}
.plan-card{
  background:var(--cream);
  border:1px solid var(--line);
  border-radius:10px;
  padding:1.3rem 1.25rem 1.4rem;
  display:flex;
  flex-direction:column;
  gap:.55rem;
  box-shadow:0 8px 24px rgba(59,47,42,.06);
}
.plan-card.featured{
  border-color:var(--gold);
  box-shadow:0 10px 28px rgba(82,50,120,.1);
}
.plan-card h2{
  font-family:var(--display);
  font-size:1.55rem;
  margin:0;
}
.plan-price{
  font-family:var(--display);
  font-size:2.15rem;
  color:var(--plum);
  line-height:1;
  margin:0;
}
.plan-price span{
  font-family:var(--serif);
  font-size:1rem;
  color:var(--muted);
  font-weight:500;
}
.plan-card p{margin:0;color:var(--ink)}
.plan-card .hint{color:var(--muted);font-size:1.02rem}
.plan-card .btn{margin-top:auto;width:100%;text-align:center}
.plan-status{min-height:1.3em;font-size:.98rem;color:var(--plum-deep);margin:.2rem 0 0}
.friend-note,.use-terms-members{
  max-width:40em;
  margin:0 auto 1.1rem;
  color:var(--muted);
}
.form-panel{
  max-width:26rem;
  margin:0 auto;
  background:var(--cream);
  border:1px solid var(--line);
  border-radius:10px;
  padding:1.4rem 1.3rem 1.5rem;
  box-shadow:0 8px 24px rgba(59,47,42,.06);
}
.form-panel label{
  display:block;
  font-family:var(--sc);
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--plum-deep);
  margin:0 0 .35rem;
}
.form-panel input[type="email"]{
  width:100%;
  font:inherit;
  font-size:1.1rem;
  padding:.7rem .8rem;
  border:1px solid var(--line);
  border-radius:6px;
  background:#fff;
  color:var(--ink);
  margin-bottom:1rem;
}
.form-panel .btn{width:100%}
.form-msg{margin:.8rem 0 0;min-height:1.3em;color:var(--plum-deep)}
.form-msg.is-error{color:#7a2a2a}
.account-card{
  max-width:32rem;
  margin:0 auto;
  background:var(--cream);
  border:1px solid var(--line);
  border-radius:10px;
  padding:1.4rem 1.3rem;
}
.account-card dl{margin:0 0 1.2rem}
.account-card dt{
  font-family:var(--sc);
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  margin-top:.8rem;
}
.account-card dd{margin:.15rem 0 0;font-size:1.15rem}
.account-actions{display:flex;flex-wrap:wrap;gap:.7rem}
.library-toolbar{margin:0 0 1.2rem}
.download-list{list-style:none;margin:.4rem .55rem 1rem;padding:0}
.download-list li{margin:0 0 .4rem}
.download-list button,
.download-list .dl-btn{
  font:inherit;
  font-family:var(--sc);
  font-size:.68rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  background:transparent;
  color:var(--plum);
  border:1px solid var(--gold);
  border-radius:999px;
  padding:.35rem .7rem;
  cursor:pointer;
}
.download-list button:hover,
.download-list .dl-btn:hover{background:#fff8ea}
.product.physical .physical-note{
  margin:0 .55rem 1rem;
  color:var(--muted);
  font-size:.98rem;
}
.gate-note{
  max-width:32rem;
  margin:1rem auto 0;
  text-align:center;
}
.nav-user{display:none}

@media (min-width:800px){
  .plan-grid{grid-template-columns:repeat(3,1fr);align-items:stretch}
  .nav-user{display:inline;margin-left:.4rem;color:var(--muted);font-size:.95rem}
}

@media (min-width:1100px){
  .members-main{padding-top:2.6rem}
}

.admin-heading{margin:2rem 0 .8rem}
.admin-form{margin:0 auto 2rem}
.admin-form h2,.form-panel h2{font-size:1.35rem;margin:0 0 .8rem}
.admin-form .hint,.admin-list .hint{color:var(--muted);margin:0 0 .8rem}
.admin-list{display:grid;gap:1rem;margin-bottom:2rem}
.admin-code{
  background:var(--cream);
  border:1px solid var(--line);
  border-radius:10px;
  padding:1.1rem 1.15rem 1.2rem;
}
.admin-code.is-off{opacity:.85}
.admin-code h3{margin:0 0 .3rem;word-break:break-word}
.admin-code .btn{margin-top:.6rem}
.admin-used{margin:.4rem 0 0;padding-left:1.1rem}
.form-panel input[type="text"],
.form-panel input[type="password"],
.form-panel input[type="number"]{
  width:100%;
  font:inherit;
  font-size:1.1rem;
  padding:.7rem .8rem;
  border:1px solid var(--line);
  border-radius:6px;
  background:#fff;
  color:var(--ink);
  margin-bottom:1rem;
}

.legal-notes {
  margin: 1.75rem 0 0;
  max-width: 38rem;
}
.legal-notes h2 {
  font-family: var(--serif-display, "Cormorant Garamond", Georgia, serif);
  font-size: 1.35rem;
  margin: 0 0 0.6rem;
  color: var(--plum, #523278);
}
.legal-notes p,
.legal-notes-inline {
  margin: 0 0 0.75rem;
  max-width: 38rem;
  line-height: 1.55;
}
.library-page .use-terms-members {
  margin-top: 0.85rem;
}
