:root{--ab:#1767e8;--ab2:#62a5ff;--ai:#163464;--am:#7283a2;--al:#dce7f8;--ag:#18a66a;--ap:#7d56e9;--ar:#df5375}*{box-sizing:border-box}.account-body{margin:0;font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--ai);background:radial-gradient(circle at 92% 0,rgba(104,169,255,.22),transparent 30%),linear-gradient(180deg,#eef5ff,#fff 48%,#f6f9ff);min-height:100vh}.account-body a{text-decoration:none;color:inherit}.account-header{padding:30px 20px 56px;color:#fff;background:linear-gradient(135deg,#1767e8,#66a9ff);border-radius:0 0 30px 30px}.account-header.admin-header{background:linear-gradient(135deg,#4c32a8,#8c6df2)}.account-header>div{max-width:1080px;margin:auto}.account-header h1{margin:20px 0 8px;font-size:clamp(30px,5vw,46px)}.account-header p{margin:0;color:rgba(255,255,255,.88)}.account-shell{max-width:1080px;margin:-30px auto 50px;padding:0 18px;position:relative}.account-shell.narrow{max-width:650px}.account-shell.wide{max-width:1240px}.account-card{background:#fff;border:1px solid var(--al);border-radius:24px;box-shadow:0 16px 42px rgba(42,87,165,.13);padding:26px}.account-card.block{margin-top:18px}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.account-form{display:grid;gap:14px}.account-form label{display:grid;gap:7px;font-weight:700}.account-form input,.account-form textarea,.account-form select{width:100%;padding:13px 15px;border:1px solid #d7e2f4;border-radius:13px;outline:none;background:#fff}.account-form input:focus,.account-form textarea:focus{border-color:var(--ab);box-shadow:0 0 0 4px rgba(23,103,232,.1)}.code-row{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.account-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:12px 20px;background:linear-gradient(135deg,var(--ab),var(--ab2));color:#fff;font-weight:800;cursor:pointer}.account-btn.secondary{background:#fff;color:var(--ab);border:1px solid #cfe0fb}.account-btn.admin{background:linear-gradient(135deg,#6b48d6,#a386ff)}.account-note,.mode-banner{padding:14px;border-radius:14px;background:#f3f7ff;color:var(--am);line-height:1.7}.mode-banner{margin:0 0 18px;border:1px solid #dbe8fb}.account-status{min-height:24px;color:#c74264}.text-link{color:var(--ab);font-weight:700}.profile-top{display:flex;justify-content:space-between;gap:18px;align-items:center}.profile-identity{display:flex;gap:15px;align-items:center}.profile-identity h2{margin:0}.profile-identity p{margin:6px 0;color:var(--am)}.profile-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.profile-avatar{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,#e7f1ff,#cfe2ff);font-size:31px}.member-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--am);font-size:13px}.member-badge{display:inline-flex;padding:5px 10px;border-radius:999px;background:#edf2fb;color:#526986;font-size:12px;font-weight:850}.member-badge.vip{background:#fff0c9;color:#9b6500}.member-badge.admin{background:#eee6ff;color:#6233bd}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.stat{background:#f5f8ff;border-radius:18px;padding:18px;text-align:center}.stat strong{display:block;font-size:28px;color:var(--ab)}.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.calendar div{min-height:42px;border-radius:12px;background:#f3f6fb;display:grid;place-items:center;font-size:13px}.calendar .checked{background:#dff7eb;color:#128358;font-weight:800}.data-list{display:grid;gap:12px}.data-item{display:flex;justify-content:space-between;gap:12px;background:#f7f9fd;border-radius:14px;padding:14px}.data-item small{color:var(--am)}.permission-list{display:flex;gap:8px;flex-wrap:wrap}.permission-chip{padding:8px 11px;border-radius:999px;background:#edf5ff;color:#245fae;font-size:13px;font-weight:700}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick-grid a{padding:16px;border:1px solid var(--al);border-radius:16px;background:#f8fbff;color:#315e9f;font-weight:750}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}.plan-card input{position:absolute;opacity:0}.plan-card span{display:grid;gap:8px;padding:20px;border:2px solid #e2eaf8;border-radius:18px;background:#fff;cursor:pointer}.plan-card input:checked+span{border-color:#6d84f5;background:#f2f5ff;box-shadow:0 10px 24px rgba(60,90,190,.12)}.plan-card b{font-size:27px;color:#e05c77}.plan-card small{color:var(--am)}.order-form{max-width:720px}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;min-width:800px}.admin-table th,.admin-table td{padding:11px;border:1px solid #dfe8f6;text-align:left}.admin-table th{background:#eef4ff}.tiny-btn{border:1px solid #cbdcf5;border-radius:9px;background:#fff;color:#2d68bd;padding:6px 8px;margin:2px;cursor:pointer}.admin-stats{grid-template-columns:repeat(3,1fr)}.home-account{width:min(calc(100% - 40px),1180px);margin:0 auto 20px;background:rgba(255,255,255,.9);border:1px solid rgba(50,100,190,.12);border-radius:22px;box-shadow:0 12px 35px rgba(50,90,165,.1);padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px}.home-account-main{display:flex;align-items:center;gap:14px}.home-account-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#eaf2ff;font-size:23px}.home-account-actions{display:flex;gap:10px;flex-wrap:wrap}.home-account .mini-pill{border:0;border-radius:999px;padding:10px 16px;background:#edf4ff;color:#1767e8;font-weight:800;cursor:pointer}.home-account .mini-pill.primary{background:#1767e8;color:#fff}.cloud-badge{font-size:12px;padding:4px 9px;border-radius:999px;background:#fff3d6;color:#9a6a00}.cloud-badge.online{background:#dcf7e9;color:#087a4a}.account-muted{color:#7787a8;margin-top:4px}
@media(max-width:760px){.account-grid,.plan-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:1fr 1fr}.quick-grid{grid-template-columns:1fr 1fr}.home-account{align-items:flex-start;flex-direction:column}.profile-top{align-items:flex-start;flex-direction:column}.profile-actions{justify-content:flex-start}.calendar{gap:5px}.calendar div{min-height:36px}.code-row{grid-template-columns:1fr}.account-btn{width:100%}.account-header{padding-bottom:48px}.account-card{padding:19px}}
/* v7 administrator dashboard */
.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.admin-toolbar h2{margin:0}.range-buttons{display:flex;gap:7px;flex-wrap:wrap}.range-buttons button{border:1px solid #d1dff4;border-radius:999px;background:#fff;color:#3c6098;padding:8px 12px;cursor:pointer}.range-buttons button.active{background:#1767e8;color:#fff;border-color:#1767e8}.admin-stats-v2{grid-template-columns:repeat(6,1fr)}.admin-stats-v2 .stat strong{font-size:23px}.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.chart-card{border:1px solid #dce7f8;border-radius:19px;padding:16px;background:#fbfdff}.chart-card h3{margin:0 0 12px}.chart-card canvas{width:100%;display:block}.chart-legend{display:flex;gap:9px;flex-wrap:wrap;margin-top:10px;font-size:12px;color:#61728f}.chart-legend span{padding:5px 8px;border-radius:999px;background:#edf4ff}.admin-two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inline-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center}.inline-check input{width:auto!important}.notice-admin-list{display:grid;gap:9px;margin-top:18px}.notice-admin-item{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid #e0e8f5;border-radius:14px;background:#f8fbff}.notice-admin-item p,.message-item p{margin:5px 0;color:#627391;line-height:1.55}.danger{color:#c63d5c!important;border-color:#f0bec9!important}.deleted-row{opacity:.55}.site-notice{display:grid;gap:8px}.user-table{min-width:1080px}
@media(max-width:980px){.admin-stats-v2{grid-template-columns:repeat(3,1fr)}.chart-grid,.admin-two-col{grid-template-columns:1fr}}@media(max-width:600px){.admin-stats-v2{grid-template-columns:1fr 1fr}.admin-toolbar{align-items:flex-start;flex-direction:column}}

/* v20 redemption and course dashboard */
.account-header.redeem-header{background:linear-gradient(135deg,#cf6a13,#ffb13c)}.account-btn.redeem{background:linear-gradient(135deg,#e47b18,#ffb64e)}.member-badge.none{background:#edf2fb;color:#60738f}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.section-heading h2{margin:0 0 6px}.section-heading p{margin:0;color:var(--am);line-height:1.6}.emphasis-card{border-color:#cfe1ff;background:linear-gradient(145deg,#fff,#f7fbff)}.owned-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.owned-course-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px;border:1px solid #d9e6f8;border-radius:19px;background:#fff;box-shadow:0 8px 24px #275c9a12;transition:.2s}.owned-course-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px #275c9a1e}.owned-course-card>span{font-size:32px}.owned-course-card strong,.owned-course-card small{display:block}.owned-course-card small{margin-top:5px;color:var(--am)}.owned-course-card b{color:var(--ab);white-space:nowrap}.empty-course{text-align:center;padding:24px;border:1px dashed #c9daf3;border-radius:18px;background:#fbfdff}.progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.progress-card{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:16px;border-radius:17px;background:#f6f9ff;border:1px solid #e0e9f7}.progress-card>span{font-size:26px}.progress-card strong,.progress-card small,.progress-card em{display:block}.progress-card small{color:#536b90;margin-top:3px}.progress-card em{font-style:normal;color:#8a98ae;font-size:11px;margin-top:5px}.progress-card b{color:var(--ab)}.zone-mini-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:10px}.zone-mini-grid a{display:grid;place-items:center;gap:6px;min-height:94px;padding:12px;border:1px solid #dce7f8;border-radius:17px;background:#f8fbff;transition:.2s}.zone-mini-grid a:hover{transform:translateY(-3px);background:#eef5ff}.zone-mini-grid span{font-size:27px}.zone-mini-grid strong{font-size:13px}.redeem-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.redeem-course-card{border:1px solid #dce7f8;border-radius:19px;background:linear-gradient(145deg,#fff,#f7faff);padding:19px;text-align:left;display:grid;grid-template-columns:auto 1fr;gap:12px;cursor:pointer;color:var(--ai);font:inherit;transition:.2s}.redeem-course-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #26569b1b}.redeem-course-card>span{font-size:34px}.redeem-course-card strong,.redeem-course-card small,.redeem-course-card b{display:block}.redeem-course-card small{color:var(--am);margin-top:5px;min-height:38px}.redeem-course-card b{grid-column:2;color:var(--ab);font-size:13px}.redeem-course-card.disabled{opacity:.55;cursor:not-allowed}.redeem-dialog{width:min(92vw,480px);border:0;border-radius:25px;padding:0;box-shadow:0 28px 90px #183f7655}.redeem-dialog::backdrop{background:#102d5366;backdrop-filter:blur(4px)}.redeem-dialog form{padding:34px;display:grid;gap:15px;text-align:center}.redeem-dialog input{width:100%;padding:15px;border:1px solid #ccd9ed;border-radius:14px;text-align:center;font-size:20px;letter-spacing:3px;text-transform:lowercase}.dialog-close{position:absolute;right:14px;top:12px;border:0;background:#edf3fb;border-radius:50%;width:34px;height:34px;font-size:22px;cursor:pointer}.dialog-icon{font-size:46px}.account-status.success{color:#118357}.code-generator-form{display:grid;grid-template-columns:2fr 1fr auto;gap:12px;align-items:end}.code-generator-form label{display:grid;gap:7px;font-weight:750}.code-generator-form select,.code-generator-form input,.generated-codes-box textarea{width:100%;padding:12px 14px;border:1px solid #d6e2f3;border-radius:13px;background:#fff}.generated-codes-box{margin-top:18px;padding:16px;border:1px solid #d8e7fb;border-radius:18px;background:#f8fbff}.generated-codes-box textarea{font:700 17px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:2px;resize:vertical}.redeem-code-cell{font-size:14px;font-weight:800;letter-spacing:1px}.code-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}.code-status.unused{background:#fff2c9;color:#8b6100}.code-status.redeemed{background:#ddf7e9;color:#0c7e4e}.code-status.revoked{background:#fde6eb;color:#aa3550}.course-chip-wrap{display:flex;gap:5px;flex-wrap:wrap}.course-chip{display:inline-flex;padding:5px 8px;border-radius:999px;background:#e7f1ff;color:#2865b6;font-size:11px;font-weight:750}.course-chip.empty{background:#f0f2f6;color:#7c899d}.code-table{min-width:980px}
@media(max-width:960px){.zone-mini-grid{grid-template-columns:repeat(4,1fr)}.redeem-course-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.owned-course-grid,.progress-grid,.redeem-course-grid{grid-template-columns:1fr}.section-heading{flex-direction:column}.zone-mini-grid{grid-template-columns:repeat(4,1fr)}.code-generator-form{grid-template-columns:1fr}.owned-course-card{grid-template-columns:auto 1fr}.owned-course-card b{grid-column:2}.profile-actions .account-btn{width:auto}.profile-actions{width:100%}}
@media(max-width:420px){.zone-mini-grid{grid-template-columns:repeat(2,1fr)}}

/* v21 compliance and account privacy */
.privacy-setting strong{display:block}.privacy-actions .tiny-btn{padding:9px 12px}.danger-zone h2{color:#a72d4a}.delete-list{padding-left:22px}.account-card a.text-link{text-decoration:none}.account-status.success{color:#118357}

/* v22 email/SMS registration selector */
.reg-method-switch{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:4px;background:#f3f7ff;border:1px solid #dce7f8;border-radius:15px}.reg-method-option{display:block!important;position:relative}.reg-method-option input{position:absolute;opacity:0;pointer-events:none}.reg-method-option span{display:flex;align-items:center;justify-content:center;padding:11px 13px;border-radius:11px;color:#60769a;font-weight:800;cursor:pointer}.reg-method-option input:checked+span{background:#fff;color:var(--ab);box-shadow:0 5px 16px rgba(38,87,160,.12)}.compact-note{margin:0;padding:10px 12px;font-size:13px}.account-form [hidden]{display:none!important}


/* v24 high-tech floating authentication experience */
.auth-page{overflow-x:hidden;background:#061326;color:#eaf3ff}.auth-bg{position:fixed;inset:0;pointer-events:none;overflow:hidden;background:radial-gradient(circle at 18% 8%,rgba(41,121,255,.32),transparent 35%),radial-gradient(circle at 82% 28%,rgba(117,73,255,.28),transparent 34%),linear-gradient(145deg,#061326 0%,#0a1b34 52%,#071426 100%);z-index:0}.auth-grid-lines{position:absolute;inset:-20%;opacity:.23;background-image:linear-gradient(rgba(117,174,255,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(117,174,255,.22) 1px,transparent 1px);background-size:48px 48px;transform:perspective(500px) rotateX(62deg) translateY(28%);transform-origin:center bottom;mask-image:linear-gradient(to top,#000,transparent 75%)}.auth-orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.75}.auth-orb-a{width:330px;height:330px;left:-100px;top:18%;background:radial-gradient(circle at 35% 35%,#3ac7ff,#1456ef 48%,transparent 70%)}.auth-orb-b{width:430px;height:430px;right:-160px;top:7%;background:radial-gradient(circle at 45% 40%,#a77bff,#4a28b8 50%,transparent 72%)}.auth-topbar{position:relative;z-index:3;width:min(1180px,calc(100% - 36px));margin:0 auto;padding:26px 0;display:flex;align-items:center;justify-content:space-between;color:#dceaff}.auth-home{font-weight:750;color:#dceaff!important;opacity:.9}.auth-mini-brand{display:flex;align-items:center;gap:10px}.auth-mini-brand small,.auth-mini-brand b{display:block}.auth-mini-brand small{font-size:11px;color:#88a9d5;margin-top:2px}.auth-mini-logo{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:11px;font-weight:900;letter-spacing:.7px;background:linear-gradient(145deg,rgba(76,169,255,.35),rgba(105,72,255,.28));border:1px solid rgba(134,194,255,.34);box-shadow:inset 0 0 18px rgba(89,164,255,.18),0 10px 25px rgba(0,0,0,.2)}.auth-stage{position:relative;z-index:2;min-height:calc(100vh - 112px);display:grid;place-items:start center;padding:35px 18px 72px}.auth-float-card{width:min(900px,100%);display:grid;grid-template-columns:.78fr 1.22fr;border:1px solid rgba(132,188,255,.24);border-radius:32px;background:linear-gradient(145deg,rgba(11,30,57,.82),rgba(11,24,50,.74));box-shadow:0 38px 110px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.06);backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px);overflow:hidden;animation:authFloat 7s ease-in-out infinite}.auth-card-intro{padding:44px 34px;border-right:1px solid rgba(135,186,255,.16);background:linear-gradient(160deg,rgba(39,108,223,.16),rgba(117,64,239,.09));display:flex;flex-direction:column;justify-content:center}.auth-card-intro h1{font-size:clamp(34px,5vw,56px);line-height:1.05;margin:18px 0 15px;color:#fff;letter-spacing:-1px}.auth-card-intro p{color:#9ab3d5;line-height:1.8;margin:0}.auth-pulse{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.8px;color:#6ee7ff;font-weight:900}.auth-pulse i{width:9px;height:9px;border-radius:50%;background:#39e6ff;box-shadow:0 0 0 7px rgba(57,230,255,.08),0 0 22px #39e6ff}.auth-mode{margin-top:26px!important;padding:9px 12px!important;background:rgba(26,80,147,.24)!important;border:1px solid rgba(104,170,255,.2)!important;color:#8cb6e8!important;font-size:11px}.auth-panel-wrap{padding:28px 34px 34px;background:rgba(5,18,38,.36)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:5px;background:rgba(8,26,51,.7);border:1px solid rgba(121,176,255,.18);border-radius:17px;margin-bottom:24px}.auth-tab{border:0;border-radius:12px;padding:11px;background:transparent;color:#7f9dc5;font:800 14px/1.2 inherit;cursor:pointer;transition:.22s}.auth-tab.active{color:#fff;background:linear-gradient(135deg,rgba(31,119,255,.92),rgba(107,72,243,.92));box-shadow:0 8px 24px rgba(30,108,240,.25)}.auth-panel{animation:authPanelIn .24s ease}.auth-form{gap:13px}.auth-form label{color:#b9cce6;font-size:13px}.auth-form input{background:rgba(4,17,36,.62)!important;border:1px solid rgba(127,177,244,.2)!important;color:#f3f8ff!important;border-radius:14px!important;padding:13px 14px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.auth-form input::placeholder{color:#5f7b9f}.auth-form input:focus{border-color:#4a9bff!important;box-shadow:0 0 0 4px rgba(56,139,255,.11),0 0 24px rgba(42,125,255,.12)!important}.auth-primary{width:100%;border-radius:14px!important;background:linear-gradient(135deg,#2381ff,#714bf5)!important;box-shadow:0 12px 30px rgba(34,117,247,.25);padding:13px 18px!important}.auth-form .account-btn.secondary{background:rgba(11,35,70,.7)!important;color:#76b9ff!important;border:1px solid rgba(93,158,255,.28)!important;border-radius:14px!important}.auth-form .account-note{background:rgba(13,40,75,.48);color:#7898bf;border:1px solid rgba(109,166,240,.13)}.auth-form .legal-checkbox{color:#7f9fc8;font-size:12px}.auth-form .legal-checkbox a{color:#73baff}.auth-form-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#6f8daf;font-size:11px}.auth-form-foot .text-link{color:#6db5ff}.password-field{position:relative}.password-field input{padding-right:46px!important}.password-toggle{position:absolute;right:9px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:0;border-radius:9px;background:rgba(81,143,228,.1);color:#8fb7e9;cursor:pointer}.auth-code-row{grid-template-columns:1fr 156px}.auth-panel .account-status{font-size:12px}.auth-panel .account-status.success{color:#5af0b1}.auth-page .site-legal-footer{position:relative;z-index:3;margin-top:0}.auth-page .reg-method-switch{background:rgba(5,22,46,.65);border-color:rgba(112,169,244,.16)}.auth-page .reg-method-option span{color:#7393bc}.auth-page .reg-method-option input:checked+span{background:linear-gradient(135deg,rgba(32,115,246,.22),rgba(107,70,236,.22));color:#b8dcff;box-shadow:inset 0 0 0 1px rgba(91,161,255,.18)}
@keyframes authFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes authPanelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:760px){.auth-topbar{padding:18px 0}.auth-mini-brand small{display:none}.auth-stage{padding-top:12px}.auth-float-card{grid-template-columns:1fr;border-radius:24px;animation:none}.auth-card-intro{padding:24px 22px;border-right:0;border-bottom:1px solid rgba(135,186,255,.14)}.auth-card-intro h1{font-size:34px;margin:12px 0 8px}.auth-card-intro p{font-size:12px}.auth-mode{display:none}.auth-panel-wrap{padding:22px}.auth-code-row{grid-template-columns:1fr}.auth-form-foot{align-items:flex-start;flex-direction:column}.auth-page .account-btn{width:100%}}

/* V25 auth refresh: light cyan / cobalt glass, no purple-heavy account-center panel */
.auth-page{background:#eef8ff;color:#12345f}.auth-bg{background:radial-gradient(circle at 12% 15%,rgba(35,196,255,.24),transparent 34%),radial-gradient(circle at 88% 12%,rgba(48,116,255,.18),transparent 34%),linear-gradient(145deg,#f7fcff 0%,#eaf7ff 48%,#f2f7ff 100%)}.auth-grid-lines{opacity:.18;background-image:linear-gradient(rgba(20,112,196,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(20,112,196,.18) 1px,transparent 1px)}.auth-orb-a{background:radial-gradient(circle at 35% 35%,#79e8ff,#2bb9f6 48%,transparent 70%);opacity:.3}.auth-orb-b{background:radial-gradient(circle at 45% 40%,#91bdff,#4c83ff 50%,transparent 72%);opacity:.28}.auth-topbar{color:#174b7e}.auth-home{color:#174b7e!important}.auth-stage{padding-top:26px}.auth-float-card{width:min(820px,100%);grid-template-columns:.88fr 1.12fr;border:1px solid rgba(44,135,204,.22);background:rgba(255,255,255,.78);box-shadow:0 32px 90px rgba(33,105,162,.18),inset 0 1px 0 #fff;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.auth-card-intro{background:linear-gradient(160deg,rgba(224,249,255,.95),rgba(230,239,255,.88));border-right:1px solid rgba(45,133,196,.14)}.auth-card-intro h1{color:#103a68;font-size:clamp(26px,4vw,44px);letter-spacing:-.6px}.auth-card-intro h1 span{font-size:.68em;color:#187fc4}.auth-card-intro p{color:#54789b}.auth-pulse{color:#1488b7}.auth-pulse i{background:#28d6e7;box-shadow:0 0 0 7px rgba(40,214,231,.10),0 0 22px rgba(40,214,231,.5)}.auth-mode{background:rgba(228,248,255,.86)!important;border:1px solid rgba(41,151,205,.18)!important;color:#4383a8!important}.auth-panel-wrap{background:rgba(255,255,255,.64)}.auth-tabs{background:#eef8ff;border-color:#cce7f7}.auth-tab{color:#6d8aa5}.auth-tab.active{color:#fff;background:linear-gradient(135deg,#1aa9e8,#2878f0);box-shadow:0 8px 24px rgba(35,136,220,.22)}.auth-form label{color:#345c7c}.auth-form input{background:rgba(248,253,255,.95)!important;border:1px solid #c8e1f2!important;color:#153956!important;box-shadow:inset 0 1px 0 #fff}.auth-form input::placeholder{color:#8aa7bb}.auth-form input:focus{border-color:#27a5df!important;box-shadow:0 0 0 4px rgba(39,165,223,.1)!important}.auth-primary{background:linear-gradient(135deg,#13b6d9,#2877ee)!important;box-shadow:0 12px 28px rgba(35,130,208,.22)}.auth-form .account-btn.secondary{background:#eef9ff!important;color:#167fb2!important;border:1px solid #c3e5f4!important}.auth-form .account-note{background:#f2fbff;color:#6688a1;border-color:#d7ebf6}.auth-form .legal-checkbox{color:#66839b}.auth-form .legal-checkbox a,.auth-form-foot .text-link{color:#087fae}.auth-form-foot{color:#718da4}.password-toggle{background:#e9f7ff;color:#3586b2}.auth-page .reg-method-switch{background:#f0f9ff;border-color:#d3e9f6}.auth-page .reg-method-option span{color:#6889a2}.auth-page .reg-method-option input:checked+span{background:linear-gradient(135deg,#dcf7ff,#e6eeff);color:#126f9d;box-shadow:inset 0 0 0 1px #bde3f3}.auth-existing-login{width:100%;border:0;background:transparent;color:#087cae;font:800 13px/1.2 inherit;padding:10px;cursor:pointer}.auth-existing-login:hover{text-decoration:underline}.auth-page .site-legal-footer{background:#163049}.auth-page .site-legal-footer a,.auth-page .site-legal-footer__brand,.auth-page .site-legal-footer__meta{color:#b9d3e7!important}
@media(max-width:760px){.auth-card-intro{padding:22px}.auth-card-intro h1{font-size:28px}.auth-float-card{width:min(560px,100%)}}

/* V25 admin sales analytics + direct messaging */
.sales-filters{display:flex;gap:8px;flex-wrap:wrap}.sales-filters select{border:1px solid #d9e5f2;border-radius:10px;padding:8px 10px;background:#fff;color:#163657}.sales-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.sales-summary>div{padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,#effbff,#f4f7ff);border:1px solid #d7eaf6}.sales-summary span{display:block;color:#6b86a0;font-size:12px}.sales-summary strong{display:block;font-size:27px;color:#115b8d;margin-top:4px}.sales-chart{overflow-x:auto;border:1px solid #e1eaf3;border-radius:18px;padding:12px;background:#fff}.sales-chart svg{width:100%;min-width:680px;height:auto}.sales-chart text{font:11px system-ui;fill:#71869a}.sales-axis{stroke:#d8e4ee;stroke-width:1}.sales-bar{fill:#45b8d8;opacity:.78}.sales-line{stroke:#236ee8;stroke-width:3}.sales-point{fill:#fff;stroke:#236ee8;stroke-width:2}.sales-legend{display:flex;gap:18px;font-size:12px;color:#61798e;margin:2px 4px 8px}.sales-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px}.bar-dot{background:#45b8d8}.line-dot{background:#236ee8;border-radius:50%!important}.admin-dialog{width:min(560px,calc(100% - 32px));border:0;border-radius:20px;padding:0;box-shadow:0 30px 90px rgba(19,52,83,.28)}.admin-dialog::backdrop{background:rgba(12,31,53,.45);backdrop-filter:blur(3px)}.admin-dialog form{padding:24px}

/* V26 auth brand: two complete, non-wrapping lines */
.auth-brand-title{display:flex;flex-direction:column;gap:5px;align-items:flex-start;line-height:1.06!important}
.auth-brand-title .brand-en,.auth-brand-title .brand-cn{display:block;white-space:nowrap;max-width:100%}
.auth-brand-title .brand-en{font-size:.84em;letter-spacing:-.8px}
.auth-brand-title .brand-cn{font-size:.66em!important;color:#187fc4!important;letter-spacing:0}
@media(max-width:760px){.auth-brand-title .brand-en{font-size:.78em}.auth-brand-title .brand-cn{font-size:.63em!important}}

/* V28: login/register card remains visually floating, but is fixed in place (no bobbing motion). */
.auth-float-card{animation:none!important;transform:none!important}
.auth-panel{animation:none!important}
.reg-method-switch-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.wechat-register-box{display:grid;grid-template-columns:54px 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid #c7e9dc;border-radius:16px;background:linear-gradient(135deg,#f2fff9,#effaff);margin:2px 0 4px}
.wechat-register-box[hidden]{display:none!important}
.wechat-register-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:#07c160;color:#fff;font-size:14px;font-weight:900;box-shadow:0 10px 24px rgba(7,193,96,.18)}
.wechat-register-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.wechat-register-copy strong{color:#164c3a;font-size:13px}.wechat-register-copy span{color:#66877c;font-size:11px;line-height:1.55}
.wechat-btn{width:auto!important;white-space:nowrap;background:#07c160!important;color:#fff!important;border:0!important;border-radius:13px!important;box-shadow:0 8px 20px rgba(7,193,96,.18)}
.wechat-callback-card{width:min(560px,calc(100% - 36px));margin:10vh auto;padding:32px;border:1px solid #cce7f7;border-radius:26px;background:rgba(255,255,255,.9);box-shadow:0 28px 80px rgba(33,105,162,.18);text-align:center}.wechat-callback-card h1{color:#123f6a}.wechat-callback-card p{color:#64829b;line-height:1.75}.wechat-callback-spinner{width:42px;height:42px;margin:0 auto 18px;border-radius:50%;border:4px solid #d9eef9;border-top-color:#13b6d9;animation:wxspin .8s linear infinite}@keyframes wxspin{to{transform:rotate(360deg)}}
@media(max-width:760px){.reg-method-switch-3{grid-template-columns:1fr!important}.wechat-register-box{grid-template-columns:48px 1fr}.wechat-btn{grid-column:1/-1;width:100%!important}.wechat-register-icon{width:48px;height:48px}}

/* V29 admin header quick navigation */
.admin-header-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.admin-header-nav a,.admin-header-nav button{display:inline-flex;align-items:center;justify-content:center;padding:8px 13px;border:1px solid rgba(255,255,255,.34);border-radius:999px;background:rgba(255,255,255,.10);color:#fff!important;font-size:13px;font-weight:800;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:.18s ease}
.admin-header-nav a:hover,.admin-header-nav button:hover{background:rgba(255,255,255,.20);transform:translateY(-1px)}
@media(max-width:760px){.admin-header-nav{gap:8px}.admin-header-nav a,.admin-header-nav button{padding:8px 11px;font-size:12px}}

/* V30 admin logout */
.admin-header-nav button{font-family:inherit;cursor:pointer;appearance:none;-webkit-appearance:none}

/* V31: WeChat QR login card */
.wechat-quick-login{width:100%;border:1px solid rgba(38,132,255,.28);border-radius:15px;padding:11px 14px;background:linear-gradient(135deg,rgba(18,185,92,.12),rgba(45,132,255,.09));color:#dff8ea;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;font:inherit;text-align:left}.wechat-quick-login:hover{border-color:rgba(74,222,128,.5);background:linear-gradient(135deg,rgba(18,185,92,.19),rgba(45,132,255,.13))}.wechat-quick-login .wechat-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#16b95c;color:#fff;font-weight:900}.wechat-quick-login strong,.wechat-quick-login small{display:block}.wechat-quick-login small{margin-top:2px;color:#9fc9b0;font-size:11px}.wechat-qr-dialog{width:min(92vw,470px);border:0;padding:0;border-radius:24px;background:#fff;box-shadow:0 28px 100px rgba(8,35,80,.35);overflow:visible}.wechat-qr-dialog::backdrop{background:rgba(6,20,43,.56);backdrop-filter:blur(7px)}.wechat-qr-shell{position:relative;padding:36px 34px 30px;text-align:center;color:#0b2f66}.wechat-qr-device{position:absolute;right:22px;top:16px;color:#2486ff;font-size:27px}.wechat-qr-close{position:absolute;right:14px;top:12px;z-index:2;width:36px;height:36px;border:0;border-radius:50%;background:#edf6ff;color:#2184e8;font-size:25px;cursor:pointer}.wechat-qr-shell h2{margin:8px 0 8px;font-size:30px;letter-spacing:.02em;color:#075ccc}.wechat-qr-sub{margin:0 auto 18px;max-width:350px;color:#697c98;line-height:1.65;font-size:14px}.wechat-qr-code{width:230px;height:230px;margin:0 auto;padding:10px;border:1px solid #d7dce4;border-radius:10px;background:#fff;display:grid;place-items:center}.wechat-qr-code img,.wechat-qr-code canvas{max-width:210px!important;max-height:210px!important}.wechat-qr-loading{color:#71829b;font-size:14px;line-height:1.6}.wechat-qr-status{margin:16px auto 0;color:#6e7e95;font-size:13px}.wechat-qr-actions{margin-top:14px;display:flex;justify-content:center;gap:9px;flex-wrap:wrap}.wechat-qr-actions .tiny-btn{background:#f4f8fd}.wechat-register-box .wechat-register-copy span{line-height:1.45}@media(max-width:620px){.wechat-qr-shell{padding:34px 20px 26px}.wechat-qr-shell h2{font-size:25px}.wechat-qr-code{width:218px;height:218px}.wechat-qr-code img,.wechat-qr-code canvas{max-width:198px!important;max-height:198px!important}}

.wechat-qr-code{overflow:hidden}.wechat-qr-code iframe{width:300px!important;height:360px!important;border:0!important;transform:translateY(-4px);transform-origin:top center}.wechat-qr-code>div{margin:auto}@media(max-width:620px){.wechat-qr-code iframe{width:290px!important;height:350px!important}}

/* V33 mobile auth: balanced, single-column card on phones/tablets */
@media(max-width:1024px){
  .auth-stage{padding:14px 14px 46px!important;place-items:start center!important}
  .auth-float-card{width:min(620px,100%)!important;grid-template-columns:1fr!important;border-radius:24px!important;overflow:hidden!important}
  .auth-card-intro{padding:20px 22px 17px!important;border-right:0!important;border-bottom:1px solid rgba(45,133,196,.14)!important;min-height:0!important;display:block!important}
  .auth-pulse{font-size:9px!important}.auth-card-intro h1{margin:10px 0 6px!important;font-size:30px!important;display:grid!important;grid-template-columns:auto auto!important;column-gap:8px!important;justify-content:start!important;align-items:baseline!important}.auth-brand-title .brand-en,.auth-brand-title .brand-cn{font-size:1em!important;white-space:nowrap!important}.auth-brand-title .brand-cn{color:#187fc4!important}.auth-card-intro p{font-size:12px!important;line-height:1.5!important}.auth-mode{display:none!important}
  .auth-panel-wrap{padding:20px 22px 24px!important;width:100%!important;box-sizing:border-box!important}.auth-tabs{margin-bottom:18px!important}.auth-form{gap:12px!important}.auth-form input{min-height:46px!important;font-size:16px!important;box-sizing:border-box!important}.auth-code-row{grid-template-columns:1fr!important}.auth-form-foot{flex-direction:row!important;align-items:center!important;flex-wrap:wrap!important}.wechat-quick-login{min-height:58px!important}
}
@media(max-width:560px){
  .auth-topbar{padding:14px 0!important}.auth-stage{padding-left:10px!important;padding-right:10px!important}.auth-float-card{border-radius:20px!important}.auth-card-intro{padding:17px 17px 14px!important}.auth-card-intro h1{font-size:23px!important;grid-template-columns:1fr!important;row-gap:2px!important}.auth-brand-title .brand-en,.auth-brand-title .brand-cn{font-size:1em!important}.auth-panel-wrap{padding:17px!important}.auth-tabs{border-radius:15px!important}.auth-tab{padding:10px!important}.reg-method-switch-3{grid-template-columns:1fr!important}.wechat-register-box{grid-template-columns:44px 1fr!important}.wechat-register-icon{width:44px!important;height:44px!important}.wechat-btn{grid-column:1/-1!important;width:100%!important}.auth-form-foot{font-size:11px!important}}


/* V34.4 WeChat QR modal + existing-account binding */
.wechat-qr-dialog{width:min(94vw,620px)!important;border-radius:28px!important;overflow:hidden!important;background:#fff!important}
.wechat-qr-shell{padding:34px 40px 32px!important;text-align:left!important;color:#103a68!important}
.wechat-qr-head{display:flex;align-items:center;justify-content:center;gap:16px;margin:2px auto 18px;text-align:left;max-width:480px}
.wechat-qr-badge{flex:0 0 54px;width:54px;height:54px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,#15c76a,#08a953);color:#fff;font-size:16px;font-weight:900;box-shadow:0 12px 28px rgba(7,193,96,.22)}
.wechat-qr-shell h2{margin:0 0 5px!important;font-size:29px!important;color:#075ccc!important;line-height:1.2}
.wechat-qr-sub{margin:0!important;max-width:none!important;color:#697c98!important;line-height:1.65!important;font-size:14px!important}
.wechat-qr-stage{width:100%;display:flex;justify-content:center;align-items:center;padding:8px 0 2px}
.wechat-qr-code{width:330px!important;height:362px!important;margin:0 auto!important;padding:0!important;border:1px solid #dce7f4!important;border-radius:20px!important;background:linear-gradient(180deg,#fff,#f9fcff)!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;overflow:hidden!important;box-shadow:0 14px 36px rgba(42,97,159,.10)}
.wechat-qr-code iframe{display:block!important;width:300px!important;height:360px!important;border:0!important;transform:none!important;margin:0 auto!important}
.wechat-qr-code img,.wechat-qr-code canvas{max-width:280px!important;max-height:280px!important;margin:auto!important}
.wechat-qr-status{text-align:center!important;margin:14px auto 0!important;color:#6e7e95!important;min-height:20px}
.wechat-qr-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;max-width:420px;margin:16px auto 0!important}
.wechat-qr-actions .tiny-btn{margin:0!important;padding:11px 16px!important;border-radius:12px!important;font-weight:800!important;background:#f5f9ff!important}
.wechat-qr-actions .tiny-btn.primary{background:linear-gradient(135deg,#17b969,#1595e8)!important;color:#fff!important;border-color:transparent!important}
.wechat-qr-close{right:16px!important;top:14px!important;width:38px!important;height:38px!important;font-size:25px!important}
.wechat-bind-card{border-color:#cfeadb!important;background:linear-gradient(145deg,#fff,#f5fffa)!important}
.wechat-bind-card .section-heading{align-items:center}
.wechat-bind-action{background:linear-gradient(135deg,#14bf65,#0fa856)!important;box-shadow:0 10px 24px rgba(7,193,96,.18)!important;white-space:nowrap}
.wechat-bind-action span{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:8px;background:rgba(255,255,255,.18);margin-right:7px;font-size:11px}
.wechat-bind-note{margin-top:14px;padding:12px 14px;border-radius:13px;background:#edfaf3;color:#5f8070;font-size:13px;line-height:1.65}
.wechat-bind-note.success{background:#e4f9ed;color:#117b4b;font-weight:700}
@media(max-width:620px){.wechat-qr-dialog{width:min(96vw,520px)!important}.wechat-qr-shell{padding:28px 16px 24px!important}.wechat-qr-head{padding:0 20px 0 4px;gap:11px}.wechat-qr-badge{flex-basis:44px;width:44px;height:44px;border-radius:14px;font-size:13px}.wechat-qr-shell h2{font-size:23px!important}.wechat-qr-sub{font-size:12px!important}.wechat-qr-code{width:310px!important;max-width:100%!important;height:356px!important}.wechat-qr-code iframe{width:300px!important;height:350px!important}.wechat-qr-actions{grid-template-columns:1fr!important}.wechat-bind-card .section-heading{align-items:flex-start}.wechat-bind-action{width:100%!important;margin-top:8px}}
