/* Subscriptions · unified warm editorial design, 2026-10-27 */
.psy-subscription-page{background:#f5f9f5;color:#204536;min-height:100vh}
.psy-subscription-page .site-header{position:relative;z-index:30}
.psy-subs-main{max-width:1270px;margin:auto;padding:52px 24px 82px}
.psy-subs-intro{text-align:center;position:relative;max-width:920px;margin:0 auto 46px}
.psy-subs-kicker,.psy-subs-overline{font-size:11px;letter-spacing:.14em;font-weight:900;color:#947044}
.psy-subs-kicker{display:inline-block;background:#fff4dc;border:1px solid #ebdac0;padding:9px 14px;border-radius:999px}
.psy-subs-intro h1{font-size:clamp(35px,4.6vw,62px);font-weight:850;line-height:1.1;letter-spacing:-.042em;margin:19px auto 17px;max-width:830px;color:#1c3d2f}
.psy-subs-intro>p{font-size:17px;line-height:1.7;max-width:705px;margin:0 auto;color:#5f7869}
.psy-subs-highlights{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:25px 0}
.psy-subs-highlights span{font-size:12px;font-weight:750;color:#3b7253;padding:8px 13px;background:#e8f3eb;border:1px solid #d0e4d6;border-radius:100px}
.psy-subs-status{max-width:740px;margin:22px auto 0;padding:14px 20px;background:#fff;border:1px solid #c9decf;border-radius:15px;font-size:14px;line-height:1.6;color:#356c4d;box-shadow:0 7px 20px rgba(35,75,48,.035)}
.psy-subs-status[data-status="error"]{background:#fff5f1;color:#935a4b;border-color:#e8cdc1}
.psy-subs-section-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 24px}
.psy-subs-section-heading h2{font-size:clamp(26px,3vw,38px);line-height:1.14;letter-spacing:-.035em;margin:7px 0 0;color:#1e4434}
.psy-subs-section-heading>p{font-size:13px;color:#6b8575;margin:0 0 2px;max-width:340px;text-align:right}
.psy-subs-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px}
.psy-subs-plans:has(.psy-subs-trial[hidden]){grid-template-columns:repeat(2,minmax(0,420px));justify-content:center}
.psy-subs-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:29px 28px 22px;background:#fff;border:1px solid #d3e5d7;border-radius:24px;box-shadow:0 16px 34px rgba(31,73,45,.05);overflow:hidden}
.psy-subs-card[hidden]{display:none!important}
.psy-subs-card::before{content:"";position:absolute;height:7px;left:0;right:0;top:0;background:#a7cdb4}
.psy-subs-trial{background:#fffbf5;border-color:#e9dac1}
.psy-subs-trial::before{background:#deb77d}
.psy-subs-featured{background:#fcfffc;border:2px solid #3c9167;box-shadow:0 19px 44px rgba(34,105,68,.13);transform:translateY(-3px)}
.psy-subs-featured::before{background:#34885e}
.psy-subs-team{background:#f5faf7}
.psy-subs-team::before{background:#81a99a}
.psy-subs-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;min-height:24px}
.psy-subs-label{font-size:10px;letter-spacing:.12em;font-weight:900;color:#668472}
.psy-subs-tag{border-radius:999px;background:#e7f4eb;color:#397553;padding:7px 10px;font-size:11px;font-weight:760}
.psy-subs-trial .psy-subs-tag{background:#f7ead6;color:#986e3e}
.psy-subs-decor{display:grid;place-items:center;margin:23px 0 12px;width:52px;height:52px;background:#e7f3eb;color:#378157;border:1px solid #cfe5d5;border-radius:17px;font-size:25px;font-weight:700}
.psy-subs-trial .psy-subs-decor{background:#f8ecd9;color:#9e7a49;border-color:#efddc3}
.psy-subs-team .psy-subs-decor{background:#e0eee9;color:#437c68}
.psy-subs-card h3{font-size:29px;font-weight:850;letter-spacing:-.04em;line-height:1.12;margin:0 0 6px;color:#1e4634}
.psy-subs-term{font-size:13px;color:#6c8375;margin:0 0 19px;min-height:19px}
.psy-subs-price{font-size:clamp(30px,3.2vw,42px);line-height:1.1;letter-spacing:-.045em;color:#1d6044;font-weight:900;white-space:nowrap;margin:0 0 5px}
.psy-subs-price small{font-size:14px;font-weight:700;letter-spacing:0;color:#768d7d}
.psy-subs-price-note{font-size:12px;color:#9a7950;margin:2px 0 14px;font-weight:700}
.psy-subs-description{font-size:14px;line-height:1.65;color:#64796b;margin:13px 0 24px;min-height:70px}
.psy-subs-list-label{font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:850;color:#5a7f64;margin:0 0 14px}
.psy-subs-card ul{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:12px}
.psy-subs-card li{font-size:13px;line-height:1.5;padding-left:26px;position:relative;color:#3d5e4c}
.psy-subs-card li::before{content:"✓";position:absolute;left:0;top:-1px;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:#e0f1e5;color:#2f8c58;font-size:12px;font-weight:900}
.psy-subs-action{display:flex;align-items:center;justify-content:center;min-height:48px;width:100%;border-radius:12px;padding:10px 15px;box-sizing:border-box;font-size:13px;font-weight:850;text-align:center;margin-top:auto}
button.psy-subs-action{border:0;cursor:pointer}
.psy-subs-action-main{background:#257553;color:#fff;box-shadow:0 6px 12px rgba(31,112,76,.12)}
.psy-subs-action-main:not(:disabled):hover{background:#185b40}
.psy-subs-action-main:disabled{opacity:.7;cursor:wait}
.psy-subs-action-main:focus-visible{outline:3px solid #d2b578;outline-offset:2px}
.psy-subs-unavailable{background:#eaf1ec;border:1px solid #d6e4d9;color:#6b8878;cursor:default}
.psy-subs-detail{font-size:11px;line-height:1.6;color:#82968a;margin:14px 0 0}
.psy-subs-compare{margin:76px 0 0}
.psy-subs-table-scroll{background:#fff;border:1px solid #d1e3d6;border-radius:22px;overflow-x:auto;box-shadow:0 14px 35px rgba(39,91,57,.055)}
.psy-subs-table-scroll:focus-visible{outline:3px solid #649d7a;outline-offset:3px}
.psy-subs-table{border-collapse:separate;border-spacing:0;width:100%;min-width:690px;color:#304f3d;table-layout:fixed}
.psy-subs-table caption{text-align:left;caption-side:bottom;padding:12px 19px;font-size:12px;color:#738b7a;border-top:1px solid #ebf2ec}
.psy-subs-table th,.psy-subs-table td{padding:15px 20px;border-bottom:1px solid #e6efe8}
.psy-subs-table thead th{background:#e8f2ec;color:#23563b;font-size:14px;font-weight:850;text-align:center;line-height:1.3}
.psy-subs-table thead th:first-child{width:43%;text-align:left}
.psy-subs-table thead th:not(:first-child){width:19%}
.psy-subs-table thead th small{display:block;font-size:11px;font-weight:650;margin-top:6px;color:#6d8a79}
.psy-subs-table .psy-subs-col-featured{background:#d6eadd;color:#1d5b3e}
.psy-subs-table tbody th{text-align:left;font-size:13px;font-weight:650;line-height:1.35}
.psy-subs-table tbody td{text-align:center}
.psy-subs-table tbody tr:last-child td,.psy-subs-table tbody tr:last-child th{border-bottom:0}
.psy-subs-table tbody tr:not(.psy-subs-group):nth-child(odd){background:#fbfdfb}
.psy-subs-table .psy-subs-group th{background:#f2f7f3;color:#4d7b5d;text-transform:uppercase;font-size:11px;letter-spacing:.08em;text-align:left;padding:13px 20px;font-weight:900}
.psy-subs-yes,.psy-subs-no{display:inline-grid;width:28px;height:28px;place-items:center;border-radius:50%;font-weight:900;font-size:18px}
.psy-subs-yes{background:#e0f3e5;color:#218249}
.psy-subs-no{background:#f5eceb;color:#b27a75}
.psy-subs-table-note{font-size:13px;line-height:1.6;color:#6c8072;margin:15px 9px 0}
.psy-subs-foot{margin:56px auto 0;max-width:980px;border-radius:22px;background:#fff;border:1px solid #dce8dc;padding:30px 34px}
.psy-subs-foot h2{margin:0 0 13px;font-size:22px}
.psy-subs-foot p{color:#5c7665;font-size:14px;line-height:1.75}
.psy-subs-back{display:inline-flex;margin-top:10px;padding:12px 19px;background:#276d4f;color:#fff!important;font-weight:750;border-radius:11px;text-decoration:none}
.psy-subs-footer{padding:26px 20px;text-align:center;background:#214b39;color:#d6e8db;font-size:12px}
@media(max-width:900px){.psy-subs-plans{grid-template-columns:repeat(2,minmax(0,1fr))}.psy-subs-plans:has(.psy-subs-trial[hidden]){grid-template-columns:repeat(2,minmax(0,1fr))}.psy-subs-intro>p{font-size:15px}}
@media(max-width:640px){.psy-subs-main{padding:28px 14px 56px}.psy-subs-intro{margin-bottom:37px}.psy-subs-plans,.psy-subs-plans:has(.psy-subs-trial[hidden]){grid-template-columns:1fr}.psy-subs-featured{transform:none}.psy-subs-card{padding:25px 22px 21px}.psy-subs-section-heading{align-items:start;flex-direction:column;gap:6px}.psy-subs-section-heading>p{text-align:left}.psy-subs-compare{margin-top:53px}.psy-subs-foot{padding:23px 21px}.psy-subs-table th,.psy-subs-table td{padding:12px 13px}.psy-subs-highlights{gap:6px}.psy-subs-highlights span{font-size:11px;padding:7px 9px}}
html.dark .psy-subscription-page{background:#152a24;color:#e3f1e6}
html.dark .psy-subs-intro h1,html.dark .psy-subs-section-heading h2{color:#e7f3e8}
html.dark .psy-subs-intro>p,html.dark .psy-subs-section-heading>p,html.dark .psy-subs-description,html.dark .psy-subs-card li,html.dark .psy-subs-foot p,html.dark .psy-subs-table-note{color:#bad0c1}
html.dark .psy-subs-card,html.dark .psy-subs-foot,html.dark .psy-subs-table-scroll{background:#243d32;border-color:#4c6856;color:#e2efe3}
html.dark .psy-subs-trial{background:#36382b}
html.dark .psy-subs-featured{background:#254338;border-color:#72ad89}
html.dark .psy-subs-team{background:#253d37}
html.dark .psy-subs-card h3,html.dark .psy-subs-price{color:#d4edda}
html.dark .psy-subs-term,html.dark .psy-subs-price small,html.dark .psy-subs-detail{color:#a8bfad}
html.dark .psy-subs-status{background:#213d2f;color:#d4efdc;border-color:#52745c}
html.dark .psy-subs-highlights span,html.dark .psy-subs-tag{background:#315243;color:#dbefe0;border-color:#50725c}
html.dark .psy-subs-unavailable{background:#345244;color:#c8dccb;border-color:#5b7f68}
html.dark .psy-subs-table{color:#d5eadb}
html.dark .psy-subs-table thead th,html.dark .psy-subs-table .psy-subs-group th{background:#30513e;color:#e3f4e6}
html.dark .psy-subs-table .psy-subs-col-featured{background:#39714d}
html.dark .psy-subs-table thead th small{color:#c1dcc6}
html.dark .psy-subs-table th,html.dark .psy-subs-table td,html.dark .psy-subs-table caption{border-color:#456450}
html.dark .psy-subs-table tbody tr:not(.psy-subs-group):nth-child(odd){background:#284438}

/* One-time monthly checkout preview. No payment fields or fake checkout. */
.psy-payment-information{margin:66px 0 0}
.psy-payment-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.psy-payment-steps>div{background:#fff;border:1px solid #d3e4d8;border-radius:20px;padding:24px;min-width:0}
.psy-payment-step-number{display:grid;place-items:center;width:37px;height:37px;border:1px solid #c1ddc9;border-radius:12px;background:#edf6ef;color:#3c7555;font-weight:900;margin-bottom:16px}
.psy-payment-steps h3{font-size:17px;color:#28533a;line-height:1.25;margin:0 0 10px}
.psy-payment-steps p{font-size:13px;line-height:1.65;margin:0;color:#687f70}
.psy-payment-status{margin:23px 0 12px;padding:15px 19px;border-radius:13px;background:#edf5ee;color:#356b49;border:1px solid #c7dfcc;font-size:14px;line-height:1.5}
.psy-payment-status[data-state="success"]{border-color:#7cb78c;background:#e4f4e7;color:#1e6d3d}
.psy-payment-status[data-state="error"]{border-color:#ebc0ad;background:#fff1e9;color:#985541}
button.psy-subs-unavailable{font:inherit;font-weight:800;font-size:13px;cursor:not-allowed}
button.psy-subs-unavailable:disabled{opacity:1}
button.psy-subs-unavailable:not(:disabled){background:#267451;color:#fff;border-color:#267451;cursor:pointer}
button.psy-subs-unavailable:not(:disabled):hover{background:#205f43}
@media(max-width:760px){.psy-payment-steps{grid-template-columns:1fr}.psy-payment-information{margin-top:52px}.psy-payment-steps>div{padding:20px}}
html.dark .psy-payment-steps>div{background:#243d32;border-color:#50705a}
html.dark .psy-payment-steps h3{color:#d2edda}
html.dark .psy-payment-steps p{color:#c1d4c7}
html.dark .psy-payment-step-number{background:#355b42;border-color:#5f8568;color:#d9f0dc}
html.dark .psy-payment-status{background:#2e4a38;border-color:#56775c;color:#d6eeda}
