/*! Den — Sign in — © 2026 Hasib (OVERSHOOT). All rights reserved. Licensed, not sold: see LICENSE.md. */*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg-1: #191d2a;--bg-2: #0e1017;--accent: #7ab3ff;--accent-2: #a7ccff;--accent-deep: #4f8ff0;--ink: #eef2f8;--muted: rgba(238, 242, 248, .6);--faint: rgba(238, 242, 248, .4);--line: rgba(255, 255, 255, .1);--field: rgba(255, 255, 255, .045);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out: cubic-bezier(.22, .72, .16, 1);font-family:Manrope,system-ui,-apple-system,sans-serif}html,body{width:100%;min-height:100%;background:var(--bg-2);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:40px 20px;overflow-x:hidden}.ambient{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.ambient:before{content:"";position:absolute;inset:0;background:radial-gradient(120% 80% at 50% -10%,#232a3c 0%,transparent 60%),linear-gradient(180deg,var(--bg-1),var(--bg-2) 72%)}.orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5;mix-blend-mode:screen;will-change:transform}.orb--a{width:46vmax;height:46vmax;left:-14vmax;top:-18vmax;background:radial-gradient(closest-side,rgba(122,179,255,.55),transparent);animation:float-a 22s ease-in-out infinite}.orb--b{width:40vmax;height:40vmax;right:-16vmax;bottom:-20vmax;background:radial-gradient(closest-side,rgba(110,205,200,.4),transparent);animation:float-b 28s ease-in-out infinite}@keyframes float-a{0%,to{transform:translate(0) scale(1)}50%{transform:translate(6vmax,4vmax) scale(1.1)}}@keyframes float-b{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-5vmax,-3vmax) scale(1.12)}}.motes{position:absolute;inset:0}.mote{position:absolute;width:3px;height:3px;border-radius:50%;background:radial-gradient(circle,rgba(200,222,255,.9),transparent 70%);animation:mote-drift var(--dur, 14s) ease-in-out infinite alternate;opacity:0}@keyframes mote-drift{0%{opacity:0;transform:translate(0)}20%{opacity:.7}to{opacity:0;transform:translate(var(--dx, 20px),var(--dy, -60px))}}.grain{position:absolute;inset:-50%;background-image:url(./textures/grain.png);background-size:260px;opacity:.05;animation:grain 6s steps(6) infinite}@keyframes 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)}}.auth{position:relative;z-index:1;width:min(92vw,410px);display:flex;flex-direction:column;align-items:center}.fox-stage{position:relative;z-index:3;width:232px;margin-bottom:-46px;filter:drop-shadow(0 22px 26px rgba(0,0,0,.45));transform:translate3d(var(--fox-x, 0),var(--fox-y, 0),0)}.fox{display:block;width:100%;height:auto;overflow:visible}.fox__shadow{fill:#00000047;filter:blur(4px)}.eye__ball{transform:translate(var(--px, 0px),var(--py, 0px))}.ear,.eye,.paw,.tongue{transform-box:fill-box;transform-origin:center}.ear--l,.ear--r{transform-origin:50% 94%}.eye{transition:transform .12s ease}.fox.is-blink .eye{transform:scaleY(.08)}.mouth{fill:none;stroke:#2b2b33;stroke-width:3;stroke-linecap:round}.tongue{opacity:0;transform-origin:center top;transform:scaleY(.35);transition:opacity .25s ease,transform .32s var(--ease-spring)}.blush{opacity:.5;transition:opacity .35s ease}.ear{transition:transform .4s var(--ease-spring)}.paw{transform:translateY(116px) scale(.88);transition:transform .44s var(--ease-spring);filter:drop-shadow(0 6px 6px rgba(0,0,0,.22))}.fox.is-cover .paw{transform:translateY(0) scale(1)}.fox.is-cover .blush{opacity:.95}.fox.is-cover .ear--l{transform:rotate(-9deg)}.fox.is-cover .ear--r{transform:rotate(9deg)}.fox.is-peek .paw{transform:translateY(50px) scale(1);transition:transform .34s var(--ease-out)}.fox.is-peek .blush{opacity:.95}.fox.is-peek .ear--l{transform:rotate(-5deg)}.fox.is-peek .ear--r{transform:rotate(5deg)}.fox.is-happy .eye{transform:scaleY(.18)}.fox.is-happy .blush{opacity:.85}.fox.is-happy .mouth{transform:translateY(1px)}.fox.is-happy .tongue{opacity:1;transform:scaleY(1)}.fox{animation:fox-bob 5.2s ease-in-out infinite}@keyframes fox-bob{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(-.6deg)}}.card{position:relative;z-index:2;width:100%;padding:58px 34px 30px;border-radius:26px;background:linear-gradient(162deg,#2a30409e,#11151f80);backdrop-filter:blur(26px) saturate(1.3);-webkit-backdrop-filter:blur(26px) saturate(1.3);border:1px solid rgba(255,255,255,.14);box-shadow:0 44px 90px #00000080,0 2px 8px #0000004d,inset 0 1px #ffffff2e;overflow:hidden}.card__sheen{position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(280px circle at var(--mx, 50%) var(--my, -10%),rgba(255,255,255,.14),transparent 45%)}.card__head{text-align:center;margin-bottom:22px}.brand{font-family:Sora,sans-serif;font-weight:700;font-size:2.1rem;letter-spacing:-.02em;background:linear-gradient(120deg,var(--accent-2),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}.sub{margin-top:5px;font-size:.9rem;font-weight:400;color:var(--muted)}.form{display:flex;flex-direction:column;gap:15px}.field{position:relative}.field input{width:100%;padding:21px 16px 8px;font-size:1rem;font-weight:500;color:var(--ink);background:var(--field);border:1px solid var(--line);border-radius:13px;outline:none;transition:border-color .25s ease,background .25s ease,box-shadow .25s ease}#password{padding-right:48px}.field input:focus{border-color:var(--accent);background:#ffffff14;box-shadow:0 0 0 3px #7ab3ff38}.field label{position:absolute;left:16px;top:16px;font-size:1rem;color:var(--muted);pointer-events:none;transform-origin:left top;transition:transform .2s ease,color .2s ease}.field input:focus+label,.field input:not(:placeholder-shown)+label{transform:translateY(-11px) scale(.72);color:var(--accent-2)}.reveal{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;background:transparent;border:0;border-radius:10px;color:var(--muted);cursor:pointer;transition:color .2s ease,background .2s ease}.reveal:hover{color:var(--ink);background:#ffffff14}.reveal svg{width:20px;height:20px}.reveal .icon-off,.reveal.is-on .icon-on{display:none}.reveal.is-on .icon-off{display:block}.row{display:flex;align-items:center;justify-content:space-between;font-size:.85rem;margin-top:1px}.check{display:inline-flex;align-items:center;gap:9px;cursor:pointer;color:var(--muted);user-select:none}.check input{position:absolute;opacity:0;width:0;height:0}.check__box{width:18px;height:18px;border-radius:6px;border:1px solid rgba(255,255,255,.26);background:#ffffff0d;display:grid;place-items:center;transition:background .2s ease,border-color .2s ease}.check__box:after{content:"";width:5px;height:9px;border:2px solid #10233f;border-top:0;border-left:0;transform:rotate(45deg) scale(0);margin-top:-2px;transition:transform .18s var(--ease-spring)}.check input:checked+.check__box{background:linear-gradient(135deg,var(--accent-2),var(--accent));border-color:transparent}.check input:checked+.check__box:after{transform:rotate(45deg) scale(1)}.check input:focus-visible+.check__box{box-shadow:0 0 0 3px #7ab3ff52}.link{color:var(--accent-2);text-decoration:none;transition:color .2s ease}.link:hover{color:var(--accent);text-decoration:underline}.btn{position:relative;margin-top:6px;min-height:60px;padding:0 18px 0 26px;display:flex;align-items:center;justify-content:space-between;gap:0;font-size:1.02rem;font-weight:700;color:#fff;background:linear-gradient(135deg,#3f7fe0,#2456a6 54%,#1b3f7e);border:1px solid rgba(150,190,255,.34);border-radius:14px;cursor:pointer;isolation:isolate;box-shadow:0 16px 30px -10px #1f4fa099,inset 0 1px #ffffff29;transition:transform .2s var(--ease-out),box-shadow .2s ease,filter .2s ease}.btn:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 22px 40px -12px #1f4fa0b8,inset 0 1px #fff3}.btn:active{transform:translateY(0) scale(.99)}.btn:disabled{cursor:default}.btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.doorbtn__label{position:relative;z-index:1;letter-spacing:.01em;white-space:nowrap;transition:opacity .3s ease}.btn.walking .doorbtn__label{opacity:.6}.dooric{position:relative;width:62px;height:38px;flex:none;perspective:300px;z-index:1}.dooric__frame{position:absolute;right:0;top:2px;width:28px;height:34px;border-radius:5px;overflow:hidden;background:linear-gradient(180deg,#0b1a38,#060d20);box-shadow:inset 0 0 0 1.5px #96beff4d}.dooric__glow{position:absolute;inset:0;background:radial-gradient(62% 72% at 50% 46%,#ffd696f2,#ffbe6e00 72%);opacity:0;transition:opacity .35s var(--ease-out)}.dooric__panel{position:absolute;right:0;top:2px;width:28px;height:34px;border-radius:5px;background:linear-gradient(180deg,var(--accent-2),var(--accent) 55%,var(--accent-deep));box-shadow:inset 0 0 0 1.5px #ffffff3d,inset -6px 0 10px #00000047;transform-origin:right center;transform:rotateY(0);transition:transform .42s var(--ease-out);backface-visibility:hidden}.dooric__handle{position:absolute;left:4px;top:50%;width:2.5px;height:10px;border-radius:2px;transform:translateY(-50%);background:linear-gradient(180deg,#fff,#cfe0ff)}.dooric__person{position:absolute;left:2px;bottom:2px;color:#fff;transition:transform .74s var(--ease-out),opacity .3s var(--ease-out) .36s}.dooric__person svg{display:block;overflow:visible}.leg,.arm,.shin{transform-box:fill-box;transform-origin:50% 0}.person__bob,.person{transform-box:fill-box;transform-origin:50% 100%}.leg--front{transform:rotate(11deg)}.leg--back{transform:rotate(-11deg)}.arm--front{transform:rotate(-9deg)}.arm--back{transform:rotate(9deg)}.leg--front .shin,.leg--back .shin{transform:rotate(7deg)}.person{transition:transform .25s var(--ease-out)}.btn.walking .person{transform:rotate(4deg)}.btn.walking .leg--front{animation:thighF .46s linear infinite}.btn.walking .leg--back{animation:thighB .46s linear infinite}.btn.walking .leg--front .shin{animation:shinF .46s linear infinite}.btn.walking .leg--back .shin{animation:shinB .46s linear infinite}.btn.walking .arm--front{animation:armF .46s linear infinite}.btn.walking .arm--back{animation:armB .46s linear infinite}.btn.walking .person__bob{animation:bob .23s linear infinite}@keyframes thighF{0%,to{transform:rotate(26deg)}50%{transform:rotate(-24deg)}}@keyframes thighB{0%,to{transform:rotate(-24deg)}50%{transform:rotate(26deg)}}@keyframes armF{0%,to{transform:rotate(-24deg)}50%{transform:rotate(24deg)}}@keyframes armB{0%,to{transform:rotate(24deg)}50%{transform:rotate(-24deg)}}@keyframes shinF{0%{transform:rotate(8deg)}25%{transform:rotate(48deg)}55%{transform:rotate(10deg)}to{transform:rotate(8deg)}}@keyframes shinB{0%{transform:rotate(34deg)}30%{transform:rotate(6deg)}78%{transform:rotate(44deg)}to{transform:rotate(34deg)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-1.4px)}}.btn.dooropen .dooric__panel{transform:rotateY(72deg)}.btn.dooropen .dooric__glow{opacity:.95}.btn.out .dooric__person{transform:translate(36px) scale(.72);opacity:0}.status{min-height:0;font-size:.8rem;color:var(--muted);text-align:center}.status:empty{display:none}.divider{display:flex;align-items:center;gap:12px;color:var(--faint);font-size:.72rem;letter-spacing:.02em}.divider:before,.divider:after{content:"";height:1px;flex:1;background:var(--line)}.socials{display:grid;grid-template-columns:1fr 1fr;gap:12px}.social{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px;border-radius:12px;background:#ffffff0d;border:1px solid var(--line);color:var(--ink);font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease,border-color .2s ease}.social:hover{background:#ffffff1c;border-color:#ffffff38;transform:translateY(-1px)}.social svg{width:18px;height:18px}.foot{text-align:center;font-size:.85rem;color:var(--muted);margin-top:2px}html.js .fox-stage{opacity:0;transform:translateY(24px) scale(.9)}html.js .card>*{opacity:0;transform:translateY(14px)}html.js .card{opacity:0;transform:translateY(26px) scale(.985)}html.js .auth.is-in .fox-stage{opacity:1;transform:translate3d(var(--fox-x,0),var(--fox-y,0),0);transition:opacity .6s ease,transform .7s var(--ease-spring)}html.js .auth.is-in .card{opacity:1;transform:none;transition:opacity .6s ease .08s,transform .7s var(--ease-out) .08s}html.js .auth.is-in .card>*{opacity:1;transform:none;transition:opacity .5s ease,transform .5s var(--ease-out)}html.js .auth.is-in .card>:nth-child(2){transition-delay:.16s}html.js .auth.is-in .card>:nth-child(3){transition-delay:.22s}@media(max-width:400px){.card{padding:54px 26px 26px}.fox-stage{width:190px;margin-bottom:-36px}.brand{font-size:1.9rem}}@media(prefers-reduced-motion:reduce){.orb,.mote,.grain,.fox{animation:none}html.js .fox-stage,html.js .card,html.js .card>*{opacity:1!important;transform:none!important;transition:none!important}.paw{transition:transform .2s ease}.btn.walking .leg,.btn.walking .arm,.btn.walking .person__bob{animation:none!important}}
