:root{--ink:#10192a;--ink-soft:#475467;--ink-faint:#8fa2b0;--blue:#2c6e9e;--blue-deep:#1b4d72;--blue-pale:#eaf2f8;--emerald:#0e9a5e;--emerald-deep:#0b7a4a;--emerald-pale:#e4f6ed;--red:#c4423c;--red-pale:#fbeae8;--amber:#b07a1e;--paper:#fbfaf8;--white:#fff;--mist:#f1f4f2;--line:#e3e5de;--shadow-md:0 4px 16px #10192a17;--shadow-lg:0 20px 52px #10192a26}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100vh;font-family:Inter,-apple-system,sans-serif;display:flex}a{color:inherit;text-decoration:none}.auth-nav{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:50;background:#fbfaf8eb;justify-content:space-between;align-items:center;padding:16px 32px;display:flex;position:sticky;top:0}.auth-nav-logo{letter-spacing:-.02em;color:var(--ink);align-items:center;gap:9px;font-size:17px;font-weight:800;display:flex}.logo{justify-content:center;align-items:center;width:70px;height:70px;display:flex}.auth-nav-right{align-items:center;gap:12px;display:flex}.auth-nav-right span{color:var(--ink-soft);font-size:14px}.btn-outline{border:1.5px solid var(--line);color:var(--ink);background:var(--white);cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:9px 20px;font-size:14px;font-weight:600;transition:border-color .15s,background .15s;display:inline-flex}.btn-outline:hover{border-color:var(--blue);color:var(--blue-deep);background:var(--blue-pale)}.auth-page{flex:1;grid-template-columns:360px 1fr;display:grid}.auth-visual{background:linear-gradient(160deg,var(--blue-deep) 0%,#0a1623 100%);flex-direction:column;height:calc(100vh - 65px);padding:44px 38px;display:flex;position:sticky;top:65px;overflow:hidden}.auth-visual:before{content:"";background:radial-gradient(circle at 60% 25%,#2c6e9e66 0%,#0000 60%);position:absolute;inset:0}.visual-inner{z-index:1;flex-direction:column;flex:1;display:flex;position:relative}.visual-tag{color:#ffffffbf;background:#ffffff1a;border:1px solid #ffffff26;border-radius:99px;align-items:center;gap:7px;width:fit-content;margin-bottom:22px;padding:5px 12px;font-size:12px;font-weight:600;display:inline-flex}.visual-tag-dot{background:#4ade80;border-radius:50%;flex-shrink:0;width:6px;height:6px}.auth-visual h2{letter-spacing:-.03em;color:#fff;margin-bottom:12px;font-size:26px;font-weight:800;line-height:1.2}.auth-visual h2 em{color:#7ec8e3;font-style:normal}.auth-visual>.visual-inner>p{color:#7a9baf;margin-bottom:24px;font-size:13.5px;line-height:1.65}.steps-list{flex-direction:column;gap:0;margin-bottom:auto;display:flex}.step-row{gap:12px;display:flex}.step-line-col{flex-direction:column;align-items:center;display:flex}.step-num{color:#fff;background:#ffffff1f;border:1px solid #fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:11.5px;font-weight:700;display:flex}.step-line{background:#ffffff1a;flex:1;width:1px;min-height:18px;margin:3px 0}.step-body{padding-bottom:18px}.step-body h4{color:#fff;margin-bottom:2px;font-size:13px;font-weight:600}.step-body p{color:#7a9baf;font-size:11.5px;line-height:1.5}.visual-stats{border-top:1px solid #ffffff1a;gap:20px;padding-top:22px;display:flex}.v-stat .num{color:#fff;font-family:JetBrains Mono;font-size:19px;font-weight:600}.v-stat .lbl{color:#7a9baf;margin-top:2px;font-size:11px}.auth-form-panel{background:var(--white);border-left:1px solid var(--line);padding:40px 48px 52px;overflow-y:auto}.form-brand{letter-spacing:-.02em;align-items:center;gap:9px;margin-bottom:24px;font-size:15px;font-weight:800;display:flex}.auth-heading{letter-spacing:-.025em;margin-bottom:5px;font-size:24px;font-weight:800}.auth-sub{color:var(--ink-soft);margin-bottom:24px;font-size:14px;line-height:1.55}.form-section{border:1px solid var(--line);background:var(--paper);border-radius:14px;margin-bottom:14px;padding:20px 22px}.form-section-title{border-bottom:1px solid var(--line);align-items:center;gap:9px;margin-bottom:14px;padding-bottom:11px;font-size:13px;font-weight:700;display:flex}.sec-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.field-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field{margin-bottom:12px}.field:last-child{margin-bottom:0}.field label{color:var(--ink);margin-bottom:5px;font-size:12.5px;font-weight:600;display:block}.field label .req{color:var(--red);margin-left:2px}.field label .opt{color:var(--ink-faint);margin-left:3px;font-size:11px;font-weight:400}.field input,.field select{border:1.5px solid var(--line);width:100%;color:var(--ink);background:var(--white);appearance:none;border-radius:10px;outline:none;padding:11px 13px;font-family:Inter;font-size:14px;transition:border-color .15s,box-shadow .15s}.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475467' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;background-size:15px;padding-right:34px}.field input:focus,.field select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-pale)}.field-err{color:var(--red);margin-top:4px;font-size:11.5px;display:none}.field-err.show{display:block}.pwd-wrap{position:relative}.pwd-eye{cursor:pointer;color:var(--ink-faint);background:0 0;border:none;padding:3px;line-height:0;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.pwd-eye:hover{color:var(--ink-soft)}.pwd-meter{margin-top:7px}.pwd-bars{gap:3px;margin-bottom:5px;display:flex}.pwd-bar{background:var(--line);border-radius:99px;flex:1;height:3px;transition:background .25s}.pwd-bar.w{background:var(--red)}.pwd-bar.f{background:var(--amber)}.pwd-bar.s{background:var(--emerald)}.pwd-rules{flex-wrap:wrap;gap:4px 12px;display:flex}.pwd-rule{color:var(--ink-faint);align-items:center;gap:4px;font-size:11px;transition:color .2s;display:flex}.pwd-rule.ok{color:var(--emerald-deep)}.pwd-rule .rd{background:var(--line);border-radius:50%;flex-shrink:0;width:5px;height:5px;transition:background .2s}.pwd-rule.ok .rd{background:var(--emerald)}.terms-row{border:1.5px solid var(--line);cursor:pointer;background:var(--paper);border-radius:11px;align-items:flex-start;gap:11px;margin-bottom:8px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.terms-row:hover,.terms-row.on{border-color:var(--blue);background:var(--blue-pale)}.terms-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--blue);cursor:pointer;flex-shrink:0;margin-top:2px}.terms-row .terms-label a{color:var(--blue-deep);font-weight:600}.terms-row .terms-label a:hover{text-decoration:underline}.terms-label{font-size:13px;line-height:1.55}.terms-label a{color:var(--blue-deep);text-underline-offset:2px;font-weight:600;text-decoration:underline}.error-banner{background:var(--red-pale);color:var(--red);border:1px solid #ebbcba;border-radius:10px;align-items:center;gap:9px;margin-bottom:14px;padding:11px 14px;font-size:13px;display:none}.error-banner.show{display:flex}.submit-btn{cursor:pointer;background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-family:Inter;font-size:15px;font-weight:700;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 4px 18px #1b4d724d}.submit-btn:hover{transform:translateY(-1px);box-shadow:0 7px 26px #1b4d7266}.submit-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:17px;height:17px;animation:.65s linear infinite spin;display:none}@keyframes spin{to{transform:rotate(360deg)}}.auth-switch{text-align:center;color:var(--ink-soft);margin-top:18px;font-size:14px}.auth-switch a{color:var(--blue-deep);font-weight:600}.success-state{text-align:center;flex-direction:column;align-items:center;padding:40px 0;display:none}.success-state.show{display:flex}.success-ring{background:var(--emerald-pale);border:3px solid var(--emerald);border-radius:50%;justify-content:center;align-items:center;width:78px;height:78px;margin-bottom:20px;animation:.35s pop;display:flex}@keyframes pop{0%{opacity:0;transform:scale(.5)}80%{transform:scale(1.07)}to{opacity:1;transform:scale(1)}}.success-state h2{margin-bottom:8px;font-size:24px;font-weight:800}.success-notice{background:var(--blue-pale);border:1px solid var(--blue);max-width:440px;color:var(--blue-deep);text-align:left;border-radius:12px;margin:14px 0 22px;padding:16px 20px;font-size:13.5px;line-height:1.65}.success-notice strong{font-weight:700}.btn-go{background:var(--blue);color:#fff;cursor:pointer;box-shadow:var(--shadow-md);border:none;border-radius:12px;align-items:center;gap:8px;padding:13px 32px;font-size:15px;font-weight:700;transition:background .15s,transform .15s;display:inline-flex}.btn-go:hover{background:var(--blue-deep);transform:translateY(-1px)}@media (max-width:920px){.auth-page{grid-template-columns:1fr}.auth-visual{display:none}.auth-form-panel{border-left:none;padding:32px 24px 48px}.field-grid{grid-template-columns:1fr}}@media (max-width:480px){.auth-nav{padding:14px 20px}.auth-nav-right span{display:none}.auth-form-panel{padding:24px 16px 40px}.form-section{padding:16px 14px}.auth-heading{font-size:20px}.field-grid{grid-template-columns:1fr}}
