.auth-wrap{background:var(--bg);place-items:center;min-height:100dvh;padding:1.5rem;display:grid}.auth-card{text-align:center;width:100%;max-width:360px}.auth-mark{width:auto;height:26px;margin:0 auto 2.25rem;display:block}.auth-title{font-family:var(--jp);letter-spacing:.01em;margin:0;font-size:1.45rem;font-weight:600}.auth-sub{color:var(--muted);margin-top:.55rem;font-size:.88rem;line-height:1.7}.btn-oauth{width:100%;font:inherit;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #16171b2e;border-radius:11px;justify-content:center;align-items:center;gap:.6rem;margin-top:1.6rem;padding:.8rem;font-size:.92rem;font-weight:500;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.btn-oauth:hover:not(:disabled){background:#fbfaf8;border-color:#16171b47;box-shadow:0 1px 3px #0000000f}.btn-oauth:disabled{opacity:.6;cursor:default}.oauth-g{flex-shrink:0}.auth-divider{align-items:center;gap:.85rem;margin:1.3rem 0 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.auth-divider span{color:var(--muted);font-size:.74rem}.auth-form{text-align:left;flex-direction:column;gap:1.1rem;margin-top:2rem;display:flex}.field{flex-direction:column;gap:.42rem;display:flex}.field-head{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.field label{letter-spacing:.02em;color:var(--ink);font-size:.78rem;font-weight:500}.field input{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #16171b29;border-radius:11px;padding:.82rem .9rem;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.field input::placeholder{color:#16171b54}.field input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #d9482b21}.pw-wrap{display:flex;position:relative}.pw-wrap input{padding-right:2.9rem}.pw-toggle{color:#16171b66;cursor:pointer;background:0 0;border:none;border-radius:8px;place-items:center;width:2.2rem;height:2.2rem;transition:color .15s,background .15s;display:grid;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.pw-toggle:hover{color:var(--ink);background:#16171b0d}.forgot{color:var(--muted);font-size:.76rem;text-decoration:none;transition:color .15s}.forgot:hover{color:var(--accent)}.auth-error{color:var(--accent-deep);background:#d9482b12;border:1px solid #d9482b33;border-radius:9px;padding:.6rem .75rem;font-size:.83rem;line-height:1.6}.btn-primary{width:100%;font:inherit;background:var(--ink);color:var(--on-dark);cursor:pointer;border:none;border-radius:11px;margin-top:.15rem;padding:.9rem;font-size:.95rem;font-weight:600;transition:transform .12s,background .15s,box-shadow .15s;box-shadow:0 1px 2px #0000001f}.btn-primary:hover:not(:disabled){background:#000;transform:translateY(-1px);box-shadow:0 6px 16px #00000029}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:default}.auth-alt{color:var(--muted);margin-top:1.6rem;font-size:.86rem}.auth-alt a{color:var(--accent);font-weight:500;text-decoration:none}.auth-alt a:hover{text-underline-offset:2px;text-decoration:underline}.auth-legal{color:#16171b73;margin-top:1.8rem;font-size:.72rem;line-height:1.8}.auth-legal a{color:inherit;text-underline-offset:2px;text-decoration:underline}.auth-done{text-align:left;color:var(--ink);background:#c79a541a;border:1px solid #c79a5459;border-radius:12px;margin-top:1.7rem;padding:1rem 1.1rem;font-size:.88rem;line-height:1.85}@media (prefers-reduced-motion:no-preference){.auth-card{animation:.4s cubic-bezier(.2,.7,.2,1) both auth-rise}@keyframes auth-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
