:root{--auth-glass:rgb(10 10 10 / 0.55);--auth-glass-edge:rgb(255 255 255 / 0.12);--auth-glass-shadow:0 24px 64px rgb(0 0 0 / 0.45);--auth-foot:linear-gradient(to top, rgb(0 0 0 / 0.6), rgb(0 0 0 / 0));--auth-on-photo:rgb(255 255 255 / 0.88)}*,*::before,*::after{box-sizing:border-box;margin:0}html{height:100%}body{position:relative;min-height:100%;display:grid;grid-template-rows:1fr auto;background:var(--bg);color:var(--fg);font-family:geist,system-ui,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}body button,body a{font-family:inherit}.auth-backdrop{position:fixed;inset:0;z-index:0;overflow:hidden;background:var(--bg)}.auth-slide{position:absolute;inset:0;opacity:0;transition:opacity 2s ease}.auth-slide.is-active{opacity:1;z-index:1}.auth-photo{display:block;width:100%;height:100%;object-fit:cover;opacity:0;transform-origin:50% 55%;transition:opacity 1s ease-out;animation:auth-zoom 64s ease-in-out infinite alternate;will-change:transform}.auth-photo.is-revealed{opacity:1}@keyframes auth-zoom{from{transform:scale(1)}to{transform:scale(1.06)}}.auth-depth{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;transition:opacity .8s ease}.auth-depth.is-ready{opacity:1}.auth-photo.is-covered{animation:none;visibility:hidden}.auth-grain{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");background-size:240px 240px;opacity:.1;mix-blend-mode:overlay;animation:auth-grain 1s steps(1,end)infinite}@keyframes auth-grain{0%{background-position:0 0}12.5%{background-position:-37px -91px}25%{background-position:112px 23px}37.5%{background-position:-71px 148px}50%{background-position:163px -54px}62.5%{background-position:-133px 77px}75%{background-position:58px -172px}87.5%{background-position:-102px 15px}100%{background-position:0 0}}@media(prefers-reduced-motion:reduce){.auth-photo,.auth-grain{animation:none}.auth-photo,.auth-slide{transition:none}}.auth-stage{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:48px 24px}.auth-brand{display:flex;align-items:center;gap:12px;color:#fff;text-shadow:0 1px 3px rgb(0 0 0/.45)}.auth-brand img{width:52px;height:52px;object-fit:contain;filter:invert(1)brightness(1.1)drop-shadow(0 1px 2px rgb(0 0 0/.45))}.auth-brand-text{display:flex;flex-direction:column;line-height:1.2}.auth-brand-text strong{font-size:26px;font-weight:600;letter-spacing:-.015em}.auth-brand-text span{font-size:20px;color:var(--auth-on-photo)}.auth-card{width:100%;max-width:440px;padding:36px;text-align:center;background:var(--auth-glass);-webkit-backdrop-filter:blur(28px)saturate(140%);backdrop-filter:blur(28px)saturate(140%);border-radius:3px;box-shadow:0 0 0 1px var(--auth-glass-edge),var(--auth-glass-shadow)}.auth-title{font-size:22px;font-weight:600;letter-spacing:-.01em;line-height:1.2}.auth-sub{margin-top:8px;font-size:15px;color:var(--fg-2);text-wrap:pretty}.auth-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:280px;height:44px;padding:0 32px;margin-top:24px;background:var(--fg);color:var(--bg);border-radius:2px;font-size:15px;font-weight:500;text-decoration:none;transition:background .12s ease}.auth-button:hover{background:var(--fg-2)}.auth-button:focus-visible{outline:2px solid var(--fg);outline-offset:2px}.auth-button svg{flex:none;width:18px;height:18px}.auth-error{display:flex;align-items:flex-start;gap:10px;margin-top:20px;padding:12px 14px;text-align:left;background:color-mix(in srgb,var(--danger) 14%,transparent);border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);border-radius:2px;font-size:14px;color:var(--fg)}.auth-error svg{flex:none;width:18px;height:18px;margin-top:1px;color:var(--danger)}.auth-foot{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:56px 24px 20px;background:var(--auth-foot);font-size:13px;color:var(--auth-on-photo)}.auth-foot a{color:inherit;text-decoration:none}.auth-foot a:hover{color:#fff;text-decoration:underline}@media(max-width:480px){.auth-card{padding:28px 24px}.auth-foot{flex-direction:column;align-items:flex-start;gap:8px}}
