:root{--ink:#0c0e14;--ink-2:#3b4054;--ink-3:#6b7185;--surface:#ffffff;--surface-2:#f4f5f8;--surface-3:#eef0f6;--indigo:#4461f2;--indigo-dark:#2d46cc;--indigo-light:#eef1fe;--cyan:#06b6d4;--purple:#7c3aed;--grad:linear-gradient(135deg, #4461f2 0%, #7c3aed 100%);--radius:16px;--radius-sm:10px;--radius-lg:24px;--font-display:'Calibri',sans-serif;--font-body:'DM Sans',sans-serif;--ease:cubic-bezier(.4, 0, .2, 1)}.auth-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;background-color:#fff;font-family:var(--font-body);color:var(--ink);padding:100px 24px 64px;overflow-x:hidden}.auth-bg-graphic{position:absolute;top:0;right:0;width:60%;height:100%;z-index:1;pointer-events:none;background:radial-gradient(circle at 80% 20%,rgba(68,97,242,.15) 0,transparent 50%),radial-gradient(circle at 90% 60%,rgba(252,106,3,.15) 0,transparent 55%),radial-gradient(circle at 60% 80%,rgba(244,63,94,.12) 0,transparent 50%),radial-gradient(circle at 100% 90%,rgba(124,58,237,.12) 0,transparent 45%)}.auth-bg-graphic::before{content:'';position:absolute;top:-20%;right:-20%;width:100%;height:140%;background:linear-gradient(125deg,transparent 30%,rgba(68,97,242,.12) 40%,rgba(252,106,3,.12) 50%,rgba(244,63,94,.1) 60%,rgba(124,58,237,.1) 70%,transparent 90%);filter:blur(80px);transform:rotate(-15deg)}.auth-container{width:100%;max-width:520px;position:relative;z-index:2;animation:fadeIn .6s var(--ease)}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-card{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 4px rgba(12,14,20,.01),0 6px 12px rgba(12,14,20,.02),0 12px 24px rgba(68,97,242,.04),0 24px 48px rgba(68,97,242,.06),0 40px 80px rgba(12,14,20,.08);border:1px solid rgba(68,97,242,.08);overflow:hidden;display:flex;flex-direction:column}.auth-header{padding:48px 48px 24px}.auth-brand{display:none;align-items:center;gap:8px;margin-bottom:32px}.auth-brand img{height:36px;width:auto}.auth-title{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--ink);letter-spacing:-.02em}.auth-subtitle{font-size:14.5px;color:var(--ink-3);margin-top:8px;line-height:1.5}.auth-body{padding:0 48px 36px}.auth-form-group{margin-bottom:20px;position:relative}.auth-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.auth-label{font-size:14px;font-weight:500;color:var(--ink-2)}.auth-link-sub{font-size:13px;font-weight:500;color:var(--indigo);transition:color .2s;text-decoration:none}.auth-link-sub:hover{color:var(--indigo-dark)}.auth-input-wrapper{position:relative;display:flex;align-items:center}.auth-input{width:100%;height:48px;padding:0 16px;border-radius:var(--radius-sm);background-color:var(--indigo-light);border:1px solid transparent;font-family:var(--font-body);font-size:15px;color:var(--ink);transition:all .22s var(--ease);outline:0}.auth-input:focus{background-color:#fff;border-color:var(--indigo);box-shadow:0 0 0 4px rgba(68,97,242,.12)}.auth-input-pwd{padding-right:48px}.auth-pwd-toggle{position:absolute;right:16px;background:0 0;border:none;padding:0;cursor:pointer;color:var(--ink-3);display:flex;align-items:center;justify-content:center;transition:color .2s;outline:0}.auth-pwd-toggle:hover{color:var(--ink-2)}.auth-pwd-toggle svg{width:20px;height:20px}.auth-checkbox-row{display:flex;align-items:center;margin-bottom:24px}.auth-checkbox-input{appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:4px;border:1px solid rgba(68,97,242,.3);background-color:#fff;margin-right:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:.2s}.auth-checkbox-input:checked{background-color:var(--indigo);border-color:var(--indigo)}.auth-checkbox-input:checked::before{content:'';width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}.auth-checkbox-label{font-size:14px;color:var(--ink-2);cursor:pointer;user-select:none}.auth-btn-primary{width:100%;height:48px;background:var(--indigo);color:#fff;border-radius:var(--radius-sm);font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:center;transition:all .22s var(--ease);border:none;cursor:pointer;outline:0;box-shadow:0 4px 12px rgba(68,97,242,.2)}.auth-btn-primary:hover{background:var(--indigo-dark);transform:translateY(-1px);box-shadow:0 6px 20px rgba(68,97,242,.3)}.auth-btn-primary:active{transform:translateY(0)}.auth-divider{display:flex;align-items:center;text-align:center;margin:24px 0;color:var(--ink-3);font-size:13px;font-weight:500}.auth-divider::after,.auth-divider::before{content:'';flex:1;border-bottom:1px solid var(--surface-3)}.auth-divider::before{margin-right:16px}.auth-divider::after{margin-left:16px}.auth-social-list{display:flex;flex-direction:column;gap:12px}.auth-social-btn{width:100%;height:46px;border:1px solid var(--surface-3);border-radius:var(--radius-sm);background-color:#fff;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--ink-2);display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:all .22s var(--ease);outline:0}.auth-social-btn:hover{background-color:var(--surface-2);border-color:rgba(12,14,20,.1);color:var(--ink)}.auth-social-btn svg{width:18px;height:18px}.auth-footer{background-color:var(--surface-2);padding:24px 48px;border-top:1px solid var(--surface-3);text-align:center;font-size:14px;color:var(--ink-3)}.auth-footer a{color:var(--indigo);font-weight:600;text-decoration:none;transition:color .2s}.auth-footer a:hover{color:var(--indigo-dark)}.auth-otp-row{display:flex;justify-content:space-between;gap:10px;margin:24px 0}.auth-otp-input{width:50px;height:56px;border-radius:8px;background-color:var(--indigo-light);border:1px solid transparent;font-family:var(--font-body);font-size:22px;font-weight:700;text-align:center;color:var(--ink);transition:all .2s var(--ease);outline:0}.auth-otp-input:focus{background-color:#fff;border-color:var(--indigo);box-shadow:0 0 0 4px rgba(68,97,242,.12)}@media (max-width:576px){.auth-header{padding:32px 16px 20px}.auth-body{padding:0 16px 24px}.auth-footer{padding:20px 16px;background:0 0;border-top:none}.auth-brand{margin-bottom:24px;justify-content:center}}