/* ── Card de plan — usa las variables --ao-* del sistema global (my.css), sin fallbacks de Bootstrap ── */
.jd-plan-card {
 background: var(--ao-bg-card, var(--ao-bg));
 border: 1px solid var(--ao-border2);
 border-radius: 16px;
 padding: 28px 24px 24px;
 position: relative;
 display: flex;
 flex-direction: column;
 gap: 16px;
 transition: border-color .25s, transform .25s, box-shadow .25s;
}
.jd-plan-card:hover {
 border-color: var(--ao-gold);
 transform: translateY(-4px);
 box-shadow: 0 16px 40px rgba(0,0,0,.35);
}
.jd-plan-card--featured {
 border-color: var(--ao-gold);
 border-width: 2px;
 box-shadow: 0 0 24px rgba(201,168,76,.18);
}
.jd-plan-card--featured:hover { box-shadow: 0 20px 46px rgba(0,0,0,.4), 0 0 30px rgba(201,168,76,.3); }
.jd-plan-card__ribbon {
 position: absolute;
 top: -13px; left: 50%; transform: translateX(-50%);
 font-family: 'Alegreya SC', serif;
 font-size: .55rem;
 letter-spacing: .16em;
 text-transform: uppercase;
 padding: 4px 16px;
 border-radius: 20px;
 white-space: nowrap;
 font-weight: 700;
 background: var(--ao-gold);
 color: #1a0d0d;
 box-shadow: 0 4px 14px rgba(201,168,76,.5);
}
.jd-plan-card__cover { border-radius: 10px; overflow: hidden; max-height: 120px; }
.jd-plan-card__cover img { width: 100%; height: 120px; object-fit: cover; display: block; }
.jd-plan-card__name {
 font-family: 'Alegreya SC', serif;
 font-size: 1.05rem;
 font-weight: 700;
 color: var(--ao-text);
 margin-bottom: 4px;
}
.jd-plan-card__desc { font-size: .82rem; color: var(--ao-muted); line-height: 1.5; margin: 0; }
.jd-plan-card__price-box { display: flex; flex-direction: column; gap: 3px; }
.jd-plan-card__price-old { font-size: .75rem; color: var(--ao-muted); text-decoration: line-through; opacity: .7; }
.jd-plan-card__price { display: flex; align-items: baseline; gap: 3px; }
.jd-plan-card__price-from { font-size: .65rem; color: var(--ao-muted); letter-spacing: .08em; }
.jd-plan-card__currency { font-size: 1rem; font-weight: 700; color: var(--ao-gold); align-self: flex-start; padding-top: 4px; }
.jd-plan-card__amount { font-family: 'Alegreya SC', serif; font-size: 2.1rem; font-weight: 900; color: var(--ao-gold); line-height: 1; }
.jd-plan-card__period { font-size: .6rem; letter-spacing: .14em; text-transform: uppercase; color: var(--ao-muted); }
.jd-plan-card__divider { height: 1px; background: var(--ao-border2); }
.jd-plan-card__features { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.jd-plan-card__features li { font-size: .83rem; color: var(--ao-muted); display: flex; align-items: flex-start; gap: 9px; line-height: 1.4; padding: 0; }
.jd-plan-card__features li::before { content: '◆'; font-size: .45rem; color: var(--ao-gold); flex-shrink: 0; margin-top: 5px; }
.jd-plan-card__features--success li::before { content: '✓'; font-size: .7rem; color: #56ca00; margin-top: 2px; }
.jd-plan-card__actions { margin-top: auto; }
.jd-plan-card__cta {
 font-family: 'Alegreya Sans', sans-serif;
 font-size: .78rem;
 font-weight: 700;
 letter-spacing: .08em;
 text-transform: uppercase;
 padding: 13px 20px;
 border-radius: 8px;
 border: 1px solid var(--ao-border2);
 background: transparent;
 color: var(--ao-gold2, var(--ao-gold));
 text-decoration: none;
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 8px;
 cursor: pointer;
 transition: all .25s;
 width: 100%;
}
.jd-plan-card__cta:hover { background: rgba(201,168,76,.1); border-color: var(--ao-gold); color: var(--ao-text); text-decoration: none; }
.jd-plan-card__cta--primary {
 background: linear-gradient(135deg, var(--ao-gold), #a97b1e);
 border-color: rgba(255,255,255,.15);
 color: #1a0d0d;
 box-shadow: 0 4px 20px rgba(201,168,76,.35);
}
.jd-plan-card__cta--primary:hover { box-shadow: 0 8px 28px rgba(201,168,76,.55); color: #1a0d0d; }
.jd-plan-card__cta--current { border-color: rgba(86,202,0,.4); color: #56ca00; cursor: default; pointer-events: none; opacity: .85; }

.jd-plan-success-card {
 background: var(--ao-bg-card, var(--ao-bg));
 border: 1px solid rgba(86,202,0,.35);
 border-radius: 16px;
 padding: 24px;
 box-shadow: 0 0 24px rgba(86,202,0,.08);
}
.jd-plan-success-card__inner { display: flex; align-items: flex-start; gap: 18px; }
.jd-plan-success-card__cover { width: 72px; height: 72px; border-radius: 10px; overflow: hidden; flex-shrink: 0; }
.jd-plan-success-card__cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.jd-plan-success-card__info { flex: 1; min-width: 0; }
.jd-plan-success-card__name { font-family: 'Alegreya SC', serif; font-size: 1rem; font-weight: 700; color: var(--ao-text); margin-bottom: 5px; }
.jd-plan-success-card__desc { font-size: .82rem; color: var(--ao-muted); line-height: 1.5; margin: 0 0 10px; }
.jd-plan-success-card__price-row { display: flex; align-items: baseline; gap: 8px; }
.jd-plan-success-card__price { font-family: 'Alegreya SC', serif; font-size: 1.3rem; font-weight: 900; color: var(--ao-gold); }
.jd-plan-success-card__period { font-size: .6rem; letter-spacing: .12em; text-transform: uppercase; color: var(--ao-muted); }
.jd-plan-success-card__divider { height: 1px; background: var(--ao-border2); margin: 18px 0 14px; }
.jd-breadcrumb { display: flex; align-items: center; gap: 8px; font-size: .6rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ao-muted); margin-bottom: 22px; flex-wrap: wrap; }
.jd-breadcrumb a { color: var(--ao-gold2, var(--ao-gold)); text-decoration: none; }
.jd-breadcrumb a:hover { color: var(--ao-gold); }
.jd-breadcrumb__sep { opacity: .4; }

.jd-checkout-steps { display: flex; align-items: center; gap: 0; margin-bottom: 28px; font-size: .58rem; letter-spacing: .08em; text-transform: uppercase; }
.jd-checkout-steps__step { display: flex; align-items: center; gap: 7px; color: var(--ao-muted); }
.jd-checkout-steps__step.active { color: var(--ao-gold); }
.jd-checkout-steps__step.done { color: #56ca00; }
.jd-checkout-steps__num { width: 22px; height: 22px; border-radius: 50%; border: 1px solid currentColor; display: flex; align-items: center; justify-content: center; font-size: .6rem; flex-shrink: 0; }
.jd-checkout-steps__step.active .jd-checkout-steps__num { background: var(--ao-gold); border-color: var(--ao-gold); color: #1a0d0d; }
.jd-checkout-steps__step.done .jd-checkout-steps__num { background: #56ca00; border-color: #56ca00; color: #fff; }
.jd-checkout-steps__sep { flex: 1; height: 1px; background: var(--ao-border2); margin: 0 10px; min-width: 20px; }

.jd-checkout-layout { display: grid; grid-template-columns: 1fr 380px; gap: 24px; align-items: start; }
@media (max-width: 900px) { .jd-checkout-layout { grid-template-columns: 1fr; } .jd-checkout-sidebar { order: -1; } }

.jd-panel { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-border2); border-radius: 14px; overflow: hidden; margin-bottom: 20px; }
.jd-panel__head { padding: 16px 22px 14px; border-bottom: 1px solid var(--ao-border2); display: flex; align-items: center; gap: 10px; }
.jd-panel__title { font-family: 'Alegreya SC', serif; font-size: .85rem; font-weight: 700; letter-spacing: .04em; color: var(--ao-text); }
.jd-panel__body { padding: 22px; }

.jd-plan-summary { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-gold); border-radius: 14px; overflow: hidden; position: sticky; top: 20px; }
.jd-plan-summary__head { padding: 22px 22px 16px; background: rgba(201,168,76,.06); border-bottom: 1px solid var(--ao-border2); }
.jd-plan-summary__eyebrow { font-size: .56rem; letter-spacing: .2em; color: var(--ao-gold2, var(--ao-gold)); text-transform: uppercase; margin-bottom: 8px; }
.jd-plan-summary__name { font-family: 'Alegreya SC', serif; font-size: 1.25rem; font-weight: 900; color: var(--ao-text); margin-bottom: 4px; }
.jd-plan-summary__badge { font-size: .55rem; letter-spacing: .12em; text-transform: uppercase; padding: 3px 10px; border-radius: 4px; background: rgba(201,168,76,.15); color: var(--ao-gold); border: 1px solid rgba(201,168,76,.35); display: inline-block; }
.jd-plan-summary__body { padding: 18px 22px; }
.jd-plan-summary__row { display: flex; align-items: center; justify-content: space-between; padding: 9px 0; border-bottom: 1px solid var(--ao-border2); font-size: .85rem; }
.jd-plan-summary__row:last-of-type { border-bottom: none; }
.jd-plan-summary__row-label { color: var(--ao-muted); }
.jd-plan-summary__row-value { font-size: .78rem; font-weight: 700; color: var(--ao-text); }
.jd-plan-summary__row-value.green { color: #56ca00; }
.jd-plan-summary__back { display: flex; align-items: center; gap: 6px; font-size: .6rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ao-muted); text-decoration: none; padding: 14px 22px 16px; border-top: 1px solid var(--ao-border2); }
.jd-plan-summary__back:hover { color: var(--ao-gold2, var(--ao-gold)); }

.jd-checkout-secure { display: flex; align-items: center; gap: 10px; padding: 12px 16px; background: rgba(86,202,0,.06); border: 1px solid rgba(86,202,0,.25); border-radius: 10px; margin-bottom: 20px; font-size: .8rem; color: var(--ao-muted); }

.jd-breadcrumb { display: flex; align-items: center; gap: 8px; font-size: .6rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ao-muted); margin-bottom: 26px; flex-wrap: wrap; }
.jd-breadcrumb a { color: var(--ao-gold2, var(--ao-gold)); text-decoration: none; }
.jd-breadcrumb__sep { opacity: .4; }

.jd-checkout-steps { display: flex; align-items: center; gap: 0; margin-bottom: 32px; font-size: .58rem; letter-spacing: .08em; text-transform: uppercase; }
.jd-checkout-steps__step { display: flex; align-items: center; gap: 7px; color: #56ca00; }
.jd-checkout-steps__num { width: 22px; height: 22px; border-radius: 50%; border: 1px solid currentColor; display: flex; align-items: center; justify-content: center; font-size: .6rem; flex-shrink: 0; background: #56ca00; color: #fff; }
.jd-checkout-steps__sep { flex: 1; height: 1px; background: #56ca00; opacity: .35; margin: 0 10px; min-width: 20px; }

.jd-success-hero { position: relative; background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid rgba(86,202,0,.4); border-radius: 18px; padding: 52px 36px 44px; text-align: center; margin-bottom: 22px; overflow: hidden; }
.jd-success-hero::before { content: 'ᚠ ᚢ ᚦ ᚨ ᚱ ᚲ ✦ ✧ ◈ ⬡ ★ ✦'; position: absolute; inset: -10px; font-size: 2rem; color: rgba(86,202,0,.04); letter-spacing: 16px; line-height: 2.4; word-break: break-all; pointer-events: none; }
.jd-success-hero__inner { position: relative; z-index: 1; }
.jd-success-hero__shield { width: 84px; height: 84px; border-radius: 50%; background: radial-gradient(circle, rgba(86,202,0,.18) 0%, transparent 70%); border: 2px solid rgba(86,202,0,.5); display: flex; align-items: center; justify-content: center; margin: 0 auto 18px; font-size: 2.3rem; box-shadow: 0 0 26px rgba(86,202,0,.3); }
.jd-success-hero__eyebrow { font-size: .58rem; letter-spacing: .28em; color: #56ca00; text-transform: uppercase; margin-bottom: 10px; display: flex; align-items: center; justify-content: center; gap: 10px; }
.jd-success-hero__title { font-family: 'Alegreya SC', serif; font-size: clamp(1.5rem, 3.2vw, 2.3rem); font-weight: 900; color: var(--ao-text); margin-bottom: 8px; }
.jd-success-hero__title span { color: var(--ao-gold); }
.jd-success-hero__plan { font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ao-gold2, var(--ao-gold)); margin-bottom: 12px; }
.jd-success-hero__subtitle { font-size: .93rem; color: var(--ao-muted); line-height: 1.6; max-width: 460px; margin: 0 auto 26px; }
.jd-success-hero__actions { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

.jd-success-xp { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-gold); border-radius: 12px; padding: 16px 22px; margin-bottom: 22px; display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.jd-success-xp__icon { font-size: 1.5rem; flex-shrink: 0; }
.jd-success-xp__title { font-family: 'Alegreya SC', serif; font-size: .86rem; font-weight: 700; color: var(--ao-gold); margin-bottom: 3px; }
.jd-success-xp__sub { font-size: .8rem; color: var(--ao-muted); }
.jd-success-xp__badge { font-size: .78rem; font-weight: 900; color: var(--ao-gold); background: rgba(201,168,76,.12); border: 1px solid rgba(201,168,76,.35); padding: 8px 16px; border-radius: 8px; white-space: nowrap; }

.jd-success-steps-title { font-family: 'Alegreya SC', serif; font-size: .86rem; font-weight: 700; color: var(--ao-text); display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.jd-success-steps-title::before { content: ''; width: 3px; height: 16px; background: var(--ao-gold); border-radius: 2px; }
.jd-success-next-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; margin-bottom: 26px; }
.jd-success-next-card { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-border2); border-radius: 12px; padding: 20px 18px; display: flex; align-items: flex-start; gap: 14px; text-decoration: none; transition: border-color .25s, transform .25s; }
.jd-success-next-card:hover { border-color: var(--ao-gold); transform: translateY(-3px); }
.jd-success-next-card__icon { width: 42px; height: 42px; border-radius: 10px; background: rgba(201,168,76,.12); display: flex; align-items: center; justify-content: center; font-size: 1.1rem; color: var(--ao-gold); flex-shrink: 0; }
.jd-success-next-card--green .jd-success-next-card__icon { background: rgba(86,202,0,.1); color: #56ca00; }
.jd-success-next-card__name { font-family: 'Alegreya SC', serif; font-size: .82rem; font-weight: 700; color: var(--ao-text); margin-bottom: 4px; }
.jd-success-next-card__desc { font-size: .78rem; color: var(--ao-muted); line-height: 1.45; }

.jd-success-body { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-border2); border-radius: 12px; overflow: hidden; margin-bottom: 22px; }
.jd-success-body__head { padding: 14px 20px; border-bottom: 1px solid var(--ao-border2); display: flex; align-items: center; gap: 10px; }
.jd-success-body__head-title { font-family: 'Alegreya SC', serif; font-size: .8rem; font-weight: 700; color: var(--ao-muted); letter-spacing: .04em; }
.jd-success-body__inner { padding: 18px 20px; font-size: .85rem; color: var(--ao-muted); line-height: 1.6; }

.btn-jd-primary, .btn-jd-outline { font-weight: 700; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; padding: 13px 28px; border-radius: 8px; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; cursor: pointer; transition: all .25s; }
.btn-jd-primary--green { background: linear-gradient(135deg, #56ca00, #3d9100); border: 1px solid rgba(255,255,255,.15); color: #fff; box-shadow: 0 4px 18px rgba(86,202,0,.35); }
.btn-jd-primary--green:hover { box-shadow: 0 8px 26px rgba(86,202,0,.55); color: #fff; transform: translateY(-2px); }
.btn-jd-outline { background: transparent; border: 1px solid var(--ao-border2); color: var(--ao-gold2, var(--ao-gold)); }
.btn-jd-outline:hover { background: rgba(201,168,76,.08); border-color: var(--ao-gold); color: var(--ao-text); transform: translateY(-2px); }

.jd-confetti-particle { position: fixed; width: 8px; height: 8px; border-radius: 2px; pointer-events: none; z-index: 99999; animation: confettiFall linear forwards; }
@keyframes confettiFall { 0%{transform:translateY(-20px) rotate(0deg);opacity:1;} 100%{transform:translateY(100vh) rotate(720deg);opacity:0;} }

.jd-breadcrumb { display: flex; align-items: center; gap: 8px; font-size: .6rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ao-muted); margin-bottom: 24px; flex-wrap: wrap; }
.jd-breadcrumb a { color: var(--ao-gold2, var(--ao-gold)); text-decoration: none; }
.jd-breadcrumb__sep { opacity: .4; }

.jd-mysubs-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 24px; flex-wrap: wrap; }
.jd-mysubs-header__eyebrow { font-size: .6rem; letter-spacing: .25em; color: var(--ao-gold2, var(--ao-gold)); text-transform: uppercase; margin-bottom: 6px; }
.jd-mysubs-header__title { font-family: 'Alegreya SC', serif; font-size: clamp(1.2rem, 2.5vw, 1.8rem); font-weight: 900; color: var(--ao-text); line-height: 1.15; }
.jd-mysubs-header__title span { color: var(--ao-gold); }
.jd-mysubs-header__sub { font-size: .86rem; color: var(--ao-muted); margin-top: 6px; }

.btn-jd-primary, .btn-jd-outline { font-weight: 700; font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; padding: 12px 24px; border-radius: 8px; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; cursor: pointer; transition: all .25s; white-space: nowrap; }
.btn-jd-primary { background: linear-gradient(135deg, var(--ao-gold), #a97b1e); border: 1px solid rgba(255,255,255,.15); color: #1a0d0d; box-shadow: 0 4px 18px rgba(201,168,76,.3); }
.btn-jd-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 26px rgba(201,168,76,.5); color: #1a0d0d; }
.btn-jd-outline { background: transparent; border: 1px solid var(--ao-border2); color: var(--ao-gold2, var(--ao-gold)); }
.btn-jd-outline:hover { background: rgba(201,168,76,.08); border-color: var(--ao-gold); color: var(--ao-text); transform: translateY(-2px); }

.jd-mysubs-body { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-border2); border-radius: 16px; overflow: hidden; margin-bottom: 24px; }
.jd-mysubs-body__head { padding: 16px 22px; border-bottom: 1px solid var(--ao-border2); display: flex; align-items: center; gap: 10px; }
.jd-mysubs-body__head-title { font-family: 'Alegreya SC', serif; font-size: .85rem; font-weight: 700; color: var(--ao-text); letter-spacing: .04em; }
.jd-mysubs-body__inner { padding: 22px; font-size: .86rem; color: var(--ao-text); }
.jd-mysubs-body__inner table { width: 100%; border-collapse: collapse; font-size: .86rem; }
.jd-mysubs-body__inner table th { font-size: .58rem; letter-spacing: .12em; text-transform: uppercase; color: var(--ao-muted); padding: 10px 14px; border-bottom: 1px solid var(--ao-border2); font-weight: 400; text-align: left; white-space: nowrap; }
.jd-mysubs-body__inner table td { padding: 13px 14px; border-bottom: 1px solid var(--ao-border2); color: var(--ao-text); vertical-align: middle; }
.jd-mysubs-body__inner table tr:last-child td { border-bottom: none; }
.jd-mysubs-body__inner a { color: var(--ao-gold2, var(--ao-gold)); text-decoration: none; }
.jd-mysubs-body__inner a:hover { color: var(--ao-gold); }
.jd-mysubs-body__inner .button-link, .jd-mysubs-body__inner input[type="submit"], .jd-mysubs-body__inner button {
 font-size: .62rem !important; letter-spacing: .1em !important; text-transform: uppercase !important; padding: 9px 18px !important;
 background: transparent !important; border: 1px solid var(--ao-border2) !important; border-radius: 7px !important;
 color: var(--ao-gold2, var(--ao-gold)) !important; cursor: pointer !important; transition: all .2s !important;
 display: inline-flex !important; align-items: center !important; gap: 6px !important; text-decoration: none !important;
}
.jd-mysubs-body__inner .button-link:hover, .jd-mysubs-body__inner input[type="submit"]:hover, .jd-mysubs-body__inner button:hover {
 background: rgba(201,168,76,.08) !important; border-color: var(--ao-gold) !important; color: var(--ao-text) !important;
}
.jd-mysubs-body__inner .subs-page-header { display: none; }

.jd-mysubs-empty { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-border2); border-radius: 16px; padding: 56px 32px; text-align: center; margin-bottom: 24px; }
.jd-mysubs-empty__icon { font-size: 2.6rem; color: var(--ao-muted); opacity: .22; margin-bottom: 14px; }
.jd-mysubs-empty__title { font-family: 'Alegreya SC', serif; font-size: 1rem; font-weight: 700; color: var(--ao-text); margin-bottom: 8px; }
.jd-mysubs-empty__sub { font-size: .86rem; color: var(--ao-muted); line-height: 1.6; margin-bottom: 22px; max-width: 360px; margin-left: auto; margin-right: auto; }

.jd-mysubs-info-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; margin-bottom: 24px; }
.jd-mysubs-info-card { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-border2); border-radius: 12px; padding: 18px 18px 14px; position: relative; overflow: hidden; transition: border-color .25s, transform .25s; }
.jd-mysubs-info-card:hover { border-color: var(--ao-gold); transform: translateY(-3px); }
.jd-mysubs-info-card__label { font-size: .58rem; letter-spacing: .18em; text-transform: uppercase; color: var(--ao-muted); margin-bottom: 8px; }
.jd-mysubs-info-card__value { font-family: 'Alegreya SC', serif; font-size: 1.3rem; font-weight: 700; color: var(--ao-text); line-height: 1; margin-bottom: 4px; }
.jd-mysubs-info-card__value.green { color: #56ca00; }
.jd-mysubs-info-card__value.gold { color: var(--ao-gold); font-size: 1rem; }
.jd-mysubs-info-card__sub { font-size: .78rem; color: var(--ao-muted); }
.jd-mysubs-info-card__icon { position: absolute; right: 14px; top: 14px; width: 38px; height: 38px; border-radius: 9px; display: flex; align-items: center; justify-content: center; font-size: 1.1rem; background: rgba(201,168,76,.12); color: var(--ao-gold); }

.jd-mysubs-upgrade { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-gold); border-radius: 16px; padding: 26px 28px; display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.jd-mysubs-upgrade__icon { width: 52px; height: 52px; border-radius: 14px; background: rgba(201,168,76,.14); display: flex; align-items: center; justify-content: center; font-size: 1.5rem; flex-shrink: 0; }
.jd-mysubs-upgrade__text { flex: 1; min-width: 180px; }
.jd-mysubs-upgrade__title { font-family: 'Alegreya SC', serif; font-size: .95rem; font-weight: 700; color: var(--ao-text); margin-bottom: 5px; }
.jd-mysubs-upgrade__sub { font-size: .82rem; color: var(--ao-muted); line-height: 1.5; }

.jd-breadcrumb { display: flex; align-items: center; gap: 8px; font-size: .6rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ao-muted); margin-bottom: 24px; flex-wrap: wrap; }
.jd-breadcrumb a { color: var(--ao-gold2, var(--ao-gold)); text-decoration: none; }
.jd-breadcrumb__sep { opacity: .4; }

.jd-payments-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 24px; flex-wrap: wrap; }
.jd-payments-header__eyebrow { font-size: .6rem; letter-spacing: .25em; color: var(--ao-gold2, var(--ao-gold)); text-transform: uppercase; margin-bottom: 6px; }
.jd-payments-header__title { font-family: 'Alegreya SC', serif; font-size: clamp(1.15rem, 2.5vw, 1.7rem); font-weight: 900; color: var(--ao-text); line-height: 1.15; margin-bottom: 5px; }
.jd-payments-header__title span { color: var(--ao-gold); }
.jd-payments-header__desc { font-size: .86rem; color: var(--ao-muted); line-height: 1.5; max-width: 500px; }

.btn-jd-primary, .btn-jd-outline { font-weight: 700; font-size: .65rem; letter-spacing: .1em; text-transform: uppercase; padding: 12px 22px; border-radius: 8px; text-decoration: none; display: inline-flex; align-items: center; gap: 8px; cursor: pointer; transition: all .25s; white-space: nowrap; }
.btn-jd-primary { background: linear-gradient(135deg, var(--ao-gold), #a97b1e); border: 1px solid rgba(255,255,255,.15); color: #1a0d0d; box-shadow: 0 4px 18px rgba(201,168,76,.3); }
.btn-jd-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 26px rgba(201,168,76,.5); color: #1a0d0d; }
.btn-jd-outline { background: transparent; border: 1px solid var(--ao-border2); color: var(--ao-gold2, var(--ao-gold)); }
.btn-jd-outline:hover { background: rgba(201,168,76,.08); border-color: var(--ao-gold); color: var(--ao-text); transform: translateY(-2px); }

.jd-panel { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-border2); border-radius: 16px; overflow: hidden; margin-bottom: 24px; }
.jd-panel__head { padding: 16px 22px; border-bottom: 1px solid var(--ao-border2); display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.jd-panel__head-left { display: flex; align-items: center; gap: 10px; }
.jd-panel__title { font-family: 'Alegreya SC', serif; font-size: .85rem; font-weight: 700; color: var(--ao-text); letter-spacing: .04em; }
.jd-panel__count { font-size: .58rem; letter-spacing: .1em; text-transform: uppercase; padding: 4px 12px; border-radius: 20px; background: rgba(201,168,76,.12); color: var(--ao-gold2, var(--ao-gold)); border: 1px solid rgba(201,168,76,.3); }

.jd-payments-inner { font-size: .86rem; color: var(--ao-text); }
.jd-payments-inner table { width: 100%; border-collapse: collapse; }
.jd-payments-inner table th { font-size: .57rem; letter-spacing: .14em; text-transform: uppercase; color: var(--ao-muted); padding: 10px 14px; border-bottom: 1px solid var(--ao-border2); font-weight: 400; text-align: left; white-space: nowrap; }
.jd-payments-inner table td { padding: 13px 14px; border-bottom: 1px solid var(--ao-border2); color: var(--ao-text); vertical-align: middle; line-height: 1.4; }
.jd-payments-inner table tr:last-child td { border-bottom: none; }
.jd-payments-inner a { color: var(--ao-gold2, var(--ao-gold)); text-decoration: none; }
.jd-payments-inner a:hover { color: var(--ao-gold); }
.jd-payments-inner .button-link, .jd-payments-inner input[type="submit"], .jd-payments-inner button {
 font-size: .6rem !important; letter-spacing: .1em !important; text-transform: uppercase !important; padding: 8px 16px !important;
 background: transparent !important; border: 1px solid var(--ao-border2) !important; border-radius: 7px !important;
 color: var(--ao-gold2, var(--ao-gold)) !important; cursor: pointer !important; transition: all .2s !important;
 display: inline-flex !important; align-items: center !important; gap: 6px !important; text-decoration: none !important;
}
.jd-payments-inner .button-link:hover, .jd-payments-inner input[type="submit"]:hover, .jd-payments-inner button:hover {
 background: rgba(201,168,76,.08) !important; border-color: var(--ao-gold) !important; color: var(--ao-text) !important;
}
.jd-payments-inner .subs-page-header { display: none; }

.jd-payments-empty { background: var(--ao-bg-card, var(--ao-bg)); border: 1px solid var(--ao-border2); border-radius: 16px; padding: 52px 32px; text-align: center; margin-bottom: 24px; }
.jd-payments-empty__icon { font-size: 2.4rem; color: var(--ao-muted); opacity: .2; margin-bottom: 12px; }
.jd-payments-empty__title { font-family: 'Alegreya SC', serif; font-size: 1rem; font-weight: 700; color: var(--ao-text); margin-bottom: 8px; }
.jd-payments-empty__sub { font-size: .86rem; color: var(--ao-muted); line-height: 1.6; margin-bottom: 20px; max-width: 360px; margin-left: auto; margin-right: auto; }

.jd-payments-notice { display: flex; align-items: flex-start; gap: 12px; padding: 14px 18px; background: rgba(201,168,76,.06); border: 1px solid rgba(201,168,76,.25); border-radius: 10px; margin-bottom: 20px; font-size: .82rem; color: var(--ao-muted); line-height: 1.55; }

.jd-payments-nav { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 22px; }
.jd-payments-nav__link { font-size: .6rem; letter-spacing: .1em; text-transform: uppercase; padding: 8px 16px; border-radius: 6px; border: 1px solid var(--ao-border2); color: var(--ao-muted); background: transparent; text-decoration: none; transition: all .2s; display: inline-flex; align-items: center; gap: 6px; }
.jd-payments-nav__link:hover, .jd-payments-nav__link.active { background: rgba(201,168,76,.1); border-color: var(--ao-gold); color: var(--ao-gold2, var(--ao-gold)); }