.auth-page{background:radial-gradient(circle at 15% 12%,#6f4db324,#0000 28rem),radial-gradient(circle at 88% 88%,#b88a2f2b,#0000 25rem),#fbf6ea;place-items:center;min-height:100dvh;padding:2.5rem 1rem;display:grid}.auth-shell{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffcf4e6;border:1px solid #5f488a24;border-radius:1.75rem;width:min(100%,31rem);padding:clamp(1.5rem,5vw,2.75rem);box-shadow:0 24px 70px #3c265a1f}.auth-logo{width:fit-content;margin:0 auto 2.25rem;display:block}.auth-logo img{width:auto;height:2.15rem}.auth-heading{margin-bottom:1.8rem}.auth-heading p{color:var(--gold);font:700 .73rem/1 var(--font-heading);letter-spacing:.14em;text-transform:uppercase}.auth-heading h1{font:700 clamp(1.75rem, 5vw, 2.25rem)/1.15 var(--font-heading);letter-spacing:-.035em;margin-top:.65rem}.auth-heading>span{color:var(--muted);margin-top:.7rem;font-size:.93rem;line-height:1.65;display:block}.auth-form{gap:1.15rem;display:grid}.auth-form label{color:var(--foreground);font:650 .84rem/1.2 var(--font-heading);gap:.5rem;display:grid}.auth-label-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.auth-label-row a,.auth-switch a,.auth-legal a{color:var(--accent);font-weight:700;text-decoration:none}.auth-label-row a:hover,.auth-switch a:hover,.auth-legal a:hover{text-decoration:underline}.auth-form input{width:100%;height:3.2rem;color:var(--foreground);font:500 .95rem/1 var(--font-heading);background:#ffffffb8;border:1px solid #5f488a33;border-radius:.85rem;outline:none;padding:0 1rem;transition:border-color .2s,box-shadow .2s,background .2s}.auth-form input::placeholder{color:#9b94a8}.auth-form input:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #6f4db31f}.password-field{display:block;position:relative}.password-field input{padding-right:4rem}.password-field button{color:var(--accent);font:700 .76rem/1 var(--font-heading);cursor:pointer;padding:.45rem .55rem;position:absolute;top:50%;right:.45rem;transform:translateY(-50%)}.auth-submit,.google-button{width:100%;height:3.25rem;font:700 .94rem/1 var(--font-heading);cursor:pointer;border-radius:.9rem;transition:transform .2s,box-shadow .2s,opacity .2s}.auth-submit{background:var(--accent);color:#fff;margin-top:.15rem;box-shadow:0 10px 24px #6f4db338}.auth-submit:hover,.google-button:hover{transform:translateY(-1px)}.auth-submit:hover{background:var(--accent-strong);box-shadow:0 13px 28px #6f4db345}.auth-submit:disabled,.google-button:disabled{cursor:wait;opacity:.65;transform:none}.auth-divider{color:#8a8296;font:600 .72rem/1 var(--font-heading);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.75rem;margin:1.4rem 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#5f488a26;flex:1;height:1px}.google-button{color:#302b39;background:#fff;border:1px solid #5f488a33;justify-content:center;align-items:center;gap:.75rem;display:flex;box-shadow:0 6px 18px #2c1e400f}.google-button svg{width:1.25rem;height:1.25rem}.auth-message{font:600 .8rem/1.5 var(--font-heading);border-radius:.75rem;padding:.75rem .9rem}.auth-error{color:#9f2433;background:#fff0f1;border:1px solid #f2cbd0}.auth-success{color:#176542;background:#edfaf3;border:1px solid #bfe8d1}.auth-switch{text-align:center;color:var(--muted);font:500 .87rem/1.5 var(--font-heading);margin-top:1.6rem}.auth-legal{text-align:center;color:#80798d;max-width:23rem;font:400 .7rem/1.6 var(--font-heading);margin:1.6rem auto 0}@media (max-width:520px){.auth-page{place-items:start center;padding:1rem}.auth-shell{border-radius:1.35rem}.auth-logo{margin-bottom:1.8rem}}
