@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--primary:#4f46e5;--primary-hover:#4338ca;--bg-main:#f3f4f6;--bg-white:#fff;--text-main:#111827;--text-muted:#6b7280;--border-color:#e5e7eb;--danger:#ef4444;--success:#10b981;--sidebar-width:260px;--header-height:64px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-main);height:100vh;font-family:Inter,sans-serif;overflow:hidden}a{color:inherit;text-decoration:none}.welcome-section{border-bottom:1px solid var(--border-color);margin-bottom:3rem;padding-bottom:1rem}.dashboard-layout{width:100vw;height:100vh;display:flex;overflow:hidden}.main-content{background:var(--bg-main);flex-direction:column;flex:1;display:flex;position:relative}.scrollable-area{flex:1;padding:2rem;overflow-y:auto}.sidebar{width:var(--sidebar-width);background:var(--bg-white);border-right:1px solid var(--border-color);flex-direction:column;height:100%;padding:1.5rem;display:flex}.sidebar-logo{align-items:center;gap:12px;margin-bottom:2.5rem;padding-left:.5rem;display:flex}.logo-icon{background:var(--primary);border-radius:8px;width:32px;height:32px}.logo-text{color:var(--text-main);font-size:1.25rem;font-weight:800}.nav-link{color:var(--text-muted);border-radius:8px;align-items:center;gap:12px;margin-bottom:4px;padding:12px 16px;font-weight:500;transition:all .2s;display:flex}.nav-link:hover{color:var(--text-main);background-color:#f9fafb}.nav-link.active{color:var(--primary);background-color:#eef2ff;font-weight:600}.top-header{height:var(--header-height);background:var(--bg-white);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:flex-end;align-items:center;padding:0 2rem;display:flex}button{cursor:pointer;border:none;border-radius:8px;font-family:inherit;font-size:.95rem;font-weight:500;transition:all .2s}.btn{justify-content:center;align-items:center;gap:8px;padding:.75rem 1.5rem;display:inline-flex}.btn-sm{padding:.5rem 1rem;font-size:.85rem}.btn-primary{background-color:var(--primary);color:#fff;box-shadow:0 4px 6px -1px #4f46e533}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.btn-secondary{border:1px solid var(--border-color);color:var(--text-main);background-color:#fff}.btn-secondary:hover{background-color:#f9fafb;border-color:#d1d5db}.btn-danger{color:var(--danger);background-color:#fff;border:1px solid #fee2e2}.btn-danger:hover{border-color:var(--danger);background-color:#fef2f2}.btn-block{width:100%}input,select,textarea{border:1px solid var(--border-color);background:#fff;border-radius:8px;outline:none;width:100%;margin-bottom:1rem;padding:.75rem;font-family:inherit;transition:border-color .2s}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4f46e51a}label{color:#4b5563;margin-bottom:.4rem;font-size:.9rem;font-weight:500;display:block}.container-center{justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.card{background:var(--bg-white);border:1px solid var(--border-color);border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000000d}.auth-card{border:1px solid var(--border-color);background:#fff;border-radius:16px;width:100%;max-width:400px;padding:2rem;box-shadow:0 10px 25px -5px #0000001a}.page-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.page-title{color:var(--text-main);font-size:1.8rem;font-weight:700}.page-subtitle{color:var(--text-muted)}.grid-container{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.dashboard-card{background:var(--bg-white);border:1px solid var(--border-color);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:1rem;padding:2rem;transition:transform .2s;display:flex}.dashboard-card:hover{border-color:var(--primary);transform:translateY(-4px)}.card-icon{font-size:2.5rem}.service-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;flex-direction:column;height:100%;padding:1.5rem;display:flex}.status-badge{border-radius:99px;padding:4px 12px;font-size:.75rem;font-weight:600}.connected{color:#166534;background:#dcfce7}.disconnected{color:#6b7280;background:#f3f4f6}
