/* Isolated authentication layout for V17.4. */
.auth-v174-page,
.auth-v174-page *{box-sizing:border-box}
.auth-v174-page{
    --auth-blue:#367ca8;
    --auth-blue-dark:#244f70;
    --auth-blue-soft:#edf7fc;
    --auth-line:#d8e7ef;
    --auth-ink:#20384a;
    --auth-muted:#6d8190;
    min-height:calc(100vh - 82px);
    padding:4.5rem 0;
    background:
        radial-gradient(circle at 8% 12%,rgba(93,163,201,.12),transparent 28%),
        radial-gradient(circle at 92% 88%,rgba(159,205,229,.14),transparent 30%),
        linear-gradient(180deg,#f8fcfe 0%,#eef7fb 100%);
    font-family:'Plus Jakarta Sans',sans-serif;
}
.auth-v174-container{max-width:1180px}
.auth-v174-layout{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(380px,.75fr);
    overflow:hidden;
    border:1px solid var(--auth-line);
    border-radius:30px;
    background:#fff;
    box-shadow:0 28px 75px rgba(54,105,137,.14);
}
.auth-v174-intro{
    position:relative;
    display:flex;
    min-height:650px;
    flex-direction:column;
    justify-content:space-between;
    padding:3.2rem;
    overflow:hidden;
    color:#fff;
    background:
        radial-gradient(circle at 88% 14%,rgba(255,255,255,.18),transparent 24%),
        linear-gradient(145deg,#2f719a 0%,#244f70 100%);
}
.auth-v174-intro:after{
    position:absolute;
    right:-90px;
    bottom:-110px;
    width:330px;
    height:330px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;
    content:"";
    box-shadow:0 0 0 45px rgba(255,255,255,.04),0 0 0 90px rgba(255,255,255,.025);
}
.auth-v174-school{position:relative;z-index:1;display:flex;align-items:center;gap:1rem}
.auth-v174-school img{width:72px;height:72px;object-fit:contain;padding:4px;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.auth-v174-school span{display:block;margin-bottom:.25rem;color:rgba(255,255,255,.72);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.auth-v174-school strong{display:block;max-width:360px;color:#fff;font-family:'Lora',serif;font-size:1.15rem;line-height:1.35}
.auth-v174-intro-copy{position:relative;z-index:1;max-width:620px;margin:3rem 0}
.auth-v174-kicker{display:block;color:#8cbdd8;font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.auth-v174-intro .auth-v174-kicker{color:#c8e3f1}
.auth-v174-intro h1{margin:.9rem 0 1rem;color:#fff;font-family:'Lora',serif;font-size:clamp(2.4rem,4vw,4rem);line-height:1.12;letter-spacing:-.035em}
.auth-v174-intro-copy p{max-width:560px;margin:0;color:rgba(255,255,255,.78);font-size:1rem;line-height:1.8}
.auth-v174-benefits{position:relative;z-index:1;display:grid;gap:.85rem}
.auth-v174-benefits>div{display:flex;align-items:center;gap:.75rem;color:rgba(255,255,255,.86);font-size:.9rem}
.auth-v174-benefits i{display:flex;width:34px;height:34px;align-items:center;justify-content:center;flex:0 0 34px;border-radius:10px;background:rgba(255,255,255,.12);color:#d9eff9}
.auth-v174-motto{position:relative;z-index:1;margin-top:2rem;padding-top:1.3rem;border-top:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.72);font-size:.8rem;font-weight:700;letter-spacing:.03em}
.auth-v174-card{display:flex;flex-direction:column;justify-content:center;padding:3rem;background:#fff}
.auth-v174-card-head{display:flex;align-items:flex-start;gap:1rem;margin-bottom:2rem}
.auth-v174-icon{display:flex;width:52px;height:52px;align-items:center;justify-content:center;flex:0 0 52px;border-radius:16px;background:var(--auth-blue-soft);color:var(--auth-blue);font-size:1.35rem}
.auth-v174-card-head span,.auth-v174-register-head>div:last-child>span{display:block;margin-bottom:.35rem;color:var(--auth-blue);font-size:.7rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.auth-v174-card-head h2{margin:0;color:var(--auth-ink);font-family:'Lora',serif;font-size:2rem}
.auth-v174-card-head p{margin:.45rem 0 0;color:var(--auth-muted);font-size:.9rem;line-height:1.6}
.auth-v174-alert{display:flex;align-items:flex-start;gap:.7rem;margin-bottom:1.25rem;padding:.9rem 1rem;border:1px solid #f3c7cc;border-radius:14px;background:#fff4f5;color:#9d3340;font-size:.88rem;line-height:1.55}
.auth-v174-alert i{margin-top:.1rem}
.auth-v174-form{display:grid;gap:1.15rem}
.auth-v174-field{display:grid;gap:.5rem}
.auth-v174-field label{margin:0;color:#334f63;font-size:.82rem;font-weight:700}
.auth-v174-field>small{color:#7d909f;font-size:.72rem;line-height:1.55}
.auth-v174-input-wrap,.auth-v174-select-wrap{position:relative;display:flex;align-items:center}
.auth-v174-input-wrap>i,.auth-v174-select-wrap>i{position:absolute;left:1rem;z-index:1;color:#87a5b6;font-size:1rem;pointer-events:none}
.auth-v174-input-wrap input,.auth-v174-select-wrap select{
    width:100%;
    min-height:50px;
    margin:0;
    padding:.78rem 1rem .78rem 2.8rem;
    border:1px solid var(--auth-line);
    border-radius:14px;
    outline:0;
    background:#fbfdfe;
    color:var(--auth-ink);
    font:inherit;
    font-size:.9rem;
    transition:border-color .18s,box-shadow .18s,background .18s;
}
.auth-v174-input-wrap input:focus,.auth-v174-select-wrap select:focus{border-color:#80b4d1;background:#fff;box-shadow:0 0 0 4px rgba(73,142,181,.10)}
.auth-v174-input-wrap input::placeholder{color:#a3b3be}
.auth-v174-submit{
    display:flex;
    width:100%;
    min-height:52px;
    align-items:center;
    justify-content:center;
    gap:.75rem;
    margin-top:.2rem;
    border:0;
    border-radius:14px;
    background:linear-gradient(135deg,var(--auth-blue),var(--auth-blue-dark));
    color:#fff;
    font:inherit;
    font-size:.92rem;
    font-weight:800;
    box-shadow:0 13px 26px rgba(47,113,154,.2);
    cursor:pointer;
    transition:transform .18s,box-shadow .18s;
}
.auth-v174-submit:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(47,113,154,.25)}
.auth-v174-card-foot{display:flex;justify-content:center;gap:.45rem;margin-top:1.6rem;padding-top:1.4rem;border-top:1px solid #e6eef3;color:#7a8d9b;font-size:.84rem}
.auth-v174-card-foot a,.auth-v174-register-actions a{color:var(--auth-blue-dark);font-weight:800;text-decoration:none}
.auth-v174-register-page{padding:3.5rem 0}
.auth-v174-register-card{max-width:1000px;margin:0 auto;padding:2.4rem;border:1px solid var(--auth-line);border-radius:28px;background:#fff;box-shadow:0 26px 68px rgba(54,105,137,.12)}
.auth-v174-register-head{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-bottom:2rem;padding-bottom:1.6rem;border-bottom:1px solid #e4edf2}
.auth-v174-school.compact{min-width:300px;padding:1rem;border-radius:18px;background:linear-gradient(135deg,#347da7,#24506f)}
.auth-v174-school.compact img{width:58px;height:58px;border-radius:15px}
.auth-v174-school.compact strong{font-size:.95rem}
.auth-v174-register-head h1{margin:.35rem 0 .45rem;color:var(--auth-ink);font-family:'Lora',serif;font-size:2.25rem}
.auth-v174-register-head p{margin:0;color:var(--auth-muted);line-height:1.65}
.auth-v174-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem 1.25rem}
.auth-v174-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.auth-v174-student-box{padding:1.35rem;border:1px solid #dceaf1;border-radius:20px;background:#f7fbfd}
.auth-v174-student-box[hidden]{display:none!important}
.auth-v174-student-title{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}
.auth-v174-student-title>i{display:flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:13px;background:#e8f4fa;color:#367ca8;font-size:1.15rem}
.auth-v174-student-title strong{display:block;color:#29465b}
.auth-v174-student-title span{display:block;margin-top:.15rem;color:#7b8f9e;font-size:.76rem}
.auth-v174-password-field{margin-top:.1rem}
.auth-v174-register-actions{display:grid;grid-template-columns:minmax(220px,320px) 1fr;align-items:center;gap:1rem;margin-top:.3rem}
.auth-v174-register-actions p{margin:0;color:#7b8e9c;font-size:.84rem;text-align:right}
@media(max-width:991px){
    .auth-v174-page{padding:2.5rem 0}
    .auth-v174-layout{grid-template-columns:1fr}
    .auth-v174-intro{min-height:auto;padding:2.2rem}
    .auth-v174-intro-copy{margin:2.2rem 0}
    .auth-v174-intro h1{font-size:2.5rem}
    .auth-v174-card{padding:2.2rem}
    .auth-v174-register-head{align-items:flex-start;flex-direction:column}
    .auth-v174-school.compact{min-width:0;width:100%}
    .auth-v174-grid.three{grid-template-columns:1fr}
}
@media(max-width:767px){
    .auth-v174-page{padding:1.4rem 0}
    .auth-v174-layout,.auth-v174-register-card{border-radius:22px}
    .auth-v174-intro{padding:1.6rem}
    .auth-v174-intro h1{font-size:2rem}
    .auth-v174-benefits{display:none}
    .auth-v174-card{padding:1.6rem}
    .auth-v174-card-head{display:block}
    .auth-v174-icon{margin-bottom:1rem}
    .auth-v174-grid{grid-template-columns:1fr}
    .auth-v174-register-card{padding:1.4rem}
    .auth-v174-register-head h1{font-size:1.8rem}
    .auth-v174-register-actions{grid-template-columns:1fr}
    .auth-v174-register-actions p{text-align:center}
}
@media(max-width:480px){
    .auth-v174-school strong{font-size:.95rem}
    .auth-v174-school img{width:58px;height:58px}
    .auth-v174-card-head h2{font-size:1.7rem}
    .auth-v174-card-foot{flex-direction:column;align-items:center}
}
