/* Subscription plans, access and billing-ready UI */
.subscription-shell{max-width:1220px;margin:0 auto;padding:26px 18px 72px}
.subscription-hero{background:linear-gradient(135deg,#061843,#1646a0 55%,#6d40e8);color:#fff;border-radius:32px;padding:28px;display:grid;grid-template-columns:1.15fr .85fr;gap:20px;box-shadow:0 28px 70px rgba(25,52,125,.22)}
.subscription-hero h1{margin:6px 0 8px;font-size:clamp(30px,4vw,46px)}.subscription-hero p{margin:0;color:#dbeafe;line-height:1.9;max-width:760px}.subscription-hero-status{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-self:end}.subscription-hero-status article{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);border-radius:18px;padding:14px}.subscription-hero-status small{display:block;color:#dbeafe;font-size:10px}.subscription-hero-status strong{display:block;font-size:21px;margin-top:4px}
.subscription-current{margin-top:18px;background:#fff;border:1px solid #dfe8f6;border-radius:24px;padding:20px;box-shadow:0 14px 34px rgba(29,58,122,.075)}.subscription-current-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.subscription-current-main{display:flex;gap:15px;align-items:center}.subscription-current-icon{width:62px;height:62px;border-radius:20px;background:linear-gradient(145deg,#eef4ff,#efeaff);display:grid;place-items:center;font-size:28px}.subscription-current h2{margin:2px 0 4px;color:#10234f}.subscription-current p{margin:0;color:#7183a0;font-size:11px;line-height:1.8}.subscription-current-side{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.subscription-current-side div{background:#f7f9fd;border:1px solid #e5ecf6;border-radius:15px;padding:11px}.subscription-current-side small{display:block;color:#7284a0;font-size:9px}.subscription-current-side strong{display:block;color:#10234f;margin-top:3px;font-size:13px}
.subscription-progress{height:8px;border-radius:999px;background:#e9eff8;overflow:hidden;margin-top:12px}.subscription-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#7c3aed);transition:.25s}
.subscription-plans-head{display:flex;justify-content:space-between;gap:14px;align-items:end;margin:26px 0 12px}.subscription-plans-head h2{margin:3px 0;color:#10234f}.subscription-plans-head p{margin:0;color:#7183a0;font-size:11px}.subscription-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.subscription-plan{background:#fff;border:1px solid #dfe8f5;border-radius:23px;padding:19px;box-shadow:0 12px 30px rgba(29,58,122,.06);position:relative;overflow:hidden}.subscription-plan.featured{border-color:#b9c9ff;box-shadow:0 17px 40px rgba(78,82,210,.12)}.subscription-plan:before{content:"";position:absolute;inset:0 auto auto 0;width:120px;height:120px;border-radius:50%;background:rgba(99,102,241,.045);transform:translate(-45%,-45%)}.subscription-plan-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.subscription-plan-icon{width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,#edf5ff,#f3edff);display:grid;place-items:center;font-size:21px}.subscription-plan-badge{padding:5px 8px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:9px;font-weight:900}.subscription-plan h3{margin:14px 0 3px;color:#10234f}.subscription-plan p{margin:0;color:#7587a2;font-size:10px;line-height:1.7;min-height:34px}.subscription-price{margin:13px 0 9px;display:flex;align-items:end;gap:4px}.subscription-price strong{font-size:29px;color:#10234f}.subscription-price span{font-size:10px;color:#7183a0;margin-bottom:5px}.subscription-plan-meta{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0}.subscription-plan-meta span{background:#f5f8fc;border-radius:999px;padding:5px 7px;color:#60738e;font-size:9px;font-weight:800}.subscription-plan ul{list-style:none;padding:0;margin:12px 0;display:grid;gap:7px}.subscription-plan li{font-size:10px;color:#415a79;display:flex;gap:7px;align-items:center}.subscription-plan li i{color:#16a34a}.subscription-plan .btn{width:100%;justify-content:center}
.subscription-status{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;font-size:9px;font-weight:900}.subscription-status.active{background:#ecfdf5;color:#047857}.subscription-status.pending{background:#fef3c7;color:#b45309}.subscription-status.suspended{background:#fff7ed;color:#c2410c}.subscription-status.expired,.subscription-status.cancelled{background:#f1f5f9;color:#475569}
.subscription-request-list{margin-top:18px;display:grid;gap:9px}.subscription-request{background:#fff;border:1px solid #e0e8f4;border-radius:17px;padding:13px;display:flex;justify-content:space-between;gap:12px;align-items:center}.subscription-request strong,.subscription-request small{display:block}.subscription-request small{color:#7487a3;font-size:9px;margin-top:3px}
.subscription-lock{position:fixed;inset:0;background:rgba(3,13,36,.66);backdrop-filter:blur(8px);z-index:9998;display:grid;place-items:center;padding:18px}.subscription-lock-card{width:min(520px,100%);background:#fff;border-radius:27px;padding:25px;box-shadow:0 30px 90px rgba(0,0,0,.26);text-align:center}.subscription-lock-card>span{width:72px;height:72px;border-radius:23px;margin:0 auto 14px;background:linear-gradient(145deg,#edf4ff,#f0eaff);display:grid;place-items:center;font-size:31px}.subscription-lock-card h2{margin:0 0 7px;color:#10234f}.subscription-lock-card p{margin:0 auto 15px;color:#647892;line-height:1.85;font-size:11px;max-width:390px}.subscription-lock-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.subscription-access-pill{display:inline-flex!important;align-items:center;gap:5px;padding:5px 8px!important;border-radius:999px!important;font-size:9px!important;font-weight:900!important;background:#ecfdf5!important;color:#047857!important}.subscription-access-pill.paid{background:#eef2ff!important;color:#4338ca!important}
.subscription-admin-hero{background:linear-gradient(135deg,#071a4d,#1647a2 55%,#7141e8);color:#fff;border-radius:30px;padding:25px;display:grid;grid-template-columns:1.2fr .8fr;gap:18px;box-shadow:0 24px 58px rgba(30,55,130,.2);margin-bottom:15px}.subscription-admin-hero h2{margin:5px 0 7px;font-size:34px}.subscription-admin-hero p{margin:0;color:#dbeafe;line-height:1.8}.subscription-admin-hero-side{display:grid;grid-template-columns:1fr 1fr;gap:9px;align-self:end}.subscription-admin-hero-side article{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:13px;text-align:center}.subscription-admin-hero-side strong{display:block;font-size:22px}.subscription-admin-hero-side small{color:#dbeafe;font-size:9px}
.subscription-admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.subscription-admin-stats article{background:#fff;border:1px solid #dfe8f5;border-radius:17px;padding:13px;box-shadow:0 8px 22px rgba(29,58,122,.05)}.subscription-admin-stats strong{display:block;font-size:20px;color:#10234f}.subscription-admin-stats small{color:#70829f;font-size:10px}
.subscription-admin-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:16px}.subscription-admin-card{background:#fff;border:1px solid #dfe8f5;border-radius:22px;padding:18px;box-shadow:0 12px 30px rgba(29,58,122,.06)}.subscription-admin-card.full{grid-column:1/-1}.subscription-admin-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:13px}.subscription-admin-head h3{margin:3px 0;color:#10234f}.subscription-admin-head p{margin:0;color:#7183a0;font-size:10px;line-height:1.7}.subscription-admin-head>span{width:44px;height:44px;border-radius:14px;background:#f1f5ff;display:grid;place-items:center;font-size:20px}
.subscription-admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.subscription-admin-form .full{grid-column:1/-1}.subscription-admin-form label{display:grid;gap:5px;font-size:10px;font-weight:900;color:#405570}.subscription-admin-form input,.subscription-admin-form select,.subscription-admin-form textarea{width:100%;border:1px solid #d2dfef;border-radius:11px;padding:9px 10px;background:#fbfdff;font:inherit;color:#10234f}.subscription-admin-form textarea{min-height:84px;resize:vertical}.subscription-subject-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.subscription-subject-checks label{display:flex;align-items:center;gap:6px;padding:8px;border-radius:11px;background:#f7f9fd;border:1px solid #e4ebf5;font-size:9px}.subscription-subject-checks input{width:auto}
.subscription-admin-list{display:grid;gap:8px;max-height:510px;overflow:auto}.subscription-admin-item{border:1px solid #e0e8f4;border-radius:16px;padding:13px;background:#fff}.subscription-admin-item-top{display:flex;justify-content:space-between;gap:10px}.subscription-admin-item strong{display:block;color:#10234f;font-size:11px}.subscription-admin-item small{display:block;color:#7487a3;font-size:9px;margin-top:3px}.subscription-admin-meta{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.subscription-admin-meta span{padding:5px 7px;border-radius:999px;background:#f4f7fb;color:#60738f;font-size:8px;font-weight:800}.subscription-admin-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.subscription-admin-actions button{border:0;border-radius:9px;padding:7px 9px;font:inherit;font-size:8px;font-weight:900;cursor:pointer}.sub-action-main{background:#e0ecff;color:#1d4ed8}.sub-action-good{background:#ecfdf5;color:#047857}.sub-action-warn{background:#fff7ed;color:#c2410c}.sub-action-danger{background:#fff1f2;color:#be123c}.subscription-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:11px}.subscription-toolbar input,.subscription-toolbar select{border:1px solid #d6e1ef;border-radius:11px;padding:9px 10px;font:inherit;font-size:10px}.subscription-toolbar input{flex:1;min-width:180px}
@media(max-width:980px){.subscription-plans{grid-template-columns:1fr 1fr}.subscription-current-grid,.subscription-admin-grid,.subscription-admin-hero{grid-template-columns:1fr}.subscription-admin-card.full{grid-column:auto}.subscription-admin-stats{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.subscription-shell{padding:18px 12px 60px}.subscription-hero{grid-template-columns:1fr;border-radius:24px;padding:20px}.subscription-plans{grid-template-columns:1fr}.subscription-current-grid{grid-template-columns:1fr}.subscription-current-main{align-items:flex-start}.subscription-admin-stats{grid-template-columns:1fr 1fr}.subscription-admin-form{grid-template-columns:1fr}.subscription-admin-form .full{grid-column:auto}.subscription-subject-checks{grid-template-columns:1fr 1fr}.subscription-request{align-items:flex-start;flex-direction:column}}

.subscription-dashboard-strip{margin:14px 0 18px;background:linear-gradient(135deg,#ffffff,#f6f8ff);border:1px solid #dfe7f5;border-radius:21px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:0 10px 26px rgba(32,59,122,.06)}.subscription-dashboard-main{display:flex;align-items:center;gap:11px;min-width:0}.subscription-dashboard-main>span{width:44px;height:44px;border-radius:14px;background:linear-gradient(145deg,#eef4ff,#efeaff);display:grid;place-items:center;color:#5b42d6;font-size:19px;flex:0 0 auto}.subscription-dashboard-main strong,.subscription-dashboard-main small{display:block}.subscription-dashboard-main strong{font-size:12px;color:#10234f}.subscription-dashboard-main small{font-size:9px;color:#7183a0;margin-top:3px}.subscription-dashboard-strip>a{white-space:nowrap;text-decoration:none;font-size:10px;font-weight:900;color:#fff;background:#4f46e5;border-radius:11px;padding:9px 12px}.subscription-dashboard-strip.expiring{border-color:#fed7aa;background:linear-gradient(135deg,#fff,#fffaf3)}.subscription-dashboard-strip.inactive{background:linear-gradient(135deg,#fff,#fafafa)}
.profile-subscription-card{border:1px solid #dfe8f5;background:linear-gradient(135deg,#fff,#f7f8ff)}.profile-subscription-body{display:flex;align-items:center;justify-content:space-between;gap:14px}.profile-subscription-copy strong,.profile-subscription-copy small{display:block}.profile-subscription-copy strong{font-size:15px;color:#10234f}.profile-subscription-copy small{margin-top:4px;color:#7183a0;font-size:10px}.profile-subscription-actions{display:flex;gap:7px;flex-wrap:wrap}.profile-subscription-actions a{text-decoration:none}
@media(max-width:650px){.subscription-dashboard-strip,.profile-subscription-body{align-items:flex-start;flex-direction:column}.subscription-dashboard-strip>a{width:100%;text-align:center}.profile-subscription-actions{width:100%}.profile-subscription-actions .btn{flex:1}}
