.monthly-payoff-summary{background:#fff;border:1px solid #dce5fa;border-radius:22px;padding:20px;margin:16px 0;color:#172b60}.monthly-payoff-summary header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.monthly-payoff-summary h2{font-size:1.15rem;margin:0}.monthly-payoff-summary header>span,.monthly-payoff-summary details{font-size:.82rem;color:#526793}.monthly-payoff-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.monthly-payoff-values>div{min-width:0;background:#f1f5ff;border-radius:14px;padding:14px}.monthly-payoff-values span{display:block;font-size:.85rem;color:#526793}.monthly-payoff-values strong{font-size:clamp(1rem,2.7vw,1.55rem);overflow-wrap:anywhere;display:block;margin-top:6px}.monthly-payoff-values>div:last-child strong{color:#079f79}.monthly-payoff-summary summary{cursor:pointer}.monthly-payoff-summary details p{line-height:1.6;margin:8px 0}@media(max-width:600px){.monthly-payoff-summary{padding:15px}.monthly-payoff-values{gap:7px}.monthly-payoff-values>div{padding:10px 7px}}
/* Keep the complete currency amount together on a narrow phone. */
.calculate-month-panel{container-type:inline-size}.calculate-month-panel .monthly-payoff-summary{margin:0}.calculate-month-panel .monthly-payoff-values strong{white-space:nowrap;overflow-wrap:normal;font-size:clamp(.85rem,3.2cqi,1.35rem);overflow-x:auto}
@media(max-width:600px){.monthly-payoff-values{grid-template-columns:1fr}.monthly-payoff-values>div{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;padding:10px 12px}.monthly-payoff-values strong{white-space:nowrap;overflow-wrap:normal;max-width:100%;overflow-x:auto;margin:0;font-size:clamp(.85rem,4.2vw,1.1rem)}}
.membership-compare{box-sizing:border-box;width:min(860px,calc(100vw - 24px));max-height:94dvh;overflow:auto;border:1px solid #dde5fa;border-radius:28px;padding:32px;background:linear-gradient(135deg,#fbfdff,#f5f3ff);color:#12205a;box-shadow:0 20px 90px #0c174d40}.membership-compare::backdrop{background:#10234d80}.membership-close{position:absolute;right:15px;top:9px;background:none;border:0;font-size:32px;cursor:pointer;color:#102052}.membership-compare h2{font-size:clamp(1.7rem,4vw,2.6rem);margin:9px 0 4px}.membership-subtitle{color:#526392;margin:0 0 22px}.membership-table-wrap{border:1px solid #e2e5f4;border-radius:20px;overflow:hidden}.membership-compare table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:.95rem;background:#ffffff90}.membership-compare th,.membership-compare td{padding:10px;border-bottom:1px solid #e6e8f3;vertical-align:middle}.membership-compare th:first-child{width:54%;text-align:left;font-weight:500}.membership-compare thead th{font-weight:750!important}.membership-compare th:nth-child(2),.membership-compare td:nth-child(2){background:#f0edff80;text-align:center}.membership-compare th:nth-child(3),.membership-compare td:nth-child(3){background:#fff4df80;text-align:center}.membership-compare .included{color:#09b97a;font-size:1.5rem;font-weight:900}.membership-compare .excluded{color:#ff4776;font-size:1.5rem;font-weight:900}.membership-price{text-align:center;margin:22px 0 0;font-size:1.25rem}.membership-price strong{font-size:2.6rem}.membership-tax,.membership-payment-note,.membership-renewal{text-align:center;color:#536492;font-size:.9rem;margin:7px 0}.membership-status{font-size:.85rem;color:#435788;text-align:center;min-height:1.2em}.membership-confirm,.membership-continue{display:block;width:100%;padding:17px;min-height:56px;border-radius:17px;font-size:1.1rem;font-weight:750;cursor:pointer}.membership-confirm{border:0;background:linear-gradient(110deg,#8952ff,#5b2dff);color:white;margin-top:15px}.membership-confirm:disabled{opacity:.6;cursor:wait}.membership-continue{margin-top:12px;background:#efedff;border:1px solid #c7c1ff;color:#542cff}.membership-continue small{display:block;font-size:.8rem;font-weight:400;margin-top:3px}@media(max-width:600px){.membership-compare{padding:20px 13px;border-radius:22px}.membership-compare table{font-size:.72rem}.membership-compare th,.membership-compare td{padding:8px 6px}.membership-compare th:first-child{width:51%}.membership-subtitle{font-size:.85rem}.membership-compare .included,.membership-compare .excluded{font-size:1.25rem}}
/* Show every benefit together; only the complete sheet may scroll on very short screens. */
.membership-compare{max-height:calc(100dvh - 20px);padding:20px 24px;border-radius:24px}
.membership-compare h2{font-size:30px;line-height:1.12;margin:0 30px 5px 0}
.membership-subtitle{font-size:14px;line-height:1.3;margin:0 0 12px}
.membership-table-wrap{max-height:none;overflow:visible;border-radius:18px}
.membership-compare thead{position:static;background:#f8f8ff}
.membership-compare table{font-size:13px;line-height:1.2}
.membership-compare th,.membership-compare td{padding:5px 10px}
.membership-compare thead th{padding-top:9px;padding-bottom:9px}
.membership-compare .included,.membership-compare .excluded{font-size:19px;line-height:1}
.membership-price{margin:12px 0 0;font-size:16px;line-height:1.1}
.membership-price strong{font-size:34px}
.membership-tax,.membership-payment-note,.membership-renewal{font-size:12px;line-height:1.25;margin:5px 0}
.membership-status{font-size:12px;line-height:1.25;min-height:0;margin:5px 0}
.membership-status:empty{display:none}
.membership-confirm,.membership-continue{min-height:44px;padding:9px 14px;font-size:16px;line-height:1.2;border-radius:14px}
.membership-confirm{margin-top:12px}.membership-continue{margin-top:8px}.membership-continue small{font-size:11px;line-height:1.15;margin-top:2px}
@media(max-width:600px){
 .membership-compare{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:14px 12px;border-radius:20px}
 .membership-compare h2{font-size:24px;margin-right:26px}.membership-subtitle{font-size:12px;margin-bottom:10px}
 .membership-compare table{font-size:11.5px;line-height:1.16}.membership-compare th,.membership-compare td{padding:4px 5px}
 .membership-compare th:first-child{width:55%}.membership-compare thead th{font-size:11px;padding-top:7px;padding-bottom:7px}
 .membership-compare .included,.membership-compare .excluded{font-size:16px}
 .membership-price{margin-top:10px;font-size:13px}.membership-price strong{font-size:30px}
 .membership-tax,.membership-payment-note,.membership-renewal{font-size:11px;margin:4px 0}
 .membership-confirm,.membership-continue{font-size:14px}.membership-confirm{margin-top:9px}
}
@media(max-width:600px) and (max-height:740px){
 .membership-compare{width:calc(100vw - 8px);max-width:calc(100vw - 8px);max-height:calc(100dvh - 8px);padding:10px}
 .membership-compare h2{font-size:22px}.membership-subtitle{font-size:11px;line-height:1.15;margin-bottom:6px}
 .membership-compare table{font-size:11px;line-height:1.07}.membership-compare th,.membership-compare td{padding:2px 4px}
 .membership-compare th:first-child{width:60%}.membership-compare thead th{font-size:10px;line-height:1.08;padding:4px}
 .membership-compare .included,.membership-compare .excluded{font-size:14px}
 .membership-price{margin-top:6px}.membership-price strong{font-size:28px}
 .membership-tax,.membership-payment-note,.membership-renewal{font-size:10.5px;line-height:1.12;margin:3px 0}
 .membership-confirm,.membership-continue{font-size:13px;line-height:1.1;padding:6px;min-height:44px}
 .membership-confirm{margin-top:6px}.membership-continue{margin-top:5px}.membership-continue small{font-size:10px;line-height:1;margin-top:1px}
}
.record-weekly{position:relative}.record-weekly [data-weekly-progress]{display:block;text-align:right}.record-weekly-decision{color:#3f5785;font-size:.85rem;line-height:1.5;margin:10px 0 0}
.calculate-card [data-calculate-breakdown]{display:block;font-size:13px;line-height:1.6;margin:9px 0 4px;color:#47628d;font-weight:600;overflow-wrap:anywhere}
.calculate-card .calculate-change.better{color:#009f78}.calculate-card .calculate-change.worse{color:#e63b5b}.calculate-card .calculate-change.unchanged{color:#7b8cae}
