:root{--bg-dark:#09090b;--text-primary:#fafafa;--text-secondary:#a1a1aa;--accent-primary:rgb(255, 255, 255);--accent-secondary:rgb(255 229 61);--nav-bg:rgba(9, 9, 11, 0.9);--font-heading:'Inter',sans-serif;--font-body:'Inter',sans-serif;--font-mono:'JetBrains Mono',monospace;--border-subtle:#27272a;--hover-bg:#18181b;--code-text:#b0c4b0;--code-keyword:rgb(204, 120, 50);--code-variable:rgb(152, 118, 170);--code-property:rgb(232, 191, 106);--code-string:rgb(106, 135, 89)}[data-theme=light]{--bg-dark:#ffffff;--text-primary:#0f172a;--text-secondary:#64748b;--accent-primary:#0f766e;--accent-secondary:#0f766e;--nav-bg:rgba(255, 255, 255, 0.9);--border-subtle:#e2e8f0;--hover-bg:#f8fafc;--code-text:#334155;--code-keyword:#059669;--code-variable:#0284c7;--code-property:#0d9488;--code-string:#65a30d}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:var(--bg-dark);color:var(--text-primary);font-family:var(--font-body);line-height:1.6;overflow-x:hidden;position:relative;transition:background-color .3s ease,color .3s ease;background-image:radial-gradient(var(--border-subtle) 1px,transparent 1px);background-size:24px 24px}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--text-primary);transition:color .3s ease}.split-layout{display:flex;max-width:1400px;margin:0 auto;min-height:100vh}.left-panel{width:40%;padding:4rem 2rem 4rem 4rem;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.left-content{display:flex;flex-direction:column;height:100%}.hero-intro{margin-bottom:2rem}.greeting{color:var(--accent-secondary);font-family:var(--font-mono);font-size:1.1rem;margin-bottom:.5rem;display:block}.name-status-wrapper{display:flex;align-items:center;gap:1rem;margin-bottom:.8rem}.name{font-size:3.5rem;line-height:1.1;font-weight:800}.status-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:help;padding:3px}.status-dot{width:10px;height:10px;background-color:#22c55e;border-radius:50%;position:relative}.status-dot::after{content:'';position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;background-color:#22c55e;animation:pulse 2s infinite;z-index:-1}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.6}100%{transform:translate(-50%,-50%) scale(3);opacity:0}}.status-badge[data-tooltip]::after{content:attr(data-tooltip);position:absolute;bottom:120%;left:50%;transform:translateX(-50%) translateY(10px);background:var(--nav-bg);color:var(--text-primary);padding:.5rem .8rem;border-radius:6px;border:1px solid var(--border-subtle);font-size:.75rem;font-family:var(--font-body);font-weight:500;white-space:normal;text-align:center;width:max-content;max-width:200px;opacity:0;visibility:hidden;transition:opacity .3s ease,transform .3s ease;z-index:10;box-shadow:0 4px 12px rgba(0,0,0,.15);pointer-events:none}.status-badge[data-tooltip]:hover::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.status-badge[data-tooltip]:active::after,.status-badge[data-tooltip]:focus-visible::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.title{font-size:1.5rem;color:var(--text-secondary);margin-bottom:1.2rem;font-weight:600}.summary{font-size:1.05rem;color:var(--text-secondary);max-width:400px}.sidebar-nav{margin-top:3rem;flex-grow:1}.sidebar-nav .nav-links{list-style:none;display:flex;flex-direction:column;gap:1.2rem}.sidebar-nav a{display:flex;align-items:center;color:var(--text-secondary);text-decoration:none;font-weight:600;font-size:.95rem;transition:color .3s ease;text-transform:uppercase;letter-spacing:1px}.nav-line{display:inline-block;width:2rem;height:1px;background-color:var(--text-secondary);margin-right:1rem;transition:width .3s ease,background-color .3s ease}.sidebar-nav a.active,.sidebar-nav a:hover{color:var(--text-primary)}.sidebar-nav a.active .nav-line,.sidebar-nav a:hover .nav-line{width:4rem;background-color:var(--text-primary)}.left-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.contact-links{display:flex;gap:1.5rem}.contact-links a:not(.btn){color:var(--text-secondary);transition:color .3s ease}.contact-links a:not(.btn):hover{color:var(--text-primary)}.icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center}.icon-btn[data-tooltip]::after{content:attr(data-tooltip);position:absolute;bottom:120%;left:50%;transform:translateX(-50%) translateY(10px);background:var(--nav-bg);color:var(--text-primary);padding:.5rem .8rem;border-radius:6px;border:1px solid var(--border-subtle);font-size:.75rem;font-family:var(--font-body);font-weight:500;white-space:normal;text-align:center;width:max-content;max-width:200px;opacity:0;visibility:hidden;transition:opacity .3s ease,transform .3s ease;z-index:10;box-shadow:0 4px 12px rgba(0,0,0,.15);pointer-events:none}.icon-btn[data-tooltip]:hover::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.icon-btn[data-tooltip]:active::after,.icon-btn[data-tooltip]:focus-visible::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}.theme-btn{background:0 0;border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.4rem;border-radius:50%;transition:all .3s ease}.theme-btn:hover{color:var(--accent-primary);background:var(--glass-border)}.icon-moon,.icon-sun,.icon-system{transition:transform .3s ease}.theme-btn:hover svg{transform:scale(1.1)}.right-panel{width:60%;padding:4rem 4rem 4rem 2rem}.glass-card{background:0 0;border:1px solid transparent;border-radius:12px;padding:2rem;transition:background .3s ease,border-color .3s ease}.glass-card:hover{background:var(--hover-bg);border-color:var(--border-subtle)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1.8rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .3s ease;cursor:pointer;font-family:var(--font-heading)}.btn-primary{background:0 0;color:var(--accent-primary);border:1px solid var(--accent-primary)}.btn-primary:hover{background:var(--accent-primary);color:var(--bg-dark)}.btn-secondary{background:0 0;color:var(--text-primary);border:1px solid var(--border-subtle)}.btn-secondary:hover{border-color:var(--text-primary)}.section{padding-bottom:6rem}.section-header{display:block;margin-bottom:2rem}.section-header h2{font-size:1.5rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--text-primary)}.section-header .line{display:none}.code-window{background:var(--hover-bg);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden;width:100%;max-width:450px;box-shadow:0 10px 30px rgba(0,0,0,.2);transition:transform .5s ease}.window-header{background:var(--border-subtle);padding:8px 12px;display:flex;gap:8px;border-bottom:1px solid var(--border-subtle)}.dot{width:12px;height:12px;border-radius:50%}.dot.red{background:#ff5f56}.dot.yellow{background:#ffbd2e}.dot.green{background:#27c93f}.code-window pre{padding:1.5rem;font-family:var(--font-heading);font-size:.95rem;overflow-x:auto;color:var(--code-text)}.keyword{color:var(--code-keyword)}.variable{color:var(--code-variable)}.property{color:var(--code-property)}.string{color:var(--code-string)}.timeline{position:relative;padding-left:2rem}.timeline::before{content:'';position:absolute;left:0;top:0;bottom:0;width:1px;background:var(--border-subtle)}.timeline-item{position:relative;margin-bottom:3rem}.timeline-item:last-child{margin-bottom:0}.timeline-dot{position:absolute;left:-2.3rem;top:1.5rem;width:12px;height:12px;border-radius:50%;background:var(--bg-dark);border:2px solid var(--accent-primary)}.timeline-header{margin-bottom:1rem}.timeline-header h3{font-size:1.4rem;color:var(--text-primary);margin-bottom:.2rem;transition:color .3s ease}.company-info{display:flex;align-items:center;gap:.5rem;margin-bottom:.2rem;flex-wrap:wrap}.company-name{color:var(--accent-secondary);font-weight:500;font-family:var(--font-heading);display:inline-flex;align-items:center;text-decoration:none}.company-tooltip-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;border:none;background:0 0;padding:0;color:var(--text-secondary);cursor:pointer}.company-tooltip-trigger svg{color:var(--text-secondary);transition:color .3s ease}.company-tooltip-trigger.is-open svg,.company-tooltip-trigger:focus-visible svg,.company-tooltip-trigger:hover svg{color:var(--accent-secondary)}.company-tooltip-trigger[data-tooltip]::after{content:attr(data-tooltip);position:absolute;bottom:150%;left:50%;transform:translateX(-50%) translateY(10px);background:var(--nav-bg);color:var(--text-primary);padding:.6rem 1rem;border-radius:8px;border:1px solid var(--border-subtle);font-size:.85rem;font-family:var(--font-body);font-weight:400;white-space:normal;width:max-content;max-width:280px;text-align:center;opacity:0;visibility:hidden;transition:opacity .3s ease,transform .3s ease;z-index:10;box-shadow:0 4px 12px rgba(0,0,0,.15);pointer-events:none}.company-tooltip-trigger.is-open::after,.company-tooltip-trigger[data-tooltip]:focus-visible::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}@media (hover:hover) and (pointer:fine){.company-tooltip-trigger[data-tooltip]:hover::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}}.company-location{color:var(--text-secondary);font-size:.85rem;position:relative;padding-left:.8rem}.company-location::before{content:'•';position:absolute;left:0;color:var(--text-secondary)}.date{font-family:var(--font-mono);font-size:.85rem;color:var(--text-secondary)}.role-group{margin-top:1.5rem;display:flex;flex-direction:column;gap:2rem;position:relative}.role-group::before{content:'';position:absolute;left:4px;top:1.5rem;bottom:1.5rem;width:2px;background:var(--glass-border)}.role-item{position:relative;padding-left:2rem}.role-item::before{content:'';position:absolute;left:1px;top:.4rem;width:8px;height:8px;border-radius:50%;background:var(--text-secondary)}.role-header{margin-bottom:.8rem}.role-header h4{font-size:1.15rem;color:var(--text-primary);margin-bottom:.2rem;font-weight:600}.role-date{font-size:.85rem;color:var(--text-secondary);display:block;margin-bottom:.5rem}.role-description{color:var(--text-secondary);line-height:1.7}.tags{display:flex;flex-wrap:wrap;gap:.8rem}.tag{background:0 0;border:1px solid var(--border-subtle);padding:.3rem .8rem;border-radius:99px;font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary);transition:all .2s}.tag:hover{background:var(--hover-bg);border-color:var(--accent-primary);color:var(--accent-primary)}.tag.small{font-size:.7rem;padding:.2rem .6rem}.project-card h3{font-size:1.5rem;margin-bottom:1rem}.project-tags{margin-bottom:1rem}.project-card p{color:var(--text-secondary);margin-bottom:1.5rem}.project-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent-primary);text-decoration:none;font-weight:600}.project-link:hover{text-decoration:underline}.contact-card{text-align:center;max-width:600px;margin:0 auto;padding:4rem 2rem}.contact-card h2{font-size:2.5rem;margin-bottom:1.5rem}.contact-card p{color:var(--text-secondary);margin-bottom:2rem}.contact-links{display:flex;justify-content:center;gap:1rem}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.fade-in.appear{opacity:1;transform:translateY(0)}@media (max-width:1024px){.split-layout{flex-direction:column;min-height:auto}.left-panel{width:100%;height:auto;position:static;padding:3rem 2.25rem 2rem 2.25rem;border-bottom:1px solid var(--border-subtle)}.right-panel{width:100%;padding:2.5rem 2.25rem 3.5rem 2.25rem}.name{font-size:clamp(2.5rem, 6.5vw, 3.2rem)}.title{font-size:1.35rem}.code-window{max-width:100%}.sidebar-nav{margin-top:2rem}.sidebar-nav .nav-links{flex-direction:row;flex-wrap:wrap;gap:.75rem}.sidebar-nav a{padding:.4rem .8rem;border:1px solid var(--border-subtle);border-radius:999px;font-size:.78rem;letter-spacing:.6px}.nav-line{display:none}.sidebar-nav a.active{border-color:var(--text-primary);background:var(--hover-bg)}.left-footer{margin-top:2rem;justify-content:flex-start;gap:1rem}.timeline{padding-left:1.5rem}.timeline-dot{left:-1.8rem}}@media (max-width:768px){.left-panel{padding:2.25rem 1.5rem 1.5rem 1.5rem}.right-panel{padding:1.75rem 1.5rem 2.5rem 1.5rem}.hero-intro{margin-bottom:1.25rem}.greeting{font-size:.95rem}.name-status-wrapper{align-items:flex-start;gap:.6rem}.name{font-size:clamp(2.1rem, 9vw, 2.8rem)}.title{font-size:1.1rem}.sidebar-nav{display:none}.left-footer{margin-top:1.25rem}.section{padding-bottom:4rem}.section-header h2{font-size:1.2rem}.glass-card{padding:1.2rem;border-color:var(--border-subtle);background:var(--hover-bg)}.timeline{padding-left:0}.role-group::before,.role-item::before,.timeline-dot,.timeline::before{display:none}.timeline-item{margin-bottom:1.5rem}.timeline-header h3{font-size:1.15rem}.date{display:block;margin-top:.35rem;font-size:.78rem}.role-group{margin-top:1rem;gap:1.25rem}.role-item{padding-left:0}.role-header h4{font-size:1rem}.role-description{font-size:.95rem;line-height:1.65}.project-card h3{font-size:1.25rem}.code-window pre{padding:1rem;font-size:.82rem;white-space:pre-wrap;word-break:break-word}.contact-card{padding:2.25rem 1.25rem}.contact-card h2{font-size:2rem}.contact-card p{margin-bottom:1.5rem}.contact-card .contact-links{flex-wrap:wrap}.company-tooltip-trigger[data-tooltip]::after,.icon-btn[data-tooltip]::after,.status-badge[data-tooltip]::after{left:0;transform:translateX(0) translateY(10px);text-align:left;max-width:min(260px,calc(100vw - 2rem));white-space:normal}.status-badge[data-tooltip]::after{left:auto;right:0;transform:translateY(10px)}.company-tooltip-trigger.is-open::after,.company-tooltip-trigger[data-tooltip]:focus-visible::after,.icon-btn[data-tooltip]:hover::after,.status-badge[data-tooltip]:focus-visible::after,.status-badge[data-tooltip]:hover::after{transform:translateX(0) translateY(0)}}@media (max-width:480px){.left-panel{padding:2rem 1rem 1.25rem 1rem}.right-panel{padding:1.25rem 1rem 2rem 1rem}.name{font-size:2rem}.title{font-size:1rem}.company-info{flex-direction:row;align-items:center;flex-wrap:wrap;gap:.35rem}.company-location{padding-left:0;flex-basis:100%;margin-top:.1rem}.company-location::before{display:none}.tag{font-size:.74rem}.contact-card .contact-links{flex-direction:column;gap:.8rem}.contact-card .btn{width:100%}.company-tooltip-trigger[data-tooltip]::after,.icon-btn[data-tooltip]::after,.status-badge[data-tooltip]::after{max-width:min(220px,calc(100vw - 2rem));font-size:.72rem;padding:.45rem .65rem}.status-badge[data-tooltip]::after{max-width:min(180px,calc(100vw - 1.5rem));right:-.25rem}}