.auth-body{--ink: #0b1730;--gold: #e3b45a;--brand: #2563eb;--brand-2: #1d4ed8;background:#f4f6fb;color:#0f172a;font-size:14px;-webkit-font-smoothing:antialiased}.auth-shell{min-height:100%;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(440px,1fr)}.auth-hero{position:relative;overflow:hidden;color:#fff;background:var(--ink) url(/assets/img/login-hero.jpg) center right / cover no-repeat}.auth-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,#081228eb,#081228b8 38%,#0812282e 75%,#0812280d),radial-gradient(60% 50% at 0% 100%,rgba(37,99,235,.28),transparent 70%)}.auth-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(90deg,#000 0%,transparent 60%);mask-image:linear-gradient(90deg,#000 0%,transparent 60%)}.auth-hero-inner{position:relative;z-index:1;height:100%;min-height:100vh;display:flex;flex-direction:column;justify-content:space-between;padding:48px 56px}.auth-mark{font-size:17px;font-weight:700;letter-spacing:-.2px;color:#ffffffeb}.auth-copy{max-width:560px;animation:authRise .8s cubic-bezier(.2,.7,.2,1) both .1s}.auth-copy h2{margin:0;font-size:clamp(30px,3.2vw,46px);font-weight:800;line-height:1.22;letter-spacing:-1.2px}.auth-lead{margin:20px 0 0;font-size:15px;line-height:1.75;color:#ffffffb8}.auth-foot{margin:0;font-size:12px;color:#ffffff73;letter-spacing:.2px}.auth-panel{position:relative;display:grid;place-items:center;padding:48px 32px;background:radial-gradient(80% 60% at 100% 0%,rgba(37,99,235,.07),transparent 60%),radial-gradient(70% 50% at 0% 100%,rgba(227,180,90,.08),transparent 60%),#fff}.auth-card{width:100%;max-width:380px;animation:authRise .6s cubic-bezier(.2,.7,.2,1) both}.auth-card.shake{animation:authShake .4s ease}.auth-card-mark{display:none;margin-bottom:24px;font-weight:700;font-size:15px;color:#334155}.auth-title{margin:0;font-size:30px;font-weight:800;letter-spacing:-.8px}.auth-sub{margin:8px 0 32px;color:#64748b;font-size:14px}.auth-form{display:grid;gap:14px}.field{position:relative}.field input{width:100%;height:56px;padding:22px 46px 8px;border:1.5px solid #e2e8f0;border-radius:12px;background:#f8fafc;font-size:15px;color:#0f172a;outline:none;transition:border-color .15s,background .15s,box-shadow .15s}.auth-form#bootstrapForm .field input{padding-left:16px}.field input:hover{border-color:#cbd5e1}.field input:focus{border-color:var(--brand);background:#fff;box-shadow:0 0 0 4px #2563eb1f}.field label{position:absolute;left:46px;top:50%;transform:translateY(-50%);font-size:15px;color:#94a3b8;pointer-events:none;transition:top .15s,font-size .15s,color .15s}.auth-form#bootstrapForm .field label{left:16px}.field input:focus+label,.field input:not(:placeholder-shown)+label{top:17px;font-size:11.5px;font-weight:600;color:#64748b}.field input:focus+label{color:var(--brand)}.field-icon{position:absolute;left:15px;top:50%;width:20px;height:20px;transform:translateY(-50%);color:#94a3b8;pointer-events:none;transition:color .15s}.field input:focus~.field-icon{color:var(--brand)}.field-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;border-radius:9px;background:transparent;color:#94a3b8;cursor:pointer;display:grid;place-items:center}.field-toggle:hover{background:#eef2f7;color:#475569}.field-toggle.on{color:var(--brand)}.field-toggle svg{width:20px;height:20px}.auth-caps{margin:-4px 0 0;font-size:12.5px;color:#b45309}.auth-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 0 6px;font-size:13px}.auth-check{display:inline-flex;align-items:center;gap:8px;color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none}.auth-check input{width:16px;height:16px;margin:0;accent-color:var(--brand)}.auth-help{color:#94a3b8;font-size:12.5px}.auth-submit{position:relative;height:54px;border:0;border-radius:12px;cursor:pointer;font-size:16px;font-weight:700;color:#fff;letter-spacing:.2px;background:linear-gradient(135deg,#2563eb,#1e3a8a);box-shadow:0 10px 24px #2563eb4d,inset 0 1px #ffffff2e;transition:transform .12s,box-shadow .15s,filter .15s;display:flex;align-items:center;justify-content:center;gap:10px}.auth-submit:hover{filter:brightness(1.07);box-shadow:0 14px 30px #2563eb61,inset 0 1px #ffffff2e}.auth-submit:active{transform:translateY(1px)}.auth-submit:disabled{cursor:default;filter:saturate(.7)}.auth-spinner{display:none;width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;animation:authSpin .7s linear infinite}.auth-submit.loading .auth-spinner{display:inline-block}.auth-info{margin:0 0 4px;padding:12px 14px;border-radius:10px;background:#eff6ff;color:#1e40af;font-size:13px;line-height:1.6}.auth-error{margin:16px 0 0;padding:11px 14px;border-radius:10px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:13.5px}.auth-secure{display:flex;gap:10px;align-items:flex-start;margin-top:32px;padding-top:22px;border-top:1px solid #eef2f7;color:#94a3b8;font-size:12.5px;line-height:1.6}.auth-secure svg{width:18px;height:18px;flex:none;margin-top:1px;color:#64748b}@keyframes authRise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes authShake{0%,to{transform:none}20%,60%{transform:translate(-7px)}40%,80%{transform:translate(7px)}}@keyframes authSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.auth-copy,.auth-card,.auth-card.shake{animation:none}}@media(max-width:960px){.auth-shell{grid-template-columns:minmax(0,1fr)}.auth-hero{position:fixed;inset:0}.auth-hero-inner{display:none}.auth-panel{min-height:100vh;background:transparent;padding:24px 16px;z-index:1}.auth-card{padding:32px 26px;border-radius:20px;background:#fffffff0;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 30px 60px #02061773}.auth-card-mark{display:block}.auth-title{font-size:26px}.auth-sub{margin-bottom:26px}.field input{font-size:16px}}
