.auth-container{min-height:100vh;padding:var(--spacing-6)var(--spacing-4);background:var(--bg-main);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-container:before,.auth-container:after{content:"";filter:blur(80px);pointer-events:none;z-index:0;border-radius:50%;position:absolute}.auth-container:before{background:radial-gradient(circle,rgba(24,255,255,.12) 0%,transparent 70%);width:500px;height:500px;top:-120px;left:50%;transform:translate(-50%)}.auth-container:after{background:radial-gradient(circle,rgba(187,134,252,.08) 0%,transparent 70%);width:400px;height:400px;bottom:-100px;right:10%}.auth-card{z-index:1;-webkit-backdrop-filter:blur(24px);background:rgba(18,20,27,.85);border:1px solid rgba(255,255,255,.08);border-radius:20px;flex-direction:column;gap:1.5rem;width:100%;max-width:480px;padding:2.75rem 2.5rem;display:flex;position:relative;box-shadow:0 0 0 1px rgba(24,255,255,.04),0 24px 60px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.05)}.auth-brand{flex-direction:column;align-items:center;gap:.85rem;display:flex}.auth-logo-ring{background:linear-gradient(135deg,rgba(24,255,255,.15),rgba(187,134,252,.15));border:1px solid rgba(24,255,255,.25);border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;display:flex;box-shadow:0 0 20px rgba(24,255,255,.12)}.auth-logo-ring svg{width:26px;height:26px}.auth-header{text-align:center;flex-direction:column;gap:.4rem;display:flex}.auth-title{letter-spacing:-.02em;background:linear-gradient(135deg,#fff 30%,var(--accent-primary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.85rem;font-weight:700}.auth-subtitle{color:var(--text-secondary);margin:0;font-size:.9rem}.auth-form{flex-direction:column;gap:1.1rem;display:flex}.auth-name-row{grid-template-columns:1fr 1fr;gap:.875rem;display:grid}.input-group{flex-direction:column;gap:.45rem;display:flex}.input-group label{color:var(--text-secondary);letter-spacing:.01em;font-size:.8rem;font-weight:500}.password-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.password-input-wrapper .auth-input{padding-right:2.5rem}.password-toggle-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .15s;display:flex;position:absolute;right:.8rem}.password-toggle-btn:hover{color:var(--text-primary)}.password-hint{color:var(--text-muted);margin-top:.1rem;font-size:.75rem}.auth-divider{text-align:center;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;align-items:center;font-size:.75rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid rgba(255,255,255,.07);flex:1}.auth-divider:before{margin-right:1em}.auth-divider:after{margin-left:1em}.google-button{width:100%;color:var(--text-primary);cursor:pointer;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:10px;justify-content:center;align-items:center;gap:.6rem;padding:.75rem;font-size:.95rem;font-weight:500;transition:background .15s,border-color .15s,transform .15s;display:flex}.google-button:hover:not(:disabled){background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);transform:translateY(-1px)}.google-button:active:not(:disabled){transform:translateY(0)}.google-button:disabled{opacity:.7;cursor:not-allowed}.auth-footer{text-align:center;color:var(--text-secondary);margin-top:-.25rem;font-size:.85rem}.auth-footer a{color:var(--accent-primary);font-weight:600;transition:opacity .15s}.auth-footer a:hover{opacity:.8;color:var(--accent-primary)}.auth-error-banner{color:#fca5a5;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:10px;align-items:flex-start;gap:.6rem;padding:.7rem .9rem;font-size:.85rem;line-height:1.45;animation:.2s slideDown;display:flex}.auth-error-icon{color:#f87171;flex-shrink:0;margin-top:1px}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.google-button-spinner{border:2px solid rgba(255,255,255,.15);border-top-color:var(--accent-primary);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.terms-checkbox-group{margin-top:.2rem;margin-bottom:.5rem}.terms-label{color:var(--text-secondary);cursor:pointer;align-items:flex-start;gap:.5rem;font-size:.8rem;display:flex}.terms-label input[type=checkbox]{cursor:pointer;margin-top:.15rem}.terms-label a{color:var(--accent-primary);font-weight:500;text-decoration:none;transition:opacity .15s}.terms-label a:hover{opacity:.8;text-decoration:underline}.auth-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:rgba(0,0,0,.6);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.auth-modal{background:rgba(18,20,27,.95);border:1px solid rgba(255,255,255,.1);border-radius:16px;flex-direction:column;gap:1.2rem;width:100%;max-width:400px;padding:2rem;display:flex;box-shadow:0 24px 60px rgba(0,0,0,.6)}.auth-modal h3{color:var(--text-primary);margin:0;font-size:1.3rem}.auth-modal p{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.5}.auth-modal-actions{gap:1rem;margin-top:1rem;display:flex}.auth-modal .auth-button{flex:1;margin-top:0}@media (max-width:520px){.auth-card{padding:2rem 1.5rem}.auth-name-row{grid-template-columns:1fr}.auth-title{font-size:1.6rem}}
