@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--bg:#09090b;--bg-2:#111113;--bg-3:#18181b;--border:#ffffff14;--border-hover:#ffffff26;--primary:#6366f1;--primary-hover:#4f46e5;--secondary:#10b981;--danger:#ef4444;--text:#fafafa;--text-2:#a1a1aa;--text-3:#71717a;--glass:#ffffff0a;--glass-hover:#ffffff12;--font-body:"Inter", sans-serif;--font-heading:"Outfit", sans-serif;--font-mono:"JetBrains Mono", monospace;--radius:12px;--radius-sm:8px;--shadow:0 4px 24px #0006;--shadow-lg:0 12px 48px #0009}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:16px;line-height:1.5}h1,h2,h3,h4,h5{font-family:var(--font-heading);line-height:1.2}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-2)}::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:3px}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes modalPop{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modalShimmer{0%,to{background-position:0%}50%{background-position:100%}}@keyframes providerIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes providerLibraryIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes selectedSourceIn{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes formReveal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:.4s ease-out both fadeIn}.animate-slide{animation:.3s ease-out both slideIn}.connection-modal-shell{animation:.28s ease-out both modalPop}.connection-trust-row{flex-wrap:wrap;gap:.55rem;margin-bottom:1.25rem;display:flex}.connection-trust-chip{color:var(--text-2);background:#ffffff0b;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:.4rem;padding:.42rem .7rem;font-size:.76rem;display:inline-flex}.provider-picker{padding-top:.2rem;animation:.28s ease-out both providerLibraryIn}.provider-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.provider-card{min-height:178px;color:inherit;cursor:pointer;text-align:left;opacity:0;background:linear-gradient(155deg,#ffffff0f,#ffffff06);border:1px solid #ffffff14;border-radius:16px;flex-direction:column;align-items:flex-start;gap:.85rem;padding:1rem;transition:transform .22s,border-color .22s,background .22s,box-shadow .22s;animation:.42s ease-out both providerIn;display:flex;position:relative;overflow:hidden}.provider-card:hover{border-color:color-mix(in srgb, var(--provider-color) 55%, #ffffff2e);box-shadow:0 18px 40px #00000059, 0 0 34px color-mix(in srgb, var(--provider-color) 26%, transparent);background:linear-gradient(155deg,#ffffff17,#ffffff09);transform:translateY(-4px)}.provider-card-glow{background:radial-gradient(circle, color-mix(in srgb, var(--provider-color) 25%, transparent), transparent 68%);pointer-events:none;border-radius:999px;width:150px;height:150px;transition:transform .22s,opacity .22s;position:absolute;inset:-45% -20% auto auto}.provider-card:hover .provider-card-glow{opacity:.95;transform:scale(1.18)}.provider-logo-wrap{border:1px solid color-mix(in srgb, var(--provider-color) 34%, #ffffff14);width:58px;height:58px;box-shadow:inset 0 0 24px color-mix(in srgb, var(--provider-color) 12%, transparent);background:#00000042;border-radius:15px;justify-content:center;align-items:center;display:inline-flex}.provider-logo{object-fit:contain;width:34px;height:34px;filter:drop-shadow(0 8px 18px color-mix(in srgb, var(--provider-color) 34%, transparent))}.provider-arrow{color:var(--provider-color);flex-shrink:0;transition:transform .2s}.provider-card:hover .provider-arrow{transform:translate(3px)}.connection-security-panel{background:linear-gradient(135deg,#34d39914,#6366f10f);border:1px solid #34d39924;border-radius:16px;align-items:center;gap:.8rem;margin-top:1rem;padding:.9rem 1rem;display:flex}.selected-provider-strip{border:1px solid color-mix(in srgb, var(--provider-color) 38%, #ffffff14);background:linear-gradient(135deg, color-mix(in srgb, var(--provider-color) 16%, #ffffff0b), #ffffff06);box-shadow:0 16px 38px #0000003d, inset 0 0 36px color-mix(in srgb, var(--provider-color) 8%, transparent);border-radius:16px;align-items:center;gap:.9rem;margin-bottom:1rem;padding:.85rem .95rem;animation:.34s ease-out both selectedSourceIn;display:flex}.selected-provider-logo{border:1px solid color-mix(in srgb, var(--provider-color) 38%, #ffffff1a);background:#00000047;border-radius:15px;flex-shrink:0;justify-content:center;align-items:center;width:54px;height:54px;display:inline-flex}.connection-form-panel{background:linear-gradient(160deg,#ffffff0b,#ffffff05);border:1px solid #ffffff12;border-radius:18px;max-width:820px;margin:0 auto;padding:1rem;animation:.36s ease-out 60ms both formReveal}.connection-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-bottom:1rem;display:grid}.connection-form-panel .input{background:#00000059;border:1px solid #ffffff14;border-radius:10px;padding:.75rem .85rem}@media (max-width:1100px){.connection-modal-shell{width:calc(100vw - 2rem)!important}.provider-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:720px){.connection-modal-shell{border-radius:18px!important;width:calc(100vw - 1rem)!important;min-height:auto!important}.provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.provider-card{min-height:158px;padding:.85rem}.connection-security-panel{align-items:flex-start}.selected-provider-strip{flex-wrap:wrap;align-items:flex-start}.selected-provider-strip .btn{width:100%;margin-left:0!important}.connection-form-grid{grid-template-columns:1fr}.connection-form-panel{padding:.85rem}}@media (max-width:460px){.provider-grid{grid-template-columns:1fr}}.card{background:var(--glass);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s,background .2s}.card:hover{border-color:var(--border-hover);background:var(--glass-hover)}.btn{border-radius:var(--radius-sm);font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #6366f166}.btn-secondary{background:var(--glass);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--glass-hover);border-color:var(--border-hover)}.btn-danger{color:var(--danger);background:#ef44441a;border:1px solid #ef444433}.btn-danger:hover:not(:disabled){background:#ef444433}.btn-ghost{color:var(--text-2);background:0 0;border:1px solid #0000}.btn-ghost:hover:not(:disabled){color:var(--text);background:var(--glass)}.btn-sm{padding:.4rem .875rem;font-size:.8rem}.btn-lg{padding:.875rem 1.75rem;font-size:1rem}.insight-template-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem;display:grid}.insight-template-card{text-align:left;white-space:normal;word-break:break-word;overflow-wrap:anywhere;cursor:pointer;width:100%;min-width:0;height:100%;min-height:120px;color:inherit;font-family:var(--font-body);background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;justify-content:flex-start;align-items:stretch;padding:1rem;transition:border-color .15s,background .15s;display:flex}.insight-template-card:hover:not(:disabled){background:#6366f10f;border-color:#818cf859}.insight-template-card:disabled{opacity:.5;cursor:not-allowed}.insight-template-card__title{margin-bottom:.35rem;font-size:.88rem;font-weight:600;line-height:1.35}.insight-template-card__desc{color:var(--text-3);flex:1;font-size:.78rem;line-height:1.45}.insight-page{box-sizing:border-box;width:100%;max-width:1100px;padding:2rem}.insight-card-body{overflow-wrap:anywhere;word-break:break-word;flex:1;min-width:0}.reminder-card--clickable:hover{background:#6366f10f;border-color:#818cf88c!important}.reminder-card--clickable:focus-visible{outline-offset:2px;outline:2px solid #6366f199}.key-metrics-row{flex-wrap:wrap;gap:.5rem;margin-top:.85rem;display:flex}.key-metric-pill{background:#00000040;border:1px solid #ffffff14;border-radius:8px;padding:.45rem .75rem;font-size:.78rem}.key-metric-pill strong{color:var(--text);margin-top:.15rem;font-size:1rem;font-weight:700;display:block}.tab-row{border-bottom:1px solid #ffffff14;gap:.35rem;margin-bottom:1.25rem;padding-bottom:.5rem;display:flex}.tab-btn{color:var(--text-3);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px 8px 0 0;padding:.5rem 1rem;font-size:.88rem;font-weight:500}.tab-btn--active{color:#fff;background:#6366f126;border-bottom:2px solid #818cf8}.input-group{flex-direction:column;gap:.5rem;display:flex}.input-label{color:var(--text-2);font-size:.875rem;font-weight:500}.input{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);font-family:var(--font-body);outline:none;padding:.75rem 1rem;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #6366f126}.input::placeholder{color:var(--text-3)}.input-error{border-color:var(--danger)!important}.error-text{color:var(--danger);font-size:.8rem}select.input{cursor:pointer}select.input option{background:var(--bg-2)}.gradient-text{background:linear-gradient(135deg,#818cf8,#6366f1,#8b5cf6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.badge{border-radius:100px;align-items:center;gap:.35rem;padding:.2rem .65rem;font-size:.75rem;font-weight:500;display:inline-flex}.badge-green{color:var(--secondary);background:#10b9811a;border:1px solid #10b98133}.badge-blue{color:#818cf8;background:#6366f11a;border:1px solid #6366f133}.badge-orange{color:#f59e0b;background:#f59e0b1a;border:1px solid #f59e0b33}.spinner{border:2px solid #fff3;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.spin{animation:.7s linear infinite spin}.code{font-family:var(--font-mono);border:1px solid var(--border);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;color:#10b981;background:#0006;padding:1rem;font-size:.85rem;line-height:1.7;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.875rem}.data-table th{text-align:left;color:var(--text-2);background:var(--bg-2);border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.05em;padding:.625rem .875rem;font-size:.8rem;font-weight:500}.data-table td{border-bottom:1px solid var(--border);color:var(--text);font-family:var(--font-mono);padding:.625rem .875rem;font-size:.82rem}.data-table tr:hover td{background:var(--glass)}.data-table tr:last-child td{border-bottom:none}.alert{border-radius:var(--radius-sm);align-items:flex-start;gap:.5rem;padding:.875rem 1rem;font-size:.875rem;display:flex}.alert-error{color:#fca5a5;background:#ef444414;border:1px solid #ef444433}.alert-success{color:#6ee7b7;background:#10b98114;border:1px solid #10b98133}
