@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";:root{color:#f8fafc;font-synthesis:none;text-rendering:optimizelegibility;background:#080c14;font-family:DM Sans,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:#f8fafc;background:#080c14;min-width:320px;min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer;border:none}#root{min-height:100vh}.home{background:radial-gradient(circle at 85% 30%,#3b82f61f,#0000 30%),#080c14;align-items:center;min-height:100vh;padding:100px 8%;display:flex;position:relative;overflow-x:hidden}.home:after{content:"";z-index:30;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.hosted-badge{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#94a3b8;white-space:nowrap;background:#080c14bf;border:1px solid #60a5fa33;border-radius:999px;align-items:center;gap:10px;padding:8px 16px;font-size:.78rem;font-weight:500;transition:border-color .25s,transform .25s,box-shadow .25s;display:flex;position:fixed;bottom:20px;right:20px;box-shadow:0 8px 22px #00000059}.hosted-badge:hover{border-color:#60a5fa66;transform:translateY(-2px);box-shadow:0 12px 28px #00000073}.hosted-item{align-items:center;gap:6px;display:inline-flex}.hosted-divider{background:#94a3b880;border-radius:50%;flex-shrink:0;width:3px;height:3px}.hosted-icon{flex-shrink:0;width:15px;height:15px}.hosted-icon-cf{color:#f6821f}.hosted-icon-react{color:#61dafb}.home-container{grid-template-columns:1.2fr .8fr;align-items:center;gap:80px;width:100%;max-width:1300px;margin:0 auto;display:grid}.home-content{max-width:750px}.home-title{letter-spacing:-.04em;color:#f8fafc;margin-bottom:24px;font-size:clamp(3.5rem,7vw,6.5rem);line-height:1}.home-title span{color:#60a5fa;display:block}.home-role{letter-spacing:-.01em;color:#f8fafc;margin-bottom:24px;font-family:Space Grotesk,sans-serif;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:700;line-height:1.3}.status-line{color:#94a3b8;background:linear-gradient(135deg,#60a5fa14,#0f172a99);border:1px solid #60a5fa4d;border-radius:999px;align-items:center;gap:9px;max-width:100%;margin-bottom:24px;padding:8px 16px;font-size:.78rem;display:inline-flex;box-shadow:0 8px 20px #00000040}.status-dot{background:#34d399;border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s ease-in-out infinite pulseNode;box-shadow:0 0 8px #34d399}.status-cycle{width:260px;max-width:100%;height:2.6em;display:block;position:relative;overflow:hidden}.status-cycle span{opacity:0;align-items:center;line-height:1.3;animation:28s infinite backwards cycleText;display:flex;position:absolute;inset:0}.status-cycle span:first-child{animation-delay:0s}.status-cycle span:nth-child(2){animation-delay:4s}.status-cycle span:nth-child(3){animation-delay:8s}.status-cycle span:nth-child(4){animation-delay:12s}.status-cycle span:nth-child(5){animation-delay:16s}.status-cycle span:nth-child(6){animation-delay:20s}.status-cycle span:nth-child(7){animation-delay:24s}@keyframes cycleText{0%{opacity:0;transform:translateY(6px)}2%{opacity:1;transform:translateY(0)}11%{opacity:1;transform:translateY(0)}14%{opacity:0;transform:translateY(-6px)}to{opacity:0}}.home-description{color:#94a3b8;max-width:650px;margin-bottom:14px;font-size:1.05rem;line-height:1.8}.home-description:last-of-type{margin-bottom:36px}.home-actions{flex-wrap:wrap;gap:14px;display:flex}.home-button{border-radius:8px;align-items:center;gap:7px;padding:10px 18px;font-size:.86rem;font-weight:600;transition:all .25s;display:inline-flex}.button-icon{flex-shrink:0;width:15px;height:15px}.primary-button{color:#07111f;background:#60a5fa}.primary-button:hover{background:#93c5fd;transform:translateY(-2px)}.secondary-button{color:#e2e8f0;border:1px solid #334155}.secondary-button:hover{color:#60a5fa;border-color:#60a5fa;transform:translateY(-2px)}.linkedin-button{color:#fff;background:linear-gradient(135deg,#0a66c2,#0ea5e9);border-color:#0000;box-shadow:0 4px 16px #0a66c259}.linkedin-button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0a66c280}.github-button{color:#fff;background:linear-gradient(135deg,#24292f,#454c56);border-color:#0000;box-shadow:0 4px 16px #00000059}.github-button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #00000080}.medium-button{color:#fff;background:linear-gradient(135deg,#000,#333);border-color:#0000;box-shadow:0 4px 16px #00000059}.medium-button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #0000008c}.home-tech{flex-wrap:wrap;gap:10px;margin-top:45px;display:flex}.home-tech span{color:#94a3b8;border:1px solid #263244;border-radius:999px;padding:8px 14px;font-size:.82rem}.tech-marquee{background:#0a0f1a;border-top:1px solid #60a5fa1a;padding:36px 0;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8% 92%,#0000)}.tech-track{gap:48px;width:max-content;animation:32s linear infinite scrollTech;display:flex}.tech-marquee:hover .tech-track{animation-play-state:paused}.tech-item{color:#94a3b8;white-space:nowrap;align-items:center;gap:10px;font-size:.95rem;font-weight:500;display:flex}.tech-icon{flex-shrink:0;width:26px;height:26px}@keyframes scrollTech{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.tech-track{animation:none}}.home-visual{justify-content:center;align-self:start;align-items:flex-start;min-height:480px;display:flex;position:relative}.visual-glow{filter:blur(70px);background:#2563eb26;border-radius:50%;width:350px;height:350px;position:absolute}.floating-icon{z-index:2;filter:drop-shadow(0 10px 12px #00000080)drop-shadow(0 2px #ffffff14);pointer-events:none;font-size:2.6rem;animation:4.5s ease-in-out infinite floatIcon;position:absolute;top:-34px;right:30px}@keyframes floatIcon{0%,to{transform:translateY(0)rotate(-6deg)}50%{transform:translateY(-14px)rotate(8deg)}}.mini-grid{z-index:1;grid-template-columns:1fr 1fr;align-items:start;gap:14px;width:100%;max-width:400px;display:grid;position:relative}.mini-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f172aa6;border:1px solid #60a5fa33;border-radius:14px;padding:13px;transition:transform .25s,border-color .25s,box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 12px 30px #00000059}.mini-card:before{content:"";height:3px;position:absolute;top:0;left:0;right:0}.mini-grid>div:first-child{transform:rotate(-2deg)}.mini-grid>div:nth-child(2){transform:rotate(3deg)translateY(14px)}.mini-grid>div:nth-child(3){transform:rotate(-3deg)translateY(-6px)}.mini-grid>div:nth-child(4){transform:rotate(2deg)translateY(18px)}.mini-grid>div:nth-child(5){transform:rotate(-4deg)translateY(8px)}.mini-grid>div:nth-child(6){transform:rotate(2deg)translateY(-10px)}.mini-grid>div:nth-child(7){transform:rotate(-1deg)translateY(6px)}.mini-grid>div:nth-child(8){transform:rotate(4deg)translateY(-4px)}.mini-card:hover{z-index:2;border-color:#60a5fa73;transform:translateY(-6px)rotate(0);box-shadow:0 20px 40px #00000073}.card-cluster:before{background:linear-gradient(90deg,#60a5fa,#a78bfa)}.card-timeseries:before{background:linear-gradient(90deg,#34d399,#10b981)}.card-analytics:before{background:linear-gradient(90deg,#fbbf24,#f472b6)}.card-agentic:before{background:linear-gradient(90deg,#a78bfa,#f472b6)}.card-classification:before{background:linear-gradient(90deg,#22d3ee,#3b82f6)}.card-regression:before{background:linear-gradient(90deg,#fb923c,#ef4444)}.card-reinforcement:before{background:linear-gradient(90deg,#2dd4bf,#22c55e)}.card-rag:before{background:linear-gradient(90deg,#818cf8,#ec4899)}.mini-label{letter-spacing:.1em;color:#60a5fa;margin-bottom:8px;font-size:.58rem;font-weight:700}.mini-card-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.mini-card-head .mini-label{margin-bottom:0}.mini-trend{color:#34d399;font-size:.62rem;font-weight:700}.mini-chart{width:100%;height:54px;display:block}.cluster-halo{opacity:.15}.halo-a{fill:#60a5fa}.halo-b{fill:#a78bfa}.dot-a{fill:#60a5fa}.dot-b{fill:#a78bfa}.dot-c{fill:#f472b6}.dot{transform-box:fill-box;transform-origin:50%;animation:3s ease-in-out infinite float}.pulse-dot{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite pulseNode}.ts-line{fill:none;stroke:#34d399;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.analytics-bar{transform-box:fill-box;transform-origin:bottom;animation:.7s ease-out backwards growUp}.bar-a{fill:#60a5fa}.bar-b{fill:#a78bfa}.bar-c{fill:#f472b6}.bar-d{fill:#fbbf24}@keyframes growUp{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.agent-loop{fill:none;stroke:#60a5fa4d;stroke-width:1.5px;stroke-dasharray:4 5;transform-box:fill-box;transform-origin:50%;animation:6s linear infinite spin}.classify-line{stroke:#94a3b859;stroke-width:1.5px;stroke-dasharray:4 4}.regression-line{stroke:#fb923c;stroke-width:2px;stroke-linecap:round}.reinforce-path{fill:none;stroke:#2dd4bf66;stroke-width:1.5px}.rag-node,.rag-chunk{opacity:.9}.rag-line{stroke:#94a3b84d;stroke-width:1px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulseNode{0%,to{opacity:.4}50%{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=900px){.home{padding:100px 6%}.home-container{grid-template-columns:1fr;gap:60px}.home-visual{justify-content:flex-start;align-items:flex-start;min-height:0}}@media (width<=600px){.home{padding:80px 6%}.hosted-badge{gap:6px;padding:4px 10px;font-size:.68rem;top:16px;bottom:auto;right:12px}.hosted-icon{width:13px;height:13px}.home-title{font-size:3.2rem}.status-line{padding:8px 12px;font-size:.72rem}.status-cycle{width:200px;height:3.2em}.home-actions{flex-direction:column;align-items:stretch}.home-button{text-align:center}.mini-grid{grid-template-columns:1fr 1fr;gap:10px}.mini-grid>div{transform:none}.mini-card{padding:11px}}@media (width<=420px){.mini-grid{grid-template-columns:1fr}}.project-card{color:inherit;background:#0f172a80;border:1px solid #60a5fa26;border-radius:16px;padding:28px;text-decoration:none;transition:transform .25s,border-color .25s,box-shadow .25s;display:block;position:relative;overflow:hidden}.project-card:before{content:"";background:linear-gradient(90deg,#60a5fa,#a78bfa);height:3px;position:absolute;top:0;left:0;right:0}.project-card:hover{border-color:#60a5fa66;transform:translateY(-4px);box-shadow:0 16px 36px #00000059}.project-label{letter-spacing:.12em;color:#60a5fa;margin-bottom:10px;font-size:.7rem;font-weight:700}.project-title{color:#f8fafc;margin-bottom:10px;font-size:1.3rem;font-weight:700}.project-description{color:#94a3b8;margin-bottom:18px;font-size:.92rem;line-height:1.7}.project-tags{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.project-tags span{color:#94a3b8;border:1px solid #263244;border-radius:999px;padding:5px 12px;font-size:.75rem}.project-link-hint{color:#60a5fa;align-items:center;gap:7px;font-size:.85rem;font-weight:600;display:inline-flex}.project-link-hint svg{width:12px;height:12px}.projects-page{background:#080c14;min-height:100vh;padding:100px 8%}.projects-container{max-width:1100px;margin:0 auto}.projects-eyebrow{letter-spacing:.15em;color:#60a5fa;margin-bottom:12px;font-size:.8rem;font-weight:700}.projects-title{color:#f8fafc;margin-bottom:48px;font-size:clamp(2rem,4vw,2.8rem)}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:24px;display:grid}@media (width<=600px){.projects-page{padding:80px 6%}}.triptrace-page{color:#f8fafc;background:#080c14;min-height:100vh;padding:60px 8%;font-family:DM Sans,sans-serif}.triptrace-header{justify-content:space-between;align-items:flex-start;gap:30px;max-width:1100px;margin:0 auto 20px;display:flex}.triptrace-label{letter-spacing:.15em;color:#60a5fa;margin:0 0 10px;font-size:.75rem;font-weight:700}.triptrace-header h1{letter-spacing:-.01em;margin:0 0 10px;font-family:Space Grotesk,sans-serif;font-size:clamp(1.5rem,2.6vw,2.2rem);font-weight:700;line-height:1.25}.triptrace-header p{color:#94a3b8;max-width:550px;line-height:1.6}.score-card{text-align:center;background:#0f172a99;border:1px solid #60a5fa33;border-radius:14px;min-width:170px;padding:18px 22px;position:relative;overflow:hidden}.score-card:before{content:"";background:linear-gradient(90deg,#60a5fa,#a78bfa);height:3px;position:absolute;top:0;left:0;right:0}.score-card span{letter-spacing:.1em;color:#60a5fa;font-size:.65rem;font-weight:700;display:block}.score-card strong{margin-top:8px;font-family:Space Grotesk,sans-serif;font-size:1.5rem;display:block}.taxi-road{max-width:1100px;height:190px;margin:0 auto 40px;position:relative;overflow:hidden}.road-svg{width:100%;height:100%;display:block}.road-edge-outer{fill:none;stroke:#60a5fa2e;stroke-width:34px;stroke-linecap:round}.road-edge-inner{fill:none;stroke:#263244;stroke-width:28px;stroke-linecap:round}.road-base{fill:none;stroke:#151d29;stroke-width:22px;stroke-linecap:round}.road-line{fill:none;stroke:#fbbf24;stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:12 18;animation:1s linear infinite roadMove}@keyframes roadMove{0%{stroke-dashoffset:0}to{stroke-dashoffset:-30px}}.route-marker circle{fill:#080c14;stroke:#60a5fa;stroke-width:3px}.route-marker text{fill:#94a3b8;letter-spacing:.06em;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700}.route-info rect{fill:#0f172ad9;stroke:#60a5fa59;stroke-width:1.5px}.route-info text{fill:#f8fafc;text-anchor:middle;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700}.taxi-mover{transform-origin:0 0;transform:scale(.6)}.taxi-shadow{fill:#0006;filter:blur(3px);animation:.5s ease-in-out infinite alternate shadowPulse}.taxi-body{transform-box:fill-box;transform-origin:50%;animation:.5s ease-in-out infinite alternate taxiBounce}.taxi-wheel{animation:.5s linear infinite wheelSpin}@keyframes taxiBounce{0%{transform:translateY(0)}to{transform:translateY(-3px)}}@keyframes shadowPulse{0%{opacity:.4;transform:scaleX(1)}to{opacity:.25;transform:scaleX(.92)}}@keyframes wheelSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.taxi-shadow,.taxi-body,.taxi-wheel{animation:none}}.investigation-container{max-width:1100px;margin:0 auto}.case-header{color:#94a3b8;justify-content:space-between;margin-bottom:15px;font-size:.85rem;display:flex}.case-severity{text-transform:uppercase;letter-spacing:.05em;color:#60a5fa}.trip-card,.decision-section,.result-panel,.model-panel,.distribution-panel,.anomaly-panel{background:#0f172a80;border:1px solid #60a5fa26;border-radius:16px;margin-bottom:25px;padding:30px;position:relative;overflow:hidden}.trip-card:before,.decision-section:before,.result-panel:before,.model-panel:before,.distribution-panel:before,.anomaly-panel:before{content:"";background:linear-gradient(90deg,#60a5fa,#a78bfa);height:3px;position:absolute;top:0;left:0;right:0}.trip-card h2,.decision-section h2,.result-panel h2,.model-panel h2,.distribution-panel h2,.anomaly-panel h2{margin-top:0;font-family:Space Grotesk,sans-serif;font-weight:700}.techy-panel{background-image:radial-gradient(circle, #60a5fa1f 1px, transparent 1px), #0f172a80;background-position:-4px -4px;background-size:18px 18px}.model-stats-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.compact-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.compact-grid .metric{padding:12px 14px}.compact-grid .metric span{margin-bottom:4px;font-size:.68rem}.compact-grid .metric strong{font-size:.95rem}.summary-grid{margin-top:20px}.distribution-subtitle{color:#94a3b8;max-width:620px;margin:-8px 0 24px;line-height:1.7}.histogram-wrap{overflow-x:auto}.histogram-svg{width:100%;min-width:560px;height:auto;display:block}.hist-value{fill:#f8fafc;text-anchor:middle;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700}.hist-label{fill:#94a3b8;text-anchor:middle;font-size:12px}.insight-chips{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.insight-chip{color:#cbd5e1;background:#60a5fa14;border:1px solid #60a5fa40;border-radius:999px;padding:8px 16px;font-size:.85rem}.trip-grid{grid-template-columns:repeat(4,1fr);gap:15px;display:grid}.metric{background:#080c1499;border:1px solid #94a3b826;border-radius:10px;padding:18px}.metric span{color:#94a3b8;align-items:center;gap:6px;margin-bottom:8px;font-size:.75rem;display:flex}.metric-icon{color:#60a5fa;flex-shrink:0;width:13px;height:13px}.metric strong{letter-spacing:-.01em;font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Menlo,Consolas,monospace;font-size:1.1rem}.integrity-bars{flex-direction:column;gap:12px;margin-top:24px;display:flex}.integrity-row{align-items:center;gap:14px;display:flex}.integrity-label{color:#94a3b8;flex-shrink:0;width:80px;font-size:.8rem}.integrity-track{background:#94a3b81a;border-radius:999px;flex:1;height:14px;overflow:hidden}.integrity-fill{border-radius:999px;height:100%;transition:width .6s}.fill-raw{background:linear-gradient(90deg,#60a5fa,#3b82f6)}.fill-clean{background:linear-gradient(90deg,#34d399,#10b981)}.fill-errors{background:linear-gradient(90deg,#f87171,#ef4444)}.integrity-value{text-align:right;color:#f8fafc;flex-shrink:0;width:60px;font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Menlo,Consolas,monospace;font-size:.85rem;font-weight:700}.decision-section{text-align:center}.answer-buttons{justify-content:center;gap:15px;margin-top:25px;display:flex}.answer-buttons button,.next-case-button{color:#f8fafc;cursor:pointer;background:#94a3b814;border:1px solid #94a3b840;border-radius:8px;padding:13px 25px;font-family:inherit;font-size:.95rem;font-weight:600;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s}.answer-buttons button:first-child:hover:not(:disabled){background:#34d3991f;border-color:#34d399;transform:translateY(-2px);box-shadow:0 6px 18px #34d39940}.answer-buttons button:nth-child(2):hover:not(:disabled){background:#fbbf241f;border-color:#fbbf24;transform:translateY(-2px);box-shadow:0 6px 18px #fbbf2440}.answer-buttons button:nth-child(3):hover:not(:disabled){background:#f871711f;border-color:#f87171;transform:translateY(-2px);box-shadow:0 6px 18px #f8717140}.next-case-button{color:#07111f;background:linear-gradient(135deg,#60a5fa,#a78bfa);border-color:#0000}.next-case-button:hover{transform:translateY(-2px);box-shadow:0 8px 22px #60a5fa59}.answer-buttons button:disabled{cursor:not-allowed;opacity:.5}.result-panel h2{margin-bottom:25px}.result-row{border-bottom:1px solid #94a3b826;justify-content:space-between;padding:13px 0;display:flex}.result-row span{color:#94a3b8}.explanation{background:#080c1499;border:1px solid #94a3b826;border-radius:10px;margin-top:25px;padding:20px}.explanation h3{margin-top:0;font-family:Space Grotesk,sans-serif}.explanation p{color:#cbd5e1;margin-bottom:0;line-height:1.7}.next-case-button{width:100%;margin-top:25px}@media (width<=800px){.triptrace-page{padding:35px 20px}.triptrace-header{flex-direction:column}.trip-grid,.model-stats-grid{grid-template-columns:repeat(2,1fr)}.score-card{box-sizing:border-box;width:100%}}@media (width<=500px){.trip-grid,.model-stats-grid{grid-template-columns:1fr}.answer-buttons{flex-direction:column}.answer-buttons button{width:100%}.triptrace-header h1{font-size:2.3rem}.case-header{flex-direction:column;gap:8px}.taxi-road{height:150px}}
