/* Final auth controls from the user supplied V82 preview. */
:root{--font-body:'Figtree',system-ui,sans-serif;--font-display:'Figtree',system-ui,sans-serif}
html{-webkit-font-smoothing:antialiased}
h1,h2{letter-spacing:-.035em!important;font-weight:800!important;line-height:1.05!important}
input[type=text],input[type=email],input[type=password],input:not([type]){height:54px!important;border-radius:16px!important;border:1.5px solid #eadff2!important;background:#fff!important;font-size:16px!important;font-weight:500!important;padding:0 18px!important;box-shadow:0 1px 2px rgba(40,25,90,.04)!important;transition:border-color .15s ease,box-shadow .15s ease!important}
input:focus{border-color:#7c3aed!important;box-shadow:0 0 0 4px rgba(124,58,237,.14)!important;outline:none!important}
label{font-weight:700!important;font-size:13.5px!important;color:#3a1a5a!important}
button,.btn{font-weight:800!important;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease!important}
button[type=submit],.btn{min-height:54px!important;border-radius:999px!important;box-shadow:0 14px 28px -14px rgba(27,0,54,.6)!important}
button:hover,.btn:hover{transform:translateY(-1px);filter:brightness(1.04)}
button:active,.btn:active{transform:scale(.98)}
a{transition:color .15s ease}


/* Premium finish, November 2026: visual-only refinements to the existing auth.
   Keep the approved layout, brand palette, elements and Figtree typography. */
html body:has([data-form]) {
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body:has([data-form]) .side{
  border-color:rgba(255,255,255,.94);
  box-shadow:0 2px 5px rgba(27,0,54,.035),0 18px 42px rgba(27,0,54,.075);
}
body:has([data-form]) .view h1{
  letter-spacing:-.04em!important;
  text-wrap:balance;
}
body:has([data-form]) .view .sub{line-height:1.55;color:#756681}
body:has([data-form]) .field label{letter-spacing:.005em}
body:has([data-form]) .input input{
  border-color:#ddcfe8!important;
  box-shadow:0 1px 2px rgba(27,0,54,.035)!important;
  color:#1b0036!important;
}
body:has([data-form]) .input input:hover{border-color:#cbb8dc!important}
body:has([data-form]) .input input:focus{
  border-color:#795496!important;
  box-shadow:0 0 0 3px rgba(121,84,150,.14),0 2px 7px rgba(27,0,54,.05)!important;
}
body:has([data-form]) .btn:not(.btn--ghost),
body:has([data-form]) button[type=submit]{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 11px 22px -13px rgba(27,0,54,.5)!important;
}
body:has([data-form]) :is(a,button,input):focus-visible{
  outline:2px solid #795496;
  outline-offset:3px;
}
@media(max-width:920px){
  body:has([data-form]) .side{
    box-shadow:0 2px 5px rgba(27,0,54,.025),0 14px 32px rgba(27,0,54,.065);
  }
}
