.profile-menu{position:fixed;z-index:60;width:min(258px,calc(100vw - 20px));max-height:calc(100vh - 20px);overflow-y:auto;padding:7px;border:1px solid #e2e6ec;border-radius:10px;background:#fff;box-shadow:0 14px 38px #0f172a20}
.profile-menu[hidden]{display:none}
.profile-menu button{display:flex;align-items:center;gap:11px;width:100%;min-height:42px;padding:9px 11px;border:0;border-radius:7px;background:transparent;color:#273142;font:13px/1.4 Arial,"Microsoft YaHei",sans-serif;text-align:left;cursor:pointer}
.profile-menu button:hover,.profile-menu button:focus-visible{outline:0;background:#f2f4f7}
.profile-menu button.danger{color:#d92d20}
.account-icon{display:block;flex:0 0 19px;width:19px;height:19px;background:currentColor;mask:var(--account-icon) center/contain no-repeat;-webkit-mask:var(--account-icon) center/contain no-repeat}
.account-icon.settings{--account-icon:url("icons/circle-dot.svg")}.account-icon.wallet{--account-icon:url("icons/circle-dot.svg")}.account-icon.agreement{--account-icon:url("icons/file-text.svg")}.account-icon.feedback{--account-icon:url("icons/circle-alert.svg")}.account-icon.logout{--account-icon:url("icons/file-down.svg")}
.account-overlay{position:fixed;inset:0;z-index:70;display:none;align-items:center;justify-content:center;padding:24px;background:#11182770}
.account-overlay.open{display:flex}
.account-modal{display:flex;flex-direction:column;width:min(880px,calc(100vw - 40px));height:min(680px,calc(100vh - 48px));overflow:hidden;border:1px solid #e5e7eb;border-radius:16px;background:#fff;box-shadow:0 24px 80px #0f172a2b}
.account-modal-header{display:flex;align-items:center;justify-content:space-between;min-height:68px;padding:0 26px}
.account-modal-header h2{margin:0;color:#111827;font-size:18px;letter-spacing:0}
.account-close{display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:7px;background:transparent;color:#475569;font-size:24px;line-height:1;cursor:pointer}
.account-close:hover,.account-close:focus-visible{outline:0;background:#f1f3f6;color:#111827}
.account-modal-body{display:grid;grid-template-columns:190px minmax(0,1fr);min-height:0;flex:1;padding:0 26px 24px;gap:28px}
.account-tabs{display:flex;flex-direction:column;gap:6px;padding-top:6px}
.account-tab{display:flex;align-items:center;gap:10px;width:100%;min-height:43px;padding:9px 12px;border:0;border-radius:8px;background:transparent;color:#344054;font:13px/1.4 Arial,"Microsoft YaHei",sans-serif;text-align:left;cursor:pointer}
.account-tab:hover{background:#f5f6f8}.account-tab.active{background:#e9ecef;color:#111827;font-weight:600}
.account-tab[data-tab="account"] .account-icon{--account-icon:url("icons/shield-check.svg")}.account-tab[data-tab="wallet"] .account-icon{--account-icon:url("icons/circle-dot.svg")}.account-tab[data-tab="data"] .account-icon{--account-icon:url("icons/database.svg")}.account-tab[data-tab="agreements"] .account-icon{--account-icon:url("icons/file-text.svg")}
.account-panels{min-width:0;overflow-y:auto;padding:2px 2px 20px}
.account-panel[hidden]{display:none}
.account-panel-title{margin:0 0 6px;color:#111827;font-size:18px}.account-panel-note{margin:0 0 18px;color:#8490a3;font-size:12px;line-height:1.7}
.account-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(220px,1.35fr) auto;align-items:center;gap:18px;min-height:66px;border-bottom:1px solid #e9ebef}
.account-row:first-of-type{border-top:1px solid #e9ebef}
.account-row-label{color:#273142;font-size:13px}.account-row-value{min-width:0;color:#667085;font-size:12px;line-height:1.55}.account-row-value strong{color:#273142;font-weight:600}
.account-button,.account-link-button{display:inline-flex;align-items:center;justify-content:center;min-width:78px;min-height:34px;padding:7px 13px;border:1px solid #dfe3e9;border-radius:18px;background:#fff;color:#344054;font:12px/1.2 Arial,"Microsoft YaHei",sans-serif;text-decoration:none;cursor:pointer}
.account-button:hover,.account-link-button:hover{background:#f6f7f9}.account-button:focus-visible,.account-link-button:focus-visible{outline:2px solid #315ff2;outline-offset:2px}
.account-button.primary{border-color:#315ff2;background:#315ff2;color:#fff}.account-button.danger{border-color:#ff6b6b;color:#e5484d}.account-button:disabled{cursor:not-allowed;opacity:.5}
.account-sync-status{display:inline-flex;align-items:center;gap:6px;color:#16805b}.account-sync-status::before{content:"";width:7px;height:7px;border-radius:50%;background:#20a46b}
.account-danger-note{margin:22px 0 0;padding:13px 15px;border-left:3px solid #f3b0b0;background:#fff8f8;color:#7a4545;font-size:11px;line-height:1.7}
.login-card{width:min(420px,calc(100vw - 32px));padding:25px;border:1px solid #e5e7eb;border-radius:14px;background:#fff;box-shadow:0 18px 50px #0f172a25}
.login-card h2{margin:0 0 7px;color:#111827;font-size:18px}.login-card>p{margin:0 0 17px;color:#718096;font-size:12px;line-height:1.6}
.login-card label:not(.legal-consent){display:block;margin:11px 0 6px;color:#475569;font-size:12px}.login-card input[type="tel"],.login-card input[type="text"]{width:100%;height:42px;padding:0 11px;border:1px solid #dbe3ef;border-radius:7px;outline:0;color:#1f2937;font:13px Arial,"Microsoft YaHei",sans-serif}.login-card input:focus{border-color:#315ff2;box-shadow:0 0 0 3px #315ff21a}
.code-row{display:flex;gap:8px}.code-row input{flex:1;min-width:0}.code-row button{flex:0 0 112px;border:1px solid #dbe3ef;border-radius:7px;background:#f8fafc;color:#315ff2;font-size:12px;cursor:pointer}.code-row button:disabled{cursor:wait;color:#94a3b8}
.legal-consent{display:flex;align-items:flex-start;gap:8px;margin-top:15px;color:#64748b;font-size:11px;line-height:1.6}.legal-consent input{margin:2px 0 0}.legal-consent a{color:#315ff2;text-decoration:none}.legal-consent a:hover{text-decoration:underline}
.login-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.login-actions button{min-height:35px;padding:7px 14px;border:1px solid #dbe3ef;border-radius:7px;background:#fff;color:#475569;font-size:12px;cursor:pointer}.login-actions button.primary{border-color:#315ff2;background:#315ff2;color:#fff}.login-actions button:disabled{cursor:wait;opacity:.58}
.login-status{min-height:20px;padding:7px 0;color:#475569;font-size:12px}.admin-entry{display:none;margin-top:14px;padding-top:12px;border-top:1px solid #e5e7eb}.admin-entry.visible{display:block}.admin-entry a{color:#315ff2;font-size:12px;text-decoration:none}
.verify-dialog{width:min(420px,calc(100vw - 32px));padding:23px;border-radius:14px;background:#fff;box-shadow:0 18px 50px #0f172a29}.verify-dialog h3{margin:0 0 8px;font-size:17px}.verify-dialog p{margin:0 0 14px;color:#64748b;font-size:12px;line-height:1.7}.verify-dialog .code-row input{height:40px;padding:0 10px;border:1px solid #dbe3ef;border-radius:7px}.verify-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.profile-dialog{width:min(460px,calc(100vw - 32px));padding:24px;border:1px solid #e5e7eb;border-radius:14px;background:#fff;box-shadow:0 18px 50px #0f172a29}.profile-dialog h3{margin:0 0 8px;color:#111827;font-size:17px}.profile-dialog>p{margin:0 0 16px;color:#64748b;font-size:12px;line-height:1.65}.profile-dialog>label{display:block;margin:11px 0 6px;color:#475569;font-size:12px}.profile-dialog input,.profile-dialog select,.profile-dialog textarea{width:100%;padding:10px 11px;border:1px solid #dbe3ef;border-radius:7px;background:#fff;color:#1f2937;font:13px/1.5 Arial,"Microsoft YaHei",sans-serif;outline:0}.profile-dialog input,.profile-dialog select{height:42px}.profile-dialog textarea{min-height:128px;resize:vertical}.profile-dialog input:focus,.profile-dialog select:focus,.profile-dialog textarea:focus{border-color:#315ff2;box-shadow:0 0 0 3px #315ff21a}.dialog-status{min-height:20px;padding-top:8px;color:#c2413a;font-size:12px}.profile-dialog button:disabled{cursor:wait;opacity:.58}
.feedback-file-list{display:grid;gap:5px;margin-top:7px}.feedback-file-list small{color:#98a2b3;font-size:11px}.feedback-file-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border:1px solid #e5eaf2;border-radius:7px;background:#f8fafc;color:#475569;font-size:11px}.feedback-file-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feedback-file-row button{flex:0 0 auto;padding:0;border:0;background:transparent;color:#315ff2;font-size:11px;cursor:pointer}.feedback-file-row button:hover{color:#c2413a}.feedback-consent{display:flex!important;align-items:flex-start;gap:8px;margin-top:12px!important;color:#64748b!important;font-size:11px!important;line-height:1.55!important}.feedback-consent[hidden]{display:none!important}.feedback-consent input{width:auto!important;height:auto!important;margin:2px 0 0!important;flex:0 0 auto}.feedback-consent span{min-width:0}
@media(max-width:760px){.account-overlay{align-items:flex-end;padding:0}.account-modal{width:100%;height:min(90vh,680px);border-radius:16px 16px 0 0}.account-modal-header{min-height:58px;padding:0 16px}.account-modal-body{display:flex;flex-direction:column;gap:14px;padding:0 16px 18px}.account-tabs{flex-direction:row;overflow-x:auto;padding:0 0 8px}.account-tab{flex:0 0 auto;width:auto;min-height:38px}.account-row{grid-template-columns:1fr auto;gap:7px 12px;padding:13px 0}.account-row-value{grid-column:1/2}.account-row>.account-button,.account-row>.account-link-button{grid-column:2;grid-row:1/3}.profile-menu{width:205px}}
.wallet-summary{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:10px;margin:4px 0 20px}.wallet-summary>div{padding:14px 15px;border:1px solid #e7eaf0;border-radius:10px;background:#fafbfc}.wallet-summary span{display:block;color:#8490a3;font-size:11px}.wallet-summary strong{display:block;margin-top:6px;color:#1f3f93;font-size:22px}.wallet-summary strong em{font-style:normal;font-size:12px;font-weight:500}.wallet-summary b{display:block;margin-top:8px;color:#273142;font-size:16px}.wallet-section-title{margin:18px 0 9px;color:#273142;font-size:13px}.wallet-packages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.wallet-package{display:flex;flex-direction:column;gap:7px;padding:12px;border:1px solid #e7eaf0;border-radius:9px}.wallet-package strong{color:#273142;font-size:13px}.wallet-package span{color:#315ff2;font-size:17px;font-weight:600}.wallet-package .account-button{width:100%;min-width:0}.wallet-payment-note{margin:11px 0 0;color:#8490a3;font-size:11px;line-height:1.6}.wallet-records{border-top:1px solid #e9ebef}.wallet-record{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 2px;border-bottom:1px solid #e9ebef}.wallet-record strong{display:block;color:#344054;font-size:12px}.wallet-record small{display:block;margin-top:4px;color:#98a2b3;font-size:10px}.wallet-status{flex:0 0 auto;color:#8490a3;font-size:11px}.wallet-status.pending_payment{color:#b7791f}.wallet-status.paid{color:#16805b}.wallet-change{flex:0 0 auto;font-size:13px;font-weight:600}.wallet-change.positive{color:#16805b}.wallet-change.negative{color:#d14343}.wallet-empty,.wallet-loading,.wallet-error{padding:14px 2px;color:#8490a3;font-size:12px}.wallet-error{color:#c2413a}
@media(max-width:760px){.wallet-packages{grid-template-columns:1fr}.wallet-summary{grid-template-columns:1fr 1fr}.wallet-summary>div:first-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.profile-menu button,.account-button,.account-link-button{transition:none}}
