:root{--navy:#071e32;--navy2:#0c4260;--blue:#286bfd;--cyan:#24c3cf;--text:#08223a;--muted:#6b8295;--line:#dce6ee;--bg:#eef4f8;--green:#169b70;--red:#d63f56;--orange:#e87832;--shadow:0 18px 48px rgba(15,45,70,.11)}*{box-sizing:border-box}body{margin:0;color:var(--text);font-family:"Microsoft YaHei","PingFang SC",system-ui,sans-serif;background:radial-gradient(circle at 15% 10%,rgba(36,195,207,.11),transparent 28%),linear-gradient(145deg,#f4f8fb,#eaf1f6);min-height:100vh}button,input,select,textarea{font:inherit}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(380px,1fr) minmax(520px,720px)}.auth-aside{padding:72px clamp(42px,7vw,110px);background:linear-gradient(145deg,#061a2c 0,#0a3450 58%,#0e6673 100%);color:#fff;position:relative;overflow:hidden}.auth-aside:before,.auth-aside:after{content:"";position:absolute;border:1px solid rgba(73,221,232,.25);border-radius:50%}.auth-aside:before{width:520px;height:520px;right:-220px;bottom:-180px}.auth-aside:after{width:330px;height:330px;right:-95px;bottom:-80px}.brand-lockup{display:flex;align-items:center;gap:13px;color:#fff;text-decoration:none;position:relative;z-index:1}.brand-mark{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#2d7cff,#19b8c6);font-weight:900}.brand-lockup b{display:block;font-size:18px}.brand-lockup small{color:#8db3ca;letter-spacing:1.2px}.auth-aside-copy{max-width:650px;margin-top:17vh;position:relative;z-index:1}.eyebrow{color:#55dce6;font-weight:800;font-size:11px;letter-spacing:2px}.auth-aside h1{font-size:clamp(40px,5vw,68px);line-height:1.12;margin:14px 0 20px}.auth-aside p{font-size:17px;line-height:1.9;color:#b8cfdd;max-width:590px}.trust-list{display:flex;gap:9px;flex-wrap:wrap;margin-top:32px}.trust-list span{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);border-radius:99px;padding:8px 12px;font-size:12px}.auth-main{display:grid;place-items:center;padding:48px}.auth-card{width:min(100%,500px);background:#fff;border:1px solid rgba(212,225,235,.9);border-radius:24px;padding:38px;box-shadow:var(--shadow)}.auth-card h2{font-size:30px;margin:6px 0 8px}.auth-card>.lead{color:var(--muted);line-height:1.7;margin:0 0 25px}.portal-tabs{display:grid;grid-template-columns:1fr 1fr;background:#edf3f7;border-radius:11px;padding:4px;margin-bottom:22px}.portal-tabs button{border:0;background:transparent;padding:11px;border-radius:8px;color:#667f92;cursor:pointer;font-weight:700}.portal-tabs button.active{background:#fff;color:var(--text);box-shadow:0 3px 12px rgba(18,47,68,.1)}.form-field{display:block;margin:0 0 17px}.form-field>span{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #cad9e4;border-radius:10px;background:#fbfdff;padding:12px 13px;outline:none;color:var(--text)}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#6995ff;box-shadow:0 0 0 3px rgba(40,107,253,.1)}.field-note{font-size:11px;color:var(--muted);line-height:1.6;margin-top:6px}.form-line{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:-3px 0 20px;font-size:12px}.form-line a,.auth-links a{color:var(--blue);text-decoration:none}.check-consent{display:flex;gap:8px;align-items:flex-start;color:#587083;font-size:12px;line-height:1.6;margin:3px 0 18px}.primary-action{width:100%;height:46px;border:0;border-radius:10px;background:linear-gradient(100deg,#2f70ff,#2163eb);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 9px 22px rgba(40,107,253,.24)}.primary-action:hover{filter:brightness(1.04)}.primary-action:disabled{opacity:.55;cursor:wait}.secondary-action{height:40px;border:1px solid #bfd0de;background:#fff;color:#225073;border-radius:9px;padding:0 14px;cursor:pointer}.auth-links{text-align:center;margin:19px 0 0;color:var(--muted);font-size:13px}.form-message{display:none;border-radius:9px;padding:11px 12px;margin:0 0 16px;font-size:12px;line-height:1.55}.form-message.show{display:block}.form-message.error{background:#fff0f2;color:#a9263a;border:1px solid #ffd0d7}.form-message.success{background:#eaf8f2;color:#117553;border:1px solid #bce9d7}.form-message.info{background:#edf4ff;color:#1c58b8;border:1px solid #cfe0ff}.dev-link{display:none;margin-top:14px;padding:12px;background:#fff8e8;border:1px solid #f1d28c;border-radius:9px;font-size:12px;line-height:1.6}.dev-link.show{display:block}.dev-link a{color:#9b5d00;font-weight:700}.status-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#e8f1ff;color:var(--blue);font-size:28px;margin-bottom:18px}
.app-topbar{height:68px;background:#071e32;color:#fff;display:flex;align-items:center;padding:0 max(24px,calc((100vw - 1500px)/2));gap:30px}.app-topbar .brand-lockup{min-width:280px}.app-topbar nav{display:flex;gap:9px;margin:auto}.app-topbar nav a{color:#a9bdcc;text-decoration:none;padding:23px 14px;position:relative}.app-topbar nav a.active,.app-topbar nav a:hover{color:#fff}.app-topbar nav a.active:after{content:"";position:absolute;bottom:0;height:3px;background:var(--cyan);left:13px;right:13px}.admin-shell,.onboarding-shell,.account-shell{max-width:1450px;margin:auto;padding:38px 28px 70px}.workspace-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:25px}.workspace-head h1{font-size:36px;margin:6px 0}.workspace-head p{color:var(--muted);margin:0}.logout-btn{border:1px solid #c9d7e1;background:#fff;border-radius:9px;padding:10px 14px;color:#395b73;cursor:pointer}.metric-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:20px}.metric{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;box-shadow:0 8px 25px rgba(15,45,70,.06)}.metric b{display:block;font-size:30px}.metric span{color:var(--muted);font-size:12px}.workspace-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.workspace-card>header{padding:18px 21px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.workspace-card h2{margin:0;font-size:20px}.admin-toolbar{display:flex;gap:9px;flex-wrap:wrap}.admin-toolbar select,.admin-toolbar input{border:1px solid #ccdbe5;border-radius:8px;height:38px;padding:0 11px;background:#fff}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:14px 18px;border-bottom:1px solid #e7edf2;font-size:12px;vertical-align:top}.admin-table th{color:#6a8092;background:#f6f9fb}.admin-table b{font-size:13px}.muted{color:var(--muted)}.status-pill{display:inline-block;padding:5px 8px;border-radius:99px;background:#edf3f8;color:#526c80;font-size:11px}.status-pill.active{background:#e7f7f0;color:#087351}.status-pill.pending_approval{background:#fff4de;color:#9b6200}.status-pill.suspended,.status-pill.rejected{background:#fff0f1;color:#aa2b3e}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.row-actions button{border:1px solid #ccd9e3;background:#fff;border-radius:7px;padding:6px 8px;font-size:11px;cursor:pointer}.row-actions .approve{background:#e9f8f2;border-color:#b9e5d3;color:#087351}.row-actions .danger{background:#fff1f2;border-color:#f1c3ca;color:#a3263b}.pagination-bar{display:flex;justify-content:flex-end;align-items:center;gap:9px;padding:16px 20px}.pagination-bar button{border:1px solid #ccd9e3;background:#fff;border-radius:7px;padding:7px 11px;cursor:pointer}.pagination-bar button:disabled{opacity:.45}.audit-list{max-height:360px;overflow:auto}.audit-row{display:grid;grid-template-columns:160px 160px 1fr 180px;gap:12px;padding:12px 20px;border-bottom:1px solid #e8eef3;font-size:12px}.audit-row code{color:#245b86}
.onboarding-shell{max-width:1100px}.onboarding-progress{display:flex;gap:9px;margin-bottom:18px}.onboarding-progress span{height:5px;flex:1;border-radius:9px;background:#d7e1e9}.onboarding-progress span.active{background:var(--blue)}.onboarding-card{padding:35px}.onboarding-card h1{font-size:32px;margin:7px 0 8px}.onboarding-card>.lead{color:var(--muted);margin-bottom:28px;line-height:1.7}.onboarding-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.preference-group{margin-top:22px}.preference-group h3{font-size:15px;margin:0 0 10px}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.option-chip{display:block;border:1px solid #d1dee8;border-radius:9px;padding:10px;cursor:pointer;color:#496579;font-size:12px}.option-chip:has(input:checked){background:#eaf2ff;border-color:#78a0ff;color:#154fb8}.option-chip input{margin-right:6px;accent-color:var(--blue)}.onboarding-actions{display:flex;justify-content:flex-end;margin-top:28px}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.account-card{padding:27px}.account-card h2{margin:0 0 20px}.account-control{position:relative;margin-left:auto}.account-trigger{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;border-radius:10px;padding:8px 11px;display:flex;align-items:center;gap:8px;cursor:pointer}.account-avatar{width:27px;height:27px;border-radius:8px;background:linear-gradient(145deg,#2c78ff,#1db9c8);display:grid;place-items:center;font-weight:800}.account-menu{position:absolute;right:0;top:46px;width:220px;background:#fff;border:1px solid #dce6ee;border-radius:12px;box-shadow:0 16px 42px rgba(4,25,42,.2);padding:9px;z-index:80;color:var(--text)}.account-menu[hidden]{display:none}.account-menu header{padding:8px 9px 11px;border-bottom:1px solid #e8eef3;margin-bottom:5px}.account-menu header b,.account-menu header small{display:block;overflow:hidden;text-overflow:ellipsis}.account-menu header small{color:var(--muted);margin-top:4px}.account-menu a,.account-menu button{display:block;width:100%;border:0;background:none;text-align:left;padding:9px;border-radius:7px;color:#35566f;text-decoration:none;cursor:pointer}.account-menu a:hover,.account-menu button:hover{background:#edf4f8}@media(max-width:980px){.auth-shell{display:block}.auth-aside{min-height:300px;padding:40px}.auth-aside-copy{margin-top:60px}.auth-main{padding:28px}.metric-row{grid-template-columns:repeat(2,1fr)}.onboarding-grid,.account-grid{grid-template-columns:1fr}.option-grid{grid-template-columns:repeat(2,1fr)}.admin-table{min-width:880px}.workspace-card{overflow:auto}.app-topbar nav{display:none}}@media(max-width:560px){.auth-aside{min-height:240px;padding:28px}.auth-aside-copy{margin-top:40px}.auth-aside h1{font-size:34px}.auth-aside p,.trust-list{display:none}.auth-main{padding:18px}.auth-card{padding:26px}.metric-row{grid-template-columns:1fr}.option-grid{grid-template-columns:1fr}.onboarding-card{padding:23px}}
