:root{--indigo-500:#6366f1;--violet-500:#8b5cf6;--primary:#6d5cff;--card:#fff;--slate-900:#0f172a;--slate-700:#334155;--slate-600:#475569;--slate-500:#64748b;--slate-400:#94a3b8;--line:#e5e7eb;--shadow:0 30px 60px #00000040;--radius:22px}.auth-bg{background-blend-mode:lighten,lighten,normal;background:radial-gradient(900px 600px at 30% 10%,#ffffffe6 0%,#f0fff899 50%,#0000 90%),radial-gradient(1200px 900px at 80% 80%,#aaffc859 0%,#8cffb440 40%,#0000 80%),linear-gradient(135deg,#d1fae5 0%,#a7f3d0 50%,#6ee7b7 100%);place-items:center;width:100%;min-height:100dvh;display:grid}.auth-card{border-radius:var(--radius);background:var(--card);width:100%;max-width:430px;box-shadow:var(--shadow);padding:34px 34px 30px}.auth-brand{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;margin-bottom:26px;display:flex}.auth-logo-img{object-fit:cover;border-radius:10px}.auth-title{letter-spacing:-.02em;color:var(--slate-900);font-size:20px;font-weight:800}.auth-form{gap:18px;display:grid}.auth-field{gap:8px;display:grid}.auth-label{color:var(--slate-700);font-size:14px;font-weight:600}.auth-input-wrap{position:relative}.auth-input{width:100%;color:var(--slate-900);background:0 0;border:none;padding:10px 32px 10px 0;font-size:15px}.auth-input::placeholder{color:var(--slate-400)}.auth-input:focus{outline:none}.auth-underline{background:var(--line);height:1px}.auth-input:focus+.auth-underline{background:linear-gradient(90deg,var(--indigo-500),var(--violet-500));height:2px}.auth-endcap{width:28px;height:28px;color:var(--slate-600);border-radius:8px;place-items:center;display:grid;position:absolute;top:50%;right:0;transform:translateY(-50%)}.auth-endcap-btn{cursor:pointer;background:0 0;border:0;padding:0}.auth-endcap:hover{background:#f3f4f6}.auth-aux{justify-content:flex-end;margin-top:-6px;display:flex}.auth-link{color:var(--indigo-500);font-size:13px;font-weight:600;text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-btn{color:#fff;letter-spacing:.2px;cursor:pointer;background:linear-gradient(90deg,#10b981,#059669,#047857);border:0;border-radius:999px;width:100%;margin-top:8px;padding:14px 16px;font-weight:700;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 18px 30px #10b98159}.auth-btn:hover{transform:translateY(-1px);box-shadow:0 22px 36px #10b98166}.auth-btn:disabled{opacity:.75;cursor:not-allowed}.auth-error{color:#dc2626;margin-top:2px;font-size:13px;font-weight:600}.auth-banner{color:#fff;background:linear-gradient(90deg,#ef4444,#dc2626);border-radius:12px;margin-bottom:8px;padding:10px 12px;font-size:14px;font-weight:700}.auth-muted{text-align:center;color:var(--slate-500);font-size:14px}.auth-cta{color:var(--indigo-500);font-weight:700;text-decoration:none}.auth-cta:hover{text-decoration:underline}.pw-strength{gap:6px;margin-top:6px;display:grid}.pw-strength--compact{margin-top:4px}.pw-strength-bars{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.pw-strength-bars .bar{background:#e5e7eb;border-radius:999px;height:6px;transition:background-color .2s}.pw-strength-bars .bar.on:first-child{background:#fca5a5}.pw-strength-bars .bar.on:nth-child(2){background:#fdba74}.pw-strength-bars .bar.on:nth-child(3){background:#fde047}.pw-strength-bars .bar.on:nth-child(4){background:#86efac}.pw-strength-label{color:var(--slate-600);font-size:12px;font-weight:700}.pw-strength-label.s-0{color:#dc2626}.pw-strength-label.s-1{color:#ef4444}.pw-strength-label.s-2{color:#ca8a04}.pw-strength-label.s-3{color:#16a34a}.pw-strength-label.s-4{color:#15803d}@media (max-width:520px){.auth-card{margin:0 14px;padding:28px}}
