.auth-page{--mono:var(--font-mono),"JetBrains Mono","SF Mono","Menlo",monospace;--sans:var(--font-sans),"Montserrat",sans-serif;position:relative;inset:auto;width:100%;min-height:calc(100svh - var(--ios-status-fill-h));height:calc(100svh - var(--ios-status-fill-h));max-height:calc(100svh - var(--ios-status-fill-h));background-image:none;color:var(--text);font-family:var(--sans);font-feature-settings:"ss01","ss02";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.auth-page,.auth-page .stage{background-color:var(--bg-0);overflow:hidden}.auth-page .stage{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(ellipse 100% 70% at 50% 50%,var(--stage-glow) 0,transparent 60%),radial-gradient(ellipse 140% 100% at 50% 100%,var(--vignette-mid) 0,transparent 50%)}.auth-page .stage:before{background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:64px 64px;background-position:-1px -1px;mask-image:radial-gradient(ellipse 80% 60% at 50% 50%,black 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 50%,black 30%,transparent 80%)}.auth-page .stage:after,.auth-page .stage:before{content:"";position:absolute;inset:0;pointer-events:none}.auth-page .stage:after{background:radial-gradient(ellipse 100% 75% at 50% 50%,transparent 35%,var(--vignette-mid) 80%,var(--vignette-edge) 100%)}.auth-page .worldmap{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:1;mix-blend-mode:var(--map-blend)}.auth-page .worldmap .land-cool circle{fill:var(--map-cool)}.auth-page .worldmap .land-warm circle{fill:var(--map-warm)}.auth-page .scanline{background:repeating-linear-gradient(0deg,transparent 0,transparent 3px,var(--scanline) 3px,var(--scanline) 4px);mix-blend-mode:overlay}.auth-page .markers,.auth-page .scanline{position:absolute;inset:0;pointer-events:none}.auth-page .gen{width:0;height:0}.auth-page .gen,.auth-page .gen-dot{position:absolute;transform:translate(-50%,-50%)}.auth-page .gen-dot{width:8px;height:8px;border-radius:50%;background:var(--orange);border:1.5px solid rgba(255,255,255,.85);box-shadow:0 0 12px var(--orange-glow),0 1px 4px rgba(0,0,0,.6);z-index:2}.auth-page .gen-pulse{position:absolute;width:12px;height:12px;border-radius:50%;background:transparent;border:1.5px solid var(--orange);transform:translate(-50%,-50%);animation:pulseRing 2.4s cubic-bezier(.16,.84,.44,1) infinite;opacity:.65}.auth-page .gen-pulse.delay-1{animation-delay:.8s}.auth-page .gen-pulse.delay-2{animation-delay:1.6s}@keyframes pulseRing{0%{transform:translate(-50%,-50%) scale(.5);opacity:.75;border-width:1.5px}70%{opacity:.15}to{transform:translate(-50%,-50%) scale(3.4);opacity:0;border-width:.4px}}.auth-page .gen.state-online .gen-dot,.auth-page .gen.state-online .gen-pulse{background:var(--orange)}.auth-page .gen.state-silent .gen-dot{background:var(--green);border-color:rgba(255,255,255,.6);box-shadow:0 0 8px rgba(34,197,94,.4)}.auth-page .gen.state-silent .gen-pulse{background:var(--green);animation-duration:4s;opacity:.4}.auth-page .gen.state-alarm .gen-dot{background:var(--red)}.auth-page .gen.state-alarm .gen-pulse{background:var(--red);animation-duration:1.4s}.auth-page .gen.state-cold .gen-dot{background:rgba(180,180,190,.55);border-color:rgba(255,255,255,.4);box-shadow:none}.auth-page .gen.state-cold .gen-pulse{display:none}.auth-page .gen-tag{position:absolute;top:12px;left:14px;transform:translateY(0);font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:.4px;color:var(--text-muted);white-space:nowrap;opacity:0;transition:opacity .4s ease;text-shadow:0 0 8px rgba(0,0,0,.95)}.auth-page .gen-tag:before{content:"";position:absolute;left:-8px;top:50%;width:6px;height:1px;background:var(--orange)}.auth-page .gen.tag-visible .gen-tag{opacity:1;transition-delay:.2s}.auth-page .hud{position:absolute;z-index:5;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.6px;color:var(--text-muted);pointer-events:none;line-height:1.55}.auth-page .hud .label{color:var(--text-faint);margin-right:6px}.auth-page .hud .val{color:var(--text);font-weight:600}.auth-page .hud .accent{color:var(--orange-bright)}.auth-page .hud-tl{left:max(28px,env(safe-area-inset-left,0px))}.auth-page .hud-tl,.auth-page .hud-tr{top:max(22px,env(safe-area-inset-top,0px))}.auth-page .hud-tr{right:max(28px,env(safe-area-inset-right,0px));text-align:right}.auth-page .hud-bl{left:max(28px,env(safe-area-inset-left,0px))}.auth-page .hud-bl,.auth-page .hud-br{bottom:max(22px,env(safe-area-inset-bottom,0px))}.auth-page .hud-br{right:max(28px,env(safe-area-inset-right,0px));text-align:right}.auth-page .hud-block{background:linear-gradient(180deg,var(--glass-hud-from),var(--glass-hud-to));border:1px solid var(--border);border-left:2px solid var(--orange);padding:8px 12px 8px 11px;border-radius:2px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.auth-page .hud-br .hud-block,.auth-page .hud-tr .hud-block{border-left:1px solid var(--border);border-right:2px solid var(--orange)}.auth-page .hud-row{display:flex;gap:6px;align-items:baseline}.auth-page .hud-br .hud-row,.auth-page .hud-tr .hud-row{justify-content:flex-end}.auth-page .hud-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 8px 3px 7px;border-radius:999px;background:rgba(34,197,94,.1);color:var(--green);font-size:9px;font-weight:700;letter-spacing:1px;border:1px solid rgba(34,197,94,.18);margin-left:8px}.auth-page .hud-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(34,197,94,.7);animation:dotPulse 1.8s ease-in-out infinite}@keyframes dotPulse{0%,to{box-shadow:0 0 0 0 rgba(34,197,94,.7)}50%{box-shadow:0 0 0 5px rgba(34,197,94,0)}}.auth-page .card-shell{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:10;padding:max(40px,env(safe-area-inset-top,0px)) 20px max(40px,env(safe-area-inset-bottom,0px))}.auth-page .card-frame{width:100%;max-width:440px;position:relative;animation:cardIn .9s cubic-bezier(.16,1,.3,1) both}@keyframes cardIn{0%{opacity:0;transform:translateY(14px) scale(.985);filter:blur(4px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.auth-page .card-frame:after,.auth-page .card-frame:before{content:"";position:absolute;width:20px;height:20px;border:1px solid var(--orange);opacity:.7}.auth-page .card-frame:before{top:-10px;left:-10px;border-right:none;border-bottom:none}.auth-page .card-frame:after{bottom:-10px;right:-10px;border-left:none;border-top:none}.auth-page .card-rail{display:flex;align-items:center;justify-content:space-between;padding:0 4px;margin-bottom:10px;font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:1.5px;color:var(--text-faint);text-transform:uppercase}.auth-page .card-rail .rail-id{color:var(--orange)}.auth-page .card-rail .rail-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--orange);margin:0 8px;vertical-align:middle;box-shadow:0 0 6px var(--orange-glow)}.auth-page .card{position:relative;background:linear-gradient(180deg,var(--glass-from) 0,var(--glass-to) 100%);border:1px solid var(--border-strong);border-radius:4px;padding:38px 38px 32px;backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);box-shadow:var(--shadow-elev),var(--inset-hi),var(--inset-lo);overflow:hidden}.auth-page .card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0,var(--orange) 20%,var(--orange-bright) 50%,var(--orange) 80%,transparent 100%);box-shadow:0 0 18px var(--orange-glow)}.auth-page .card:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 0,var(--orange-glow),transparent 50%),radial-gradient(circle at 90% 100%,rgba(255,154,31,.06),transparent 50%);pointer-events:none;opacity:.6}.auth-page .card-inner{position:relative;z-index:1}.auth-page .card-logo{display:flex;justify-content:center;margin-bottom:22px}.auth-page .card-logo img{height:52px;width:auto;filter:var(--logo-filter)}.auth-page .card-eyebrow{text-align:center;font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:4px;color:var(--orange);text-transform:uppercase;margin-bottom:8px}.auth-page .card-eyebrow:after,.auth-page .card-eyebrow:before{content:"";display:inline-block;width:16px;height:1px;background:var(--orange);vertical-align:middle;margin:0 10px;opacity:.6}.auth-page .card-title{text-align:center;font-family:var(--sans);font-size:22px;font-weight:800;letter-spacing:-.4px;color:var(--text);margin-bottom:6px}.auth-page .card-title .title-accent{color:var(--orange-bright)}.auth-page .card-sub{text-align:center;font-size:12px;font-weight:500;color:var(--text-soft);margin-bottom:28px;letter-spacing:.1px}.auth-page .form{display:flex;flex-direction:column;gap:20px}.auth-page .field{position:relative}.auth-page .field-label{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.auth-page .field-label .field-marker{color:var(--orange);font-size:8px}.auth-page .field-input-wrap{position:relative;display:flex;align-items:center}.auth-page .field-icon{position:absolute;left:0;width:18px;height:18px;color:var(--text-faint);transition:color .25s ease;pointer-events:none}.auth-page .field-input{width:100%;background:transparent;border:none;border-bottom:1px solid var(--border-strong);padding:10px 0 10px 30px;font-family:var(--sans);font-size:14px;font-weight:500;color:var(--text);outline:none;transition:border-color .25s ease,padding .25s ease;letter-spacing:.1px}.auth-page .field-input::placeholder{color:var(--text-faint);font-weight:400;letter-spacing:.2px}.auth-page .field-input-wrap:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:linear-gradient(90deg,var(--orange),var(--orange-bright));box-shadow:0 0 6px var(--orange-glow);transition:width .35s cubic-bezier(.16,1,.3,1)}.auth-page .field-input-wrap:focus-within .field-icon,.auth-page .field-input:focus~.field-icon{color:var(--orange-bright)}.auth-page .field-input-wrap:focus-within:after{width:100%}.auth-page .field-input-wrap:before{content:"";position:absolute;bottom:-1px;right:0;width:6px;height:6px;border-right:1px solid var(--orange);border-bottom:1px solid var(--orange);opacity:0;transition:opacity .3s ease}.auth-page .field-input-wrap:focus-within:before{opacity:1}.auth-page .form-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}.auth-page .check{display:inline-flex;align-items:center;gap:9px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:11px;font-weight:500;color:var(--text-soft);letter-spacing:.2px}.auth-page .check input{position:absolute;opacity:0;pointer-events:none}.auth-page .check-box{width:14px;height:14px;border-radius:3px;border:1px solid var(--border-strong);background:var(--fill-02);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .18s ease}.auth-page .check-box svg{width:10px;height:10px;color:var(--on-accent);opacity:0;transform:scale(.6);transition:opacity .15s ease,transform .18s cubic-bezier(.16,1,.3,1)}.auth-page .check input:checked+.check-box{background:var(--orange);border-color:var(--orange);box-shadow:0 0 10px var(--orange-glow)}.auth-page .check input:checked+.check-box svg{opacity:1;transform:scale(1)}.auth-page .check:hover .check-box{border-color:var(--orange)}.auth-page .link-alt,.auth-page .link-forgot{font-size:11px;font-weight:600;color:var(--text-soft);text-decoration:none;letter-spacing:.2px;transition:color .18s ease;position:relative}.auth-page .link-alt:after,.auth-page .link-forgot:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:right;transition:transform .3s cubic-bezier(.16,1,.3,1)}.auth-page .link-alt:hover,.auth-page .link-forgot:hover{color:var(--orange-bright)}.auth-page .link-alt:hover:after,.auth-page .link-forgot:hover:after{transform:scaleX(1);transform-origin:left}.auth-page .submit{margin-top:22px;width:100%;height:50px;background:var(--orange);color:var(--on-accent);border:none;border-radius:3px;font-family:var(--sans);font-size:12px;font-weight:800;letter-spacing:2.4px;text-transform:uppercase;cursor:pointer;position:relative;overflow:hidden;transition:background .2s ease,transform .18s cubic-bezier(.16,1,.3,1),box-shadow .25s ease;box-shadow:0 6px 20px rgba(244,122,11,.3),inset 0 0 0 1px rgba(255,154,31,.6);display:inline-flex;align-items:center;justify-content:center;gap:12px}.auth-page .submit:hover:not(:disabled){background:var(--orange-bright);transform:translateY(-1px);box-shadow:0 12px 30px rgba(244,122,11,.45),inset 0 0 0 1px rgba(255,200,100,.8)}.auth-page .submit:active{transform:translateY(0)}.auth-page .submit:disabled{opacity:.85;cursor:progress}.auth-page .submit-arrow{display:inline-flex;align-items:center;transition:transform .25s cubic-bezier(.16,1,.3,1)}.auth-page .submit:hover:not(:disabled) .submit-arrow{transform:translateX(4px)}.auth-page .submit-arrow svg{width:14px;height:14px}.auth-page .submit:after{content:"";position:absolute;top:0;left:-75%;width:50%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.4) 50%,transparent);transform:skewX(-20deg);transition:left .6s cubic-bezier(.4,0,.2,1)}.auth-page .submit:hover:not(:disabled):after{left:125%}.auth-page .submit.is-pending{cursor:progress;animation:submitGlow 1.6s ease-in-out infinite;transform:none!important}@keyframes submitGlow{0%,to{box-shadow:0 6px 20px rgba(244,122,11,.3),inset 0 0 0 1px rgba(255,154,31,.6)}50%{box-shadow:0 8px 32px rgba(244,122,11,.55),inset 0 0 0 1px rgba(255,200,100,.95)}}.auth-page .submit.is-pending:after{animation:submitSweep 1.6s cubic-bezier(.4,0,.2,1) infinite;left:-75%;transition:none}@keyframes submitSweep{0%{left:-75%}to{left:125%}}.auth-page .submit-status-dot{width:8px;height:8px;border-radius:50%;background:var(--on-accent);flex-shrink:0;animation:submitStatusPulse 1.2s cubic-bezier(.4,0,.2,1) infinite}@keyframes submitStatusPulse{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--on-accent) 45%,transparent)}50%{opacity:.55;transform:scale(.7);box-shadow:0 0 0 4px transparent}}.auth-page .submit-loading-dots{display:inline-flex;align-items:center;gap:4px;margin-left:2px}.auth-page .submit-loading-dots span{width:4px;height:4px;border-radius:50%;background:var(--on-accent);opacity:0;animation:submitDotsCycle 1.4s cubic-bezier(.4,0,.6,1) infinite}.auth-page .submit-loading-dots span:first-child{animation-delay:0s}.auth-page .submit-loading-dots span:nth-child(2){animation-delay:.2s}.auth-page .submit-loading-dots span:nth-child(3){animation-delay:.4s}@keyframes submitDotsCycle{0%,80%,to{opacity:0;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.auth-page .submit-loading-dots span,.auth-page .submit-status-dot,.auth-page .submit.is-pending,.auth-page .submit.is-pending:after{animation:none!important}.auth-page .submit.is-pending{background:var(--orange-deep)}.auth-page .submit-status-dot{opacity:.6}.auth-page .submit-loading-dots span{opacity:1}}.auth-page .form-error{border:1px solid rgba(239,68,68,.3);background:rgba(239,68,68,.08);border-left:2px solid var(--red);border-radius:2px;color:var(--danger-fg)}.auth-page .form-error,.auth-page .form-success{margin-top:-4px;padding:10px 12px;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.4px}.auth-page .form-success{border:1px solid rgba(34,197,94,.3);background:rgba(34,197,94,.08);border-left:2px solid var(--green);border-radius:2px;color:var(--success-fg)}.auth-page .card-footer{margin-top:22px;padding-top:18px;border-top:1px dashed var(--border);display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:1px;color:var(--text-faint);text-transform:uppercase}.auth-page .card-footer .secure{display:inline-flex;align-items:center;gap:5px;color:var(--text-soft)}.auth-page .card-footer .secure svg{width:9px;height:9px;color:var(--green)}.auth-page .card-signature{text-align:center;margin-top:18px;font-family:var(--mono);font-size:9px;font-weight:500;letter-spacing:2.5px;color:var(--text-ghost);text-transform:uppercase}.auth-page .card-signature span{color:var(--text-faint);margin:0 6px}.auth-page .card-legal{display:flex;justify-content:center;align-items:center;margin-top:10px;letter-spacing:1.8px}.auth-page .card-legal a{color:var(--text-soft);text-decoration:none;padding:6px 2px;transition:color .18s ease}.auth-page .card-legal a:focus-visible,.auth-page .card-legal a:hover{color:var(--orange-bright)}@media (max-width:760px){.auth-page .gen-tag,.auth-page .hud-bl,.auth-page .hud-br{display:none}}@media (max-width:860px){.auth-page .field-input{font-size:16px}}@media (max-width:560px){.auth-page .card{padding:30px 24px 24px}.auth-page .card-rail{font-size:8px;letter-spacing:1px;gap:6px}.auth-page .card-rail span:not(.rail-id):not(.rail-dot){white-space:nowrap}.auth-page .hud-tl,.auth-page .hud-tr{font-size:9px;top:14px}.auth-page .hud-tl{left:14px}.auth-page .hud-tr{display:none}.auth-page .card-frame:after,.auth-page .card-frame:before{width:14px;height:14px}}@media (prefers-reduced-motion:reduce){.auth-page .card-frame,.auth-page .gen-pulse,.auth-page .hud-pill:before,.auth-page .submit:after{animation:none!important}.auth-page .submit:after{display:none}}