@font-face{font-family:StoneCrusher;src:url('/auth/stone-crusher.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Kurale;src:url('/auth/kurale.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
:root{font-family:Kurale,Georgia,serif;color:#f4edff;background:#000;color-scheme:dark;font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0;background:#000}button,input{font:inherit}button{touch-action:manipulation}h1,h2,p{margin:0}
.entry{position:relative;min-height:100svh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(28px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) calc(30px + env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));overflow:hidden}
.wordmark{position:relative;z-index:1;width:min(100%,520px);text-align:center;font:400 clamp(58px,12vw,92px)/.82 StoneCrusher,Georgia,serif;letter-spacing:-.3px;color:#faf4ff;text-shadow:0 0 24px #61228b44}
.wordmark span{display:block}.wordmark span+span{font-size:1.07em;margin-top:7px}
.threshold{position:relative;flex:none;width:132px;height:64px;margin:39px 0 32px;border:1px solid #79572f;border-radius:50%;transform:rotate(-15deg);background:radial-gradient(ellipse,#2c124744,transparent 68%);box-shadow:0 0 28px #4b1a6722,inset 0 0 20px #4b1a6730}
.threshold:before,.threshold:after{content:'';position:absolute;border-radius:50%;inset:5px -5px;border:1px solid #59387777;transform:rotate(20deg)}
.threshold:after{inset:-3px 5px;transform:rotate(-11deg);border-color:#a58c4060}.threshold span{position:absolute;width:5px;height:5px;right:12px;top:9px;background:#d6b64a;transform:rotate(45deg);box-shadow:0 0 12px #bba34a55}
.entry-form{position:relative;z-index:1;width:min(100%,300px);text-align:center}.entry-form h2{font-size:27px;font-weight:400;line-height:1.25}.entry-caption{color:#b8a8c9;font-size:16px;margin-top:8px;line-height:1.4}
form{margin-top:30px;text-align:left}label{display:block;font-size:14px;color:#cfc0df;margin-bottom:11px}
input{display:block;width:100%;height:60px;padding:8px 0 8px 16px;border:0;border-bottom:1px solid #76613b;border-radius:0;background:#120d1844;color:#f8e6aa;outline:0;font:400 30px/1.2 Kurale,Georgia,serif;letter-spacing:16px;text-align:center;transition:border-color .2s,background .2s}
input::placeholder{color:#7c688a;opacity:1}input:focus{border-color:#d4b047;background:#20122d66}input[aria-invalid=true]{border-color:#d99a92}
button{position:relative;margin-top:28px;display:flex;align-items:center;justify-content:center;gap:32px;width:100%;min-height:54px;border:1px solid #a68532;border-radius:0;background:linear-gradient(100deg,#2c153b44,#110b18,#2c153b44);color:#f3dfa1;cursor:pointer;font-size:20px;transition:background .18s,border-color .18s}
button:before,button:after{content:'';position:absolute;width:5px;height:5px;background:#000;border:1px solid #c7a63e;transform:rotate(45deg);top:calc(50% - 3px)}button:before{left:-3px}button:after{right:-3px}.button-arrow{font-family:Georgia,serif;font-size:22px;font-weight:400}
button:hover{background:#261631;border-color:#dfba4d}button:focus-visible{outline:2px solid #e2bb4a;outline-offset:5px}button:disabled{opacity:.65;cursor:wait}
.form-error,#auth-error{color:#e5b0a9;font-size:15px;line-height:1.4;margin-top:14px;min-height:21px}.form-error[hidden]{display:none}
.entry-footer{margin-top:56px;color:#877692;text-align:center;font-size:13px;line-height:1.6;letter-spacing:.2px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:800px){.entry{padding-top:40px;padding-bottom:40px}.threshold{margin-top:45px;margin-bottom:35px}.entry-footer{margin-top:64px}}
@media(max-height:700px){.entry{justify-content:flex-start;padding-top:calc(25px + env(safe-area-inset-top))}.wordmark{font-size:clamp(52px,11vw,72px)}.threshold{width:108px;height:48px;margin:25px 0 23px}.entry-form h2{font-size:24px}form{margin-top:22px}button{margin-top:22px}.entry-footer{margin-top:28px}}
@media(prefers-reduced-motion:reduce){input,button{transition:none}}
