.den{--den-bg-1:#111a2e;--den-bg-2:#070b14;--den-accent:#22d3ee;--den-accent-2:#67e8f9;--den-accent-deep:#0e7490;--den-violet:#8b5cf6;--den-ink:#e6ecf7;--den-muted:#e6ecf799;--den-line:#ffffff1a;--den-field:#ffffff0b;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.22, .72, .16, 1);min-height:100svh;color:var(--den-ink);font-family:var(--font-inter), system-ui, sans-serif;place-items:center;padding:40px 20px;display:grid;position:relative;overflow:hidden}.den .ambient{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.den .ambient:before{content:"";background:radial-gradient(120% 80% at 50% -10%, #16223c 0%, transparent 60%), linear-gradient(180deg, var(--den-bg-1), var(--den-bg-2) 72%);position:absolute;inset:0}.den .orb{filter:blur(70px);opacity:.5;mix-blend-mode:screen;will-change:transform;border-radius:50%;position:absolute}.den .orb--a{background:radial-gradient(closest-side,#22d3ee66,#0000);width:46vmax;height:46vmax;animation:22s ease-in-out infinite den-float-a;top:-18vmax;left:-14vmax}.den .orb--b{background:radial-gradient(closest-side,#8b5cf659,#0000);width:40vmax;height:40vmax;animation:28s ease-in-out infinite den-float-b;bottom:-20vmax;right:-16vmax}@keyframes den-float-a{0%,to{transform:translate(0)scale(1)}50%{transform:translate(6vmax,4vmax)scale(1.1)}}@keyframes den-float-b{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-5vmax,-3vmax)scale(1.12)}}.den .motes{position:absolute;inset:0}.den .mote{width:3px;height:3px;animation:den-mote var(--dur,14s) ease-in-out infinite alternate;opacity:0;background:radial-gradient(circle,#a5e9fae6,#0000 70%);border-radius:50%;position:absolute}@keyframes den-mote{0%{opacity:0;transform:translate(0)}20%{opacity:.7}to{opacity:0;transform:translate(var(--dx,20px), var(--dy,-60px))}}.den .grain{opacity:.05;background-image:url(/textures/grain.png);background-size:260px;animation:6s steps(6,end) infinite den-grain;position:absolute;inset:-50%}@keyframes den-grain{0%{transform:translate(0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-5%)}60%{transform:translate(-3%,4%)}80%{transform:translate(5%,-2%)}to{transform:translate(0)}}.den .auth{z-index:1;flex-direction:column;align-items:center;width:min(92vw,410px);display:flex;position:relative}.den .logo-stage{z-index:3;width:118px;height:118px;transform:translate3d(var(--fox-x,0), var(--fox-y,0), 0);margin-bottom:-54px;animation:5.2s ease-in-out infinite den-logo-bob;position:relative}@keyframes den-logo-bob{0%,to{margin-top:0}50%{margin-top:-6px}}.den .logo-badge{background:linear-gradient(160deg,#1e2940e6,#0b101cd9);border:1px solid #a5e9fa47;border-radius:50%;place-items:center;transition:box-shadow .4s,border-color .4s;display:grid;position:absolute;inset:0;box-shadow:0 22px 44px #00000080,inset 0 1px #ffffff2e,0 0 34px #22d3ee24}.den .logo-badge img{width:64px;height:auto;display:block}.den .logo-ring{background:conic-gradient(#22d3eea6,#8b5cf68c,#22d3ee0d,#22d3eea6);border-radius:50%;animation:7s linear infinite den-ring-spin;position:absolute;inset:-7px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 2.5px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,#0000 calc(100% - 2.5px),#000 calc(100% - 2px))}@keyframes den-ring-spin{to{transform:rotate(360deg)}}.den.is-guard .logo-badge{border-color:#8b5cf680;box-shadow:0 22px 44px #00000080,inset 0 1px #ffffff2e,0 0 44px #8b5cf64d}.den .logo-stage.is-happy{animation:den-logo-pop .7s var(--ease-spring)}@keyframes den-logo-pop{0%{transform:scale(1)}35%{transform:scale(1.16)rotate(-4deg)}65%{transform:scale(.96)rotate(3deg)}to{transform:scale(1)}}.den .card{z-index:2;-webkit-backdrop-filter:blur(26px)saturate(1.3);background:linear-gradient(162deg,#1e29409e,#0b101c80);border:1px solid #ffffff24;border-radius:26px;width:100%;padding:72px 34px 30px;position:relative;overflow:hidden;box-shadow:0 44px 90px #00000080,0 2px 8px #0000004d,inset 0 1px #ffffff2e}.den .card__sheen{border-radius:inherit;pointer-events:none;background:radial-gradient(280px circle at var(--mx,50%) var(--my,-10%), #ffffff24, transparent 45%);position:absolute;inset:0}.den .card.is-shake{animation:.4s den-shake}@keyframes den-shake{0%,to{transform:translate(0)}20%{transform:translate(-9px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}.den .card__head{text-align:center;margin-bottom:22px}.den .brand{font-family:var(--font-space-grotesk), sans-serif;letter-spacing:-.02em;font-size:1.9rem;font-weight:700}.den .brand .grad{background:linear-gradient(120deg, var(--den-accent-2), var(--den-accent) 45%, var(--den-violet));color:#0000;-webkit-background-clip:text;background-clip:text}.den .sub{color:var(--den-muted);margin-top:5px;font-size:.9rem;font-weight:400}.den .form{flex-direction:column;gap:15px;display:flex}.den .field{position:relative}.den .field input{width:100%;color:var(--den-ink);background:var(--den-field);border:1px solid var(--den-line);border-radius:13px;outline:none;padding:21px 16px 8px;font-size:1rem;font-weight:500;transition:border-color .25s,background .25s,box-shadow .25s}.den .field input.has-reveal{padding-right:48px}.den .field input:focus{border-color:var(--den-accent);background:#ffffff14;box-shadow:0 0 0 3px #22d3ee38}.den .field label{color:var(--den-muted);pointer-events:none;transform-origin:0 0;font-size:1rem;transition:transform .2s,color .2s;position:absolute;top:16px;left:16px}.den .field input:focus+label,.den .field input:not(:placeholder-shown)+label{color:var(--den-accent-2);transform:translateY(-11px)scale(.72)}.den .reveal{width:36px;height:36px;color:var(--den-muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;transition:color .2s,background .2s;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.den .reveal:hover{color:var(--den-ink);background:#ffffff14}.den .reveal svg{width:20px;height:20px}.den .reveal .icon-off,.den .reveal.is-on .icon-on{display:none}.den .reveal.is-on .icon-off{display:block}.den .btn{color:#06121a;background:linear-gradient(135deg, var(--den-accent-2) 0%, var(--den-accent) 46%, var(--den-violet) 120%);cursor:pointer;isolation:isolate;min-height:60px;transition:transform .2s var(--ease-out), box-shadow .2s ease, filter .2s ease;border:1px solid #a5e9fa66;border-radius:14px;justify-content:space-between;align-items:center;gap:0;margin-top:6px;padding:0 18px 0 26px;font-size:1.02rem;font-weight:700;display:flex;position:relative;box-shadow:0 16px 30px -10px #22d3ee73,inset 0 1px #ffffff4d}.den .btn:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 22px 40px -12px #22d3ee8c,inset 0 1px #ffffff57}.den .btn:active{transform:translateY(0)scale(.99)}.den .btn:disabled{cursor:default}.den .btn:focus-visible{outline:3px solid var(--den-accent);outline-offset:3px}.den .doorbtn__label{z-index:1;letter-spacing:.01em;white-space:nowrap;transition:opacity .3s;position:relative}.den .btn.walking .doorbtn__label{opacity:.6}.den .dooric{perspective:300px;z-index:1;flex:none;width:62px;height:38px;position:relative}.den .dooric__frame{background:linear-gradient(#071726,#04101c);border-radius:5px;width:28px;height:34px;position:absolute;top:2px;right:0;overflow:hidden;box-shadow:inset 0 0 0 1.5px #a5e9fa59}.den .dooric__glow{opacity:0;transition:opacity .35s var(--ease-out);background:radial-gradient(62% 72% at 50% 46%,#ffd696f2,#ffbe6e00 72%);position:absolute;inset:0}.den .dooric__panel{background:linear-gradient(180deg, var(--den-accent-2), var(--den-accent) 55%, var(--den-accent-deep));transform-origin:100%;width:28px;height:34px;transition:transform .42s var(--ease-out);backface-visibility:hidden;border-radius:5px;position:absolute;top:2px;right:0;transform:rotateY(0);box-shadow:inset 0 0 0 1.5px #ffffff3d,inset -6px 0 10px #00000047}.den .dooric__handle{background:linear-gradient(#fff,#c8f5fd);border-radius:2px;width:2.5px;height:10px;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.den .dooric__person{color:#04222e;transition:transform .74s var(--ease-out), opacity .3s var(--ease-out) .36s;position:absolute;bottom:2px;left:2px}.den .dooric__person svg{display:block;overflow:visible}.den .leg,.den .arm,.den .shin{transform-box:fill-box;transform-origin:50% 0}.den .person__bob,.den .person{transform-box:fill-box;transform-origin:50% 100%}.den .leg--front{transform:rotate(11deg)}.den .leg--back{transform:rotate(-11deg)}.den .arm--front{transform:rotate(-9deg)}.den .arm--back{transform:rotate(9deg)}.den .leg--front .shin,.den .leg--back .shin{transform:rotate(7deg)}.den .person{transition:transform .25s var(--ease-out)}.den .btn.walking .person{transform:rotate(4deg)}.den .btn.walking .leg--front{animation:.46s linear infinite den-thighF}.den .btn.walking .leg--back{animation:.46s linear infinite den-thighB}.den .btn.walking .leg--front .shin{animation:.46s linear infinite den-shinF}.den .btn.walking .leg--back .shin{animation:.46s linear infinite den-shinB}.den .btn.walking .arm--front{animation:.46s linear infinite den-armF}.den .btn.walking .arm--back{animation:.46s linear infinite den-armB}.den .btn.walking .person__bob{animation:.23s linear infinite den-bob}@keyframes den-thighF{0%,to{transform:rotate(26deg)}50%{transform:rotate(-24deg)}}@keyframes den-thighB{0%,to{transform:rotate(-24deg)}50%{transform:rotate(26deg)}}@keyframes den-armF{0%,to{transform:rotate(-24deg)}50%{transform:rotate(24deg)}}@keyframes den-armB{0%,to{transform:rotate(24deg)}50%{transform:rotate(-24deg)}}@keyframes den-shinF{0%{transform:rotate(8deg)}25%{transform:rotate(48deg)}55%{transform:rotate(10deg)}to{transform:rotate(8deg)}}@keyframes den-shinB{0%{transform:rotate(34deg)}30%{transform:rotate(6deg)}78%{transform:rotate(44deg)}to{transform:rotate(34deg)}}@keyframes den-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-1.4px)}}.den .btn.dooropen .dooric__panel{transform:rotateY(72deg)}.den .btn.dooropen .dooric__glow{opacity:.95}.den .btn.out .dooric__person{opacity:0;transform:translate(36px)scale(.72)}.den .status{min-height:0;color:var(--den-muted);text-align:center;font-size:.82rem}.den .status.is-error{color:#fda4af;font-weight:600}.den .status:empty{display:none}.den .foot{text-align:center;color:var(--den-muted);opacity:.7;margin-top:4px;font-size:.78rem}.den .logo-stage{opacity:0;transform:translateY(24px)scale(.9)}.den .card>*{opacity:0;transform:translateY(14px)}.den .card{opacity:0;transform:translateY(26px)scale(.985)}.den .auth.is-in .logo-stage{opacity:1;transform:translate3d(var(--fox-x,0), var(--fox-y,0), 0);transition:opacity .6s ease, transform .7s var(--ease-spring)}.den .auth.is-in .card{opacity:1;transition:opacity .6s ease 80ms, transform .7s var(--ease-out) 80ms;transform:none}.den .auth.is-in .card>*{opacity:1;transition:opacity .5s ease, transform .5s var(--ease-out);transform:none}.den .auth.is-in .card>:nth-child(2){transition-delay:.16s}.den .auth.is-in .card>:nth-child(3){transition-delay:.22s}@media (max-width:400px){.den .card{padding:64px 26px 26px}.den .logo-stage{width:100px;height:100px;margin-bottom:-46px}.den .logo-badge img{width:54px}.den .brand{font-size:1.7rem}}@media (prefers-reduced-motion:reduce){.den .orb,.den .mote,.den .grain,.den .logo-stage,.den .logo-ring{animation:none}.den .logo-stage,.den .card,.den .card>*{opacity:1!important;transition:none!important;transform:none!important}.den .btn.walking .leg,.den .btn.walking .arm,.den .btn.walking .person__bob{animation:none!important}}
