/* Public documents, reporting, authentication and feedback. No admin/global overrides. */
body.public-page{margin:0;background:#f6f8fc;color:#263b59;font-size:14px;line-height:1.8;min-height:100vh}
.public-page *{box-sizing:border-box}
.public-page button,.public-page input,.public-page textarea{font-family:inherit}
.public-page a{color:#2563eb}
.public-page a:focus-visible,.public-page button:focus-visible,.download-page .auth-dialog button:focus-visible,.ui-toast-close:focus-visible{outline:3px solid #9dc0ff;outline-offset:3px}
.public-site-header{background:#fff;border-bottom:1px solid #e7edf5}
.public-nav{max-width:1232px;min-height:72px;margin:auto;padding:12px 26px;display:flex;align-items:center;gap:20px}
.public-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none!important;color:#17233d!important;font-size:24px;font-weight:750;white-space:nowrap}
.public-brand svg{width:36px;height:30px;color:#2563eb}
.public-brand-description{padding-left:20px;border-left:1px solid #dce4f0;color:#8190a7;font-size:12px}
.public-nav-links{display:flex;align-items:center;gap:24px;margin-left:auto;font-size:13px;white-space:nowrap}
.public-nav-links a{color:#64758d;text-decoration:none}
.public-nav-links a[aria-current]{color:#2563eb}
.public-nav-links .public-home-link{color:#2563eb;border:1px solid #dbe6f7;border-radius:9px;padding:7px 13px;background:#f8fbff}
.public-page .main-content{flex:1;padding:32px 24px 12px}
.public-page .wrap{width:100%;max-width:1040px!important;margin:0 auto;padding:0}
.public-page .content-page{background:#fff;border:1px solid #e5ecf5;border-radius:16px;padding:32px 38px!important;box-shadow:0 5px 22px rgba(35,62,104,.035);overflow-wrap:anywhere}
.public-page h2{margin:0 0 16px;color:#17233d;font-size:27px;line-height:1.5;letter-spacing:.5px}
.public-page .content-page h2{padding-bottom:20px;border-bottom:1px solid #e9eef7}
.public-page .content-page h2+p{color:#718299;background:#f7faff;border:1px solid #e9f0fa;border-radius:10px;padding:14px 17px;font-size:13px;line-height:1.9;margin-bottom:28px}
.public-page .content-page h3{font-size:17px;color:#1c3d6e;margin:30px 0 12px;padding-left:12px;border-left:3px solid #699aff;line-height:1.5;scroll-margin-top:24px}
.public-page .content-page p{margin:12px 0;color:#64758d;font-size:14px;line-height:2.05}
.public-page .content-page .meta{padding-top:20px;border-top:1px solid #e9eef7;font-size:12px;color:#8292a9}
.public-document-layout{max-width:1100px;margin:auto;display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px;align-items:start}
.public-toc{position:sticky;top:24px;background:#fff;border:1px solid #e5ecf5;border-radius:14px;padding:18px 12px}
.public-toc-title{padding:0 12px 12px;color:#233d62;font-size:14px;font-weight:700}
.public-toc a{display:block;padding:9px 12px;border-radius:7px;color:#74849b;text-decoration:none;font-size:12px;line-height:1.7}
.public-toc a:hover,.public-toc a:focus-visible{color:#2563eb;background:#eff5ff}
.public-page .footer{width:100%;max-width:1100px;margin:28px auto 18px;padding:0 24px;line-height:1.7}
.public-report .wrap{max-width:880px!important}
.public-report .rp-hero{margin:0 0 22px;padding:22px 24px;background:linear-gradient(115deg,#edf5ff,#fff);border:1px solid #dce8fb;border-radius:14px;box-shadow:none}
.public-report .rp-hero .t{font-size:14px;font-weight:600;color:#284b7c;line-height:1.9}
.public-report .rp-hero .fname{display:inline;white-space:normal;overflow-wrap:anywhere}
.public-report .rp-hero .d{margin:7px 0 0;color:#7d91ad;font-size:12px}
.public-report .rp-card{background:#fff;border:1px solid #e5ecf5;border-radius:16px;padding:26px 28px;box-shadow:0 5px 22px rgba(35,62,104,.035)}
.public-report form{font-size:12px;color:#536b8d;line-height:2}
.public-report form>div{margin:0 0 19px!important}
.public-report .report-form-row{gap:18px!important}
.public-report input:not([type=hidden]),.public-report textarea{min-width:0;max-width:100%;border:1px solid #dce5f1!important;background:#fff;color:#263b59;border-radius:9px!important;font-size:14px;padding:11px 13px!important;line-height:1.6;outline:none}
.public-report input::placeholder,.public-report textarea::placeholder{color:#a0aec0}
.public-report input:focus,.public-report textarea:focus{border-color:#7ea9f9!important;box-shadow:0 0 0 3px #edf4ff}
.public-report textarea{min-height:150px;resize:vertical}
.public-report input[name=captcha]{height:44px!important;flex:0 1 160px}
.public-report img[src^="/api/captcha"]{height:44px!important;border-color:#e1e9f6!important}
.public-report .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:128px;padding:10px 22px;background:#2563eb;border:1px solid #2563eb;border-radius:9px;color:#fff;text-decoration:none;font-size:13px;font-weight:600}
.public-report .card{display:block;background:#fff;border:1px solid #e5ecf5;border-radius:16px;padding:32px;box-shadow:0 5px 22px rgba(35,62,104,.035)}
.public-report .card .title{font-size:20px;color:#203b63;margin:0 0 12px;font-weight:700}
.public-report .card .desc{font-size:13px;color:#6f829d;line-height:1.9;overflow-wrap:anywhere}
.public-report .card .cta{margin-top:24px!important}

/* Authentication panels keep their original IDs, request handlers and agreement controls. */
.download-page .auth-overlay{position:fixed;inset:0;z-index:9900;background:rgba(17,32,57,.48);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.download-page #authModal{position:fixed;left:50%;top:7vh;transform:translateX(-50%);z-index:9901;width:460px;max-width:calc(100vw - 32px);max-height:86vh;max-height:86dvh;background:#fff;border:1px solid #e1e8f2;border-radius:20px;box-shadow:0 24px 80px rgba(20,44,85,.24);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.download-page .auth-dialog *{box-sizing:border-box}
.download-page .auth-header{display:flex;align-items:center;gap:12px;padding:24px;background:linear-gradient(110deg,#f0f6ff,#fff);border-bottom:1px solid #e7edf6}
.download-page .auth-mark{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid #d6e5ff;border-radius:13px;background:#e4eeff;color:#2563eb}
.download-page .auth-mark svg{width:26px;height:26px}
.download-page .auth-header h2{margin:0;color:#17233d;font-size:21px;line-height:1.5}
.download-page .auth-header p{margin:3px 0 0;color:#8191a8;font-size:11px}
.download-page .ui-close{display:grid;place-items:center;flex-shrink:0;margin-left:auto;width:32px;height:32px;padding:0;border:1px solid #e1e8f2;border-radius:9px;background:#fff;color:#8395af;font-size:25px;line-height:1;cursor:pointer}
.download-page .auth-tabs{display:flex;padding:0 24px;gap:22px;border-bottom:1px solid #e7edf6}
.download-page .auth-tabs button{border:0;border-bottom:3px solid transparent;background:none;padding:15px 0 12px;font-size:13px;font-weight:600;color:#7a8ca5!important;cursor:pointer;white-space:nowrap}
.download-page .auth-tabs .is-active{color:#2563eb!important;border-bottom-color:#2563eb}
.download-page .auth-body{padding:24px 28px 28px}
.download-page .auth-dialog h3{margin:0;color:#203b63;font-size:18px;line-height:1.6}
.download-page .auth-description{margin:5px 0 22px;color:#8a99ad;font-size:12px;line-height:1.8}
.download-page .auth-label{display:block;margin:0 0 7px;color:#536b8d;font-size:12px;font-weight:600}
.download-page .auth-field{display:flex;align-items:center;gap:9px;margin-bottom:18px;min-width:0}
.download-page .auth-field input{display:block;width:100%;min-width:0;flex:1;height:44px;padding:10px 13px;border:1px solid #dce5f1;border-radius:9px;background:#fff;color:#263b59;font-size:14px;outline:none}
.download-page .auth-field input::placeholder{color:#a0aec0}
.download-page .auth-field input:focus{border-color:#7ea9f9;box-shadow:0 0 0 3px #edf4ff}
.download-page .auth-dialog .btn{min-height:44px;padding:10px 18px;background:#2563eb;border:1px solid #2563eb;border-radius:9px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;line-height:1.5}
.download-page .auth-dialog .btn:disabled{cursor:not-allowed}
.download-page .auth-dialog .auth-primary{width:100%;box-shadow:0 3px 8px rgba(37,99,235,.1)}
.download-page .auth-dialog .auth-code-button{flex-shrink:0;white-space:nowrap;border-color:#dbe8ff;background:#eef5ff;color:#2563eb;font-size:12px;padding:10px 12px}
.download-page .auth-links{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;font-size:12px}
.download-page .auth-links a{color:#6480a6;text-decoration:none}
.download-page .auth-links a:last-child{color:#2563eb}
.download-page .auth-links-center{justify-content:center}
.download-page .auth-agreement{display:flex;align-items:flex-start;gap:8px;margin:18px 0;color:#72849e;font-size:12px;line-height:1.9;cursor:pointer}
.download-page .auth-agreement input{flex-shrink:0;width:15px;height:15px;margin:3px 0 0;accent-color:#2563eb;cursor:pointer}
.download-page .auth-agreement a{color:#3c78d8;text-decoration:none}
.download-page .auth-alert{padding:10px 12px;margin:14px 0 0;border:1px solid #f4dadd;border-radius:9px;background:#fff5f5;color:#c45361;font-size:12px;overflow-wrap:anywhere}
.download-page .auth-alert:empty{display:none}
.download-page .auth-centered{text-align:center}
.download-page #wxQrBox{position:relative;display:flex;align-items:center;justify-content:center;min-height:244px;width:244px;max-width:100%;margin:auto;border:1px solid #e2eaf7;border-radius:14px;background:#f8fbff;padding:10px}
.download-page #wxQrImg{width:220px;height:220px;max-width:100%;object-fit:contain;border-radius:9px}
.download-page #wxMask{position:absolute;inset:0;align-items:center;justify-content:center;padding:20px;border-radius:14px;background:rgba(248,251,255,.97);color:#6e85a5;text-align:center;font-size:12px;line-height:1.9}
.download-page .auth-qr-hint-wrap{justify-content:center;margin-top:12px}
.download-page #wxQrHint{color:#8a99ad;font-size:12px;text-align:center}
.download-page .auth-steps{display:flex;justify-content:space-between;gap:5px;padding:10px;margin:0 0 20px;background:#f3f7ff;border:1px solid #e5edfb;border-radius:8px;color:#7e96b8;font-size:10px}
.download-page .auth-notice{margin:0 0 16px;padding:12px;border:1px solid #e3ecfb;border-radius:9px;background:#f4f8ff;color:#6f85a5;font-size:12px;line-height:1.9;overflow-wrap:anywhere}
.download-page .auth-success{text-align:center;padding:16px 0 0}
.download-page .auth-success-icon{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 16px;border-radius:18px;background:#e9f8f0;color:#27a671;font-size:30px}

/* Tips share the same shell; status colors remain distinguishable. */
.ui-toast-stack{position:fixed;left:50%;top:20px;transform:translateX(-50%);z-index:12050;display:flex;flex-direction:column;gap:10px;width:max-content;max-width:calc(100vw - 28px);max-height:calc(100vh - 40px);overflow:auto;pointer-events:none}
.ui-toast{--notice:#3c78d8;--notice-bg:#eff5ff;box-sizing:border-box;display:flex;align-items:flex-start;gap:10px;width:100%;max-width:480px;padding:14px 12px 14px 16px;border:1px solid #e1e8f2;border-radius:12px;background:#fff;box-shadow:0 10px 36px rgba(26,52,96,.16);color:#536b8d;font:13px/1.8 "Noto Sans SC",system-ui,sans-serif;pointer-events:auto;animation:ui-notice-in .18s ease-out}
.ui-toast-success{--notice:#28a276;--notice-bg:#eaf8f0}.ui-toast-error{--notice:#cf5360;--notice-bg:#fff0f1}.ui-toast-warning{--notice:#b68029;--notice-bg:#fff7e9}
.ui-toast-icon{display:grid;place-items:center;flex-shrink:0;width:24px;height:24px;border-radius:7px;color:var(--notice);background:var(--notice-bg);font-weight:700}
.ui-toast-text{min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}
.ui-toast-close{display:grid;place-items:center;margin-left:auto;flex-shrink:0;width:26px;height:26px;padding:0;border:0;border-radius:6px;background:transparent;color:#9babbe;font-size:20px;cursor:pointer}
.ui-toast-close:hover{background:#f0f5fc;color:#496c9d}
@keyframes ui-notice-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.download-page .ui-security-overlay,.download-page #buyMask,.download-page #qrPayMask,.download-page #payOkMask{background:rgba(17,32,57,.48)!important;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.download-page .ui-security-overlay{padding:16px;box-sizing:border-box}
.download-page .ui-security-overlay>div,.download-page #payOkModal{box-sizing:border-box;width:420px!important;max-width:calc(100vw - 32px)!important;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto!important;border:1px solid #e1e8f2;border-radius:18px!important;box-shadow:0 24px 80px rgba(20,44,85,.24)!important;margin-top:0!important}
.download-page .ui-security-overlay>div>div:first-child,.download-page #payOkModal>div:first-child,.download-page #qrPayModal>div:first-child,.download-page #buyModal>div:first-child{padding:20px 24px!important;border-bottom:1px solid #e7edf6!important;background:#f3f7ff;color:#203b63;font-size:17px}
.download-page .ui-security-overlay>div>div:last-child{padding:24px!important}
.download-page .ui-security-overlay>div>div:last-child>div:first-child{padding:14px 16px!important;border:1px solid #f3e1cf!important;border-radius:10px!important;background:#fff9f0!important;color:#9f743f!important;font-size:13px!important;line-height:1.9!important;overflow-wrap:anywhere}
.download-page #offlineOkBtn,.download-page #payOkModal button{min-height:42px;padding:10px 24px!important;border:1px solid #2563eb!important;border-radius:9px!important;background:#2563eb!important;color:#fff!important;font-size:13px!important;font-weight:600;cursor:pointer}
.download-page #payOkModal{top:12vh!important}
.download-page #payOkModal>div:last-child{padding:28px!important}
.download-page #payOkModal>div:last-child>div:first-child{display:grid;place-items:center;width:64px;height:64px;margin:auto;border-radius:18px;background:#eaf8f0;font-size:30px!important;color:#28a276!important}
.download-page #buyModal,.download-page #qrPayModal{border-radius:18px!important;box-shadow:0 24px 80px rgba(20,44,85,.24)!important}
.download-page #buyModal>div:last-child,.download-page #qrPayModal>div:last-child{padding:22px!important}
.download-page #buyPlans label{border-radius:12px!important;box-shadow:none!important}
.download-page #buyPlans label input{accent-color:#2563eb}
.download-page #buyPlans .activity-corner-badge.limited{background:linear-gradient(135deg,#373128,#1c1f27)!important;color:#ecd39b!important}
.download-page #buyChannels{gap:10px!important}
.download-page #buyChannels label{border-radius:10px!important}
.download-page #buyModal button{border-radius:9px!important}
.download-page #qrPayCanvas{border:1px solid #e1e9f6;border-radius:12px;padding:10px;background:#f8fbff;box-sizing:border-box;width:fit-content;max-width:100%;margin:16px auto!important}
.download-page #dlCaptchaModal{border-radius:18px!important;border:1px solid #e1e8f2!important;box-shadow:0 24px 80px rgba(20,44,85,.24)!important}
.download-page #dlCaptchaInput{border-radius:9px!important;border-color:#dce5f1!important}
.download-page #dlCaptchaSubmit{background:#2563eb!important;border-radius:9px!important}
.download-page #dlDownloadNotice{z-index:12050!important;background:#fff!important;border:1px solid #f0d9de!important;border-radius:12px!important;color:#c45361!important;box-shadow:0 10px 36px rgba(26,52,96,.16)!important;font-size:13px!important}
.download-page .ui-order-tooltip{box-sizing:border-box;max-width:calc(100vw - 24px);background:#fff!important;border:1px solid #e2eaf7;border-radius:9px!important;color:#5e7393!important;padding:10px 14px!important;box-shadow:0 8px 28px rgba(26,52,96,.13)!important;overflow-wrap:anywhere}
@media(max-width:800px){.public-brand-description{display:none}.public-page .main-content{padding:22px 18px 10px}.public-document-layout{grid-template-columns:minmax(0,1fr);gap:16px}.public-toc{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}.public-toc-title{grid-column:1/-1;padding-bottom:8px}.public-toc a{padding:6px 10px;font-size:11px}.public-page .content-page{padding:26px!important}.public-page .content-page h2{font-size:24px}.public-report .rp-card{padding:22px}}
@media(max-width:540px){
  .public-nav{min-height:62px;padding:12px 16px;gap:10px}.public-brand{font-size:21px}.public-brand svg{width:30px}.public-nav-links{gap:12px;font-size:11px}.public-nav-links .public-home-link{padding:5px 9px}
  .public-page .main-content{padding:20px 12px 8px}.public-page h2{font-size:23px}.public-page .content-page{padding:22px 18px!important;border-radius:13px}.public-page .content-page h2{font-size:23px;padding-bottom:16px}.public-page .content-page h3{font-size:16px;margin-top:25px}.public-page .content-page p{font-size:14px;line-height:2}.public-page .content-page h2+p{font-size:12px;padding:12px}.public-page .footer{padding:0 16px;margin-top:22px}
  .public-report .rp-hero{padding:16px;margin-bottom:16px}.public-report .rp-card{padding:20px 16px}.public-report .report-form-row{flex-direction:column!important;gap:16px!important}.public-report .report-form-row>div{flex:auto!important}.public-report .btn{width:100%}.public-report input:not([type=hidden]),.public-report textarea{font-size:16px}.public-report .card{padding:26px 20px}
  .download-page #authModal{top:16px!important;width:calc(100vw - 24px)!important;max-width:460px!important;max-height:calc(100vh - 32px)!important;max-height:calc(100dvh - 32px)!important;border-radius:16px}
  .download-page .auth-header{padding:20px 18px;gap:10px}.download-page .auth-header h2{font-size:18px}.download-page .auth-mark{width:38px;height:38px}.download-page .auth-header p{font-size:11px}.download-page .auth-tabs{padding:0 20px;gap:24px}.download-page .auth-tabs button{font-size:12px}.download-page .auth-body{padding:22px 20px 24px}.download-page .auth-field input{font-size:16px!important}.download-page .auth-dialog .auth-code-button{font-size:11px;padding:10px}.download-page .auth-description{font-size:12px}.download-page .auth-links{font-size:12px}
  .download-page #buyModal>div:last-child,.download-page #qrPayModal>div:last-child{padding:16px!important}.download-page .ui-security-overlay>div>div:first-child,.download-page #payOkModal>div:first-child{padding:18px 20px!important}.download-page .ui-security-overlay>div>div:last-child{padding:20px!important}.download-page #payOkModal{top:16px!important}
  .ui-toast-stack{top:12px}.ui-toast{padding:12px;font-size:12px;gap:8px}
}
@media(prefers-reduced-motion:reduce){.ui-toast{animation:none}}
/* Compact floating notices. Quiet dark shell, status carried only by the icon. */
.ui-toast-stack{top:max(22px,env(safe-area-inset-top));gap:9px;max-width:calc(100vw - 32px);padding:6px 10px 18px;overflow-x:hidden;box-sizing:content-box}
.ui-toast{--notice:#4568a7;--notice-bg:#e5edff;position:relative;align-items:center;gap:11px;max-width:460px;padding:12px 12px 12px 15px;border:1px solid #ffffff18;border-radius:13px;background:linear-gradient(125deg,rgba(42,46,57,.97),rgba(29,33,43,.97));color:#edf0f6;box-shadow:0 8px 24px #10182826,0 2px 6px #10182812,inset 0 1px 0 #ffffff08;backdrop-filter:blur(16px);font:13px/1.65 system-ui,-apple-system,"Microsoft YaHei",sans-serif;animation:ui-refined-in .24s cubic-bezier(.2,.8,.3,1)}
.ui-toast-success{--notice:#2c795c;--notice-bg:#e1f5eb}.ui-toast-error{--notice:#aa3c51;--notice-bg:#ffe5e9}.ui-toast-warning{--notice:#8b631f;--notice-bg:#fff0cd}
.ui-toast-icon{width:26px;height:26px;border-radius:50%;background:var(--notice-bg);color:var(--notice);box-shadow:0 0 0 1px #ffffff12}.ui-toast-icon svg{display:block;width:17px;height:17px;stroke-width:2.2}.ui-toast-text{padding:1px 0;font-weight:400;letter-spacing:.1px}.ui-toast-close{width:25px;height:25px;min-height:0!important;border:0!important;background:none!important;box-shadow:none!important;color:#bac4d5!important;font-size:18px;padding:0!important;border-radius:7px}.ui-toast-close:hover{background:#ffffff0a!important;color:#fff!important}.ui-toast.is-leaving{animation:ui-refined-out .18s ease-in forwards;pointer-events:none}
@keyframes ui-refined-in{from{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes ui-refined-out{to{opacity:0;transform:translateY(-6px) scale(.98)}}
.download-page #dlDownloadNotice{background:#252a35!important;border-color:#ffffff1c!important;border-radius:13px!important;color:#f0dadd!important;box-shadow:0 8px 24px #10182826!important;padding:13px 18px!important;font-size:13px!important}
@media(max-width:540px){.ui-toast-stack{top:max(12px,env(safe-area-inset-top));max-width:calc(100vw - 36px);padding:4px 6px 14px}.ui-toast{max-width:100%;padding:11px 10px 11px 13px;font-size:12px;gap:9px}}
@media(prefers-reduced-motion:reduce){.ui-toast,.ui-toast.is-leaving{animation:none}}
/* Quiet editorial treatment for policies, help and reports. */
body.public-page{background:#f5f6f8;color:#374151;font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif}.public-site-header{border-color:#e6e8ed}.public-brand svg{color:#72829b}.public-brand-description{color:#8590a1;border-color:#e4e7ed}.public-nav-links .public-home-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:38px;padding:8px 15px;border:1px solid #dfe3ea;border-radius:9px;background:#fff;color:#5b6575;font-size:12px;font-weight:500;box-shadow:0 2px 4px #10182804;transition:background .15s,border-color .15s}.public-nav-links .public-home-link:hover{background:#f4f5f8;border-color:#bfc7d5;color:#263447}.public-home-link svg{flex-shrink:0}
.public-page .content-page{border-color:#e5e7ed;box-shadow:0 4px 20px #1e293b03;padding:36px 42px!important}.public-page h2{color:#222b3c;letter-spacing:0}.public-page .content-page h2{font-size:29px;border-color:#eceef2;padding-bottom:22px}.public-page .content-page h2+p{background:#f7f7f9;border:0;border-left:3px solid #c1b8d2;border-radius:0 7px 7px 0;color:#687181;font-size:14px;line-height:2;padding:14px 18px}.public-page .content-page h3{color:#333d50;border-left:0;padding-left:0;font-size:18px;margin-top:32px;font-weight:650}.public-page .content-page p{color:#586171;font-size:15px;line-height:2.1;letter-spacing:.1px}.public-page .content-page a{color:#78668e;text-decoration:none;border-bottom:1px solid #d8cfe4}.public-page .content-page .meta{color:#8a93a3;border-color:#eceef2;font-size:12px}
.public-toc{border-color:#e5e7ec;background:#fbfbfc;box-shadow:none}.public-toc-title{color:#3e485a;font-size:13px}.public-toc a{color:#778191;font-size:12px}.public-toc a:hover,.public-toc a:focus-visible{background:#f0edf5;color:#77648d}.public-report .rp-hero{background:#f0edf5;border-color:#e3dce9}.public-report .rp-hero .t{color:#51465d}.public-report .rp-hero .d{color:#82748c}.public-report form{color:#626a79;font-size:13px}.public-report .btn{background:#746181;border-color:#746181}.public-report .rp-card{border-color:#e5e7ec;box-shadow:none}
@media(max-width:540px){.public-nav-links .public-home-link{padding:7px 11px;min-height:36px;font-size:11px;gap:6px}.public-page .content-page{padding:26px 21px!important}.public-page .content-page h2{font-size:25px}.public-page .content-page h3{font-size:17px}.public-page .content-page p{font-size:14px;line-height:2}.public-page .content-page h2+p{font-size:13px;padding:12px 14px}}
/* Membership checkout: charcoal header, champagne selection, restrained channel colors. */
.download-page #buyModal *,.download-page #qrPayModal *{box-sizing:border-box}
.download-page #buyModal{width:650px!important;max-width:calc(100vw - 32px)!important;top:5vh!important;max-height:90vh!important;max-height:90dvh!important;overflow:auto;border:1px solid #e5e4e2!important;border-radius:19px!important;background:#fdfcfb!important;color:#343742}
.download-page #buyModal>div:first-child{padding:23px 26px!important;background:linear-gradient(115deg,#30313a,#1d212b)!important;border-bottom:1px solid #bfa67930!important;color:#eddfbf!important;font-size:19px!important;letter-spacing:.5px;position:sticky;top:0;z-index:4}
.download-page #buyModal>div:first-child>div{font-weight:600!important}.download-page #buyModal>div:first-child>a,.download-page #qrPayModal>div:first-child>a{display:grid;place-items:center;width:30px;height:30px;border:1px solid #ffffff1a;border-radius:50%;color:#bdc0ca!important;font-size:15px!important;background:#ffffff05}.download-page #buyModal>div:first-child>a:hover{background:#ffffff12;color:#fff!important}
.download-page #buyModal>div:last-child{padding:24px 26px!important}.download-page #buyModal>div:last-child>div[style*="margin-bottom:10px"]{font-size:12px;font-weight:500;color:#7c7d87!important;letter-spacing:.4px;margin:0 0 12px!important}
.download-page #buyPlans{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important;margin-bottom:24px!important;padding:0!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;max-height:none!important;overflow:visible!important}
.download-page #buyPlans label{display:grid!important;grid-template-columns:minmax(0,1fr);gap:7px;padding:16px!important;margin:0!important;border:1px solid #e5e3e0!important;border-radius:12px!important;background:#fff!important;box-shadow:0 2px 6px #17192302!important;min-height:136px!important;transition:border-color .15s,background .15s;overflow:hidden}
.download-page #buyPlans label:hover{border-color:#c9bea8!important}.download-page #buyPlans label:has(input:checked){background:linear-gradient(125deg,#fffaf0,#f7f1e6)!important;border-color:#af9465!important;box-shadow:inset 0 0 0 1px #cfbc941a!important}.download-page #buyPlans label:has(input:disabled){background:#f4f4f5!important;box-shadow:none!important}
.download-page #buyPlans input[name=planId]{position:absolute!important;left:16px;top:17px;margin:0!important;accent-color:#a28a60;width:14px;height:14px;z-index:4!important}
.download-page #buyPlans label>input+div{display:block!important;min-height:0!important;margin:0!important;width:100%;padding:0!important;align-self:start}
.download-page #buyPlans label>input+div>div:first-child{padding:0 36px 0 23px;margin:0 0 8px!important;font-size:14px!important;line-height:1.6!important;color:#353844;font-weight:600!important;overflow-wrap:anywhere}
.download-page #buyPlans label>input+div>div:nth-child(2){padding-left:23px;font-size:11px!important;color:#8a8b92!important}.download-page #buyPlans label>input+div>div:nth-child(3){font-size:10px!important;white-space:normal!important;overflow-wrap:anywhere;line-height:1.7!important;min-height:0!important;color:#9b896d!important;margin:7px 0 0 23px!important}
.download-page #buyPlans label>div:last-child{font-size:24px!important;color:#39363c!important;letter-spacing:-.5px;line-height:1.3;justify-self:end;align-self:end!important;font-weight:650!important;white-space:normal!important;overflow-wrap:anywhere;max-width:100%;margin:0}
.download-page #buyPlans .activity-corner-badge{position:absolute!important;top:13px!important;right:12px!important;left:auto!important;bottom:auto!important;width:auto!important;height:auto!important;min-width:0!important;padding:2px 6px!important;border-radius:4px!important;background:#f4efe4!important;border:1px solid #e5dac3;transform:none!important;box-shadow:none!important;clip-path:none!important;font-size:9px!important;line-height:1.6!important;color:#9a7c48!important;z-index:3!important}
.download-page #buyPlans .activity-corner-badge:before,.download-page #buyPlans .activity-corner-badge:after{display:none!important}.download-page #buyPlans .activity-corner-badge .badge-text{position:static!important;display:block!important;width:auto!important;height:auto!important;padding:0!important;transform:none!important;font-size:9px!important;line-height:1.6!important;letter-spacing:0!important;color:inherit!important;text-shadow:none!important}
.download-page #buyPlans .activity-corner-badge.limited{background:linear-gradient(120deg,#353129,#202128)!important;color:#e4cc98!important;border-color:#8b7959}
.download-page #buyChannels{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px!important;margin-bottom:21px!important;width:100%;min-width:0}.download-page #buyChannels label{box-sizing:border-box;display:flex!important;align-items:center!important;justify-content:center!important;min-height:48px;min-width:0!important;max-width:none!important;width:100%!important;padding:10px 13px!important;background:#fff!important;border:1px solid #e5e4e1!important;border-radius:10px!important;box-shadow:none!important;color:#656976}.download-page #buyChannels label:has(input:checked){border-color:#adb6c8!important;background:#f2f4f8!important;color:#353e51}.download-page #buyChannels input{accent-color:#606d88;flex-shrink:0}.download-page #buyChannels label>span{font-size:13px!important;font-weight:500!important}.download-page #buyChannels svg{width:18px!important;height:18px!important}
.download-page #buyModal>div:last-child>div:last-child{display:flex!important;flex-direction:row!important;justify-content:flex-end;gap:10px!important;padding-top:18px;border-top:1px solid #ebe9e6;margin-top:0!important}
.download-page #buyModal button{display:inline-flex!important;align-items:center;justify-content:center;min-width:100px!important;width:auto!important;min-height:42px!important;padding:10px 20px!important;font-size:13px!important;line-height:1.5!important;border-radius:9px!important;background:#333846;color:#f4f0e8;border:1px solid #333846;box-shadow:none}.download-page #buyModal button.gray{display:inline-flex!important;background:#fff!important;color:#80828c!important;border-color:#e1e0de!important}.download-page #buyModal button:disabled{opacity:.55!important;cursor:not-allowed!important}.download-page #confirmBuyBtn:hover{background:#444958}.download-page #buyQr{border:1px solid #e9e6e1!important;background:#f8f7f5!important;font-size:12px!important}
/* Scan-to-pay keeps a pure white QR quiet zone, away from decorative borders. */
.download-page #qrPayModal{width:430px!important;top:6vh!important;max-width:calc(100vw - 32px)!important;max-height:88vh;max-height:88dvh;overflow:auto!important;border:1px solid #e1e3e8!important;border-radius:19px!important;background:#fff!important;box-shadow:0 30px 90px #1018283d!important}
.download-page #qrPayModal>div:first-child{padding:21px 24px!important;background:linear-gradient(115deg,#30313a,#1d212b)!important;color:#f1f2f6;border-bottom:1px solid #ffffff0e!important}.download-page #qrPayHeadTitle{font-size:14px;font-weight:500!important;letter-spacing:.3px}.download-page #qrPayHeadIcon{display:grid;place-items:center;width:30px;height:30px;background:#fff;border-radius:8px;margin-right:10px!important;flex-shrink:0}.download-page #qrPayHeadIcon svg{width:19px;height:19px}.download-page #qrPayModal>div:last-child{padding:26px 24px 24px!important;background:radial-gradient(ellipse at 50% 65%,#f4f5f8,transparent 64%)}
.download-page #qrPayInfo{font-size:11px!important;font-weight:400!important;color:#8a8e99!important;letter-spacing:.3px;margin-bottom:22px!important}.download-page #qrPayInfo>span{display:block;margin-top:3px;color:#2d3341!important;font-size:35px;font-weight:650;letter-spacing:-1px;font-variant-numeric:tabular-nums;line-height:1.45}.download-page #qrPayInfo>div{color:#7c8493!important;font-size:12px!important;font-weight:400!important;margin-top:7px!important;overflow-wrap:anywhere}
.download-page #qrPayBox{min-height:0!important}.download-page #qrPayCanvas{margin:0 auto!important;padding:18px!important;border:1px solid #e6e8ed!important;border-radius:14px!important;background:#fff!important;box-shadow:0 8px 25px #27324708;max-width:100%;box-sizing:border-box}.download-page #qrPayCanvas canvas,.download-page #qrPayCanvas img{max-width:100%;height:auto!important;image-rendering:pixelated}.download-page #qrPaySubText{font-size:12px!important;color:#939aa8!important;margin-top:20px!important;line-height:1.8}
@media(max-width:768px){.download-page #buyModal{top:16px!important;max-height:calc(100dvh - 32px)!important;border-radius:17px!important}.download-page #buyModal>div:first-child{padding:20px!important}.download-page #buyModal>div:last-child{padding:18px 20px!important}.download-page #buyPlans{max-height:38vh!important;max-height:38dvh!important;overflow-y:auto!important;padding:1px 4px 1px 1px!important;scrollbar-width:thin;scrollbar-color:#b7ad9c #f6f4f1}.download-page #buyModal>div:last-child>div:last-child button{width:auto!important;margin:0!important}}
@media(max-width:540px){.download-page #buyModal{max-width:calc(100vw - 24px)!important}.download-page #buyModal>div:first-child{font-size:17px!important}.download-page #buyPlans{grid-template-columns:minmax(0,1fr)!important;max-height:36dvh!important}.download-page #buyPlans label{grid-template-columns:minmax(0,1fr) auto;min-height:100px!important;padding:14px!important;gap:9px}.download-page #buyPlans input[name=planId]{left:14px;top:17px}.download-page #buyPlans label>input+div>div:first-child{padding-right:0;font-size:13px!important}.download-page #buyPlans label>div:last-child{font-size:21px!important;max-width:110px;align-self:center!important;margin-top:13px}.download-page #buyPlans .activity-corner-badge{top:10px!important;right:14px!important;font-size:8px!important}.download-page #buyPlans label>input+div>div:nth-child(3){font-size:9px!important}.download-page #buyChannels label{padding:10px!important;min-height:43px}.download-page #buyChannels label>span{font-size:12px!important}.download-page #buyModal button{min-width:80px!important;font-size:12px!important;padding:10px 18px!important}.download-page #qrPayModal{top:16px!important;max-height:calc(100dvh - 32px)!important}.download-page #qrPayModal>div:first-child{padding:18px 20px!important}.download-page #qrPayModal>div:last-child{padding:23px 20px!important}.download-page #qrPayInfo>span{font-size:32px}.download-page #qrPayCanvas{padding:14px!important}}
/* Borderless dialog shells: retain inner controls, separators, focus rings and QR quiet zones.
   Portal type specificity also wins over the later-loaded portal.css shell rules. */
.download-page #buyModal,
.download-page #qrPayModal,
.download-page #authModal,
.download-page #acctModal,
.download-page #wxBindModal,
.download-page #payOkModal,
.download-page #dlCaptchaModal,
.download-page #promoModal,
.download-page .account-confirm,
.download-page .ui-security-overlay>div,
body.portal-page .portal-dialog,
body.portal-page .portal-security-overlay>div,
body.portal-page #wdModal{border:0!important}
.download-page #dlDownloadNotice{border:0!important}
.ui-toast{border:0;box-shadow:0 8px 24px #10182826,0 2px 6px #10182812}
/* Header brand marks fill their tile; white remains only behind the SVG cutout. */
.download-page #qrPayHeadIcon{padding:0;overflow:hidden;line-height:0}
.download-page #qrPayHeadIcon svg{display:block;width:100%;height:100%}
