/* Membership owns only its page and checkout; the approved shared frame stays unchanged. */
.page-body[data-view="membership"]>.page-head {min-height:58px;margin-bottom:12px}
.mp-workspace {--mp-green:#66795d;--mp-line:rgba(65,71,57,.14);display:grid;gap:10px;padding-bottom:12px;font-size:14px;letter-spacing:0}
.mp-workspace button,.member-checkout-dialog button,.member-checkout-dialog a {letter-spacing:0}
.mp-account {display:flex;align-items:center;gap:13px;padding:14px 0;border-top:1px solid var(--mp-line);border-bottom:1px solid var(--mp-line)}
.mp-account-icon {display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:50%;background:#e5eadc;color:#596e50}
.mp-account-icon svg {width:22px;height:22px}
.mp-account-name {min-width:0;flex:1}
.mp-account-name h2 {font-size:17px;font-weight:500;line-height:1.45;overflow-wrap:anywhere}
.mp-account-name p {font-size:12px;line-height:1.4;color:#60675b;margin-top:3px;overflow-wrap:anywhere}
.mp-account-expiry {display:grid;gap:4px;text-align:right;font-size:12px;color:#62685e}
.mp-account-expiry strong {font-size:15px;font-weight:400;color:#30362e}
.mp-account-usage {display:flex;gap:16px;font-size:13px;color:#60675b;margin-left:12px}
.mp-account-usage b {font-weight:500;color:#30362e}
.mp-plan-tools {display:flex;align-items:center;justify-content:space-between;gap:12px}
.mp-periods {display:flex;padding:3px;background:rgba(255,255,250,.5);border-radius:24px;gap:3px}
.mp-periods button {height:32px;min-width:74px;padding:5px 15px;border-radius:20px;font-size:13px;color:#51594d;transition:background 140ms,color 140ms}
.mp-periods button.active {background:#2e342b;color:#fffef4}
.mp-orders-toggle {display:flex;align-items:center;gap:7px;padding:6px 0 6px 10px;font-size:13px;color:#4b5447}
.mp-orders-toggle svg {width:16px;height:16px}
.mp-orders-toggle>span {font-size:12px;background:rgba(255,255,255,.5);padding:1px 6px;border-radius:10px}
.mp-plans {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}
.mp-plan {display:flex;flex-direction:column;min-width:0;min-height:322px;padding:20px;border-radius:20px;background:#fcfdf8;border:1px solid rgba(255,255,255,.6)}
.mp-plan.standard {background:#fff}
.mp-plan.premium {background:#2c3129;color:#fafbef;border-color:#62684f}
.mp-plan-heading {display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:23px}
.mp-plan-tag {font-size:11px;padding:3px 8px;background:#eef0e4;color:#647456;border-radius:6px;flex-shrink:0}
.mp-plan.premium .mp-plan-tag {background:#555d3d;color:#f8e699}
.mp-plan-heading h2 {font-size:20px;font-weight:400;line-height:1.4;overflow-wrap:anywhere}
.mp-plan-price {display:flex;align-items:baseline;gap:7px;margin-top:8px;min-height:40px}
.mp-plan-price strong {font-size:36px;line-height:1.2;font-weight:400}
.mp-plan-price>span {font-size:12px;color:#7a8174}
.mp-plan.premium .mp-plan-price>span {color:#c0c6ae}
.mp-plan-description {font-size:13px;line-height:1.5;color:#6b7465;min-height:19px;margin:5px 0 8px;overflow-wrap:anywhere}
.mp-plan.premium .mp-plan-description {color:#bdc6b2}
.mp-plan-limits {display:grid;gap:8px;padding:9px 0;border-block:1px solid var(--mp-line);margin:0}
.mp-plan-limits>div {display:flex;justify-content:space-between;align-items:center;gap:10px}
.mp-plan-limits dt {display:flex;align-items:center;gap:7px;font-size:13px}
.mp-plan-limits dt svg {width:15px;height:15px;color:#839274}
.mp-plan-limits dd {font-size:13px;text-align:right;overflow-wrap:anywhere}
.mp-plan.premium .mp-plan-limits {border-color:rgba(239,244,226,.15)}
.mp-plan.premium .mp-plan-limits dt svg {color:#d6dbb6}
.mp-plan-features {display:grid;align-content:start;gap:7px;list-style:none;padding:8px 0;margin:0;flex:1}
.mp-plan-features li {display:flex;align-items:flex-start;gap:7px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.mp-plan-features svg {width:15px;height:15px;margin-top:2px;flex-shrink:0;color:#73875d}
.mp-plan-features .mp-feature-placeholder {color:#7a8173}
.mp-plan.premium .mp-feature-placeholder {color:#bac2ae}
.mp-buy {display:flex;justify-content:center;align-items:center;gap:7px;min-height:37px;width:100%;padding:7px 10px;border-radius:20px;background:#dfe8d3;color:#3f5733;font-size:13px;line-height:1.4;margin-top:5px}
.mp-buy svg {width:15px;height:15px;flex-shrink:0}
.mp-buy:disabled {opacity:1;cursor:not-allowed;background:#edf0e7;color:#727b68}
.mp-plan.premium .mp-buy {background:#f0d66c;color:#363d28}
.mp-plan.premium .mp-buy:disabled {background:#454c3d;color:#bdc6b0}
.mp-payment-availability {display:flex;align-items:center;gap:18px;min-width:0;flex-wrap:wrap;font-size:12px;color:#626b5c;padding:2px 0}
.mp-payment-availability>span {display:flex;gap:5px;align-items:center;white-space:nowrap}
.mp-payment-availability svg {width:15px;height:15px}
.mp-payment-availability p {margin:0;line-height:1.6;margin-left:auto;overflow-wrap:anywhere}
.mp-error {font-size:13px;color:#a14b39;line-height:1.6;margin:0;padding:9px 12px;background:#faf0e8;border-radius:8px;overflow-wrap:anywhere}
.mp-pending {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;background:#f5edc8;color:#645627;font-size:13px}
.mp-pending>span,.mp-pending button {display:flex;align-items:center;gap:7px}
.mp-pending svg {width:16px;height:16px}
.mp-order-history {padding-top:8px;border-top:1px solid var(--mp-line)}
.mp-order-history-head {display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}
.mp-order-history h2 {font-size:16px;font-weight:400}
.mp-order-history-head>span {font-size:12px;color:#747c6c}
.mp-order-list {max-height:210px;overflow:auto;scrollbar-width:thin;overscroll-behavior:contain}
.mp-order-list>button {display:grid;grid-template-columns:minmax(0,1fr) 96px 90px 16px;align-items:center;width:100%;text-align:left;gap:12px;padding:12px 0;border-bottom:1px solid var(--mp-line);font-size:13px}
.mp-order-list strong {display:block;font-size:14px;font-weight:400;overflow-wrap:anywhere}
.mp-order-list small {display:block;color:#72796a;font-size:11px;margin-top:4px;overflow-wrap:anywhere}
.mp-order-list svg {width:16px;height:16px}
.mp-order-state {color:#827443}
.mp-order-state.paid {color:#4e7540}
.mp-order-state.closed {color:#7c8177}
.mp-history-empty {font-size:13px;color:#737b6b;text-align:center;padding:22px}
.dialog.member-checkout-dialog {width:min(100%,612px);padding:24px;display:flex;flex-direction:column;overflow:hidden;background:#f8f9f1}
.mp-checkout-head {display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:18px;flex-shrink:0}
.mp-checkout-eyebrow {font-size:12px;color:#727c68}
.mp-checkout-head h2 {font-size:23px;font-weight:400;line-height:1.4;margin-top:5px}
.mp-checkout-head>.icon-button {width:32px;height:32px;flex-shrink:0}
.mp-checkout-body {min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:2px}
.mp-checkout-summary {display:grid;grid-template-columns:1fr 1fr;column-gap:30px;row-gap:13px;margin:0;padding:0 0 18px;border-bottom:1px solid rgba(65,71,57,.14)}
.mp-checkout-summary>div {min-width:0}
.mp-checkout-summary dt {font-size:12px;color:#747e6b;margin-bottom:4px}
.mp-checkout-summary dd {font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.mp-checkout-summary .mp-summary-total dd {font-size:24px;line-height:1.1}
.mp-channels {display:flex;gap:12px;padding:18px 0 4px;border:0;min-width:0}
.mp-channels legend {float:left;width:100%;font-size:13px;margin-bottom:12px}
.mp-channels {flex-wrap:wrap}
.mp-channels label {display:flex;gap:9px;align-items:center;flex:1;min-width:170px;min-height:54px;padding:10px 12px;border:1px solid #d6dece;border-radius:8px;font-size:14px;cursor:pointer;background:#fff}
.mp-channels label.selected {border-color:#849971;background:#eef4e7}
.mp-channels input {accent-color:#6a8655;width:16px;height:16px;margin:0;flex-shrink:0}
.mp-channels label>svg {width:20px;height:20px;color:#627853;flex-shrink:0}
.mp-channels .mp-channel-check {margin-left:auto;width:16px;height:16px}
.mp-payment-stage {padding-top:16px}
.mp-qr-stage,.mp-alipay-stage {display:flex;flex-direction:column;align-items:center;gap:9px}
.mp-qr-frame {padding:4px;background:#fff;border-radius:8px;line-height:0}
.mp-qr-frame img {width:210px;height:210px;max-width:100%;object-fit:contain}
.mp-qr-stage p,.mp-alipay-stage p {font-size:14px;margin:0}
.mp-countdown {font-size:12px;color:#727b69}
.mp-countdown b {font-weight:400;color:#687d53;margin-left:5px}
.mp-alipay-stage {padding:16px 0 8px;gap:14px}
.mp-stage-icon {display:grid;place-items:center;color:#6c8058}
.mp-stage-icon svg {width:48px;height:48px;stroke-width:1.3}
.mp-payment-result {display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px 8px;gap:12px;min-height:150px;justify-content:center}
.mp-payment-result strong {font-size:17px;font-weight:400;line-height:1.5}
.mp-payment-result p {font-size:13px;line-height:1.7;color:#66725c;max-width:380px;margin:0}
.mp-payment-result.closed .mp-stage-icon {color:#8a9282}
.mp-order-code {display:flex;justify-content:center;align-items:baseline;gap:8px;font-size:11px;color:#7b8372;margin:14px 0 4px;overflow-wrap:anywhere;flex-wrap:wrap}
.mp-checkout-footer {display:flex;align-items:center;justify-content:flex-end;gap:9px;padding-top:18px;flex-wrap:wrap;flex-shrink:0}
.mp-primary,.mp-secondary,.mp-quiet {display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 17px;border-radius:20px;font:13px/1.4 var(--font);text-decoration:none}
.mp-primary {background:#30372c;color:#fbfcee}
.mp-secondary {background:#e9eddf;color:#56674a}
.mp-quiet {color:#7b826f;padding-inline:8px;margin-right:auto}
.mp-primary svg,.mp-secondary svg {width:15px;height:15px}
.mp-primary:disabled,.mp-secondary:disabled,.mp-quiet:disabled {opacity:.5;cursor:not-allowed}
.mp-workspace button:focus-visible,.member-checkout-dialog button:focus-visible,.member-checkout-dialog a:focus-visible {outline:2px solid #839b65;outline-offset:3px}
@container (max-width:960px) {.mp-plan {padding:14px;min-height:298px}.mp-account {padding:8px 0}.mp-plan-price strong {font-size:32px}.mp-account-usage {gap:10px;margin-left:4px}.mp-plan-description {font-size:12px}.mp-payment-availability {gap:12px}.mp-payment-availability p {margin-left:0}}
@container (max-width:660px) {.mp-plans {grid-template-columns:1fr}.mp-account {flex-wrap:wrap}.mp-account-name {min-width:180px}.mp-account-usage {width:100%;margin-left:51px}.mp-periods button {min-width:54px;padding-inline:10px}.mp-orders-toggle {font-size:12px}.mp-order-list>button {grid-template-columns:minmax(0,1fr) 75px 65px 14px;gap:8px}}
@media (max-width:600px) {.dialog.member-checkout-dialog {padding:18px}.mp-checkout-head h2 {font-size:20px}.mp-checkout-summary {column-gap:18px}.mp-qr-frame img {width:180px;height:180px}.mp-channels {gap:8px}.mp-channels label {min-width:140px}}
@media (prefers-reduced-motion:reduce) {.mp-workspace *,.member-checkout-dialog * {transition:none!important;animation:none!important}}
