:root{--ink:#132d2b;--green:#24685e;--paper:#f7f4ed;--line:#d7d0c2;--gold:#a7772a}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Microsoft YaHei",sans-serif}header{height:70px;padding:0 max(24px,6vw);display:flex;align-items:center;gap:28px;border-bottom:1px solid var(--line);background:#fff}header a{font:26px serif;color:var(--ink);text-decoration:none}header strong{margin-left:auto}.intro,main>section{width:min(1080px,calc(100% - 32px));margin:auto}.intro{padding:56px 0 34px}.intro p,.section-title p{color:var(--gold);font-size:11px;letter-spacing:2px}.intro h1{font:48px serif;margin:8px 0}.intro span,.section-title span{color:#64736f}.band{display:grid;grid-template-columns:2fr 1fr;background:#fff;border:1px solid var(--line);padding:30px}.band h2,.section-title h2,.orders h2{font:29px serif}.band label{display:block;margin:22px 0 10px;font-weight:700}.band input{display:block;width:min(340px,100%);padding:13px;border:1px solid var(--line);margin-top:8px}.estimate{color:var(--green);margin:12px 0}.band button,.plan button{background:var(--ink);color:white;border:0;padding:13px 18px;cursor:pointer}.points-mark{display:grid;place-content:center;text-align:center;border-left:1px solid var(--line);font:18px serif}.points-mark b{font-size:52px;color:var(--gold)}.section-title{display:flex;justify-content:space-between;align-items:end;margin-top:52px}.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.plan{background:#fff;border:1px solid var(--line);padding:22px}.plan h3{font:26px serif;margin:4px 0}.plan .price{font-size:28px;margin:25px 0}.plan small{display:block;color:#687873;margin-bottom:18px}.orders{margin-top:40px!important;background:#e9eee8;padding:24px}.orders div{line-height:1.8}.pending{color:#8a651d}@media(max-width:760px){.band{grid-template-columns:1fr}.points-mark{display:none}.plans{grid-template-columns:1fr 1fr}.section-title{display:block}}@media(max-width:430px){.plans{grid-template-columns:1fr}.intro h1{font-size:38px}}
.rules-link{border:0;background:transparent;color:var(--green);font:16px "Microsoft YaHei",sans-serif;padding:8px 0;cursor:pointer;text-decoration:underline;text-underline-offset:5px}.rules-link:hover{color:var(--gold)}.rules-modal[hidden]{display:none}.rules-modal{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px}.rules-backdrop{position:absolute;inset:0;background:rgba(19,45,43,.42)}.rules-card{position:relative;width:min(600px,100%);max-height:min(720px,90vh);overflow:auto;background:#fff;border:1px solid var(--line);padding:34px 38px;box-shadow:0 18px 60px rgba(19,45,43,.22)}.rules-card p:first-child{color:var(--gold);font-size:11px;letter-spacing:2px;margin:0 0 8px}.rules-card h2{font:30px serif;margin:0 0 22px}.rules-body{color:#50625d;line-height:1.9}.rules-body p{margin:0 0 14px}.rules-close{position:absolute;right:14px;top:8px;border:0;background:transparent;color:var(--ink);font-size:30px;line-height:1;cursor:pointer}
.point-plans{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.point-plan{position:relative;background:#fff;border:1px solid var(--line);padding:22px}.point-plan.recommended{border-color:var(--gold)}.point-plan h3{font:24px serif;margin:8px 0}.point-plan .price{font-size:30px;margin:18px 0}.point-plan p{color:#687873;margin:0 0 22px}.point-plan button{background:#cf482e;color:#fff;border:0;padding:13px 18px;cursor:pointer;font-weight:700}.recommend{position:absolute;right:18px;top:-13px;background:var(--gold);color:#fff;border-radius:20px;padding:5px 12px;font-size:13px}.points-section{margin-bottom:18px!important}.points-section .section-title{margin-top:0}.payment-actions{margin:16px 0 8px}.payment-actions .btn{display:inline-block;text-decoration:none}.payment-unavailable{color:#9a4b39}.payment-status-note,.payment-copy-hint{color:#64736f;font-size:13px}.payment-link{display:block;width:min(600px,100%);min-height:62px;padding:10px;border:1px solid var(--line);background:#fff;color:var(--ink);font:12px Consolas,monospace;resize:vertical}.payment-qr{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:16px 0}.payment-qr img{width:180px;height:180px;object-fit:contain;background:#fff;border:1px solid var(--line);padding:8px}.payment-qr a{color:var(--green)}.paid{color:var(--green);font-weight:700}@media(max-width:760px){.point-plans{grid-template-columns:1fr 1fr}}@media(max-width:430px){.point-plans{grid-template-columns:1fr}}
.payment-qr-frame{width:212px;min-height:212px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);padding:10px}.payment-qr-image{display:block;width:192px;height:192px;object-fit:contain;image-rendering:pixelated}.payment-qr-error{display:block;color:#9a4b39;font-size:13px;line-height:1.6}.payment-qr-help{display:grid;gap:8px;max-width:360px;color:#50625d;line-height:1.6}.payment-qr-help strong{color:var(--ink)}.payment-qr-help span{font-size:13px}
.payment-modal[hidden]{display:none}.payment-modal{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:18px}.payment-modal-backdrop{position:absolute;inset:0;background:rgba(19,45,43,.52);backdrop-filter:blur(2px)}.payment-modal-card{position:relative;width:min(720px,100%);max-height:min(90vh,900px);overflow:auto;background:var(--paper);border:1px solid var(--line);padding:30px 34px;box-shadow:0 24px 90px rgba(19,45,43,.3)}.payment-modal-card>p:first-child{margin:0 0 6px;color:var(--gold);font-size:11px;letter-spacing:2px}.payment-modal-card h2{font:32px serif;margin:0 0 10px}.payment-modal-close{position:absolute;right:14px;top:8px;border:0;background:transparent;color:var(--ink);font-size:30px;line-height:1;cursor:pointer}.payment-modal-card .payment-qr{margin-top:22px}.payment-modal-card .order-summary{padding-bottom:4px}.payment-modal-card .payment-status-note{margin-bottom:0}@media(max-width:520px){.payment-modal{padding:10px}.payment-modal-card{padding:25px 18px}.payment-modal-card h2{font-size:28px}}
/* Referral benefit and refund notice in the payment dialog */
.payment-referral-notice{display:grid;gap:7px;margin:22px 0 0;padding:13px 14px;border-left:3px solid var(--gold);background:#fff8eb;color:#50625d;font-size:13px;line-height:1.65}.payment-referral-notice strong{color:var(--ink);font-size:14px}.payment-referral-notice b{color:#a34e40;font-size:13px}
/* Point-package invitation benefit */
.point-plan{display:flex;min-height:350px;flex-direction:column}.point-plan .points-earned{margin:0 0 12px;color:#64736f;font-size:16px}.point-plan .plan-referral-copy{display:grid;gap:7px;margin:0 0 20px;color:#64736f;font-size:13px;line-height:1.65}.plan-referral-copy b{color:var(--green);font-size:15px}.point-plan button{margin-top:auto;align-self:flex-start}@media(max-width:760px){.point-plan{min-height:330px}}@media(max-width:430px){.point-plan{min-height:0}}
/* Invitation benefit on time-package cards */
.plan .plan-referral-copy{display:grid;gap:7px;margin:16px 0 20px;color:#64736f;font-size:13px;line-height:1.65}.plan .plan-referral-copy b{color:var(--green);font-size:15px}.plan{display:flex;min-height:350px;flex-direction:column}.plan button{margin-top:auto;align-self:flex-start}@media(max-width:760px){.plan{min-height:330px}}@media(max-width:430px){.plan{min-height:0}}
