:root{--navy:#101e55;--blue:#075cf5;--muted:#6f80ad;--border:#d9e2f5}
*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--navy);font-family:Inter,Arial,sans-serif;font-size:14px}.register-page{min-height:100vh;padding:61px 16px 38px}.brand{gap:22px;margin:0 auto 29px}.brand-mascot{width:69px;height:80px;object-fit:contain}.brand-name{color:#0863f5;font-size:35px;font-weight:800;line-height:1.2;letter-spacing:-1.4px;white-space:nowrap}.brand-name span{display:inline-block;color:#fff;background:#0760f5;border-radius:7px;padding:2px 6px;font-size:25px;letter-spacing:-.5px;vertical-align:4px}.brand-tagline{margin-top:9px;font-size:14px;font-weight:600;color:#14265d;white-space:nowrap}.register-card{width:100%;max-width:543px;padding:32px 33px 24px;border:1px solid #e1e8f7;border-radius:15px;box-shadow:0 9px 28px rgba(18,52,110,.045)}h1{text-align:center;font-size:27px;font-weight:700;line-height:1.35;margin:0 0 10px}.subtitle{text-align:center;color:var(--muted);font-size:14px;font-weight:600;margin:0 0 25px}.field{margin-bottom:18px}.form-label{display:block;font-size:12px;font-weight:700;color:#182858;margin-bottom:8px}.input-icon{position:relative}.input-icon>i{position:absolute;z-index:2;left:15px;top:50%;transform:translateY(-50%);font-size:17px;color:#6a7fb7;pointer-events:none}.form-control,.form-select{height:42px;border:1px solid var(--border);border-radius:7px;color:#182858;font-size:13px;font-weight:500;padding-left:44px;background-color:#fff;box-shadow:none!important}.form-control::placeholder{color:#8999bd;opacity:1}.form-control:focus,.form-select:focus{border-color:#5c94ff;outline:0}.form-select{color:#8999bd;padding-right:35px;cursor:pointer}.form-select:valid{color:#182858}.form-select:has(option:checked[value=""]){color:#8999bd}.has-action .form-control{padding-right:46px}.input-action{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#627bb3;width:26px;height:30px;display:flex;align-items:center;justify-content:center;font-size:17px;z-index:3}.native-date{position:absolute;right:9px;top:6px;width:28px;height:30px;opacity:0;pointer-events:none}.last-field{margin-bottom:20px}.btn-register{height:46px;background:#075bf5;color:#fff;font-size:15px;font-weight:700;border-radius:7px;border:0}.btn-register:hover,.btn-register:focus{background:#004cdd;color:#fff}.separator{display:flex;align-items:center;gap:13px;color:#7182ac;font-weight:700;font-size:12px;margin:18px 0}.separator:before,.separator:after{content:"";height:1px;background:#e0e7f5;flex:1}.btn-google{height:46px;display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--border);border-radius:7px;font-size:15px;font-weight:700;color:#142052;background:#fff}.btn-google:hover{background:#f7faff;border-color:#a9c1f4}.login-text{text-align:center;color:#7182ac;font-size:13px;font-weight:600;margin:18px 0 0}.login-text a{color:#075cf5;text-decoration:none;font-weight:700}.login-text a:hover{text-decoration:underline}.form-feedback{font-size:12px;margin:0;color:#52699f}.form-feedback:not(:empty){margin-bottom:12px}.form-feedback.error{color:#b42318}.form-feedback.success{color:#137547}@media(max-width:575px){.register-page{padding:30px 14px}.brand{gap:12px;margin-bottom:24px}.brand-mascot{width:54px;height:65px}.brand-name{font-size:26px}.brand-name span{font-size:18px;vertical-align:3px}.brand-tagline{font-size:10px;margin-top:5px}.register-card{padding:27px 20px 25px}h1{font-size:25px}}

/* Bootstrap validation feedback with icon-wrapped inputs */
.needs-validation .field .invalid-feedback{display:none;font-size:12px;margin-top:6px}
.needs-validation.was-validated .field:has(.form-control:invalid) .invalid-feedback{display:block}
.needs-validation.was-validated .form-control:invalid{border-color:#dc3545;background-image:none}
.needs-validation.was-validated .form-control:valid{background-image:none}
.needs-validation.was-validated .input-icon:has(.form-control:invalid)>i{color:#dc3545}
