@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800;900&family=Sora:wght@500;600;700;800&display=swap";.eco-chatbot{--eco-bg: #0d1511;--eco-surface: #141f18;--eco-surface-2: #1b2a20;--eco-surface-3: #24362a;--eco-text: #f1f8e9;--eco-muted: #b9c8b4;--eco-line: rgba(220, 244, 212, .14);--eco-green: #8fd16f;--eco-mint: #78dec2;--eco-gold: #f4c95d;--eco-blue: #87bfff;margin-bottom:clamp(30px,6vw,66px);padding:14px;border:1px solid rgba(143,209,111,.22);border-radius:8px;color:var(--eco-text);font-family:var(--font-body, Inter, ui-sans-serif, system-ui, sans-serif);position:relative;isolation:isolate;background:linear-gradient(rgba(241,248,233,.024) 1px,transparent 1px),linear-gradient(90deg,rgba(241,248,233,.024) 1px,transparent 1px),linear-gradient(135deg,rgba(120,222,194,.09),transparent 34%),linear-gradient(315deg,rgba(143,209,111,.08),transparent 30%),var(--eco-bg);background-size:30px 30px,30px 30px,auto,auto,auto;box-shadow:0 26px 78px #00000057,inset 0 1px #ffffff0d;overflow:hidden}.eco-chatbot:before{position:absolute;inset:0;z-index:-1;pointer-events:none;content:"";opacity:.42;background:linear-gradient(90deg,transparent,rgba(120,222,194,.08),transparent),linear-gradient(180deg,rgba(255,255,255,.035),transparent 24%);-webkit-mask-image:linear-gradient(to bottom,#000,transparent 78%);mask-image:linear-gradient(to bottom,#000,transparent 78%);animation:ecoAmbientFlow 18s ease-in-out infinite alternate}.eco-chatbot button,.eco-chatbot input{font:inherit}.eco-chatbot button{cursor:pointer}.eco-chatbot button:disabled,.eco-chatbot input:disabled{cursor:not-allowed;opacity:.56}.eco-topbar,.eco-brand,.eco-actions,.eco-actions span,.eco-panel-title,.eco-source-list article div,.eco-chat-heading,.eco-message,.eco-input-row{display:flex;align-items:center}.eco-topbar{position:relative;justify-content:space-between;gap:18px;margin-bottom:12px;padding:14px 16px;border:1px solid var(--eco-line);border-radius:8px;background:linear-gradient(135deg,rgba(143,209,111,.12),transparent 42%),#141f18e6;box-shadow:0 18px 48px #00000042,inset 0 1px #ffffff0f;overflow:hidden}.eco-topbar:before{position:absolute;inset:0;pointer-events:none;content:"";opacity:.62;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.055) 42%,transparent 62%),radial-gradient(circle at 92% 20%,rgba(120,222,194,.11),transparent 11rem);transform:translate(-26%);animation:ecoPanelSheen 8s ease-in-out infinite}.eco-topbar:after{position:absolute;left:0;right:0;bottom:0;height:1px;content:"";background:linear-gradient(90deg,transparent,var(--eco-green),var(--eco-mint),transparent);animation:ecoBorderSweep 5.5s ease-in-out infinite}.eco-brand{gap:13px;min-width:300px}.eco-mark{position:relative;display:grid;width:46px;height:46px;flex:0 0 auto;place-items:center;border-radius:8px;color:#092113;background:linear-gradient(135deg,rgba(255,255,255,.3),transparent 38%),linear-gradient(135deg,var(--eco-green),var(--eco-mint));box-shadow:0 14px 34px #78dec23d;overflow:hidden}.eco-mark svg{filter:drop-shadow(0 0 10px rgba(9,33,19,.22))}.eco-mark:after{position:absolute;inset:7px;content:"";border:1px solid rgba(255,255,255,.38);border-radius:6px}.eco-brand h3{margin:0;color:transparent;font-family:var(--font-display, Inter, ui-sans-serif, system-ui, sans-serif);font-size:clamp(1.45rem,2.2vw,2.15rem);font-weight:750;line-height:1;background:linear-gradient(90deg,var(--eco-text),var(--eco-green),var(--eco-mint));-webkit-background-clip:text;background-clip:text;text-wrap:balance}.eco-brand p{margin:5px 0 0;color:var(--eco-muted);font-size:.92rem}.eco-actions{gap:10px;flex-wrap:wrap;justify-content:flex-end}.eco-actions span,.eco-actions a,.eco-chat-heading button,.eco-suggestions button,.eco-input-row button{min-height:40px;border:1px solid var(--eco-line);border-radius:8px;background:var(--eco-surface-2);color:var(--eco-text);box-shadow:inset 0 1px #ffffff0f}.eco-actions span,.eco-actions a{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;font-size:.88rem;font-weight:800;line-height:1;text-decoration:none;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.eco-actions a:hover,.eco-chat-heading button:hover,.eco-suggestions button:not(:disabled):hover,.eco-input-row button:not(:disabled):hover{border-color:#8fd16f5c;background:linear-gradient(135deg,rgba(143,209,111,.12),transparent 58%),var(--eco-surface-3);box-shadow:0 12px 28px #78dec21a,inset 0 1px #ffffff14;transform:translateY(-1px)}.eco-workspace{display:grid;grid-template-columns:minmax(310px,.82fr) minmax(470px,1.18fr);gap:12px;height:min(760px,82vh);min-height:650px}.eco-retrieval-panel,.eco-chat-panel,.eco-source-list article{position:relative;border:1px solid var(--eco-line);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 18%),#141f18eb;box-shadow:0 14px 38px #0003,inset 0 1px #ffffff0d}.eco-retrieval-panel,.eco-chat-panel{min-height:0;overflow:hidden}.eco-retrieval-panel{display:flex;flex-direction:column;padding:12px}.eco-panel-title{gap:10px;padding:4px 2px 12px;color:var(--eco-green)}.eco-panel-title h4,.eco-chat-heading h4,.eco-source-list h5{margin:0;font-family:var(--font-display, Inter, ui-sans-serif, system-ui, sans-serif);font-weight:700;letter-spacing:0}.eco-panel-title p,.eco-chat-heading p{margin:3px 0 0;color:var(--eco-muted);font-size:.82rem;font-weight:800;text-transform:uppercase}.eco-source-list{display:grid;gap:10px;min-height:0;overflow:auto;padding-right:6px;scrollbar-color:rgba(143,209,111,.62) rgba(29,44,33,.72);scrollbar-width:thin}.eco-source-list::-webkit-scrollbar,.eco-messages::-webkit-scrollbar{width:9px}.eco-source-list::-webkit-scrollbar-track,.eco-messages::-webkit-scrollbar-track{border-radius:999px;background:#1d2c21b8}.eco-source-list::-webkit-scrollbar-thumb,.eco-messages::-webkit-scrollbar-thumb{border:2px solid rgba(29,44,33,.72);border-radius:999px;background:linear-gradient(180deg,var(--eco-green),var(--eco-mint))}.eco-source-list article{padding:13px;background:#1d2c21d1;overflow:hidden;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.eco-source-list article:after{position:absolute;inset:0;pointer-events:none;content:"";opacity:0;background:linear-gradient(110deg,transparent 0%,rgba(241,248,233,.055) 42%,transparent 62%),radial-gradient(circle at 84% 20%,rgba(135,191,255,.08),transparent 10rem);transform:translate(-34%);transition:opacity .18s ease,transform .52s ease}.eco-source-list article:hover{border-color:#78dec252;background:linear-gradient(135deg,rgba(143,209,111,.08),transparent 62%),#1d2c21e6;box-shadow:0 14px 34px #0003,0 0 24px #78dec214,inset 0 1px #ffffff0f;transform:translateY(-2px)}.eco-source-list article:hover:after{opacity:1;transform:translate(32%)}.eco-source-list .eco-empty-source{border-style:dashed;border-color:#78dec238;background:linear-gradient(135deg,rgba(120,222,194,.07),transparent 58%),#1d2c2194;box-shadow:inset 0 1px #ffffff0d,0 12px 28px #00000024}.eco-source-list .eco-empty-source:hover{transform:none}.eco-source-list .eco-empty-source h5{color:color-mix(in srgb,var(--eco-text) 88%,var(--eco-mint))}.eco-source-list .eco-empty-source p{color:color-mix(in srgb,var(--eco-muted) 88%,var(--eco-text))}.eco-source-list article div{position:relative;z-index:1;gap:7px;margin-bottom:9px;color:var(--eco-mint);font-size:.78rem;font-weight:900;text-transform:uppercase}.eco-source-list h5{position:relative;z-index:1;color:var(--eco-text);font-size:1rem;font-weight:680;line-height:1.35;text-wrap:balance}.eco-source-list strong{color:var(--eco-blue);font-size:.8rem}.eco-source-meta{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:8px;margin-top:9px}.eco-source-meta strong,.eco-source-meta em{display:inline-flex;min-height:26px;align-items:center;padding:4px 8px;border:1px solid var(--eco-line);border-radius:999px;background:#0f1712b8;font-family:var(--font-mono, ui-monospace, monospace);font-size:.76rem;font-style:normal;font-weight:900}.eco-source-meta em{color:var(--eco-gold)}.eco-source-list p{position:relative;z-index:1;margin:9px 0 0;color:var(--eco-muted);font-size:.88rem;line-height:1.55}.eco-source-list .eco-paper-authors{margin-top:7px;color:var(--eco-green);font-size:.78rem;font-weight:850;letter-spacing:0}.eco-chat-panel{display:flex;flex-direction:column;min-height:0;background:linear-gradient(135deg,rgba(120,222,194,.07),transparent 40%),#111a14f0}.eco-chat-panel:before{position:absolute;inset:0;pointer-events:none;content:"";opacity:.48;background:radial-gradient(circle at 8% 12%,rgba(143,209,111,.08),transparent 13rem),linear-gradient(180deg,rgba(255,255,255,.025),transparent 34%)}.eco-chat-heading{position:relative;z-index:1;justify-content:space-between;gap:14px;padding:13px 14px;border-bottom:1px solid var(--eco-line)}.eco-chat-heading button{padding:0 12px;font-weight:850;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.eco-messages{position:relative;z-index:1;display:flex;min-height:0;flex:1;flex-direction:column;gap:10px;overflow:auto;padding:14px;scrollbar-color:rgba(143,209,111,.62) rgba(29,44,33,.72);scrollbar-width:thin}.eco-message{position:relative;gap:8px;max-width:84%;padding:12px 14px;border:1px solid var(--eco-line);border-radius:8px;line-height:1.62;box-shadow:0 10px 26px #0000001f}.eco-message p{margin:0}.eco-message.bot{align-self:flex-start;color:var(--eco-text);background:linear-gradient(135deg,rgba(120,222,194,.055),transparent 62%),#1d2c21eb}.eco-message.bot p{color:color-mix(in srgb,var(--eco-text) 92%,var(--eco-mint));font-family:var(--font-body, Inter, ui-sans-serif, system-ui, sans-serif);font-size:.96rem;font-weight:650;letter-spacing:0;line-height:1.68;text-shadow:0 0 18px rgba(120,222,194,.08)}.eco-message.bot svg{flex:0 0 auto;color:var(--eco-green);margin-top:3px;filter:drop-shadow(0 0 10px rgba(143,209,111,.2))}.eco-message.user{align-self:flex-end;color:#0d1e12;background:linear-gradient(135deg,var(--eco-green),var(--eco-mint));font-weight:760;box-shadow:0 12px 28px #78dec21f,inset 0 1px #ffffff2e}.eco-message.waiting{position:relative;justify-content:center;width:96px;min-height:46px;color:var(--eco-text);background:linear-gradient(135deg,rgba(143,209,111,.14),transparent 44%),#1d2c21f5;overflow:hidden;box-shadow:0 12px 30px #00000029,0 0 24px #78dec214}.eco-message.waiting svg{margin-right:2px}.eco-message.waiting:after{position:absolute;inset:auto 12px 0;height:1px;content:"";background:linear-gradient(90deg,transparent,var(--eco-green),var(--eco-mint),transparent);animation:ecoLoadingSweep 1.8s ease-in-out infinite}.eco-loading-steps{display:flex;align-items:center;justify-content:center;gap:6px}.eco-loading-steps span{width:8px;height:8px;border-radius:999px;background:var(--eco-green);box-shadow:0 0 0 1px #ffffff24,0 0 16px #8fd16f85;animation:ecoPulseDot 1.05s ease-in-out infinite}.eco-loading-steps span:nth-child(2){background:var(--eco-mint);animation-delay:.14s}.eco-loading-steps span:nth-child(3){background:var(--eco-gold);animation-delay:.28s}.eco-suggestions{position:relative;z-index:1;display:flex;flex:0 0 auto;flex-wrap:wrap;gap:8px;padding:0 14px 12px}.eco-suggestions button{min-height:34px;padding:0 10px;color:var(--eco-muted);font-size:.84rem;font-weight:800;transition:border-color .18s ease,color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.eco-input-row{position:relative;z-index:1;flex:0 0 auto;gap:10px;padding:13px 14px;border-top:1px solid var(--eco-line);background:#162119db}.eco-input-row input{width:100%;min-height:44px;min-width:0;padding:0 13px;border:1px solid var(--eco-line);border-radius:8px;color:var(--eco-text);background:var(--eco-surface-2);font-weight:600;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.eco-input-row input::placeholder{color:#b9c8b4b8;font-weight:500}.eco-input-row input:focus{outline:none;border-color:#78dec27a;background:linear-gradient(135deg,rgba(120,222,194,.055),transparent 62%),var(--eco-surface-2);box-shadow:0 0 0 3px #78dec214,inset 0 1px #ffffff0f}.eco-input-row button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:104px;padding:0 14px;border-color:transparent;color:#092113;background:linear-gradient(135deg,var(--eco-green),var(--eco-mint));font-weight:900;transition:box-shadow .18s ease,filter .18s ease,transform .18s ease}.eco-input-row button:not(:disabled):hover{filter:saturate(1.08) brightness(1.02);box-shadow:0 14px 34px #78dec229,inset 0 1px #ffffff38}@media(max-width:1120px){.eco-workspace{grid-template-columns:1fr}.eco-source-list{max-height:460px}.eco-chat-panel{min-height:620px}}@media(max-width:740px){.eco-chatbot{padding:10px}.eco-topbar,.eco-brand,.eco-actions,.eco-chat-heading,.eco-input-row{align-items:stretch;flex-direction:column}.eco-brand{min-width:0}.eco-actions span,.eco-actions a,.eco-chat-heading button,.eco-input-row button{width:100%}.eco-message{max-width:100%}}@keyframes ecoBorderSweep{0%,to{opacity:.36;transform:translate(-18%)}50%{opacity:.92;transform:translate(18%)}}@keyframes ecoAmbientFlow{0%{opacity:.54;transform:translate3d(-1.4%,-.8%,0) scale(.99)}to{opacity:.84;transform:translate3d(1.2%,1%,0) scale(1.02)}}@keyframes ecoPanelSheen{0%,38%,to{opacity:0;transform:translate(-34%)}58%{opacity:.66;transform:translate(26%)}}@keyframes ecoPulseDot{0%,to{opacity:.32;transform:translateY(0) scale(.82)}50%{opacity:1;transform:translateY(-2px) scale(1)}}@keyframes ecoLoadingSweep{0%,to{opacity:.35;transform:translate(-18%)}50%{opacity:1;transform:translate(18%)}}.traceds-lab{--trace-bg: #0d1315;--trace-surface: #141c20;--trace-surface-2: #1b262b;--trace-surface-3: #24323a;--trace-text: #edf2f7;--trace-muted: #9aa7b8;--trace-line: rgba(255, 255, 255, .1);--trace-accent: #3dd6b5;--trace-accent-2: #f2b84b;--trace-accent-3: #ef6f7b;--trace-blue: #71a7ff;--trace-glow: rgba(61, 214, 181, .28);position:relative;margin-bottom:clamp(30px,6vw,66px);padding:14px;border:1px solid rgba(103,212,193,.22);border-radius:8px;color:var(--trace-text);font-family:var(--font-body, Inter, ui-sans-serif, system-ui, sans-serif);background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(135deg,rgba(61,214,181,.09),transparent 34%),linear-gradient(315deg,rgba(113,167,255,.08),transparent 30%),var(--trace-bg);background-size:28px 28px,28px 28px,auto,auto,auto;box-shadow:0 26px 78px #00000057,inset 0 1px #ffffff0d;overflow:hidden}.traceds-lab:before{position:absolute;inset:0;pointer-events:none;content:"";opacity:.42;background:linear-gradient(90deg,transparent,rgba(61,214,181,.08),transparent),linear-gradient(180deg,rgba(255,255,255,.035),transparent 24%);-webkit-mask-image:linear-gradient(to bottom,#000,transparent 78%);mask-image:linear-gradient(to bottom,#000,transparent 78%)}.traceds-lab button,.traceds-lab select,.traceds-lab input{font:inherit}.traceds-lab button{cursor:pointer}.traceds-lab button:disabled,.traceds-lab input:disabled{cursor:not-allowed;opacity:.48}.traceds-topbar,.traceds-brand,.traceds-actions,.traceds-panel-heading,.traceds-section-heading,.traceds-card-title,.traceds-status-rail,.traceds-playback,.traceds-header-speed-control,.traceds-linked-node-wrap{display:flex;align-items:center}.traceds-topbar{position:relative;justify-content:space-between;gap:18px;margin-bottom:12px;padding:14px 16px;border:1px solid var(--trace-line);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 7%,transparent),transparent 42%),color-mix(in srgb,var(--trace-surface) 90%,transparent);box-shadow:0 18px 48px #00000047,inset 0 1px color-mix(in srgb,#ffffff 8%,transparent);overflow:hidden}.traceds-topbar:after{position:absolute;left:0;right:0;bottom:0;height:1px;content:"";background:linear-gradient(90deg,transparent,var(--trace-accent),var(--trace-accent-2),transparent);animation:tracedsBorderSweep 5s ease-in-out infinite}.traceds-brand{gap:13px;min-width:280px}.traceds-mark{position:relative;display:grid;width:46px;height:46px;flex:0 0 auto;place-items:center;border-radius:8px;color:#08231d;background:linear-gradient(135deg,color-mix(in srgb,#ffffff 26%,transparent),transparent 38%),linear-gradient(135deg,var(--trace-accent),var(--trace-blue));box-shadow:0 14px 34px var(--trace-glow);overflow:hidden}.traceds-mark:after{position:absolute;inset:7px;content:"";border:1px solid color-mix(in srgb,#ffffff 42%,transparent);border-radius:6px;opacity:.55}.traceds-brand h3{margin:0;color:transparent;font-family:var(--font-display, Inter, ui-sans-serif, system-ui, sans-serif);font-size:clamp(1.6rem,2.4vw,2.2rem);font-weight:700;line-height:1;background:linear-gradient(90deg,var(--trace-text),var(--trace-accent),var(--trace-accent-2));-webkit-background-clip:text;background-clip:text}.traceds-brand p{margin:5px 0 0;color:var(--trace-muted);font-size:.92rem}.traceds-actions{gap:10px;flex-wrap:wrap;justify-content:flex-end}.traceds-select,.traceds-actions a,.traceds-primary-button,.traceds-play-button,.traceds-playback button{min-height:42px;border:1px solid var(--trace-line);border-radius:8px;background:var(--trace-surface-2);color:var(--trace-text);box-shadow:inset 0 1px color-mix(in srgb,#ffffff 7%,transparent)}.traceds-select{min-width:240px;padding:0 38px 0 12px}.traceds-actions a,.traceds-primary-button,.traceds-play-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;font-weight:900;line-height:1;text-decoration:none}.traceds-primary-button,.traceds-play-button{border-color:transparent;color:#06241f;background:linear-gradient(135deg,var(--trace-accent),color-mix(in srgb,var(--trace-blue) 58%,var(--trace-accent)));box-shadow:0 12px 28px color-mix(in srgb,var(--trace-accent) 24%,transparent)}.traceds-primary-button,.traceds-primary-button span{font-weight:950}.traceds-workspace{display:grid;grid-template-columns:minmax(360px,.92fr) minmax(520px,1.08fr);align-items:start;gap:12px;min-height:720px}.traceds-editor-panel,.traceds-debug-panel,.traceds-visualizer,.traceds-tool-card,.traceds-viz-block{border:1px solid var(--trace-line);border-radius:8px;background:linear-gradient(180deg,color-mix(in srgb,#ffffff 3%,transparent),transparent 18%),color-mix(in srgb,var(--trace-surface) 92%,transparent);box-shadow:0 14px 38px #0003,inset 0 1px color-mix(in srgb,#ffffff 5%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.traceds-editor-panel,.traceds-debug-panel{display:flex;min-height:0;overflow:hidden;flex-direction:column}.traceds-editor-panel{align-self:start}.traceds-debug-panel{min-height:720px;background:linear-gradient(135deg,color-mix(in srgb,var(--trace-blue) 6%,transparent),transparent 42%),color-mix(in srgb,var(--trace-surface) 96%,transparent)}.traceds-panel-heading,.traceds-section-heading{justify-content:space-between;gap:14px;padding:12px 14px;border-bottom:1px solid var(--trace-line)}.traceds-panel-heading p,.traceds-section-heading p{margin:0;color:var(--trace-accent);font-size:.72rem;font-weight:900;text-transform:uppercase}.traceds-panel-heading h4,.traceds-section-heading h4,.traceds-tool-card h4,.traceds-viz-block h4{margin:4px 0 0;font-family:var(--font-display, Inter, ui-sans-serif, system-ui, sans-serif);font-size:1rem}.traceds-editor-frame{flex:0 0 auto;min-height:320px;max-height:620px;border-bottom:1px solid var(--trace-line);transition:height .18s ease}.traceds-status-rail{gap:12px;flex-wrap:wrap;padding:12px 14px;color:var(--trace-muted);font-size:.88rem}.traceds-status-rail div{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid var(--trace-line);border-radius:999px;background:color-mix(in srgb,var(--trace-surface-2) 74%,transparent)}.traceds-playback{gap:10px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--trace-line);background:linear-gradient(90deg,color-mix(in srgb,var(--trace-accent) 6%,transparent),transparent 42%),var(--trace-surface)}.traceds-playback button{position:relative;display:grid;width:38px;min-height:38px;place-items:center;padding:0;color:var(--trace-text);background:linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 9%,transparent),transparent 58%),color-mix(in srgb,var(--trace-surface-2) 88%,transparent);overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease,color .18s ease,transform .18s ease,background .18s ease}.traceds-playback button:after{position:absolute;inset:0;content:"";background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--trace-accent) 20%,transparent),transparent 58%);opacity:0;transition:opacity .18s ease}.traceds-playback button svg,.traceds-playback button span{position:relative;z-index:1}.traceds-playback button:not(:disabled):hover{border-color:color-mix(in srgb,var(--trace-accent) 62%,var(--trace-line));color:var(--trace-accent);background:linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 16%,transparent),transparent 58%),color-mix(in srgb,var(--trace-surface-3) 90%,transparent);box-shadow:0 12px 26px color-mix(in srgb,var(--trace-accent) 18%,transparent),inset 0 1px color-mix(in srgb,#ffffff 9%,transparent);transform:translateY(-2px)}.traceds-playback button:not(:disabled):hover:after{opacity:1}.traceds-playback button:not(:disabled):active{transform:translateY(0) scale(.98)}.traceds-playback .traceds-play-button{display:inline-flex;width:auto;min-width:88px;padding:0 12px;border-color:color-mix(in srgb,var(--trace-accent) 36%,transparent);color:#071d1a;background:linear-gradient(135deg,var(--trace-accent),color-mix(in srgb,var(--trace-blue) 62%,var(--trace-accent)));font-weight:900}.traceds-playback .traceds-play-button:not(:disabled):hover{color:#071d1a;background:linear-gradient(135deg,color-mix(in srgb,#ffffff 10%,var(--trace-accent)),var(--trace-blue));box-shadow:0 14px 30px color-mix(in srgb,var(--trace-accent) 28%,transparent),inset 0 1px color-mix(in srgb,#ffffff 24%,transparent)}.traceds-playback>input[type=range]{flex:1;min-width:110px;accent-color:var(--trace-accent)}.traceds-playback>span{min-width:62px;color:var(--trace-muted);text-align:right;font-variant-numeric:tabular-nums}.traceds-header-speed-control{width:min(230px,42%);min-width:190px;gap:10px;justify-content:flex-end;padding:8px 10px;border:1px solid var(--trace-line);border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 10%,transparent),transparent 48%),color-mix(in srgb,var(--trace-surface-2) 82%,transparent);color:var(--trace-muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.traceds-header-speed-control span{flex:0 0 auto;color:var(--trace-accent)}.traceds-header-speed-control input{width:100%;min-width:86px;accent-color:var(--trace-accent)}.traceds-debug-content{display:grid;grid-template-rows:minmax(320px,1fr) auto;gap:12px;min-height:0;flex:1;padding:12px;overflow:auto;scrollbar-color:color-mix(in srgb,var(--trace-accent) 62%,transparent) color-mix(in srgb,var(--trace-surface-2) 72%,transparent);scrollbar-width:thin}.traceds-debug-content::-webkit-scrollbar,.traceds-structure-stage::-webkit-scrollbar{width:9px;height:9px}.traceds-debug-content::-webkit-scrollbar-track,.traceds-structure-stage::-webkit-scrollbar-track{border-radius:999px;background:color-mix(in srgb,var(--trace-surface-2) 72%,transparent)}.traceds-debug-content::-webkit-scrollbar-thumb,.traceds-structure-stage::-webkit-scrollbar-thumb{border:2px solid color-mix(in srgb,var(--trace-surface-2) 72%,transparent);border-radius:999px;background:linear-gradient(180deg,var(--trace-accent),var(--trace-blue))}.traceds-inspector-grid{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(300px,1.25fr);gap:12px;align-content:start;align-items:start;min-height:0}.traceds-inspector-grid .traceds-tool-card:last-child{grid-column:1 / -1}.traceds-tool-card{padding:12px;box-shadow:none;min-width:0}.traceds-complexity-card{position:relative;display:grid;gap:12px;align-content:start;align-self:start;height:fit-content;overflow:hidden}.traceds-card-title{gap:8px;margin-bottom:10px;flex-wrap:wrap}.traceds-card-title svg,.traceds-section-heading>svg{color:var(--trace-accent);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--trace-accent) 28%,transparent))}.traceds-line-pill{display:inline-block;padding:5px 9px;border-radius:999px;color:var(--trace-blue);background:color-mix(in srgb,var(--trace-blue) 16%,transparent);font-family:var(--font-mono, ui-monospace, monospace);font-size:.82rem;font-weight:900}.traceds-active-source{min-height:28px;margin:8px 0;color:var(--trace-text);white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font-mono, ui-monospace, monospace);font-size:.9rem}.traceds-code-lines{display:grid;gap:3px}.traceds-code-lines div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;padding:4px 7px;border-radius:6px;color:var(--trace-muted)}.traceds-code-lines div.is-active{color:var(--trace-text);background:color-mix(in srgb,var(--trace-accent-2) 18%,transparent);animation:tracedsActiveLinePulse 1.8s ease-in-out infinite}.traceds-code-lines span{color:var(--trace-muted);text-align:right;font-variant-numeric:tabular-nums}.traceds-code-lines code,.traceds-locals-grid code{font-family:var(--font-mono, ui-monospace, monospace);white-space:pre-wrap;overflow-wrap:anywhere}.traceds-step-explanation{margin-top:10px;padding:10px;border:1px solid color-mix(in srgb,var(--trace-accent) 18%,var(--trace-line));border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--trace-blue) 8%,transparent),transparent 56%),color-mix(in srgb,var(--trace-surface-2) 78%,transparent)}.traceds-step-explanation>span{color:var(--trace-accent);font-size:.7rem;font-weight:900;text-transform:uppercase}.traceds-step-explanation p{margin:5px 0 0;color:var(--trace-muted);font-size:.84rem;line-height:1.5}.traceds-big-o{color:var(--trace-accent);font-family:var(--font-display, Inter, ui-sans-serif, system-ui, sans-serif);font-size:clamp(1.35rem,1.8vw,1.85rem);font-weight:900;line-height:1;text-shadow:0 0 24px color-mix(in srgb,var(--trace-accent) 22%,transparent)}.traceds-complexity-summary{display:grid;gap:12px}.traceds-complexity-empty{margin:0;padding:10px;border:1px solid color-mix(in srgb,var(--trace-accent) 18%,var(--trace-line));border-radius:8px;color:var(--trace-muted);background:linear-gradient(135deg,color-mix(in srgb,var(--trace-blue) 8%,transparent),transparent 54%),color-mix(in srgb,var(--trace-surface-2) 78%,transparent);font-size:.84rem;line-height:1.45}.traceds-ai-loading{display:grid;justify-items:center;align-content:center;gap:10px;min-height:96px;padding:18px 8px;color:var(--trace-muted)}.traceds-ai-loading p{margin:0;color:var(--trace-muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.traceds-loading-dots{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px}.traceds-loading-dots span{width:10px;height:10px;border-radius:999px;background:var(--trace-accent);box-shadow:0 0 0 1px color-mix(in srgb,#ffffff 20%,transparent),0 0 18px color-mix(in srgb,var(--trace-accent) 62%,transparent);animation:tracedsDotPulse 1.05s ease-in-out infinite}.traceds-loading-dots span:nth-child(2){background:var(--trace-blue);box-shadow:0 0 0 1px color-mix(in srgb,#ffffff 18%,transparent),0 0 18px color-mix(in srgb,var(--trace-blue) 58%,transparent);animation-delay:.14s}.traceds-loading-dots span:nth-child(3){background:var(--trace-accent-2);box-shadow:0 0 0 1px color-mix(in srgb,#ffffff 16%,transparent),0 0 18px color-mix(in srgb,var(--trace-accent-2) 54%,transparent);animation-delay:.28s}.traceds-confidence{display:grid;gap:8px;color:var(--trace-muted);font-size:.84rem}.traceds-confidence div{display:flex;justify-content:space-between;gap:10px}.traceds-confidence strong{color:var(--trace-text)}.traceds-confidence meter{width:100%;height:11px}.traceds-confidence meter::-webkit-meter-bar{border:1px solid var(--trace-line);border-radius:999px;background:color-mix(in srgb,var(--trace-surface-2) 86%,transparent)}.traceds-confidence meter::-webkit-meter-optimum-value{border-radius:999px;background:linear-gradient(90deg,var(--trace-accent),var(--trace-blue))}.traceds-confidence meter::-moz-meter-bar{border-radius:999px;background:linear-gradient(90deg,var(--trace-accent),var(--trace-blue))}.traceds-reason-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}.traceds-reason-chips span{position:relative;display:inline-flex;max-width:100%;align-items:center;padding:7px 10px;border:1px solid color-mix(in srgb,var(--trace-accent) 22%,var(--trace-line));border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 8%,transparent),transparent 56%),color-mix(in srgb,var(--trace-surface-2) 82%,transparent);color:color-mix(in srgb,var(--trace-text) 82%,var(--trace-muted));font-family:var(--font-mono, ui-monospace, monospace);font-size:.73rem;font-weight:800;letter-spacing:0;line-height:1.35;overflow-wrap:anywhere;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease,transform .18s ease}.traceds-reason-chips span:hover{border-color:color-mix(in srgb,var(--trace-accent) 58%,var(--trace-line));background:linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 15%,transparent),transparent 58%),color-mix(in srgb,var(--trace-surface-3) 86%,transparent);color:var(--trace-text);box-shadow:0 10px 22px color-mix(in srgb,var(--trace-accent) 14%,transparent),inset 0 1px color-mix(in srgb,#ffffff 8%,transparent);transform:translateY(-2px)}.traceds-visualizer{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);min-height:320px;margin:0;overflow:hidden;box-shadow:none;background:radial-gradient(circle at 18% 12%,color-mix(in srgb,var(--trace-accent) 11%,transparent),transparent 20rem),color-mix(in srgb,var(--trace-surface) 94%,transparent)}.traceds-bubble-layer{position:absolute;inset:16px;z-index:8;pointer-events:none}.traceds-ai-bubble{position:absolute;top:min(630px,calc(100% - 190px));left:clamp(12px,calc(46% - 420px),96px);z-index:1;width:min(360px,calc(100% - 44px));padding:14px 16px;border:1px solid color-mix(in srgb,var(--trace-accent) 34%,transparent);border-radius:26px;background:linear-gradient(145deg,color-mix(in srgb,#ffffff 8%,transparent),transparent 42%),linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 11%,transparent),color-mix(in srgb,var(--trace-blue) 8%,transparent)),color-mix(in srgb,var(--trace-surface) 54%,transparent);box-shadow:0 20px 52px #00000057,0 0 24px color-mix(in srgb,var(--trace-accent) 10%,transparent),inset 0 1px color-mix(in srgb,#ffffff 14%,transparent),inset 0 -10px 26px color-mix(in srgb,var(--trace-blue) 7%,transparent);-webkit-backdrop-filter:blur(22px) saturate(145%);backdrop-filter:blur(22px) saturate(145%);cursor:grab;overflow:hidden;pointer-events:auto;touch-action:none;transform-origin:center;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;-webkit-user-select:none;user-select:none}.traceds-ai-bubble.is-chatting{left:clamp(12px,calc(46% - 500px),32px);width:min(440px,calc(100% - 44px))}.traceds-ai-bubble:before{position:absolute;inset:1px;pointer-events:none;content:"";border-radius:inherit;background:linear-gradient(180deg,color-mix(in srgb,#ffffff 9%,transparent),transparent 48%);opacity:.55}.traceds-complexity-card.is-loading:after,.traceds-ai-bubble.is-loading:after{position:absolute;inset:-14px;pointer-events:none;z-index:-1;content:"";border-radius:34px;background:radial-gradient(circle at 14% 18%,color-mix(in srgb,var(--trace-accent) 28%,transparent) 0 10%,transparent 32%),radial-gradient(circle at 88% 22%,color-mix(in srgb,var(--trace-blue) 25%,transparent) 0 9%,transparent 32%),radial-gradient(circle at 17% 84%,color-mix(in srgb,var(--trace-accent-2) 22%,transparent) 0 10%,transparent 34%),radial-gradient(circle at 82% 82%,color-mix(in srgb,var(--trace-accent) 18%,transparent) 0 9%,transparent 32%),radial-gradient(ellipse at 50% 102%,color-mix(in srgb,var(--trace-blue) 16%,transparent) 0 16%,transparent 50%);filter:blur(15px);opacity:.38;transform-origin:center;animation:tracedsLoadingAura 2.4s ease-in-out infinite}.traceds-complexity-card.is-loading,.traceds-ai-bubble.is-loading{overflow:visible;z-index:1;box-shadow:0 20px 54px #00000059,-8px 0 22px color-mix(in srgb,var(--trace-accent) 6%,transparent),8px 0 22px color-mix(in srgb,var(--trace-blue) 6%,transparent),0 12px 28px color-mix(in srgb,var(--trace-accent-2) 5%,transparent),inset 0 1px color-mix(in srgb,#ffffff 16%,transparent)}.traceds-ai-bubble:active{cursor:grabbing}.traceds-ai-bubble:hover{border-color:color-mix(in srgb,var(--trace-accent) 64%,transparent);background:linear-gradient(145deg,color-mix(in srgb,#ffffff 9%,transparent),transparent 42%),linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 14%,transparent),color-mix(in srgb,var(--trace-blue) 10%,transparent)),color-mix(in srgb,var(--trace-surface-2) 58%,transparent);box-shadow:0 24px 60px #00000061,0 0 28px color-mix(in srgb,var(--trace-accent) 13%,transparent),inset 0 1px color-mix(in srgb,#ffffff 16%,transparent),inset 0 -10px 26px color-mix(in srgb,var(--trace-blue) 9%,transparent)}.traceds-ai-bubble-header{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:7px;margin-bottom:9px}.traceds-ai-bubble-header>span{display:inline-flex;align-items:center;gap:7px;color:transparent;font-family:var(--font-display, Inter, ui-sans-serif, system-ui, sans-serif);font-size:.84rem;font-weight:900;line-height:1;background:linear-gradient(90deg,var(--trace-accent),var(--trace-blue),var(--trace-accent-2));-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 12px color-mix(in srgb,var(--trace-accent) 24%,transparent));text-transform:uppercase}.traceds-ai-bubble-header svg{color:var(--trace-accent);filter:drop-shadow(0 0 10px color-mix(in srgb,var(--trace-accent) 34%,transparent))}.traceds-ai-bubble-header small{flex:0 0 auto;padding:4px 7px;border:1px solid color-mix(in srgb,var(--trace-accent) 16%,transparent);border-radius:999px;color:color-mix(in srgb,var(--trace-muted) 82%,var(--trace-text));background:color-mix(in srgb,var(--trace-surface-2) 38%,transparent);font-size:.62rem;font-weight:800;line-height:1;opacity:.76;text-transform:uppercase;transition:border-color .18s ease,color .18s ease,opacity .18s ease}.traceds-ai-bubble:hover .traceds-ai-bubble-header small{border-color:color-mix(in srgb,var(--trace-accent) 34%,transparent);color:var(--trace-text);opacity:.94}.traceds-ai-bubble p{position:relative;z-index:1;margin:0;color:color-mix(in srgb,var(--trace-text) 92%,var(--trace-muted));font-size:.86rem;line-height:1.5}.traceds-tutor-action-row{position:relative;z-index:1;display:flex;justify-content:flex-end;margin-top:8px}.traceds-tutor-ask-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:20px;padding:3px 7px;border:1px solid color-mix(in srgb,var(--trace-accent) 22%,transparent);border-radius:999px;color:color-mix(in srgb,var(--trace-text) 84%,var(--trace-blue));background:linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 12%,transparent),color-mix(in srgb,var(--trace-blue) 9%,transparent)),color-mix(in srgb,var(--trace-surface-2) 44%,transparent);box-shadow:0 5px 14px color-mix(in srgb,var(--trace-blue) 6%,transparent),inset 0 1px color-mix(in srgb,#ffffff 11%,transparent);font:850 .5rem / 1 var(--font-display, Inter, ui-sans-serif, system-ui, sans-serif);letter-spacing:0;text-shadow:0 0 8px color-mix(in srgb,var(--trace-accent) 16%,transparent);cursor:pointer;transition:transform .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,background .18s ease}.traceds-tutor-ask-button svg{display:block;width:9px;height:9px;color:color-mix(in srgb,var(--trace-accent) 88%,var(--trace-text));filter:drop-shadow(0 0 6px color-mix(in srgb,var(--trace-accent) 18%,transparent))}.traceds-tutor-ask-button:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--trace-accent) 38%,transparent);color:var(--trace-text);background:linear-gradient(135deg,color-mix(in srgb,var(--trace-accent) 16%,transparent),color-mix(in srgb,var(--trace-blue) 11%,transparent)),color-mix(in srgb,var(--trace-surface-2) 52%,transparent);box-shadow:0 7px 18px color-mix(in srgb,var(--trace-blue) 9%,transparent),0 0 12px color-mix(in srgb,var(--trace-accent) 8%,transparent),inset 0 1px color-mix(in srgb,#ffffff 14%,transparent)}.traceds-ai-bubble .traceds-ai-loading{position:relative;z-index:1;min-height:64px;padding:8px 4px}.traceds-tutor-chat{position:relative;z-index:1;margin-top:13px;padding-top:12px;border-top:1px solid color-mix(in srgb,var(--trace-accent) 18%,transparent);-webkit-user-select:text;user-select:text;touch-action:auto}.traceds-tutor-thread{display:grid;max-height:220px;gap:8px;padding:2px 2px 8px;overflow-y:auto;scrollbar-color:color-mix(in srgb,var(--trace-accent) 48%,transparent) color-mix(in srgb,var(--trace-surface-2) 22%,transparent);scrollbar-width:thin}.traceds-tutor-thread::-webkit-scrollbar{width:8px}.traceds-tutor-thread::-webkit-scrollbar-track{border-radius:999px;background:color-mix(in srgb,var(--trace-surface-2) 22%,transparent)}.traceds-tutor-thread::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:linear-gradient(var(--trace-accent),var(--trace-blue)) border-box;background-clip:padding-box}.traceds-tutor-placeholder,.traceds-tutor-error{margin:0;color:color-mix(in srgb,var(--trace-muted) 82%,var(--trace-text));font-size:.78rem;line-height:1.45}.traceds-tutor-error{color:color-mix(in srgb,#ffb4a4 85%,var(--trace-text))}.traceds-tutor-message{width:fit-content;max-width:92%;padding:8px 10px;border:1px solid color-mix(in srgb,var(--trace-accent) 15%,transparent);border-radius:15px;color:color-mix(in srgb,var(--trace-text) 94%,var(--trace-muted));background:color-mix(in srgb,var(--trace-surface-2) 48%,transparent);font:750 .79rem / 1.45 var(--font-body, Inter, ui-sans-serif, system-ui, sans-serif);box-shadow:inset 0 1px color-mix(in srgb,#ffffff 9%,transparent)}.traceds-tutor-message.user{justify-self:end;border-color:color-mix(in srgb,var(--trace-blue) 24%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--trace-blue) 18%,transparent),color-mix(in srgb,var(--trace-accent) 9%,transparent))}.traceds-tutor-message.assistant{justify-self:start}.traceds-tutor-thinking{display:inline-flex;align-items:center;gap:5px;width:fit-content;padding:8px 10px;border-radius:999px;background:color-mix(in srgb,var(--trace-surface-2) 52%,transparent)}.traceds-tutor-thinking span{width:6px;height:6px;border-radius:50%;background:var(--trace-accent);animation:tracedsDotPulse 1.1s ease-in-out infinite}.traceds-tutor-thinking span:nth-child(2){animation-delay:.14s;background:var(--trace-blue)}.traceds-tutor-thinking span:nth-child(3){animation-delay:.28s;background:var(--trace-accent-2)}.traceds-tutor-form{display:grid;grid-template-columns:1fr 30px;align-items:center;gap:7px;margin-top:9px}.traceds-tutor-form input{width:100%;height:34px;min-width:0;padding:0 12px;border:1px solid color-mix(in srgb,var(--trace-blue) 18%,transparent);border-radius:999px;color:var(--trace-text);background:color-mix(in srgb,var(--trace-surface) 70%,transparent);box-shadow:inset 0 1px color-mix(in srgb,#ffffff 8%,transparent);font:750 .8rem / 1 var(--font-body, Inter, ui-sans-serif, system-ui, sans-serif);outline:none}.traceds-tutor-form input:focus{border-color:color-mix(in srgb,var(--trace-accent) 52%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--trace-accent) 11%,transparent),inset 0 1px color-mix(in srgb,#ffffff 11%,transparent)}.traceds-tutor-form button{display:inline-flex;align-items:center;justify-content:center;place-self:center;width:30px;height:30px;padding:0;aspect-ratio:1;border:0;border-radius:50%;color:#061014;background:linear-gradient(135deg,var(--trace-accent),var(--trace-blue));box-shadow:0 10px 24px color-mix(in srgb,var(--trace-accent) 18%,transparent);cursor:pointer;transition:transform .18s ease,filter .18s ease,opacity .18s ease}.traceds-tutor-form button svg{display:block;width:14px;height:14px;transform:translate(.5px,-.5px)}.traceds-tutor-form button:hover:not(:disabled){transform:translateY(-1px) scale(1.03);filter:saturate(1.12)}.traceds-tutor-form button:disabled{cursor:not-allowed;opacity:.48}.traceds-empty-visual{padding:14px;color:var(--trace-muted)}.traceds-structure-stage{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;align-content:start;min-height:0;height:100%;padding:12px;overflow:auto}.traceds-viz-block{margin:0;padding:12px;box-shadow:none;overflow:hidden}.traceds-viz-block h4{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}.traceds-viz-block h4 span{color:var(--trace-muted);font-size:.78rem}.traceds-array-viz{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(38px,1fr);align-items:end;gap:8px;min-height:128px;overflow-x:auto;padding-bottom:4px}.traceds-array-cell{display:grid;justify-items:center;gap:6px;min-width:38px}.traceds-array-bar{width:100%;max-width:58px;border:1px solid color-mix(in srgb,var(--trace-text) 15%,transparent);border-radius:7px 7px 3px 3px;background:linear-gradient(180deg,var(--trace-accent),var(--trace-blue));transform-origin:bottom}.traceds-array-cell strong,.traceds-array-cell small{text-align:center}.traceds-array-cell small,.traceds-tool-card p{color:var(--trace-muted)}.traceds-linked-viz{display:flex;align-items:center;gap:4px;min-height:74px;overflow-x:auto}.traceds-linked-node-wrap{gap:4px;flex:0 0 auto}.traceds-linked-node{display:grid;width:48px;height:48px;place-items:center;border:2px solid var(--trace-accent);border-radius:8px;background:radial-gradient(circle at 30% 22%,color-mix(in srgb,#ffffff 18%,transparent),transparent 34%),var(--trace-surface-3);font-weight:900}.traceds-link-arrow{display:flex;align-items:center;width:34px;height:18px;flex:0 0 34px}.traceds-link-arrow span{width:25px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--trace-accent-2),var(--trace-accent))}.traceds-link-arrow i{width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:8px solid var(--trace-accent)}.traceds-tree-block{grid-column:1 / -1}.traceds-tree-viz{width:100%;min-height:230px;border-radius:8px;background:var(--trace-surface-2)}.traceds-tree-viz line{stroke:color-mix(in srgb,var(--trace-muted) 34%,transparent);stroke-width:3;stroke-linecap:round}.traceds-tree-viz circle{fill:var(--trace-surface);stroke:var(--trace-accent);stroke-width:3;filter:drop-shadow(0 8px 14px rgba(0,0,0,.22)) drop-shadow(0 0 10px color-mix(in srgb,var(--trace-accent) 22%,transparent))}.traceds-tree-viz text{fill:var(--trace-text);font-size:14px;font-weight:900;text-anchor:middle}.traceds-hash-viz,.traceds-locals-grid{display:grid;gap:8px}.traceds-hash-row{display:grid;grid-template-columns:minmax(80px,.7fr) minmax(0,1fr);gap:10px;align-items:center;padding:10px;border-radius:7px;background:var(--trace-surface-2)}.traceds-hash-row code,.traceds-locals-grid strong{color:var(--trace-accent)}.traceds-locals-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.traceds-locals-grid div{min-width:0;padding:9px;border:1px solid transparent;border-radius:7px;background:var(--trace-surface-2)}.traceds-locals-grid div.is-changed{border-color:color-mix(in srgb,var(--trace-accent-2) 54%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--trace-accent-2) 16%,transparent),transparent 52%),var(--trace-surface-2);animation:tracedsLocalChangePulse 1.1s ease-out}.traceds-locals-grid strong{display:block;margin-bottom:5px}.traceds-locals-grid code{color:var(--trace-muted);font-size:.82rem}@media(max-width:1120px){.traceds-workspace{grid-template-columns:1fr}.traceds-workspace{min-height:0}.traceds-editor-frame{min-height:320px}.traceds-ai-bubble,.traceds-ai-bubble.is-chatting{inset:auto 22px 22px auto}.traceds-debug-content{grid-template-rows:auto auto}}@media(max-width:740px){.traceds-lab{padding:10px}.traceds-topbar,.traceds-brand,.traceds-actions,.traceds-playback{align-items:stretch;flex-direction:column}.traceds-brand{min-width:0}.traceds-select,.traceds-actions a,.traceds-primary-button,.traceds-play-button,.traceds-header-speed-control,.traceds-playback>input[type=range]{width:100%}.traceds-locals-grid,.traceds-inspector-grid{grid-template-columns:1fr}.traceds-inspector-grid .traceds-tool-card:last-child{grid-column:auto}.traceds-editor-frame{min-height:300px;max-height:560px}.traceds-debug-content{padding:10px}.traceds-visualizer{min-height:300px}.traceds-ai-bubble{position:absolute;right:12px;bottom:14px;width:min(340px,calc(100% - 24px));margin:0;transform-origin:center}}@keyframes tracedsBorderSweep{0%,to{opacity:.36;transform:translate(-18%)}50%{opacity:.92;transform:translate(18%)}}@keyframes tracedsActiveLinePulse{0%,to{box-shadow:inset 3px 0 color-mix(in srgb,var(--trace-accent-2) 42%,transparent)}50%{box-shadow:inset 3px 0 0 var(--trace-accent-2)}}@keyframes tracedsLocalChangePulse{0%{box-shadow:0 0 color-mix(in srgb,var(--trace-accent-2) 42%,transparent)}55%{box-shadow:0 0 0 6px color-mix(in srgb,var(--trace-accent-2) 0%,transparent)}to{box-shadow:0 0 0 1px color-mix(in srgb,var(--trace-accent-2) 16%,transparent)}}@keyframes tracedsDotPulse{0%,to{opacity:.42;transform:translateY(0) scale(.82)}50%{opacity:1;transform:translateY(-4px) scale(1.08)}}@keyframes tracedsLoadingAura{0%{opacity:.24;transform:translate3d(-1px,1px,0) scale(.99);filter:blur(15px) saturate(1)}50%{opacity:.42;transform:translate3d(1px,-1px,0) scale(1.015);filter:blur(16px) saturate(1.08)}to{opacity:.24;transform:translate3d(-1px,1px,0) scale(.99);filter:blur(15px) saturate(1)}}:root{color:#f6efe4;background:#101210;font-family:var(--font-body);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--font-body: "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Sora", "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", "SFMono-Regular", "Cascadia Code", Menlo, Monaco, Consolas, monospace;--ink: #f6efe4;--muted: #c6c0b4;--soft: #8f897d;--line: rgba(246, 239, 228, .16);--panel: rgba(22, 24, 22, .82);--panel-strong: #1a1c19;--panel-glass: rgba(22, 24, 22, .72);--maize: #ffd15c;--blue: #5d8fd8;--teal: #67d4c1;--green: #99cc72;--coral: #ff8b6a;--plum: #c897ff;--shadow: 0 28px 90px rgba(0, 0, 0, .42);--soft-shadow: 0 18px 58px rgba(0, 0, 0, .28)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden;color:var(--ink);font-family:var(--font-body);font-weight:500;line-height:1.58;background:linear-gradient(112deg,rgba(255,209,92,.07),transparent 28%),linear-gradient(292deg,rgba(103,212,193,.06),transparent 34%),linear-gradient(135deg,#101210,#181715 43%,#111615)}body:before{position:fixed;inset:0;pointer-events:none;z-index:-1;content:"";opacity:.33;background-image:linear-gradient(rgba(246,239,228,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(246,239,228,.05) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 10%,#000 82%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 10%,#000 82%,transparent 100%);animation:gridDrift 34s linear infinite}body:after{position:fixed;inset:0;pointer-events:none;z-index:-1;content:"";opacity:.18;background:linear-gradient(112deg,transparent 0%,rgba(255,209,92,.08) 28%,transparent 44%),linear-gradient(292deg,transparent 0%,rgba(103,212,193,.07) 34%,transparent 52%);background-size:180% 180%;animation:ambientSweep 18s ease-in-out infinite alternate}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}.progress{position:fixed;top:0;left:0;right:0;z-index:100;height:3px;transform-origin:0%;background:linear-gradient(90deg,var(--maize),var(--teal),var(--coral))}.site-nav{position:fixed;top:18px;left:50%;z-index:50;display:flex;width:min(1120px,calc(100% - 32px));align-items:center;justify-content:space-between;padding:10px;border:1px solid rgba(246,239,228,.12);border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.04),transparent 44%),#101210b3;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:translate(-50%);box-shadow:0 14px 40px #0000002e}.brand{display:grid;width:38px;height:38px;place-items:center;border-radius:6px;color:#14150f;font-weight:900;font-family:var(--font-display);background:linear-gradient(135deg,var(--maize),#fff1b0);box-shadow:0 10px 26px #ffd15c24}.site-nav nav{display:flex;gap:4px}.site-nav nav a{padding:10px 13px;border-radius:6px;color:#f6efe4c2;font-size:.88rem;font-weight:800;transition:color .18s ease,background .18s ease}.site-nav nav a:hover{color:var(--ink);background:#f6efe414}.hero{position:relative;display:grid;min-height:92svh;align-items:center;padding:128px max(24px,calc((100vw - 1120px)/2)) 34px;overflow:hidden;isolation:isolate}.hero-art{position:absolute;inset:0;z-index:-3;width:100%;height:112%;object-fit:cover;filter:blur(3px) saturate(.93) contrast(1.02);transform:scale(1.02)}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#101210f2,#101210b8 42%,#1012102e),linear-gradient(0deg,#101210,#10121080 33%,#10121014)}.hero-inner{display:flex;align-items:center;justify-content:space-between;gap:clamp(34px,7vw,92px);width:100%;padding:clamp(42px,7vw,90px) 0 clamp(24px,4vw,46px)}.hero-content{width:min(710px,100%);flex:1 1 auto}.eyebrow,.section-label,.section-intro span{display:inline-flex;align-items:center;gap:9px;color:var(--maize);font-size:.82rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.hero h1{max-width:850px;margin:18px 0 0;font-family:var(--font-display);font-size:clamp(4rem,8.5vw,8.6rem);font-weight:800;line-height:.9;letter-spacing:0;text-wrap:balance}.hero-portrait{position:relative;display:grid;width:clamp(250px,28vw,380px);aspect-ratio:.78;flex:0 0 auto;place-items:center;padding:0;border:0;border-radius:8px;background:linear-gradient(135deg,#ffd15c24,#67d4c11a),#1012105c;box-shadow:0 28px 86px #00000061,-18px 20px 56px #67d4c114;overflow:hidden}.hero-portrait:before{position:absolute;inset:auto auto -18px -18px;z-index:-1;width:48%;height:48%;pointer-events:none;content:"";border-radius:8px;background:linear-gradient(135deg,var(--maize),var(--teal));opacity:.74}.hero-portrait:after{position:absolute;inset:0;pointer-events:none;content:"";background:linear-gradient(180deg,transparent 58%,rgba(16,18,16,.18)),linear-gradient(90deg,rgba(16,18,16,.1),transparent 34%)}.hero-portrait img{width:100%;height:100%;border-radius:8px;object-fit:cover;object-position:50% 38%;filter:saturate(1.04) contrast(1.03)}.hero p{max-width:650px;margin:30px 0 0;color:#f6efe4d6;font-size:clamp(1.14rem,2vw,1.55rem);font-weight:600;line-height:1.55}.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:9px;padding:12px 18px;border:1px solid rgba(246,239,228,.18);border-radius:8px;font-family:var(--font-display);font-weight:800;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.button:hover{transform:translateY(-2px);box-shadow:0 14px 34px #00000047}.button.primary{color:#11130f;border-color:transparent;background:linear-gradient(135deg,var(--maize),#fff2b6 64%,#f4a56f)}.button.ghost{color:var(--ink);background:#f6efe414}.button.ghost:hover{border-color:#f6efe457;background:#f6efe421}section{position:relative}.about-section,.work-section,.experience-section,.skills-section,.contact-section{padding:clamp(84px,12vw,150px) max(24px,calc((100vw - 1120px)/2))}.about-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,6vw,82px);align-items:start;background:linear-gradient(180deg,#101210,#141611 52%,#101210);overflow:hidden}.about-section:before,.work-section:before,.skills-section:before{position:absolute;inset:0;pointer-events:none;content:"";opacity:.3;background-image:linear-gradient(rgba(246,239,228,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(246,239,228,.045) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 18%,#000 82%,transparent 100%)}.about-copy{position:sticky;top:118px}.about-copy h2,.section-intro h2,.contact-panel h2{margin:15px 0 0;max-width:820px;font-family:var(--font-display);font-size:clamp(2.4rem,4.5rem,5rem);font-weight:800;line-height:1;letter-spacing:0;text-wrap:balance}.about-copy p,.section-intro p,.contact-panel p{max-width:700px;color:var(--muted);font-size:1.06rem;font-weight:560;line-height:1.76}.focus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.focus-card,.project-card,.timeline-item,.skill-column,.contact-panel{position:relative;border:1px solid rgba(246,239,228,.14);border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 26%),var(--panel-glass);box-shadow:var(--soft-shadow);overflow:hidden;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.focus-card{min-height:236px;padding:24px;isolation:isolate;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.focus-card:before{position:absolute;top:16px;right:16px;width:54px;height:1px;content:"";background:linear-gradient(90deg,transparent,var(--teal));opacity:.65}.focus-card:hover,.project-card:hover,.skill-column:hover{transform:translateY(-4px);border-color:#67d4c166;box-shadow:0 28px 82px #00000070}.focus-card:after,.project-card:after,.timeline-item:after,.skill-column:after{position:absolute;inset:0;pointer-events:none;content:"";opacity:0;background:linear-gradient(110deg,transparent 0%,rgba(246,239,228,.08) 42%,transparent 62%);transform:translate(-42%);transition:opacity .22s ease,transform .52s ease}.focus-card:hover:after,.project-card:hover:after,.timeline-item:hover:after,.skill-column:hover:after{opacity:1;transform:translate(42%)}.focus-card svg{color:var(--teal);filter:drop-shadow(0 0 16px rgba(103,212,193,.18))}.focus-card h3,.project-card h3,.timeline-item h3,.skill-column h3{margin:18px 0 10px;font-family:var(--font-display);font-weight:700;font-size:1.15rem}.focus-card p,.project-card p,.timeline-item p{color:var(--muted);line-height:1.7}.work-section{background:linear-gradient(180deg,#101210,#151815 38%,#101210),linear-gradient(135deg,transparent 0%,rgba(93,143,216,.08) 48%,transparent 82%);overflow:hidden}.section-intro{margin-bottom:clamp(34px,6vw,68px)}.work-section .section-intro{margin-bottom:clamp(24px,4vw,42px)}.project-lab-intro{--lab-accent: var(--teal);position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start;margin:clamp(28px,5vw,54px) 0 12px;padding:22px 24px;border:1px solid color-mix(in srgb,var(--lab-accent) 28%,var(--line));border-radius:8px;background:linear-gradient(135deg,color-mix(in srgb,var(--lab-accent) 9%,transparent),transparent 48%),linear-gradient(90deg,rgba(255,255,255,.035),transparent 38%),#121513c2;box-shadow:0 20px 60px #00000047,inset 0 1px #ffffff0f;overflow:hidden;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.project-lab-intro:before{position:absolute;left:24px;right:24px;bottom:0;height:1px;content:"";border-radius:999px;background:linear-gradient(90deg,transparent,var(--lab-accent),color-mix(in srgb,var(--lab-accent) 32%,transparent));box-shadow:0 0 20px color-mix(in srgb,var(--lab-accent) 18%,transparent)}.project-lab-intro:after{position:absolute;inset:0;pointer-events:none;content:"";opacity:.44;background:linear-gradient(110deg,transparent 0%,rgba(246,239,228,.045) 42%,transparent 62%),linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--lab-accent) 6%,transparent) 100%);animation:labIntroDrift 9s ease-in-out infinite}.project-lab-intro.green{--lab-accent: var(--green)}.project-lab-intro.maize{--lab-accent: var(--maize)}.project-lab-intro.no-icon{grid-template-columns:1fr;padding-left:24px}.project-lab-icon{position:relative;z-index:1;display:grid;width:46px;height:46px;place-items:center;border:1px solid color-mix(in srgb,var(--lab-accent) 34%,transparent);border-radius:8px;color:#101210;background:linear-gradient(135deg,rgba(255,255,255,.24),transparent 44%),linear-gradient(135deg,var(--lab-accent),color-mix(in srgb,var(--lab-accent) 58%,var(--blue)));box-shadow:0 14px 34px color-mix(in srgb,var(--lab-accent) 22%,transparent)}.project-lab-intro>div:last-child{position:relative;z-index:1}.project-lab-intro span{display:inline-flex;color:var(--lab-accent);font-size:.76rem;font-weight:900;line-height:1;text-transform:uppercase}.project-lab-intro h3{margin:10px 0 8px;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.6rem);font-weight:700;line-height:1}.project-lab-intro p{max-width:900px;margin:0;color:color-mix(in srgb,var(--ink) 82%,var(--muted));font-size:clamp(1.02rem,1.4vw,1.13rem);font-weight:680;line-height:1.68;text-shadow:0 0 24px color-mix(in srgb,var(--lab-accent) 8%,transparent)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:clamp(28px,5vw,56px)}.project-card{position:relative;min-height:430px;padding:26px;overflow:hidden;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.project-card:before{position:absolute;top:0;left:0;width:100%;height:4px;content:"";background:var(--card-accent, var(--maize))}.project-card.teal{--card-accent: var(--teal)}.project-card.green{--card-accent: var(--green)}.project-card.maize{--card-accent: var(--maize)}.project-card.coral{--card-accent: var(--coral)}.project-top{display:flex;align-items:center;justify-content:space-between;gap:18px;color:var(--card-accent, var(--maize))}.project-top span,.timeline-item span{color:var(--soft);font-size:.85rem;font-weight:700}.project-kicker{margin-top:28px;color:var(--card-accent, var(--maize))!important;font-size:.83rem;font-weight:900;text-transform:uppercase}.project-card h3{margin-top:10px;font-size:clamp(1.75rem,2.35rem,2.55rem);line-height:1}.stack-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.stack-list span,.skill-column span{display:inline-flex;align-items:center;min-height:32px;padding:7px 10px;border:1px solid rgba(246,239,228,.14);border-radius:999px;color:#f6efe4db;background:#f6efe40f;font-size:.82rem;font-weight:800}.project-links{position:absolute;right:24px;bottom:24px;display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:14px}.project-links a{display:inline-flex;align-items:center;gap:6px;color:var(--card-accent, var(--maize));font-weight:900}.experience-section{background:#101210}.timeline{position:relative;display:grid;gap:16px}.timeline:before{position:absolute;top:12px;bottom:12px;left:28px;width:1px;content:"";background:linear-gradient(180deg,var(--maize),var(--teal),transparent)}.timeline-item{position:relative;display:grid;grid-template-columns:56px 1fr;gap:18px;padding:24px;background:#1a1c19db;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.timeline-item:hover{transform:translateY(-3px);border-color:#67d4c15c;box-shadow:0 30px 90px #0000006b}.timeline-icon{position:relative;z-index:1;display:grid;width:56px;height:56px;place-items:center;border:1px solid rgba(255,209,92,.36);border-radius:8px;color:var(--maize);background:#171914}.timeline-item h3{margin:6px 0 3px;font-size:1.35rem}.timeline-item strong{color:var(--teal)}.skills-section{background:linear-gradient(180deg,#101210,#181715),radial-gradient(circle at 10% 50%,rgba(255,139,106,.12),transparent 28rem)}.skill-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.skill-column{padding:24px;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.skill-column h3{margin-top:0;color:var(--maize)}.skill-column div{display:flex;flex-wrap:wrap;gap:8px}.contact-section{min-height:76svh;display:grid;place-items:center;background:#101210}.contact-panel{width:min(920px,100%);padding:clamp(28px,6vw,58px);overflow:hidden;background:linear-gradient(135deg,#ffd15c1f,#67d4c112),var(--panel-strong)}.contact-panel h2{max-width:830px}.location{display:inline-flex;align-items:center;gap:8px;margin-top:28px;color:var(--muted);font-weight:800}@media(max-width:840px){.site-nav{top:10px;width:min(100% - 20px,560px)}.site-nav nav a{padding:10px 8px;font-size:.78rem}.hero{min-height:94svh;padding-top:104px}.hero-inner{align-items:flex-start;flex-direction:column;gap:30px}.hero-portrait{width:min(330px,78vw);align-self:center}.hero-shade{background:linear-gradient(90deg,#101210f5,#101210b3),linear-gradient(0deg,#101210,#10121059)}.about-section,.project-grid,.skill-board{grid-template-columns:1fr}.about-copy{position:relative;top:auto}.focus-grid{grid-template-columns:1fr}.project-lab-intro{grid-template-columns:1fr;gap:13px}.project-card{min-height:390px}}@media(max-width:560px){.site-nav nav{gap:0}.site-nav nav a{padding-inline:7px}.brand{width:34px;height:34px}.hero h1{font-size:clamp(3.8rem,5.25rem,5.7rem)}.hero-actions,.contact-actions{align-items:stretch;flex-direction:column}.button{width:100%}.about-section,.work-section,.experience-section,.skills-section,.contact-section{padding-inline:18px}.timeline:before{left:20px}.timeline-item{grid-template-columns:42px 1fr;gap:14px;padding:18px}.timeline-icon{width:42px;height:42px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes gridDrift{to{background-position:72px 72px,72px 72px}}@keyframes ambientSweep{0%{background-position:0% 45%}to{background-position:100% 55%}}@keyframes labIntroDrift{0%,to{opacity:.28;transform:translate(-18%)}50%{opacity:.56;transform:translate(18%)}}
