:root{--auth-bg-from:#0f172a;--auth-bg-to:#1e293b;--auth-card-bg:#ffffff;--auth-card-shadow:0 25px 50px -12px rgb(0 0 0/0.25);--auth-card-border:#e2e8f0;--auth-card-radius:16px;--auth-input-bg:#f8fafc;--auth-input-border:#cbd5e1;--auth-input-focus:#2563eb;--auth-input-radius:10px;--auth-primary:#2563eb;--auth-primary-hover:#1d4ed8;--auth-text:#1e293b;--auth-text-muted:#64748b;--auth-error:#dc2626;--auth-success:#16a34a;--auth-link:#2563eb;--auth-divider:#e2e8f0}.auth-page{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.auth-bg{position:fixed;inset:0;z-index:0}.auth-bg-gradient{position:absolute;inset:0;background:linear-gradient(135deg,var(--auth-bg-from) 0,var(--auth-bg-to) 100%)}.auth-bg-pattern{position:absolute;inset:0;opacity:.04;background-image:radial-gradient(circle at 25% 25%,#ffffff 1px,transparent 0),radial-gradient(circle at 75% 75%,#ffffff 1px,transparent 0);background-size:48px 48px}.auth-container{position:relative;z-index:1;width:100%;max-width:440px;padding:24px 16px;display:flex;flex-direction:column;align-items:center;gap:24px;animation:authFadeIn .5s ease-out}@keyframes authFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.auth-logo{margin-bottom:8px}.auth-logo img{height:44px;width:auto;filter:brightness(0) invert(1)}.auth-card{width:100%;background:var(--auth-card-bg);border-radius:var(--auth-card-radius);box-shadow:var(--auth-card-shadow);padding:40px 32px;border:1px solid var(--auth-card-border)}.auth-card-header{text-align:center;margin-bottom:32px}.auth-card-title{font-size:24px;font-weight:700;color:var(--auth-text);margin:0 0 8px;letter-spacing:-.025em}.auth-card-subtitle{font-size:14px;color:var(--auth-text-muted);margin:0;line-height:1.5}.auth-form{gap:20px}.auth-field,.auth-form{display:flex;flex-direction:column}.auth-field{gap:6px}.auth-label{font-size:13px;font-weight:600;color:var(--auth-text);letter-spacing:.01em}.auth-input{width:100%;height:44px;padding:0 14px;background:var(--auth-input-bg);border:1.5px solid var(--auth-input-border);border-radius:var(--auth-input-radius);font-size:14px;color:var(--auth-text);transition:border-color .2s,box-shadow .2s,background .2s;outline:none}.auth-input::placeholder{color:var(--auth-text-muted);font-size:13px}.auth-input:hover{border-color:#94a3b8}.auth-input:focus{border-color:var(--auth-input-focus);box-shadow:0 0 0 3px rgb(37 99 235/.12);background:#ffffff}.auth-input.is-error{border-color:var(--auth-error);box-shadow:0 0 0 3px rgb(220 38 38/.1)}.auth-password-wrap{position:relative}.auth-password-wrap .auth-input{padding-right:44px}.auth-password-toggle{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--auth-text-muted);cursor:pointer;border-radius:8px;transition:color .2s,background .2s}.auth-password-toggle:hover{color:var(--auth-text);background:#f1f5f9}.auth-row{justify-content:space-between;gap:12px}.auth-checkbox-wrap,.auth-row{display:flex;align-items:center}.auth-checkbox-wrap{gap:8px}.auth-checkbox{width:18px;height:18px;accent-color:var(--auth-primary);cursor:pointer}.auth-checkbox-label{font-size:13px;color:var(--auth-text-muted);cursor:pointer}.auth-link{font-size:13px;font-weight:500;color:var(--auth-link);text-decoration:none;transition:color .2s;white-space:nowrap}.auth-link:hover{color:var(--auth-primary-hover);text-decoration:underline}.auth-btn{width:100%;height:46px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--auth-primary);color:#ffffff;font-size:15px;font-weight:600;border:none;border-radius:var(--auth-input-radius);cursor:pointer;transition:background .2s,transform .1s,box-shadow .2s;letter-spacing:.01em}.auth-btn:hover{background:var(--auth-primary-hover);box-shadow:0 4px 12px rgb(37 99 235/.3)}.auth-btn:active{transform:scale(.985)}.auth-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.auth-btn-secondary{background:transparent;color:var(--auth-text);border:1.5px solid var(--auth-input-border)}.auth-btn-secondary:hover{background:#f8fafc;box-shadow:none}.auth-divider{display:flex;align-items:center;gap:16px;color:var(--auth-text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.auth-divider:after,.auth-divider:before{content:"";flex:1;height:1px;background:var(--auth-divider)}.auth-message{padding:12px 16px;border-radius:10px;font-size:13px;line-height:1.5}.auth-message-error{background:#fef2f2;border:1px solid #fecaca;color:var(--auth-error)}.auth-message-success{background:#f0fdf4;border:1px solid #bbf7d0;color:var(--auth-success)}.auth-card-footer{text-align:center;margin-top:24px;padding-top:20px;border-top:1px solid var(--auth-divider);font-size:13px;color:var(--auth-text-muted)}.auth-card-footer a{color:var(--auth-link);font-weight:600;text-decoration:none}.auth-card-footer a:hover{text-decoration:underline}.auth-footer{text-align:center;color:rgba(255,255,255,.5);font-size:12px;display:flex;flex-direction:column;gap:6px}.auth-footer p{margin:0}.auth-footer-links{display:flex;align-items:center;justify-content:center;gap:8px}.auth-footer-links a{color:rgba(255,255,255,.6);text-decoration:none;transition:color .2s}.auth-footer-links a:hover{color:#ffffff}.auth-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#ffffff;border-radius:50%;animation:authSpin .6s linear infinite}@keyframes authSpin{to{transform:rotate(1turn)}}@media (max-width:480px){.auth-card{padding:28px 20px;border-radius:12px}.auth-card-title{font-size:20px}.auth-container{max-width:100%}}.imd-auth-page,body.imdtec-auth-page{background:#f8fafc}.imd-auth{display:flex;min-height:100dvh;width:100%}.imd-auth__left{background:#ffffff;display:flex;flex:0 0 46%;justify-content:center;min-width:460px;padding:clamp(26px,4vw,56px)}.imd-auth__inner{display:flex;flex-direction:column;gap:16px;max-width:460px;width:100%}.imd-auth__header{align-items:center;display:flex;justify-content:flex-start;margin-bottom:8px}.imd-auth__logo{display:inline-flex;line-height:0}.imd-auth__logo img{height:auto;max-width:150px;width:150px}.imd-auth__title{color:#0f172a;font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:0}.imd-auth__subtitle{color:#6b7280;font-size:14.5px;line-height:1.6;margin:0}.imd-auth__notice{border-radius:14px;font-size:13.5px;font-weight:600;line-height:1.45;padding:12px 14px}.imd-auth__notice--success{background:#ecfdf3;border:1px solid #bbf7d0;color:#166534}.imd-auth__notice--error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.imd-auth__form{display:grid;gap:14px}.imd-auth-field{display:grid;gap:6px}.imd-auth-label{color:#0f172a;font-size:13px;font-weight:700;letter-spacing:.01em}.imd-auth-control{appearance:none;background:#ffffff;border:1px solid #e5e7eb;border-radius:14px;color:#0f172a;font-size:14px;min-height:50px;outline:none;padding:14px 15px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.imd-auth-control::placeholder{color:#9ca3af}.imd-auth-control:focus{border-color:rgba(17,24,39,.35);box-shadow:0 0 0 4px rgba(17,24,39,.14)}.imd-auth__aux{align-items:center;display:flex;justify-content:space-between;margin-top:2px;min-height:28px}.imd-auth__remember{align-items:center;color:#6b7280;cursor:pointer;display:inline-flex;font-size:13.5px;font-weight:600;gap:8px}.imd-auth__remember-input{accent-color:#003192;cursor:pointer;height:16px;width:16px}.imd-auth__forgot{color:#0f172a;font-size:13.5px;font-weight:700;text-decoration:none}.imd-auth__forgot:hover{text-decoration:underline}.imd-auth-btn{align-items:center;background:#111827;border:1px solid #111827;border-radius:14px;color:#ffffff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:800;justify-content:center;letter-spacing:.08em;min-height:50px;padding:0 18px;text-transform:uppercase;transition:transform .12s ease,opacity .2s ease;width:100%}.imd-auth-btn:hover{opacity:.96}.imd-auth-btn:active{transform:translateY(1px)}.imd-auth__signup{color:#6b7280;font-size:13.5px;margin:0}.imd-auth__signup a{color:#0f172a;font-weight:700;text-decoration:none}.imd-auth__signup a:hover{text-decoration:underline}.imd-auth__divider{align-items:center;color:#6b7280;display:flex;font-size:11px;font-weight:700;gap:12px;letter-spacing:.1em;text-transform:uppercase}.imd-auth__divider:after,.imd-auth__divider:before{background:#e5e7eb;content:"";flex:1;height:1px}.imd-auth__social{display:grid;gap:8px}.imd-auth__social-btn{align-items:center;background:#ffffff;border:1px solid #e5e7eb;border-radius:14px;color:#111827;display:inline-flex;font-size:14px;font-weight:700;gap:10px;justify-content:center;min-height:50px;padding:0 14px;text-decoration:none;transition:border-color .2s ease,background-color .2s ease}.imd-auth__social-btn:hover{background:#f9fafb;border-color:#d1d5db}.imd-auth__right{flex:1 1 auto;padding:clamp(18px,2vw,28px)}.imd-auth__media{border-radius:180px 0 0 180px;height:100%;min-height:calc(100dvh - (clamp(18px, 2vw, 28px) * 2));overflow:hidden;position:relative}.imd-auth__media--gradient{background:linear-gradient(135deg,#003192,#001a4d 50%,#0a0a23);height:100%;position:relative;width:100%}.imd-auth__media-pattern{background-image:radial-gradient(circle at 20% 20%,rgba(255,255,255,.18) 0,rgba(255,255,255,0) 42%),linear-gradient(125deg,rgba(255,255,255,.12) 1px,transparent 0),linear-gradient(35deg,rgba(255,255,255,.08) 1px,transparent 0);background-size:100% 100%,42px 42px,56px 56px;inset:0;position:absolute}.imd-auth__media-copy{bottom:42px;color:#ffffff;left:42px;max-width:360px;position:absolute;right:42px;z-index:1}.imd-auth__media-kicker{font-size:12px;font-weight:700;letter-spacing:.18em;margin:0 0 12px;opacity:.84;text-transform:uppercase}.imd-auth__media-copy h2{font-size:clamp(1.3rem,1rem + 1.2vw,2rem);font-weight:800;letter-spacing:-.02em;line-height:1.2;margin:0 0 12px}.imd-auth__media-copy p{font-size:14px;line-height:1.6;margin:0;opacity:.9}.imd-auth__links{color:#6b7280;display:flex;flex-wrap:wrap;font-size:13px;gap:12px}.imd-auth__links a{color:#0f172a;font-weight:700;text-decoration:none}.imd-auth__links a:hover{text-decoration:underline}@media (max-width:1200px){.imd-auth__left{min-width:420px}.imd-auth__media{border-radius:120px 0 0 120px}}@media (max-width:768px){.imd-auth__right{display:none}.imd-auth__left{flex:1;min-width:0;padding:24px}.imd-auth__inner{margin:0 auto;max-width:520px}}