
/* Simple Membership Suite v1.3.7 — Premium Member Home */
.sms-member-home{
  position:relative;overflow:hidden;box-sizing:border-box;
  max-width:1100px;margin:0 auto 34px;padding:0 0 30px;
  border:1px solid #e4e9f0;border-radius:24px;background:#fff;
  box-shadow:0 18px 55px rgba(11,35,65,.12);font-family:inherit;text-align:center;
}
.sms-member-home:before{
  content:"";display:block;height:8px;
  background:linear-gradient(90deg,#0B2341 0 68%,#D4AF37 68% 100%);
}
.sms-member-home-premium{
  background:linear-gradient(180deg,#fffdf5 0,#fff 48%,#f8fbff 100%);
}
.sms-member-home-brand{
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:25px 20px 12px;color:#0B2341;font-size:12px;font-weight:900;
  letter-spacing:.10em;
}
.sms-member-home-brandmark{
  display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;
  border-radius:10px;background:#0B2341;color:#D4AF37;font-size:14px;letter-spacing:0;
}
.sms-member-home-brandmark:before{content:"FF";}
.sms-member-home-badge{
  display:inline-flex;align-items:center;justify-content:center;
  margin:4px auto 14px;padding:8px 14px;border-radius:999px;
  background:#fff4c7;border:1px solid #ead37b;color:#6d5500;
  font-size:12px;font-weight:900;letter-spacing:.06em;
}
.sms-member-home h2{
  max-width:760px;margin:0 auto 10px;padding:0 20px;color:#0B2341!important;
  font-size:clamp(28px,4vw,42px)!important;line-height:1.08!important;font-weight:900!important;
}
.sms-member-home-lead{
  max-width:720px;margin:0 auto 22px;padding:0 22px;color:#526274!important;
  font-size:17px!important;line-height:1.65!important;
}
.sms-member-home-primary,.sms-member-home-upgrade{
  display:inline-flex!important;align-items:center;justify-content:center;
  min-height:52px;padding:0 24px;border-radius:12px;text-decoration:none!important;
  font-size:14px;font-weight:900;letter-spacing:.02em;transition:.18s ease;
}
.sms-member-home-primary{background:#0B2341!important;color:#fff!important;box-shadow:0 10px 24px rgba(11,35,65,.22)}
.sms-member-home-primary:hover{transform:translateY(-2px);background:#14385f!important}
.sms-member-home-upgrade{background:#D4AF37!important;color:#0B2341!important}
.sms-member-home-actions{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;
  max-width:940px;margin:28px auto 0;padding:0 24px;text-align:left;
}
.sms-member-action-card{
  display:grid!important;grid-template-columns:48px 1fr;column-gap:13px;align-items:start;
  box-sizing:border-box;min-width:0;padding:20px;border:1px solid #e1e7ee;border-radius:17px;
  background:#fff!important;color:#0B2341!important;text-decoration:none!important;
  box-shadow:0 8px 22px rgba(15,23,42,.06);transition:.18s ease;
}
.sms-member-action-card:hover{transform:translateY(-3px);border-color:#d4af37;box-shadow:0 14px 30px rgba(15,23,42,.11)}
.sms-member-action-icon{
  grid-row:1/3;display:flex;width:44px;height:44px;align-items:center;justify-content:center;
  border-radius:13px;background:#0B2341;color:#D4AF37;font-weight:900;font-size:16px;
}
.sms-member-action-card strong{display:block;color:#0B2341!important;font-size:16px;line-height:1.3;margin:1px 0 6px}
.sms-member-action-card small{display:block;color:#657487!important;font-size:13px;line-height:1.45}
.sms-member-home-free-buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;padding:0 20px}
#sms-membership-details{scroll-margin-top:110px}
@media(max-width:780px){
 .sms-member-home{border-radius:18px}
 .sms-member-home-actions{grid-template-columns:1fr;padding:0 16px}
 .sms-member-home-primary,.sms-member-home-upgrade{width:calc(100% - 32px);box-sizing:border-box}
 .sms-member-home-brand{font-size:10px}
}


/* v1.3.8 — Membership cancellation UI */
.sms-membership-manage-box{
  max-width:940px;margin:24px auto;padding:20px 22px;border:1px solid #e2e8f0;border-radius:18px;
  background:linear-gradient(135deg,#fff,#f8fbff);box-shadow:0 8px 24px rgba(15,23,42,.06)
}
.sms-membership-manage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.sms-membership-manage-head small{display:block;color:#7c5b00;font-size:10px;font-weight:900;letter-spacing:.09em}
.sms-membership-manage-head h3{margin:4px 0 5px;color:#0B2341}
.sms-membership-manage-head p{margin:0;color:#64748b;font-size:13px}
.sms-membership-status-active{display:inline-flex;padding:7px 11px;border-radius:999px;background:#dcfce7;color:#166534;font-size:10px;font-weight:900}
.sms-membership-manage-actions{display:flex;align-items:center;gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid #e2e8f0}
.sms-membership-manage-actions p{margin:0;color:#64748b;font-size:12px;line-height:1.45}
.sms-danger{background:#b91c1c!important;color:#fff!important;border-color:#b91c1c!important}
.sms-cancel-modal[hidden]{display:none!important}
.sms-cancel-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px}
.sms-cancel-modal-backdrop{position:absolute;inset:0;background:rgba(11,35,65,.72);backdrop-filter:blur(3px)}
.sms-cancel-modal-card{position:relative;z-index:2;width:min(520px,100%);padding:28px;border-radius:20px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.28);text-align:center}
.sms-cancel-modal-close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:#64748b;font-size:28px;cursor:pointer}
.sms-cancel-modal-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 12px;border-radius:50%;background:#fee2e2;color:#b91c1c;font-size:26px;font-weight:900}
.sms-cancel-modal-card h3{margin:0 0 10px;color:#0B2341;font-size:24px}
.sms-cancel-modal-card p{margin:0 auto 20px;color:#64748b;line-height:1.6}
.sms-cancel-modal-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.sms-cancel-confirm-form{margin:0}
@media(max-width:700px){
 .sms-membership-manage-head,.sms-membership-manage-actions{flex-direction:column}
 .sms-membership-manage-actions .sms-button{width:100%}
 .sms-cancel-modal-actions{flex-direction:column}
 .sms-cancel-modal-actions .sms-button{width:100%}
}


/* v1.3.9 — Compact My Membership controls */
.sms-membership-manage-box{
  max-width:940px!important;
  margin:18px auto!important;
  padding:14px 16px!important;
  border-radius:14px!important;
  box-shadow:0 5px 16px rgba(15,23,42,.05)!important;
}
.sms-membership-manage-head{
  align-items:center!important;
}
.sms-membership-manage-head small{
  font-size:9px!important;
}
.sms-membership-manage-head h3{
  font-size:16px!important;
  margin:2px 0 3px!important;
}
.sms-membership-manage-head p{
  font-size:11px!important;
}
.sms-membership-status-active{
  padding:5px 9px!important;
  font-size:9px!important;
}
.sms-membership-manage-actions{
  margin-top:10px!important;
  padding-top:10px!important;
}
.sms-membership-manage-actions p{
  font-size:10px!important;
}
.sms-open-cancel-modal{
  padding:8px 12px!important;
  font-size:11px!important;
  border-radius:9px!important;
  min-height:auto!important;
}

/* Keep the confirmation modal readable but not oversized */
.sms-cancel-modal-card{
  width:min(440px,100%)!important;
  padding:22px!important;
  border-radius:16px!important;
}
.sms-cancel-modal-icon{
  width:46px!important;
  height:46px!important;
  font-size:22px!important;
  margin-bottom:10px!important;
}
.sms-cancel-modal-card h3{
  font-size:20px!important;
}
.sms-cancel-modal-card p{
  font-size:13px!important;
  margin-bottom:16px!important;
}
.sms-cancel-modal-actions .sms-button{
  padding:9px 13px!important;
  font-size:11px!important;
}
