:root{color:var(--paper);background:var(--ink)}
body{margin:0;min-height:100vh}
.auth-page{overflow-x:hidden}
.auth-shell{width:min(100% - 88px,1280px);margin:0 auto;min-height:100vh}
.auth-header{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.auth-main{position:relative;min-height:calc(100vh - 88px);display:flex;align-items:center;justify-content:center;padding:30px 0 85px}
.auth-content{position:relative;z-index:2;width:min(100%,680px)}
.auth-content h1{margin:0 0 28px;font-size:clamp(52px,6.1vw,92px);font-weight:900;letter-spacing:-.07em;line-height:.92}
.auth-content h1 span{color:var(--lime)}
.auth-card{width:min(100%,480px);margin-inline:auto;padding:36px 40px 29px;border:1px solid #3b4137;border-radius:10px;background:#11140f}
.field{margin-bottom:22px}
.field label{display:block;margin-bottom:10px;font-size:14px;font-weight:700}
.field__hint{margin:-4px 0 10px;color:#a4aa9f;font-size:12px;line-height:1.4}
.field input{display:block;width:100%;height:50px;padding:0 16px;border:1px solid #5b6257;border-radius:6px;background:#191d18;color:var(--paper);outline:none}
.field input::placeholder{color:#92988e}
.field input:focus{border-color:var(--lime);box-shadow:0 0 0 2px rgba(200,255,56,.16)}
.password-field{position:relative}
.password-field input{padding-right:54px}
.password-toggle{position:absolute;right:7px;top:5px;width:40px;height:40px;display:grid;place-items:center;border:0;background:transparent;color:#b7bdb3}
.eye{width:19px;height:12px;border:2px solid currentColor;border-radius:80% 10%;transform:rotate(45deg);position:relative}
.eye:before{content:"";position:absolute;left:5px;top:2px;width:5px;height:5px;border-radius:50%;background:currentColor}
.eye:after{content:"";position:absolute;left:7px;top:-5px;width:2px;height:21px;background:currentColor;transform:rotate(45deg)}
.password-toggle[aria-pressed=true] .eye:after{display:none}
.auth-primary,.auth-google{min-height:55px;width:100%;display:flex;align-items:center;justify-content:center;border-radius:6px;font-size:15px;font-weight:800}
.auth-primary{border:1px solid var(--lime);background:var(--lime);color:var(--ink)}
.auth-primary:hover{background:#d9ff74}
.auth-google{gap:15px;border:1px solid var(--paper);background:transparent;color:var(--paper)}
.auth-google:hover{border-color:var(--lime);color:var(--lime)}
.google-mark{font-size:20px;font-weight:900;color:#4285f4}
.auth-divider{display:flex;align-items:center;gap:18px;margin:22px 0;color:#b5b9b0;font-size:12px}
.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#4b5148}
.auth-note{margin:19px 0 0;text-align:center;color:#a0a59d;font-size:12px}
.auth-switch{margin:20px 0 0;text-align:center;font-size:13px}
.auth-switch--login{margin-top:43px}
.auth-switch a{margin-left:3px;color:var(--lime);text-decoration:underline;text-underline-offset:4px}
.auth-dialog{width:min(100% - 36px,440px);padding:32px;border:1px solid #59604f;border-radius:10px;background:#181c16;color:var(--paper);box-shadow:0 24px 80px #0009}
.auth-dialog::backdrop{background:rgba(0,0,0,.72)}
.auth-dialog__mark{margin-bottom:20px;font-size:25px;font-weight:900;color:#4285f4}
.auth-dialog h2{margin:0 0 12px;font-size:27px;letter-spacing:-.04em}
.auth-dialog p{margin:0 0 28px;color:#b2b8ad;font-size:15px;line-height:1.5}
.auth-dialog__close{min-height:46px;width:100%;border:1px solid var(--lime);border-radius:5px;background:var(--lime);color:var(--ink);font-weight:800}
.auth-error{margin:0 0 21px;padding:11px 13px;border:1px solid #b34b3d;border-radius:5px;color:#ffb9ae;font-size:13px;line-height:1.4}
.auth-art{position:absolute;inset:0;z-index:1;pointer-events:none}
.auth-art__star{position:absolute;width:235px;height:235px;top:39%;right:3%;background:var(--lime);opacity:.5;clip-path:polygon(50% 0,57% 34%,82% 15%,67% 43%,100% 50%,67% 57%,82% 85%,57% 66%,50% 100%,43% 66%,18% 85%,33% 57%,0 50%,33% 43%,18% 15%,43% 34%)}
.auth-art__boost{position:absolute;top:48%;right:2%;color:#788867;font-size:clamp(80px,12vw,180px);font-weight:900;letter-spacing:-.12em;-webkit-text-stroke:1px #788867;color:transparent}
@media(max-width:900px){.auth-art{opacity:.6}.auth-art__star,.auth-art__boost{right:0}.auth-content{max-width:650px}}
@media(max-width:600px){.auth-shell{width:min(100% - 36px,1280px)}.auth-header{height:72px}.auth-main{min-height:calc(100vh - 72px);padding:55px 0 70px}.auth-content h1{font-size:clamp(49px,12vw,70px);margin-bottom:26px}.auth-card{padding:27px 22px 25px}.auth-art{opacity:.2}.auth-art__star{width:165px;height:165px;top:17%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
