@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;font-display:block;src:url(/fonts/material-symbols-outlined.woff2) format("woff2")}:root{--background: #131313;--surface: #131313;--surface-dim: #131313;--surface-bright: #393939;--surface-container-lowest: #0e0e0e;--surface-container-low: #1c1b1b;--surface-container: #20201f;--surface-container-high: #2a2a2a;--surface-container-highest: #353535;--on-background: #e5e2e1;--on-surface: #e5e2e1;--on-surface-variant: #c4c7c7;--outline: #8e9192;--outline-variant: #444748;--primary: #c9c6c5;--secondary: #c0c1ff;--tertiary: #c1c7cf;--error: #ffb4ab;--glow-cyan: #00ffcc;--glow-violet: #6366f1;--glow-amber: #fbbf24;--glow-green: #10b981;--terminal-green: #00ff00;--space-margin-x-mobile: 24px;--space-element-gap: 24px;--space-gutter: 32px;--space-margin-x: 64px;--container-max: 1440px;--radius: .125rem;--radius-lg: .25rem;--radius-xl: .5rem;--radius-full: .75rem;--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;font-family:var(--font-sans);color:var(--on-surface);background:var(--background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#app{width:100%;min-width:320px;margin:0}html{min-height:100%}body{min-height:100%;overflow:hidden;background:var(--background)}#app{min-height:100%}.app-root{min-height:100vh;min-height:100dvh}a{color:inherit}.shader-background{position:fixed;z-index:0;inset:0;display:block;width:100vw;height:100vh;pointer-events:none}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-variation-settings:"opsz" 20,"wght" 400,"FILL" 0;font-size:20px;line-height:1;white-space:nowrap;letter-spacing:normal;text-transform:none;word-wrap:normal;-webkit-user-select:none;user-select:none;display:inline-block}.ide-topbar-title,.ide-tree,.ide-tab,.ide-breadcrumbs,.ide-statusbar,.terminal-card,.tag-list,.tag-bar-label,.tag-bar-count,.ring-legend,.progress-ring-value,.dash-section-eyebrow,.skill-row-label,.project-card-topline,.metrics-card-value,.metrics-card-header h3,.ring-card h3,.pillar-flow h3,.skill-panel h3,.dash-stat-label,.dash-stat-value,.dash-stat-note,.contact-list{font-family:var(--font-mono)}.ide-shell{position:relative;z-index:1;display:grid;grid-template-columns:50px 260px 1fr 280px;grid-template-rows:44px 1fr 30px;height:100vh;height:100dvh;width:100vw;background:transparent}.ide-topbar{display:flex;grid-row:1;grid-column:1 / -1;align-items:center;justify-content:space-between;border-bottom:1px solid color-mix(in srgb,var(--outline) 45%,transparent);background:color-mix(in srgb,var(--surface-container-low) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:0 1rem}.ide-topbar-dots{display:flex;flex:1;gap:.5rem}.ide-topbar-dots span{width:.7rem;height:.7rem;border-radius:50%}.ide-topbar-dots span:nth-child(1){background:var(--error);box-shadow:0 0 8px color-mix(in srgb,var(--error) 60%,transparent)}.ide-topbar-dots span:nth-child(2){background:var(--glow-amber);box-shadow:0 0 8px color-mix(in srgb,var(--glow-amber) 60%,transparent)}.ide-topbar-dots span:nth-child(3){background:var(--glow-green);box-shadow:0 0 8px color-mix(in srgb,var(--glow-green) 60%,transparent)}.ide-topbar-title{flex:2;overflow:hidden;color:var(--on-surface-variant);font-size:.7rem;letter-spacing:.2em;text-align:center;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.ide-topbar-menu{display:none;flex:1;justify-content:flex-end}.ide-menu-button{display:grid;place-items:center;border:1px solid transparent;background:none;color:var(--on-surface-variant);cursor:pointer}.ide-menu-button:hover,.ide-menu-button:focus-visible{border-color:color-mix(in srgb,var(--glow-cyan) 50%,transparent);color:var(--glow-cyan);outline:none}.ide-rail{display:flex;grid-row:2;grid-column:1;flex-direction:column;align-items:center;gap:1.5rem;border-right:1px solid color-mix(in srgb,var(--outline) 45%,transparent);background:color-mix(in srgb,var(--surface-container) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:1rem 0}.ide-rail-icon{display:grid;place-items:center;color:var(--on-surface-variant);transition:color .18s ease,filter .18s ease}.ide-rail-icon.is-active{color:var(--glow-cyan);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--glow-cyan) 65%,transparent))}.ide-rail-icon:last-child{margin-top:auto}.ide-explorer{grid-row:2;grid-column:2;overflow:hidden;border-right:1px solid color-mix(in srgb,var(--outline) 45%,transparent);background:color-mix(in srgb,var(--surface-container-lowest) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column}.ide-explorer-header{border-bottom:1px solid color-mix(in srgb,var(--outline) 45%,transparent);padding:.75rem 1rem;color:var(--glow-cyan);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase}.ide-tree{overflow-y:auto;flex:1;padding:.5rem;font-size:.8rem}.ide-tree-folder{display:flex;align-items:center;gap:.35rem;padding:.35rem .5rem;color:var(--on-surface)}.ide-tree-folder .material-symbols-outlined{font-size:16px;color:var(--tertiary)}.ide-tree-group{margin:0 0 .25rem .65rem;padding-left:.65rem;border-left:1px solid color-mix(in srgb,var(--outline) 45%,transparent);list-style:none}.ide-tree-file{display:flex;align-items:center;gap:.5rem;width:100%;border:1px solid transparent;border-radius:var(--radius);background:none;padding:.4rem .55rem;color:var(--on-surface-variant);font:inherit;font-size:.78rem;text-align:left;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease}.ide-tree-file:hover,.ide-tree-file:focus-visible{background:var(--surface-container-low);color:var(--on-surface);outline:none}.ide-tree-file.is-active{border-color:var(--file-color, var(--glow-cyan));background:var(--surface-container-low);box-shadow:0 0 10px color-mix(in srgb,var(--file-color, var(--glow-cyan)) 12%,transparent);color:var(--on-surface)}.ide-tree-file .material-symbols-outlined{font-size:16px;color:var(--file-color, var(--glow-cyan))}.ide-tree-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ide-main{position:relative;grid-row:2;grid-column:3;display:flex;flex-direction:column;overflow:hidden;background:var(--background)}.ide-main:before{position:absolute;z-index:0;inset:0;background:radial-gradient(circle at 50% 20%,color-mix(in srgb,var(--glow-cyan) 8%,transparent),transparent 60%);content:"";pointer-events:none}.ide-tabbar{position:relative;z-index:1;display:flex;overflow-x:auto;border-bottom:1px solid color-mix(in srgb,var(--outline) 45%,transparent);background:var(--surface-container-lowest);box-shadow:0 4px 10px #0003}.ide-tab{display:flex;flex:0 0 auto;align-items:center;gap:.5rem;border:0;border-right:1px solid color-mix(in srgb,var(--outline) 45%,transparent);border-top:2px solid transparent;background:none;padding:.65rem 1rem;color:var(--on-surface-variant);font:inherit;font-size:.78rem;cursor:pointer;transition:color .16s ease,border-color .16s ease,background .16s ease}.ide-tab .material-symbols-outlined{font-size:16px;color:var(--tab-color, var(--glow-cyan))}.ide-tab.is-active{border-top-color:var(--tab-color, var(--glow-cyan));background:var(--background);color:var(--tab-color, var(--glow-cyan));text-shadow:0 0 5px color-mix(in srgb,var(--tab-color, var(--glow-cyan)) 35%,transparent)}.ide-breadcrumbs{position:relative;z-index:1;display:flex;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--outline) 25%,transparent);background:color-mix(in srgb,var(--background) 80%,transparent);padding:.5rem 1rem;color:var(--on-surface-variant);font-size:.7rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ide-breadcrumbs .material-symbols-outlined{margin:0 .25rem;color:color-mix(in srgb,var(--glow-cyan) 50%,transparent);font-size:14px}.ide-breadcrumbs .is-current{color:var(--glow-cyan);text-shadow:0 0 2px color-mix(in srgb,var(--glow-cyan) 50%,transparent)}.editor-content{position:relative;z-index:1;overflow-y:auto;flex:1;background-image:linear-gradient(to right,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.05) 1px,transparent 1px);background-size:40px 40px;padding:2rem clamp(1rem,4vw,2.5rem) 5rem}.editor-inner{width:min(1200px,100%);margin:0 auto}.ide-statusbar{display:flex;grid-row:3;grid-column:1 / -1;align-items:center;justify-content:space-between;border-top:1px solid color-mix(in srgb,var(--outline) 45%,transparent);background:color-mix(in srgb,var(--surface-container-high) 90%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:0 1rem;color:var(--on-surface-variant);font-size:.68rem}.ide-statusbar-item--pulse{font-weight:700;animation:statusPulse 1.8s ease-in-out infinite}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.55}}.ide-statusbar-group{display:flex;align-items:center;gap:1rem;overflow:hidden}.ide-statusbar-item{display:flex;align-items:center;gap:.3rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ide-statusbar-item .material-symbols-outlined{font-size:14px}.core-viz{grid-row:2;grid-column:4;display:flex;flex-direction:column;overflow:hidden;border-left:1px solid color-mix(in srgb,var(--outline) 45%,transparent);background:color-mix(in srgb,var(--surface-container-lowest) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.core-viz-header{display:flex;align-items:center;gap:.5rem;border-bottom:1px solid color-mix(in srgb,var(--outline) 45%,transparent);padding:.75rem 1rem;color:var(--glow-violet);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase}.core-viz-header .material-symbols-outlined{font-size:16px}.core-viz-stage{position:relative;display:flex;flex:1;align-items:center;justify-content:center;min-height:12rem;perspective:700px}.core-viz-cube{position:relative;width:84px;height:140px;transform-style:preserve-3d;animation:coreSpin 14s linear infinite}@keyframes coreSpin{0%{transform:rotateY(0) rotateX(6deg)}to{transform:rotateY(360deg) rotateX(6deg)}}.core-viz-face{position:absolute;inset:0;border:1px solid color-mix(in srgb,var(--glow-violet) 75%,transparent);background:color-mix(in srgb,var(--glow-violet) 4%,transparent);box-shadow:inset 0 0 16px color-mix(in srgb,var(--glow-violet) 20%,transparent)}.core-viz-face--front{transform:translateZ(42px)}.core-viz-face--back{transform:translateZ(-42px) rotateY(180deg)}.core-viz-face--left{transform:rotateY(-90deg) translateZ(42px)}.core-viz-face--right{transform:rotateY(90deg) translateZ(42px)}.core-viz-particle{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--glow-cyan);box-shadow:0 0 6px var(--glow-cyan);animation:coreParticlePulse 3.2s ease-in-out infinite}@keyframes coreParticlePulse{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.3)}}.core-viz-stats{border-top:1px solid color-mix(in srgb,var(--outline) 45%,transparent);padding:1rem;font-family:var(--font-mono);font-size:.68rem}.core-viz-stats-row{display:flex;justify-content:space-between;margin-bottom:.55rem;color:var(--on-surface-variant)}.core-viz-stats-row:last-child{margin-bottom:0}.core-viz-stats-row span:last-child{font-weight:700}.glass-card{border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-xl);background:color-mix(in srgb,var(--surface-container) 60%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 32px #0000004d;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.glass-card:hover{border-color:var(--glow-cyan);box-shadow:0 0 20px color-mix(in srgb,var(--glow-cyan) 20%,transparent),inset 0 0 10px color-mix(in srgb,var(--glow-cyan) 10%,transparent);transform:translateY(-4px)}.dash-header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:2.5rem}.dash-name{margin:0;overflow:hidden;color:var(--on-surface);font-size:clamp(2rem,6vw,4rem);font-weight:700;letter-spacing:-.02em;line-height:1.1}.dash-name .char{display:inline-block}.dash-name-dot{color:var(--glow-cyan);text-shadow:0 0 8px var(--glow-cyan)}.dash-role{margin:.5rem 0 0;color:var(--tertiary);font-size:.85rem;letter-spacing:.2em;text-transform:uppercase}.dash-stat-card{display:flex;gap:1.5rem;align-items:center;padding:1rem}.dash-stat{display:flex;flex-direction:column;gap:.2rem}.dash-stat+.dash-stat{padding-left:1.5rem;border-left:1px solid color-mix(in srgb,var(--outline) 60%,transparent)}.dash-stat-label{color:var(--on-surface-variant);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}.dash-stat-value{color:var(--on-surface);font-size:1.05rem;font-weight:700}.dash-stat-note{color:var(--on-surface-variant);font-size:.62rem}.dash-section{scroll-margin-top:1rem;margin-bottom:4.5rem}.dash-section-eyebrow{display:flex;align-items:center;margin:0 0 .6rem;color:var(--on-surface-variant);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase}.dash-section-eyebrow:after{display:inline-block;width:.5em;height:1em;margin-left:.4em;background:var(--section-color, var(--glow-cyan));content:"";animation:cursorBlink 1.1s steps(1) infinite}.dash-section-title{position:relative;margin:0 0 .35em;padding-bottom:.4em;color:var(--on-surface);font-size:clamp(1.6rem,4vw,2.6rem);font-weight:700;letter-spacing:-.01em}.dash-section-title:after{position:absolute;bottom:0;left:-18px;width:min(8rem,40%);height:2px;background:linear-gradient(90deg,var(--section-color, var(--glow-cyan)),transparent);box-shadow:0 0 10px color-mix(in srgb,var(--section-color, var(--glow-cyan)) 70%,transparent);content:""}.dash-section-heading-block{margin-bottom:1.75rem}.ring-card-standalone{max-width:26rem;margin:0 auto}.dash-section-lede{max-width:44rem;margin:.75rem 0 0;color:var(--on-surface-variant);font-size:.92rem;line-height:1.7}@keyframes cursorBlink{50%{opacity:0}}.about-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr);gap:2rem;align-items:start}.about-copy{display:grid;gap:1rem;color:var(--on-surface-variant);font-size:.92rem;line-height:1.8}.pillar-flow{padding:1.5rem}.pillar-flow h3{margin:0 0 1rem;color:var(--on-surface-variant);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase}.pillar-flow-svg{display:block;width:100%;height:auto}.pillar-flow-svg text{fill:var(--on-surface);font-family:inherit;font-size:8px}.dash-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.ring-card{display:flex;flex-direction:column;align-items:center;padding:1.5rem}.ring-card h3{align-self:flex-start;margin:0 0 1.5rem;color:var(--on-surface-variant);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase}.ring-card-interactive{appearance:none;width:100%;font:inherit;color:inherit;cursor:pointer}.ring-card-interactive:hover,.ring-card-interactive:focus-visible{border-color:var(--glow-cyan);outline:none}.ring-card-hint{display:flex;align-items:center;gap:.3rem;margin-top:1.25rem;color:var(--on-surface-variant);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}.ring-card-hint .material-symbols-outlined{font-size:16px;transition:transform .22s ease}.ring-card-interactive[aria-expanded=true] .ring-card-hint .material-symbols-outlined{transform:rotate(180deg)}.ring-stack{position:relative;display:flex;align-items:center;justify-content:center;width:220px;height:220px}.ring-stack-ring{position:absolute;top:50%;left:50%;border-radius:50%;background:conic-gradient(var(--ring-color, var(--glow-cyan)) var(--percent, 0%),transparent 0);transform:translate(-50%,-50%);transform-origin:center;animation:ring-stack-spin var(--ring-spin-duration, 14s) linear infinite;will-change:transform}@keyframes ring-stack-spin{to{transform:translate(-50%,-50%) rotate(1turn)}}.ring-stack-ring:before{position:absolute;inset:9px;border-radius:50%;background:var(--surface-container-highest);content:""}.ring-stack-ring--0{--ring-spin-duration: 18s;width:220px;height:220px}.ring-stack-ring--1{--ring-spin-duration: 14s;width:162px;height:162px;animation-direction:reverse}.ring-stack-ring--2{--ring-spin-duration: 10s;width:104px;height:104px}.progress-ring-value{position:relative;z-index:1;text-align:center}.progress-ring-value strong{display:block;color:var(--on-surface);font-size:1.4rem}.progress-ring-value span{color:var(--on-surface-variant);font-size:.52rem;letter-spacing:.08em;text-transform:uppercase}.ring-legend{display:grid;grid-auto-columns:max-content;grid-auto-flow:column;justify-content:center;gap:clamp(.75rem,4vw,1.25rem);margin-top:1.5rem;padding:0}.ring-legend-row{display:flex;align-items:center;gap:.5rem;font-size:.75rem}.ring-legend-label{display:flex;align-items:center;gap:.5rem;color:var(--on-surface-variant)}.ring-legend-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--dot-color, var(--glow-cyan))}.metrics-card{display:flex;flex-direction:column;grid-column:span 2;padding:1.5rem}.metrics-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;width:100%;border:0;background:none;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}.metrics-card-header:focus-visible{outline:2px solid var(--glow-cyan);outline-offset:.5rem}.metrics-card-header h3{margin:0 0 .3rem;color:var(--on-surface-variant);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase}.metrics-card-value{display:flex;align-items:baseline;gap:.5rem;color:var(--on-surface);font-size:1.5rem;font-weight:700}.metrics-card-value small{color:var(--on-surface-variant);font-size:.68rem;font-weight:400}.metrics-card-meta{margin:.35rem 0 0;color:var(--on-surface-variant);font-size:.68rem}.metrics-card-icons{display:flex;flex:0 0 auto;align-items:center;gap:.35rem}.metrics-card-icon,.metrics-card-chevron{display:grid;place-items:center;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--glow-cyan) 10%,transparent);padding:.5rem;color:var(--glow-cyan)}.metrics-card-chevron{transition:transform .18s ease}.metrics-card--expanded .metrics-card-chevron{transform:rotate(180deg)}.tag-bars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.25rem;margin:0;padding:1.5rem 0 0;list-style:none;will-change:height,opacity}.tag-bar{display:flex;flex-direction:column;gap:.35rem;min-width:0}.tag-bar-heading{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.tag-bar-track{display:block;overflow:hidden;width:100%;height:.45rem;border-radius:999px;background:color-mix(in srgb,var(--outline) 30%,transparent)}.tag-bar-fill{display:block;height:100%;border-radius:inherit;background:var(--glow-cyan);box-shadow:0 0 10px color-mix(in srgb,var(--glow-cyan) 35%,transparent)}.tag-bar-count{flex:0 0 auto;color:var(--on-surface-variant);font-size:.68rem;font-weight:700}.tag-bar-label{overflow:hidden;color:var(--on-surface);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.skills-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding-top:1.5rem;will-change:height,opacity}.skill-panel{padding:1.25rem}.skill-panel h3{margin:0 0 1rem;color:var(--on-surface);font-size:.85rem;letter-spacing:.15em;text-transform:uppercase}.skill-list{display:grid;gap:.85rem}.skill-row-label{margin-bottom:.35rem;color:var(--on-surface-variant);font-size:.78rem}.skill-meter{height:.3rem;overflow:hidden;border-radius:var(--radius-full);background:var(--surface-container-highest)}.skill-meter span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--glow-cyan),var(--glow-green));box-shadow:0 0 8px color-mix(in srgb,var(--glow-cyan) 50%,transparent)}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.project-card{display:flex;flex-direction:column;padding:1.25rem;text-decoration:none}.project-card.is-focused{border-color:var(--glow-amber);box-shadow:0 0 24px color-mix(in srgb,var(--glow-amber) 45%,transparent)}.project-card-topline{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;color:var(--glow-amber);font-size:.68rem;letter-spacing:.15em;text-transform:uppercase}.project-card-topline__link{display:grid;place-items:center;border-radius:var(--radius);padding:.25rem;color:var(--on-surface-variant);transition:color .16s ease}a.project-card:hover .project-card-topline__link,a.project-card:focus-visible .project-card-topline__link{color:var(--glow-amber)}.project-card-topline__link--static{cursor:default}.project-card h3{margin:0;color:var(--on-surface);font-size:1.05rem}.project-card p{margin:.6rem 0 1rem;color:var(--on-surface-variant);font-size:.82rem;line-height:1.65}.tag-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto}.tag-list span{border:1px solid color-mix(in srgb,var(--outline) 70%,transparent);border-radius:var(--radius);background:#ffffff08;padding:.25rem .5rem;color:var(--on-surface-variant);font-size:.64rem}.terminal-card{padding:1.5rem;font-size:.8rem;position:relative;overflow:hidden}.terminal-card:before{position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--glow-cyan),var(--glow-violet),var(--glow-amber));content:""}.terminal-card h3{display:flex;justify-content:space-between;margin:0 0 1rem;color:var(--on-surface-variant);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase}.terminal-lines{margin:0 0 1.25rem;color:var(--on-surface-variant);line-height:2}.terminal-prompt{color:var(--glow-cyan)}.terminal-ok{color:var(--glow-green)}.boot-sequence{margin-bottom:1.75rem;padding:1.25rem 1.5rem;font-family:var(--font-mono);font-size:.78rem;line-height:1.7;min-height:2.6rem}.boot-line{color:var(--on-surface-variant);white-space:pre-wrap}.boot-line--highlight{color:var(--glow-cyan);font-weight:700;text-shadow:0 0 8px color-mix(in srgb,var(--glow-cyan) 45%,transparent)}.boot-line--muted{color:color-mix(in srgb,var(--on-surface-variant) 60%,transparent)}.boot-line-suffix{margin-left:.5rem;color:var(--glow-green);font-weight:700}.boot-prompt{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;color:var(--glow-green)}.boot-cursor{display:inline-block;width:.5rem;height:1rem;background:var(--glow-cyan);animation:cursorBlink 1s step-end infinite}.contact-list{display:grid;gap:.6rem}.contact-list__item{display:flex;align-items:center;gap:.75rem;border:1px solid color-mix(in srgb,var(--outline) 70%,transparent);border-radius:var(--radius-lg);background:#ffffff08;padding:.65rem .85rem;text-decoration:none;transition:border-color .16s ease,background .16s ease,transform .16s ease}a.contact-list__item:hover,a.contact-list__item:focus-visible{border-color:var(--glow-green);background:color-mix(in srgb,var(--glow-green) 8%,transparent);outline:none;transform:translate(.25rem)}.contact-list__item--static{cursor:default}.contact-icon{display:grid;place-items:center;color:var(--glow-green)}.contact-list small,.contact-list strong{display:block}.contact-list small{color:var(--on-surface-variant);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}.contact-list strong{overflow-wrap:anywhere;color:var(--on-surface);font-size:.82rem;font-weight:400}.terminal-cta{display:block;margin-top:1.25rem;border:1px solid color-mix(in srgb,var(--glow-cyan) 40%,transparent);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--glow-cyan) 8%,transparent);padding:.6rem;color:var(--glow-cyan);text-align:center;text-decoration:none;transition:background .16s ease}.terminal-cta:hover,.terminal-cta:focus-visible{background:color-mix(in srgb,var(--glow-cyan) 18%,transparent);outline:none}.secondary-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media(min-width:761px){.ide-shell.is-explorer-collapsed{grid-template-columns:50px 0 1fr}}@media(max-width:1200px){.ide-shell{grid-template-columns:50px 260px 1fr}.core-viz{display:none}}@media(max-width:900px){.dash-grid,.skills-panels,.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-card{grid-column:span 2}.about-grid{grid-template-columns:1fr}}@media(max-width:760px){.ide-shell{grid-template-columns:0 0 1fr}.ide-rail{display:none}.ide-explorer{position:fixed;z-index:30;top:44px;bottom:30px;left:-8px;width:min(80vw,300px);transform:translate(-100%);transition:transform .22s ease}.ide-explorer.is-open{transform:translate(0);box-shadow:1rem 0 3rem #00000080}.ide-topbar-menu{display:flex}.dash-grid,.skills-panels,.projects-grid{grid-template-columns:1fr}.metrics-card{grid-column:span 1}.dash-stat-card{flex-wrap:wrap;gap:1rem}.dash-stat+.dash-stat{padding-left:1rem}.ide-statusbar-group:first-child .ide-statusbar-item:last-child,.ide-statusbar-group:last-child .ide-statusbar-item:nth-child(2),.ide-statusbar-group:last-child .ide-statusbar-item:last-child{display:none}}.homepage-root{--home-bg-0: #0b0908;--home-bg-1: #17120e;--home-bg-2: #1f1712;--home-ink: #f3e8db;--home-ink-dim: #a99280;--home-ink-faint: #6e5c4e;--home-accent: #e08a54;--home-accent-hot: #f7c08a;--home-edge: 205, 168, 138;--home-rule: rgba(230, 190, 155, .14);--home-safe-top: env(safe-area-inset-top, 0px);--home-safe-right: env(safe-area-inset-right, 0px);--home-safe-bottom: env(safe-area-inset-bottom, 0px);--home-safe-left: env(safe-area-inset-left, 0px);position:fixed;inset:0;overflow:hidden;font-family:ui-monospace,SF Mono,Cascadia Code,Roboto Mono,Menlo,Consolas,monospace;color:var(--home-ink)}@font-face{font-family:"Homepage Serif Fallback";src:local("Iowan Old Style"),local("Palatino Linotype"),local("Book Antiqua"),local("Georgia")}.homepage-root--booting .homepage-hud,.homepage-root--booting .homepage-portrait,.homepage-root--booting .homepage-section-nav,.homepage-root--booting .homepage-stage{opacity:0;pointer-events:none}.homepage-boot-overlay{--surface-container-lowest: #0b0908;--surface-container-low: #15100d;--surface-container: #1c1510;--surface-container-high: #2a1d16;--on-surface: var(--home-ink);--on-surface-variant: var(--home-ink-dim);--outline: #806956;--glow-cyan: #e08a54;--glow-violet: #cda88a;--glow-amber: #f7c08a;--glow-green: #d9ad7b;position:fixed;z-index:4;inset:0;display:flex;align-items:center;justify-content:center;padding:clamp(20px,4vw,56px)}.homepage-boot-overlay .boot-sequence{width:min(90vw,640px);margin-bottom:0;box-shadow:0 20px 60px #0b090859}.homepage-stage{position:fixed;inset:0;z-index:0;display:block;width:100%;height:100%;cursor:grab;touch-action:none;background:radial-gradient(ellipse 80% 70% at 50% 46%,var(--home-bg-2),var(--home-bg-1) 55%,var(--home-bg-0) 100%)}.homepage-stage.dragging{cursor:grabbing}.homepage-stage.is-section-node-hovered{cursor:pointer}.homepage-portrait{--homepage-portrait-opacity: 30%;position:fixed;right:auto;bottom:clamp(88px,10vh,112px);left:0;z-index:1;width:auto;height:min(54vh,540px);max-width:min(24vw,420px);object-fit:contain;object-position:left bottom;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--homepage-portrait-opacity);filter:saturate(.78) contrast(.94) brightness(.88) drop-shadow(18px 24px 40px rgba(11,9,8,.18))}.homepage-hud{position:fixed;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:space-between;padding:calc(clamp(20px,4vw,56px) + var(--home-safe-top)) calc(clamp(20px,4vw,56px) + var(--home-safe-right)) calc(clamp(20px,4vw,56px) + var(--home-safe-bottom)) calc(clamp(20px,4vw,56px) + var(--home-safe-left));pointer-events:none}.homepage-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.homepage-eyebrow{margin:0 0 10px;color:var(--home-ink-faint);font-size:11px;letter-spacing:.22em;text-transform:uppercase}.homepage-eyebrow:before{margin-right:8px;color:var(--home-accent);font-size:8px;vertical-align:middle;content:"●";animation:homepageBlink 2.6s ease-in-out infinite}@keyframes homepageBlink{0%,to{opacity:1}50%{opacity:.25}}.homepage-title{max-width:14ch;margin:0;color:var(--home-ink);font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,"Homepage Serif Fallback",serif;font-size:clamp(28px,5vw,52px);font-weight:400;line-height:1.05;letter-spacing:-.01em;text-wrap:balance}.homepage-title em{color:var(--home-accent-hot);font-style:italic}.homepage-caption{max-width:34ch;margin:14px 0 0;color:var(--home-ink-dim);font-size:13px;line-height:1.6}.homepage-stats{display:flex;gap:clamp(18px,3vw,40px);text-align:right;text-shadow:0 2px 14px var(--home-bg-0)}.homepage-stat{display:flex;flex-direction:column;gap:4px}.homepage-stat-value{color:var(--home-accent-hot);font-size:clamp(18px,2.4vw,26px);font-variant-numeric:tabular-nums}.homepage-stat-label{color:var(--home-ink-faint);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.homepage-drag-hint{position:absolute;top:clamp(8px,1.5vw,18px);left:50%;max-width:min(90vw,320px);margin:0;color:var(--home-ink-faint);font-size:11px;font-weight:700;letter-spacing:.04em;text-align:center;transform:translate(-50%)}.homepage-foot{display:flex;align-items:flex-end;justify-content:flex-end;border-top:1px solid var(--home-rule);padding-top:12px;color:var(--home-ink-faint);font-size:11px}.homepage-foot span{letter-spacing:.04em}.homepage-section-nav{position:fixed;top:50%;right:clamp(20px,4vw,56px);z-index:6;width:clamp(190px,18vw,250px);border-top:1px solid var(--home-rule);border-bottom:1px solid var(--home-rule);background:color-mix(in srgb,var(--home-bg-0) 46%,transparent);box-shadow:0 20px 60px #0b09082e;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);transform:translateY(-50%)}.homepage-section-nav__link[aria-current=page]{color:var(--home-accent-hot);background:color-mix(in srgb,var(--home-accent) 12%,transparent);box-shadow:inset 2px 0 var(--home-accent)}.homepage-root--node .homepage-section-nav__link[aria-current=page]{animation:homepage-active-link-pulse .7s ease-in-out infinite alternate}@keyframes homepage-active-link-pulse{to{background:color-mix(in srgb,var(--home-accent) 22%,transparent);text-shadow:0 0 10px color-mix(in srgb,var(--home-accent-hot) 65%,transparent)}}.homepage-transition-status{position:fixed;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.homepage-root--section .homepage-hud,.homepage-root--section .homepage-portrait,.homepage-root--closing .homepage-hud,.homepage-root--closing .homepage-portrait{display:none}.homepage-root--section .homepage-section-nav,.homepage-root--closing .homepage-section-nav{top:96px;right:24px;z-index:6;width:220px;transform:none;transition:top .42s ease,right .42s ease,width .42s ease,transform .42s ease}.homepage-section-panel{--surface-container-lowest: #0b0908;--surface-container-low: #15100d;--surface-container: #1c1510;--surface-container-high: #2a1d16;--on-surface: var(--home-ink);--on-surface-variant: var(--home-ink-dim);--outline: #806956;--glow-cyan: #e08a54;--glow-violet: #cda88a;--glow-amber: #f7c08a;--glow-green: #d9ad7b;position:fixed;z-index:5;top:0;right:0;bottom:0;width:min(68vw,980px);border-left:1px solid var(--home-rule);background:linear-gradient(rgba(230,190,155,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(230,190,155,.025) 1px,transparent 1px),color-mix(in srgb,var(--home-bg-0) 94%,transparent);background-size:36px 36px;box-shadow:-30px 0 90px #0000007a;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.homepage-section-panel__chrome{position:sticky;z-index:2;top:0;display:flex;height:46px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--home-rule);background:color-mix(in srgb,var(--home-bg-0) 90%,transparent);padding:0 14px 0 24px;color:var(--home-ink-faint);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.homepage-section-panel__chrome button{display:grid;width:32px;height:32px;place-items:center;border:1px solid var(--home-rule);border-radius:2px;background:transparent;color:var(--home-ink-dim);cursor:pointer}.homepage-section-panel__chrome button:hover,.homepage-section-panel__chrome button:focus-visible{border-color:var(--home-accent);color:var(--home-accent-hot);outline:none}.homepage-section-panel__content{height:calc(100% - 46px);overflow-y:auto;padding:54px 270px 72px clamp(28px,5vw,72px);scrollbar-color:var(--home-accent) transparent;scrollbar-width:thin}.homepage-section-panel .dash-section{min-width:0;margin-bottom:0}.homepage-section-panel .boot-sequence{display:none}.homepage-section-panel .dash-section-title{font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,"Homepage Serif Fallback",serif;font-weight:400}.homepage-section-panel .glass-card{background:color-mix(in srgb,var(--home-bg-1) 80%,transparent);box-shadow:0 12px 40px #00000042}.homepage-section-panel .projects-grid,.homepage-section-panel .skills-panels,.homepage-section-panel .dash-grid{grid-template-columns:1fr}.homepage-section-panel .metrics-card{grid-column:auto;min-width:0;overflow:hidden}.homepage-section-panel .metrics-card-header,.homepage-section-panel .metrics-card-header>div,.homepage-section-panel .tag-bars,.homepage-section-panel .tag-bar{min-width:0}@media(max-width:1100px){.homepage-section-panel{width:74vw}.homepage-section-panel__content{padding-right:250px}}.homepage-section-nav__eyebrow{margin:0;border-bottom:1px solid var(--home-rule);padding:10px 12px;color:var(--home-ink-faint);font-size:9px;letter-spacing:.2em;text-transform:uppercase}.homepage-section-nav__list{margin:0;padding:0;list-style:none}.homepage-section-nav__list li+li{border-top:1px solid var(--home-rule)}.homepage-section-nav__link{display:grid;grid-template-columns:2.5ch 1fr auto;align-items:center;gap:12px;min-height:48px;padding:0 12px;color:var(--home-ink-dim);font-family:Iowan Old Style,Palatino Linotype,Book Antiqua,Georgia,"Homepage Serif Fallback",serif;font-size:16px;text-decoration:none;transition:color .18s ease,background-color .18s ease,padding-left .18s ease}.homepage-section-nav__number{color:var(--home-ink-faint);font-family:ui-monospace,SF Mono,Cascadia Code,Roboto Mono,Menlo,Consolas,monospace;font-size:9px;letter-spacing:.08em}.homepage-section-nav__arrow{color:var(--home-accent);font-family:ui-monospace,SF Mono,Cascadia Code,Roboto Mono,Menlo,Consolas,monospace;font-size:12px;opacity:0;transform:translate(-4px,4px);transition:opacity .18s ease,transform .18s ease}.homepage-section-nav__link:hover,.homepage-section-nav__link:focus-visible{padding-left:16px;color:var(--home-accent-hot);background:color-mix(in srgb,var(--home-accent) 8%,transparent);outline:none}.homepage-section-nav__link:hover .homepage-section-nav__arrow,.homepage-section-nav__link:focus-visible .homepage-section-nav__arrow{opacity:1;transform:translate(0)}.homepage-section-nav__link:focus-visible{box-shadow:inset 2px 0 var(--home-accent)}@media(max-width:900px){.homepage-portrait{bottom:calc(210px + var(--home-safe-bottom));width:clamp(120px,20vw,160px);height:auto;max-width:none;max-height:32vh}.homepage-section-nav{top:auto;right:clamp(20px,4vw,56px);bottom:clamp(68px,10vh,96px);width:min(250px,calc(100vw - 40px));transform:none}.homepage-section-nav__eyebrow{display:none}.homepage-section-nav__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.homepage-section-nav__list li:nth-child(2){border-top:0}.homepage-section-nav__list li:nth-child(2n){border-left:1px solid var(--home-rule)}.homepage-section-nav__link{min-height:48px}.homepage-root--section .homepage-section-nav,.homepage-root--closing .homepage-section-nav{top:84px;right:20px;bottom:auto;width:min(220px,calc(100vw - 40px))}.homepage-section-panel{width:100vw}.homepage-section-panel__content{padding:276px clamp(24px,7vw,64px) 72px}}@media(max-width:640px){.homepage-hud{padding:calc(18px + var(--home-safe-top)) calc(18px + var(--home-safe-right)) calc(14px + var(--home-safe-bottom)) calc(18px + var(--home-safe-left))}.homepage-title{font-size:clamp(30px,10.5vw,42px)}.homepage-caption{max-width:min(36ch,calc(100vw - 36px));margin-top:10px;font-size:12px;line-height:1.45}.homepage-drag-hint{top:clamp(268px,33vh,288px);font-size:10px}.homepage-portrait{--homepage-portrait-opacity: .72;right:auto;bottom:calc(154px + var(--home-safe-bottom));left:var(--home-safe-left);width:clamp(86px,28vw,116px);height:auto;max-height:min(31vh,224px);max-width:none}.homepage-row--top{flex-direction:column;align-items:flex-start;gap:18px}.homepage-stats{gap:clamp(15px,5vw,24px);text-align:left}.homepage-stat-value{font-size:clamp(17px,5.5vw,22px)}.homepage-stat-label{font-size:9px}.homepage-foot{align-items:flex-end}.homepage-section-nav{right:calc(18px + var(--home-safe-right));bottom:calc(52px + var(--home-safe-bottom));left:calc(18px + var(--home-safe-left));width:auto;background:color-mix(in srgb,var(--home-bg-0) 70%,transparent)}.homepage-root--section .homepage-section-nav,.homepage-root--closing .homepage-section-nav{inset:84px 20px auto;width:auto}.homepage-root--section .homepage-section-nav__list,.homepage-root--closing .homepage-section-nav__list{grid-template-columns:repeat(2,minmax(0,1fr))}.homepage-section-panel__content{padding:200px clamp(18px,6vw,32px) calc(48px + var(--home-safe-bottom))}.homepage-section-nav__eyebrow{display:none}.homepage-section-nav__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.homepage-section-nav__list li:nth-child(2){border-top:0}.homepage-section-nav__list li:nth-child(2n){border-left:1px solid var(--home-rule)}.homepage-section-nav__link{min-height:44px;font-size:14px}.homepage-section-panel__chrome{height:56px;padding-left:18px}.homepage-section-panel__chrome button{width:44px;height:44px}.homepage-section-panel__content{height:calc(100% - 56px)}.ring-stack{width:min(220px,100%);height:auto;aspect-ratio:1}.ring-stack-ring--0{width:100%;height:100%}.ring-stack-ring--1{width:74%;height:74%}.ring-stack-ring--2{width:47%;height:47%}.ring-card,.pillar-flow,.metrics-card,.terminal-card{padding:clamp(16px,5vw,24px)}.tag-bars{grid-template-columns:1fr;gap:.7rem}}@media(max-width:640px)and (max-height:700px){.homepage-row--top{gap:12px}.homepage-eyebrow{margin-bottom:6px}.homepage-caption{max-width:38ch;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.homepage-drag-hint{display:none}.homepage-foot{padding-top:7px}}@media(orientation:landscape)and (max-height:500px){.homepage-caption,.homepage-stats,.homepage-portrait,.homepage-drag-hint{display:none}.homepage-section-nav{right:calc(14px + var(--home-safe-right));bottom:calc(38px + var(--home-safe-bottom));left:auto;width:min(280px,44vw)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
