@import url("../teacher/lesson-management.css");

body { min-height:100vh; }.register-page { min-height:100vh; display:grid; grid-template-columns:minmax(330px,.8fr) minmax(560px,1.2fr); }.register-brand { display:flex; flex-direction:column; justify-content:center; padding:8vw; color:#eff6ff; background:linear-gradient(145deg,#1e40af,#2563eb 58%,#60a5fa); position:relative; overflow:hidden; }.register-brand::after { content:""; position:absolute; right:-180px; bottom:-210px; width:450px; height:450px; border:70px solid rgba(255,255,255,.08); border-radius:50%; }.brand-mark { width:62px; height:62px; display:grid; place-items:center; margin-bottom:28px; border-radius:16px; background:rgba(255,255,255,.16); font-size:29px; }.eyebrow { margin-bottom:10px; color:#bfdbfe; font-size:12px; font-weight:800; letter-spacing:1.5px; }.register-brand h1 { margin-bottom:16px; font-size:clamp(35px,4vw,54px); line-height:1.08; }.register-brand > p:not(.eyebrow) { max-width:420px; color:#dbeafe; font-size:17px; line-height:1.7; }.register-section { display:grid; place-items:center; padding:34px; background:var(--bg); }.register-card,.id-card-panel { width:min(100%,680px); padding:36px; border:1px solid var(--border); border-radius:16px; background:var(--white); box-shadow:var(--shadow); animation:panel-enter .45s ease both; }.register-heading { margin-bottom:25px; }.register-heading h2 { margin-bottom:7px; font-size:27px; }.register-heading p,.back-link { color:var(--text-light); }.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }.full-width { grid-column:span 2; }.form-group label { display:block; margin-bottom:7px; font-weight:600; }.form-group label span { color:var(--danger); }.form-group input,.form-group select { width:100%; padding:12px; border:1px solid var(--border); border-radius:var(--radius); color:var(--text); background:var(--white); font:inherit; outline:none; transition:border-color .2s,box-shadow .2s; }.form-group input:focus,.form-group select:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(37,99,235,.14); }.form-group small { display:block; margin-top:6px; color:var(--text-light); font-size:12px; }.password-field { position:relative; }.password-field input { padding-right:44px; }.password-toggle { position:absolute; top:50%; right:8px; padding:8px; border:0; color:var(--text-light); background:transparent; cursor:pointer; transform:translateY(-50%); }.terms-option { display:flex; align-items:flex-start; gap:9px; margin:22px 0; color:var(--text-light); font-size:14px; line-height:1.45; cursor:pointer; }.terms-option input { margin-top:3px; accent-color:var(--primary); }.register-btn,.card-actions .btn { display:flex; align-items:center; justify-content:center; gap:9px; }.register-btn { width:100%; }.back-link { display:block; width:max-content; margin:23px auto 0; font-size:14px; text-decoration:none; }.back-link:hover { color:var(--primary); }.card-actions { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:18px; }.id-card-panel[hidden] { display:none; }
.id-card-panel { width:min(100%,560px); margin-inline:auto; }

@keyframes panel-enter { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:translateY(0); } }
@media (max-width:920px) { .register-page { grid-template-columns:1fr; }.register-brand { min-height:220px; padding:40px 30px; }.brand-mark { display:none; }.register-brand h1 { font-size:34px; }.register-section { padding:28px 20px; } }.register-card,.id-card-panel { padding:28px; }
@media (max-width:600px) { .form-grid { grid-template-columns:1fr; }.full-width { grid-column:span 1; }.card-actions { grid-template-columns:1fr; } }
@media print { body { background:#fff; }.register-page,.register-section { display:block; padding:0; background:#fff; }.register-brand,.register-card,.register-heading,.card-actions,.back-link,#loadingOverlay,#toast { display:none !important; }.id-card-panel { width:auto; padding:0; border:0; box-shadow:none; }.student-id-card { width:100%; box-shadow:none; } }
.student-type-field { display:flex; flex-wrap:wrap; gap:12px 22px; padding:14px; border:1px solid var(--border); border-radius:var(--radius); }.student-type-field legend { padding:0 6px; font-weight:700; }.student-type-field label { display:flex; align-items:center; gap:8px; font-weight:600; }.student-type-field input { width:auto; }
.registration-number-banner{display:flex;align-items:center;justify-content:center;gap:9px;margin:0 0 18px;padding:13px 16px;border:1px solid #86efac;border-radius:12px;color:#166534;background:#f0fdf4;text-align:center}.registration-number-banner i{font-size:18px}.registration-number-banner strong{font-size:1.05rem}.teacher-return-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.teacher-return-actions[hidden]{display:none}@media(max-width:600px){.teacher-return-actions{grid-template-columns:1fr}}
