:root{--bg-primary:#050508;--bg-elevated:#090913;--bg-surface:#0f0f1c;--bg-surface-hover:#16162a;--border-subtle:#ffffff12;--border-medium:#ffffff1f;--border-hover:#ffffff38;--text-primary:#f0f0f8;--text-secondary:#9090a8;--text-tertiary:#52526c;--accent-purple:#8b5cf6;--accent-indigo:#6366f1;--accent-blue:#3b82f6;--accent-emerald:#10b981;--accent-amber:#f59e0b;--accent-rose:#f43f5e;--gradient-accent:linear-gradient(135deg, #8b5cf6, #6366f1, #3b82f6, #10b981);--gradient-text:linear-gradient(135deg, #c4b5fd 0%, #a5b4fc 25%, #93c5fd 65%, #6ee7b7 100%);--gradient-glow:radial-gradient(circle at center, #8b5cf626, transparent 70%);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--section-gap:130px;--container-max:1180px;--container-px:24px;--radius-xs:4px;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-full:9999px;--ease-spring:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background:var(--bg-primary);width:100%;max-width:100%;overflow-x:hidden}body{font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-primary);width:100%;max-width:100%;font-size:16px;line-height:1.6;position:relative;overflow-x:hidden}.app-root{width:100%;max-width:100%;position:relative;overflow-x:hidden}main{width:100%;max-width:100%;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;outline:none}ul,ol{list-style:none}img{max-width:100%;display:block}::selection{color:#fff;background:#8b5cf64d}.scroll-progress-container{z-index:1000;pointer-events:none;height:3px;position:fixed;top:0;left:0;right:0}.scroll-progress-bar{transform-origin:0%;will-change:transform;background:linear-gradient(90deg,#8b5cf6,#6366f1,#3b82f6,#10b981);width:100%;height:100%}.scroll-progress-glow{filter:blur(4px);opacity:.6;transform-origin:0%;pointer-events:none;background:linear-gradient(90deg,#8b5cf6,#3b82f6,#10b981);width:100%;height:8px;position:absolute;top:0;left:0}.scroll-progress-emitter{width:7px;height:7px;box-shadow:0 0 8px #fff, 0 0 16px var(--accent-emerald), 0 0 24px var(--accent-purple);pointer-events:none;z-index:2;background:#fff;border-radius:50%;position:absolute;top:-2px;transform:translate(-50%)}.cursor-glow{pointer-events:none;z-index:1;will-change:left, top;background:radial-gradient(circle,#8b5cf613,#0000 70%);border-radius:50%;width:520px;height:520px;margin-top:-260px;margin-left:-260px;position:fixed}.noise-overlay{pointer-events:none;z-index:90;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.interactive-canvas{pointer-events:auto;z-index:1;width:100%;height:100%;position:absolute;inset:0}.section{padding:var(--section-gap) var(--container-px);max-width:var(--container-max);box-sizing:border-box;z-index:2;width:100%;margin:0 auto;position:relative;overflow-x:hidden}.section-divider{background:linear-gradient(90deg, transparent, var(--border-subtle) 20%, var(--border-subtle) 80%, transparent);height:1px;max-width:var(--container-max);width:calc(100% - 2 * var(--container-px));margin:0 auto}.section-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--accent-purple);align-items:center;gap:8px;margin-bottom:14px;font-size:.78rem;font-weight:500;display:inline-flex}.section-label:before{content:"";background:var(--accent-purple);width:8px;height:8px;box-shadow:0 0 8px var(--accent-purple);border-radius:50%;display:inline-block}.section-heading{letter-spacing:-.03em;color:var(--text-primary);margin-bottom:22px;font-size:clamp(2.2rem,5vw,3.25rem);font-weight:800;line-height:1.12}.section-desc{color:var(--text-secondary);max-width:660px;margin-bottom:40px;font-size:1.0625rem;line-height:1.75}.gradient-text{background:var(--gradient-text);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text;animation:9s ease-in-out infinite gradient-shift}.header{top:calc(10px + env(safe-area-inset-top,0px));z-index:80;padding:0 var(--container-px);pointer-events:none;position:fixed;left:0;right:0}.header-inner{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);pointer-events:auto;max-width:1040px;transition:all .3s var(--ease-spring);background:#0a0a12bf;justify-content:space-between;align-items:center;margin:0 auto;padding:8px 14px 8px 18px;display:flex;box-shadow:0 8px 32px #00000073}.header-scrolled .header-inner{border-color:var(--border-medium);background:#080810e0;box-shadow:0 12px 40px #000000a6}.header-logo{letter-spacing:-.02em;align-items:center;gap:10px;font-size:1.05rem;font-weight:700;display:flex}.header-logo-icon{background:linear-gradient(135deg, var(--accent-purple), var(--accent-indigo));color:#fff;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:800;display:flex;box-shadow:0 2px 10px #8b5cf666}.header-logo-text{font-family:var(--font-sans);color:var(--text-primary)}.header-nav{align-items:center;gap:4px;display:flex;position:relative}.header-link{color:var(--text-secondary);border-radius:var(--radius-full);padding:7px 15px;font-size:.875rem;font-weight:500;transition:color .2s;position:relative}.header-link:hover{color:var(--text-primary)}.header-link-active{color:#fff}.header-link-pill{border-radius:var(--radius-full);z-index:0;background:#ffffff14;border:1px solid #ffffff24;position:absolute;inset:0}.header-link-label{z-index:1;position:relative}.header-controls{align-items:center;gap:10px;display:flex}.shortcuts-trigger-btn{border-radius:var(--radius-full);border:1px solid var(--border-subtle);height:34px;color:var(--text-secondary);font-family:var(--font-mono);cursor:pointer;transition:all .25s var(--ease-spring);background:#ffffff0d;align-items:center;gap:5px;padding:0 10px;font-size:.75rem;display:flex}.shortcuts-trigger-btn:hover{color:var(--text-primary);background:#ffffff17;border-color:#8b5cf666;box-shadow:0 0 16px #8b5cf633}.header-kbd,.footer-kbd{font-family:var(--font-mono);color:var(--text-primary);background:#ffffff1a;border:1px solid #fff3;border-radius:4px;padding:1px 5px;font-size:.68rem;font-weight:700}.footer-shortcuts-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;align-items:center;gap:6px;font-size:.82rem;transition:color .2s;display:inline-flex}.footer-shortcuts-btn:hover{color:var(--text-primary)}.sound-toggle-btn{border-radius:var(--radius-full);border:1px solid var(--border-subtle);width:34px;height:34px;color:var(--text-secondary);transition:all .25s var(--ease-spring);background:#ffffff0d;justify-content:center;align-items:center;display:flex}.sound-toggle-btn:hover{color:var(--text-primary);border-color:var(--border-hover);background:#ffffff17}.sound-toggle-btn.sound-on{color:var(--accent-purple);background:#8b5cf61a;border-color:#8b5cf666}.header-terminal-btn{border-radius:var(--radius-full);border:1px solid var(--border-medium);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;pointer-events:auto;transition:all .25s var(--ease-spring);background:#ffffff0d;justify-content:center;align-items:center;display:flex}.header-terminal-btn:hover{color:var(--accent-purple);background:#8b5cf626;border-color:#8b5cf673;transform:translateY(-1px);box-shadow:0 0 16px #8b5cf640}.sound-icon-wrap{justify-content:center;align-items:center;display:flex;position:relative}.header-status{border-radius:var(--radius-full);color:var(--accent-emerald);background:#10b98114;border:1px solid #10b98133;align-items:center;gap:7px;padding:5px 12px;font-size:.78rem;font-weight:500;display:flex}.status-dot{background:var(--accent-emerald);width:7px;height:7px;box-shadow:0 0 8px var(--accent-emerald);border-radius:50%;animation:2.4s ease-in-out infinite pulse}.header-cta-btn{border-radius:var(--radius-full);color:#fff;transition:all .25s var(--ease-spring);background:linear-gradient(135deg,#8b5cf633,#6366f133);border:1px solid #8b5cf659;align-items:center;gap:6px;padding:6px 14px;font-size:.8125rem;font-weight:600;display:flex}.header-cta-btn:hover{border-color:var(--accent-purple);background:linear-gradient(135deg,#8b5cf659,#6366f159);box-shadow:0 0 16px #8b5cf64d}.hero{text-align:center;min-height:100vh;padding:130px var(--container-px) 70px;box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:100%;display:flex;position:relative;overflow:hidden}.hero-bg{pointer-events:none;width:100%;max-width:100%;position:absolute;inset:0;overflow:hidden}.orb{filter:blur(110px);pointer-events:none;opacity:.35;will-change:transform;border-radius:50%;position:absolute}.orb-purple{background:radial-gradient(circle,#8b5cf6,#0000 65%);width:550px;height:550px;top:10%;left:20%}.orb-blue{background:radial-gradient(circle,#3b82f6,#0000 65%);width:600px;height:600px;top:25%;right:15%}.orb-emerald{opacity:.22;background:radial-gradient(circle,#10b981,#0000 65%);width:480px;height:480px;bottom:10%;left:35%}.hero-content{z-index:2;box-sizing:border-box;flex-direction:column;align-items:center;width:100%;max-width:860px;display:flex;position:relative}.hero-badge{border-radius:var(--radius-full);border:1px solid var(--border-medium);color:var(--text-secondary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0a;align-items:center;gap:10px;margin-bottom:24px;padding:6px 14px;font-size:.8125rem;display:inline-flex;box-shadow:0 4px 20px #0000004d}.hero-badge-pill{border-radius:var(--radius-full);color:var(--accent-emerald);font-size:.72rem;font-weight:600;font-family:var(--font-mono);background:#10b9811f;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.hero-name{letter-spacing:-.04em;perspective:1000px;justify-content:center;margin-bottom:18px;font-size:clamp(3.5rem,9vw,6.2rem);font-weight:900;line-height:1;display:flex}.hero-char{cursor:default;will-change:transform, filter;display:inline-block}.hero-role{color:var(--text-primary);letter-spacing:-.015em;margin-bottom:16px;font-size:clamp(1.1rem,2.5vw,1.4rem);font-weight:600}.hero-desc{color:var(--text-secondary);max-width:660px;margin-bottom:34px;font-size:1.125rem;line-height:1.7}.hero-desc strong{color:var(--text-primary);font-weight:600}.hero-cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-bottom:44px;display:flex}.magnetic-anchor{text-decoration:none;display:inline-block}.magnetic-wrap{will-change:transform;align-items:center;display:inline-flex}.cta-button{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--accent-purple), var(--accent-indigo));color:#fff;transition:all .25s var(--ease-spring);align-items:center;gap:8px;padding:13px 28px;font-size:.9375rem;font-weight:600;display:inline-flex;box-shadow:0 4px 24px #8b5cf666,inset 0 1px #fff3}.cta-button:hover{transform:translateY(-1px);box-shadow:0 6px 30px #8b5cf68c,inset 0 1px #ffffff4d}.cta-arrow{transition:transform .25s var(--ease-spring)}.cta-button:hover .cta-arrow{transform:translate(3px)}.cta-link{border-radius:var(--radius-full);border:1px solid var(--border-medium);color:var(--text-primary);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .25s var(--ease-spring);background:#ffffff0d;align-items:center;padding:13px 26px;font-size:.9375rem;font-weight:500;display:inline-flex}.cta-link:hover{border-color:var(--border-hover);background:#ffffff17;transform:translateY(-1px)}.hero-term-toggle{border-radius:var(--radius-full);border:1px solid var(--border-subtle);color:var(--text-secondary);font-family:var(--font-mono);transition:all .25s var(--ease-spring);background:#10101cb3;align-items:center;gap:7px;padding:13px 20px;font-size:.8125rem;font-weight:500;display:inline-flex}.hero-term-toggle:hover,.hero-term-toggle.active{color:var(--accent-purple);background:#8b5cf614;border-color:#8b5cf666}.hero-terminal-wrapper{width:100%;max-width:760px;margin:0 auto 36px}.hero-metrics-bar{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0f0f1c8c;grid-template-columns:repeat(4,1fr);gap:16px;width:100%;max-width:820px;padding:18px 24px;display:grid;box-shadow:0 10px 30px #00000059}.hero-metric-item{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.hero-metric-val{font-size:1.5rem;font-weight:800;font-family:var(--font-mono);letter-spacing:-.03em}.hero-metric-lbl{color:var(--text-secondary);font-size:.78rem;line-height:1.3}.hero-metric-badge{font-size:.68rem;font-family:var(--font-mono);color:var(--accent-purple);opacity:.85;align-items:center;gap:4px;display:inline-flex}.scroll-indicator{z-index:2;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.scroll-indicator-link{color:var(--text-tertiary);font-size:.75rem;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;flex-direction:column;align-items:center;gap:6px;transition:color .2s;display:flex}.scroll-indicator-link:hover{color:var(--accent-purple)}.scroll-icon-wrap{justify-content:center;align-items:center;display:flex}.terminal-container{border-radius:var(--radius-md);text-align:left;background:#080811;border:1px solid #8b5cf640;width:100%;overflow:hidden;box-shadow:0 16px 40px #000000a6,0 0 30px #8b5cf61a}.terminal-header{border-bottom:1px solid var(--border-subtle);background:#0c0c18;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.terminal-dots{gap:6px;display:flex}.term-dot{border-radius:50%;width:10px;height:10px}.term-dot-red{background:#ef4444}.term-dot-yellow{background:#eab308}.term-dot-green{background:#22c55e}.terminal-title{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:6px;font-size:.75rem;display:flex}.terminal-live-badge{font-family:var(--font-mono);color:var(--accent-emerald);align-items:center;gap:4px;font-size:.68rem;font-weight:600;display:flex}.terminal-body{font-family:var(--font-mono);max-height:240px;padding:14px;font-size:.8125rem;line-height:1.6;overflow-y:auto}.terminal-entry{margin-bottom:10px}.terminal-prompt-line{color:var(--text-primary);gap:8px;display:flex}.terminal-prompt{color:var(--accent-emerald);font-weight:600}.terminal-command{color:var(--accent-purple);font-weight:500}.terminal-output{color:var(--text-secondary);border-left:2px solid #8b5cf633;margin-top:4px;padding-left:14px}.terminal-output-line{margin-bottom:2px}.terminal-input-row{align-items:center;gap:8px;margin-top:6px;display:flex}.terminal-input{color:#fff;font-family:var(--font-mono);background:0 0;border:none;outline:none;flex:1;font-size:.8125rem}.terminal-quick-chips{border-top:1px solid var(--border-subtle);scrollbar-width:none;background:#090914;align-items:center;gap:8px;padding:8px 14px;display:flex;overflow-x:auto}.terminal-quick-chips::-webkit-scrollbar{display:none}.terminal-chips-label{font-family:var(--font-mono);color:var(--text-tertiary);white-space:nowrap;font-size:.7rem}.terminal-chip{border-radius:var(--radius-xs);border:1px solid var(--border-subtle);color:var(--text-secondary);font-family:var(--font-mono);white-space:nowrap;background:#ffffff0d;padding:3px 9px;font-size:.72rem;transition:all .2s}.terminal-chip:hover{color:#fff;background:#8b5cf633;border-color:#8b5cf666}.terminal-chip-clear{color:var(--accent-rose);border-color:#f43f5e33;margin-left:auto}.marquee-wrapper{flex-direction:column;gap:12px;padding:24px 0;display:flex;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.marquee{-webkit-user-select:none;user-select:none;display:flex;overflow:hidden}.marquee-track{white-space:nowrap;will-change:transform;flex-shrink:0;align-items:center;gap:32px;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-item{font-family:var(--font-mono);color:var(--text-tertiary);letter-spacing:.04em;align-items:center;gap:16px;font-size:.84rem;transition:color .2s;display:inline-flex}.marquee-item:hover{color:var(--accent-purple)}.marquee-item-alt:hover{color:var(--accent-emerald)}.marquee-dot{background:var(--text-tertiary);opacity:.4;border-radius:50%;width:4px;height:4px}.stack-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:50px;display:grid}.stack-category{border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-subtle);transition:all .3s var(--ease-spring);padding:26px;box-shadow:0 10px 30px #0000004d,inset 0 1px #ffffff0f}.stack-category:hover{border-color:var(--border-hover);background:var(--bg-surface-hover);box-shadow:0 16px 40px #00000073,inset 0 1px #ffffff1f}.stack-category-header{align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.stack-cat-icon-wrap{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--accent-purple);background:#8b5cf61f;border:1px solid #8b5cf640;flex-shrink:0;justify-content:center;align-items:center;display:flex}.stack-category-label{color:var(--text-primary);margin-bottom:4px;font-size:1.05rem;font-weight:700}.stack-category-desc{color:var(--text-secondary);font-size:.8125rem}.stack-tags{flex-wrap:wrap;gap:8px;display:flex}.stack-tag{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);font-family:var(--font-mono);color:var(--text-secondary);transition:all .2s var(--ease-spring);background:#ffffff0a;align-items:center;padding:5px 12px;font-size:.78rem;display:inline-flex}.stack-tag:hover{color:#fff;background:#8b5cf61f;border-color:#8b5cf659;transform:translateY(-1px)}.principles-block{border-radius:var(--radius-lg);border:1px solid var(--border-medium);background:linear-gradient(135deg,#10101ccc,#090912e6);padding:30px;box-shadow:0 12px 35px #0000004d}.principles-header{align-items:center;gap:8px;margin-bottom:22px;display:flex}.principles-icon{color:var(--accent-amber)}.principles-title{letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.principles-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.principle-item{flex-direction:column;gap:8px;display:flex;position:relative}.principle-num{font-family:var(--font-mono);color:var(--accent-purple);font-size:.75rem;font-weight:700}.principle-name{color:var(--text-primary);font-size:.9375rem;font-weight:700}.principle-desc{color:var(--text-secondary);font-size:.8125rem;line-height:1.5}.arch-bento-grid{grid-template-columns:repeat(2,1fr);gap:22px;display:grid}.arch-bento-card{border-radius:var(--radius-lg);background:var(--bg-surface);border:1px solid var(--border-subtle);transition:all .35s var(--ease-spring);flex-direction:column;padding:28px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 35px #00000059,inset 0 1px #ffffff0f}.arch-bento-card:hover{border-color:var(--border-hover);background:var(--bg-surface-hover);box-shadow:0 18px 45px #00000080,inset 0 1px #ffffff24,0 0 30px #8b5cf61f}.arch-bento-glow{filter:blur(80px);pointer-events:none;opacity:.35;border-radius:50%;width:220px;height:220px;position:absolute;top:-80px;right:-80px}.arch-bento-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.arch-bento-badge-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.arch-bento-num{font-family:var(--font-mono);color:var(--accent-purple);border-radius:var(--radius-xs);background:#8b5cf61f;border:1px solid #8b5cf640;padding:2px 7px;font-size:.78rem;font-weight:800}.arch-bento-highlight{font-family:var(--font-mono);color:var(--text-secondary);align-items:center;gap:4px;font-size:.72rem;display:inline-flex}.arch-bento-icon-box{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);width:40px;height:40px;color:var(--text-primary);background:#ffffff0d;justify-content:center;align-items:center;display:flex}.arch-bento-title{letter-spacing:-.02em;color:var(--text-primary);margin-bottom:6px;font-size:1.25rem;font-weight:800}.arch-bento-sub{color:var(--text-secondary);margin-bottom:20px;font-size:.875rem;line-height:1.5}.arch-bento-items{flex-direction:column;gap:8px;margin-bottom:22px;display:flex}.arch-bento-item-row{color:var(--text-secondary);align-items:center;gap:8px;font-size:.84rem;display:flex}.arch-bento-check{color:var(--accent-emerald);flex-shrink:0}.arch-bento-metrics{gap:10px;margin-top:auto;margin-bottom:20px;display:flex}.arch-bento-metric-pill{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:#ffffff08;flex-direction:column;flex:1;padding:8px 12px;display:flex}.arch-bento-metric-val{font-family:var(--font-mono);color:var(--text-primary);font-size:.8125rem;font-weight:700}.arch-bento-metric-lbl{color:var(--text-tertiary);font-size:.68rem}.arch-bento-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-top:14px;display:flex}.arch-bento-status{font-family:var(--font-mono);color:var(--accent-emerald);align-items:center;gap:5px;font-size:.72rem;display:inline-flex}.arch-shield-icon{color:var(--accent-emerald)}.arch-bento-arrow{color:var(--text-tertiary);transition:transform .2s}.arch-bento-card:hover .arch-bento-arrow{color:var(--accent-purple);transform:translate(2px,-2px)}.project-tabs{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:34px;display:flex}.project-tab{border-radius:var(--radius-full);border:1px solid var(--border-subtle);color:var(--text-secondary);background:#ffffff0a;align-items:center;gap:7px;padding:8px 16px;font-size:.84rem;font-weight:500;transition:all .2s;display:inline-flex;position:relative}.project-tab:hover{color:var(--text-primary);border-color:var(--border-medium)}.project-tab-active{color:#fff;border-color:#8b5cf666}.project-tab-pill{border-radius:var(--radius-full);z-index:0;background:#8b5cf629;border:1px solid #8b5cf666;position:absolute;inset:0}.project-tab-label{z-index:1;position:relative}.project-tab-count{z-index:1;border-radius:var(--radius-full);font-size:.68rem;font-family:var(--font-mono);background:#ffffff14;justify-content:center;align-items:center;padding:1px 6px;display:inline-flex;position:relative}.projects-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.project-card{border-radius:var(--radius-lg);background:var(--bg-surface);border:1px solid var(--border-subtle);transform-style:preserve-3d;flex-direction:column;padding:28px;transition:border-color .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 35px #00000059,inset 0 1px #ffffff0f}.project-card:hover{border-color:var(--border-hover);box-shadow:0 20px 48px #0000008c,inset 0 1px #ffffff24,0 0 28px #8b5cf629}.project-card-featured{background:linear-gradient(135deg,#10101ef2,#0a0a14f2);border-color:#8b5cf647}.project-card-glow{pointer-events:none;z-index:0;transition:background .15s ease-out;position:absolute;inset:0}.project-card-beam{border-radius:var(--radius-lg);-webkit-mask-composite:xor;pointer-events:none;background:linear-gradient(90deg,#0000 40%,#8b5cf6cc,#0000 60%) 0 0/200% 200%;padding:1px;animation:5s linear infinite border-rotate;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes border-rotate{0%{background-position:0%}to{background-position:200%}}.project-card-header{z-index:1;justify-content:space-between;align-items:center;margin-bottom:14px;display:flex;position:relative}.project-card-index{font-family:var(--font-mono);color:var(--accent-purple);font-size:.8125rem;font-weight:700}.project-card-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.project-card-badge-featured{border-radius:var(--radius-full);color:#fbbf24;background:#f59e0b1f;border:1px solid #f59e0b4d;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.project-card-badge-new{border-radius:var(--radius-full);color:#fda4af;background:#f43f5e1f;border:1px solid #f43f5e4d;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.project-card-private,.project-card-public{border-radius:var(--radius-full);align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:500;display:inline-flex}.project-card-private{color:#34d399;background:#10b9811a;border:1px solid #10b98140}.project-card-public{color:#60a5fa;background:#3b82f61a;border:1px solid #3b82f640}.project-card-type{color:var(--text-tertiary);font-size:.75rem;font-family:var(--font-mono)}.project-card-name{z-index:1;letter-spacing:-.025em;color:var(--text-primary);margin-bottom:10px;font-size:1.35rem;font-weight:800;position:relative}.project-card-metric{z-index:1;border-radius:var(--radius-sm);font-family:var(--font-mono);color:#c4b5fd;background:#8b5cf617;border:1px solid #8b5cf633;align-self:flex-start;align-items:center;gap:6px;margin-bottom:12px;padding:4px 10px;font-size:.75rem;display:inline-flex;position:relative}.project-metric-icon{color:var(--accent-amber)}.project-card-desc{z-index:1;color:var(--text-secondary);flex:1;margin-bottom:18px;font-size:.885rem;line-height:1.6;position:relative}.project-card-tags{z-index:1;flex-wrap:wrap;gap:6px;margin-bottom:20px;display:flex;position:relative}.project-card-tag{border-radius:var(--radius-xs);border:1px solid var(--border-subtle);font-family:var(--font-mono);color:var(--text-secondary);background:#ffffff0a;padding:3px 9px;font-size:.72rem}.project-card-tag-more{border-radius:var(--radius-xs);font-family:var(--font-mono);color:var(--text-tertiary);background:#ffffff05;padding:3px 7px;font-size:.72rem}.project-card-actions{z-index:1;border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;gap:10px;padding-top:14px;display:flex;position:relative}.project-card-btn-details{border-radius:var(--radius-full);border:1px solid var(--border-subtle);color:var(--text-primary);transition:all .2s var(--ease-spring);background:#ffffff0a;align-items:center;gap:6px;padding:7px 14px;font-size:.8125rem;font-weight:500;display:inline-flex}.project-card-btn-details:hover{color:#fff;background:#8b5cf626;border-color:#8b5cf666}.project-card-btn-link{border-radius:var(--radius-full);color:var(--text-secondary);background:#ffffff08;align-items:center;gap:6px;padding:7px 14px;font-size:.8125rem;font-weight:500;transition:all .2s;display:inline-flex}.project-card-btn-link:hover{color:var(--accent-purple);transform:translate(2px)}.project-modal-backdrop{-webkit-backdrop-filter:blur(12px);z-index:200;background:#05050acc;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.project-modal-content{border-radius:var(--radius-lg);background:#0b0b17;border:1px solid #8b5cf659;width:100%;max-width:680px;max-height:90vh;padding:32px;position:relative;overflow-y:auto;box-shadow:0 24px 60px #000000bf,0 0 40px #8b5cf626}.project-modal-close{border:1px solid var(--border-subtle);width:34px;height:34px;color:var(--text-secondary);background:#ffffff0f;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:20px;right:20px}.project-modal-close:hover{color:#fff;background:#ffffff1f;transform:rotate(90deg)}.project-modal-badge-row{align-items:center;gap:8px;margin-bottom:12px;display:flex}.project-modal-index{font-family:var(--font-mono);color:var(--accent-purple);font-size:.85rem;font-weight:700}.project-modal-type{color:var(--text-tertiary);font-size:.78rem;font-family:var(--font-mono)}.project-modal-title{letter-spacing:-.03em;color:var(--text-primary);margin-bottom:12px;font-size:1.85rem;font-weight:800}.project-modal-metric{border-radius:var(--radius-sm);font-family:var(--font-mono);color:#c4b5fd;background:#8b5cf61f;border:1px solid #8b5cf64d;align-items:center;gap:6px;margin-bottom:22px;padding:5px 12px;font-size:.8125rem;display:inline-flex}.project-modal-stats{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#ffffff08;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px;padding:14px;display:grid}.project-modal-stat-item{text-align:center;flex-direction:column;align-items:center;display:flex}.project-modal-stat-val{font-family:var(--font-mono);color:var(--accent-purple);font-size:1.1rem;font-weight:700}.project-modal-stat-lbl{color:var(--text-secondary);font-size:.72rem}.project-modal-body{margin-bottom:28px}.project-modal-section-title{color:var(--text-primary);align-items:center;gap:8px;margin:18px 0 10px;font-size:.9375rem;font-weight:700;display:flex}.project-modal-desc{color:var(--text-secondary);font-size:.9375rem;line-height:1.7}.project-modal-arch-list{flex-direction:column;gap:9px;margin-bottom:16px;display:flex}.project-modal-arch-item{color:var(--text-secondary);align-items:flex-start;gap:10px;font-size:.85rem;line-height:1.5;display:flex}.project-modal-check{color:var(--accent-emerald);flex-shrink:0;margin-top:3px}.project-modal-tags{flex-wrap:wrap;gap:6px;display:flex}.project-modal-footer{border-top:1px solid var(--border-subtle);align-items:center;gap:12px;padding-top:18px;display:flex}.project-modal-action-btn{padding:10px 22px;font-size:.875rem}.project-modal-github-link{align-items:center;gap:6px;padding:10px 20px;font-size:.875rem;display:inline-flex}.contact-toast{border-radius:var(--radius-full);color:#fff;z-index:300;background:#0f172a;border:1px solid #10b98166;align-items:center;gap:8px;padding:12px 20px;font-size:.875rem;font-weight:500;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 10px 30px #0009,0 0 20px #10b98133}.toast-check{color:var(--accent-emerald)}.contact-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.contact-link{border-radius:var(--radius-md);background:var(--bg-surface);border:1px solid var(--border-subtle);transition:all .25s var(--ease-spring);align-items:center;gap:16px;padding:20px 24px;display:flex;box-shadow:0 8px 24px #00000040,inset 0 1px #ffffff0d}.contact-link:hover{background:var(--bg-surface-hover);border-color:var(--border-hover);box-shadow:0 14px 35px #0006,inset 0 1px #ffffff1f,0 0 20px #8b5cf61a}.contact-link-icon-wrap{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--accent-purple);background:#8b5cf61a;border:1px solid #8b5cf640;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-link-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.contact-link-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-family:var(--font-mono)}.contact-link-value{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:600;overflow:hidden}.contact-link-right{align-items:center;gap:8px;display:flex}.contact-copy-btn{border-radius:var(--radius-xs);border:1px solid var(--border-subtle);width:32px;height:32px;color:var(--text-secondary);background:#ffffff0a;justify-content:center;align-items:center;transition:all .2s;display:flex}.contact-copy-btn:hover{color:#fff;border-color:var(--border-hover);background:#ffffff1a}.contact-copy-btn.copied{color:var(--accent-emerald);background:#10b98126;border-color:#10b98166}.contact-ext-icon{color:var(--text-tertiary)}.footer{padding:50px var(--container-px) 40px;border-top:1px solid var(--border-subtle);background:#040407}.footer-inner{max-width:var(--container-max);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:0 auto;display:flex}.footer-left{flex-direction:column;gap:4px;display:flex}.footer-logo{letter-spacing:-.02em;color:var(--text-primary);font-size:1.1rem;font-weight:800}.footer-copy{color:var(--text-tertiary);font-size:.8125rem}.footer-status-pill{border-radius:var(--radius-full);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:.75rem;font-family:var(--font-mono);background:#ffffff08;align-items:center;gap:6px;padding:5px 12px;display:inline-flex}.footer-links{gap:20px;display:flex}.footer-link{color:var(--text-secondary);font-size:.875rem;transition:color .2s}.footer-link:hover{color:var(--accent-purple)}.hud-feedback{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(20px);color:#fff;letter-spacing:-.01em;z-index:1050;pointer-events:none;background:#0b0b17eb;border:1px solid #8b5cf673;align-items:center;gap:8px;padding:10px 20px;font-size:.82rem;font-weight:600;display:inline-flex;position:fixed;bottom:34px;left:50%;transform:translate(-50%);box-shadow:0 12px 35px #000000a6,0 0 25px #8b5cf640}.hud-icon{color:var(--accent-purple);animation:1.8s infinite pulse}.shortcuts-modal-backdrop{-webkit-backdrop-filter:blur(14px);z-index:250;background:#05050ad1;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.shortcuts-modal-card{border-radius:var(--radius-lg);background:#0c0c18;border:1px solid #8b5cf659;width:100%;max-width:580px;padding:30px;position:relative;overflow:hidden;box-shadow:0 24px 60px #000000bf,0 0 40px #8b5cf626,inset 0 1px #ffffff1a}.shortcuts-modal-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.shortcuts-modal-badge{font-family:var(--font-mono);color:var(--accent-purple);text-transform:uppercase;letter-spacing:.08em;border-radius:var(--radius-full);background:#8b5cf61a;border:1px solid #8b5cf640;align-items:center;gap:6px;padding:3px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.shortcuts-modal-close{border:1px solid var(--border-subtle);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:#ffffff0f;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.shortcuts-modal-close:hover{color:#fff;border-color:var(--border-hover);background:#ffffff1f;transform:rotate(90deg)}.shortcuts-modal-title{letter-spacing:-.02em;color:var(--text-primary);margin-bottom:6px;font-size:1.4rem;font-weight:800}.shortcuts-modal-desc{color:var(--text-secondary);margin-bottom:22px;font-size:.85rem;line-height:1.5}.shortcuts-sections{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.shortcuts-group{flex-direction:column;gap:8px;display:flex}.shortcuts-group-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:700;font-family:var(--font-mono);align-items:center;gap:6px;margin-bottom:4px;display:flex}.shortcuts-list{flex-direction:column;gap:6px;display:flex}.shortcut-row{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);cursor:pointer;background:#ffffff06;justify-content:space-between;align-items:center;padding:8px 12px;transition:all .2s;display:flex}.shortcut-row:hover{background:#8b5cf614;border-color:#8b5cf64d;transform:translate(2px)}.shortcut-label{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.shortcut-row:hover .shortcut-label{color:var(--text-primary)}.shortcut-keys{align-items:center;gap:4px;display:flex}.shortcut-kbd{font-family:var(--font-mono);color:var(--text-primary);text-align:center;background:#ffffff14;border:1px solid #ffffff2e;border-radius:4px;min-width:22px;padding:2px 7px;font-size:.72rem;font-weight:700;display:inline-block;box-shadow:0 2px #00000073}.shortcut-row:hover .shortcut-kbd{color:#fff;background:#8b5cf626;border-color:#8b5cf680}.shortcuts-modal-footer{border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding-top:16px;display:flex}.shortcuts-footer-hint{color:var(--text-tertiary);font-size:.75rem}.shortcuts-sound-indicator{border-radius:var(--radius-full);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;background:#ffffff0a;align-items:center;gap:6px;padding:5px 10px;font-size:.75rem;transition:all .2s;display:inline-flex}.shortcuts-sound-indicator:hover{color:var(--text-primary);background:#ffffff14}.mobile-dock-wrapper{bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:120;pointer-events:auto;width:calc(100% - 20px);max-width:410px;margin-left:auto;margin-right:auto;display:none;position:fixed;left:0;right:0}.mobile-dock{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(24px);background:#080810e6;border:1px solid #ffffff1f;justify-content:space-between;align-items:center;padding:5px 6px;display:flex;box-shadow:0 16px 45px #000000bf,0 0 25px #8b5cf629,inset 0 1px #ffffff24}.mobile-dock-item{border-radius:var(--radius-full);min-width:0;color:var(--text-secondary);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:6px 3px;text-decoration:none;display:flex;position:relative}.mobile-dock-item.active{color:#fff}.mobile-dock-pill{border-radius:var(--radius-full);z-index:0;background:#8b5cf638;border:1px solid #8b5cf673;position:absolute;inset:0;box-shadow:0 0 12px #8b5cf64d}.mobile-dock-icon-wrap{z-index:1;justify-content:center;align-items:center;height:20px;display:flex;position:relative}.mobile-dock-label{z-index:1;letter-spacing:.02em;font-size:.6rem;font-weight:600;position:relative}.mobile-dock-help{color:var(--text-tertiary)}.mobile-dock-help:hover{color:var(--text-primary)}@keyframes gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}@media (width<=1024px){.hero-metrics-bar{grid-template-columns:repeat(2,1fr);gap:16px}.principles-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=860px){:root{--section-gap:72px;--container-px:18px}.app-root{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}.mobile-dock-wrapper{bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:120;pointer-events:auto;box-sizing:border-box;width:calc(100% - 20px);max-width:410px;margin-left:auto;margin-right:auto;display:block;position:fixed;left:0;right:0}.header{top:calc(8px + env(safe-area-inset-top,0px));box-sizing:border-box;width:100%;max-width:100%;padding:0 16px}.header-inner{box-sizing:border-box;width:100%;height:48px;padding:0 12px}.header-nav,.shortcuts-trigger-btn{display:none}.header-status,.header-cta-btn{display:none!important}.stack-grid,.arch-bento-grid{grid-template-columns:1fr;gap:14px}.arch-bento-card{padding:22px 18px}.projects-grid{grid-template-columns:1fr;gap:16px}.project-card{transform:none!important}.contact-grid,.principles-grid{grid-template-columns:1fr;gap:12px}.hero-metrics-bar{grid-template-columns:repeat(2,1fr);padding:14px}.footer-inner{text-align:center;flex-direction:column;align-items:center;gap:18px}.footer-links{flex-wrap:wrap;justify-content:center;gap:16px}}@media (width<=640px){:root{--section-gap:56px;--container-px:16px}.hero{min-height:100dvh;padding:calc(74px + env(safe-area-inset-top,0px)) 16px calc(24px + env(safe-area-inset-bottom,0px))}.hero-name{letter-spacing:-.02em;white-space:nowrap;font-size:clamp(2.35rem,11.2vw,3.2rem)}.hero-badge{box-sizing:border-box;flex-wrap:wrap;justify-content:center;gap:6px;max-width:100%;padding:6px 12px}.hero-badge-text{white-space:normal;text-align:center;max-width:100%;font-size:.72rem}.hero-badge-pill{flex-shrink:0;padding:2px 8px;font-size:.68rem}.hero-role{font-size:.92rem;line-height:1.45}.hero-desc{margin-bottom:22px;font-size:.85rem;line-height:1.55}.hero-cta{box-sizing:border-box;flex-direction:column;gap:10px;width:100%;max-width:310px;margin:0 auto 26px;display:flex}.hero-cta .magnetic-anchor,.hero-cta>a,.hero-cta>button{box-sizing:border-box;width:100%;display:block}.hero-cta .magnetic-wrap,.hero-cta .cta-button,.hero-cta .cta-link,.hero-cta .hero-term-toggle{text-align:center;border-radius:var(--radius-full);box-sizing:border-box;justify-content:center;width:100%;min-height:46px;padding:12px 18px;font-size:.875rem}.hero-metrics-bar{border-radius:var(--radius-md);grid-template-columns:repeat(2,1fr);gap:10px;padding:12px 14px}.hero-metric-val{font-size:1.25rem}.hero-metric-lbl{font-size:.68rem}.hero-metric-badge{font-size:.62rem}.section{padding:28px var(--container-px)}.section-label{margin-bottom:6px;font-size:.72rem}.section-heading{margin-bottom:12px;font-size:clamp(1.55rem,6.5vw,2.05rem);line-height:1.25}.section-desc{margin-bottom:24px;font-size:.875rem;line-height:1.55}.project-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;box-sizing:border-box;flex-wrap:nowrap;gap:8px;width:100%;max-width:100%;margin:0 0 16px;padding:4px 0 8px;overflow-x:auto}.project-tabs::-webkit-scrollbar{display:none}.project-tab{border-radius:var(--radius-full);flex-shrink:0;min-height:38px;padding:7px 13px;font-size:.78rem}.project-card{border-radius:var(--radius-md);padding:18px 16px}.project-card-title{font-size:1.2rem}.project-card-metric{font-size:.75rem}.project-card-desc{font-size:.82rem;line-height:1.5}.project-card-footer{flex-direction:column;align-items:stretch;gap:8px}.project-btn-details,.project-card-link{justify-content:center;width:100%;min-height:42px;padding:10px 16px;font-size:.84rem}.project-modal-backdrop,.shortcuts-modal-backdrop{align-items:flex-end;padding:0}.project-modal-content,.shortcuts-modal-card{width:100%;max-width:100%;max-height:90dvh;padding:22px 18px calc(24px + env(safe-area-inset-bottom,0px));box-sizing:border-box;border-bottom:none;border-radius:24px 24px 0 0}.project-modal-content:before,.shortcuts-modal-card:before{content:"";background:#ffffff38;border-radius:2px;width:40px;height:4px;margin:-8px auto 16px;display:block}.project-modal-close,.shortcuts-modal-close{background:#ffffff14;width:36px;height:36px;top:14px;right:14px}.project-modal-stats{grid-template-columns:1fr;gap:8px}.project-modal-footer{flex-direction:column;gap:10px;width:100%}.project-modal-action-btn,.project-modal-github-link{justify-content:center;width:100%;min-height:44px}.arch-bento-card{padding:18px 16px}.arch-bento-title{font-size:1.15rem}.arch-bento-metrics{flex-direction:column;gap:8px}.contact-link{min-height:56px;padding:12px 14px}.contact-link-value{font-size:.875rem}.contact-copy-btn{width:38px;min-width:38px;height:38px}.terminal-input{font-size:16px!important}.terminal-quick-chips{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding:8px 12px;overflow-x:auto}.terminal-chip{flex-shrink:0;min-height:32px;font-size:.72rem}.shortcuts-modal-card{padding:20px 16px calc(24px + env(safe-area-inset-bottom,0px))}.shortcuts-sections{grid-template-columns:1fr;gap:14px}.shortcut-row{min-height:44px;padding:10px 12px}.contact-toast{left:14px;right:14px;bottom:calc(82px + env(safe-area-inset-bottom,0px))}}@media (width<=380px){.hero-name{font-size:clamp(1.9rem,9.5vw,2.35rem)}.hero-badge-text{max-width:100%;font-size:.68rem}.mobile-dock{padding:4px 3px}.mobile-dock-item{padding:4px 2px}.mobile-dock-label{font-size:.56rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.cursor-glow,.interactive-canvas,.orb{display:none!important}}
