@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);:root{--color-primary:#2f3349;--color-secondary:#37352f;--color-accent:#0f62fe;--color-accent-light:#e6f0ff;--color-accent-dark:#0b4fd1;--color-success:#198038;--color-warning:#ff8c00;--color-error:#da1e28;--color-background:#fff;--color-surface:#f7f6f3;--color-border:#e9e5db;--color-text-primary:#37352f;--color-text-secondary:#6c6c6c;--color-text-tertiary:#9ca3af;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--spacing-3xl:64px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--shadow-sm:0 1px 3px #0000001a;--shadow-md:0 4px 6px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--color-background);color:#37352f;color:var(--color-text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:14px;font-weight:400;line-height:1.5;margin:0}h1{font-size:28px}h1,h2{color:#2f3349;color:var(--color-primary);font-weight:600;margin:0}h2{font-size:24px}h3{color:#2f3349;color:var(--color-primary);font-size:20px;font-weight:500;margin:0}.caption{color:#6c6c6c;color:var(--color-text-secondary);font-size:12px;font-weight:400}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button{border:none;cursor:pointer;font-family:inherit;font-size:14px;outline:none;transition:all .2s ease}a{color:#0f62fe;color:var(--color-accent);text-decoration:none;transition:opacity .2s ease}a:hover{opacity:.8}[data-theme=dark]{--color-primary:#f7f6f3;--color-secondary:#e9e5db;--color-accent:#4a9eff;--color-accent-light:#1a2332;--color-accent-dark:#6bb6ff;--color-success:#42d392;--color-warning:#ffab47;--color-error:#ff6b6b;--color-background:#1a1a1a;--color-surface:#2a2a2a;--color-border:#3a3a3a;--color-text-primary:#f7f6f3;--color-text-secondary:#a0a0a0}@media (prefers-color-scheme:dark){[data-theme=auto]{--color-primary:#f7f6f3;--color-secondary:#e9e5db;--color-accent:#4a9eff;--color-accent-light:#1a2332;--color-accent-dark:#6bb6ff;--color-success:#42d392;--color-warning:#ffab47;--color-error:#ff6b6b;--color-background:#1a1a1a;--color-surface:#2a2a2a;--color-border:#3a3a3a;--color-text-primary:#f7f6f3;--color-text-secondary:#a0a0a0}}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease}input,select,textarea{background-color:#fff;background-color:var(--color-background);border:1px solid #e9e5db;border:1px solid var(--color-border);border-radius:4px;border-radius:var(--radius-sm);color:#37352f;color:var(--color-text-primary);font-family:inherit;font-size:14px;padding:8px 16px;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}input:focus,select:focus,textarea:focus{border-color:#0f62fe;border-color:var(--color-accent);box-shadow:0 0 0 2px #0f62fe1a;outline:none}.btn-primary{background:#0f62fe;background:var(--color-accent);border-radius:6px;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;padding:8px 16px;padding:var(--spacing-sm) var(--spacing-md);transition:background-color .2s ease}.btn-primary:hover:not(:disabled){background:#0b4fd1;background:var(--color-accent-dark)}.btn-secondary{border:1px solid #e9e5db;border:1px solid var(--color-border);border-radius:6px;border-radius:var(--radius-md);color:#37352f;color:var(--color-text-primary);font-size:.875rem;font-weight:500;padding:8px 16px;padding:var(--spacing-sm) var(--spacing-md);transition:background-color .2s ease}.btn-secondary:hover:not(:disabled){background-color:#f7f6f3;background-color:var(--color-surface)}.auth-form{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;margin:0 auto;max-width:440px;overflow:hidden;padding:3rem;position:relative}.auth-form:before{animation:shimmer 3s ease-in-out infinite;background:linear-gradient(90deg,#3b82f6,#1d4ed8 50%,#3b82f6);background-size:200% 100%;content:"";height:4px;left:0;position:absolute;right:0;top:0}.auth-header{margin-bottom:2.5rem;position:relative;text-align:center;z-index:1}.auth-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0f172a,#374151);-webkit-background-clip:text;background-clip:text;font-size:2.25rem;font-weight:800;letter-spacing:-.025em;line-height:1.2;margin:0 0 .75rem}.auth-header p{color:#64748b;font-size:1.1rem;font-weight:500;line-height:1.6;margin:0}.error-message,.google-btn{margin-bottom:1.5rem}.google-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:#1e293b;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;justify-content:center;overflow:hidden;padding:1.125rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.google-btn:before{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.google-btn:hover:not(:disabled){background:#f8fafc;border-color:#3b82f6;box-shadow:0 10px 25px -5px #3b82f626,0 4px 6px -2px #0000000d;transform:translateY(-1px)}.google-btn:hover:not(:disabled):before{left:100%}.google-btn:active:not(:disabled){transform:translateY(0)}.google-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.spinner{animation:spin 1s linear infinite;border:2px solid #f3f3f3;border-radius:50%;border-top-color:#3b82f6;height:20px;width:20px}.divider{align-items:center;color:#9ca3af;display:flex;font-size:.875rem;margin:1.5rem 0}.divider:after,.divider:before{background:#e5e7eb;content:"";flex:1 1;height:1px}.divider span{padding:0 1rem}.form-group{position:relative}.form-group input{padding:1.125rem 1rem}.submit-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;box-shadow:0 8px 25px -5px #3b82f64d;color:#fff;cursor:pointer;font-size:1.05rem;font-weight:700;letter-spacing:.025em;margin-bottom:1.5rem;overflow:hidden;padding:1.125rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.submit-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 15px 35px -5px #3b82f666;transform:translateY(-2px)}.submit-btn:hover:not(:disabled):before{left:100%}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6;transform:none}.auth-toggle{margin-top:1rem;text-align:center}.auth-toggle p{color:#64748b;font-size:.95rem;font-weight:500;margin:0}.auth-toggle button{background:none;border:none;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:inherit;font-weight:600;padding:.25rem .5rem;text-decoration:none;transition:all .2s ease}.auth-toggle button:hover{background:#3b82f61a;color:#2563eb;transform:translateY(-1px)}.auth-page{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:1rem;position:relative}.auth-page:before{animation:float 30s ease-in-out infinite;background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='80' height='80' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='40' cy='40' r='1.5' fill='%2364748b' fill-opacity='.03' fill-rule='evenodd'/%3E%3C/svg%3E");bottom:0;content:"";left:0;position:absolute;right:0;top:0}.auth-container{max-width:500px;position:relative;width:100%;z-index:1}.auth-brand{margin-bottom:2.5rem;position:relative;text-align:center;z-index:1}.auth-brand h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;background-clip:text;font-size:2.75rem;font-weight:800;letter-spacing:-.025em;line-height:1.1;margin:0 0 .75rem}.auth-brand p{color:#64748b;font-size:1.2rem;font-weight:500;line-height:1.5;margin:0}.loading-spinner{align-items:center;color:#475569;display:flex;font-size:1.1rem;font-weight:500;justify-content:center;min-height:200px}@media (max-width:640px){.auth-page{padding:.5rem}.auth-brand h1{font-size:2rem}.auth-brand p{font-size:1rem}}.auth-callback-page{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative}.auth-callback-page:before{animation:float 30s ease-in-out infinite;background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='80' height='80' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='40' cy='40' r='1.5' fill='%2364748b' fill-opacity='.03' fill-rule='evenodd'/%3E%3C/svg%3E");bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(180deg)}}.auth-error-container{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:480px;overflow:hidden;padding:3rem;position:relative;text-align:center;width:100%;z-index:1}.auth-error-container:before{animation:shimmer 3s ease-in-out infinite;background:linear-gradient(90deg,#ef4444,#dc2626 50%,#ef4444);background-size:200% 100%;content:"";height:4px;left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%,to{background-position:200% 0}50%{background-position:-200% 0}}.auth-error-icon{align-items:center;background:linear-gradient(135deg,#fef2f2,#fee2e2);border-radius:50%;box-shadow:0 8px 25px -5px #dc262633;color:#dc2626;display:flex;font-size:2.5rem;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.auth-error-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0f172a,#374151);-webkit-background-clip:text;background-clip:text;font-size:1.75rem;font-weight:800;letter-spacing:-.025em;margin:0 0 1rem}.auth-error-message{background:linear-gradient(135deg,#fef2f2,#fef7f7);border:1px solid #fecaca;border-radius:12px;color:#dc2626;font-size:1.1rem;font-weight:500;line-height:1.6;margin:0 0 2rem;padding:1rem 1.25rem;position:relative}.auth-error-message:before{background:#dc2626;border-radius:4px 0 0 4px;bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.auth-error-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;color:#64748b;font-size:.9rem;line-height:1.6;margin:1.5rem 0 2rem;padding:1.25rem;text-align:left}.auth-error-details p{color:#475569;font-weight:600;margin:0 0 .75rem}.auth-error-details ul{list-style-type:disc;margin:0;padding-left:1.25rem}.auth-error-details li{margin-bottom:.25rem}.auth-error-actions{display:flex;flex-direction:column;gap:1rem}.auth-retry-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;box-shadow:0 8px 25px -5px #3b82f64d;color:#fff;cursor:pointer;display:inline-block;font-size:1rem;font-weight:700;letter-spacing:.025em;padding:1rem 2rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.auth-retry-btn:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 15px 35px -5px #3b82f666;transform:translateY(-2px)}.auth-support-link{color:#64748b;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .2s ease}.auth-support-link:hover{color:#475569;text-decoration:underline}.auth-loading-container{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:480px;padding:3rem;position:relative;text-align:center;width:100%;z-index:1}.auth-loading-text h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0f172a,#374151);-webkit-background-clip:text;background-clip:text;font-size:1.75rem;font-weight:800;letter-spacing:-.025em;margin:0 0 .5rem}.auth-loading-text p{color:#64748b;font-size:1rem;line-height:1.6;margin:0 0 2rem}.auth-loading-steps{margin:0 auto;max-width:300px;text-align:left}.auth-loading-steps .step{border-left:3px solid #e2e8f0;color:#64748b;font-size:.9rem;font-weight:500;margin-bottom:.5rem;padding:.75rem 0 .75rem 1rem;transition:all .3s ease}.auth-loading-steps .step.active{border-left-color:#3b82f6;color:#3b82f6}.auth-loading-spinner{animation:spin 1s linear infinite;border:3px solid #3b82f633;border-radius:50%;border-top-color:#3b82f6;height:40px;margin-bottom:1rem;width:40px}@media (max-width:640px){.auth-callback-page{padding:1rem}.auth-error-container{padding:2rem}.auth-error-title{font-size:1.5rem}.auth-error-message{font-size:1rem}}.invite-acceptance-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;justify-content:center;min-height:100vh;padding:20px}.invite-error,.invite-loading,.invite-signin-required,.invite-success{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;max-width:500px;padding:40px;text-align:center;width:100%}.invite-header{margin-bottom:30px}.invite-header-icon{align-items:center;background:#f0f9ff;border-radius:50%;color:#3b82f6;display:flex;height:80px;justify-content:center;margin:0 auto 20px;transition:all .3s ease;width:80px}.invite-header-icon.success{background:#f0fdf4;color:#16a34a}.invite-header h1{color:#1f2937;font-size:28px;font-weight:700;line-height:1.2;margin:0}.invite-loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:40px;margin:0 auto 20px;width:40px}.invite-loading h2{color:#1f2937;font-size:22px;font-weight:600;margin:0 0 10px}.invite-loading p{color:#6b7280;margin:0}.invite-error-icon{color:#ef4444;margin-bottom:20px}.invite-error h2{color:#1f2937;font-size:24px;font-weight:600;margin:0 0 15px}.invite-error-message{color:#6b7280;line-height:1.5;margin-bottom:30px}.invite-details{margin-bottom:30px}.invite-workspace-info{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:20px}.workspace-badge{align-items:center;background:#f0f9ff;border-radius:20px;color:#1e40af;display:flex;font-size:14px;font-weight:600;gap:8px;padding:8px 16px}.role-badge{background:#fef3cd;border-radius:16px;color:#d97706;font-size:12px;gap:6px;padding:6px 12px}.invitation-summary{background:#f8fafc;border-radius:12px;margin-bottom:20px;padding:20px}.invitation-summary p{color:#374151;line-height:1.6;margin:0}.invitation-summary strong{color:#1f2937}.invite-signin-message{align-items:flex-start;background:#fffbeb;border:1px solid #fbbf24;border-radius:12px;display:flex;gap:15px;margin-bottom:30px;padding:20px;text-align:left}.invite-signin-message svg{color:#d97706;flex-shrink:0;margin-top:2px}.invite-signin-message h3{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 5px}.invite-signin-message p{color:#374151;font-size:14px;line-height:1.5;margin:0}.workspace-features{background:#f8fafc;border-radius:12px;margin-bottom:20px;padding:20px;text-align:left}.workspace-features h3{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 15px}.workspace-features ul{color:#374151;margin:0;padding-left:20px}.workspace-features li{line-height:1.5;margin-bottom:8px}.invite-actions{margin-bottom:20px}.invite-error-actions{display:flex;gap:12px;justify-content:center}.btn-primary{align-items:center;border-radius:8px;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;text-decoration:none;transition:all .2s ease}.btn-primary:hover{box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.btn-primary:disabled{box-shadow:none}.btn-large{font-size:16px;padding:16px 32px}.btn-spinner{height:16px;width:16px}.invite-footer{border-top:1px solid #e5e7eb;padding-top:20px}.invited-by{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:8px;justify-content:center}.invited-by svg{flex-shrink:0}@media (max-width:640px){.invite-acceptance-page{padding:15px}.invite-error,.invite-loading,.invite-signin-required,.invite-success{padding:30px 20px}.invite-header h1{font-size:24px}.invite-workspace-info{flex-direction:column;gap:10px}.invite-signin-message{flex-direction:column;text-align:center}.invite-error-actions{flex-direction:column}}.modal-overlay{align-items:flex-start;animation:fadeIn .2s ease-out;background:#000000a6;overflow-y:auto;padding:2rem 1rem}.modal-content{animation:slideUp .3s cubic-bezier(.4,0,.2,1);border-radius:16px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;margin:auto 0;max-height:calc(100vh - 4rem);max-width:500px;overflow-y:auto;width:100%}.modal-header{align-items:center;display:flex;justify-content:space-between;padding:1.5rem;position:relative}.modal-header:before{background:linear-gradient(90deg,#0000,#e2e8f0,#0000);bottom:0;content:"";height:1px;left:1.5rem;position:absolute;right:1.5rem}.modal-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:10px;color:#64748b;cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.modal-close:hover{background-color:#f1f5f9;color:#475569;transform:scale(1.05)}.modal-body{padding:1.5rem}.modal-description{color:#64748b;font-size:1rem;line-height:1.6;margin:0 0 1.5rem}.error-message{background:linear-gradient(135deg,#fef2f2,#fef7f7);border:1px solid #fecaca;border-radius:12px;box-shadow:0 4px 6px -1px #dc26261a;color:#dc2626;font-size:.9rem;font-weight:500;margin-bottom:1rem;overflow:hidden;padding:1rem 1.25rem;position:relative}.error-message:before{background:#dc2626;bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.form-group{margin-bottom:1.5rem}.form-group input{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;font-size:1rem;font-weight:500;padding:1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-group input:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a,0 4px 15px -3px #3b82f61a;transform:translateY(-1px)}.field-error{color:#dc2626;display:block;font-size:.8rem;font-weight:500;margin-top:.5rem;padding-left:.5rem;position:relative}.field-error:before{content:"⚠";font-size:.75rem;margin-right:.25rem}.modal-actions{gap:.75rem;padding-top:.5rem}.btn-secondary{background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#475569;cursor:pointer;font-size:.9rem;font-weight:600;letter-spacing:.025em;padding:.875rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-secondary:hover:not(:disabled){background-color:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px)}.btn-secondary:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;box-shadow:0 4px 15px -3px #3b82f64d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;letter-spacing:.025em;overflow:hidden;padding:.875rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 8px 25px -5px #3b82f666;transform:translateY(-2px)}.btn-primary:hover:not(:disabled):before{left:100%}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6;transform:none}.workspace-switcher{margin-bottom:1.5rem;position:relative}.workspace-trigger{align-items:center;background:var(--color-background);border:2px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-sm);color:var(--color-text-primary);cursor:pointer;display:flex;font-weight:500;gap:.75rem;overflow:hidden;padding:.75rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.workspace-trigger:before{background:linear-gradient(135deg,#3b82f60d,#10b9810d);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.workspace-trigger.open:before,.workspace-trigger:hover:before{opacity:1}.workspace-trigger:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.workspace-trigger.open{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-light)}.workspace-avatar{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;box-shadow:0 4px 12px -2px #3b82f64d;color:#fff;display:flex;flex-shrink:0;font-size:.875rem;font-weight:700;height:40px;justify-content:center;letter-spacing:.5px;width:40px}.workspace-info{flex:1 1;min-width:0}.workspace-details{align-items:flex-start;display:flex;flex-direction:column;gap:.25rem;min-width:0}.workspace-name{color:var(--color-text-primary);font-size:.9rem;font-weight:700;line-height:1.2;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-meta{align-items:center;color:var(--color-text-secondary);display:flex;font-size:.75rem;font-weight:500;gap:.375rem;line-height:1}.workspace-dot{color:#cbd5e1;font-weight:400}.workspace-arrow{color:var(--color-text-secondary);flex-shrink:0;transition:all .3s cubic-bezier(.4,0,.2,1)}.workspace-arrow.open{color:var(--color-accent);transform:rotate(180deg)}.workspace-menu{animation:dropdownSlide .2s cubic-bezier(.4,0,.2,1);background:var(--color-background);border:2px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-xl);left:0;max-height:400px;overflow:hidden;overflow-y:auto;position:absolute;right:0;top:calc(100% + .5rem);z-index:100}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.workspace-menu-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:1rem 1rem .75rem}.workspace-menu-title{align-items:center;color:var(--color-text-primary);display:flex;font-size:.875rem;font-weight:700;gap:.5rem;margin-bottom:.25rem}.workspace-menu-subtitle{color:var(--color-text-secondary);font-size:.75rem;font-weight:500}.workspace-list{padding:.5rem}.workspace-item{align-items:center;background:none;border:none;border-radius:12px;cursor:pointer;display:flex;gap:.75rem;margin-bottom:.25rem;padding:.75rem;position:relative;text-align:left;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.workspace-item:hover{background:linear-gradient(135deg,#3b82f60d,#10b9810d);transform:translateX(2px)}.workspace-item.active{background:linear-gradient(135deg,#3b82f61a,#10b9811a);border:1px solid #3b82f633}.workspace-item.switching{cursor:not-allowed;opacity:.6}.workspace-item-avatar{align-items:center;background:linear-gradient(135deg,#64748b,#475569);border-radius:10px;box-shadow:0 2px 8px -2px #00000026;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;font-weight:700;height:36px;justify-content:center;letter-spacing:.5px;position:relative;width:36px}.workspace-item.active .workspace-item-avatar{background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 4px 12px -2px #3b82f666}.workspace-active-dot{animation:pulse 2s infinite;background:#16a34a;border:2px solid #fff;border-radius:50%;height:12px;position:absolute;right:-2px;top:-2px;width:12px}.workspace-item-info{flex:1 1;min-width:0}.workspace-item-details{display:flex;flex-direction:column;gap:.25rem}.workspace-item-name{color:var(--color-text-primary);font-size:.875rem;font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-item-meta{align-items:center;color:var(--color-text-secondary);display:flex;font-size:.75rem;font-weight:500;gap:.375rem}.workspace-item-members,.workspace-item-role{align-items:center;display:flex;gap:.25rem}.workspace-item-actions{flex-shrink:0;height:24px;width:24px}.workspace-current-indicator,.workspace-item-actions{align-items:center;display:flex;justify-content:center}.workspace-current-indicator{background:#16a34a;border-radius:50%;color:#fff;font-size:.75rem;font-weight:700;height:20px;width:20px}.workspace-switching-spinner{animation:spin 1s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#3b82f6;height:16px;width:16px}.user-profile-section{background:var(--color-surface);border-top:1px solid var(--color-border);padding:.75rem}.user-profile-info,.user-profile-section{align-items:center;display:flex;gap:.75rem}.user-profile-info{flex:1 1;min-width:0}.user-avatar{flex-shrink:0;height:40px;position:relative;width:40px}.user-avatar-image{border:2px solid var(--color-border);border-radius:12px;height:100%;object-fit:cover;width:100%}.user-avatar-fallback{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;box-shadow:0 4px 12px -2px #6366f14d;color:#fff;display:flex;font-size:.875rem;font-weight:700;height:100%;justify-content:center;letter-spacing:.5px;width:100%}.user-avatar-fallback.hidden{display:none}.user-details{display:flex;flex:1 1;flex-direction:column;gap:.125rem;min-width:0}.user-name{color:var(--color-text-primary);font-size:.875rem;font-weight:600;line-height:1.2}.user-email,.user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{font-size:.75rem;font-weight:500}.user-email,.user-logout-btn{color:var(--color-text-secondary)}.user-logout-btn{align-items:center;background:none;border:2px solid var(--color-border);border-radius:10px;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);width:36px}.user-logout-btn:hover{background:#fef2f2;border-color:#ef4444;color:#ef4444;transform:translateY(-1px)}.workspace-actions{background:var(--color-surface);border-top:1px solid var(--color-border);padding:.5rem}.workspace-action-item{align-items:center;background:none;border:2px dashed var(--color-border);border-radius:12px;cursor:pointer;display:flex;gap:.75rem;padding:.875rem;text-align:left;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.workspace-action-item:hover{background:var(--color-accent-light);border-color:var(--color-accent);transform:translateY(-1px)}.workspace-action-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:10px;color:#fff;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.workspace-action-text{display:flex;flex:1 1;flex-direction:column;gap:.125rem}.workspace-action-title{color:var(--color-text-primary);font-size:.875rem;font-weight:600;line-height:1.2}.workspace-action-subtitle{color:var(--color-text-secondary);font-size:.75rem;font-weight:500}.workspace-error{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;font-size:.875rem;font-weight:500;justify-content:space-between;margin:.5rem;padding:.75rem}.workspace-error,.workspace-error-close{align-items:center;color:#dc2626;display:flex}.workspace-error-close{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1.25rem;height:24px;justify-content:center;transition:background-color .2s ease;width:24px}.workspace-error-close:hover{background:#dc26261a}@media (max-width:768px){.workspace-menu{max-height:300px}.workspace-name{max-width:100px}.workspace-item-name{max-width:120px}}.sidebar{background-color:var(--color-surface);border-right:1px solid var(--color-border);bottom:0;display:flex;flex-direction:column;height:100vh;left:0;overflow-y:auto;padding:0;position:fixed;top:64px;transition:width .3s ease;width:240px}.sidebar.collapsed{width:64px}.sidebar.collapsed .sidebar-chevron,.sidebar.collapsed .sidebar-label,.sidebar.collapsed .sidebar-sublabel{display:none}.sidebar.collapsed .sidebar-icon,.sidebar.collapsed .sidebar-subicon{margin-right:0}.sidebar-nav{flex:1 1;padding:var(--spacing-md) 0}.sidebar-item{align-items:center;background:none;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;padding:var(--spacing-sm) var(--spacing-lg);position:relative;text-align:left;text-decoration:none;transition:all .15s ease;width:100%}.sidebar-item:hover{background-color:#0000000a;color:var(--color-text-primary)}.sidebar-item.active{background-color:#0f62fe14;color:var(--color-accent);font-weight:600}.sidebar-item.active:before{background-color:var(--color-accent);bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.sidebar-item.expandable{justify-content:space-between}.sidebar-item-group{margin-bottom:4px}.sidebar-icon{color:currentColor;flex-shrink:0;margin-right:var(--spacing-md)}.sidebar-label{flex:1 1;font-size:14px}.sidebar-chevron{color:currentColor;transition:transform .2s ease}.sidebar-submenu{background-color:initial;margin-left:calc(var(--spacing-lg) + 20px);padding-left:0}.sidebar-subitem{align-items:center;color:var(--color-text-secondary);display:flex;font-size:13px;font-weight:400;padding:var(--spacing-sm) var(--spacing-md);position:relative;text-decoration:none;transition:all .15s ease}.sidebar-subitem:hover{background-color:#0000000a;color:var(--color-text-primary)}.sidebar-subitem.active{background-color:initial;color:var(--color-accent);font-weight:500}.sidebar-subicon{color:currentColor;flex-shrink:0;margin-right:var(--spacing-sm)}.sidebar-sublabel{font-size:13px}.app-header{background-color:var(--color-background);border-bottom:1px solid var(--color-border);height:64px;justify-content:space-between;left:0;padding:0 var(--spacing-lg);position:fixed;right:0;top:0;z-index:900}.app-header,.header-left{align-items:center;display:flex}.header-left{gap:0}.logo{color:var(--color-primary);flex-shrink:0;font-size:20px;font-weight:600;width:160px}.breadcrumbs{align-items:center;display:flex;gap:var(--spacing-sm);margin-left:calc(60px - var(--spacing-lg));padding-left:var(--spacing-lg)}.breadcrumb-link,.breadcrumbs{color:var(--color-text-secondary)}.breadcrumb-link{text-decoration:none;transition:color .2s ease}.breadcrumb-link:hover{color:var(--color-accent)}.breadcrumb-text{color:var(--color-text-primary);font-weight:500}.header-right{align-items:center;display:flex}.profile-dropdown{position:relative}.profile-trigger{align-items:center;background:none;border:none;border-radius:var(--radius-md);color:inherit;cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);transition:background-color .2s ease}.profile-trigger:hover{background-color:var(--color-surface)}.profile-avatar{align-items:center;background-color:var(--color-surface);color:var(--color-text-secondary);display:flex;justify-content:center}.profile-avatar,.profile-avatar-img{border-radius:50%;height:32px;width:32px}.profile-avatar-img{object-fit:cover}.profile-name{color:var(--color-text-primary);font-weight:500}.profile-arrow{color:var(--color-text-secondary);font-size:10px;transition:transform .2s ease}.profile-arrow.open{transform:rotate(180deg)}.profile-menu{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);margin-top:8px;min-width:200px;position:absolute;right:0;top:100%;z-index:100}.profile-info{border-bottom:1px solid var(--color-border);padding:var(--spacing-md)}.profile-info-name{color:var(--color-text-primary);font-weight:500;margin-bottom:2px}.profile-info-email{color:var(--color-text-secondary);font-size:.875rem}.profile-menu-divider{background:var(--color-border);height:1px;margin:var(--spacing-sm) 0}.profile-menu-item{align-items:center;background:none;border:none;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);text-align:left;transition:background-color .2s ease;width:100%}.profile-menu-item:hover{background-color:var(--color-surface)}.profile-menu-item:last-child{border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.home-page{background-color:var(--color-background)}.home-header{margin-bottom:var(--spacing-xl);margin-left:auto;margin-right:auto;max-width:600px;padding:var(--spacing-xl) 0;text-align:center}.home-header h1{color:var(--color-primary);font-size:36px;font-weight:600;margin:0 0 var(--spacing-md) 0}.home-subtitle{color:var(--color-text-secondary);font-size:18px;line-height:1.6;margin:0}.quick-actions{margin-bottom:var(--spacing-xl)}.quick-actions h2{color:var(--color-primary);font-size:24px;font-weight:600;margin:0 0 var(--spacing-lg) 0}.action-cards{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.action-card{align-items:center;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;gap:var(--spacing-md);padding:var(--spacing-lg);text-decoration:none;transition:all .2s ease}.action-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-icon{align-items:center;background-color:var(--color-accent);border-radius:var(--radius-sm);color:#fff;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.card-content{flex:1 1}.card-content h3{color:var(--color-text-primary);font-size:16px;font-weight:600;margin:0 0 var(--spacing-xs) 0}.card-content p{font-size:14px;line-height:1.4;margin:0}.card-arrow,.card-content p{color:var(--color-text-secondary)}.card-arrow{flex-shrink:0}.stats-overview h2{color:var(--color-primary);font-size:24px;font-weight:600;margin:0 0 var(--spacing-lg) 0}.stats-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-lg);text-align:center}.stat-value{color:var(--color-accent);font-size:32px;font-weight:700;line-height:1;margin-bottom:var(--spacing-sm)}.stat-label{font-weight:500}.team-section{margin-top:var(--spacing-xl)}.team-section h2{color:var(--color-primary);font-size:24px;font-weight:600;margin:0 0 var(--spacing-lg) 0}@media (max-width:768px){.home-header{padding:var(--spacing-lg) 0}.home-header h1{font-size:28px}.home-subtitle{font-size:16px}.action-cards{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:24px}}.status-badge{align-items:center;border-radius:9999px;display:inline-flex;font-size:12px;font-weight:500;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.status-badge__dot{border-radius:50%;height:8px;width:8px}.status-badge__text{text-transform:capitalize}.status-badge--enabled{background-color:#1980381a;color:var(--color-success)}.status-badge--enabled .status-badge__dot{background-color:var(--color-success)}.status-badge--disabled{background-color:#6c6c6c1a;color:var(--color-text-secondary)}.status-badge--disabled .status-badge__dot{background-color:var(--color-text-secondary)}.status-badge--syncing{background-color:#0f62fe1a;color:var(--color-accent)}.status-badge--syncing .status-badge__dot{animation:pulse 1.5s ease-in-out infinite;background-color:var(--color-accent)}.status-badge--error{background-color:#da1e281a;color:var(--color-error)}.status-badge--error .status-badge__dot{background-color:var(--color-error)}.btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-family:inherit;font-weight:500;gap:var(--spacing-sm);justify-content:center;outline:none;transition:all .2s ease;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn--small{font-size:12px;padding:var(--spacing-xs) var(--spacing-md)}.btn--medium{font-size:14px;padding:var(--spacing-sm) var(--spacing-lg)}.btn--large{font-size:16px;padding:var(--spacing-md) var(--spacing-xl)}.btn--primary{background-color:var(--color-accent);color:#fff}.btn--primary:hover:not(:disabled){background-color:#0e54d6;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn--primary:active:not(:disabled){box-shadow:none;transform:translateY(0)}.btn--secondary{background-color:#fff;border:1px solid var(--color-accent);color:var(--color-accent)}.btn--secondary:hover:not(:disabled){background-color:#0f62fe0d;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn--secondary:active:not(:disabled){box-shadow:none;transform:translateY(0)}.btn--danger{background-color:var(--color-error);color:#fff}.btn--danger:hover:not(:disabled){background-color:#c11926;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn--danger:active:not(:disabled){box-shadow:none;transform:translateY(0)}.btn--ghost{background-color:initial;color:var(--color-text-primary)}.btn--ghost:hover:not(:disabled){background-color:var(--color-surface)}.btn--ghost:active:not(:disabled){background-color:#00000014}.btn__icon{justify-content:center}.btn__icon,.data-source-logo{align-items:center;display:flex}.data-source-logo{gap:8px;transition:all .2s ease}.data-source-logo.small{gap:4px}.data-source-logo.large{gap:12px}.data-source-logo.xl{gap:16px}.logo-image{border-radius:4px;object-fit:contain;transition:transform .2s ease,box-shadow .2s ease}.logo-image:hover{box-shadow:0 4px 12px #00000026;transform:scale(1.05)}.logo-fallback{align-items:center;display:flex;justify-content:center;transition:transform .2s ease}.logo-fallback:hover{transform:scale(1.05)}.logo-fallback svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.logo-text{font-size:14px;font-weight:600;white-space:nowrap}.data-source-logo.small .logo-text{font-size:12px;font-weight:500}.data-source-logo.large .logo-text{font-size:16px;font-weight:700}.data-source-logo.xl .logo-text{font-size:18px;font-weight:700}.logo-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;color:#fff;display:flex;font-size:14px;font-weight:700;justify-content:center;transition:transform .2s ease}.logo-placeholder:hover{transform:scale(1.05)}.data-source-logo.small .logo-placeholder{border-radius:4px;font-size:10px;font-weight:600}.data-source-logo.large .logo-placeholder{border-radius:8px;font-size:18px}.data-source-logo.xl .logo-placeholder{border-radius:10px;font-size:24px}.data-source-logo.google-ads:hover .logo-fallback svg,.data-source-logo.google-ads:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(66,133,244,.3))}.data-source-logo.facebook-ads:hover .logo-fallback svg,.data-source-logo.facebook-ads:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(24,119,242,.3))}.data-source-logo.linkedin-ads:hover .logo-fallback svg,.data-source-logo.linkedin-ads:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(10,102,194,.3))}.data-source-logo.google-analytics:hover .logo-fallback svg,.data-source-logo.google-analytics:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(249,171,0,.3))}.data-source-logo.tiktok-ads:hover .logo-fallback svg,.data-source-logo.tiktok-ads:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(255,0,80,.3))}.data-source-logo.twitter-ads:hover .logo-fallback svg,.data-source-logo.twitter-ads:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}.data-source-logo.shopify:hover .logo-fallback svg,.data-source-logo.shopify:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(122,181,92,.3))}.data-source-logo.hubspot:hover .logo-fallback svg,.data-source-logo.hubspot:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(255,122,89,.3))}.data-source-logo.salesforce:hover .logo-fallback svg,.data-source-logo.salesforce:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(0,161,224,.3))}.data-source-logo.mailchimp:hover .logo-fallback svg,.data-source-logo.mailchimp:hover .logo-image{filter:drop-shadow(0 4px 12px rgba(255,224,27,.3))}.data-source-logo.wordmark{align-items:center;flex-direction:column;text-align:center}.data-source-logo.wordmark.small{gap:2px}.data-source-logo.wordmark.large{gap:8px}.data-source-logo.wordmark.xl{gap:12px}.data-source-logo.icon .logo-text{display:none}.logo-image[src=""]{animation:pulse 1.5s ease-in-out infinite;opacity:.5}@keyframes pulse{0%,to{opacity:.5}50%{opacity:.8}}@media (max-width:768px){.data-source-logo.large,.data-source-logo.xl{transform:scale(.9)}.data-source-logo.full .logo-text{font-size:12px}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.logo-image{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media (prefers-color-scheme:dark){.data-source-logo.twitter-ads .logo-fallback svg rect{fill:#fff}.data-source-logo.twitter-ads .logo-fallback svg path{fill:#000}}.sources-page{background-color:var(--color-background)}.sources-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg)}.sources-header h1{color:var(--color-primary);font-size:28px;font-weight:600;margin:0}.sources-filters{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.sources-table-container{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.sources-table{border-collapse:collapse;width:100%}.sources-table thead{background-color:var(--color-surface);border-bottom:1px solid var(--color-border)}.sources-table th{color:var(--color-text-secondary);font-size:12px;font-weight:600;letter-spacing:.05em;padding:var(--spacing-md);text-align:left;text-transform:uppercase}.sources-table tbody tr{border-bottom:1px solid var(--color-border);cursor:pointer;transition:background-color .15s ease}.sources-table tbody tr:last-child{border-bottom:none}.sources-table tbody tr:hover{background-color:var(--color-surface)}.sources-table td{font-size:14px;padding:var(--spacing-md)}.source-info{align-items:center;display:flex;gap:var(--spacing-md)}.source-info>div{display:flex;flex-direction:column;gap:2px}.source-subtitle{color:var(--color-text-secondary);font-size:12px}.source-icon{align-items:center;border-radius:var(--radius-sm);color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.source-name{color:var(--color-text-primary);font-weight:500}.source-name-cell{min-width:200px}.source-type{color:var(--color-text-secondary)}.destination{color:var(--color-text-primary);font-weight:500}.empty-state,.error-state,.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-xl);text-align:center}.empty-state p,.error-state p,.loading-state p{color:var(--color-text-secondary);margin:0 0 var(--spacing-md) 0}.active-jobs-badge{background-color:var(--color-accent);border-radius:var(--radius-sm);color:#fff;font-size:12px;font-weight:600;padding:2px 6px}.actions-cell{text-align:right;width:120px}.actions-cell button{gap:4px}@media (max-width:768px){.sources-filters{flex-direction:column}.search-container{max-width:none}.filter-dropdowns{flex-wrap:wrap}.sources-table-container{overflow-x:auto}.sources-table{min-width:800px}}.source-detail-page{background-color:var(--color-background)}.detail-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg)}.header-nav{gap:var(--spacing-sm)}.back-link,.header-nav{align-items:center;color:var(--color-text-secondary);display:flex}.back-link{gap:var(--spacing-xs);text-decoration:none;transition:color .2s ease}.back-link:hover{color:var(--color-accent)}.breadcrumb-separator{color:var(--color-text-secondary)}.current-page{color:var(--color-text-primary);font-weight:500}.actions-dropdown{position:relative}.dropdown-menu{background:var(--color-background);border:2px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-lg);margin-top:.5rem;min-width:160px;position:absolute;right:0;top:100%;z-index:100}.dropdown-item{align-items:center;background:none;border:none;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.75rem;transition:background-color .2s ease;width:100%}.dropdown-item:hover{background:var(--color-border)}.dropdown-item:first-child{border-radius:6px 6px 0 0}.dropdown-item:last-child{border-radius:0 0 6px 6px}.delete-confirm-modal{background:var(--color-background);border:2px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-width:400px;width:100%}.delete-confirm-modal .modal-header{background:var(--color-surface);border-bottom:2px solid var(--color-border);padding:1.5rem}.delete-confirm-modal .modal-header h3{color:var(--color-text-primary);font-weight:600;margin:0}.delete-confirm-modal .modal-content{padding:1.5rem}.delete-confirm-modal .modal-content p{color:var(--color-text-primary);margin:0 0 1rem}.delete-confirm-modal .modal-content .warning-text{color:#ef4444;font-size:.875rem;font-weight:500}.delete-confirm-modal .modal-footer{background:var(--color-surface);border-top:2px solid var(--color-border);display:flex;gap:.75rem;justify-content:flex-end;padding:1.5rem}.error-banner{border:2px solid #fecaca;border-radius:var(--radius-md);gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.error-banner svg{flex-shrink:0}.dismiss-error{align-items:center;background:none;border:none;border-radius:4px;color:#dc2626;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;margin-left:auto;padding:0;transition:background-color .2s ease;width:24px}.dismiss-error:hover{background-color:#fecaca}.detail-info{margin-bottom:var(--spacing-xl)}.detail-info h1{margin:0 0 var(--spacing-sm) 0}.info-row{align-items:center;font-size:14px;gap:var(--spacing-md)}.info-row,.info-separator{color:var(--color-text-secondary)}.sync-link-button{align-items:center;background:#0000;border:none;color:#0f62fe;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:.375rem;padding:0;text-decoration:none;transition:all .2s ease}.sync-link-button:hover:not(:disabled){color:#0353e9;text-decoration:underline}.sync-link-button:disabled{cursor:not-allowed;opacity:.5}.sync-link-button svg{flex-shrink:0;vertical-align:middle}.detail-tabs{border-bottom:2px solid var(--color-border);display:flex;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.detail-tabs .tab{background:none;border:none;border-bottom:2px solid #0000;color:var(--color-text-secondary);cursor:pointer;font-size:14px;font-weight:500;margin-bottom:-2px;padding:var(--spacing-md) 0;transition:all .2s ease}.detail-tabs .tab:hover{color:var(--color-text-primary)}.detail-tabs .tab.active{border-bottom-color:var(--color-accent);color:var(--color-accent)}.tab-list{display:flex;gap:var(--spacing-xl)}.tab-button{background:none;border:none;border-bottom:2px solid #0000;padding:var(--spacing-md) 0}.tab-button.active{border-bottom-color:var(--color-accent);color:var(--color-accent)}.overview-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.sync-volume-section{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg)}.sync-volume-section h3{color:var(--color-primary);font-size:18px;font-weight:600;margin:0 0 var(--spacing-md) 0}.sync-stats{margin-bottom:var(--spacing-lg)}.stat-item{align-items:baseline;display:flex;gap:var(--spacing-sm)}.stat-value{color:var(--color-primary);font-size:24px;font-weight:600}.stat-label{font-size:14px}.chart-container{margin-top:var(--spacing-lg)}.sync-history-section{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg)}.sync-history-section h3{color:var(--color-primary);font-size:18px;font-weight:600;margin:0 0 var(--spacing-lg) 0}.sync-history-table{border-collapse:collapse;width:100%}.sync-history-table th{color:var(--color-text-secondary);font-size:12px;font-weight:600;letter-spacing:.05em;text-align:left;text-transform:uppercase}.sync-history-table td,.sync-history-table th{border-bottom:1px solid var(--color-border);padding:var(--spacing-md)}.sync-history-table td{font-size:14px}.sync-history-table tr:last-child td{border-bottom:none}.sync-status{align-items:center;display:flex;font-weight:500;gap:var(--spacing-xs)}.sync-status--success{color:var(--color-success)}.sync-status--partial{color:var(--color-warning)}.sync-status--error{color:var(--color-error)}.schema-section{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg)}.schema-section h3{color:var(--color-primary);font-size:18px;font-weight:600;margin:0 0 var(--spacing-lg) 0}.schema-tables{display:flex;flex-direction:column;gap:var(--spacing-xl)}.schema-table{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-lg)}.schema-table-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.schema-table h4{color:var(--color-primary);font-size:16px;font-weight:600;margin:0}.table-row-count{color:var(--color-text-secondary);font-size:14px;font-weight:500}.schema-columns-table{border-collapse:collapse;width:100%}.schema-columns-table thead th{color:var(--color-text-secondary);font-size:12px;font-weight:600;letter-spacing:.05em;text-align:left;text-transform:uppercase}.schema-columns-table tbody td,.schema-columns-table thead th{border-bottom:1px solid var(--color-border);padding:var(--spacing-sm) var(--spacing-md)}.schema-columns-table tbody td{font-size:14px}.schema-columns-table tbody tr:last-child td{border-bottom:none}.schema-columns-table .column-name{color:var(--color-text-primary);font-family:Monaco,Menlo,monospace;font-weight:500}.schema-columns-table .column-type{color:var(--color-text-secondary);font-family:Monaco,Menlo,monospace}.settings-section{display:flex;flex-direction:column;gap:var(--spacing-xl)}.settings-group{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg)}.settings-group h3{color:var(--color-primary);font-size:18px;font-weight:600;margin:0 0 var(--spacing-lg) 0}.settings-item{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.settings-item:last-child{margin-bottom:0}.settings-item label{color:var(--color-text-secondary);font-size:14px;font-weight:500}.settings-input,.settings-select{background-color:var(--color-background);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.settings-input:focus,.settings-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #0f62fe1a;outline:none}.settings-input[readonly]{background-color:var(--color-surface);color:var(--color-text-secondary);cursor:not-allowed}.settings-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md)}.danger-zone{background-color:#fef2f2;border:2px solid #fecaca}.danger-zone h3{color:#dc2626}.danger-actions{align-items:center;gap:var(--spacing-lg);justify-content:space-between}.danger-description{flex:1 1}.danger-description strong{color:#dc2626;display:block;font-size:14px;margin-bottom:var(--spacing-xs)}.danger-description p{color:var(--color-text-secondary);font-size:13px;margin:0}.form-group{gap:var(--spacing-sm)}.sync-info-box{grid-gap:var(--spacing-md);background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid #bae6fd;border-radius:var(--radius-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.sync-info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.sync-info-label{color:#0369a1;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.sync-info-value{color:#0c4a6e;font-size:16px;font-weight:600}.settings-help-text{color:var(--color-text-secondary);font-size:13px;line-height:1.5;margin:var(--spacing-xs) 0 0 0}.checkbox-label{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-sm);-webkit-user-select:none;user-select:none}.settings-checkbox{accent-color:var(--color-accent);cursor:pointer;height:18px;width:18px}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:var(--radius-sm);color:#155724;margin-top:var(--spacing-md);padding:var(--spacing-md)}.form-input,.form-select{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.form-input:focus,.form-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #0f62fe1a;outline:none}.toggle-label{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-md)}.toggle-input{display:none}.toggle-switch{background-color:var(--color-border);border-radius:12px;height:24px;position:relative;transition:background-color .2s ease;width:44px}.toggle-switch:after{background-color:#fff;border-radius:50%;content:"";height:20px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:20px}.toggle-input:checked+.toggle-switch{background-color:var(--color-accent)}.toggle-input:checked+.toggle-switch:after{transform:translateX(20px)}.toggle-text{color:var(--color-text-primary);font-weight:500}.form-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md)}.destinations-page{background-color:var(--color-background)}.destinations-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-lg)}.destinations-header h1{color:var(--color-primary);font-size:28px;font-weight:600;margin:0}.destinations-filters{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.search-container{flex:1 1;max-width:400px;position:relative}.search-input{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:14px;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 36px;transition:all .2s ease;width:100%}.search-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px #0f62fe1a}.search-icon{color:var(--color-text-secondary);left:12px;position:absolute;top:50%;transform:translateY(-50%)}.filter-dropdowns{display:flex;gap:var(--spacing-md)}.filter-dropdown{position:relative}.filter-select{appearance:none;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:14px;min-width:120px;padding:var(--spacing-sm) var(--spacing-xl) var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.filter-select:focus,.filter-select:hover{border-color:var(--color-accent)}.filter-select:focus{box-shadow:0 0 0 2px #0f62fe1a;outline:none}.dropdown-icon{color:var(--color-text-secondary);pointer-events:none;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.destinations-table-container{background-color:var(--color-background);border-radius:var(--radius-md);overflow:hidden}.destinations-table{border-collapse:collapse;width:100%}.destinations-table thead{background-color:var(--color-surface);border-bottom:1px solid var(--color-border)}.destinations-table th{color:var(--color-text-secondary);font-size:12px;font-weight:600;letter-spacing:.05em;padding:var(--spacing-md);text-align:left;text-transform:uppercase}.destinations-table tbody tr{border-bottom:1px solid var(--color-border);cursor:pointer;transition:background-color .15s ease}.destinations-table tbody tr:last-child{border-bottom:none}.destinations-table tbody tr:hover{background-color:var(--color-surface)}.destinations-table td{font-size:14px;padding:var(--spacing-md)}.destination-info{align-items:center;display:flex;gap:var(--spacing-md)}.destination-icon{align-items:center;border-radius:var(--radius-sm);color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.destination-info>div{display:flex;flex-direction:column;gap:2px}.destination-icon-img{flex-shrink:0}.destination-name{color:var(--color-text-primary);font-weight:500}.destination-subtitle{color:var(--color-text-secondary);font-size:12px}.destination-name-cell{min-width:200px}.destination-type,.sync-time{color:var(--color-text-secondary)}.sync-time{align-items:center;display:flex;gap:var(--spacing-xs)}.time-icon{color:var(--color-text-secondary)}.rows-synced{color:var(--color-text-primary);font-weight:500}.next-sync{color:var(--color-text-secondary)}.sources-connected{min-width:120px}.sources-icons{align-items:center;display:flex;gap:var(--spacing-xs)}.source-icon-small{align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;flex-shrink:0;font-size:12px;height:24px;justify-content:center;width:24px}.source-icon-more{background-color:var(--color-text-secondary);color:#fff;font-size:10px;font-weight:600}.no-sources{color:var(--color-text-secondary);font-style:italic}.empty-state p{font-size:14px}@media (max-width:768px){.destinations-filters{flex-direction:column}.search-container{max-width:none}.filter-dropdowns{flex-wrap:wrap}.destinations-table-container{overflow-x:auto}.destinations-table{min-width:800px}}.destinations-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:24px}.destination-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px;transition:all .2s}.destination-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.destination-card-header{align-items:center;display:flex;gap:16px;margin-bottom:20px}.destination-card-info h3{color:#1e293b;font-size:18px;font-weight:600;margin:0 0 4px}.destination-type{color:#64748b;font-size:13px;margin:0}.destination-card-body{display:flex;flex-direction:column;gap:12px}.destination-detail{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:8px 0}.destination-detail:last-of-type{border-bottom:none}.detail-label,.detail-value{font-size:13px}.destination-status{border-top:1px solid #f1f5f9;margin-top:8px;padding-top:12px}.page{background-color:var(--color-background)}.page-header{margin-bottom:var(--spacing-xl)}.page-header h1{color:var(--color-primary);font-size:28px;font-weight:600;margin:0 0 var(--spacing-sm) 0}.page-header p{color:var(--color-text-secondary);font-size:16px;line-height:1.5;margin:0}.page-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.empty-state{color:var(--color-text-secondary);margin:0 auto;max-width:400px;padding:var(--spacing-xl) 0;text-align:center}.empty-icon{font-size:48px;margin-bottom:var(--spacing-md)}.empty-state h3{color:var(--color-text-primary);font-size:20px;font-weight:600;margin:0 0 var(--spacing-sm) 0}.empty-state p{margin:0}.team-settings{margin:0 auto;max-width:1200px}.team-settings-header{align-items:flex-start;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.team-header-content{align-items:center;display:flex;gap:1rem}.team-header-icon{align-items:center;background:#3b82f61a;border-radius:12px;color:#3b82f6;display:flex;justify-content:center;padding:.75rem}.team-header-text h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;background-clip:text;font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.team-header-text p{color:#64748b;font-size:1rem;font-weight:500;margin:0}.team-invite-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;box-shadow:0 4px 15px -3px #3b82f64d;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.875rem 1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.team-invite-btn:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 8px 25px -5px #3b82f666;transform:translateY(-2px)}.team-overview{margin-bottom:2rem}.team-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.team-stat-card{align-items:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;gap:var(--spacing-md);padding:var(--spacing-lg);transition:all .2s ease}.team-stat-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.team-stat-icon{align-items:center;background:var(--color-accent-light);border-radius:var(--radius-md);color:var(--color-accent);display:flex;justify-content:center;padding:var(--spacing-sm)}.team-stat-content{display:flex;flex-direction:column}.team-stat-number{color:var(--color-primary);font-size:24px;font-weight:600;margin-bottom:var(--spacing-xs)}.team-stat-label{color:var(--color-text-secondary);font-size:12px;font-weight:400;letter-spacing:.5px;text-transform:uppercase}.team-content{margin-bottom:2rem}.team-info-section{margin-top:2rem}.team-info-card{align-items:flex-start;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:16px;display:flex;gap:1.5rem;padding:2rem}.team-info-icon{align-items:center;background:#3b82f61a;border-radius:12px;color:#3b82f6;display:flex;flex-shrink:0;justify-content:center;padding:1rem}.team-info-content h4{color:#1e293b;font-size:1.25rem;font-weight:700;margin:0 0 1rem}.team-info-content p{color:#64748b;font-size:1rem;font-weight:500;line-height:1.6;margin:0 0 1.5rem}.team-features{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.team-feature{align-items:center;color:#16a34a;display:flex;font-size:.875rem;font-weight:600;padding:.5rem 0}@media (max-width:768px){.team-settings-header{align-items:stretch;flex-direction:column;gap:1rem}.team-stats{grid-template-columns:1fr}.team-info-card{flex-direction:column;padding:1.5rem}.team-features{grid-template-columns:1fr}}.card,.page-container{background-color:var(--color-background)}.card{border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-lg);transition:box-shadow .2s ease}.card:hover{box-shadow:var(--shadow-md)}.card h3{color:var(--color-primary);font-size:18px;font-weight:600;margin:0 0 var(--spacing-md) 0}.card p{color:var(--color-text-secondary);font-size:14px;line-height:1.5;margin:0}.catalog-page{background-color:var(--color-background)}.catalog-header{margin-bottom:var(--spacing-xl)}.catalog-header h1{color:var(--color-primary);font-size:32px;font-weight:600;letter-spacing:-.02em;margin:0 0 var(--spacing-sm) 0}.catalog-header p{color:var(--color-text-secondary);font-size:15px;line-height:1.5;margin:0}.catalog-filters{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);padding:var(--spacing-lg)}.catalog-tabs{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.catalog-controls{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.tab-button{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;font-size:14px;font-weight:500;padding:var(--spacing-sm) var(--spacing-lg);transition:all .2s ease;white-space:nowrap}.tab-button:hover{background-color:var(--color-surface);border-color:var(--color-accent);color:var(--color-text-primary)}.tab-button.active{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.catalog-search{flex:1 1;min-width:280px;position:relative}.catalog-search .search-input{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 40px;transition:all .2s ease;width:100%}.catalog-search .search-input::placeholder{color:var(--color-text-secondary)}.catalog-search .search-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #0f62fe1a;outline:none}.catalog-search .search-icon{color:var(--color-text-secondary);left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.catalog-sort,.sort-toggle-button{align-items:center;display:flex}.sort-toggle-button{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:14px;font-weight:600;gap:10px;justify-content:center;min-width:80px;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.sort-toggle-button:hover{background-color:var(--color-surface);border-color:var(--color-accent)}.sort-toggle-button:active{transform:scale(.98)}.sort-label{font-size:13px;letter-spacing:.02em;line-height:1.1}.sort-arrow{color:var(--color-text-secondary);font-size:18px;line-height:1;transition:color .2s ease}.sort-toggle-button:hover .sort-arrow{color:var(--color-accent)}.catalog-view-toggle{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;gap:0;padding:2px}.view-toggle-button{align-items:center;background:none;border:none;border-radius:calc(var(--radius-sm) - 2px);color:var(--color-text-secondary);cursor:pointer;display:flex;justify-content:center;padding:var(--spacing-xs) var(--spacing-sm);transition:all .2s ease}.view-toggle-button:hover{background-color:var(--color-surface);color:var(--color-text-primary)}.view-toggle-button.active{background-color:var(--color-accent);color:#fff}.catalog-content .empty-state,.catalog-content .error-state,.catalog-content .loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:var(--spacing-xl) var(--spacing-lg);text-align:center}.catalog-content .empty-state p,.catalog-content .error-state p,.catalog-content .loading-state p{color:var(--color-text-secondary);font-size:15px;margin:0 0 var(--spacing-md) 0}.catalog-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));padding:2px}.catalog-card{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;height:100%;padding:var(--spacing-lg);transition:all .25s ease}.catalog-card:hover{border-color:var(--color-accent);box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.catalog-card-header{align-items:flex-start;display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);position:relative}.catalog-source-icon,.catalog-source-logo{align-items:center;background-color:#fff;border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.catalog-card-title{flex:1 1;min-width:0}.catalog-card-title h3{color:var(--color-text-primary);font-size:17px;font-weight:600;line-height:1.3;margin:0 0 var(--spacing-xs) 0}.catalog-card-category{background-color:var(--color-surface);border-radius:var(--radius-sm);color:var(--color-text-secondary);display:inline-block;font-size:12px;padding:3px 8px}.api-key-badge,.oauth-badge,.password-badge,.token-badge{border-radius:var(--radius-sm);font-size:10px;font-weight:600;letter-spacing:.05em;padding:3px 8px;position:absolute;right:0;text-transform:uppercase;top:0}.oauth-badge{background-color:#0f62fe1a;color:var(--color-accent)}.api-key-badge{background-color:#10b9811a;color:#10b981}.token-badge{background-color:#f59e0b1a;color:#f59e0b}.password-badge{background-color:#8b5cf61a;color:#8b5cf6}.catalog-card-description{color:var(--color-text-secondary);flex:1 1;font-size:14px;line-height:1.6;margin:0 0 var(--spacing-lg) 0}.catalog-card-footer{display:flex;justify-content:flex-end;margin-top:auto;padding-top:var(--spacing-sm)}.catalog-table-container{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.catalog-table{border-collapse:collapse;width:100%}.catalog-table thead{background-color:var(--color-surface);border-bottom:2px solid var(--color-border)}.catalog-table th{color:var(--color-text-secondary);font-size:12px;font-weight:600;letter-spacing:.05em;padding:var(--spacing-md) var(--spacing-lg);text-align:left;text-transform:uppercase;white-space:nowrap}.catalog-table tbody tr{border-bottom:1px solid var(--color-border);transition:background-color .15s ease}.catalog-table tbody tr:last-child{border-bottom:none}.catalog-table tbody tr:hover{background-color:var(--color-surface)}.catalog-table td{color:var(--color-text-primary);font-size:14px;padding:var(--spacing-md) var(--spacing-lg);vertical-align:middle}.catalog-table-name{min-width:200px}.catalog-table-name-content{align-items:center;display:flex;font-weight:500;gap:var(--spacing-sm)}.catalog-table-icon,.catalog-table-logo{border-radius:var(--radius-sm);flex-shrink:0;height:32px;width:32px}.catalog-table-description{color:var(--color-text-secondary);line-height:1.5;max-width:500px}@media (max-width:1024px){.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.catalog-header h1{font-size:24px}.catalog-filters{padding:var(--spacing-md)}.catalog-tabs{justify-content:flex-start;width:100%}.tab-button{flex:1 1;min-width:0;text-align:center}.catalog-controls{flex-direction:column;gap:var(--spacing-sm);width:100%}.catalog-search{min-width:100%;width:100%}.catalog-sort,.catalog-view-toggle,.sort-toggle-button{width:100%}.catalog-view-toggle{justify-content:center}.catalog-grid{gap:var(--spacing-md);grid-template-columns:1fr}.catalog-table-container{overflow-x:auto}.catalog-table{min-width:700px}.catalog-table td,.catalog-table th{padding:var(--spacing-sm) var(--spacing-md)}}@media (max-width:480px){.catalog-header h1{font-size:20px}.catalog-header p{font-size:14px}.catalog-card{padding:var(--spacing-md)}.catalog-source-icon,.catalog-source-logo{height:40px;width:40px}.catalog-card-title h3{font-size:16px}}.connection-name-input{margin-bottom:20px}.connection-name-input .input-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.connection-name-input label{color:#1f2937;font-size:14px;font-weight:600}.connection-name-input .required{color:#ef4444}.connection-name-input .btn-suggestion{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:4px 12px;transition:all .2s}.connection-name-input .btn-suggestion:hover{box-shadow:0 4px 8px #667eea4d;transform:translateY(-1px)}.connection-name-input .input{border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:12px;transition:all .2s;width:100%}.connection-name-input .input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.connection-name-input .input.error{border-color:#ef4444}.connection-name-input .input.error:focus{box-shadow:0 0 0 3px #ef44441a}.connection-name-input .input.warning{border-color:#f59e0b}.connection-name-input .input.warning:focus{box-shadow:0 0 0 3px #f59e0b1a}.connection-name-input .char-count{color:#6b7280;font-size:12px;margin-top:4px;text-align:right}.connection-name-input .validation-messages{border-radius:8px;font-size:13px;margin-top:8px;padding:12px}.connection-name-input .validation-messages.errors{background:#fef2f2;border:1px solid #fee2e2}.connection-name-input .validation-messages.warnings{background:#fffbeb;border:1px solid #fef3c7}.connection-name-input .message{align-items:flex-start;display:flex;gap:8px;margin-bottom:6px}.connection-name-input .message:last-child{margin-bottom:0}.connection-name-input .message.error{color:#991b1b}.connection-name-input .message.warning{color:#92400e}.connection-name-input .table-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:16px;padding:16px}.connection-name-input .preview-label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.connection-name-input .preview-name{background:#1f2937;border-radius:6px;color:#10b981;display:block;font-family:Monaco,Courier New,monospace;font-size:13px;margin-bottom:8px;padding:12px;word-break:break-all}.connection-name-input .preview-note{color:#6b7280;font-size:11px}.connection-name-input .preview-note code{background:#e5e7eb;border-radius:4px;font-size:11px;padding:2px 6px}.connection-name-input .naming-guidelines{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-top:16px;padding:12px}.connection-name-input .naming-guidelines summary{border-radius:4px;color:#374151;cursor:pointer;font-weight:600;padding:4px;transition:background .2s;-webkit-user-select:none;user-select:none}.connection-name-input .naming-guidelines summary:hover{background:#f9fafb}.connection-name-input .guidelines-content{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}.connection-name-input .tip{background:#eff6ff;border-left:3px solid #3b82f6;border-radius:6px;color:#1e40af;font-size:13px;margin-bottom:16px;padding:12px}.connection-name-input .examples{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}@media (max-width:768px){.connection-name-input .examples{grid-template-columns:1fr}}.connection-name-input .bad-examples,.connection-name-input .good-examples{border-radius:8px;padding:12px}.connection-name-input .good-examples{background:#f0fdf4;border:1px solid #bbf7d0}.connection-name-input .bad-examples{background:#fef2f2;border:1px solid #fecaca}.connection-name-input .bad-examples strong,.connection-name-input .good-examples strong{display:block;font-size:13px;margin-bottom:12px}.connection-name-input .good-examples strong{color:#166534}.connection-name-input .bad-examples strong{color:#991b1b}.connection-name-input .examples ul{list-style:none;margin:0;padding:0}.connection-name-input .examples li{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:8px}.connection-name-input .examples li code{background:#fff;border-radius:4px;flex:1 1;font-size:12px;padding:4px 8px}.connection-name-input .btn-use-example{background:#10b981;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:11px;padding:4px 12px;transition:all .2s;white-space:nowrap}.connection-name-input .btn-use-example:hover{background:#059669;transform:translateY(-1px)}.connection-name-input .reason{color:#6b7280;font-size:11px;font-style:italic}.google-ads-setup{align-items:center;background:#fff;display:flex;height:100vh;justify-content:center;left:0;margin:0;overflow:hidden;padding:0;position:fixed;top:0;width:100vw}.setup-container{border-radius:0;box-shadow:none;box-sizing:border-box;max-height:100vh;max-width:520px;overflow-y:auto;padding:40px 20px;width:100%}.setup-container::-webkit-scrollbar{width:8px}.setup-container::-webkit-scrollbar-track{background:#f8f9fa}.setup-container::-webkit-scrollbar-thumb{background:#dadce0;border-radius:4px}.setup-container::-webkit-scrollbar-thumb:hover{background:#bdc1c6}.setup-content{box-sizing:border-box;max-width:100%;padding:0}.setup-step{animation:fadeIn .3s ease-out}.setup-header{border-bottom:1px solid #f1f3f4;margin-bottom:40px;padding-bottom:24px}.setup-header h2{color:#202124;font-size:28px;font-weight:400;letter-spacing:-.01em;line-height:1.2;margin:0 0 12px}.setup-header p{color:#5f6368;font-size:15px;margin:0 auto;max-width:420px}.oauth-section{margin:0;max-width:100%;text-align:center}.oauth-benefits{background:#fff;border:1px solid #e8eaed;border-radius:8px;box-shadow:0 1px 3px #3c404314;margin-bottom:32px;padding:28px 24px;text-align:left}.oauth-benefits h3{align-items:center;color:#202124;display:flex;font-size:15px;font-weight:500;gap:8px;letter-spacing:0;margin:0 0 20px}.oauth-benefits h3:before{background:#1a73e8;border-radius:2px;content:"";height:16px;width:4px}.oauth-benefits ul{list-style:none;margin:0;padding:0}.oauth-benefits li{align-items:flex-start;color:#3c4043;display:flex;font-size:14px;gap:12px;line-height:1.6;margin-bottom:14px;padding-left:4px}.oauth-benefits li:last-child{margin-bottom:0}.oauth-benefits li svg{background:#e6f4ea;border-radius:50%;color:#1e8e3e;flex-shrink:0;margin-top:2px;padding:3px}.oauth-button{align-items:center;background:#1a73e8;border:none;border-radius:6px;box-shadow:0 1px 2px 0 #3c40434d,0 1px 3px 1px #3c404326;color:#fff;cursor:pointer;display:inline-flex;font-size:15px;font-weight:500;gap:10px;justify-content:center;margin:0 0 20px;max-width:100%;overflow:hidden;padding:14px 24px;position:relative;transition:all .2s ease;width:100%}.oauth-button:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.oauth-button:hover:before{left:100%}.oauth-button:hover:not(:disabled){background:#1765cc;box-shadow:0 1px 3px 0 #3c40434d,0 4px 8px 3px #3c404326;transform:translateY(-1px)}.oauth-button:active{background:#185abc;box-shadow:0 1px 2px 0 #3c40434d,0 1px 3px 1px #3c404326;transform:translateY(0)}.oauth-button:disabled{background:#f1f3f4;box-shadow:none;color:#80868b;cursor:not-allowed;transform:none}.oauth-button svg{transition:transform .3s ease}.oauth-button:hover:not(:disabled) svg{transform:rotate(15deg) scale(1.1)}.oauth-disclaimer{background:#f8f9fa;border:1px solid #e8eaed;border-radius:6px;color:#5f6368;font-size:13px;line-height:1.6;margin:0;padding:16px 20px;text-align:center}.setup-form{max-width:none}.form-group label{color:#202124}.form-group input{background:#fff;border:1px solid #dadce0;border-radius:4px;color:#202124;font-size:14px;padding:12px;transition:border-color .2s;width:100%}.form-group input:hover{border-color:#bdc1c6}.form-group input:focus{border-color:#1a73e8;box-shadow:0 0 0 1px #1a73e8;outline:none}.form-group small{color:#5f6368}.account-selection{background:#fff;border:1px solid #dadce0;border-radius:8px;display:flex;flex-direction:column;max-height:400px;overflow:hidden;overflow-y:auto}.account-selection::-webkit-scrollbar{width:8px}.account-selection::-webkit-scrollbar-track{background:#f8f9fa}.account-selection::-webkit-scrollbar-thumb{background:#dadce0;border-radius:4px}.account-selection::-webkit-scrollbar-thumb:hover{background:#bdc1c6}.detected-accounts{background:#f8f9fa;border-bottom:1px solid #dadce0;flex-shrink:0;padding:12px 16px}.detected-accounts h4{color:#5f6368;font-size:12px;font-weight:500;letter-spacing:.5px;margin:0;text-transform:uppercase}.accounts-list{flex:1 1;max-height:280px;overflow-y:auto}.accounts-list::-webkit-scrollbar{width:8px}.accounts-list::-webkit-scrollbar-track{background:#fff}.accounts-list::-webkit-scrollbar-thumb{background:#dadce0;border-radius:4px}.accounts-list::-webkit-scrollbar-thumb:hover{background:#bdc1c6}.account-option{align-items:center;border-bottom:1px solid #f1f3f4;cursor:pointer;display:flex;gap:12px;padding:14px 16px;transition:background .15s ease}.account-option:last-child{border-bottom:none}.account-option:hover{background:#f8f9fa}.account-option input[type=radio]{accent-color:#1a73e8;cursor:pointer;flex-shrink:0;height:16px;margin:0;width:16px}.account-info{flex:1 1;min-width:0}.account-name{color:#202124;font-size:14px;font-weight:500;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-id{color:#5f6368;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px}.account-badge,.inactive-badge{border-radius:3px;display:inline-block;font-size:10px;font-weight:500;letter-spacing:.5px;margin-top:4px;padding:2px 6px;text-transform:uppercase}.inactive-badge{background:#f1f3f4;border:1px solid #dadce0;color:#5f6368}.account-badge.manager{background:#fef7e0;border:1px solid #fde293;color:#b45309}.account-radio{margin-left:12px}.account-radio input[type=radio]{accent-color:#1a73e8;cursor:pointer;height:16px;width:16px}.manual-entry-toggle{margin-top:12px;text-align:left}.manual-entry-toggle .toggle-button,.manual-entry-toggle button{background:none;border:none;color:#1a73e8;cursor:pointer;font-size:13px;font-weight:500;padding:0;text-decoration:none;transition:opacity .2s}.manual-entry-toggle .toggle-button:hover,.manual-entry-toggle button:hover{opacity:.8;text-decoration:underline}.manual-entry{margin-top:0}.manual-entry .form-input{background:#fff;border:1px solid #dadce0;border-radius:4px;color:#202124;font-family:SF Mono,Monaco,Consolas,monospace;font-size:14px;padding:12px;transition:border-color .2s;width:100%}.manual-entry .form-input:hover{border-color:#bdc1c6}.manual-entry .form-input:focus{border-color:#1a73e8;box-shadow:0 0 0 1px #1a73e8;outline:none}.manual-entry .form-hint{color:#5f6368;display:block;font-size:12px;margin-top:6px}.error-message,.warning-message{align-items:flex-start;background:#fef7e0;border:1px solid #fde293;border-radius:4px;color:#b45309;display:flex;font-size:13px;gap:8px;line-height:1.5;margin-bottom:16px;padding:12px 16px}.error-message svg,.warning-message svg{flex-shrink:0;margin-top:1px}.setup-actions button{align-items:center;background:#1a73e8;border:none;border-radius:4px;box-shadow:0 1px 2px 0 #3c40434d,0 1px 3px 1px #3c404326;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:10px 24px;transition:background .2s,box-shadow .2s;width:100%}.setup-actions button:hover:not(:disabled){background:#1765cc;box-shadow:0 1px 3px 0 #3c40434d,0 4px 8px 3px #3c404326}.setup-actions button:disabled{background:#f1f3f4;box-shadow:none;color:#80868b;cursor:not-allowed}.finalizing-content{padding:40px 0}.finalizing-spinner{display:inline-flex;margin-bottom:20px}.finalizing-spinner svg{animation:spin 1s linear infinite;color:#1a73e8}.finalizing-content h2{color:#202124;font-size:20px;font-weight:400;margin:0 0 8px}.finalizing-content p{color:#5f6368;font-size:14px}.error-banner,.warning-banner{align-items:flex-start;border-radius:4px;display:flex;font-size:14px;gap:12px;line-height:1.5;margin-bottom:16px;padding:12px 16px}.error-banner{background:#fce8e6;border:1px solid #f6aea9;color:#c5221f}.warning-banner{background:#fef7e0;border:1px solid #fde293;color:#b45309}.error-banner svg,.warning-banner svg{flex-shrink:0;margin-top:1px}.error-banner button,.warning-banner button{background:none;border:none;color:inherit;cursor:pointer;font-size:18px;margin-left:auto;opacity:.6;padding:0;transition:opacity .2s}.error-banner button:hover,.warning-banner button:hover{opacity:1}@media (max-width:768px){.setup-container{padding:32px 20px}.setup-header{margin-bottom:32px;padding-bottom:20px}.setup-header h2{font-size:24px}.setup-header p{font-size:14px}.oauth-benefits{margin-bottom:24px;padding:20px 16px}.oauth-button{font-size:14px;padding:12px 20px}}.facebook-ads-setup .oauth-benefits h3:before{background:#1877f2}.facebook-ads-setup .oauth-benefits li svg{background:#e7f3ff}.facebook-ads-setup .oauth-button{background:#1877f2}.facebook-ads-setup .oauth-button:hover:not(:disabled){background:#166fe5}.facebook-ads-setup .oauth-button:active{background:#1466d8}.facebook-ads-setup .form-group input:focus,.facebook-ads-setup .manual-entry .form-input:focus{border-color:#1877f2;box-shadow:0 0 0 1px #1877f2}.facebook-ads-setup .account-option input[type=radio],.facebook-ads-setup .account-radio input[type=radio]{accent-color:#1877f2}.facebook-ads-setup .manual-entry-toggle .toggle-button,.facebook-ads-setup .manual-entry-toggle button{color:#1877f2}.facebook-ads-setup .setup-actions button{background:#1877f2}.facebook-ads-setup .setup-actions button:hover:not(:disabled){background:#166fe5}.facebook-ads-setup .finalizing-spinner svg{color:#1877f2}.facebook-ads-setup .setup-step-header{margin-bottom:24px;text-align:center}.facebook-ads-setup .setup-step-icon{align-items:center;background:#1877f2;border-radius:8px;display:flex;height:48px;justify-content:center;margin:0 auto 12px;width:48px}.facebook-ads-setup .setup-step-icon svg{color:#fff}.facebook-ads-setup .oauth-info{background:#f8f9fa;border:1px solid #dadce0;border-left:3px solid #1877f2;border-radius:8px;margin-bottom:24px;padding:24px}.facebook-ads-setup .oauth-info h3{color:#202124;font-size:14px;font-weight:500;margin:0 0 16px}.facebook-ads-setup .oauth-info ul{list-style:none;margin:0;padding:0}.facebook-ads-setup .oauth-info li{color:#3c4043;font-size:14px;line-height:1.5;margin-bottom:10px;padding-left:20px;position:relative}.facebook-ads-setup .oauth-info li:last-child{margin-bottom:0}.facebook-ads-setup .oauth-info li:before{color:#1e8e3e;content:"✓";font-weight:700;left:0;position:absolute;top:0}.facebook-ads-setup .setup-step-actions{display:flex;gap:12px;margin-top:24px}.facebook-ads-setup .setup-step-actions button{align-items:center;border-radius:4px;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:10px 24px;transition:background .2s,box-shadow .2s}.facebook-ads-setup .setup-step-actions button[variant=secondary]{background:#fff;border:1px solid #dadce0;box-shadow:0 1px 2px 0 #3c40434d,0 1px 3px 1px #3c404326;color:#3c4043}.facebook-ads-setup .setup-step-actions button[variant=secondary]:hover:not(:disabled){background:#f8f9fa;box-shadow:0 1px 3px 0 #3c40434d,0 4px 8px 3px #3c404326}.facebook-ads-setup .setup-step-actions button[variant=primary]{background:#1877f2;border:none;box-shadow:0 1px 2px 0 #3c40434d,0 1px 3px 1px #3c404326;color:#fff}.facebook-ads-setup .setup-step-actions button[variant=primary]:hover:not(:disabled){background:#166fe5;box-shadow:0 1px 3px 0 #3c40434d,0 4px 8px 3px #3c404326}.facebook-ads-setup .account-selection{max-height:none;overflow:visible}.facebook-ads-setup .manual-entry-toggle{background:#fff;border-top:1px solid #f1f3f4;margin-top:0;padding:12px 16px}.bigquery-setup{background:#fff;min-height:100vh;padding:20px}@media (max-width:768px){.bigquery-setup{padding:16px}.setup-content{padding:24px}.setup-header h2{font-size:20px}.setup-benefits{padding:20px}.modal-content{width:95%}.modal-actions{flex-direction:column-reverse}.modal-button{width:100%}}.snowflake-setup{background:#fff;min-height:100vh;padding:20px}.form-input{border-radius:8px;font-size:14px;padding:12px 16px;transition:all .2s}.form-input:focus{box-shadow:0 0 0 2px #0f62fe1a}.setup-container{background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001a;margin:0 auto;max-width:600px;overflow:hidden}.setup-content{animation:fadeIn .3s ease-in-out;padding:32px}.setup-header{margin-bottom:32px;text-align:center}.setup-header h2{color:#1e293b;font-size:24px;font-weight:600;margin:0 0 8px}.setup-header p{color:#64748b;font-size:16px;line-height:1.5;margin:0}.error-banner{align-items:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;display:flex;font-size:14px;gap:12px;margin-bottom:24px;padding:12px 16px}.error-banner button{background:none;border:none;color:inherit;cursor:pointer;font-size:18px;margin-left:auto;padding:0}.success-message{background-color:#f0fdf4;border-radius:8px;font-size:14px;gap:12px;margin-bottom:16px;padding:12px 16px}.connected-details{background:#f8fafc;border-radius:8px;margin-bottom:24px;padding:24px}.detail-item{align-items:center;border-bottom:1px solid #e2e8f0;padding:12px 0}.detail-label{color:#64748b;font-size:14px;font-weight:500}.detail-value{color:#1e293b;font-family:monospace;font-size:14px}.success-text{align-items:center;color:#16a34a;display:flex;font-family:inherit;gap:6px}.setup-benefits{background:#f8fafc;border-radius:8px;margin-bottom:24px;padding:24px}.setup-benefits h3{color:#1e293b;font-size:16px;font-weight:600;margin:0 0 16px}.setup-benefits ul{list-style:none;margin:0;padding:0}.setup-benefits li{align-items:center;color:#334155;display:flex;font-size:14px;gap:12px;margin-bottom:12px}.setup-benefits li:last-child{margin-bottom:0}.setup-benefits li svg{color:#22c55e;flex-shrink:0}.setup-form{margin-top:24px}.form-group{margin-bottom:24px}.form-group label{color:#1e293b;margin-bottom:8px}.form-group small{color:#64748b;display:block;font-size:12px;margin-top:6px}.file-upload-label{align-items:center;background-color:#fff;border:2px dashed #d1d5db;border-radius:8px;box-sizing:border-box;color:#1e293b;cursor:pointer;display:inline-flex;font-size:14px;gap:8px;padding:12px 20px;transition:all .2s;width:100%}.file-upload-label:hover{background-color:#f8fafc;border-color:#0f62fe}.account-info-display{background:#f8fafc;border-radius:8px;margin-bottom:16px;padding:16px}.info-row{display:flex;gap:12px;margin-bottom:8px}.info-row:last-child{margin-bottom:0}.info-label{color:#64748b;font-size:13px;font-weight:500;min-width:70px}.info-value{color:#1e293b;font-family:monospace;font-size:13px;word-break:break-all}.button-group{margin-top:24px}.connect-button,.test-button{align-items:center;background:#0f62fe;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:8px;justify-content:center;padding:16px 24px;transition:all .2s;width:100%}.connect-button:hover:not(:disabled),.test-button:hover:not(:disabled){background:#0f53d9;transform:translateY(-1px)}.connect-button:disabled,.test-button:disabled{background:#94a3b8;cursor:not-allowed;transform:none}.disconnect-button{background:#fff;border:1px solid #dc2626;border-radius:8px;color:#dc2626;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .2s;width:100%}.disconnect-button:hover:not(:disabled){background:#fef2f2}.disconnect-button:disabled{background:#f5f5f5;border-color:#d1d5db;color:#94a3b8;cursor:not-allowed}.setup-actions{margin-top:24px}.finalizing-content{padding:40px 20px;text-align:center}.finalizing-content svg{color:#0f62fe;margin-bottom:16px}.finalizing-content p{color:#64748b;font-size:16px;margin:0}.spin{animation:spin 1s linear infinite}.modal-overlay{align-items:center;animation:fadeIn .2s ease-in-out;background:#0006;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.modal-content{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:480px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{border-bottom:1px solid #e2e8f0;padding:24px 24px 16px}.modal-header h3{color:#1e293b;font-size:20px;font-weight:600;margin:0}.modal-body{padding:24px}.modal-body p{color:#64748b;font-size:14px;line-height:1.6;margin:0 0 12px}.modal-body p:last-child{margin-bottom:0}.modal-actions{gap:12px;padding:16px 24px 24px}.modal-button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.modal-button.cancel{background:#fff;border:1px solid #d1d5db;color:#64748b}.modal-button.cancel:hover{background:#f8fafc;border-color:#94a3b8}.modal-button.confirm{background:#dc2626;color:#fff}.modal-button.confirm:hover:not(:disabled){background:#b91c1c}.modal-button.confirm:disabled{background:#fca5a5;cursor:not-allowed}@media (max-width:768px){.snowflake-setup{padding:16px}.setup-content{padding:24px}.setup-header h2{font-size:20px}.setup-benefits{padding:20px}.modal-content{width:95%}.modal-actions{flex-direction:column-reverse}.modal-button{width:100%}}.reports-nav{height:100%;padding:var(--spacing-lg) 0}.reports-nav-section{margin-bottom:var(--spacing-xl)}.reports-nav-section-title{color:#9ca3af;font-size:11px;font-weight:700;letter-spacing:1px;margin:0 0 var(--spacing-md) 0;padding:0 var(--spacing-lg);text-transform:uppercase}.reports-nav-items{display:flex;flex-direction:column;gap:6px}.reports-nav-item{align-items:flex-start;background:#0000;border-radius:8px;color:#37352f;cursor:pointer;display:flex;gap:var(--spacing-md);margin:0 var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);position:relative;text-decoration:none;transition:all .2s ease}.reports-nav-item:hover{background-color:#f7f6f3;color:#2f3349;transform:translateX(2px)}.reports-nav-item.active{background:linear-gradient(135deg,#e6f0ff,#d6e8ff);border-left:3px solid #0f62fe;box-shadow:0 2px 8px #0f62fe1f;color:#0f62fe;font-weight:600}.reports-nav-item.active:before{display:none}.reports-nav-icon{flex-shrink:0;margin-top:2px}.reports-nav-item-content{display:flex;flex:1 1;flex-direction:column;gap:2px}.reports-nav-label-row{align-items:center;display:flex;gap:var(--spacing-sm);justify-content:space-between}.reports-nav-label{font-size:14px;font-weight:600}.setup-badge{background:#fef3c7;border-radius:4px;color:#92400e;flex-shrink:0;font-size:11px;font-weight:600;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.reports-nav-description{color:#6c6c6c;font-size:12px;line-height:1.4}.reports-nav-item.active .reports-nav-description{color:#2f3349;font-weight:500}.reports-nav-item.active .reports-nav-icon{color:#0f62fe}.reports-nav-loading{align-items:center;color:#6c6c6c;display:flex;font-size:14px;gap:var(--spacing-sm);padding:var(--spacing-lg)}.reports-nav-loading .spinner{animation:spin 1s linear infinite}.reports-nav-empty{align-items:center;color:#9ca3af;display:flex;flex-direction:column;gap:var(--spacing-sm);justify-content:center;padding:var(--spacing-xl);text-align:center}.reports-nav-empty p{color:#6c6c6c;font-size:13px;margin:0}@media (max-width:768px){.reports-nav{padding:var(--spacing-sm) 0}.reports-nav-items{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-xs)}.reports-nav-item{flex:1 1;min-width:150px}.reports-nav-description{display:none}}.reports-layout-page{background:#fafafa;bottom:0;display:flex;flex-direction:column;height:100vh;left:240px;margin:0!important;padding:0!important;position:absolute;right:0;top:64px}.reports-layout{display:flex;flex:1 1;overflow:hidden;position:relative}.reports-nav-container{background:#fff;border-right:1px solid #e9e5db;flex-shrink:0;overflow-y:auto;transition:all .3s cubic-bezier(.4,0,.2,1);width:280px}.reports-content{background:#fafafa;flex:1 1;min-height:0;overflow:auto;padding:0;position:relative}.reports-sidebar-toggle{align-items:center;background:#fff;border:1px solid #e9e5db;border-radius:50%;box-shadow:0 2px 8px #00000014;cursor:pointer;display:flex;height:36px;justify-content:center;left:16px;position:absolute;top:8px;transition:all .2s ease;width:36px;z-index:100}.reports-sidebar-toggle:hover{background:#f7f6f3;border-color:#9ca3af;box-shadow:0 4px 12px #0000001f}.reports-sidebar-toggle svg{color:#37352f;transition:transform .3s ease}.reports-layout:not(:has(.reports-nav-container)) .reports-sidebar-toggle svg{transform:rotate(180deg)}@media (max-width:1024px){.reports-layout-page{left:64px}}@media (max-width:768px){.reports-layout-page{left:0}.reports-layout{flex-direction:column}.reports-nav-container{border-bottom:1px solid #e9e5db;border-right:none;max-height:200px;overflow-y:visible;width:100%}.reports-sidebar-toggle{left:12px;top:8px}}.setup-wizard-container{background:#fff;display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:var(--spacing-xl)}.wizard-progress{align-items:center;display:flex;justify-content:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg)}.progress-step{flex-direction:column;gap:8px}.progress-step,.step-circle{align-items:center;display:flex}.step-circle{background:#e9e5db;border-radius:50%;color:#6b7280;font-size:16px;font-weight:600;height:40px;justify-content:center;transition:all .3s ease;width:40px}.progress-step.active .step-circle{background:#0f62fe;box-shadow:0 0 0 4px #0f62fe1a;color:#fff}.progress-step.completed .step-circle{background:#10b981;color:#fff}.progress-step span{color:#6b7280;font-size:13px;font-weight:500}.progress-step.active span{color:#0f62fe;font-weight:600}.progress-line{background:#e9e5db;height:2px;margin:0 12px 24px;width:80px}.wizard-content{flex:1 1;margin:0 auto;max-width:700px;width:100%}.wizard-step{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.wizard-step h2{color:var(--color-text-primary);font-size:28px;font-weight:600;margin:0 0 var(--spacing-sm) 0}.step-description{color:var(--color-text-secondary);font-size:16px;line-height:1.5;margin:0 0 var(--spacing-lg) 0}.requirements-section{background:#f7f6f3;border-radius:8px;margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.requirements-section h3{color:var(--color-text-primary);font-size:18px;font-weight:600;margin:0 0 var(--spacing-md) 0}.requirements-list{display:flex;flex-direction:column;gap:var(--spacing-sm);list-style:none;margin:0;padding:0}.requirements-list li{align-items:flex-start;color:var(--color-text-primary);display:flex;font-size:15px;gap:var(--spacing-sm);line-height:1.5}.req-icon{color:#10b981;flex-shrink:0;margin-top:2px}.validation-loading{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-md);justify-content:center;padding:var(--spacing-xl)}.validation-results{margin-top:var(--spacing-lg)}.validation-success{padding:var(--spacing-xl);text-align:center}.success-icon{color:#10b981;margin-bottom:var(--spacing-md)}.validation-success h3{color:var(--color-text-primary);font-size:24px;font-weight:600;margin:0 0 var(--spacing-sm) 0}.validation-success p{color:var(--color-text-secondary);font-size:16px;margin:0}.validation-errors{padding:var(--spacing-lg)}.error-icon{color:#dc2626;margin-bottom:var(--spacing-md)}.validation-errors h3{color:#dc2626;font-size:20px;font-weight:600;margin:0 0 var(--spacing-md) 0}.error-list{flex-direction:column;margin-bottom:var(--spacing-lg)}.error-item,.error-list{display:flex;gap:var(--spacing-sm)}.error-item{align-items:flex-start;background:#fee2e2;border-radius:6px;color:#991b1b;font-size:14px;line-height:1.5;padding:var(--spacing-sm) var(--spacing-md)}.error-item svg{flex-shrink:0;margin-top:2px}.validation-warnings{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.warning-item{align-items:flex-start;background:#fef3c7;border-radius:6px;color:#92400e;display:flex;font-size:14px;gap:var(--spacing-sm);line-height:1.5;padding:var(--spacing-sm) var(--spacing-md)}.warning-item svg{flex-shrink:0;margin-top:2px}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;font-size:14px;margin-bottom:var(--spacing-sm)}.form-group label,.form-input{color:var(--color-text-primary)}.form-input{border:1px solid #d1d5db;border-radius:6px;font-size:15px;padding:10px 14px;transition:all .2s ease;width:100%}.form-input:focus{border-color:#0f62fe;box-shadow:0 0 0 3px #0f62fe1a;outline:none}.url-input-group{gap:var(--spacing-sm)}.url-input-group .form-input{flex:1 1}.paste-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#37352f;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.paste-btn:hover{background:#f7f6f3;border-color:#9ca3af}.form-hint{color:var(--color-text-secondary);display:block;font-size:13px;line-height:1.4;margin-top:var(--spacing-xs)}.success-step{padding:var(--spacing-xl);text-align:center}.success-step .success-icon{color:#10b981;margin-bottom:var(--spacing-lg)}.success-step h2{font-size:32px}.success-details{background:#f7f6f3;border-radius:8px;margin:var(--spacing-lg) 0;padding:var(--spacing-lg);text-align:left}.detail-item{border-bottom:1px solid #e9e5db;display:flex;justify-content:space-between;padding:var(--spacing-sm) 0}.detail-item:last-child{border-bottom:none}.detail-item strong{color:var(--color-text-secondary);font-size:14px;font-weight:500}.detail-item span{color:var(--color-text-primary);font-size:14px;font-weight:500}.wizard-actions{border-top:1px solid #e9e5db;display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg)}.wizard-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:8px;padding:12px 24px;transition:all .2s ease}.wizard-btn.primary{background:#0f62fe;color:#fff}.wizard-btn.primary:hover{background:#0043ce}.wizard-btn.primary:disabled{background:#9ca3af;cursor:not-allowed}.wizard-btn.secondary{background:#fff;border:1px solid #d1d5db;color:#37352f}.wizard-btn.secondary:hover{background:#f7f6f3}.wizard-btn.secondary:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.setup-wizard-container{padding:var(--spacing-md)}.wizard-progress{flex-wrap:wrap;gap:var(--spacing-sm)}.progress-line{margin:0 6px;width:40px}.progress-step span{font-size:11px}.step-circle{font-size:14px;height:36px;width:36px}.wizard-step h2{font-size:24px}.success-step h2{font-size:26px}.wizard-actions{flex-direction:column}.wizard-btn{justify-content:center;width:100%}}.add-report-modal{max-width:600px;width:100%}.url-input-group{align-items:center;display:flex;gap:8px}.url-input-group input{flex:1 1}.btn-paste{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:10px 12px;transition:all .2s ease}.btn-paste:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.btn-paste:active:not(:disabled){background:#d1d5db}.btn-paste:disabled{cursor:not-allowed;opacity:.5}.field-hint{color:#6b7280;display:block;font-size:13px;line-height:1.4;margin-top:6px}.alert{align-items:flex-start;border-radius:8px;display:flex;font-size:14px;gap:10px;line-height:1.5;margin-bottom:20px;padding:12px 16px}.alert svg{flex-shrink:0;margin-top:2px}.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.alert-error svg{color:#dc2626}.alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.alert-success svg{color:#16a34a}@media (max-width:640px){.add-report-modal{margin:10px;max-width:100%}.url-input-group{flex-direction:column}.btn-paste{width:100%}}.report-viewer-container{background:#fff;display:flex;flex-direction:column;height:100%}.report-viewer-header{align-items:center;background:#fff;border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);padding-left:60px}.report-viewer-title{align-items:center;display:flex;gap:var(--spacing-md)}.report-viewer-title h2{color:var(--color-text-primary);font-size:18px;font-weight:600;margin:0}.instance-selector{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;font-weight:500;max-width:250px;padding:8px 12px;transition:all .2s ease}.instance-selector:hover{border-color:#9ca3af}.instance-selector:focus{border-color:#0f62fe;box-shadow:0 0 0 3px #0f62fe1a;outline:none}.report-viewer-actions{align-items:center;display:flex;gap:var(--spacing-sm)}.action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.action-btn.secondary{background:#f7f6f3;border:1px solid #e9e5db;color:#37352f}.action-btn.secondary:hover{background:#e9e5db}.action-btn.danger{background:#fee;border:1px solid #fecaca;color:#dc2626}.action-btn.danger:hover{background:#fecaca}.action-btn:disabled{cursor:not-allowed;opacity:.5}.report-viewer-iframe-wrapper{background:#fafafa;flex:1 1;overflow:hidden;position:relative}.report-viewer-iframe{border:none;height:100%;width:100%}.report-viewer-loading{align-items:center;background:#fff;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.report-viewer-loading p{color:#999;font-size:14px;font-weight:500;margin:0}.report-viewer-activation{display:flex;flex-direction:column;height:100%;margin:0 auto;max-width:700px;padding:48px}.activation-header{margin-bottom:40px;text-align:center}.activation-header h3{color:#1a1a1a;font-size:24px;font-weight:600;margin:0 0 8px}.activation-header p{color:#666;font-size:15px;margin:0}.activation-steps{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.activation-step{align-items:flex-start;background:#fafafa;border:1px solid #e5e5e5;border-radius:8px;display:flex;gap:16px;padding:16px}.step-number{align-items:center;background:#0f62fe;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:32px;justify-content:center;width:32px}.step-content{flex:1 1}.step-content strong{color:#1a1a1a;display:block;font-size:15px;font-weight:600;margin-bottom:4px}.step-content p{color:#666;font-size:14px;line-height:1.5;margin:0}.activation-actions{display:flex;flex-direction:column;gap:16px}.activation-open-btn{align-items:center;background:#0f62fe;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:15px;font-weight:500;gap:8px;justify-content:center;padding:12px 24px;transition:all .2s ease}.activation-open-btn:hover{background:#0353e9}.activation-url-section{display:flex;gap:12px}.activation-url-input{border:1px solid #d1d5db;border-radius:6px;flex:1 1;font-size:14px;padding:12px 16px;transition:all .2s ease}.activation-url-input:focus{border-color:#0f62fe;box-shadow:0 0 0 3px #0f62fe1a;outline:none}.activation-url-input:disabled{background:#f5f5f5;cursor:not-allowed}.activation-complete-btn{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .2s ease;white-space:nowrap}.activation-complete-btn:hover:not(:disabled){background:#059669}.activation-complete-btn:disabled{background:#d1d5db;cursor:not-allowed}.activation-error{background:#fee;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:14px;padding:12px 16px}.delete-confirm-modal{max-width:420px;padding:32px}.delete-modal-icon{align-items:center;background:#fef2f2;border-radius:12px;color:#dc2626;display:flex;height:48px;justify-content:center;margin:0 0 20px;width:48px}.delete-confirm-modal h3{color:#111827;font-size:18px;font-weight:600;line-height:1.4;margin:0 0 12px}.delete-modal-message{color:#6b7280;font-size:14px;line-height:1.6;margin:0 0 8px}.delete-modal-message strong{color:#374151;font-weight:500}.delete-modal-warning{color:#6b7280;font-size:13px;line-height:1.5;margin:0 0 24px}.modal-actions{border-top:1px solid #f3f4f6;display:flex;gap:8px;justify-content:flex-end;padding-top:8px}.modal-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;justify-content:center;padding:10px 18px;transition:all .15s ease}.modal-btn.cancel{background:#fff;border:1px solid #d1d5db;color:#374151}.modal-btn.cancel:hover{background:#f9fafb;border-color:#9ca3af}.modal-btn.delete{background:#dc2626;color:#fff}.modal-btn.delete:hover{background:#b91c1c}.modal-btn.delete:active{background:#991b1b}@media (max-width:768px){.report-viewer-header{gap:var(--spacing-sm)}.report-viewer-header,.report-viewer-title{align-items:flex-start;flex-direction:column}.report-viewer-title{width:100%}.instance-selector{max-width:100%;width:100%}.report-viewer-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.action-btn{flex:1 1;justify-content:center}}.template-report-page{background:#fff;display:flex;flex-direction:column;height:100%}.template-report-page.loading{align-items:center;gap:var(--spacing-md);justify-content:center}.template-report-page.loading .loading-spinner{animation:spin .8s linear infinite;border:4px solid #e9e5db;border-radius:50%;border-top-color:#0f62fe;height:48px;width:48px}.template-report-page.loading p{color:var(--color-text-secondary);font-size:15px;margin:0}.template-report-page.error{align-items:center;gap:var(--spacing-md);justify-content:center;padding:var(--spacing-xl);text-align:center}.template-report-page.error svg{color:#9ca3af}.template-report-page.error h2{color:var(--color-text-primary);font-size:24px;font-weight:600;margin:0}.template-report-page.error p{color:var(--color-text-secondary);font-size:16px;line-height:1.5;margin:0;max-width:500px}.back-btn{background:#0f62fe;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:15px;font-weight:500;margin-top:var(--spacing-lg);padding:10px 24px;transition:all .2s ease}.back-btn:hover{background:#0043ce}.template-report-page.setup{overflow-y:auto}.template-report-page.viewer{overflow:hidden}@media (max-width:768px){.template-report-page.error h2{font-size:20px}.template-report-page.error p{font-size:14px}}.invite-modal{max-width:600px}.modal-header-content{align-items:center;display:flex;gap:1rem}.modal-header-icon{align-items:center;background:#3b82f61a;border-radius:12px;color:#3b82f6;display:flex;justify-content:center;padding:.75rem}.modal-header-text h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700;margin:0 0 .25rem}.modal-header-text p{color:#64748b;font-size:.9rem;font-weight:500;margin:0}.invite-workspace-info{background:linear-gradient(135deg,#3b82f60d,#3b82f605);border:1px solid #3b82f61a;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.invite-workspace-badge{align-items:center;display:flex;gap:1rem}.invite-workspace-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;color:#fff;display:flex;font-size:1.25rem;font-weight:700;height:48px;justify-content:center;width:48px}.invite-workspace-name{color:#1e293b;font-size:1.1rem;font-weight:700;margin-bottom:.25rem}.invite-workspace-members{color:#64748b;font-size:.875rem;font-weight:500}.success-message{align-items:center;background:linear-gradient(135deg,#f0fdf4,#f7fef7);border:1px solid #bbf7d0;border-radius:12px;box-shadow:0 4px 6px -1px #22c55e1a;color:#16a34a;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;margin-bottom:1rem;overflow:hidden;padding:1rem 1.25rem;position:relative}.success-message:before{background:#16a34a;bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.form-group label{align-items:center;color:#374151;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;letter-spacing:.025em;margin-bottom:.5rem}.field-hint{color:#64748b;font-size:.75rem;font-weight:500;margin-top:.25rem}.role-selection{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}.role-option{cursor:pointer;display:flex;position:relative}.role-option input[type=radio]{cursor:pointer;opacity:0;position:absolute}.role-option-content{background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex:1 1;padding:1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.role-option input[type=radio]:checked+.role-option-content{background:#3b82f605;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a}.role-option:hover .role-option-content{border-color:#cbd5e1;transform:translateY(-1px)}.role-option-header{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.role-option-title{color:#1e293b;font-size:1rem;font-weight:700}.role-option-description{color:#64748b;font-size:.875rem;font-weight:500;line-height:1.5}.invite-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:1rem;margin:1.5rem 0;padding:1.5rem}.invite-info-icon{align-items:center;background:#3b82f61a;border-radius:10px;color:#3b82f6;display:flex;height:fit-content;justify-content:center;padding:.75rem}.invite-info-content h4{color:#1e293b;font-size:1rem;font-weight:700;margin:0 0 .75rem}.invite-info-content ul{color:#64748b;font-size:.875rem;line-height:1.6;margin:0;padding-left:1.25rem}.invite-info-content li{font-weight:500;margin-bottom:.5rem}.invite-info-content li:last-child{margin-bottom:0}.invitation-note{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;display:flex;gap:16px;margin-bottom:24px;padding:20px}.invitation-note-icon{color:#0369a1;flex-shrink:0}.invitation-note-content h4{color:#0f172a;font-size:16px;font-weight:600;margin:0 0 8px}.invitation-note-content p{color:#334155;font-size:14px;margin:0 0 12px}.invitation-note-content ul{color:#475569;margin:0;padding-left:20px}.invitation-note-content li{font-size:14px;line-height:1.4;margin-bottom:6px}.btn-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}@media (max-width:640px){.invite-modal{margin:1rem;max-width:calc(100vw - 2rem)}.role-selection{gap:.75rem}.role-option-content{padding:.875rem}.invite-info{padding:1rem}.invite-info,.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.workspace-management{margin:0 auto;max-width:1200px;padding:2rem}.workspace-management-header{align-items:flex-start;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}.workspace-header-content{align-items:center;display:flex;gap:1rem}.workspace-header-icon{background:#3b82f61a;border-radius:12px;color:#3b82f6;padding:.75rem}.workspace-header-text h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#475569);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800;margin:0 0 .5rem}.workspace-header-text p{color:#64748b;font-size:1.1rem;font-weight:500;margin:0}.workspace-create-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;box-shadow:0 4px 15px -3px #3b82f64d;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:1rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.workspace-create-btn:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 8px 25px -5px #3b82f666;transform:translateY(-2px)}.workspace-overview{margin-bottom:3rem}.workspace-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.workspace-stat-card{align-items:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;gap:var(--spacing-md);padding:var(--spacing-xl);transition:all .2s ease}.workspace-stat-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.workspace-stat-icon{align-items:center;background:var(--color-accent-light);border-radius:var(--radius-md);color:var(--color-accent);display:flex;justify-content:center;padding:var(--spacing-md)}.workspace-stat-content{display:flex;flex-direction:column}.workspace-stat-number{color:var(--color-primary);font-size:24px;font-weight:600;margin-bottom:var(--spacing-xs)}.workspace-stat-label{color:var(--color-text-secondary);font-size:12px;font-weight:400;letter-spacing:.5px;text-transform:uppercase}.workspace-list-section{margin-bottom:3rem}.workspace-list-header{margin-bottom:1.5rem}.workspace-list-header h2{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0 0 .5rem}.workspace-list-header p{color:#64748b;font-weight:500;margin:0}.workspace-list{display:flex;flex-direction:column;gap:1rem;overflow:visible}.workspace-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl);position:relative;transition:all .2s ease}.workspace-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.workspace-card.current{background:var(--color-background);border-color:var(--color-success);box-shadow:var(--shadow-md)}.workspace-card.dropdown-active{position:relative;z-index:100}.workspace-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.workspace-card-info{align-items:center;display:flex;flex:1 1;gap:1rem}.workspace-card-icon{align-items:center;background:#3b82f61a;border-radius:12px;color:#3b82f6;display:flex;justify-content:center;padding:.75rem}.workspace-card.current .workspace-card-icon{background:#10b9811a;color:#10b981}.workspace-card-details{flex:1 1}.workspace-card-name{color:#1e293b;font-size:1.25rem;font-weight:700;margin:0 0 .75rem}.workspace-card-meta{color:#64748b;display:flex;flex-wrap:wrap;font-size:.875rem;gap:1rem}.workspace-card-date,.workspace-card-members,.workspace-card-role{align-items:center;display:flex;font-weight:500;gap:.25rem}.workspace-card-actions{align-items:center;display:flex;gap:.75rem}.workspace-current-badge{background:#10b9811a;border:1px solid #10b98133;border-radius:20px;color:#059669;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.375rem .75rem}.workspace-dropdown{position:relative}.workspace-dropdown-trigger{align-items:center;background:#64748b1a;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.workspace-dropdown-trigger:focus,.workspace-dropdown-trigger:hover{background:#3b82f61a;color:#3b82f6}.workspace-dropdown-trigger:focus{outline:none}.workspace-dropdown-menu{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 25px #00000026;min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:100}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.workspace-dropdown-item{align-items:center;background:none;border:none;border-bottom:1px solid #f1f5f9;color:#374151;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;padding:.75rem 1rem;text-align:left;transition:all .2s ease;width:100%}.workspace-dropdown-item:last-child{border-bottom:none}.workspace-dropdown-item:hover{background-color:#f8fafc}.workspace-dropdown-item.danger{color:#dc2626}.workspace-dropdown-item.danger:hover{background-color:#fef2f2}.workspace-dropdown-divider{background:#e2e8f0;height:1px;margin:.5rem 0}.workspace-card-footer{border-top:1px solid #f1f5f9;padding-top:1rem}.workspace-card-features{display:flex;flex-wrap:wrap;gap:.5rem}.workspace-feature{background:#3b82f61a;border-radius:20px;color:#3b82f6;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.current-workspace-section{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);padding:var(--spacing-xl)}.current-workspace-header{border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-md)}.current-workspace-header h2{color:var(--color-primary);font-size:20px;font-weight:500;margin:0 0 var(--spacing-xs) 0}.current-workspace-header p{color:var(--color-text-secondary);font-weight:400;margin:0}.current-workspace-content{grid-gap:var(--spacing-xl);align-items:start;display:grid;gap:var(--spacing-xl);grid-template-columns:2fr 1fr}.current-workspace-info{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.current-workspace-detail{display:flex;flex-direction:column;gap:var(--spacing-xs)}.current-workspace-detail label{color:var(--color-text-secondary);font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.current-workspace-value{align-items:center;color:var(--color-primary);display:flex;font-size:14px;font-weight:500;gap:var(--spacing-xs)}.current-workspace-value.role{color:var(--color-accent)}.current-workspace-actions{display:flex;flex-direction:column;gap:var(--spacing-md)}.workspace-action-btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:var(--spacing-xs);justify-content:center;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.workspace-action-btn.primary{background:var(--color-accent);box-shadow:var(--shadow-sm);color:#fff}.workspace-action-btn.primary:hover{background:var(--color-accent-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.workspace-action-btn.secondary{background:var(--color-background);border:1px solid var(--color-border);color:var(--color-text-primary)}.workspace-action-btn.secondary:hover{background:var(--color-surface);border-color:var(--color-accent);transform:translateY(-1px)}@media (max-width:768px){.workspace-management{padding:1rem}.workspace-management-header{align-items:stretch;flex-direction:column;gap:1rem}.workspace-stats{grid-template-columns:1fr}.workspace-card-header{flex-direction:column;gap:1rem}.workspace-card-actions{align-self:flex-end}.current-workspace-content,.current-workspace-info{grid-template-columns:1fr}}.workspace-members{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.workspace-members-header{align-items:center;background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-xl)}.workspace-members-title{align-items:center;display:flex;gap:var(--spacing-sm)}.workspace-members-title svg{color:var(--color-accent)}.workspace-members-title h3{color:var(--color-primary);font-size:18px;font-weight:600;margin:0}.refresh-btn{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;display:flex;justify-content:center;padding:var(--spacing-sm);transition:all .2s ease}.refresh-btn:hover{background:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent)}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.refresh-btn.refreshing svg{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.workspace-members-list{padding:0}.workspace-member-card{align-items:center;background:var(--color-background);border-bottom:1px solid var(--color-border);display:flex;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);transition:all .2s ease}.workspace-member-card:last-child{border-bottom:none}.workspace-member-card:hover{background:var(--color-surface)}.workspace-member-avatar{border-radius:50%;flex-shrink:0;height:48px;overflow:hidden;position:relative;width:48px}.workspace-member-image{border-radius:50%;height:100%;object-fit:cover;width:100%}.workspace-member-initials{align-items:center;background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-dark) 100%);color:#fff;display:flex;font-size:16px;font-weight:600;height:100%;justify-content:center;width:100%}.activity-indicator{border:2px solid var(--color-background);border-radius:50%;bottom:-2px;height:16px;position:absolute;right:-2px;width:16px}.workspace-member-info{flex:1 1;min-width:0}.workspace-member-name{align-items:center;color:var(--color-primary);display:flex;flex-wrap:wrap;font-size:16px;font-weight:600;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.owner-badge{background:var(--color-accent-light);border-radius:12px;color:var(--color-accent);display:inline-flex;font-size:10px;font-weight:600;padding:2px var(--spacing-sm);text-transform:uppercase}.owner-badge,.workspace-member-email{align-items:center;gap:var(--spacing-xs)}.workspace-member-email{color:var(--color-text-secondary);display:flex;font-size:14px;margin-bottom:var(--spacing-xs)}.workspace-member-email svg{flex-shrink:0}.workspace-member-meta{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.workspace-member-activity,.workspace-member-joined{align-items:center;color:var(--color-text-secondary);display:flex;font-size:12px;gap:var(--spacing-xs)}.workspace-member-activity svg,.workspace-member-joined svg{flex-shrink:0}.workspace-member-status{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacing-sm)}.activity-status{align-items:center;color:var(--color-text-secondary);display:flex;font-size:12px;font-weight:500;gap:var(--spacing-xs)}.activity-dot{font-size:8px}.role-badge{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-secondary);display:flex;font-size:11px;font-weight:600;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);text-transform:uppercase}.role-badge svg{flex-shrink:0}.workspace-members-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-xl) var(--spacing-lg);text-align:center}.workspace-members-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--color-border);border:3px solid var(--color-border);border-radius:50%;border-top-color:var(--color-accent);height:32px;margin-bottom:var(--spacing-md);width:32px}.workspace-members-loading p{color:var(--color-text-secondary);margin:0}.workspace-members-error{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-xl) var(--spacing-lg);text-align:center}.workspace-members-error p{color:var(--color-error);margin:0 0 var(--spacing-md)}.retry-btn{background:var(--color-accent);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.retry-btn:hover{background:var(--color-accent-dark)}.workspace-members-empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-3xl) var(--spacing-lg);text-align:center}.workspace-members-empty svg{color:var(--color-border);margin-bottom:var(--spacing-md)}.workspace-members-empty h4{color:var(--color-primary);font-size:18px;font-weight:600;margin:0 0 var(--spacing-sm)}.workspace-members-empty p{color:var(--color-text-secondary);margin:0}@media (max-width:640px){.workspace-member-card,.workspace-members-header{padding:var(--spacing-md) var(--spacing-lg)}.workspace-member-card{align-items:flex-start;flex-direction:column;gap:var(--spacing-md)}.workspace-member-info{width:100%}.workspace-member-role{align-self:flex-end}.workspace-member-avatar{height:40px;width:40px}.workspace-member-initials{font-size:14px}}.personal-settings{margin:0 auto!important;max-width:1200px!important;padding:2rem!important}.personal-settings-header{border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg)}.personal-header-content{align-items:center;display:flex;gap:var(--spacing-md)}.personal-header-icon{align-items:center;background-color:var(--color-accent-light);border-radius:var(--radius-lg);color:var(--color-accent);display:flex;justify-content:center;padding:var(--spacing-md)}.personal-header-text h2{color:var(--color-primary);font-size:24px;font-weight:600;margin:0 0 var(--spacing-xs) 0}.personal-header-text p{color:var(--color-text-secondary);font-size:14px;font-weight:400;margin:0}.settings-section{margin-bottom:var(--spacing-3xl)}.section-header{justify-content:space-between;margin-bottom:var(--spacing-xl)}.section-header,.section-title{align-items:center;display:flex}.section-title{gap:var(--spacing-sm)}.section-title svg{color:var(--color-accent)}.section-title h3{color:var(--color-primary);font-size:20px;font-weight:500;margin:0}.edit-profile-btn{align-items:center;background-color:var(--color-accent);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.edit-profile-btn:hover{background-color:var(--color-accent-dark)}.edit-profile-btn.saving{background-color:var(--color-success)}.profile-content{padding:0}.profile-avatar-section{grid-gap:var(--spacing-2xl);align-items:flex-start;display:grid;gap:var(--spacing-2xl);grid-template-columns:auto 1fr}.profile-avatar{flex-shrink:0;position:relative}.avatar-image{border-radius:50%;height:80px;object-fit:cover;width:80px}.avatar-upload-btn{align-items:center;background-color:var(--color-accent);border:none;border-radius:50%;bottom:0;color:#fff;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:0;transition:background-color .2s ease;width:28px}.avatar-upload-btn:hover{background-color:var(--color-accent-dark)}.profile-info{grid-gap:var(--spacing-xl);align-items:start;display:grid;gap:var(--spacing-xl);grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{color:var(--color-text-secondary);font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.profile-input{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:14px;padding:var(--spacing-sm) var(--spacing-md);transition:border-color .2s ease}.profile-input:focus{border-color:var(--color-accent);outline:none}.profile-display{color:var(--color-text-primary);font-size:14px;font-weight:500;padding:var(--spacing-sm) 0}.account-stats{grid-gap:var(--spacing-2xl);display:grid;gap:var(--spacing-2xl);grid-template-columns:repeat(3,1fr)}.stat-card{align-items:center;background-color:var(--color-surface);border-radius:var(--radius-lg);display:flex;gap:var(--spacing-lg);min-height:110px;padding:var(--spacing-xl);transition:all .2s ease}.stat-card:hover{transform:translateY(-1px)}.stat-card:hover,.stat-icon{background-color:var(--color-accent-light)}.stat-icon{align-items:center;border-radius:var(--radius-md);color:var(--color-accent);display:flex;justify-content:center;min-height:48px;min-width:48px;padding:var(--spacing-md)}.stat-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-number{color:var(--color-primary);font-size:24px;font-weight:600;margin:0}.stat-label{color:var(--color-text-secondary);font-size:12px;font-weight:400;letter-spacing:.5px;text-transform:uppercase}.notification-settings{display:flex;flex-direction:column;gap:var(--spacing-lg)}.notification-item{align-items:center;background-color:var(--color-surface);border-radius:var(--radius-lg);display:flex;justify-content:space-between;padding:var(--spacing-xl);transition:background-color .2s ease}.notification-item:hover{background-color:var(--color-accent-light)}.notification-info{flex:1 1;margin-right:var(--spacing-md)}.notification-title{color:var(--color-text-primary);font-size:14px;font-weight:500;margin-bottom:var(--spacing-xs)}.notification-desc{color:var(--color-text-secondary);font-size:12px;line-height:1.4}.settings-toggle{display:inline-block;height:28px;position:relative;width:48px}.settings-toggle input{height:0;opacity:0;width:0}.settings-toggle-track{background-color:#d1d5db;border-radius:14px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:background-color .3s}.settings-toggle-track:after{background-color:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;content:"";height:24px;left:2px;position:absolute;top:2px;transition:transform .3s;width:24px}input:checked+.settings-toggle-track{background-color:var(--color-accent)}input:checked+.settings-toggle-track:after{transform:translateX(20px)}[data-theme=dark] .settings-toggle-track{background-color:#4b5563}[data-theme=dark] input:checked+.settings-toggle-track{background-color:var(--color-accent)}.preferences-grid{grid-gap:var(--spacing-xl);display:grid;gap:var(--spacing-xl);grid-template-columns:1fr;max-width:400px}.preference-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.preference-item label{color:var(--color-text-secondary);font-size:12px;font-weight:500;letter-spacing:.5px;margin-bottom:var(--spacing-xs);text-transform:uppercase}.preference-select{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;font-size:14px;padding:var(--spacing-sm) var(--spacing-md);transition:border-color .2s ease}.preference-select:focus{border-color:var(--color-accent);outline:none}.danger-section{background-color:#ef44440d;border-radius:var(--radius-lg);padding:var(--spacing-xl)}.danger-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.danger-btn,.logout-btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.logout-btn{background-color:var(--color-text-secondary);color:#fff}.logout-btn:hover{background-color:var(--color-secondary)}.danger-btn{background-color:var(--color-error);color:#fff}.danger-btn:hover{background-color:#b91c1c}@media (max-width:900px){.account-stats,.profile-info{gap:var(--spacing-lg);grid-template-columns:1fr}}@media (max-width:768px){.personal-settings{padding:0 var(--spacing-md)}.profile-avatar-section{gap:var(--spacing-xl);grid-template-columns:1fr;justify-items:center;text-align:center}.section-header{align-items:stretch;flex-direction:column;gap:var(--spacing-lg)}.account-stats,.notification-settings{gap:var(--spacing-md)}.notification-item{padding:var(--spacing-lg)}.preferences-grid{max-width:100%}.danger-actions{flex-direction:column}.personal-header-content{flex-direction:column;gap:var(--spacing-lg);text-align:center}.stat-card{min-height:90px;padding:var(--spacing-lg)}}.App{min-height:100vh}.App,.main-content{background-color:var(--color-background)}.main-content{margin-left:240px;margin-top:64px;max-width:1200px;min-height:calc(100vh - 64px);padding:var(--spacing-lg)}@media (max-width:1024px){.main-content{margin-left:64px}}@media (max-width:768px){.main-content{margin-left:0;padding:var(--spacing-md)}}
/*# sourceMappingURL=main.194e3b59.css.map*/