.member-page{margin:0;background:#f5f6f8;color:#252936;font:15px/1.6 system-ui,"Microsoft YaHei",sans-serif}.member-page *{box-sizing:border-box}.member-shell{max-width:980px;margin:auto;padding:28px 24px 60px}.member-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.member-head a{color:inherit;text-decoration:none}.member-head a:first-child{font-size:23px;font-weight:800}.member-summary{display:flex;gap:20px;align-items:center;border-bottom:1px solid #d8dde6;padding:0 0 24px}.member-summary img{width:70px;height:70px}.member-page h1{margin:0;font-size:28px}.member-page h2{font-size:19px;margin-top:28px}.member-summary p{margin:4px 0;color:#657084}.member-muted{font-size:13px;color:#657084}.member-products{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.member-product{background:white;border:1px solid #d7dde7;border-radius:12px;padding:20px;text-align:left;cursor:pointer}.member-product strong{display:block;font-size:30px;color:#7a5214;margin:12px 0}.member-product span{display:block}.member-product:hover{border-color:#b77a25;box-shadow:0 4px 16px #80541712}.member-page button{cursor:pointer;border:1px solid #cdd4df;border-radius:8px;background:white;color:inherit;font:inherit;padding:9px 14px}.member-page button:disabled{opacity:.5;cursor:not-allowed}.member-page input:not([type=checkbox]),.member-page select{width:100%;padding:10px;border:1px solid #cdd4df;border-radius:8px;font:inherit;background:white;min-width:0}.member-page label{display:block;margin:10px 0}.member-redeem{margin-top:32px;padding:18px 22px;background:#e9edf3;border-radius:12px}.member-redeem h2{margin:0 0 12px}.member-redeem form{display:flex;gap:10px}.member-redeem button{white-space:nowrap;background:#292c36;color:#fff}.member-order{padding:18px 0;border-bottom:1px solid #d8dde6;overflow-wrap:anywhere}.member-order header{display:flex;justify-content:space-between;gap:12px}.member-order small{display:block;color:#667184}.member-order button{margin:8px 8px 0 0}.member-code{font-family:monospace;overflow-wrap:anywhere;color:#805217}.member-page dialog{border:1px solid #d8dde6;border-radius:16px;padding:24px;width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto}.member-page dialog::backdrop{background:#1b223a80}.member-page dialog header{display:flex;justify-content:space-between;align-items:center}.member-page dialog h2{margin:0}.member-qr{display:block;width:220px;max-width:100%;height:auto;margin:16px auto}.member-page [hidden]{display:none!important}.member-page :focus-visible{outline:3px solid #5083c7;outline-offset:3px}.member-page details{border:1px solid #cdd4df;padding:16px;border-radius:10px}.member-page summary{cursor:pointer}.member-page .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.membership-banner{padding:10px 14px;background:#fff3dc;color:#694600;font-size:13px;border-radius:8px}.membership-banner a{margin-left:10px;color:inherit;font-weight:700}.membership-link{display:block;padding:10px;text-align:center;color:inherit;text-decoration:none}.membership-account-badge{width:100%;height:100%;object-fit:contain}.member-page .member-receipt{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end}.member-page .member-receipt button{margin:10px 0}
@media(max-width:600px){.member-shell{padding:18px 16px 40px}.member-products{grid-template-columns:repeat(2,1fr)}.member-product{padding:16px}.member-product strong{font-size:26px}.member-summary img{width:56px;height:56px}.member-page h1{font-size:24px}.member-redeem{padding:16px}.member-page .member-receipt{grid-template-columns:1fr}.member-page .member-receipt label{margin:0}.member-order header{flex-wrap:wrap}}

.member-locked{opacity:.72;user-select:none}.member-policy{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700}.member-policy input{appearance:none;width:48px!important;height:28px;border-radius:20px;background:#87919f;position:relative;cursor:pointer}.member-policy input:checked{background:#b88923}.member-policy input:before{content:"";position:absolute;width:20px;height:20px;top:3px;left:3px;background:white;border-radius:50%;transition:transform .2s}.member-policy input:checked:before{transform:translateX(20px)}

.account-profile-title-row{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.account-profile-title-row #accountProfileName{flex:1;min-width:0;margin:0;font-size:14px;white-space:nowrap}.account-profile-title-row .membership-vip,.account-profile-title-row .account-admin-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;flex:0 0 auto;height:30px;margin:0;padding:3px 7px;border:1px solid #d8dce3;border-radius:8px;background:#f5f6f8;color:#20242b;text-decoration:none;font-size:12px;font-weight:700;line-height:1}.account-profile-title-row .membership-vip{width:34px;padding:2px}.membership-vip svg{width:27px;height:27px}.account-profile-title-row .membership-vip.is-member{color:#986714;border-color:#dfc796;background:linear-gradient(135deg,#fffcf1,#f3e1b5)}.account-admin-button[hidden]{display:none!important}.account-profile-summary>div{min-width:0;flex:1}.account-popover{width:min(350px,calc(100vw - 24px))}.membership-vip:focus-visible,.account-admin-button:focus-visible{outline:2px solid #a47428;outline-offset:3px}

.admin-embedded{background:white;padding:0}.admin-embedded .member-shell{width:100%;max-width:none;margin:0;padding:16px}.admin-embedded .member-head,.admin-embedded .member-shell>h1{display:none}.admin-embedded #memberAdminContent>section{border:1px solid #e1e6e2;border-radius:12px;padding:14px;margin-bottom:16px}.admin-embedded h2{font-size:17px}.admin-embedded .member-muted{font-size:12px}

.member-page article.member-product{cursor:default}.member-page .member-qr{width:min(360px,100%)}.member-qr-preview{display:block;width:min(300px,100%);height:auto;margin:8px 0 14px;border-radius:10px;border:1px solid #d7dde7}

.member-order-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}.member-order-toolbar label{margin:0;font-weight:700}.member-page .member-order-toolbar select{width:auto;min-width:130px}.member-order-toolbar span{margin-left:auto;color:#667184;font-size:13px}
.member-order{padding:16px;margin:10px 0;border:1px solid #d8dde6;border-radius:12px;background:#fff}.member-order-submitted{border-color:#e9bc73;background:#fff8eb}.member-order-paid{border-color:#a6d8b2;background:#f2fbf4}.member-order-pending{border-color:#cad3e0;background:#f8faff}.member-order-cancelled{border-color:#d5d8de;background:#f3f4f6;color:#687181}.member-order-state{white-space:nowrap;border-radius:999px;padding:2px 10px;background:#e9edf3;font-size:13px;font-weight:700}.member-order-submitted .member-order-state{background:#ffe6b8;color:#774507}.member-order-paid .member-order-state{background:#daf2df;color:#176531}.member-order-cancelled .member-order-state{background:#e3e5e9;color:#5d6672}.member-delete-order{color:#9d3030!important;border-color:#dcbaba!important}.member-redeem .member-paste{background:#fff;color:#252936;border:1px solid #cdd4df}.member-order-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.member-order-actions button{margin:6px 0}.member-order .member-code{display:inline-block;margin:4px 8px 4px 0;padding:8px 10px;border-radius:8px;background:#fff9e8}.member-reminder{color:#7a5214;font-weight:700}
@media(max-width:600px){.member-order-toolbar span{margin-left:0}.member-redeem form{flex-wrap:wrap}.member-redeem form input{flex:1 1 170px}.member-redeem form button{flex:0 0 auto}}

/* The customer page keeps its title and return action on one compact row. */
.member-page:not(.admin-embedded) .member-summary{gap:16px;padding-bottom:18px}
.member-page:not(.admin-embedded) .member-summary img{flex:none}
.member-page:not(.admin-embedded) .member-summary h1{min-width:0}
.member-return{display:inline-flex;align-items:center;justify-content:center;flex:none;min-height:40px;margin-left:auto;padding:7px 16px;border:1px solid #cdd4df;border-radius:8px;background:#fff;color:inherit;text-decoration:none;font-weight:700;white-space:nowrap}
.member-return:hover{border-color:#b77a25;background:#fffaf0}
.member-return:focus-visible{outline:3px solid #5083c7;outline-offset:3px}
.member-page:not(.admin-embedded) #memberNotice:empty{display:none}
@media(max-width:600px){.member-page:not(.admin-embedded) .member-summary{gap:10px;padding-bottom:14px}.member-page:not(.admin-embedded) .member-summary img{width:44px;height:44px}.member-page:not(.admin-embedded) .member-summary h1{font-size:22px}.member-return{min-height:36px;padding:5px 12px}}

.membership-vip[hidden],.membership-banner[hidden]{display:none!important}
