
:root{--navy:#071d36;--navy2:#0b3155;--teal:#12a6a1;--gold:#d6ad5b;--ink:#132238;--muted:#718096;--line:#e6edf3}
*{box-sizing:border-box}body.auth-pro{margin:0;font-family:Tahoma,Arial,sans-serif;background:#f4f8fb;color:var(--ink);min-height:100vh}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(340px,44%) 1fr}
.auth-side{position:relative;overflow:hidden;padding:55px;display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(145deg,var(--navy),var(--navy2))}
.auth-side:before,.auth-side:after{content:"";position:absolute;border-radius:50%;border:1px solid #ffffff18}.auth-side:before{width:420px;height:420px;left:-190px;top:-140px}.auth-side:after{width:520px;height:520px;right:-300px;bottom:-260px}
.auth-brand{position:relative;z-index:1}.brand-mark{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#ffffff12;border:1px solid #ffffff22;font-size:28px;margin-bottom:18px}
.auth-brand h1{font-size:34px;margin:0 0 9px}.auth-brand p{color:#d7e6f2;line-height:1.9;max-width:520px}
.auth-features{position:relative;z-index:1;display:grid;gap:13px}.auth-feature{padding:14px 16px;background:#ffffff0c;border:1px solid #ffffff14;border-radius:14px;color:#e8f2f8}
.auth-foot{position:relative;z-index:1;color:#a9bfd1;font-size:13px}
.auth-main{display:grid;place-items:center;padding:35px;background:radial-gradient(circle at 80% 10%,#dff7f5 0,transparent 28%),#f7fafc}
.auth-card{width:min(470px,100%);background:#fff;border:1px solid var(--line);border-radius:26px;padding:38px;box-shadow:0 24px 70px #17324d18}
.auth-badge{display:inline-flex;align-items:center;gap:7px;background:#edfafa;color:#087a77;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:bold}
.auth-card h2{font-size:28px;margin:18px 0 7px}.auth-sub{color:var(--muted);line-height:1.8;margin:0 0 25px}
.auth-label{display:block;font-size:13px;font-weight:bold;margin:14px 0 7px}.auth-input-wrap{position:relative}.auth-input{width:100%;border:1px solid #dbe5ed;background:#fbfdfe;border-radius:13px;padding:14px 15px;font-size:15px;outline:0;transition:.2s}.auth-input:focus{border-color:var(--teal);box-shadow:0 0 0 4px #12a6a115;background:#fff}
.pass-toggle{position:absolute;left:9px;top:50%;transform:translateY(-50%);border:0;background:transparent;cursor:pointer;color:#65758a;padding:8px}
.auth-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:13px 0 20px;font-size:13px}.auth-link{color:#087f7c;text-decoration:none;font-weight:bold}.auth-link:hover{text-decoration:underline}
.auth-btn{width:100%;border:0;border-radius:13px;padding:14px 18px;background:linear-gradient(90deg,#087f7c,#12a6a1);color:#fff;font-size:15px;font-weight:bold;cursor:pointer;box-shadow:0 9px 25px #12a6a12d}.auth-btn:hover{filter:brightness(.97)}
.auth-error{background:#fff1f1;border:1px solid #ffd2d2;color:#a52828;border-radius:12px;padding:12px 14px;margin:15px 0;font-size:13px}
.auth-note{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);color:#8290a0;font-size:12px;line-height:1.8;text-align:center}
.role-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:23px}.role-switch a{padding:9px 6px;text-align:center;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:#607085;font-size:12px}.role-switch a.active{background:#edfafa;border-color:#bde9e6;color:#087f7c;font-weight:bold}
@media(max-width:850px){.auth-shell{grid-template-columns:1fr}.auth-side{display:none}.auth-main{padding:22px;min-height:100vh}.auth-card{padding:27px 22px;border-radius:21px}}
