:root{--bg:#f4f5f7;--surface:#fff;--surface-2:#f8f9fb;--ink:#11151c;--muted:#6d7480;--line:#e4e7ec;--dark:#090b0f;--dark-2:#12151b;--gold:#c8a45e;--gold-light:#ead7a9;--blue:#4263eb;--green:#15956b;--red:#c54444;--purple:#805ad5;--shadow:0 18px 50px rgba(15,20,29,.08);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);font-size:15px;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}.brand-lockup{display:inline-flex;align-items:center;gap:13px;color:#fff}.brand-lockup>span:last-child{display:flex;flex-direction:column}.brand-lockup b{font-size:19px;letter-spacing:.03em}.brand-lockup small{color:#959ca9;font-size:9px;letter-spacing:.2em}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid rgba(234,215,169,.5);background:linear-gradient(145deg,rgba(200,164,94,.2),rgba(200,164,94,.03));color:var(--gold-light);font-family:Georgia,"Songti SC",serif;font-size:21px}.brand-lockup.compact{gap:10px}.brand-lockup.compact .brand-mark{width:38px;height:38px}.brand-lockup.compact b{font-size:16px}.kicker{margin:0 0 8px;color:#9c7a39;font-size:11px;font-weight:800;letter-spacing:.18em}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:#c5a66b;font-size:11px;font-weight:700;letter-spacing:.18em}.eyebrow i{width:24px;height:1px;background:#c5a66b}

/* 登录与注册 */
.auth-page{min-height:100vh;background:var(--dark);color:#fff}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(480px,.92fr)}.auth-brand{position:relative;min-height:100vh;overflow:hidden;padding:48px clamp(48px,6vw,100px);display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 18% 85%,rgba(126,93,42,.22),transparent 31%),radial-gradient(circle at 88% 18%,rgba(47,60,82,.35),transparent 32%),linear-gradient(135deg,#080a0d,#11151b 58%,#0b0d11)}.auth-brand:after{content:"";position:absolute;right:-130px;top:22%;width:350px;height:350px;border:1px solid rgba(212,180,116,.16);transform:rotate(45deg);box-shadow:0 0 0 70px rgba(212,180,116,.025),0 0 0 140px rgba(212,180,116,.018)}.brand-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(to right,#000,transparent 82%);pointer-events:none}.brand-copy{position:relative;z-index:1;max-width:620px}.brand-copy h1{margin:22px 0 22px;font-family:Georgia,"Songti SC",serif;font-weight:500;font-size:clamp(50px,5.6vw,82px);line-height:1.08;letter-spacing:-.035em}.brand-copy h1 em{color:var(--gold-light);font-style:normal}.brand-copy p{max-width:510px;margin:0;color:#aeb4be;font-size:16px;line-height:1.9}.trust-row{position:relative;z-index:1;display:flex;gap:26px;flex-wrap:wrap;color:#8f97a3;font-size:12px}.trust-row span{display:flex;align-items:center;gap:8px}.trust-row span+span:before{content:"";width:1px;height:12px;margin-right:18px;background:#373c44}.trust-dot,.system-state i{width:7px;height:7px;border-radius:50%;background:#42c594;box-shadow:0 0 0 4px rgba(66,197,148,.12)}.auth-card-wrap{min-height:100vh;padding:48px clamp(36px,6vw,96px);display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f5f6f8;color:var(--ink)}.auth-card{width:100%;max-width:460px}.auth-card-head{margin-bottom:32px}.auth-card-head h2{margin:0 0 8px;font-size:32px;letter-spacing:-.035em}.auth-card-head>p:last-child{margin:0;color:var(--muted)}.mobile-brand{display:none}.alert{display:flex;align-items:center;gap:10px;margin:0 0 22px;padding:12px 14px;border-radius:9px;font-size:14px}.alert span{display:grid;place-items:center;flex:0 0 22px;height:22px;border-radius:50%;font-size:12px;font-weight:800}.alert.error{background:#fff0f0;border:1px solid #f5cccc;color:#9d3030}.alert.error span{background:#c54444;color:#fff}.alert.success{background:#eaf8f2;border:1px solid #c3ebdc;color:#117656}.alert.success span{background:#15956b;color:#fff}.auth-form{display:flex;flex-direction:column;gap:18px}.field-label{display:flex;flex-direction:column;gap:7px;color:#2c323b;font-size:13px;font-weight:700}.field-label>span:not(.password-field):not(.code-field){color:#999;font-weight:400}.field-label input,.field-label select,.admin-form-grid input,.admin-form-grid select,.stack-form input,.stack-form select,.search-form input{width:100%;height:49px;border:1px solid #d8dce2;border-radius:8px;background:#fff;padding:0 14px;color:var(--ink);outline:none;transition:border-color .18s,box-shadow .18s}.field-label input:focus,.admin-form-grid input:focus,.admin-form-grid select:focus,.stack-form input:focus,.stack-form select:focus,.search-form input:focus{border-color:#a78749;box-shadow:0 0 0 3px rgba(200,164,94,.13)}.field-label input::placeholder{color:#aab0b8}.password-field,.code-field{position:relative;display:block}.password-field input{padding-right:60px}.password-field button{position:absolute;right:5px;top:5px;height:39px;border:0;background:transparent;color:#7e858f;font-size:12px;font-weight:700}.code-field{display:grid;grid-template-columns:1fr 118px;gap:9px}.code-button{height:49px;border:1px solid #cfb77f;border-radius:8px;background:#fffaf0;color:#876827;font-size:13px;font-weight:700}.form-status{min-height:0;margin:-10px 0 -6px;color:var(--muted);font-size:12px}.form-status:empty{display:none}.success-text{color:var(--green)}.error-text{color:var(--red)}.form-options{display:flex;justify-content:space-between;align-items:center;margin-top:-2px;color:#727985;font-size:13px}.form-options label{display:flex;align-items:center;gap:7px}.form-options input{accent-color:#9a793d}.form-options a,.auth-switch a{color:#8a692e;font-weight:700}.primary-button{height:52px;border:0;border-radius:8px;background:linear-gradient(110deg,#b88d43,#d4b36e);box-shadow:0 9px 22px rgba(156,116,48,.23);display:flex;align-items:center;justify-content:center;gap:10px;color:#111;font-weight:800;transition:transform .15s,box-shadow .15s}.primary-button:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(156,116,48,.3)}.primary-button span{font-size:18px}.auth-switch{text-align:center;margin:25px 0 0;color:#747b86;font-size:13px}.legal{margin:32px 0 0;color:#9ba1aa;font-size:11px;text-align:center}.admin-login-page,.checkout-page{min-height:100vh;background:radial-gradient(circle at 50% -15%,#222936,transparent 38%),#090b0f}.admin-login-shell,.checkout-shell{min-height:100vh;display:grid;place-items:center;padding:30px}.admin-login-card{width:min(440px,100%);padding:38px 42px;background:#fff;border:1px solid rgba(255,255,255,.1);border-radius:14px;box-shadow:0 30px 90px rgba(0,0,0,.42)}.admin-login-card .brand-lockup{color:var(--ink)}.admin-login-card .brand-lockup small{color:#9298a2}.admin-login-card .brand-mark{color:#876827;background:#fbf7ee}.admin-login-head{margin:38px 0 28px}.admin-login-head h1{margin:13px 0 4px;font-size:30px}.admin-login-head p{margin:0;color:var(--muted)}.secure-chip{display:inline-flex;align-items:center;gap:8px;color:#8a692e;font-size:10px;font-weight:800;letter-spacing:.13em}.secure-chip i{width:6px;height:6px;border-radius:50%;background:#be974c}.admin-security-note{display:flex;gap:11px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line);color:#89909a;font-size:11px}.admin-security-note>span{color:#a98545}.admin-security-note p{margin:0}.admin-security-note b{color:#555c65;font-size:12px}

/* 客户中心 */
.portal-header{position:sticky;top:0;z-index:20;height:72px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;gap:42px;background:rgba(9,11,15,.97);backdrop-filter:blur(16px);color:#fff}.portal-header nav{display:flex;align-self:stretch;gap:28px}.portal-header nav a{position:relative;display:flex;align-items:center;color:#9299a4;font-size:13px}.portal-header nav a:hover,.portal-header nav a.active{color:#fff}.portal-header nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--gold)}.header-user{margin-left:auto;display:flex;align-items:center;gap:10px}.user-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(145deg,#c8a45e,#80622e);color:#fff;font-size:13px;font-weight:800}.header-user>span:nth-child(2),.admin-identity>span:nth-child(2){display:flex;flex-direction:column}.header-user b,.admin-identity b{font-size:12px}.header-user small,.admin-identity small{color:#8f96a0;font-size:10px}.text-button{width:auto;border:0;background:transparent;color:#9299a4;margin-left:7px;font-size:12px}.portal-main{max-width:1280px;margin:auto;padding:54px 30px 90px}.welcome-banner{display:flex;align-items:center;gap:13px;margin-bottom:24px;padding:15px 18px;border:1px solid #bfe6d6;border-radius:10px;background:#edf9f4;color:#176e52}.welcome-banner>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#15956b;color:#fff;font-weight:800}.welcome-banner b{font-size:14px}.welcome-banner p{margin:1px 0 0;font-size:12px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:32px}.page-heading h1{margin:0;font-size:34px;letter-spacing:-.04em}.page-heading>div>p:last-child{margin:6px 0 0;color:var(--muted)}.account-id{padding:8px 12px;border:1px solid var(--line);border-radius:99px;background:#fff;color:#7b828d;font-size:11px}.account-id b{color:var(--green)}.account-overview{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}.entitlement-card,.mini-stat,.plan-card,.table-card{border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 9px 32px rgba(17,22,31,.045)}.entitlement-card{position:relative;overflow:hidden;min-height:204px;padding:25px 28px;background:linear-gradient(125deg,#10141b,#202632);color:#fff}.entitlement-card:after{content:"曜";position:absolute;right:22px;bottom:-55px;color:rgba(220,190,126,.06);font:170px/1 Georgia,"Songti SC",serif}.entitlement-top{position:relative;z-index:1;display:flex;justify-content:space-between}.status-pill{padding:4px 10px;border:1px solid rgba(88,214,163,.28);border-radius:99px;background:rgba(48,188,131,.1);color:#6ee0b3;font-size:10px}.empty-plan .status-pill{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#bec4cd}.entitlement-card h2{position:relative;z-index:1;margin:27px 0 2px;font-size:29px}.plan-expiry{position:relative;z-index:1;margin:0;color:#aab1bc;font-size:13px}.usage-line{position:relative;z-index:1;display:flex;justify-content:space-between;margin-top:24px;color:#aab1bc;font-size:11px}.usage-line b{color:#fff}.progress{position:relative;z-index:1;width:100%;height:4px;margin-top:7px;border-radius:4px;background:#383f49;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,#b88d43,#e3c77f)}.light-button{position:relative;z-index:1;display:inline-block;margin-top:22px;color:#e5c882;font-size:12px;font-weight:700}.mini-stat{display:flex;align-items:center;gap:19px;padding:25px}.stat-icon,.metric-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:10px;background:#f6f2e9;color:#9b7634;font-size:21px}.mini-stat small{color:var(--muted);font-size:11px}.mini-stat b{display:block;margin:2px 0;font-size:27px}.mini-stat p{margin:0;color:#9aa0a8;font-size:11px}.content-section{scroll-margin-top:90px;margin-top:56px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:19px}.section-heading>div{display:flex;align-items:center;gap:12px}.section-heading h2{margin:0;font-size:22px}.section-heading p{margin:0;color:var(--muted);font-size:12px}.section-no{font:italic 15px Georgia;color:#ac8744}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan-card{position:relative;padding:25px;display:flex;flex-direction:column}.plan-card.featured{border-color:#c9a85f;box-shadow:0 15px 40px rgba(133,97,36,.12)}.recommend{position:absolute;right:19px;top:19px;padding:4px 9px;border-radius:99px;background:#161a21;color:#e8ca8a;font-size:9px;font-weight:800}.plan-code{color:#a27d38;font-size:9px;font-weight:800;letter-spacing:.14em}.plan-card h3{margin:7px 0 4px;font-size:21px}.plan-card>div>p{margin:0;color:var(--muted);font-size:12px}.price{margin:24px 0 15px}.price small{font-size:17px;vertical-align:13px}.price b{font-size:39px;letter-spacing:-.04em}.plan-card ul{list-style:none;margin:0 0 24px;padding:17px 0 0;border-top:1px solid var(--line);color:#626974;font-size:12px}.plan-card li{margin:8px 0}.plan-card li:before{content:"✓";margin-right:9px;color:var(--green);font-weight:800}.plan-card form{margin-top:auto}.plan-button{width:100%;height:44px;border:1px solid #20242b;border-radius:7px;background:#fff;color:#1b1f25;font-weight:800}.featured .plan-button{background:#151920;color:#fff}.empty-state{padding:54px;border:1px dashed #ccd1d9;border-radius:12px;text-align:center;color:var(--muted)}.empty-state>span{font-size:25px;color:#a98643}.empty-state h3{margin:9px 0 2px;color:var(--ink)}.empty-state p{margin:0}.table-card{overflow:hidden}.responsive-table{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:15px 17px;border-bottom:1px solid #edf0f3;text-align:left;white-space:nowrap}th{background:#fafbfc;color:#8a919b;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}td{color:#3f4650;font-size:12px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfcfd}code{padding:3px 6px;border-radius:4px;background:#f0f2f5;color:#535b67;font:11px ui-monospace,SFMono-Regular,Consolas,monospace}.device-name{display:flex;align-items:center;gap:9px;color:#22272f;font-weight:700}.device-name i{color:#9c7b3d}.status-tag{display:inline-flex;align-items:center;padding:4px 8px;border-radius:99px;font-size:10px;font-weight:800}.status-tag.ok{background:#e7f7f0;color:#117555}.status-tag.off{background:#f0f1f3;color:#777e87}.status-tag.waiting{background:#fff5dd;color:#967020}.amount{color:#15191f;font-weight:800}.table-empty{height:90px;text-align:center;color:#999fa8}.portal-footer{height:68px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e0e3e8;background:#fff;color:#8b929c;font-size:10px}.portal-footer span:last-child{display:flex;align-items:center;gap:8px}.portal-footer i{width:6px;height:6px;border-radius:50%;background:#31b57f}

/* 管理后台 */
.dashboard-page{min-height:100vh;background:#f3f4f6}.sidebar{position:fixed;inset:0 auto 0 0;width:238px;z-index:30;padding:27px 18px 20px;background:#0b0e13;color:#fff;display:flex;flex-direction:column}.sidebar-brand{padding:0 9px}.side-nav{display:flex;flex-direction:column;gap:4px;margin-top:47px}.side-nav a{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:7px;color:#898f9a;font-size:12px;font-weight:600}.side-nav a:hover,.side-nav a.active{background:#171b22;color:#fff}.side-nav a.active{box-shadow:inset 2px 0 #c5a157}.side-nav i{width:20px;color:#b9c0ca;font-style:normal;font-size:15px}.side-footer{margin-top:auto;padding:16px 10px 0;border-top:1px solid #23272e}.system-state{display:flex;align-items:center;gap:9px;margin-bottom:14px;color:#89919c;font-size:10px}.side-footer button{width:100%;padding:8px;border:1px solid #2c3139;border-radius:6px;background:transparent;color:#8f96a1;font-size:11px}.dashboard-content{min-height:100vh;margin-left:238px}.dashboard-header{height:68px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.dashboard-header>div{display:flex;align-items:center}.menu-placeholder{display:none}.breadcrumb{color:#7f8690;font-size:11px}.breadcrumb b{margin:0 8px;color:#c1c5ca}.admin-identity{gap:9px}.dashboard-main{max-width:1500px;margin:auto;padding:34px 34px 70px}.dashboard-title{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:26px}.dashboard-title h1{margin:0;font-size:28px;letter-spacing:-.035em}.dashboard-title>div>p:last-child{margin:5px 0 0;color:var(--muted);font-size:12px}.outline-button{padding:9px 13px;border:1px solid #d8dce2;border-radius:7px;background:#fff;color:#565d68;font-size:11px;font-weight:700}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px}.dashboard-stats article{display:flex;align-items:center;gap:15px;padding:19px;border:1px solid var(--line);border-radius:10px;background:#fff}.metric-icon{width:42px;height:42px}.metric-icon.blue{background:#edf1ff;color:var(--blue)}.metric-icon.green{background:#e8f7f1;color:var(--green)}.metric-icon.gold{background:#f8f2e7;color:#a27a31}.metric-icon.purple{background:#f2edfb;color:var(--purple)}.dashboard-stats small{color:#818893;font-size:10px}.dashboard-stats b{display:block;font-size:25px;line-height:1.2}.dashboard-stats p{margin:1px 0 0;color:#a1a6ae;font-size:9px}.admin-grid{scroll-margin-top:80px;display:grid;grid-template-columns:minmax(0,2fr) minmax(290px,1fr);gap:16px;margin-bottom:16px}.admin-panel{scroll-margin-top:80px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden}.admin-panel.full{margin-bottom:16px}.panel-heading{min-height:70px;padding:17px 19px;display:flex;align-items:center;border-bottom:1px solid #edf0f3}.panel-heading.split{justify-content:space-between}.panel-heading>div{display:flex;align-items:center;gap:11px}.panel-heading>div>span:last-child{display:flex;flex-direction:column}.panel-heading h2{margin:0;font-size:14px}.panel-heading p{margin:2px 0 0;color:#9399a2;font-size:10px}.panel-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#f5f1e8;color:#947235;font-size:16px}.admin-form-grid{padding:18px;display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px}.admin-form-grid label,.stack-form label{color:#656c76;font-size:10px;font-weight:700}.admin-form-grid input,.admin-form-grid select,.stack-form input,.stack-form select{height:41px;margin-top:5px;border-radius:6px;font-size:12px}.admin-primary{height:41px;align-self:end;border:0;border-radius:6px;background:#191d24;color:#fff;font-size:11px;font-weight:800}.admin-primary span{margin-left:5px;color:#d8b86f}.compact-table{border-top:1px solid #edf0f3}.compact-table th,.compact-table td{padding:11px 15px}.stack-form{padding:18px;display:flex;flex-direction:column;gap:12px}.stack-form label>span{color:#a2a7af;font-weight:400}.info-note{display:flex;gap:9px;margin:0 18px 18px;padding:11px;border-radius:6px;background:#f7f5ef;color:#7f7563;font-size:10px}.info-note>span{display:grid;place-items:center;flex:0 0 18px;height:18px;border-radius:50%;background:#ded2b8;color:#775e2c;font-weight:800}.info-note p{margin:1px 0 0}.info-note.inline{margin-top:10px}.search-form{display:flex!important;gap:6px!important}.search-form input{width:220px;height:34px;border-radius:6px;font-size:11px}.search-form button{height:34px;padding:0 12px;border:0;border-radius:6px;background:#20242b;color:#fff;font-size:10px}.customer-cell{display:flex;align-items:center;gap:9px}.customer-cell>i{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:#f0f2f5;color:#656d78;font-style:normal;font-weight:800}.customer-cell>span{display:flex;flex-direction:column}.customer-cell b{color:#252a31;font-size:11px}.customer-cell small{color:#8e949d;font-size:9px}.row-action{padding:5px 8px;border:1px solid #d8dce2;border-radius:5px;background:#fff;color:#55606b;font-size:9px;font-weight:700}.row-action.danger{color:#a33a3a}.muted-cell{color:#9096a0}.api-chip{padding:5px 8px;border:1px solid #dbe7e2;border-radius:99px;background:#eff8f4;color:#27795e;font-size:9px;font-weight:800}

/* 收银台 */
.checkout-shell{display:flex;flex-direction:column;justify-content:center;align-items:center}.checkout-shell>.brand-lockup{margin-bottom:24px}.checkout-card{width:min(480px,100%);padding:38px 42px;border-radius:14px;background:#fff;text-align:center;box-shadow:0 30px 90px rgba(0,0,0,.42)}.checkout-status>span{display:grid;place-items:center;width:54px;height:54px;margin:auto;border-radius:50%;background:#f4ecd9;color:#8c692d;font-size:22px;font-weight:800}.checkout-status p{margin:10px 0 0;color:#9a783b;font-size:9px;font-weight:800;letter-spacing:.16em}.checkout-card h1{margin:13px 0 3px;font-size:29px}.checkout-sub{margin:0;color:var(--muted);font-size:12px}.checkout-card dl{margin:28px 0;text-align:left}.checkout-card dl div{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.checkout-card dt{color:#7e858e;font-size:11px}.checkout-card dd{margin:0;color:#252a31;font-size:12px;font-weight:700}.checkout-price{font-size:20px!important}.payment-placeholder{padding:17px;border:1px dashed #d5c69f;border-radius:8px;background:#fdfaf3;color:#80652e}.payment-placeholder span{font-size:12px;font-weight:800}.payment-placeholder p{margin:3px 0 0;color:#8e8370;font-size:10px}.link-button{width:100%}.secondary-link{display:inline-block;margin-top:19px;color:#777e88;font-size:11px}

@media(max-width:1050px){.account-overview{grid-template-columns:1fr 1fr}.entitlement-card{grid-column:1/-1}.plan-grid{grid-template-columns:1fr}.dashboard-stats{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}.admin-form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.auth-shell{display:block}.auth-brand{display:none}.auth-card-wrap{padding:35px 24px}.mobile-brand{display:block;margin-bottom:30px;color:#916f32;font-size:13px;font-weight:800}.portal-header{height:64px;padding:0 18px}.portal-header nav{display:none}.header-user>span:nth-child(2){display:none}.portal-main{padding:36px 18px 70px}.page-heading{align-items:flex-start;gap:16px}.page-heading h1{font-size:28px}.account-id{display:none}.section-heading{display:block}.section-heading p{margin-top:6px}.account-overview{grid-template-columns:1fr}.entitlement-card{grid-column:auto}.portal-footer{padding:0 18px}.sidebar{position:static;width:100%;height:64px;padding:0 18px;flex-direction:row;align-items:center}.side-nav,.side-footer{display:none}.dashboard-content{margin-left:0}.dashboard-header{display:none}.dashboard-main{padding:28px 18px 60px}.dashboard-title{align-items:flex-start}.outline-button{display:none}.admin-form-grid{grid-template-columns:1fr}.panel-heading.split{align-items:flex-start;gap:12px}.search-form input{width:150px}}
@media(max-width:520px){.auth-card-head h2{font-size:28px}.admin-login-shell,.checkout-shell{padding:18px}.admin-login-card,.checkout-card{padding:30px 23px}.code-field{grid-template-columns:1fr 104px}.dashboard-stats{grid-template-columns:1fr}.page-heading{display:block}.portal-footer span:first-child{display:none}}

/* Visual payment settings and unified checkout */
.payment-tabs{display:flex;gap:8px;margin:22px 0 14px;padding:6px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 30px rgba(23,28,36,.04)}
.payment-tabs button{min-width:132px;padding:11px 18px;border:0;border-radius:8px;background:transparent;color:#707783;font-weight:800;cursor:pointer}
.payment-tabs button.active{background:#11151b;color:#fff;box-shadow:0 7px 18px rgba(17,21,27,.18)}
.payment-tab-panel[hidden]{display:none}.payment-tab-panel.active{animation:payment-panel-in .18s ease-out}
@keyframes payment-panel-in{from{opacity:.55;transform:translateY(4px)}to{opacity:1;transform:none}}
.payment-config-form textarea{width:100%;min-height:116px;resize:vertical;border:1px solid #d8dce2;border-radius:8px;background:#fff;padding:12px 14px;color:var(--ink);font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;outline:none}
.payment-config-form textarea:focus{border-color:#a78749;box-shadow:0 0 0 3px rgba(200,164,94,.13)}
.payment-config-form .full-field{grid-column:1/-1}.wechat-icon{background:#e9f8f0!important;color:#13834e!important}.alipay-icon{background:#eaf3ff!important;color:#1677ff!important}
.payment-test-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding:15px 17px;border:1px solid #e0e3e8;border-radius:9px;background:#f8f9fb;color:#747b86;font-size:12px}
.payment-test-row button{padding:9px 15px;border:1px solid #c9aa68;border-radius:7px;background:#fffaf0;color:#7e6128;font-weight:800;cursor:pointer;white-space:nowrap}
.payment-live-test{display:grid;grid-template-columns:1.2fr 1fr;gap:26px;margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.payment-live-test>div b{color:#333a43}.payment-live-test>div p{margin:7px 0 0;color:#7c838e;font-size:12px;line-height:1.7}.payment-live-test small{color:#a26931}
.payment-status-grid article>span:not(.email-state-dot){display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f6f0e4;color:#8a692e;font-size:13px}
.payment-channel-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.payment-channel-grid form{margin:0}
.payment-channel{width:100%;min-height:92px;padding:14px;border:1px solid #dce1e7;border-radius:11px;background:#fff;display:grid;grid-template-columns:38px 1fr;grid-template-rows:1fr 1fr;align-items:center;text-align:left;text-decoration:none;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}
.payment-channel:hover{transform:translateY(-2px);border-color:#c9d0d9;box-shadow:0 9px 23px rgba(27,33,42,.09)}.payment-channel>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:#fff;font-size:16px;font-weight:900}.payment-channel b{align-self:end;color:#252b33;font-size:14px}.payment-channel small{align-self:start;color:#9299a3;font-size:10px}.payment-channel.wechat>span{background:#16aa68}.payment-channel.alipay>span{background:#1677ff}
.wechat-qr-panel{padding:18px;border:1px solid #d8e9df;border-radius:12px;background:#f6fcf8;display:flex;flex-direction:column;align-items:center}.wechat-qr-panel img{width:220px;height:220px;padding:8px;border-radius:9px;background:#fff}.wechat-qr-panel b{margin-top:8px;color:#167e50}.wechat-qr-panel p{margin:4px 0 0;color:#849087;font-size:10px}
.checkout-refresh-button{width:100%;height:43px;margin-top:13px;border:1px solid #d6dae0;border-radius:8px;background:#fff;color:#4e5661;font-weight:800;cursor:pointer}.checkout-refresh-button:hover{border-color:#b89b62;color:#7f622a}.checkout-poll-note{margin:9px 0 0;color:#9198a2;font-size:10px}.payment-success-note{padding:16px;border:1px solid #bfe6d4;border-radius:9px;background:#eaf8f2;color:#137553;font-weight:700}
@media(max-width:720px){.payment-tabs{overflow:auto}.payment-tabs button{min-width:112px}.payment-config-form .full-field{grid-column:auto}.payment-test-row{align-items:flex-start;flex-direction:column}.payment-channel-grid,.payment-live-test{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.primary-button{transition:none}}
.progress{border:0}.progress::-webkit-progress-bar{background:#383f49}.progress::-webkit-progress-value{background:linear-gradient(90deg,#b88d43,#e3c77f)}.progress::-moz-progress-bar{background:linear-gradient(90deg,#b88d43,#e3c77f)}
.table-pagination{padding:12px 18px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf0f3;color:#8b929c;font-size:10px}.table-pagination div{display:flex;gap:8px}.table-pagination a{padding:5px 9px;border:1px solid #dfe2e7;border-radius:5px;background:#fff;color:#4e5661;font-weight:700}
.admin-only-chip,.test-chip{padding:6px 10px;border:1px solid #dbc99f;border-radius:99px;background:#fbf7ed;color:#84662d;font-size:9px;font-weight:800;letter-spacing:.05em}.create-user-form{grid-template-columns:1.2fr 1fr 1fr 130px}.test-chip{background:#fff7e5;border-color:#ead5a4;color:#976e1d}
@media(max-width:1050px){.create-user-form{grid-template-columns:1fr 1fr}}@media(max-width:820px){.create-user-form{grid-template-columns:1fr}.test-chip{display:none}}
.nav-label{margin:42px 13px 8px;color:#545b66;font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.nav-label+.side-nav{margin-top:0}.side-nav a b{margin-left:auto;color:#4f5660;font-size:15px;font-weight:400}.side-nav a.active b{color:#d4b36e}.side-nav a span{flex:1}

/* 1.2 管理后台：每个导航项对应独立页面 */
.side-nav a{font-size:14px;min-height:46px}.nav-label{font-size:11px}.breadcrumb{font-size:13px}.dashboard-title>div>p:last-child{font-size:14px}.dashboard-stats small{font-size:12px}.dashboard-stats p{font-size:11px}.panel-heading h2{font-size:16px}.panel-heading p{font-size:12px}.admin-form-grid label,.stack-form label{font-size:12px}.admin-form-grid input,.admin-form-grid select,.stack-form input,.stack-form select{font-size:14px}.admin-primary{font-size:13px}.info-note{font-size:12px}th{font-size:11px}td{font-size:13px}.customer-cell b{font-size:13px}.customer-cell small{font-size:11px}.row-action{font-size:11px}.status-tag{font-size:11px}.admin-only-chip,.test-chip,.api-chip{font-size:10px}
.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}.quick-card{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#2c3139;box-shadow:0 8px 28px rgba(28,32,39,.035)}.quick-card:hover{border-color:#d5bd86;transform:translateY(-1px);box-shadow:0 12px 30px rgba(111,82,27,.08)}.quick-card>span{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#f7f1e4;color:#967334;font-size:19px}.quick-card>div{display:flex;flex:1;flex-direction:column}.quick-card b{font-size:14px}.quick-card small{margin-top:3px;color:#8a919a;font-size:11px}.quick-card>i{color:#b3904b;font-style:normal}.overview-grid{grid-template-columns:1fr 1fr}.policy-copy{padding:24px}.policy-copy b{color:#262b32;font-size:15px}.policy-copy p{margin:8px 0 0;color:#737b86;font-size:13px;line-height:1.8}.plan-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(280px,1fr));gap:16px}.two-field{display:grid;grid-template-columns:1fr 1fr;gap:10px}.release-flow{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:16px;padding:20px;border:1px solid #e6dcc5;border-radius:11px;background:linear-gradient(120deg,#fffdf8,#faf6ec)}.release-flow article{display:flex;align-items:center;gap:11px}.release-flow article>span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#1b2027;color:#e4c77e;font-weight:800}.release-flow article>div{display:flex;flex-direction:column}.release-flow b{font-size:13px}.release-flow small{margin-top:2px;color:#8c8f94;font-size:11px}.release-flow>i{color:#c2a763;font-style:normal}.release-form{grid-template-columns:repeat(3,minmax(170px,1fr))}.release-form .file-field,.release-form .notes-field{grid-column:span 2}.release-form textarea{width:100%;margin-top:5px;padding:11px;border:1px solid #d9dde3;border-radius:7px;background:#fff;color:#242931;font:13px inherit;resize:vertical}.release-form input[type="file"]{height:auto;min-height:41px;padding:9px;background:#fafbfc}.system-state i{display:block;width:7px;height:7px;border-radius:50%;background:#43bf86;box-shadow:0 0 0 4px rgba(67,191,134,.12)}
.create-page-grid{grid-template-columns:minmax(380px,1.2fr) minmax(300px,.8fr)}.create-user-page-form{padding:28px}.inline-admin-link{display:inline-flex;margin-top:18px;padding:9px 12px;border-radius:7px;background:#1b2027;color:#fff;font-size:12px;font-weight:700}
@media(max-width:1200px){.plan-editor-grid{grid-template-columns:1fr 1fr}.release-form{grid-template-columns:1fr 1fr}.release-form .file-field,.release-form .notes-field{grid-column:span 1}}
@media(max-width:820px){.quick-grid,.overview-grid,.plan-editor-grid,.release-form{grid-template-columns:1fr}.release-flow{align-items:flex-start;flex-direction:column}.release-flow>i{display:none}}

/* 1.2.1 客户账户安全 */
.row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.row-actions form{margin:0}.row-action.security{border-color:#d6c18e;background:#fffaf0;color:#7d6029}.security-user-head{display:flex;align-items:center;gap:20px;padding:22px 24px;margin-bottom:16px}.security-user-summary{display:flex;align-items:center;gap:13px;min-width:270px}.security-avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:#1d2229;color:#e0c277;font-size:18px;font-weight:900}.security-user-summary p{margin:0 0 2px;color:#9a7c42;font-size:10px;font-weight:900;letter-spacing:.12em}.security-user-summary h2{margin:0;color:#242a31;font-size:18px}.security-user-summary div>span{display:block;margin-top:3px;color:#858d97;font-size:12px}.security-user-stats{display:flex;gap:9px;margin-left:auto}.security-user-stats>div{min-width:110px;padding:10px 13px;border:1px solid #e7e9ed;border-radius:8px;background:#fafbfc}.security-user-stats small{display:block;color:#969ca5;font-size:10px}.security-user-stats b{display:block;margin-top:3px;color:#272d34;font-size:14px}.security-user-stats .state-ok{color:#27795e}.security-user-stats .state-danger{color:#a33a3a}.security-back{padding:8px 11px;border:1px solid #dfe2e7;border-radius:6px;background:#fff;color:#59616b;font-size:11px;font-weight:800}.security-grid{display:grid;grid-template-columns:minmax(430px,1.15fr) minmax(320px,.85fr);gap:16px;margin-bottom:16px}.password-admin-field{display:grid;grid-template-columns:1fr 64px;gap:7px;margin-top:5px}.password-admin-field input{margin-top:0!important}.password-admin-field button{border:1px solid #d9dde3;border-radius:6px;background:#fafbfc;color:#656d78;font-size:11px;font-weight:800}.security-password-actions{display:flex;align-items:center;gap:10px}.security-password-actions small{color:#8a929b;font-size:10px;line-height:1.5}.security-warning{padding:12px 13px;border:1px solid #ead7aa;border-radius:7px;background:#fff9ec}.security-warning b{color:#876721;font-size:11px}.security-warning p{margin:4px 0 0;color:#807765;font-size:10px;line-height:1.65}.security-primary{width:100%}.security-action-copy{padding:22px 20px 8px}.security-action-copy b{color:#30363e;font-size:13px}.security-action-copy p{margin:8px 0 0;color:#747c86;font-size:11px;line-height:1.8}.security-action-form{padding:14px 20px 22px}.danger-button{width:100%;height:41px;border:1px solid #dcbaba;border-radius:7px;background:#fff4f4;color:#a33a3a;font-size:12px;font-weight:900}.danger-button:hover{background:#fdeaea}.admin-flash{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:12px 15px;border-radius:8px;font-size:11px}.admin-flash.success{border:1px solid #cde5da;background:#f1faf6;color:#27795e}.admin-flash b{font-size:12px}.admin-flash span{color:#64766f}.fingerprint-code{display:inline-block;max-width:190px;overflow:hidden;color:#646c76;font:11px ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap}
@media(max-width:1100px){.security-user-head{align-items:flex-start;flex-wrap:wrap}.security-user-stats{order:3;width:100%;margin-left:0}.security-user-stats>div{flex:1}.security-grid{grid-template-columns:1fr}}
@media(max-width:620px){.security-user-stats{flex-direction:column}.security-user-stats>div{width:100%}.security-password-actions{align-items:flex-start;flex-direction:column}}


/* 1.2.2 可视化邮件设置 */
.email-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.email-status-grid article{display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid var(--line);border-radius:10px;background:#fff}.email-status-grid article>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f7f1e4;color:#8f6b2a;font-size:15px}.email-status-grid article>div{min-width:0}.email-status-grid small{display:block;color:#9299a3;font-size:10px}.email-status-grid b{display:block;overflow:hidden;margin-top:2px;color:#2b3037;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.email-state-dot.ok{background:#eaf8f2!important;color:#278161!important}.email-state-dot.ok:before{content:"✓"}.email-state-dot.off{background:#f2f3f5!important;color:#7a828c!important}.email-state-dot.off:before{content:"—"}.email-state-dot.warn{background:#fff5df!important;color:#a8791c!important}.email-state-dot.warn:before{content:"!"}.email-settings-grid{grid-template-columns:minmax(560px,1.4fr) minmax(330px,.6fr)}.email-settings-grid>.full{grid-row:span 2}.email-config-form{grid-template-columns:1fr 1fr;padding:24px}.email-config-form .switch-line,.email-config-form .email-config-note,.email-config-form .admin-primary{grid-column:1/-1}.switch-line{display:flex!important;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #e1e4e8;border-radius:8px;background:#fafbfc}.switch-line>span{display:flex;flex-direction:column}.switch-line b{color:#30363e;font-size:13px}.switch-line small{margin-top:2px;color:#8a9199;font-size:10px}.switch-line input{appearance:none;width:42px!important;height:24px!important;margin:0!important;border:0!important;border-radius:999px!important;background:#cfd4da!important;position:relative;transition:.18s}.switch-line input:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.18);transition:.18s}.switch-line input:checked{background:#b58b3c!important}.switch-line input:checked:after{left:21px}.field-status{float:right;color:#9b824d;font-weight:700}.email-config-note{padding:12px 14px;border:1px solid #e8dcc0;border-radius:7px;background:#fffaf0}.email-config-note b{color:#80601f;font-size:11px}.email-config-note p{margin:5px 0 0;color:#746d61;font-size:10px}.email-config-note code{padding:2px 5px;border-radius:4px;background:#f0eadc;color:#574a31}.email-test-form{padding:22px}.email-test-form .admin-primary{width:100%;margin-top:8px}.form-help{margin:10px 0 0;color:#858d96;font-size:10px;line-height:1.6}.danger-text{color:#a44a4a}.admin-flash.danger{border:1px solid #ebc7c7;background:#fff4f4;color:#9a3f3f}.admin-flash.warning{border:1px solid #ead8ad;background:#fff9eb;color:#8b6a25}.email-safety-panel .danger-button:disabled{cursor:not-allowed;opacity:.45}.email-config-form input[type="password"]{letter-spacing:.04em}
@media(max-width:1180px){.email-status-grid{grid-template-columns:1fr 1fr}.email-settings-grid{grid-template-columns:1fr}.email-settings-grid>.full{grid-row:auto}}
@media(max-width:700px){.email-status-grid,.email-config-form{grid-template-columns:1fr}.email-config-form .switch-line,.email-config-form .email-config-note,.email-config-form .admin-primary{grid-column:auto}.switch-line{align-items:flex-start}.field-status{display:block;float:none;margin-top:2px}}
