:root{--bg:#000000;--surface:#111111;--surface-alt:#1A1A1A;--border:#2A2A2A;--accent:#FF4D00;--accent-hover:#CC3D00;--text-primary:#FFFFFF;--text-body:#CCCCCC;--text-muted:#888888;--dot-red:#FF5F56;--dot-yellow:#FFBD2E;--dot-green:#27C93F}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:var(--bg);color:var(--text-body);font-family:'Share Tech Mono',monospace;line-height:1.7;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{max-width:960px;width:100%;margin:0 auto;padding:0 32px}section{padding:80px 0}.reveal-hidden{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.reveal-visible{opacity:1;transform:translateY(0)}.notification-bar{background:var(--accent);color:#000;height:34px;display:flex;align-items:center;overflow:hidden;position:relative;z-index:1100;border-bottom:1px solid rgba(0,0,0,.1)}.notification-track{display:flex;white-space:nowrap;animation:marquee 30s linear infinite;will-change:transform}.notification-text{font-family:'Share Tech Mono',monospace;font-size:13px;font-weight:700;letter-spacing:.1em;padding-right:80px;text-transform:uppercase}@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.navbar{position:sticky;top:0;z-index:1000;background:var(--bg);height:60px;display:flex;align-items:center;border-bottom:1px solid var(--border)}.nav-wrapper{width:100%;max-width:1200px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:12px;color:var(--text-primary);font-family:'Share Tech Mono',monospace;font-size:16px;letter-spacing:.05em;text-decoration:none;transition:transform .2s cubic-bezier(.25, .46, .45, .94),opacity .2s ease}.logo:hover{opacity:.8}.logo:active{transform:scale(.95)}.nav-logo-img{height:32px;width:auto;filter:brightness(1.2)}.logo-text{color:var(--text-primary)}.nav-menu{display:flex;align-items:center;gap:28px}.nav-link{font-family:'Share Tech Mono',monospace;font-size:15px;color:var(--text-body);text-decoration:none;text-transform:uppercase;letter-spacing:.1em;position:relative;padding:8px 0;transition:color .3s ease,transform .2s ease}.nav-link::before{content:'> ';opacity:0;color:var(--accent);transition:opacity .3s ease,transform .3s ease;transform:translateX(-10px);display:inline-block}.nav-link:hover{color:var(--text-primary)}.nav-link:hover::before{opacity:1;transform:translateX(0)}.nav-link:active{transform:scale(.95)}.nav-link.active{color:var(--accent)}.nav-link.active::before{opacity:1;transform:translateX(0)}.nav-link.active::after{content:'';position:absolute;bottom:0;left:15px;right:0;height:2px;background:var(--accent);box-shadow:0 0 8px var(--accent)}.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;padding:4px}.hamburger span{display:block;width:22px;height:2px;background:var(--text-body);transition:all .2s ease}.hamburger.open span:first-child{transform:translateY(7px) rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.btn-primary{display:inline-block;background:var(--accent);color:#000;font-family:'Share Tech Mono',monospace;font-weight:700;font-size:13px;letter-spacing:.2em;text-transform:uppercase;padding:12px 32px;border:none;border-radius:0;cursor:pointer;transition:all .15s ease;text-decoration:none}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px);color:var(--text-primary)}.btn-ghost{display:inline-block;background:0 0;color:var(--accent);border:1px solid var(--accent);font-family:'Share Tech Mono',monospace;font-weight:700;font-size:13px;letter-spacing:.2em;text-transform:uppercase;padding:12px 32px;border-radius:0;cursor:pointer;transition:all .15s ease;text-decoration:none}.btn-ghost:hover{background:var(--accent);color:var(--text-primary)}.terminal-card{background:var(--surface);border:1px solid var(--border);border-radius:0}.btn-hidden{display:none!important}.terminal-header{background:var(--surface-alt);padding:10px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.terminal-dots{display:flex;gap:6px;align-items:center}.dot{width:12px;height:12px;border-radius:50%}.dot-red{background:var(--dot-red)}.dot-yellow{background:var(--dot-yellow)}.dot-green{background:var(--dot-green)}.terminal-filename{font-size:12px;color:var(--text-muted);font-family:'Share Tech Mono',monospace}.terminal-body{padding:20px 24px}.terminal-prompt{font-family:'Share Tech Mono',monospace;font-size:13px;color:var(--text-body);margin-bottom:16px}.terminal-prompt .prompt-prefix{color:var(--accent)}.section-label-cmd{font-family:'Share Tech Mono',monospace;font-size:18px;color:var(--text-primary);margin-bottom:40px}.section-label-cmd .cmd-prefix{color:var(--accent)}.section-label-plain{font-family:'Share Tech Mono',monospace;font-size:20px;color:var(--text-primary);text-transform:uppercase;letter-spacing:.25em;margin-bottom:40px}.hero{padding:120px 24px 80px;text-align:center;background:#000;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,rgba(0,0,0,.3) 0,rgba(0,0,0,.3) 1px,transparent 1px,transparent 2px);pointer-events:none;z-index:2;opacity:.2}.hero-inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:15px;position:relative;z-index:3}.profile-image-wrap{position:relative;margin-bottom:5px;padding:10px;border:1px dashed rgba(255,255,255,.1)}.profile-image{width:160px;height:160px;object-fit:cover;display:block;border:2px solid var(--border)}.hero-portfolio-text{font-family:VT323,monospace;font-size:clamp(80px, 18vw, 220px);color:transparent;-webkit-text-stroke:2px rgba(255,255,255,0.5);letter-spacing:.1em;text-transform:uppercase;line-height:.85;user-select:none;white-space:nowrap;margin-top:-10px;opacity:.9}.hero-name{font-family:'Share Tech Mono',monospace;font-size:48px;font-weight:700;color:var(--text-primary);margin-top:-30px;letter-spacing:.05em}.hero-subtitle{font-family:'Share Tech Mono',monospace;font-size:18px;color:var(--text-body);letter-spacing:.1em;display:flex;align-items:center;gap:15px}.hero-subtitle .pipe{color:var(--accent);font-weight:700;font-size:20px}.availability-badge{background:rgba(255,77,0,.1);border:1px solid var(--accent);color:var(--accent);padding:8px 24px;font-size:12px;text-transform:uppercase;letter-spacing:2px;border-radius:4px;box-shadow:0 0 20px rgba(255,77,0,.2);display:flex;align-items:center;gap:10px;margin-top:10px;transition:all .3s ease}.availability-badge:hover{background:var(--accent);color:var(--text-primary);box-shadow:0 0 30px rgba(255,77,0,.5)}.availability-dot{width:6px;height:6px;background:var(--accent);border-radius:50%;box-shadow:0 0 10px var(--accent);animation:pulse-orange 1.5s infinite}@keyframes pulse-orange{0%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.5}100%{transform:scale(1);opacity:1}}.about-section{padding:80px 0}.about-label{font-family:'Share Tech Mono',monospace;font-size:14px;color:var(--text-body);text-align:center;margin-bottom:32px;letter-spacing:.05em}.about-label em{color:var(--accent);font-style:italic}.about-terminal{position:relative}.about-content h3{font-family:'Share Tech Mono',monospace;font-size:16px;color:var(--text-primary);margin-bottom:12px;letter-spacing:.05em}.about-content p{font-size:14px;color:var(--text-body);line-height:1.7;margin-bottom:24px}.about-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.about-version{text-align:right;font-size:12px;color:var(--text-muted);font-family:'Share Tech Mono',monospace}.faq-section{padding:80px 0}.faq-list{display:flex;flex-direction:column;gap:28px}.faq-item .faq-q{font-family:'Share Tech Mono',monospace;font-size:14px;color:var(--text-primary);margin-bottom:6px;display:flex;gap:8px;align-items:flex-start}.faq-item .faq-q .faq-arrow{color:var(--accent);flex-shrink:0}.faq-item .faq-a{font-size:13px;color:var(--text-body);line-height:1.7;padding-left:16px}.schematic-section{padding:100px 0;background:var(--bg)}.schematic-title{text-align:center;font-size:2.5rem;margin-bottom:60px;color:var(--text-primary);font-family:'Share Tech Mono',monospace}.skills-cloud{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;max-width:1000px;margin:0 auto 50px;padding:0 20px}.skill-pill{padding:8px 20px;border:1px solid var(--border);border-radius:40px;font-size:14px;color:var(--text-body);background:rgba(255,255,255,.03);transition:all .3s cubic-bezier(.4, 0, .2, 1);cursor:default}.skill-pill:hover{border-color:var(--accent);color:var(--text-primary);box-shadow:0 0 15px rgba(255,77,0,.2);transform:translateY(-2px)}.schematic-arrow-down{width:2px;height:80px;background:linear-gradient(to bottom,var(--border),var(--accent));margin:0 auto;position:relative}.schematic-arrow-down::after{content:'';position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);border-left:8px solid transparent;border-right:8px solid transparent;border-top:10px solid var(--accent)}.timeline-schematic{position:relative;padding:80px 0;max-width:1100px;margin:0 auto}.schematic-bus{position:absolute;left:50%;top:0;bottom:0;width:2px;background:var(--accent);box-shadow:0 0 10px rgba(255,77,0,.3);transform:translateX(-50%);z-index:1}.schematic-node{display:flex;align-items:center;width:100%;margin-bottom:80px;position:relative;z-index:2}.schematic-node:last-child{margin-bottom:0}.node-content{width:42%;background:var(--surface);border:1px solid var(--border);padding:30px;position:relative;transition:transform .3s ease,box-shadow .3s ease}.node-left .node-content{text-align:right}.node-right .node-content{text-align:left}.node-point{width:40px;height:40px;background:var(--bg);border:2px solid var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--accent);font-family:'Share Tech Mono',monospace;flex-shrink:0;z-index:5;position:relative;box-shadow:0 0 10px rgba(255,77,0,.2)}.node-point::after{content:attr(data-num)}.node-connector{height:1px;border-top:1px dashed var(--accent);flex-grow:1;position:relative;opacity:.6}.node-left{flex-direction:row;justify-content:flex-start}.node-right{flex-direction:row-reverse;justify-content:flex-start}.node-left .node-connector::after{content:'▶';position:absolute;right:-2px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--accent)}.node-right .node-connector::before{content:'◀';position:absolute;left:-2px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--accent)}.node-date{display:block;font-size:12px;color:var(--accent);margin-bottom:10px;font-family:'Share Tech Mono',monospace;letter-spacing:.1em}.schematic-node.active .node-date{color:var(--bg)!important;opacity:.9}.node-content h3{font-size:20px;margin-bottom:8px;color:var(--text-primary)}.node-org{font-size:14px;color:var(--text-muted);margin-bottom:20px}.node-text{font-size:14px;color:var(--text-body);line-height:1.6}.node-tags{display:flex;gap:10px;margin-top:20px;justify-content:flex-end}.node-right .node-tags{justify-content:flex-start}.node-tags span{font-size:10px;padding:4px 10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);border-radius:4px;color:var(--text-muted)}.schematic-node.active .node-tags span{border-color:rgba(0,0,0,.2);background:rgba(0,0,0,.1);color:var(--bg)}@media (max-width:768px){.schematic-bus{left:30px}.schematic-arrow-down{margin-left:30px}.schematic-node{flex-direction:row-reverse;justify-content:flex-end;padding-left:30px}.node-content{width:100%;text-align:left!important}.node-point{margin-left:-15px}.node-connector{width:20px;flex-grow:0}.node-left{padding-left:30px}}.projects-section{padding:80px 0}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:32px}.project-card{background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column}.project-preview-area{background:var(--surface-alt);height:160px;overflow:hidden;border-bottom:1px solid var(--border)}.project-code-pre{font-family:'Share Tech Mono',monospace;font-size:10px;color:var(--text-muted);padding:12px 14px;line-height:1.5;overflow:hidden;height:100%;white-space:pre}.project-code-pre .kw{color:var(--accent)}.project-body{padding:20px 24px;flex:1;display:flex;flex-direction:column;gap:8px}.project-title{font-family:'Share Tech Mono',monospace;font-size:15px;color:var(--text-primary);font-weight:700;letter-spacing:.03em}.project-desc{font-size:12px;color:var(--text-muted);font-style:normal;line-height:1.6}.project-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.project-tag{font-family:'Share Tech Mono',monospace;font-size:11px;color:var(--text-primary)}.project-tag::before{content:'[ ';color:var(--accent)}.project-tag::after{content:' ]';color:var(--accent)}.project-btn-wrap{margin-top:24px;display:flex;gap:16px}.project-btn-wrap .btn-ghost,.project-btn-wrap .btn-primary{flex:1;text-align:center;padding:12px 16px}.btn-primary.btn-full{width:100%;display:block;text-align:center}.project-status-badge{display:inline-flex;align-items:center;gap:6px;font-family:'Share Tech Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:3px 10px;border-radius:2px;margin-bottom:8px;width:fit-content}.project-status-badge .status-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.status-live{background:rgba(39,201,63,.1);border:1px solid rgba(39,201,63,.4);color:#27c93f}.status-live .status-dot{background:#27c93f;box-shadow:0 0 6px #27c93f;animation:pulse-green 1.8s infinite}@keyframes pulse-green{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:.5}}.status-wip{background:rgba(255,189,46,.1);border:1px solid rgba(255,189,46,.4);color:#ffbd2e}.status-wip .status-dot{background:#ffbd2e;animation:pulse-amber 2s infinite}@keyframes pulse-amber{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.6);opacity:.4}}.status-soon{background:rgba(136,136,136,.08);border:1px solid rgba(136,136,136,.3);color:var(--text-muted)}.status-soon .status-dot{background:var(--text-muted)}.project-card-wide{grid-column:1/-1}.project-card-wide .project-preview-area{height:auto;min-height:120px}.btn-disabled,.btn-ghost.btn-disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.projects-view-all{text-align:center;margin-top:24px}.view-all-link{font-family:'Share Tech Mono',monospace;font-size:13px;color:var(--accent);border:1px solid var(--accent);padding:10px 28px;letter-spacing:.15em;text-transform:uppercase;display:inline-block;transition:all .15s ease}.view-all-link:hover{background:var(--accent);color:var(--text-primary)}.contact-section{padding:100px 0;text-align:center}.contact-heading{font-family:'Share Tech Mono',monospace;font-size:32px;color:var(--text-primary);letter-spacing:.05em;margin-bottom:24px}.contact-subtext{font-size:16px;color:var(--text-body);line-height:1.6;max-width:600px;margin:0 auto 40px auto}.contact-btn-wrap{display:flex;justify-content:center;gap:16px;margin-bottom:60px}.contact-btn-wrap .btn-ghost,.contact-btn-wrap .btn-primary{min-width:160px}.contact-divider{border:none;border-top:1px solid var(--border);margin:40px 0}.social-row{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;margin-bottom:24px;font-family:'Share Tech Mono',monospace;font-size:13px}.social-link{color:var(--text-muted);transition:color .15s ease;letter-spacing:.05em}.social-link:hover{color:var(--text-primary)}.social-link .social-bracket{color:var(--accent)}.system-status{font-family:'Share Tech Mono',monospace;font-size:12px;color:var(--text-muted);margin-bottom:16px;letter-spacing:.05em}.system-status .status-op{color:var(--accent)}.footer-copy{font-family:'Share Tech Mono',monospace;font-size:12px;color:var(--text-muted);letter-spacing:.05em}.cursor::after{content:'|';color:var(--accent);animation:blink .8s step-end infinite}@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}.page-header{padding:80px 0 40px}.projects-full-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}.games-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}.game-preview{background:var(--surface-alt);height:180px;display:flex;align-items:center;justify-content:center;font-size:40px;border-bottom:1px solid var(--border)}.game-body{padding:18px 20px}.game-title{font-family:'Share Tech Mono',monospace;font-size:14px;color:var(--text-primary);margin-bottom:8px}.game-status{font-size:12px;color:var(--text-muted);margin-bottom:14px}.btn-play{display:inline-block;width:100%;text-align:center;background:0 0;border:1px solid var(--accent);color:var(--accent);font-family:'Share Tech Mono',monospace;font-weight:700;font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:10px;cursor:pointer;transition:all .15s ease}.btn-play:hover{background:var(--accent);color:var(--text-primary)}.page-header{padding:60px 0 20px;text-align:center}.section-label-cmd{font-family:'Share Tech Mono',monospace;font-size:1.2rem;color:var(--text-primary);margin-bottom:40px}.cmd-prefix{color:var(--accent)}.filter-bar{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:48px}.filter-btn{font-family:'Share Tech Mono',monospace;font-size:12px;color:var(--text-muted);border:1px solid var(--border);background:0 0;padding:6px 16px;cursor:pointer;letter-spacing:.1em;text-transform:uppercase;transition:all .15s ease}.filter-btn.active,.filter-btn:hover{border-color:var(--accent);color:var(--accent)}.back-to-top{position:fixed;bottom:28px;right:28px;width:44px;height:44px;background:var(--accent);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-primary);opacity:0;pointer-events:none;transition:opacity .2s ease,transform .15s ease;z-index:999}.back-to-top.visible{opacity:1;pointer-events:all}.back-to-top:hover{transform:translateY(-2px)}@media (max-width:768px){.nav-menu{display:none;position:absolute;top:60px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--border);flex-direction:column;gap:0;padding:8px 0;z-index:999}.nav-menu.open{display:flex}.nav-link{padding:12px 24px;border-bottom:1px solid var(--border);width:100%}.hamburger{display:flex}.hero{padding:80px 20px 60px}.hero-name{font-size:24px}.hero-subtitle{font-size:14px}.hero-portfolio-text{letter-spacing:.08em}.timeline::before{left:12px}.timeline-item:nth-child(2n),.timeline-item:nth-child(odd){justify-content:flex-start;padding-left:36px;padding-right:0}.timeline-marker{left:12px;top:16px}.projects-grid{grid-template-columns:1fr}.projects-full-grid{grid-template-columns:1fr}.games-grid{grid-template-columns:1fr}.about-buttons{flex-direction:column}.social-row{gap:18px}.container{padding:0 16px}section{padding:60px 0}}@media (max-width:480px){.hero-name{font-size:20px}.contact-heading{font-size:20px}}.text-accent{color:var(--accent)}.text-muted{color:var(--text-muted)}.text-primary{color:var(--text-primary)}.monospace{font-family:'Share Tech Mono',monospace}.availability-badge,.back-to-top,.btn-ghost,.btn-primary,.node-content,.project-card,.skill-pill,.view-all-link{will-change:transform}.navbar{will-change:background;backdrop-filter:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}@media (max-width:900px){.projects-grid{grid-template-columns:1fr}.project-card-wide{grid-column:auto}}@media (max-width:768px){.project-btn-wrap{flex-direction:column}.project-btn-wrap .btn-ghost,.project-btn-wrap .btn-primary{width:100%;text-align:center}.project-status-badge{font-size:9px}.timeline-schematic{padding:40px 0}.contact-btn-wrap{flex-direction:column;align-items:center}.contact-btn-wrap .btn-ghost,.contact-btn-wrap .btn-primary{width:100%;max-width:320px;text-align:center}}@media (max-width:480px){.hero-name{font-size:20px}.contact-heading{font-size:20px}.skills-cloud{gap:10px}.skill-pill{font-size:12px;padding:6px 14px}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important}html{scroll-behavior:auto}}