.public-account-nav { display:flex; align-items:center; gap:16px; }
.public-account-identity { display:flex; align-items:center; gap:9px; min-width:0; color:#172b4d; }
.public-account-identity small { display:block; color:#64748b; font-size:11px; letter-spacing:.05em; }
.public-account-identity strong { display:block; max-width:160px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.public-account-dot { width:8px; height:8px; border-radius:50%; background:#16815e; box-shadow:0 0 0 4px #e8f6ef; flex-shrink:0; }
.public-dashboard-link { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:44px; padding:10px 18px; background:#2457c5; color:#fff; border-radius:12px; text-decoration:none; font-size:14px; font-weight:650; }
.public-dashboard-link:hover { background:#183f96; color:#fff; }
.public-account-nav form { margin:0; }
.public-signout { border:0; background:transparent; color:#46546d; min-height:44px; padding:8px 0; font-size:13px; }
.public-account-nav a:focus-visible,.public-signout:focus-visible { outline:3px solid #8ab5ff; outline-offset:3px; }
.register-refresh.auth-section { display:block; min-height:0; padding:56px 32px 72px; background:radial-gradient(ellipse at 10% 20%,#e7efff,transparent 55%),#f6f8fc; }
.register-refresh .register-shell { width:100%; max-width:1200px; margin:auto; display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr); gap:56px; border:0; border-radius:0; background:transparent; box-shadow:none; overflow:visible; align-items:start; }
.register-refresh .register-intro { padding:30px 0; background:transparent; color:#152642; }
.register-refresh .register-brand { display:flex; align-items:center; gap:10px; color:#2457c5; margin-bottom:48px; }
.register-refresh .register-kicker { color:#2457c5; letter-spacing:.13em; font-size:11px; }
.register-refresh .register-intro h1 { color:#172b4d; font-size:clamp(32px,3.5vw,48px); line-height:1.12; letter-spacing:-.04em; max-width:430px; }
.register-refresh .register-intro>p { color:#53647e; font-size:16px; line-height:1.8; margin:24px 0 36px; }
.register-refresh .register-steps { padding-top:24px; border-top:1px solid #ccd9ed; gap:24px; margin-top:0; }
.register-refresh .register-steps div,.register-refresh .register-steps strong { color:#314765; }
.register-refresh .register-steps span { background:#fff; color:#2457c5; border:1px solid #d1def4; width:36px; height:36px; flex-shrink:0; }
.register-refresh .register-form-panel { min-width:0; padding:36px; border:1px solid #e0e7f2; border-radius:24px; background:#fff; box-shadow:0 16px 48px #1c355b0b; }
.register-refresh .register-form-heading { margin-bottom:28px; }
.register-refresh .register-form-heading>span { color:#2457c5; }
.register-refresh .register-form-heading h2 { font-size:27px; line-height:1.25; letter-spacing:-.035em; color:#172b4d; }
.register-refresh .register-form-heading p { line-height:1.6; color:#62718a; }
.register-refresh .register-group legend { flex-direction:column; gap:3px; font-size:14px; margin-bottom:18px; }
.register-refresh .register-group legend small { color:#64748b; font-size:12px; }
.register-refresh .form-control,.register-refresh .form-select { border-radius:10px; min-height:48px; font-size:16px; border-color:#ced8e6; background-color:#fbfcfe; }
.register-refresh .form-control:focus,.register-refresh .form-select:focus { background-color:#fff; box-shadow:0 0 0 3px #2457c51c; }
.register-refresh .register-help { font-size:12px; line-height:1.5; color:#61718a; overflow-wrap:anywhere; }
.register-refresh .register-submit { min-height:50px; width:100%; border-radius:12px; background:#2457c5; color:#fff; font-size:15px; box-shadow:0 5px 12px #2457c51a; }
.register-refresh .register-login { margin:18px 0 0; }
.register-refresh .register-validation.validation-summary-valid { display:none; }
.register-refresh .register-validation.validation-summary-errors { padding:16px; border-radius:10px; color:#8f2222; background:#fff2f2; margin-bottom:22px; }
.register-refresh .register-validation ul { margin:0; padding-left:20px; }
.register-refresh .input-validation-error { border-color:#bd3434; }
@media(max-width:1100px) { .public-account-nav { gap:10px; } .public-account-identity strong { max-width:105px; } }
@media(max-width:991px) {
 .public-account-nav { padding:16px 0 8px; border-top:1px solid #e2e8f0; flex-wrap:wrap; gap:12px 18px; }
 .public-account-identity { flex:1 1 100%; }
 .public-account-identity strong { max-width:100%; }
 .register-refresh .register-shell { grid-template-columns:1fr; gap:24px; max-width:720px; }
 .register-refresh .register-intro { padding:0; }
 .register-refresh .register-brand,.register-refresh .register-steps { display:none; }
 .register-refresh .register-intro h1 { max-width:none; font-size:36px; }
 .register-refresh .register-intro>p { margin:12px 0 0; max-width:600px; }
}
@media(max-width:575px) {
 .register-refresh.auth-section { padding:28px 16px 40px; }
 .register-refresh .register-intro h1 { font-size:32px; }
 .register-refresh .register-intro>p { font-size:14px; line-height:1.6; }
 .register-refresh .register-form-panel { padding:24px 18px; border-radius:18px; }
 .register-refresh .register-form-heading h2 { font-size:23px; }
 .register-refresh .register-group { padding-bottom:24px; }
 .register-refresh .register-group+.register-group { padding-top:24px; }
 .public-dashboard-link { font-size:13px; padding:10px 14px; }
}
