*{box-sizing:border-box}body,html{margin:0;overflow:hidden;background:#06040f}.login-page{width:100%;height:100dvh;min-height:620px;overflow:hidden;background:radial-gradient(circle at 15% 20%,rgba(59,130,246,.18) 0,transparent 32%),radial-gradient(circle at 82% 78%,rgba(124,58,237,.14) 0,transparent 34%),linear-gradient(135deg,#070b1d,#06040f 52%,#0c0618);color:#fff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.login-shell{height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(520px,.92fr)}.brand-panel{position:relative;overflow:hidden;align-items:center;padding:clamp(28px,4vw,56px);border-right:1px solid hsla(0,0%,100%,.07);background:linear-gradient(135deg,rgba(37,99,235,.1),rgba(15,23,42,.05) 48%,rgba(124,58,237,.09))}.brand-content,.brand-panel{display:flex;justify-content:center}.brand-content{width:min(590px,100%);height:min(720px,calc(100dvh - 72px));margin:0 auto;flex-direction:column;gap:clamp(18px,2.2vh,26px)}.desktop-logo{flex-shrink:0;margin-bottom:2px}.hero-copy{max-width:560px}.eyebrow{display:inline-flex;align-items:center;padding:7px 11px;border:1px solid rgba(96,165,250,.22);border-radius:999px;background:rgba(59,130,246,.1);color:#93c5fd;font-size:10px;line-height:1;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.hero-copy h1{margin:0 0 12px;color:#fff;font-size:clamp(2.15rem,3.8vw,3.8rem);line-height:.98;letter-spacing:-.07em;font-weight:950}.hero-copy p{margin:0;max-width:460px;color:hsla(0,0%,100%,.56);font-size:clamp(13px,1.2vw,15px);line-height:1.62}.visual-area{position:relative;width:100%;max-width:590px;height:clamp(250px,34vh,340px);flex-shrink:0}.image-frame{position:absolute;inset:8px 42px 22px 0;overflow:hidden;border-radius:28px;border:1px solid hsla(0,0%,100%,.12);box-shadow:0 28px 80px rgba(0,0,0,.44);transform:rotate(-1deg);background:rgba(15,23,42,.65)}.image-frame img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;opacity:.92;filter:saturate(1.05) contrast(1.05)}.image-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,4,15,.72),rgba(6,4,15,.1) 42%,rgba(6,4,15,.38)),linear-gradient(180deg,rgba(37,99,235,.12),rgba(124,58,237,.16))}.glow{position:absolute;border-radius:999px;filter:blur(34px);opacity:.72;pointer-events:none}.glow-one{width:190px;height:190px;left:10px;top:10px;background:rgba(37,99,235,.22);animation:pulseGlow 4.5s ease-in-out infinite}.glow-two{width:150px;height:150px;right:18px;bottom:6px;background:rgba(124,58,237,.2);animation:pulseGlow 5.2s ease-in-out infinite reverse}.floating-card{position:absolute;z-index:3;padding:12px 14px;min-width:154px;border-radius:18px;border:1px solid hsla(0,0%,100%,.13);background:rgba(8,13,30,.78);box-shadow:0 20px 45px rgba(0,0,0,.38);backdrop-filter:blur(18px);animation:floatY 5s ease-in-out infinite}.floating-card span{display:block;color:hsla(0,0%,100%,.54);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.11em;margin-bottom:5px}.floating-card strong{display:block;color:#fff;font-size:17px;line-height:1;letter-spacing:-.04em}.floating-card small{display:block;color:#6ee7b7;font-size:11px;margin-top:6px;font-weight:700}.card-balance{left:14px;top:26px}.card-bills{right:12px;bottom:30px;animation-delay:-1.4s}.mini-chart{position:absolute;z-index:4;left:32px;bottom:2px;width:178px;height:84px;padding:13px 15px;display:flex;align-items:end;gap:8px;border-radius:20px;border:1px solid hsla(0,0%,100%,.13);background:rgba(8,13,30,.76);box-shadow:0 20px 45px rgba(0,0,0,.34);backdrop-filter:blur(18px)}.mini-chart div{width:100%;border-radius:999px 999px 4px 4px;background:linear-gradient(180deg,#60a5fa,#2563eb);animation:barIn 1.2s ease both}.features-row{width:100%;max-width:590px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;flex-shrink:0}.feature-pill{min-height:76px;padding:13px;border-radius:18px;border:1px solid hsla(0,0%,100%,.09);background:hsla(0,0%,100%,.045);backdrop-filter:blur(12px)}.feature-pill strong{display:block;color:hsla(0,0%,100%,.88);font-size:12px;letter-spacing:-.02em;margin-bottom:5px}.feature-pill span{display:block;color:hsla(0,0%,100%,.42);font-size:11px;line-height:1.35}.form-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(22px,3.5vw,56px);background:radial-gradient(circle at 50% 12%,rgba(37,99,235,.08),transparent 32%),rgba(5,3,14,.32)}.mobile-logo{display:none;margin-bottom:18px}.auth-card{width:100%;max-width:475px;border:1px solid hsla(0,0%,100%,.12);border-radius:28px;padding:clamp(26px,2.8vw,40px);background:linear-gradient(180deg,rgba(12,9,27,.95),rgba(7,5,17,.92));box-shadow:0 28px 90px rgba(0,0,0,.38);backdrop-filter:blur(24px)}.login-card{transform:translateY(-2px)}.label{display:block;margin-bottom:6px;color:hsla(0,0%,100%,.42);font-size:10px;line-height:1;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.primary-button,.secondary-button{border:none;border-radius:13px;font-family:inherit;font-weight:850;cursor:pointer;transition:transform .2s,box-shadow .2s,opacity .2s}.primary-button{width:100%;height:54px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff;font-size:15px;background:linear-gradient(135deg,#60a5fa,#2563eb 48%,#1d4ed8);box-shadow:0 14px 32px rgba(37,99,235,.3)}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.primary-button:disabled{opacity:.75;cursor:default;transform:none}.secondary-button{padding:11px 22px;color:hsla(0,0%,100%,.78);background:hsla(0,0%,100%,.08);border:1px solid hsla(0,0%,100%,.1)}.forgot-button,.link-button{border:none;background:transparent;color:#60a5fa;font-family:inherit;font-size:12px;font-weight:800;cursor:pointer}.link-button{display:block;width:100%;margin-top:12px;color:hsla(0,0%,100%,.45)}.error-box{margin-bottom:14px;display:flex;align-items:center;gap:8px;padding:10px 13px;border-radius:12px;border:1px solid rgba(239,68,68,.25);background:rgba(239,68,68,.08);color:#f87171;font-size:13px;line-height:1.35}.spinner{width:17px;height:17px;border:2px solid hsla(0,0%,100%,.35);border-top-color:#fff;border-radius:999px;animation:spin .7s linear infinite}.register-row{margin-top:18px;padding-top:18px;border-top:1px solid hsla(0,0%,100%,.07);text-align:center}.register-row span{color:hsla(0,0%,100%,.36);font-size:13px}.register-row a{color:#60a5fa;font-size:13px;font-weight:800;text-decoration:none}.terms{max-width:475px;margin:16px 0 0;color:hsla(0,0%,100%,.22);font-size:11px;line-height:1.45;text-align:center}.terms a{color:hsla(0,0%,100%,.38);text-decoration:none}.reset-shell{width:100%;height:100dvh;min-height:620px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulseGlow{0%,to{opacity:.52;transform:scale(1)}50%{opacity:.85;transform:scale(1.08)}}@keyframes barIn{0%{transform:scaleY(.18);opacity:.35}to{transform:scaleY(1);opacity:1}}@media (max-height:760px) and (min-width:1024px){.brand-content{gap:16px;height:calc(100dvh - 44px)}.hero-copy h1{font-size:clamp(2rem,3.3vw,3.1rem);margin:0 0 8px}.hero-copy p{font-size:13px;line-height:1.48}.visual-area{height:270px}.feature-pill{min-height:66px;padding:11px}.auth-card{max-width:450px;padding:28px}.terms{margin-top:12px}}@media (max-width:1023px){.login-page,body,html{overflow:auto}.login-page{height:auto;min-height:100dvh}.login-shell{min-height:100dvh;display:flex;align-items:center;justify-content:center}.brand-panel{display:none}.form-panel{width:100%;min-height:100dvh;padding:22px 16px}.mobile-logo{display:flex;justify-content:center}}@media (max-width:420px){.auth-card{padding:20px;border-radius:20px}.login-card{transform:none}}