@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:#f4f6f9;--bg-card:#fff;--bg-input:#f8fafc;--border:#e2e8f0;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:#eff6ff;--accent-2:#7c3aed;--text:#0f172a;--text-muted:#64748b;--text-subtle:#94a3b8;--red:#dc2626;--red-soft:#fef2f2;--orange:#d97706;--orange-soft:#fffbeb;--green:#16a34a;--green-soft:#f0fdf4;--radius:14px;--radius-sm:8px;--shadow:0 1px 3px #00000014, 0 4px 16px #0000000f;--shadow-lg:0 4px 12px #0f172a0f, 0 12px 32px #0f172a14}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Plus Jakarta Sans,sans-serif}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem}.auth-shell{background:radial-gradient(600px circle at 15% 15%, #2563eb14, transparent 60%), radial-gradient(600px circle at 85% 85%, #7c3aed12, transparent 60%), var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.logo-mark{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#fff;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;box-shadow:0 4px 14px #2563eb59}.logo-lockup{align-items:center;gap:.65rem;display:inline-flex}.logo-wordmark{letter-spacing:-.02em;color:var(--text);font-weight:800}.avatar{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:inline-flex}.icon-badge{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.badge{align-items:center;gap:.35rem;display:inline-flex}.badge-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.hover-row{transition:background .15s}.hover-row:hover{background:#f8fafc}.btn-primary,.btn-secondary{transition:background .15s,border-color .15s,color .15s,transform .1s,box-shadow .15s}.icon-btn{align-items:center;gap:.5rem;display:inline-flex}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#eef1f5 25%,#f6f8fa 37%,#eef1f5 63%) 0 0/400% 100%;animation:1.4s infinite skeleton-shine}@keyframes skeleton-shine{0%{background-position:100%}to{background-position:0}}.fade-in{animation:.35s both fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.spinner{border:2.5px solid #2563eb2e;border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.input{background:var(--bg-input);border:1.5px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);outline:none;padding:.75rem 1rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.input:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #2563eb1a}.input::placeholder{color:var(--text-subtle)}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;width:100%;padding:.85rem;font-family:Plus Jakarta Sans,sans-serif;font-size:1rem;font-weight:600;transition:background .2s,transform .1s}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:active{transform:scale(.99)}.btn-secondary{color:var(--text-muted);border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:#fff;padding:.5rem 1.25rem;font-family:Plus Jakarta Sans,sans-serif;font-size:.9rem;font-weight:500;transition:border-color .2s,color .2s}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.label{color:var(--text-muted);margin-bottom:.4rem;font-size:.85rem;font-weight:600;display:block}.error{color:var(--red);border-radius:var(--radius-sm);background:#fef2f2;border:1px solid #fecaca;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.link{color:var(--accent);font-weight:500;text-decoration:none}.link:hover{text-decoration:underline}.badge{border-radius:20px;padding:.3rem .85rem;font-size:.8rem;font-weight:600;display:inline-block}.badge-green{color:var(--green);background:#f0fdf4}.badge-orange{color:var(--orange);background:#fffbeb}.badge-red{color:var(--red);background:#fef2f2}.badge-gray{color:var(--text-muted);background:#f8fafc}
