:root{--ink:#15392f;--ink-d:#0e2620;--ink-h:#1d4a3d;--teal:#31b59f;--leaf:#62b068;--red:#d14343;--bg:#f6f8f7;--surface:#fff;--border:#e1e6e4;--t1:#14201c;--t2:#56625e;--t3:#8a9591;--r:8px;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--t1);-webkit-font-smoothing:antialiased;font-size:14px}input,button{font-family:inherit;font-size:14px}button{cursor:pointer}:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.page{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:72px;padding:0 max(24px,50% - 560px);display:flex}.topbar-logo{width:auto;height:34px;display:block}.lang-switch{background:var(--surface);border:1px solid var(--border);color:var(--t2);border-radius:16px;padding:6px 14px;font-size:13px;transition:border-color .15s,color .15s}.lang-switch:hover{border-color:var(--ink);color:var(--ink)}.main{flex:1;justify-content:center;align-items:center;padding:56px 20px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;grid-template-columns:1fr 1fr;width:100%;max-width:900px;display:grid;overflow:hidden;box-shadow:0 12px 40px #14201c0f}.brand-panel{text-align:center;color:#fff;background-color:var(--ink-d);background-image:radial-gradient(70% 60% at 50% 45%,#31b59f24,#0000 70%),linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:100% 100%,36px 36px,36px 36px;flex-direction:column;justify-content:center;align-items:center;padding:48px 40px;display:flex}.brand-icon{width:56px;height:56px;color:var(--teal);background:#ffffff0f;border:1px solid #ffffff24;border-radius:14px;justify-content:center;align-items:center;margin-bottom:22px;display:flex}.brand-title{margin-bottom:10px;font-size:18px;font-weight:600}.brand-sub{color:#ffffff9e;max-width:240px;font-size:14px;line-height:1.7}.form-panel{padding:44px 40px 40px}.form-title{letter-spacing:-.3px;font-size:28px;font-weight:700}.form-sub{color:var(--t2);margin-top:8px;margin-bottom:28px;font-size:15px}.form-title+.notice{margin-top:24px}.steps{color:var(--t3);align-items:center;gap:10px;margin-bottom:22px;font-size:12px;display:flex}.steps i{background:var(--border);flex:1;height:1px}.steps .on{color:var(--ink);font-weight:600}.steps .done{color:var(--teal)}.field{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.field-label{color:var(--t1);font-size:14px;font-weight:500}.field-box{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);align-items:center;height:46px;transition:border-color .15s,box-shadow .15s;display:flex}.field-box:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px #15392f14}.field-box.has-error{border-color:var(--red)}.field-icon{color:var(--t3);padding-left:14px;display:flex}.field-input{min-width:0;height:100%;color:var(--t1);background:0 0;border:none;outline:none;flex:1;padding:0 14px 0 10px}.field-input:first-child{padding-left:14px}.field-input::placeholder{color:#a9b2af}.field-eye{height:100%;color:var(--t3);background:0 0;border:none;align-items:center;padding:0 14px;display:flex}.field-eye:hover{color:var(--ink)}.field-error{color:var(--red);font-size:12px}.code-input{letter-spacing:2px;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:16px}.code-chip{border-radius:var(--r);color:var(--t2);background:#f1f7f5;border:1px solid #d6eae4;justify-content:space-between;align-items:center;margin-bottom:18px;padding:10px 14px;font-size:13px;display:flex}.code-chip b{color:var(--ink);letter-spacing:1.5px;margin-left:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.btn{border-radius:var(--r);justify-content:center;align-items:center;gap:8px;width:100%;height:48px;font-size:15px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.btn-primary{background:var(--ink);border:1px solid var(--ink);color:#fff;margin-top:6px;box-shadow:0 6px 16px #15392f2e}.btn-primary:hover:not(:disabled){background:var(--ink-h);border-color:var(--ink-h)}.btn-primary:disabled{opacity:.75;cursor:default}.btn-outline{background:var(--surface);border:1px solid var(--border);color:var(--t1);margin-top:8px}.btn-outline:hover{border-color:var(--ink)}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.row-hint{text-align:right;color:var(--t3);margin:-6px 0 10px;font-size:12px}.switch{text-align:center;color:var(--t2);margin-top:22px;font-size:14px}.switch+.switch{margin-top:8px}.link{color:var(--ink);font-weight:600;font-size:inherit;background:0 0;border:none;border-bottom:1px solid #0000;padding:0}.link:hover{border-bottom-color:var(--ink)}.notice{color:var(--t2);flex-direction:column;gap:10px;font-size:14px;line-height:1.8;display:flex}.notice p:first-child{border-top:2px solid;border-image:linear-gradient(90deg, var(--teal), var(--leaf)) 1;padding-top:16px}.footer{text-align:center;color:var(--t3);padding:24px;font-size:12px}@media (width<=760px){.topbar{height:60px;padding:0 16px}.topbar-logo{height:28px}.main{align-items:flex-start;padding:24px 16px}.card{grid-template-columns:1fr}.brand-panel{display:none}.form-panel{padding:32px 22px 28px}.form-title{font-size:24px}}
