/* VikiHub v1.4.1 - Tutor LMS Student Registration /standalone brand presentation */
body.vh-register-screen { overflow-x:hidden; }
body.vh-register-screen .vh-register-layout { grid-template-columns:minmax(0, .91fr) minmax(0, 1.09fr); overflow:visible; }
body.vh-register-screen .vh-login-story { position:sticky; top:0; align-self:start; }
body.vh-register-screen .vh-login-photo { inset:0 0 0 26%; background-position:47% 47%; }
body.vh-register-screen .vh-login-photo-tint { background:linear-gradient(90deg,#071a34 0%,rgba(7,26,52,.96) 27%,rgba(7,26,52,.66) 50%,rgba(7,26,52,.06) 87%),linear-gradient(0deg,rgba(6,21,45,.78),transparent 35%); }
body.vh-register-screen .vh-login-story-message { width:min(65%,400px); }
body.vh-register-screen .vh-login-story-message h2 { font-size:clamp(32px,3.3vw,56px); }
body.vh-register-screen .vh-register-auth { align-items:center; padding:clamp(24px,4vh,48px) clamp(28px,5vw,90px); }
body.vh-register-screen .vh-register-inner { width:100%; max-width:575px; }
body.vh-register-screen .vh-register-heading h1 { font-size:clamp(34px,3vw,49px); margin:8px 0; }
body.vh-register-screen .vh-register-heading h1 em { color:var(--vh-orange); font-style:normal; }
body.vh-register-screen .vh-register-heading>p { margin-bottom:18px; font-size:14px; }
/* Tutor's native registration card becomes a seamless part of the form panel. */
body.vh-register-screen #tutor-registration-wrap { max-width:none !important; width:100% !important; margin:0 !important; padding:0 !important; background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; }
body.vh-register-screen #tutor-registration-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:14px; row-gap:0; max-width:none !important; width:100% !important; margin:0 !important; padding:0 !important; background:transparent !important; border:none !important; box-shadow:none !important; }
/* Defaults cover injected custom registration fields and legal consent safely. */
body.vh-register-screen #tutor-registration-form > * { grid-column:1 / -1; min-width:0; }
/* Tutor's first four standard fields are First name, Last name, Username, Email. */
body.vh-register-screen #tutor-registration-form > .tutor-form-group:nth-of-type(-n+4) { grid-column:auto; }
body.vh-register-screen .vh-registration-native .tutor-form-group,
body.vh-register-screen .vh-registration-native .tutor-password-strength-checker { min-width:0; margin:0 0 10px !important; }
body.vh-register-screen .vh-registration-native .tutor-input-field,
body.vh-register-screen .vh-registration-native .tutor-mb-8 { margin-bottom:0 !important; }
body.vh-register-screen .vh-registration-native label { display:block; font-size:12px !important; font-weight:700 !important; line-height:1.4; color:#263955 !important; margin:0 0 6px !important; }
body.vh-register-screen .vh-registration-native input:not([type]),
body.vh-register-screen .vh-registration-native input[type="text"],
body.vh-register-screen .vh-registration-native input[type="email"],
body.vh-register-screen .vh-registration-native input[type="tel"],
body.vh-register-screen .vh-registration-native input[type="url"],
body.vh-register-screen .vh-registration-native input[type="password"],
body.vh-register-screen .vh-registration-native select,
body.vh-register-screen .vh-registration-native textarea { display:block; width:100% !important; min-width:0; max-width:100%; height:44px; border-radius:10px !important; border:1px solid #d9e1ec !important; background:#f8faff !important; color:#132c4c !important; box-shadow:none !important; font-size:13px !important; padding:9px 12px !important; }
body.vh-register-screen .vh-registration-native textarea { height:auto; min-height:84px; }
body.vh-register-screen .vh-registration-native input:focus,
body.vh-register-screen .vh-registration-native select:focus,
body.vh-register-screen .vh-registration-native textarea:focus { outline:0 !important; border-color:#f68b2a !important; box-shadow:0 0 0 4px rgba(251,122,22,.13) !important; }
body.vh-register-screen .vh-registration-native input[type="checkbox"] { width:auto; height:auto; accent-color:#fb7a16; flex-shrink:0; }
body.vh-register-screen .vh-registration-native .tutor-form-row { margin:4px 0 12px !important; }
body.vh-register-screen .vh-registration-native .tutor-input-wrapper { display:flex; align-items:flex-start; gap:9px; }
body.vh-register-screen .vh-registration-native .tutor-input-wrapper label { font-weight:500 !important; font-size:12px !important; line-height:1.55; margin:0 !important; }
body.vh-register-screen .vh-registration-native button[type="submit"] { display:block; width:100%; border:0 !important; min-height:48px; height:48px; padding:10px 22px !important; background:#f57a14 !important; color:#fff !important; border-radius:11px !important; font-size:15px !important; line-height:1.5; font-weight:800 !important; box-shadow:0 10px 22px rgba(237,110,12,.14); cursor:pointer; }
body.vh-register-screen .vh-registration-native button[type="submit"]:hover { background:#d9690c !important; }
body.vh-register-screen .vh-registration-native a { color:#df6c12 !important; font-weight:700; text-decoration:none !important; }
body.vh-register-screen .vh-registration-native a:hover { text-decoration:underline !important; }
body.vh-register-screen .vh-registration-native #tutor-registration-form > div:last-child .tutor-flex { display:flex; align-items:center; justify-content:center; gap:5px; flex-wrap:wrap; margin-top:11px !important; font-size:12px; }
body.vh-register-screen .vh-registration-native .tutor-alert,
body.vh-register-screen .vh-registration-native .tutor-notice { border-radius:11px; padding:11px; margin-bottom:13px; font-size:13px; }
body.vh-register-screen .vh-register-footer { margin-top:15px; text-align:center; font-size:12px; }
body.vh-register-screen .vh-register-footer a { color:#7b8ba1; font-weight:650; }
body.vh-register-screen .vh-register-footer a:hover { text-decoration:underline; }
/* On shorter desktop screens, native form may grow and page remains scrollable. */
@media (min-width:1081px) and (max-height:720px) {
 body.vh-register-screen .vh-register-auth { padding-top:20px; padding-bottom:20px; }
 body.vh-register-screen .vh-register-heading h1 { font-size:34px; }
 body.vh-register-screen .vh-register-heading>p { margin-bottom:12px; }
 body.vh-register-screen .vh-registration-native .tutor-form-group { margin-bottom:6px !important; }
 body.vh-register-screen .vh-registration-native input[type="text"],body.vh-register-screen .vh-registration-native input[type="password"],body.vh-register-screen .vh-registration-native input[type="email"] { height:40px; }
}
@media (max-width:1080px) and (min-width:721px) {
 body.vh-register-screen .vh-register-layout { grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); }
 body.vh-register-screen .vh-login-story-message { width:min(77%,335px); }
 body.vh-register-screen .vh-login-photo { inset:0 0 0 17%; }
 body.vh-register-screen .vh-register-auth { padding:28px 25px; }
}
@media (max-width:720px) {
 body.vh-register-screen .vh-register-layout { display:grid; grid-template-columns:1fr; grid-template-rows:auto minmax(0,1fr); }
 body.vh-register-screen .vh-login-story { position:relative; height:clamp(138px,21vh,180px); min-height:0; }
 body.vh-register-screen .vh-login-photo { inset:0 0 0 35%; background-position:50% 32%; }
 body.vh-register-screen .vh-login-photo-tint { background:linear-gradient(90deg,#061b37,rgba(6,27,55,.91) 40%,rgba(6,27,55,.18) 90%); }
 body.vh-register-screen .vh-login-story-message { width:70%; }
 body.vh-register-screen .vh-login-story-message h2 { font-size:clamp(19px,5vw,24px); }
 body.vh-register-screen .vh-register-auth { padding:25px 23px 30px; }
 body.vh-register-screen .vh-register-heading h1 { font-size:clamp(30px,8vw,40px); margin:6px 0; }
 body.vh-register-screen .vh-register-heading>p { font-size:13px; margin-bottom:18px; }
 body.vh-register-screen #tutor-registration-form { grid-template-columns:1fr; }
 body.vh-register-screen #tutor-registration-form > .tutor-form-group:nth-of-type(-n+4) { grid-column:1/-1; }
 body.vh-register-screen .vh-registration-native input[type="text"],
 body.vh-register-screen .vh-registration-native input[type="password"] { height:46px; }
}
@media (max-width:375px) and (max-height:690px) {
 body.vh-register-screen .vh-login-story { height:110px; }
 body.vh-register-screen .vh-register-auth { padding:17px 19px 25px; }
}
@media (orientation:landscape) and (max-height:520px) {
 body.vh-register-screen .vh-register-layout { grid-template-columns:minmax(0,.36fr) minmax(0,.64fr); grid-template-rows:auto; }
 body.vh-register-screen .vh-login-story { height:auto; min-height:100dvh; position:sticky; }
 body.vh-register-screen .vh-login-story-content { min-height:100dvh; }
 body.vh-register-screen .vh-login-photo { inset:0; }
 body.vh-register-screen .vh-register-auth { padding:16px 23px; align-items:start; }
 body.vh-register-screen .vh-register-heading>p { margin-bottom:14px; }
}

/* Registration username, physical ID and classroom Windows account notice. */
body.vh-register-screen .vh-registration-identity-note {
 display:flex; align-items:flex-start; gap:10px; width:100%; margin:0 0 15px;
 padding:12px 13px; border:1px solid #ceddee; border-left:3px solid #f47b20;
 border-radius:10px; background:#f3f7fd; color:#354b67; line-height:1.45;
 font-size:12px; box-sizing:border-box;
}
body.vh-register-screen .vh-registration-identity-icon { display:grid; place-items:center; width:20px; height:20px; flex:0 0 20px; background:#e9f1fc; color:#174b83; font-size:12px; font-weight:800; border-radius:50%; }
body.vh-register-screen .vh-registration-identity-note strong { display:block; color:#173252; font-size:12px; font-weight:800; margin:0 0 5px; }
body.vh-register-screen .vh-registration-identity-note p { margin:0 0 5px; font-size:12px; line-height:1.43; }
body.vh-register-screen .vh-registration-identity-note p:last-child { margin-bottom:0; }
body.vh-register-screen .vh-registration-identity-note b { font-weight:750; }
html[data-vh-theme="dark"] body.vh-register-screen .vh-registration-identity-note { background:#162d48; border-color:#395472; border-left-color:#ff9142; color:#c1d1e8; }
html[data-vh-theme="dark"] body.vh-register-screen .vh-registration-identity-note strong { color:#f1f7ff; }
html[data-vh-theme="dark"] body.vh-register-screen .vh-registration-identity-icon { color:#ffb77b; background:#2b4059; }
@media (max-width:720px) {
 body.vh-register-screen .vh-registration-identity-note { font-size:11.5px; padding:10px 11px; margin-bottom:16px; }
 body.vh-register-screen .vh-registration-identity-note p { font-size:11.5px; }
}
