.auth-body{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-container{width:100%;max-width:420px;padding:var(--space-6)}.auth-logo{justify-content:center;align-items:center;gap:var(--space-2);margin-bottom:var(--space-8);color:var(--color-secondary);letter-spacing:var(--tracking-tight);font-size:1.25rem;font-weight:700;display:flex}.auth-logo svg{color:var(--color-primary)}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-8);border-radius:16px}.auth-title{color:var(--color-secondary);margin-bottom:var(--space-1);letter-spacing:var(--tracking-tight);font-size:1.5rem;font-weight:800}.auth-subtitle{font-size:var(--fs-body-sm);color:var(--color-text-muted);margin-bottom:var(--space-6)}.auth-message{padding:var(--space-3) var(--space-4);font-size:var(--fs-body-sm);margin-bottom:var(--space-4);line-height:var(--lh-normal);border-radius:10px}.auth-message--error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.auth-message--success{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0}.auth-form{gap:var(--space-4);flex-direction:column;display:flex}.auth-field{gap:var(--space-1);flex-direction:column;display:flex}.auth-fields-row{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.auth-field label{font-size:var(--fs-body-sm);color:var(--color-text);font-weight:600}.auth-field input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);font-size:var(--fs-body);font-family:var(--font-primary);color:var(--color-text);background:var(--color-bg);box-sizing:border-box;border-radius:10px;outline:none;transition:border-color .15s,box-shadow .15s}.auth-field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-bg)}.auth-field input::placeholder{color:var(--color-text-subtle)}.auth-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:13px var(--space-4);font-size:var(--fs-body);font-weight:700;font-family:var(--font-primary);cursor:pointer;margin-top:var(--space-2);letter-spacing:.01em;border:none;border-radius:10px;transition:background .15s,opacity .15s,transform .1s;display:flex}.auth-btn--primary{background:var(--gradient-cta);color:#fff}.auth-btn--primary:hover{opacity:.92;transform:translateY(-1px)}.auth-btn--primary:active{transform:translateY(0)}.auth-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-btn__loader svg{animation:1s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-toggle{justify-content:center;align-items:center;gap:var(--space-1);margin-top:var(--space-5);font-size:var(--fs-body-sm);color:var(--color-text-muted);display:flex}.auth-link{color:var(--color-primary);cursor:pointer;font-weight:600;font-size:var(--fs-body-sm);font-family:var(--font-primary);background:0 0;border:none;padding:0;transition:color .15s}.auth-link:hover{color:var(--color-primary-dark)}.auth-back{text-align:center;margin-top:var(--space-6);font-size:var(--fs-body-sm);color:var(--color-text-muted);text-decoration:none;transition:color .15s;display:block}.auth-back:hover{color:var(--color-primary)}.auth-modal{z-index:1000;opacity:0;pointer-events:none;transition:opacity .2s var(--ease-out);padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-modal.is-open{opacity:1;pointer-events:all}.auth-modal__overlay{-webkit-backdrop-filter:blur(4px);background:#000000a6;position:absolute;inset:0}.auth-modal__box{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-8);width:min(520px,100%);transition:transform .25s var(--ease-out);border-radius:20px;position:relative;transform:scale(.95)translateY(8px);box-shadow:0 24px 64px #00000040}.auth-modal.is-open .auth-modal__box{transform:scale(1)translateY(0)}.auth-modal__close{top:var(--space-4);right:var(--space-4);border:1px solid var(--color-border);background:var(--color-bg);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s,background .15s;display:flex;position:absolute}.auth-modal__close:hover{color:var(--color-secondary);border-color:var(--color-secondary);background:var(--color-surface)}.auth-modal__header{margin-bottom:var(--space-6)}.auth-modal__icon{background:var(--color-primary-bg);width:44px;height:44px;color:var(--color-primary);margin-bottom:var(--space-3);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.auth-modal__title{color:var(--color-secondary);margin-bottom:var(--space-1);letter-spacing:var(--tracking-tight);font-size:1.375rem;font-weight:800}.auth-modal__subtitle{font-size:var(--fs-body-sm);color:var(--color-text-muted)}.auth-badge{align-items:center;gap:var(--space-1);color:var(--color-primary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--space-3);background:#00b8941a;border:1px solid #00b89440;border-radius:999px;padding:3px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.auth-login-cta{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:12px;display:flex}.auth-login-cta__label{font-size:var(--fs-body-sm);color:var(--color-text-muted)}.auth-login-cta__btn{border:1.5px solid var(--color-primary);color:var(--color-primary);font-size:var(--fs-body-sm);font-weight:700;font-family:var(--font-primary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;transition:background .15s,color .15s;display:inline-flex}.auth-login-cta__btn:hover{background:var(--color-primary);color:#fff}.auth-modal{display:none!important}@media (width<=480px){.auth-container{padding:var(--space-4)}.auth-card{padding:var(--space-6)}.auth-fields-row{grid-template-columns:1fr}.auth-login-cta{align-items:flex-start;gap:var(--space-2);flex-direction:column}}
