[hidden]{display:none!important}
.auth-screen{position:relative;isolation:isolate;min-height:100dvh;display:grid;place-items:center;padding:calc(10px + env(safe-area-inset-top)) 12px calc(10px + env(safe-area-inset-bottom));overflow-x:hidden;background:radial-gradient(ellipse at 50% 0%,#26463a 0%,#101f23 48%,#071014 100%);color:#f5f8f5;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.field-art{pointer-events:none;position:absolute;inset:0;z-index:-1;opacity:.21;background:repeating-linear-gradient(0deg,transparent 0 72px,#9fdc92 73px 74px,transparent 75px 145px),linear-gradient(90deg,transparent 9%,#9fdc92 9.3%,transparent 9.6%,transparent 90%,#9fdc92 90.3%,transparent 90.6%);mask-image:linear-gradient(to bottom,#000,transparent 90%);transform:perspective(700px) rotateX(22deg) scale(1.2)}
.auth-panel{width:min(100%,410px);padding:18px clamp(15px,4vw,28px) 14px;border:1px solid #456352;border-radius:20px;background:linear-gradient(155deg,#14262beF,#0c171ced);box-shadow:0 16px 70px #0008;backdrop-filter:blur(8px)}
.auth-logo{display:block;width:clamp(82px,13dvh,130px);height:clamp(82px,13dvh,130px);object-fit:contain;margin:0 auto 5px;filter:drop-shadow(0 4px 12px #0008)}
.auth-panel h1{font-size:clamp(1.28rem,4.8vw,1.65rem);letter-spacing:.015em;line-height:1.15;text-align:center;margin:0}
.auth-subtitle{text-align:center;font-size:.61rem;letter-spacing:.14em;color:#b9d5c2;margin:7px 0 15px}
.auth-panel h2{font-size:1rem;margin:0 0 9px;font-weight:750}
.auth-panel label{display:block;font-size:.79rem;font-weight:650;margin:9px 0 5px}
.auth-panel input{display:block;width:100%;min-height:43px;padding:10px 12px;border:1px solid #6d847a;border-radius:9px;background:#081317;color:#fff;font:inherit;font-size:16px}
.auth-panel input::placeholder{color:#91a49e}.auth-panel :is(input,button):focus-visible{outline:2px solid #b9f474;outline-offset:2px}
.password-wrap{position:relative}.password-wrap input{padding-right:68px}#auth-reveal{position:absolute;right:4px;top:3px;min-width:58px;height:37px;border:0;background:transparent;color:#c8f4a1;font:600 .79rem system-ui;cursor:pointer}
#auth-submit{width:100%;min-height:44px;margin-top:15px;border:0;border-radius:9px;background:#b3ec5a;color:#14220a;font-weight:800;font-size:.96rem;cursor:pointer}#auth-submit:disabled,.auth-google:disabled{opacity:.65;cursor:wait}
#auth-message{margin:6px 0 0;min-height:0;font-size:.78rem;line-height:1.35;color:#ffd1b6}#auth-message:empty{display:none}
.auth-divider{display:flex;align-items:center;gap:12px;margin:12px 0;color:#adbfba;font-size:.7rem}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#4b625c}
.auth-google{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;min-height:44px;border:1px solid #dadce0;border-radius:8px;background:#fff;color:#1f1f1f;font:600 .88rem system-ui;cursor:pointer}
.auth-links{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.auth-links button,.google-signup{border:0;background:none;color:#c4f18a;font:600 .81rem system-ui;min-height:34px;cursor:pointer}.auth-links button:first-child{font-weight:800}.google-signup{display:block;margin:0 auto;text-decoration:underline}
.auth-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:7px 15px;margin-top:11px;padding-top:10px;border-top:1px solid #2f4742;color:#a9bcb5;font-size:.68rem}
@media(max-height:740px){.auth-panel{padding-top:10px;padding-bottom:9px}.auth-logo{width:75px;height:75px}.auth-subtitle{margin-bottom:8px}.auth-footer{margin-top:5px;padding-top:6px}}
@media(prefers-reduced-motion:no-preference){.auth-panel{animation:auth-appear .3s ease-out}@keyframes auth-appear{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}}