html,body{height:100%}body{margin:0}.auth{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh;display:grid}.auth-brand{background:var(--ops-nav);color:#fff;padding:var(--pek-space-12) var(--pek-space-16);flex-direction:column;display:flex;position:relative;overflow:hidden}.auth-brand:before{content:"";opacity:.7;pointer-events:none;background-image:radial-gradient(#80c3cd1a 1px,#0000 1px);background-size:26px 26px;position:absolute;inset:0}.auth-brand:after{content:"";background:var(--ops-nav-active);pointer-events:none;border-radius:50%;width:460px;height:460px;position:absolute;bottom:-180px;right:-160px}.auth-brand>*{z-index:1;position:relative}.brand-top{align-items:baseline;gap:11px;display:flex}.brand-top .wordmark{font-family:var(--pek-font-display);letter-spacing:.08em;color:#fff;font-size:26px;font-weight:900;line-height:1}.brand-top .product{color:#ffffffad;font-size:14px;font-weight:500}.brand-mid{max-width:440px;margin-top:auto}.brand-eyebrow{text-transform:uppercase;letter-spacing:var(--pek-tracking-eyebrow);color:var(--pek-powder-300);font-size:12px;font-weight:600}.brand-mid h1{font-family:var(--pek-font-zh);letter-spacing:.01em;color:#fff;margin:16px 0 0;font-size:34px;font-weight:900;line-height:1.32}.brand-mid p{color:#ffffffb8;margin:16px 0 0;font-size:14.5px;line-height:1.7}.brand-modules{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.mod-chip{border-radius:var(--pek-radius-pill);color:#ffffffd1;background:#ffffff14;border:1px solid #ffffff24;align-items:center;gap:7px;padding:7px 13px;font-size:12.5px;font-weight:500;display:inline-flex}.mod-chip .lucide{width:14px;height:14px;color:var(--pek-powder-300)}.brand-foot{margin-top:var(--pek-space-12);color:#ffffff73;align-items:center;gap:8px;font-size:12px;display:flex}.brand-foot .lucide{width:13px;height:13px}.auth-form-wrap{background:var(--ops-bg);padding:var(--pek-space-10) var(--pek-space-8);justify-content:center;align-items:center;display:flex}.auth-card{flex-direction:column;width:100%;max-width:384px;display:flex}.auth-card h2{font-family:var(--pek-font-zh);letter-spacing:.01em;color:var(--ops-ink);margin:0;font-size:24px;font-weight:900;line-height:1.3}.auth-card .sub{color:var(--ops-ink-soft);margin:8px 0 0;font-size:13.5px}.auth-fields{gap:var(--pek-space-4);margin-top:var(--pek-space-8);flex-direction:column;display:flex}.auth-fld{flex-direction:column;gap:7px;display:flex}.auth-fld label{color:var(--ops-ink-soft);font-size:12.5px;font-weight:600}.auth-input-wrap{align-items:center;display:flex;position:relative}.auth-input-wrap>.lucide-lead{width:16px;height:16px;color:var(--ops-ink-faint);pointer-events:none;position:absolute;left:12px}.auth-input{box-sizing:border-box;width:100%;color:var(--ops-ink);background:var(--ops-surface);border:1px solid var(--ops-line);border-radius:var(--pek-radius-sm);transition:border-color var(--pek-dur-fast) var(--pek-ease-standard), box-shadow var(--pek-dur-fast) var(--pek-ease-standard);padding:11px 13px 11px 38px;font-family:inherit;font-size:14px}.auth-input::placeholder{color:var(--ops-ink-faint)}.auth-input:focus{border-color:var(--pek-powder-400);box-shadow:var(--pek-ring);outline:none}.auth-input.has-trail{padding-right:42px}.pw-toggle{cursor:pointer;width:30px;height:30px;color:var(--ops-ink-faint);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex;position:absolute;right:6px}.pw-toggle:hover{color:var(--ops-ink-soft);background:var(--st-gray-bg)}.pw-toggle .lucide{width:16px;height:16px}.auth-row{justify-content:space-between;align-items:center;margin-top:2px;display:flex}.remember{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:inline-flex}.remember input{opacity:0;width:0;height:0;position:absolute}.remember .box{border:1.5px solid var(--ops-line-strong);background:var(--ops-surface);width:17px;height:17px;transition:background var(--pek-dur-fast) var(--pek-ease-standard), border-color var(--pek-dur-fast) var(--pek-ease-standard);border-radius:5px;flex:none;justify-content:center;align-items:center;display:inline-flex}.remember .box .lucide{color:#fff;opacity:0;width:12px;height:12px}.remember input:checked+.box{background:var(--ops-primary);border-color:var(--ops-primary)}.remember input:checked+.box .lucide{opacity:1}.remember input:focus-visible+.box{box-shadow:var(--pek-ring)}.remember .lbl{color:var(--ops-ink-soft);font-size:13px}.auth-row a{font-size:13px;font-weight:500}.btn-submit{box-sizing:border-box;width:100%;margin-top:var(--pek-space-6);border-radius:var(--pek-radius-sm);cursor:pointer;background:var(--ops-primary);color:#fff;transition:background var(--pek-dur-fast) var(--pek-ease-standard);border:0;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-family:inherit;font-size:15px;font-weight:600;display:inline-flex}.btn-submit:hover{background:var(--ops-primary-hover)}.btn-submit:active{background:var(--ops-primary-press);transform:translateY(1px)}.btn-submit .lucide{width:16px;height:16px}.auth-divider{margin:var(--pek-space-6) 0;align-items:center;gap:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--ops-line);flex:1;height:1px}.auth-divider span{color:var(--ops-ink-faint);font-size:11.5px}.btn-sso{box-sizing:border-box;border-radius:var(--pek-radius-sm);cursor:pointer;background:var(--ops-surface);border:1px solid var(--ops-line);width:100%;color:var(--ops-ink-soft);transition:border-color var(--pek-dur-fast) var(--pek-ease-standard), background var(--pek-dur-fast) var(--pek-ease-standard);justify-content:center;align-items:center;gap:9px;padding:11px 18px;font-family:inherit;font-size:14px;font-weight:500;display:inline-flex}.btn-sso:hover{border-color:var(--ops-line-strong);background:var(--ops-surface-2)}.btn-sso .lucide{width:16px;height:16px;color:var(--ops-ink-faint)}.auth-help{margin-top:var(--pek-space-8);color:var(--ops-ink-faint);font-size:12.5px}.auth-help a{font-weight:500}.auth-error{margin-top:var(--pek-space-5);border-radius:var(--pek-radius-sm);background:var(--st-red-bg);color:var(--st-red-text);border:1px solid #d6857f66;border:1px solid lab(64.2438% 31.0847 17.2336/.4);align-items:center;gap:9px;padding:10px 13px;font-size:12.5px;font-weight:500;line-height:1.5;display:flex}.auth-error .lucide{flex:none;width:15px;height:15px}.auth-error[hidden]{display:none}.auth-input.input-err{border-color:var(--st-red-text)}@media (max-width:860px){.auth{grid-template-columns:1fr}.auth-brand{display:none}}
