.memberships{max-width:1000px;margin:auto}.membership-intro{padding:16px;background:#f5f0e6;border:1px solid #d9cbb0;border-radius:16px;margin:18px 0}.membership-intro p{font-size:13px;line-height:1.6;margin-bottom:0}.membership-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.membership-tabs button{padding:10px 14px;border:1px solid #ded8ce;background:white;border-radius:10px;color:#817369}.membership-tabs .selected{background:#54233f;color:white}.membership-card{border:1px solid #ded8ce;border-radius:16px;background:#fff;padding:16px;margin:12px 0}.membership-card header{display:flex;justify-content:space-between;gap:12px}.membership-card header small,.membership-archive small{display:block;color:#7c817f;margin-top:4px}.membership-card header>span{font-size:12px;color:#88714c}.membership-balance{display:flex;align-items:baseline;gap:10px;margin-top:14px}.membership-balance b{font-size:28px;color:#817369}.membership-balance span,.membership-card p{font-size:13px}.membership-card details{margin-top:12px;font-size:13px}.membership-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.memberships input,.memberships select{font-size:16px;min-height:44px;max-width:100%}.membership-price{display:flex;align-items:end;gap:12px;padding:14px 0;border-bottom:1px solid #e8e4dc}.membership-price label{flex:1;display:grid;gap:8px}.membership-check{display:flex!important;align-items:center;gap:10px;margin-top:12px}.membership-check input{width:20px!important;min-height:20px!important}.membership-archive{overflow:auto}.membership-archive table{width:100%;border-collapse:collapse;font-size:12px}.membership-archive td,.membership-archive th{text-align:left;padding:10px;border:1px solid #e2ddd2;vertical-align:top}.membership-warning{padding:14px;border:1px solid #c9ad80;border-radius:12px}.membership-home{margin-top:20px}.membership-home>h2{font-size:22px}

.memberships>label{display:grid;gap:8px;margin:16px 0}.memberships input:not([type=checkbox]),.memberships select{width:100%;padding:10px 12px;border:1px solid #ded8ce;border-radius:12px;background:#fff;color:#302b2e;box-sizing:border-box}.membership-price label{min-width:0}

/* Keep the generic full-width outline button from squeezing the price field. */
.memberships .membership-price{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}
.memberships .membership-price>label{min-width:0;display:grid;gap:8px;line-height:1.5}
.memberships .membership-price>button{width:auto;min-width:112px;min-height:44px;margin:0;padding:10px 16px;white-space:nowrap}
.memberships .membership-price input{min-width:0;width:100%}
@media(min-width:600px){.memberships .membership-price>label{grid-template-columns:minmax(0,1fr) 160px;align-items:center}.memberships .membership-price{align-items:center}}
