*{box-sizing:border-box}body,html{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;color:#111;background:#fafafa}a{color:inherit;text-decoration:none}.auth-scope{font-family:"Avenir Next","Avenir",var(--font-auth-fallback,"Inter"),ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;letter-spacing:-.011em;color:#1e293b}.auth-scope ::selection{background:rgb(124 58 237/.2)}.auth-shell{display:flex;flex-direction:column;min-height:100dvh;background:#ffffff;color:#1e293b}.auth-panel{order:1;flex:1 1 auto;display:flex;flex-direction:column;padding:1.25rem 1.25rem 2.25rem}.auth-panel__inner{width:100%;max-width:400px;margin:0 auto;flex:1;display:flex;flex-direction:column}.auth-brand-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.auth-brand{display:inline-flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:800;letter-spacing:-.02em;color:#0f172a}.auth-brand__badge{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:.7rem;color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 8px 20px -8px rgb(124 58 237/.8)}.auth-panel__user{margin-left:auto;font-size:.75rem;color:#64748b;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-back{display:none;align-items:center;justify-content:center;width:40px;height:40px;margin-right:.75rem;border-radius:12px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;cursor:pointer;transition:background .15s}.auth-back:hover{background:#f8fafc}.auth-intro-cta{display:none;gap:.75rem}.auth-intro-cta__hint{margin:.25rem 0 0;text-align:center;font-size:.8125rem;line-height:1.45;color:#94a3b8}.auth-intro-cta__hint strong{color:#64748b;font-weight:600}.auth-panel__body{margin:auto 0;padding:1.75rem 0}.auth-intro{margin-bottom:1.5rem}.auth-intro__title{margin:0 0 .5rem;font-size:1.875rem;font-weight:800;letter-spacing:-.03em;line-height:1.12;color:#0f172a}.auth-intro__desc{margin:0;font-size:.9375rem;color:#64748b;line-height:1.55}.auth-media{order:0;position:relative;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:42vh;margin:0 0 .75rem;padding:2rem 1.5rem 2.25rem;border-radius:0 0 1.75rem 1.75rem;color:#fff;background:radial-gradient(120% 90% at 82% -10%,rgb(217 70 239/.32) 0,transparent 55%),linear-gradient(158deg,#2a1466,#4c1d95 48%,#6d28d9)}.auth-media__blob{position:absolute;z-index:0;border-radius:50%;filter:blur(52px);pointer-events:none}.auth-media__blob--1{width:260px;height:260px;top:-70px;right:-50px;background:rgb(139 92 246/.55)}.auth-media__blob--2{width:240px;height:240px;bottom:-80px;left:-60px;background:rgb(217 70 239/.28)}.auth-media__grid{position:absolute;inset:0;z-index:0;opacity:.55;background-image:radial-gradient(rgb(255 255 255/.14) 1px,transparent 0);background-size:22px 22px;-webkit-mask-image:radial-gradient(70% 70% at 50% 42%,#000 0,transparent 100%);mask-image:radial-gradient(70% 70% at 50% 42%,#000 0,transparent 100%)}.auth-media__scene{position:relative;z-index:1;width:100%;max-width:300px;display:flex;justify-content:center}.auth-phone{position:relative;width:216px;padding:.5rem;border-radius:1.75rem;background:rgb(15 8 40/.55);border:1px solid rgb(255 255 255/.14);box-shadow:0 40px 80px -30px rgb(12 6 35/.85);backdrop-filter:blur(6px);animation:auth-float 7s ease-in-out infinite}.auth-phone__screen{overflow:hidden;border-radius:1.375rem;background:#fff}.auth-phone__head{padding:1rem 1rem .875rem;color:#fff;background:linear-gradient(135deg,#7c3aed,#5b21b6)}.auth-phone__eyebrow{display:inline-flex;align-items:center;gap:.375rem;font-size:.5625rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.auth-phone__pulse{width:6px;height:6px;border-radius:50%;background:#fff;animation:auth-pulse 1.6s ease-in-out infinite}.auth-phone__name{margin:.5rem 0 0;font-size:.875rem;font-weight:700}.auth-phone__id{margin:.0625rem 0 0;font-size:.625rem;color:#ddd6fe}.auth-phone__body{display:grid;gap:.5rem;padding:.75rem}.auth-phone__alert{padding:.5rem .625rem;border:1px solid #fecdd3;border-radius:.625rem;background:#fff1f2}.auth-phone__alert-label{margin:0;font-size:.5rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#e11d48}.auth-phone__alert-value{margin:.125rem 0 0;font-size:.75rem;font-weight:600;color:#334155}.auth-phone__cta{justify-content:center;gap:.375rem;padding:.5rem;border-radius:.625rem;font-size:.6875rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#7c3aed,#6d28d9)}.auth-chip,.auth-phone__cta{display:flex;align-items:center}.auth-chip{position:absolute;z-index:2;gap:.5rem;padding:.4375rem .625rem;border-radius:.875rem;background:rgb(255 255 255/.96);box-shadow:0 18px 40px -18px rgb(12 6 35/.9);color:#0f172a}.auth-chip__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:26px;height:26px;border-radius:.5rem}.auth-chip__icon--tap{background:#f5f3ff;color:#6d28d9}.auth-chip__icon--notify{background:#ecfdf5;color:#059669}.auth-chip__title{display:block;font-size:.625rem;font-weight:700;line-height:1.15}.auth-chip__sub{display:block;font-size:.5625rem;color:#94a3b8;line-height:1.15}.auth-chip--tap{top:6%;left:-4%;animation:auth-float 6s ease-in-out infinite}.auth-chip--notify{bottom:12%;right:-6%;animation:auth-float 7.5s ease-in-out 1s infinite}.auth-media__caption{position:relative;z-index:1;max-width:22rem;margin:1.75rem auto 0;text-align:center}.auth-media__tag{display:inline-flex;align-items:center;gap:.375rem;margin-bottom:.75rem;padding:.25rem .625rem;border-radius:999px;border:1px solid rgb(255 255 255/.2);background:rgb(255 255 255/.08);font-size:.625rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgb(255 255 255/.85)}.auth-media__caption p{margin:0;font-size:.9375rem;line-height:1.55;color:rgb(255 255 255/.9)}.auth-steps{display:flex;gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none}.auth-steps__item{flex:1;display:flex;flex-direction:column;align-items:center;gap:.375rem;text-align:center}.auth-steps__number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:.8125rem;font-weight:700;background:#eef2f7;color:#94a3b8}.auth-steps__label{font-size:.6875rem;color:#999;line-height:1.2}.auth-steps__item--active .auth-steps__number{background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff;box-shadow:0 8px 18px -8px rgb(124 58 237/.7)}.auth-steps__item--active .auth-steps__label{color:#6d28d9;font-weight:600}.auth-steps__item--done .auth-steps__number{background:#dcfce7;color:#15803d}.auth-steps__item--done .auth-steps__label{color:#15803d}.auth-form__tabs{display:flex;gap:.25rem;margin-bottom:1.25rem;background:#f1f0fa;border-radius:12px;padding:.3125rem}.auth-form__tab{flex:1;padding:.5rem;border:none;border-radius:9px;background:transparent;font-size:.875rem;font-weight:600;color:#64748b;cursor:pointer;font-family:inherit;transition:color .15s}.auth-form__tab--active{background:#fff;color:#6d28d9;box-shadow:0 1px 2px rgb(15 23 42/.06),0 6px 16px -10px rgb(124 58 237/.5)}.auth-form__body{display:grid;gap:1rem}.auth-field{display:grid;gap:.375rem}.auth-field__label{font-size:.875rem;font-weight:600;color:#334155}.auth-field__input{padding:.75rem .875rem;border:1px solid #e2e8f0;border-radius:10px;font-size:.9375rem;font-family:inherit;line-height:1.4;background:#fbfbfe;transition:border-color .15s,box-shadow .15s,background .15s}.auth-field__input:focus{outline:none;background:#fff;border-color:#8b5cf6;box-shadow:0 0 0 3px rgb(139 92 246/.15)}.auth-field__input--code{font-family:ui-monospace,Cascadia Code,monospace;letter-spacing:.05em;text-transform:uppercase}.auth-field__hint{margin:0;font-size:.8125rem;color:#888;line-height:1.4}.auth-form__error{margin:0;padding:.75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:.875rem}.auth-form__hint{margin:1rem 0 0}.auth-form__footer,.auth-form__hint{text-align:center;font-size:.875rem;color:#666}.auth-form__footer{margin:1.25rem 0 0;padding-top:1.25rem;border-top:1px solid #f0f0f0}.auth-link{color:#6d28d9;font-weight:600}.auth-link:hover{text-decoration:underline}.auth-link-btn{background:none;border:none;padding:0;color:#6d28d9;font-weight:600;font-size:inherit;font-family:inherit;cursor:pointer}.auth-link-btn:hover{text-decoration:underline}.auth-btn{display:inline-flex;align-items:center;justify-content:center;padding:.8125rem 1.25rem;border-radius:12px;font-size:.9375rem;font-weight:600;border:none;cursor:pointer;font-family:inherit;line-height:1.4;transition:transform .2s ease,box-shadow .2s ease,opacity .15s;text-decoration:none}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-btn--primary{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;box-shadow:0 14px 30px -12px rgb(124 58 237/.7)}.auth-btn--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 18px 36px -12px rgb(124 58 237/.75)}.auth-btn--primary:active:not(:disabled){transform:translateY(0)}.auth-btn--outline{background:#fff;color:#6d28d9;border:1px solid #ddd6fe}.auth-btn--outline:hover:not(:disabled){background:#f5f3ff;border-color:#c4b5fd}.auth-btn--full{width:100%}.auth-card__info{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #f0f0f0}.auth-card__info-title{margin:0 0 .75rem;font-size:.9375rem;font-weight:600}.auth-card__info-list{margin:0;padding:0;list-style:none;display:grid;gap:.5rem}.auth-card__info-list li{font-size:.875rem;color:#555;padding-left:1.25rem;position:relative}.auth-card__info-list li:before{content:"→";position:absolute;left:0;color:#7c3aed}.auth-setup__id{margin:0 0 1.25rem;padding:.75rem;background:#f5f5f5;border-radius:8px;font-size:.875rem;color:#555;word-break:break-all}.auth-setup__id code{font-family:ui-monospace,monospace;font-size:.8125rem}.auth-verified-code{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-bottom:1.25rem;padding:.75rem 1rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px}.auth-verified-code__label{font-size:.8125rem;font-weight:600;color:#15803d}.auth-verified-code__value{font-family:ui-monospace,monospace;font-size:.875rem;font-weight:600;color:#111;letter-spacing:.05em}@keyframes auth-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes auth-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes auth-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1023px){.auth-shell--stepped .auth-intro-cta{display:grid;margin-top:4rem;animation:auth-fade-up .35s ease both}.auth-shell--stepped .auth-form-region,.auth-shell--stepped[data-step=form] .auth-intro-cta,.auth-shell--stepped[data-step=form] .auth-media{display:none}.auth-shell--stepped[data-step=form] .auth-form-region{display:block;animation:auth-fade-up .35s ease both}.auth-shell--stepped[data-step=form] .auth-back{display:inline-flex}.auth-shell--stepped .auth-form__hint,.auth-shell--stepped .auth-form__tabs{display:none}}@media (min-width:640px){.auth-media{min-height:38vh;margin:1rem;padding:2.5rem;border-radius:1.75rem}.auth-media__scene{max-width:320px}.auth-phone{width:240px}.auth-steps__label{font-size:.75rem}}@media (min-width:1024px){.auth-shell{flex-direction:row}.auth-panel{order:0;flex:1 1 42%;padding:2.5rem 3rem;overflow-y:auto}.auth-panel__inner{max-width:420px}.auth-media{order:1;flex:1 1 58%;min-height:auto;margin:.9rem .9rem .9rem 0;padding:3rem;border-radius:2rem}.auth-media__scene{max-width:340px}.auth-phone{width:256px}.auth-intro__title{font-size:2.25rem}}@media (min-width:1280px){.auth-panel{padding:3rem 4rem}.auth-media__caption p{font-size:1rem}}@media (prefers-reduced-motion:reduce){.auth-chip,.auth-form-region,.auth-intro-cta,.auth-phone,.auth-phone__pulse{animation:none!important}}