.auth-root{position:fixed;inset:0;z-index:0;background:var(--salon-app-bg);color:var(--salon-text);min-height:100vh;min-height:100dvh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.auth-root *{box-sizing:border-box}.auth-scroll{min-height:100%;min-height:100dvh}.auth-bg-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 80% 70% at 50% 40%,rgba(var(--salon-primary-rgb),.08) 0,rgba(var(--salon-primary-rgb),.04) 40%,transparent 70%)}@keyframes auth-card-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.auth-card-animate{animation:auth-card-in .4s ease-out forwards}.auth-card-outer{border-radius:var(--salon-radius);padding:1px;background:linear-gradient(135deg,rgba(var(--salon-primary-rgb),.15) 0,rgba(var(--salon-primary-rgb),.06) 50%,rgba(var(--salon-primary-rgb),.1) 100%);box-shadow:var(--salon-shadow-accent),var(--salon-shadow-2);border:1px solid var(--salon-accent-border)}.auth-card-inner{position:relative;background:var(--salon-surface);color:var(--salon-text);border-radius:calc(var(--salon-radius) - 1px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}.auth-title{font-size:1.875rem;font-weight:600}.auth-heading,.auth-title{letter-spacing:-.02em;color:var(--salon-text)}.auth-heading{font-size:1.25rem;font-weight:700}.auth-subtitle{font-size:1rem;font-weight:500;color:var(--salon-text-2)}.auth-muted{font-size:.8125rem;color:var(--salon-muted)}.auth-label{display:block;font-size:.875rem;font-weight:500;color:var(--salon-text-2);margin-bottom:.375rem}.auth-input{width:100%;height:2.75rem;padding-left:2.5rem;padding-right:1rem;border-radius:var(--salon-radius-sm);border:1px solid var(--salon-border-strong);background:var(--salon-surface-2);color:var(--salon-text);font-size:.875rem;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.auth-input::placeholder{color:var(--salon-muted-2)}.auth-input:focus{background:var(--salon-surface);border-color:var(--salon-primary);box-shadow:0 0 0 3px var(--salon-ring)}.auth-input:disabled{opacity:.6;cursor:not-allowed}.auth-input-with-toggle{padding-right:2.75rem}.auth-input-icon{left:.75rem;width:1rem;height:1rem;pointer-events:none}.auth-input-icon,.auth-toggle-btn{position:absolute;top:50%;transform:translateY(-50%);color:var(--salon-muted)}.auth-toggle-btn{right:.75rem;padding:.25rem;border-radius:.5rem;background:transparent;border:none;cursor:pointer;transition:color .2s,background .2s}.auth-toggle-btn:hover:not(:disabled){color:var(--salon-text);background:var(--salon-soft-hover)}.auth-toggle-btn:focus{outline:none;box-shadow:0 0 0 2px var(--salon-ring)}.auth-toggle-btn:disabled{opacity:.5}.auth-btn-primary{background:var(--salon-primary);color:#000000;box-shadow:var(--salon-shadow-accent);transition:background .2s,transform .2s,box-shadow .2s}.auth-btn-primary:hover:not(:disabled){background:var(--salon-primary-hover);box-shadow:0 8px 24px rgba(var(--salon-primary-rgb),.35);transform:translateY(-1px)}.auth-btn-primary:focus{outline:none;box-shadow:0 0 0 3px var(--salon-ring-strong)}.auth-btn-primary:disabled{opacity:.7;cursor:not-allowed}.auth-btn{width:100%;min-height:2.75rem;height:2.75rem;border-radius:var(--salon-radius-sm);font-size:.875rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.auth-btn-secondary{background:transparent;color:var(--salon-primary);border:2px solid var(--salon-primary);transition:background .2s,color .2s}.auth-btn-secondary:hover:not(:disabled){background:var(--salon-accent-bg)}.auth-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.auth-link{font-size:.875rem;font-weight:500;color:var(--salon-primary);text-decoration:none;transition:color .2s,text-decoration .2s}.auth-link:hover{color:var(--salon-primary-hover);text-decoration:underline}.auth-link-muted{font-size:.75rem;color:var(--salon-muted)}.auth-link-muted:hover{color:var(--salon-text)}.auth-alert{border-radius:var(--salon-radius-sm);padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:opacity .2s}.auth-alert-error{border:1px solid var(--salon-danger-border);background:var(--salon-danger-bg);color:var(--salon-danger)}.auth-alert-success{border:1px solid var(--salon-success-border);background:var(--salon-success-bg);color:var(--salon-success)}.auth-alert-warning{border:1px solid var(--salon-warning-border);background:var(--salon-warning-bg);color:var(--salon-warning)}.auth-alert-info{border:1px solid var(--salon-accent-border);background:var(--salon-accent-bg);color:var(--salon-primary)}.auth-divider{border-top:1px solid var(--salon-border)}.auth-card-padding{padding:1.5rem}@media (min-width:768px){.auth-card-padding{padding:2.5rem}}.auth-page-wrap{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:3.5rem 1rem 2.5rem}@media (min-width:768px){.auth-page-wrap{justify-content:center;padding:0 1rem}}.auth-page-card{width:100%;max-width:420px;flex-shrink:0}@media (max-width:767px){.auth-title{font-size:1.5rem}.auth-heading{font-size:1.125rem}.auth-btn{width:100%}}