*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}.auth-shell{min-height:100vh;background:radial-gradient(circle at 8% 14%,rgba(76,138,255,.32),transparent 36%),radial-gradient(circle at 92% 22%,rgba(74,218,255,.26),transparent 34%),linear-gradient(132deg,#eef4ff 0%,#eef9ff 34%,#f4f6ff 100%);display:flex;align-items:center;justify-content:center;padding:30px;font-family:Inter,Segoe UI,Arial,sans-serif}.auth-card{width:100%;max-width:1080px;border-radius:24px;background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.85);box-shadow:0 24px 60px #061f552b,0 8px 20px #0a1e3d1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:hidden;display:grid;grid-template-columns:1fr 1.2fr}.auth-card-reset{max-width:520px;grid-template-columns:1fr}.auth-form-only{max-width:none}.auth-inline-link{color:#255fbf;font-weight:600;text-decoration:none}.auth-inline-link:hover{text-decoration:underline}.auth-brand{background:linear-gradient(170deg,rgba(255,255,255,.2),transparent 38%),linear-gradient(158deg,#0c3d8a 0%,#1762cc 54%,#3b98f2 100%);color:#fff;padding:40px;position:relative}.auth-kicker{display:inline-flex;margin-bottom:16px;padding:8px 12px;border-radius:999px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32)}.auth-brand h1{font-size:34px;margin:0 0 10px;font-weight:700;letter-spacing:-.02em}.auth-brand p{margin:0;opacity:.98;line-height:1.58;max-width:430px}.auth-metrics{margin-top:28px;display:grid;gap:12px}.auth-metrics article{display:flex;align-items:baseline;gap:10px;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28)}.auth-metrics strong{font-size:24px;line-height:1}.auth-metrics span{font-size:13px;opacity:.94}.auth-pills{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px}.auth-pills span{display:inline-flex;padding:8px 11px;font-size:12px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28)}.auth-form{padding:42px}.auth-form h2{margin:0 0 10px;color:#172033;font-size:30px;letter-spacing:-.02em}.auth-form .sub{color:#5b6984;margin-bottom:26px;max-width:520px;line-height:1.6}.auth-error-banner{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;margin:0 0 22px;border-radius:12px;border:1px solid #ef9a9a;background:linear-gradient(180deg,#ffebee 0%,#fce4ec 100%);color:#6a1b1b;box-shadow:0 0 0 1px #c628280f,0 8px 24px #b71c1c1f}.auth-error-icon{flex-shrink:0;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;line-height:1;color:#fff;background:linear-gradient(145deg,#c62828 0%,#b71c1c 100%);box-shadow:0 4px 12px #c6282859}.auth-error-title{font-size:15px;font-weight:800;color:#b71c1c;letter-spacing:.01em;margin:0 0 6px}.auth-error-text{margin:0;font-size:14px;font-weight:600;color:#4a1515;line-height:1.45}.auth-success-banner{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;margin:0 0 22px;border-radius:12px;border:1px solid #a5d6a7;background:linear-gradient(180deg,#e8f5e9 0%,#f1f8e9 100%);color:#1b5e20;box-shadow:0 4px 18px #2e7d321f}.auth-success-icon{flex-shrink:0;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;line-height:1;color:#fff;background:linear-gradient(145deg,#2e7d32 0%,#1b5e20 100%);box-shadow:0 4px 12px #2e7d3259}.auth-success-title{font-size:15px;font-weight:800;color:#1b5e20;margin:0 0 6px}.auth-success-text{margin:0;font-size:14px;font-weight:600;color:#2e4a32;line-height:1.45}.auth-forgot-panel{margin-bottom:22px;padding:18px 20px;border-radius:12px;border:1px solid #cfd9eb;background:#f8fafc}.auth-forgot-panel h3{margin:0 0 8px;font-size:17px;color:#1b3155}.auth-forgot-panel .sub{margin-bottom:14px;font-size:13px}.auth-forgot-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.auth-field input.auth-input-error,.auth-field select.auth-input-error{border-color:#e57373;box-shadow:0 0 0 3px #e5737338}.auth-field{display:grid;gap:9px;margin-bottom:16px}.auth-field label{color:#2a3550;font-weight:600;font-size:14px}.auth-field input,.auth-field select{border:1px solid #cfd9eb;border-radius:12px;padding:13px 14px;font-size:14px;outline:none;transition:border-color .15s ease,box-shadow .15s ease;background:#ffffff}.auth-field input:focus,.auth-field select:focus{border-color:#2c74e6;box-shadow:0 0 0 3px #2c74e629}.auth-password-wrap{position:relative;width:100%}.auth-password-wrap input{width:100%;padding-right:5.75rem;box-sizing:border-box}.auth-password-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);padding:8px 12px;border:none;border-radius:8px;background:#eef3fb;color:#1a4a8c;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;line-height:1.2}.auth-password-toggle:hover{background:#e2ebfa}.auth-password-toggle:focus-visible{outline:2px solid #2c74e6;outline-offset:2px}.auth-inline{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:4px 0 2px}.auth-check{display:inline-flex;align-items:center;gap:8px;color:#3f4d69;font-size:13px}.auth-check input{width:16px;height:16px}.auth-link{border:none;background:transparent;color:#255fbf;font-weight:600;cursor:pointer;font-size:13px}.auth-actions{display:flex;gap:12px;margin-top:16px}.auth-btn{border:none;border-radius:12px;padding:13px 18px;font-weight:600;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.auth-btn:hover{transform:translateY(-1px)}.auth-btn.primary{background:linear-gradient(135deg,#1a6adf 0%,#0f53be 100%);color:#fff;box-shadow:0 8px 18px #1763d84d}.auth-btn.secondary{background:#eef3fb;color:#2f446a}.auth-note{margin-top:16px;color:#63718f;font-size:13px;line-height:1.5}.auth-note.subtle{margin-top:6px;color:#8b97b2}.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0 16px;color:#8b97b2;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#d8e0ee}.auth-btn.google{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#ffffff;color:#1f2a44;border:1px solid #cfd9eb;box-shadow:0 1px 2px #1018280f}.auth-btn.google:hover{background:#f8fafc;transform:translateY(-1px)}.auth-btn.google:disabled{opacity:.65;cursor:not-allowed;transform:none}.auth-google-icon{width:18px;height:18px;flex-shrink:0}@media (max-width: 900px){.auth-card{grid-template-columns:1fr}.auth-form,.auth-brand{padding:28px}.auth-inline{flex-direction:column;align-items:flex-start}}
