@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Montserrat:wght@500;600;700;800;900&display=swap";
.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html:not(.theme-transitioning),html.theme-transitioning,html.theme-transitioning body,html.theme-transitioning #root,html.theme-transitioning *,html.theme-transitioning :before,html.theme-transitioning :after{transition:none!important}html:not(.theme-transitioning) *{transition-property:none;transition-duration:0s}[data-state],.animate-apple-spring-in,.animate-apple-spring-out{will-change:transform, opacity}html:not(.theme-transitioning) button,html:not(.theme-transitioning) a,html:not(.theme-transitioning) input,html:not(.theme-transitioning) textarea,html:not(.theme-transitioning) select{transition:all .2s ease-in-out!important}.theme-transitioning{overflow:hidden}.dark body{color:#ebeff4;background-color:#131720}.dark .bg-white{background-color:#1a212d}.dark .bg-gray-50{background-color:#171c27}.dark .bg-gray-100{background-color:#1e2533}.dark .bg-gray-200{background-color:#262f40}.dark .text-gray-900{color:#ebeff4}.dark .text-gray-800{color:#e4eaf1}.dark .text-gray-700{color:#d7dfea}.dark .text-gray-600{color:#afbdcf}.dark .text-gray-500{color:#9fafc6}.dark .text-gray-400{color:#8fa2bc}.dark .text-gray-300{color:#8095b3}.dark .border-gray-200{border-color:#394356}.dark .border-gray-300{border-color:#414c62}.dark .border-gray-400{border-color:#49566e}.dark .border{border-color:#3d475c}.dark .border-r,.dark .border-t,.dark .border-b,.dark .border-l{border-color:#394356}.dark .bg-card{background-color:#1a212d;border-color:#3d475c}.dark .bg-blue-600{background-color:#63b5f8}.dark .bg-blue-700{background-color:#3ca2f6}.dark .text-blue-600{color:#6db9f8}.dark .hover\:bg-blue-700:hover{background-color:#3ca2f6}.dark input,.dark textarea,.dark select{color:#ebeff4;background-color:#1e2533;border-color:#3d475c}.dark input::-moz-placeholder{color:#8fa2bc}.dark textarea::-moz-placeholder{color:#8fa2bc}.dark input::placeholder,.dark textarea::placeholder{color:#8fa2bc}.dark input:focus,.dark textarea:focus,.dark select:focus{border-color:#63b5f8;outline:none;box-shadow:0 0 0 2px #63b5f833}.dark input:hover,.dark textarea:hover,.dark select:hover{border-color:#47536b}.dark .hover\:bg-gray-100:hover{background-color:#222a3a}.dark .hover\:bg-gray-50:hover{background-color:#1e2533}.dark .hover\:bg-white:hover{background-color:#222a3a}.dark .hover\:text-gray-900:hover{color:#f2f4f8}.dark .text-foreground{color:#ebeff4}.dark .text-muted-foreground{color:#afbdcf}.dark .bg-background{background-color:#131720}.dark .bg-card{background-color:#1a212d}.dark .bg-popover{background-color:#222a3a}.dark .bg-primary{background-color:#63b5f8}.dark .bg-secondary{background-color:#2a3347}.dark .bg-muted{background-color:#222a3a}.dark .bg-accent{background-color:#44d580}.dark .bg-destructive{background-color:#f37272}.dark .border-input{border-color:#3d475c}.dark .border-ring{border-color:#63b5f8}.dark .text-primary{color:#6db9f8}.dark .text-primary-foreground{color:#fff}.dark .text-secondary{color:#d7dfea}.dark .text-secondary-foreground{color:#ebeff4}.dark .text-muted{color:#9fafc6}.dark .text-accent{color:#59d98e}.dark .text-accent-foreground{color:#fff}.dark .text-destructive{color:#f47c7c}.dark .text-destructive-foreground{color:#fff}.dark a{color:#6db9f8}.dark a:hover{color:#9ed1fa}.dark .badge,.dark [class*=badge]{border-color:#3d475c}.dark table{border-color:#394356}.dark th{color:#ebeff4;background-color:#1e2533;border-color:#3d475c}.dark td{color:#dee5ed;border-color:#394356}.dark tr:hover{background-color:#1e2533}.dark [role=menu],.dark [role=listbox]{background-color:#222a3a;border-color:#3d475c;box-shadow:0 10px 40px #00000080}.dark [role=menuitem]:hover,.dark [role=option]:hover{background-color:#2a3347}.dark [role=dialog]{background-color:#1e2533;border-color:#3d475c;box-shadow:0 25px 60px #000000b3}.dark [role=tooltip]{color:#ebeff4;background-color:#2a3347;border-color:#47536b;box-shadow:0 4px 20px #0006}.dark code,.dark pre{color:#e4eaf1;background-color:#171c27;border-color:#394356}.dark ::-webkit-scrollbar{width:8px;height:8px}.dark ::-webkit-scrollbar-track{background:#171c27}.dark ::-webkit-scrollbar-thumb{background:#47536b;border-radius:4px}.dark ::-webkit-scrollbar-thumb:hover{background:#525f7a}
@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.animate-shimmer{animation:3s infinite shimmer}.custom-scrollbar::-webkit-scrollbar{width:8px}.custom-scrollbar::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-thumb{background:linear-gradient(#9333ea,#3b82f6);border-radius:10px;transition:background .3s}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:linear-gradient(#7e22ce,#2563eb)}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 #ef4444b3}50%{box-shadow:0 0 0 10px #ef444400}}.animate-pulse-glow{animation:2s infinite pulseGlow}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.animate-gradient{background-size:200% 200%;animation:3s infinite gradientShift}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-float{animation:3s ease-in-out infinite float}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)rotate(0)}50%{opacity:.5;transform:scale(1.2)rotate(180deg)}}.animate-sparkle{animation:2s ease-in-out infinite sparkle}@keyframes bounceScale{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-5px)scale(1.05)}}.animate-bounce-scale{animation:1s ease-in-out infinite bounceScale}@keyframes fadeInBlur{0%{opacity:0;filter:blur(10px)}to{opacity:1;filter:blur()}}.animate-fade-in-blur{animation:.5s ease-out fadeInBlur}@keyframes checkmark{0%{opacity:0;transform:scale(0)rotate(-45deg)}50%{opacity:1;transform:scale(1.2)rotate(-45deg)}to{opacity:1;transform:scale(1)rotate(-45deg)}}.animate-checkmark{animation:.5s ease-out checkmark}@keyframes typingDot{0%,60%,to{opacity:.7;transform:translateY(0)}30%{opacity:1;transform:translateY(-10px)}}.typing-dot-1{animation:1.4s infinite typingDot}.typing-dot-2{animation:1.4s .2s infinite typingDot}.typing-dot-3{animation:1.4s .4s infinite typingDot}@keyframes ripple{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.animate-ripple{animation:1s ease-out ripple}.card-hover-lift{transition:all .3s cubic-bezier(.4,0,.2,1)}.card-hover-lift:hover{transform:translateY(-4px)scale(1.01);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@keyframes dragLift{0%{transform:scale(1)rotate(0);box-shadow:0 4px 6px -1px #0000001a}50%{transform:scale(1.1)rotate(3deg);box-shadow:0 20px 25px -5px #0003,0 10px 10px -5px #0000001a}to{transform:scale(1.05)rotate(2deg);box-shadow:0 15px 20px -5px #00000026,0 8px 8px -5px #00000014}}.animate-drag-lift{animation:.2s ease-out forwards dragLift}@keyframes dragFloat{0%,to{transform:translateY(0)rotate(2deg)}50%{transform:translateY(-3px)rotate(2deg)}}.animate-drag-float{animation:2s ease-in-out infinite dragFloat}@keyframes dropZoneHighlight{0%,to{transform:scale(1);box-shadow:0 0 #22c55e66}50%{transform:scale(1.01);box-shadow:0 0 0 3px #22c55e33}}.animate-drop-zone-pulse{animation:1.2s ease-in-out infinite dropZoneHighlight}@keyframes dropIndicatorFade{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.animate-drop-indicator{animation:.15s ease-out forwards dropIndicatorFade}@keyframes dropSuccess{0%{background-color:#22c55e00}50%{background-color:#22c55e33}to{background-color:#22c55e00}}.animate-drop-success{animation:.3s ease-out dropSuccess}@keyframes successCheckmark{0%{opacity:0;transform:scale(0)rotate(-45deg)}50%{opacity:1;transform:scale(1.3)rotate(-45deg)}to{opacity:1;transform:scale(1)rotate(-45deg)}}.animate-success-checkmark{animation:.5s ease-out forwards successCheckmark}@keyframes rubberBand{0%{transform:scale(1)}30%{transform:scale(1.25,.75)}40%{transform:scale(.75,1.25)}50%{transform:scale(1.15,.85)}65%{transform:scale(.95,1.05)}75%{transform:scale(1.05,.95)}to{transform:scale(1)}}.animate-rubber-band{animation:.6s ease-out rubberBand}@keyframes invalidDropShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.animate-invalid-drop{animation:.4s ease-out invalidDropShake}@keyframes placeholderPulse{0%,to{opacity:.3;border-color:hsl(var(--muted-foreground) / .3)}50%{opacity:.6;border-color:hsl(var(--muted-foreground) / .6)}}.animate-placeholder-pulse{animation:2s ease-in-out infinite placeholderPulse}@keyframes borderGradient{0%,to{background-position:0%}50%{background-position:100%}}.border-gradient-animated{background:linear-gradient(90deg,#9333ea,#3b82f6,#9333ea) 0 0/200% 200%;animation:3s infinite borderGradient}
.react-flow__handle{transition:all .2s;cursor:crosshair!important;border-width:3px!important;width:20px!important;height:20px!important}.react-flow__handle:hover{transform:scale(1.15);width:24px!important;height:24px!important;box-shadow:0 0 0 4px #3b82f633!important}.react-flow__handle-connecting{animation:1s ease-out infinite pulse-ring;background:#3b82f6!important}@keyframes pulse-ring{0%{box-shadow:0 0 #3b82f6b3}70%{box-shadow:0 0 0 8px #3b82f600}to{box-shadow:0 0 #3b82f600}}.react-flow__connection-path{stroke-dasharray:8 4;filter:drop-shadow(0 0 12px #3b82f6cc)drop-shadow(0 0 4px #3b82f699);animation:1s linear infinite connection-flow;stroke:#3b82f6!important;stroke-width:4px!important}@keyframes connection-flow{0%{stroke-dashoffset:0}to{stroke-dashoffset:24px}}.react-flow__edge.selected .react-flow__edge-path{stroke:#3b82f6!important;stroke-width:4px!important}.react-flow__edge:hover .react-flow__edge-path{filter:drop-shadow(0 0 4px);stroke-width:4px!important}.react-flow__node.selected{box-shadow:0 0 0 4px #3b82f64d}.react-flow__edge-path{transition:stroke-width .2s,stroke .2s}.react-flow__handle.connectable:hover:after{content:"";border:2px dashed #3b82f6;border-radius:50%;animation:3s linear infinite rotate;position:absolute;inset:-4px}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.react-flow__controls{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a!important}.react-flow__controls-button{cursor:pointer!important;background:0 0!important;border:none!important;justify-content:center!important;align-items:center!important;width:32px!important;height:32px!important;transition:all .2s!important;display:flex!important}.react-flow__controls-button:hover{transform:scale(1.1);background:#eff6ff!important}.react-flow__controls-button svg{width:18px!important;height:18px!important}.react-flow__controls-button .lucide-sparkles{animation:2s ease-in-out infinite sparkle}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.react-flow__minimap{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a!important}.react-flow__background{opacity:.4}.react-flow__node.dragging{opacity:.5;cursor:grabbing!important}.react-flow__selection{background:#3b82f61a!important;border:2px solid #3b82f6!important}.react-flow__edge-text{font-size:11px!important;font-weight:600!important}.react-flow__handle-valid{animation:.5s ease-out pulse-valid;background:#10b981!important}@keyframes pulse-valid{0%,to{box-shadow:0 0 #10b981b3}50%{box-shadow:0 0 0 6px #10b98100}}.react-flow__handle-invalid{background:#ef4444!important}*{transition-timing-function:cubic-bezier(.4,0,.2,1)}
:root{--brand-teal-50:#f0fdfa;--brand-teal-100:#ccfbf1;--brand-teal-200:#99f6e4;--brand-teal-300:#5eead4;--brand-teal-400:#2dd4bf;--brand-teal-500:#14b8a6;--brand-teal-600:#0d9488;--brand-teal-700:#0f766e;--brand-teal-800:#115e59;--brand-teal-900:#134e4a;--cta-primary:#0f766e;--cta-primary-hover:#115e59;--label-section:#0d9488;--heading:#111827;--grad-stop-1:#0d9488;--grad-stop-2:#0284c7;--grad-stop-3:#059669;--monday-blue:#0a75cd;--monday-blue-dark:#096ab9;--monday-blue-light:#bcdefb;--monday-green:#4cae4f;--monday-green-dark:#367c39;--monday-orange:#ff7033;--monday-red:#ff5b29;--monday-purple:#9b27b0;--monday-gray-50:#fcfcfc;--monday-gray-100:#f4f5f6;--monday-gray-200:#e8ebed;--monday-gray-300:#d3d9de;--monday-gray-400:#a7b0b9;--monday-gray-500:#616b75;--monday-gray-600:#454d54;--monday-gray-700:#292e33;--background:#fff;--foreground:#292e33;--fg-muted:#616b75;--fg-subtle:#a7b0b9;--card:#fff;--card-foreground:#020817;--muted:#f4f5f6;--muted-foreground:#616b75;--border:#e5e7eb;--input:#e5e7eb;--ring:#2552da;--primary:#0a75cd;--primary-foreground:#fff;--accent:#4cae4f;--accent-foreground:#fff;--success:#16a249;--warning:#f59f0a;--error:#ef4343;--brigid-accent:#0e9586;--brigid-accent-muted:#eaf6f4;--brigid-shell:#fcfcfc;--brigid-surface:#fff;--brigid-surface-elev:#f7f7f7;--health-blood:#eb1414;--health-bg-blood:#fde8e8;--health-heart:#05f;--health-bg-heart:#e6eeff;--health-glucose:#ffbf00;--health-bg-glucose:#fff9e6;--health-weight:#4cae4f;--health-bg-weight:#edf7ee;--sky-base:#a8d4e6;--gradient-brand:linear-gradient(135deg, #004080 0%, #0059b3 50%, #0a766b 100%);--gradient-hero:linear-gradient(135deg, #e6f2ff 0%, #e7fdfb 100%);--gradient-headline:linear-gradient(90deg, var(--grad-stop-1) 0%, var(--grad-stop-2) 50%, var(--grad-stop-3) 100%);--gradient-hero-fade:linear-gradient(to bottom, transparent 0%, #ffffff4d 50%, #fff 100%);--shadow-soft:0 4px 20px -4px #00408014;--shadow-medium:0 8px 25px -5px #0040801f;--shadow-large:0 25px 50px -12px #00408040;--shadow-brand:0 10px 40px -15px #0040804d;--shadow-teal-cta:0 10px 40px -10px #14b8a64d;--shadow-floating-nav:0 8px 32px #00000026;--radius-sm:.25rem;--radius:.5rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-2xl:2rem;--radius-full:9999px;--space-1:.125rem;--space-2:.25rem;--space-3:.5rem;--space-4:.75rem;--space-5:1rem;--space-6:1.25rem;--space-7:1.5rem;--space-8:2rem;--space-9:2.5rem;--space-10:3rem;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:"Montserrat", "Inter", ui-sans-serif, system-ui, sans-serif;--font-brand:"Montserrat", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1rem;--fs-lg:1.125rem;--fs-xl:1.25rem;--fs-2xl:1.5rem;--fs-3xl:1.875rem;--fs-4xl:2.25rem;--fs-5xl:3rem;--fs-6xl:3.75rem;--fs-7xl:4.5rem;--lh-tight:1.1;--lh-snug:1.2;--lh-normal:1.5;--lh-relaxed:1.75}html,body{font-family:var(--font-sans);color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}h1{font-size:clamp(var(--fs-3xl), 5vw, var(--fs-7xl));letter-spacing:-.025em;font-weight:700;line-height:var(--lh-tight);color:var(--heading)}h2{font-size:clamp(var(--fs-2xl), 4vw, var(--fs-5xl));letter-spacing:-.025em;font-weight:700;line-height:var(--lh-snug);color:var(--heading)}h3{font-size:clamp(var(--fs-xl), 2.5vw, var(--fs-3xl));color:var(--heading);font-weight:700;line-height:1.3}h4{font-size:var(--fs-xl);color:var(--heading);font-weight:600}h5{font-size:var(--fs-lg);color:var(--heading);font-weight:600}h6{font-size:var(--fs-base);color:var(--heading);font-weight:600}p,.body{font-size:var(--fs-base);line-height:var(--lh-relaxed);color:var(--fg-muted)}small,.caption{font-size:var(--fs-sm);color:var(--fg-muted)}code,pre{font-family:var(--font-mono);font-size:.9em}.section-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--label-section);font-weight:700}.text-brand-gradient{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-headline-gradient{background:var(--gradient-headline);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.floating-nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-floating-nav);border-radius:var(--radius-full);background:#ffffffb3;border:1px solid #fff6}.btn-pill{border-radius:var(--radius-full);font-weight:700;font-size:var(--fs-sm);align-items:center;gap:.5rem;padding:.75rem 1.5rem;transition:transform .15s,background .15s,box-shadow .15s;display:inline-flex}.btn-pill--primary{background:var(--cta-primary);color:#fff;box-shadow:var(--shadow-teal-cta)}.btn-pill--primary:hover{background:var(--cta-primary-hover);transform:scale(1.03)}.btn-pill--dark{color:#fff;background:#111827}.btn-pill--dark:hover{background:#1f2937}.btn-pill--secondary{color:#111827;background:#fff;border:2px solid #e5e7eb}.btn-pill--secondary:hover{background:#f4f5f6;border-color:#cbcfd7}
