.auth-shell{background:var(--bg-0);width:100%;min-height:100dvh;color:var(--fg-0);font-family:var(--font-body);isolation:isolate;flex-direction:column;display:flex;position:relative;overflow:hidden}.auth-backdrop{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.auth-grid{background-image:linear-gradient(90deg,#7a7d9e0f 1px,#0000 1px),linear-gradient(#7a7d9e0f 1px,#0000 1px);background-image:linear-gradient(90deg,lab(53.1575% 4.23256 -18.154/.06) 1px,#0000 1px),linear-gradient(lab(53.1575% 4.23256 -18.154/.06) 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70%,#000 30%,#0000 75%);mask-image:radial-gradient(80% 70%,#000 30%,#0000 75%)}.auth-blob{filter:blur(110px);opacity:.55;will-change:transform;transition:transform .7s var(--ease-out);border-radius:50%;position:absolute}.auth-blob--a{background:radial-gradient(circle,#7c3aed 0%,#0000 70%);width:540px;height:540px;top:-120px;left:-180px}.auth-blob--b{opacity:.6;background:radial-gradient(circle,#4c1d95 0%,#0000 70%);width:720px;height:720px;bottom:-200px;right:-240px}.auth-blob--c{opacity:.25;background:radial-gradient(circle,#a78bfa 0%,#0000 70%);width:380px;height:380px;top:40%;left:50%;transform:translate(-50%,-50%)}.auth-noise{opacity:.04;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.auth-nav{z-index:5;justify-content:space-between;align-items:center;padding:24px 40px;display:flex;position:relative}.auth-logo{align-items:center;gap:10px;display:flex}.auth-logo__word{font-family:var(--font-display);letter-spacing:-.01em;color:var(--fg-0);font-size:19px;font-weight:700}.auth-nav__back{color:var(--fg-2);border:1px solid var(--line);background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);transition:all .25s var(--ease-out);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;text-decoration:none;display:inline-flex}.auth-nav__back:hover{color:var(--fg-0);border-color:var(--line-strong);transform:translate(-2px)}.auth-main{z-index:2;flex:1;grid-template-columns:1.05fr 1fr;align-items:center;gap:0;width:100%;max-width:1440px;margin:0 auto;padding:0 40px 32px;display:grid;position:relative}@media (max-width:980px){.auth-main{grid-template-columns:1fr}.auth-visual{display:none}.auth-nav{padding:18px 20px}.auth-form-wrap{align-items:stretch;width:100%}}.auth-visual{padding:32px 56px 32px 0;position:relative}.auth-visual__inner{flex-direction:column;gap:28px;max-width:520px;display:flex}.auth-visual__eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--fg-2);align-items:center;gap:8px;width:fit-content;font-size:11px;display:inline-flex}.auth-visual__dot{background:#86efac;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite authPulse;box-shadow:0 0 12px #86efac}@keyframes authPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}.auth-visual__headline{font-family:var(--font-display);letter-spacing:-.035em;color:var(--fg-0);margin:0;font-size:56px;font-weight:600;line-height:1}.auth-visual__headline em{background:linear-gradient(135deg,#c4b5fd 0%,#8b5cf6 60%,#fda4af 100%);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic;font-weight:500}.auth-cal{background:var(--glass-bg);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(28px)saturate(160%);border-radius:var(--r-lg);box-shadow:var(--shadow-glass);padding:18px;position:relative;overflow:hidden}.auth-cal:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff0a,#0000 40%);background:linear-gradient(lab(100% 0 0/.04),#0000 40%);position:absolute;inset:0}.auth-cal__head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.auth-cal__month{font-family:var(--font-display);color:var(--fg-0);font-size:14px;font-weight:600}.auth-cal__live{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-2);align-items:center;gap:6px;font-size:10px;display:inline-flex}.auth-cal__live-dot{background:#ef4444;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite authPulse}.auth-cal__grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.auth-cal__col{flex-direction:column;gap:4px;display:flex}.auth-cal__dayname{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);text-align:center;font-size:9px}.auth-cal__daynum{text-align:center;font-family:var(--font-display);color:var(--fg-1);margin-bottom:6px;font-size:13px;font-weight:600}.auth-cal__slots{flex-direction:column;gap:4px;min-height:80px;display:flex}.auth-cal__appt{border-left:2px solid var(--appt-color);opacity:0;transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);background:#1d1e3980;background:lab(12.4439% 5.8603 -17.7157/.5);border-radius:6px;padding:5px 6px;font-size:9px;transform:translateY(6px)scale(.95)}.auth-cal__appt.is-in{opacity:1;transform:translateY(0)scale(1)}.auth-cal__appt-time{font-family:var(--font-mono);color:var(--appt-color);font-size:8.5px;font-weight:600}.auth-cal__appt-name{color:var(--fg-0);white-space:nowrap;text-overflow:ellipsis;font-size:9.5px;font-weight:600;overflow:hidden}.auth-cal__appt-svc{color:var(--fg-3);white-space:nowrap;text-overflow:ellipsis;font-size:8.5px;overflow:hidden}.auth-quote{align-items:center;gap:14px;display:flex}.auth-quote__avatars{align-items:center;display:flex}.auth-quote__av{width:32px;height:32px;font-family:var(--font-display);color:#fff;border:2px solid var(--bg-0);border-radius:50%;place-items:center;margin-left:-8px;font-size:12px;font-weight:700;display:grid}.auth-quote__av:first-child{margin-left:0}.auth-quote__text{color:var(--fg-2);font-size:13px;line-height:1.4}.auth-quote__text strong{color:var(--fg-0);font-weight:600;display:block}.auth-quote__stars{color:#fbbf24;letter-spacing:1px;margin-left:6px;font-size:12px}.auth-form-wrap{flex-direction:column;align-items:center;gap:20px;padding:24px 0;display:flex}.auth-card{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(40px)saturate(180%);border:1px solid var(--glass-border);border-radius:28px;width:100%;max-width:460px;padding:36px 36px 32px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff14,inset 0 0 0 1px #ffffff0d,0 50px 100px -30px #01000899,0 30px 80px -20px #34007c66;box-shadow:inset 0 1px lab(100% 0 0/.08),inset 0 0 0 1px lab(100% 0 0/.05),0 50px 100px -30px lab(-.28015% 5.76427 -12.551/.6),0 30px 80px -20px lab(13.8228% 55.4985 -67.5804/.4)}.auth-card__edge{border-radius:inherit;pointer-events:none;background:linear-gradient(#ffffff0f,#0000 30%);background:linear-gradient(lab(100% 0 0/.06),#0000 30%);position:absolute;inset:0}.auth-card__head{margin-bottom:28px}.auth-card__eyebrow{border:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-1);background:#13142880;background:lab(6.81856% 4.41915 -14.0631/.5);border-radius:999px;align-items:center;gap:8px;margin-bottom:18px;padding:5px 11px 5px 9px;font-size:10.5px;display:inline-flex}.auth-card__pulse{background:var(--accent);width:6px;height:6px;box-shadow:0 0 10px var(--accent-glow);border-radius:50%;animation:1.6s ease-in-out infinite authPulse}.auth-card__title{font-family:var(--font-display);letter-spacing:-.035em;color:var(--fg-0);margin:0 0 10px;font-size:38px;font-weight:600;line-height:1}.auth-card__sub{color:var(--fg-2);margin:0;font-size:14px}.auth-form{flex-direction:column;gap:14px;display:flex}.gi{cursor:text;flex-direction:column;gap:6px;display:flex}.gi__top{justify-content:space-between;align-items:baseline;display:flex}.gi__label{color:var(--fg-1);letter-spacing:.005em;font-size:12px;font-weight:500}.gi__action{color:var(--accent);font-size:12px;font-weight:500;text-decoration:none}.gi__action:hover{text-decoration:underline}.gi__field{border:1px solid var(--line);transition:all .2s var(--ease-out);background:#0909178c;background:lab(2.87658% 1.86432 -7.55027/.55);border-radius:12px;align-items:center;display:flex;position:relative}.gi__field:focus-within{border-color:var(--accent);background:#0e0f23a6;background:lab(4.92484% 3.78201 -13.253/.65);box-shadow:0 0 0 3px #9172fe33;box-shadow:0 0 0 3px lab(56.4285% 37.6197 -66.9709/.2)}.gi__field--error{border-color:#f87171}.gi__field--error:focus-within{border-color:#f87171;box-shadow:0 0 0 3px #e7566b33;box-shadow:0 0 0 3px lab(57.4072% 58.3264 19.9164/.2)}.gi__input{font-family:var(--font-body);color:var(--fg-0);background:0 0;border:0;outline:0;flex:1;padding:13px 14px;font-size:14.5px}.gi__input::placeholder{color:var(--fg-3)}.gi__eye{color:var(--fg-3);cursor:pointer;background:0 0;border:0;place-items:center;padding:0 14px;transition:color .2s;display:grid}.gi__eye:hover{color:var(--fg-1)}.gi__hint{color:var(--fg-3);font-size:11.5px}.gi__error{color:#f87171;font-size:11.5px}.strength{flex-direction:column;gap:6px;margin-top:4px;display:flex}.strength__bars{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.strength__bar{background:var(--line);border-radius:999px;height:3px;transition:background .25s,opacity .25s}.strength__label{font-family:var(--font-mono);letter-spacing:.06em;color:var(--fg-3);font-size:10.5px;transition:color .2s}.auth-remember{color:var(--fg-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;margin-top:2px;font-size:13px;display:flex}.auth-remember input{opacity:0;pointer-events:none;position:absolute}.auth-remember__box{border:1px solid var(--line);color:#0000;width:18px;height:18px;transition:all .2s var(--ease-out);background:#0909178c;background:lab(2.87658% 1.86432 -7.55027/.55);border-radius:5px;flex-shrink:0;place-items:center;display:grid}.auth-remember input:checked+.auth-remember__box{background:var(--accent);border-color:var(--accent);color:var(--bg-0)}.auth-remember a{color:var(--accent);text-decoration:none}.auth-remember a:hover{text-decoration:underline}.auth-cta{color:#fff;font-family:var(--font-display);letter-spacing:.005em;cursor:pointer;transition:all .25s var(--ease-out);background:linear-gradient(#8b5cf6 0%,#6d28d9 100%);border:1px solid #9f87ff80;border:1px solid lab(62.716% 31.7458 -60.522/.5);border-radius:12px;justify-content:center;align-items:center;gap:10px;margin-top:6px;padding:14px 20px;font-size:15px;font-weight:600;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff3,0 8px 24px -6px #500ab299,0 2px 8px -2px #500ab24d;box-shadow:inset 0 1px lab(100% 0 0/.2),0 8px 24px -6px lab(25.7773% 54.3102 -73.6351/.6),0 2px 8px -2px lab(25.7773% 54.3102 -73.6351/.3)}.auth-cta:before{content:"";transition:transform .6s var(--ease-out);background:linear-gradient(110deg,#0000 30%,#ffffff40 50%,#0000 70%);background:linear-gradient(110deg,#0000 30%,lab(100% 0 0/.25) 50%,#0000 70%);position:absolute;inset:0;transform:translate(-100%)}.auth-cta:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff40,0 14px 32px -6px #500ab2b3,0 4px 12px -2px #500ab266;box-shadow:inset 0 1px lab(100% 0 0/.25),0 14px 32px -6px lab(25.7773% 54.3102 -73.6351/.7),0 4px 12px -2px lab(25.7773% 54.3102 -73.6351/.4)}.auth-cta:hover:before{transform:translate(100%)}.auth-cta:active{transform:translateY(0)}.auth-cta svg{transition:transform .25s var(--ease-out)}.auth-cta:hover svg{transform:translate(3px)}.auth-cta:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:inset 0 1px #fff3,0 4px 12px -4px #500ab24d;box-shadow:inset 0 1px lab(100% 0 0/.2),0 4px 12px -4px lab(25.7773% 54.3102 -73.6351/.3)}.auth-cta:disabled:before{display:none}.auth-cta:disabled svg{transform:none}.auth-divider{text-align:center;margin:14px 0 4px;position:relative}.auth-divider:before{content:"";background:var(--line);height:1px;position:absolute;top:50%;left:0;right:0}.auth-divider span{background:var(--glass-bg-strong);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);padding:0 12px;font-size:10.5px;position:relative}.auth-social{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-social__btn{border:1px solid var(--line);color:var(--fg-1);font-family:var(--font-body);cursor:pointer;transition:all .2s var(--ease-out);background:#0f101f80;background:lab(5.03444% 2.4611 -9.88059/.5);border-radius:11px;justify-content:center;align-items:center;gap:9px;padding:11px 14px;font-size:13.5px;font-weight:500;display:flex}.auth-social__btn:hover:not(:disabled){border-color:var(--line-strong);background:#17182db3;background:lab(9.09006% 4.48104 -14.2125/.7);transform:translateY(-1px)}.auth-social__btn:disabled{opacity:.45;cursor:not-allowed}.auth-foot{text-align:center;color:var(--fg-2);margin-top:4px;font-size:13.5px}.auth-foot a{color:var(--accent);font-weight:600;text-decoration:none}.auth-foot a:hover{text-decoration:underline}.auth-meta{color:var(--fg-3);align-items:center;gap:10px;font-size:12px;display:flex}.auth-meta a{color:var(--fg-2);text-decoration:none;transition:color .2s}.auth-meta a:hover{color:var(--fg-0)}.auth-pwd-block{flex-direction:column;gap:8px;display:flex}.auth-error-banner{color:#f87171;text-align:center;background:#310c1166;background:lab(8.85602% 19.4437 6.01282/.4);border:1px solid #b8445559;border:1px solid lab(46.1401% 48.6094 16.5689/.35);border-radius:10px;padding:10px 14px;font-size:13.5px}.auth-success-banner{color:#86efac;text-align:center;background:#04210766;background:lab(10.2331% -16.3791 11.9116/.4);border:1px solid #27873359;border:1px solid lab(49.5829% -42.1882 35.8774/.35);border-radius:10px;padding:10px 14px;font-size:13.5px}.auth-card__body{flex-direction:column;gap:14px;display:flex}.auth-card__desc{color:var(--fg-2);margin:0;font-size:14px;line-height:1.6}.auth-card__sent{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:8px 0;display:flex}.auth-card__sent-icon{color:#86efac;background:#04210759;background:lab(10.2331% -16.3791 11.9116/.35);border:1px solid #3e834340;border:1px solid lab(49.258% -33.6567 27.8325/.25);border-radius:16px;place-items:center;width:52px;height:52px;display:grid}.auth-card__sent-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--fg-0);font-size:20px;font-weight:600}.auth-card__sent-desc{color:var(--fg-2);max-width:320px;font-size:13.5px;line-height:1.55}.auth-back-link{color:var(--accent);align-items:center;gap:6px;margin-top:4px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.auth-back-link:hover{text-decoration:underline}@media (max-width:600px){.auth-nav{gap:8px;padding:16px 20px}.auth-nav__back{padding:7px 11px;font-size:12px}.auth-main{padding:0 20px 28px}.auth-card{border-radius:22px;padding:28px 24px 24px}.auth-card__title{font-size:32px}.auth-form-wrap{padding:12px 0 0}}@media (max-width:430px){.auth-main{padding:0 14px 24px}.auth-card{border-radius:20px;padding:24px 18px 20px}.auth-card__title{font-size:28px}.auth-card__sub{font-size:13px}.auth-cta{padding:13px 16px;font-size:14px}.auth-social{gap:8px}.auth-social__btn{gap:7px;padding:10px;font-size:13px}}@media (max-width:375px){.auth-main{padding:0 12px 20px}.auth-card{padding:20px 16px 18px}.auth-card__title{font-size:26px}.auth-card__eyebrow{font-size:9.5px}.auth-nav{padding:14px}.auth-social{grid-template-columns:1fr}}[data-theme=light] .gi__field{background:#ffffffd9}[data-theme=light] .gi__field:focus-within{background:#fffffffa}[data-theme=light] .auth-social__btn{background:#ffffffd9}[data-theme=light] .auth-social__btn:hover:not(:disabled){border-color:var(--line-strong);background:#fffffffa}[data-theme=light] .auth-card__eyebrow{background:#ffffffa6}@media (prefers-reduced-motion:reduce){.auth-blob{will-change:auto;transition:none}.auth-visual__dot,.auth-cal__live-dot,.auth-card__pulse{animation:none}.auth-cal__appt{opacity:1;transition:none;transform:none}.auth-cta,.auth-cta:before,.auth-nav__back,.auth-social__btn,.strength__bar,.strength__label{transition:none}.auth-cta:hover,.auth-cta:hover svg,.auth-nav__back:hover{transform:none}}
