.nolmedo-root,.nolmedo-root[data-theme=default],.theme-swatch[data-theme=default]{--green: #39ff14;--cyan: #00e5ff;--purple: #b44aff;--amber: #ffb020;--bg: #060610;--text: #e8e8f0;--muted: #8888aa}.nolmedo-root[data-theme=cyberpunk],.theme-swatch[data-theme=cyberpunk]{--green: #ffe600;--cyan: #00f0ff;--purple: #ff0055;--amber: #ff8a00;--bg: #0b020f;--text: #f0f0f5;--muted: #9f8aa6}.nolmedo-root[data-theme=matrix],.theme-swatch[data-theme=matrix]{--green: #00ff66;--cyan: #33ff33;--purple: #008f11;--amber: #ccff00;--bg: #020802;--text: #e0ffe0;--muted: #5e8f5e}.nolmedo-root[data-theme=synthwave],.theme-swatch[data-theme=synthwave]{--green: #ff6c00;--cyan: #ff007c;--purple: #7000ff;--amber: #ffe600;--bg: #0c0117;--text: #ffe0f5;--muted: #a684ab}.nolmedo-root[data-theme=glacier],.theme-swatch[data-theme=glacier]{--green: #ffffff;--cyan: #00d4ff;--purple: #0066ff;--amber: #ffd166;--bg: #020b14;--text: #e1f5fe;--muted: #648da4}.nolmedo-root{--font-sans: Arial, Helvetica, sans-serif;--font-mono: Consolas, "Courier New", monospace}.nolmedo-root,.glass-panel,.btn-primary,.btn-secondary,.nav-link,.timeline-card,.tech-chip,.project-card,.section-title,.section-title-line{transition:background-color .6s ease,border-color .6s ease,color .6s ease,stroke .6s ease,box-shadow .6s ease}.scroll-progress-bar{position:fixed;top:0;left:0;width:100%;transform-origin:0 50%;transform:scaleX(var(--scroll-progress, 0));height:4px;background:linear-gradient(90deg,var(--cyan),var(--purple),var(--green));z-index:1000;opacity:.55;box-shadow:0 0 8px color-mix(in srgb,var(--cyan) 35%,transparent);mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent);pointer-events:none}.nolmedo-root,.nolmedo-root *,.nolmedo-root *:before,.nolmedo-root *:after{box-sizing:border-box;margin:0;padding:0}.nolmedo-root{font-family:var(--font-sans);color:var(--text);background:var(--bg);min-height:100vh;overflow-x:hidden;position:relative;line-height:1.6}.glass-panel{background:#ffffff0a;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.07);border-radius:14px;position:relative;box-shadow:inset 0 1px #ffffff12,0 4px 24px #00000040;overflow:hidden}.glass-panel:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(350px circle at var(--mouse-x, 0px) var(--mouse-y, 0px),color-mix(in srgb,var(--cyan) 9%,transparent),color-mix(in srgb,var(--purple) 3%,transparent) 40%,transparent 80%);z-index:0;pointer-events:none;opacity:0;transition:opacity .5s ease}.glass-panel:hover:before{opacity:1}.glass-panel>*{position:relative;z-index:1}.glass-panel:hover{border-color:#ffffff21;box-shadow:inset 0 1px #ffffff1a,0 8px 40px #0006}.section{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:80px 24px 40px}.section-fallback{min-height:60vh}.section-title-wrap{display:flex;align-items:center;gap:20px;margin-bottom:48px}.section-title-line{flex:1;height:1px}.section-title{font-family:var(--font-mono);font-size:14px;font-weight:500;letter-spacing:3px;text-transform:uppercase;white-space:nowrap}.btn-primary{font-family:var(--font-sans);font-size:14px;font-weight:600;padding:12px 32px;border-radius:10px;border:1.5px solid var(--green);color:var(--green);background:color-mix(in srgb,var(--green) 6%,transparent);cursor:pointer;transition:background-color .6s,border-color .6s,color .6s,box-shadow .6s;letter-spacing:.5px;position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn-primary:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--green) 12%,transparent),transparent);transform:translate(-100%);transition:transform .45s ease}.btn-primary:hover{background:color-mix(in srgb,var(--green) 13%,transparent);box-shadow:0 0 24px color-mix(in srgb,var(--green) 18%,transparent)}.btn-primary:hover:after{transform:translate(100%)}.btn-secondary{font-family:var(--font-sans);font-size:14px;font-weight:500;padding:12px 32px;border-radius:10px;border:1px solid rgba(255,255,255,.12);color:var(--text);background:#ffffff0a;cursor:pointer;transition:background-color .6s,border-color .6s,color .6s,box-shadow .6s;letter-spacing:.5px;position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.btn-secondary:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent);transform:translate(-100%);transition:transform .45s ease}.btn-secondary:hover{background:#ffffff14;border-color:#fff3}.btn-secondary:hover:after{transform:translate(100%)}.footer{position:relative;z-index:1;text-align:center;padding:48px 0 24px;font-size:12px;color:var(--muted);letter-spacing:.5px}a{color:inherit;text-decoration:none}.nolmedo-root :is(a,button):focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link:focus{position:fixed;top:12px;left:12px;width:auto;height:auto;margin:0;padding:10px 16px;overflow:visible;clip:auto;white-space:normal;background:var(--bg);color:var(--text);border-radius:8px;z-index:1001}@media(prefers-reduced-motion:reduce){.nolmedo-root .reveal{opacity:1;transform:none;transition:none}.nolmedo-root .hero-content{animation:none;transform:none}.nolmedo-root .hero-title:after,.nolmedo-root .timeline-node,.nolmedo-root .cyber-grid:after{animation:none}.nolmedo-root :is(.glass-panel,.project-card,.tech-chip,.timeline-card,.about-card,.education-card,.btn-primary,.btn-secondary){transition:none}.nolmedo-root :is(.project-card,.tech-chip,.timeline-card,.about-card,.education-card,.tech-category-label,.mute-toggle):hover{transform:none}.nolmedo-root .hero-corner-svg *,.nolmedo-root .bcard-svg *{transition:none}}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s cubic-bezier(.16,1,.3,1)}.reveal.revealed{opacity:1;transform:translateY(0)}.cyber-grid{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:hidden;perspective:1000px}@media(max-width:768px){.cyber-grid:before{content:"";position:absolute;top:0;left:-50%;width:200%;height:200%;background-image:linear-gradient(to right,color-mix(in srgb,var(--cyan) 12%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--cyan) 12%,transparent) 1px,transparent 1px);background-size:45px 45px;background-position:center top;transform:rotateX(75deg);transform-origin:top center;mask-image:linear-gradient(to top,#0000000d,#000000e6 70%);-webkit-mask-image:linear-gradient(to top,rgba(0,0,0,.05) 0%,rgba(0,0,0,.9) 70%);opacity:.05}.cyber-grid:after{content:"";position:absolute;top:50%;left:50%;width:280px;height:280px;background:radial-gradient(circle,color-mix(in srgb,var(--cyan) 20%,transparent) 0%,color-mix(in srgb,var(--purple) 10%,transparent) 50%,transparent 80%);filter:blur(60px);transform:translate(-50%,-50%);pointer-events:none;z-index:-1;animation:mobileAmbientGlow 12s ease-in-out infinite alternate}}@keyframes mobileAmbientGlow{0%{transform:translate(-50%,-50%) scale(.9);opacity:.7}50%{transform:translate(-52%,-48%) scale(1.15);opacity:1}to{transform:translate(-48%,-52%) scale(.95);opacity:.85}}.pcb-bg{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.scan-line{position:fixed;top:0;left:0;width:100%;height:220px;background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--cyan) 3%,transparent),transparent);pointer-events:none;z-index:0;animation:scanDown 14s linear infinite}.scan-line-active{animation:scanDown 2.5s cubic-bezier(.25,1,.5,1) infinite;background:linear-gradient(to bottom,transparent,color-mix(in srgb,var(--cyan) 15%,transparent),transparent);height:350px}@keyframes scanDown{0%{transform:translateY(-350px)}to{transform:translateY(100vh)}}@media(prefers-reduced-motion:reduce){.scan-line{animation:none;opacity:0}}.navbar{position:fixed;top:0;left:0;right:0;z-index:100;padding:12px 24px;border-bottom:1px solid transparent;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transition:background-color .35s ease,border-color .35s ease}.navbar-scrolled{background:color-mix(in srgb,var(--bg) 75%,transparent);border-bottom-color:#ffffff0f}.navbar-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.nav-logo{font-family:var(--font-mono);font-size:18px;font-weight:600;color:var(--text);background:none;border:none;cursor:pointer;letter-spacing:.5px}.nav-links{display:flex;gap:8px}.nav-link{font-family:var(--font-sans);font-size:14px;font-weight:400;color:var(--muted);background:none;border:none;cursor:pointer;padding:6px 14px;border-radius:8px;transition:background-color .6s,border-color .6s,color .6s,box-shadow .6s;letter-spacing:.3px}.nav-link:hover{color:var(--text);background:#ffffff0f}.nav-link-active{color:var(--green);background:color-mix(in srgb,var(--green) 9%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--green) 18%,transparent)}.theme-picker{position:relative}.theme-picker-trigger{display:flex;align-items:center;justify-content:center;gap:6px;min-width:44px;height:44px;padding:0 6px;background:none;border:none;color:var(--muted);cursor:pointer}.theme-swatch{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:conic-gradient(var(--cyan) 0 120deg,var(--purple) 120deg 240deg,var(--green) 240deg 360deg);border:2px solid color-mix(in srgb,var(--text) 30%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--bg) 50%,transparent);transition:box-shadow .25s,transform .25s}.theme-picker-trigger:hover .theme-swatch{transform:scale(1.15)}.theme-picker-chevron{width:6px;height:6px;margin-bottom:3px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .18s ease,margin-bottom .18s ease}.theme-picker-trigger[aria-expanded=true] .theme-picker-chevron{margin-bottom:-3px;transform:rotate(-135deg)}.nolmedo-root .theme-picker-trigger:focus-visible{outline:2px solid var(--green);outline-offset:-4px;border-radius:8px}.theme-picker-list{position:absolute;top:calc(100% + 4px);right:0;z-index:10;min-width:180px;margin:0;padding:6px;list-style:none;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:12px;opacity:0;transform:translateY(-6px);visibility:hidden;transition:opacity .18s cubic-bezier(.3,0,1,1),transform .18s cubic-bezier(.3,0,1,1),visibility 0s linear .18s}.theme-picker-list-open{opacity:1;transform:none;visibility:visible;transition:opacity .18s cubic-bezier(.2,0,0,1),transform .18s cubic-bezier(.2,0,0,1),visibility 0s}.theme-picker-list:focus{outline:none}.theme-picker-option{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;font-family:var(--font-sans);font-size:13px;color:var(--text);cursor:pointer;white-space:nowrap}.theme-picker-option:hover,.theme-picker-option-active{background:color-mix(in srgb,var(--cyan) 10%,transparent)}.theme-picker-option[aria-selected=true] .theme-swatch{box-shadow:0 0 0 2px var(--green),inset 0 0 0 1px color-mix(in srgb,var(--bg) 50%,transparent)}@media(prefers-reduced-motion:reduce){.theme-swatch,.theme-picker-chevron,.theme-picker-list{transition:none}.theme-picker-trigger:hover .theme-swatch{transform:none}}.mobile-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;min-width:44px;min-height:44px;align-items:center;justify-content:center}.mobile-toggle span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px}@media(max-width:768px){.nav-links{display:none;position:absolute;top:54px;right:16px;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px;flex-direction:column}.nav-links-open{display:flex}.nav-link{padding:12px 16px}.mobile-toggle{display:flex}.theme-picker-desktop{display:none}.theme-picker-mobile{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}.theme-picker-mobile .theme-picker-trigger{width:100%}.theme-picker-mobile .theme-picker-list{position:static;display:none;width:100%;min-width:0;margin-top:8px;transform:none}.theme-picker-mobile .theme-picker-list-open{display:block}}@media(min-width:769px){.nav-links{margin-left:auto}.nav-right{margin-left:16px}.theme-picker-mobile{display:none}}.nav-right{display:flex;align-items:center;gap:12px}.mute-toggle{display:flex;align-items:center;justify-content:center;background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:var(--muted);cursor:pointer;padding:8px;border-radius:50%;width:38px;height:38px;min-width:44px;min-height:44px;transition:color .35s cubic-bezier(.16,1,.3,1),background-color .35s cubic-bezier(.16,1,.3,1),border-color .35s cubic-bezier(.16,1,.3,1),box-shadow .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 1px #ffffff0d}.mute-toggle:hover{color:var(--text);background:#ffffff14;border-color:#fff3;transform:scale(1.05)}.mute-toggle.sound-active{color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 30%,transparent);background:color-mix(in srgb,var(--cyan) 8%,transparent);box-shadow:0 0 12px color-mix(in srgb,var(--cyan) 20%,transparent)}.mute-toggle.sound-active:hover{color:var(--green);border-color:color-mix(in srgb,var(--green) 40%,transparent);background:color-mix(in srgb,var(--green) 12%,transparent);box-shadow:0 0 16px color-mix(in srgb,var(--green) 30%,transparent)}.mute-icon{width:18px;height:18px;transition:transform .3s ease}.mute-toggle:active .mute-icon{transform:scale(.85)}.hero-section{position:relative;z-index:1;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:100px 24px 60px}.hero-section:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--cyan) 6%,transparent) 0%,color-mix(in srgb,var(--purple) 4%,transparent) 40%,transparent 70%);pointer-events:none}.hero-content{animation:heroSlideIn .8s cubic-bezier(.16,1,.3,1) both}@keyframes heroSlideIn{0%{transform:translateY(30px)}to{transform:translateY(0)}}.hero-panel{padding:60px 56px;max-width:680px;text-align:center;position:relative;overflow:hidden}.hero-corner-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero-corner-svg path,.hero-corner-svg circle{transition:stroke .6s,fill .6s}.hero-greeting{font-size:15px;color:var(--muted);letter-spacing:2px;text-transform:uppercase;margin-bottom:12px;font-weight:400}.hero-name{font-family:var(--font-sans);font-size:clamp(36px,6vw,56px);font-weight:800;letter-spacing:4px;color:#fff;line-height:1.1;margin-bottom:12px;text-shadow:0 0 80px rgba(255,255,255,.12),0 2px 4px rgba(0,0,0,.5)}.hero-title{font-family:var(--font-mono);font-size:clamp(11px,1.8vw,15px);font-weight:500;color:var(--green);letter-spacing:3px;margin-bottom:20px}.hero-title:after{content:"_";animation:heroCursorBlink 1.1s step-end infinite;margin-left:1px}@keyframes heroCursorBlink{0%,to{opacity:1}50%{opacity:0}}.hero-tagline{font-size:15px;color:var(--muted);margin-bottom:36px;line-height:1.7}.hero-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}@media(max-width:768px){.hero-panel{padding:40px 28px}}
