.theme-toggle{background:var(--bg-card);border:1px solid var(--border);color:var(--accent);font-family:var(--font-mono);letter-spacing:.05em;cursor:pointer;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex;position:relative;overflow:hidden}.theme-toggle:hover{border-color:var(--accent);box-shadow:0 0 10px var(--glow)}.theme-toggle:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px;border-color:var(--accent)}.theme-toggle:focus:not(:focus-visible){outline:none}.theme-toggle:active{transform:scale(.98)}.theme-toggle__icon{font-size:1rem}.theme-toggle__label{text-transform:uppercase}.theme-toggle__cursor{animation:1s step-end infinite cursorBlink}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}@media (prefers-reduced-motion:reduce){.theme-toggle__cursor{animation:none}}[data-dark=true] .theme-toggle:hover:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#00ff4108 0 1px,#0000 1px 2px);position:absolute;inset:0}
.nav{border-top:1px dashed var(--border);margin-top:1.5rem;padding-top:1rem;animation:.6s ease-out .5s both fadeInUp}.nav__list{flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.nav__item{margin:0}.nav__link{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border:1px solid var(--border);padding:.35rem .75rem;font-size:.7rem;text-decoration:none;transition:all .2s;display:inline-block}.nav__link:hover,.nav__link:focus{color:var(--accent);border-color:var(--accent);box-shadow:0 0 8px var(--glow);outline:none}.nav__link:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}@media (max-width:768px){.nav__list{gap:.4rem}.nav__link{padding:.3rem .5rem;font-size:.65rem}}
.header{text-align:center;border-bottom:1px solid var(--border);padding:3rem 0 2rem;position:relative}.header:before{content:"> SYSTEM.RESUME.LOAD()";color:var(--text-muted);font-size:.7rem;font-family:var(--font-mono);letter-spacing:.1em;position:absolute;top:0;left:0}.header__actions{position:absolute;top:0;right:0}.header__name{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);text-shadow:var(--text-shadow);margin-bottom:.5rem;font-size:clamp(2rem,6vw,3rem);font-weight:700;animation:.6s ease-out fadeInUp}.header__title{color:var(--accent);letter-spacing:.05em;margin-bottom:1rem;font-size:1rem;font-weight:400;animation:.6s ease-out .1s both fadeInUp}.header__title:before{content:"// ";color:var(--text-muted)}.header__location{color:var(--text-muted);align-items:center;gap:.5rem;font-size:.85rem;animation:.6s ease-out .2s both fadeInUp;display:inline-flex}.header__location svg{width:14px;height:14px;stroke:var(--accent)}.tags{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1.5rem;padding:0;animation:.6s ease-out .3s both fadeInUp;display:flex}.tag{font-size:.75rem;font-weight:500;font-family:var(--font-mono);letter-spacing:.02em;border:1px solid var(--border);color:var(--text-secondary);background:0 0;padding:.3rem .7rem;list-style:none;transition:all .2s}.tag:hover,.tag:focus{border-color:var(--accent);box-shadow:0 0 8px var(--glow)}.tag:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}.tag--highlight{background:var(--accent);color:var(--bg-primary);border-color:var(--accent);font-weight:600}.tag--highlight:hover{background:var(--accent-secondary);border-color:var(--accent-secondary);color:var(--bg-primary)}.contact-links{justify-content:center;gap:1rem;margin-top:1.5rem;animation:.6s ease-out .4s both fadeInUp;display:flex}.contact-link{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);font-size:.8rem;font-family:var(--font-mono);align-items:center;gap:.5rem;padding:.5rem 1rem;transition:all .2s;display:flex}.contact-link:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 12px var(--glow)}.contact-link:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px;border-color:var(--accent);color:var(--accent)}.contact-link svg{width:16px;height:16px}@media (max-width:768px){.header{padding:2rem 0 1.5rem}.header:before{display:none}.header__actions{margin-top:1rem;position:relative}.contact-links{flex-direction:column;align-items:center}.tags{gap:.4rem}}
.section{margin-top:var(--section-gap)}.section__header{border-bottom:1px dashed var(--border);align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.section__icon{background:var(--bg-card);border:1px solid var(--accent);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.section__icon svg{width:16px;height:16px;stroke:var(--accent)}.section__title{font-family:var(--font-display);color:var(--text-primary);text-transform:uppercase;letter-spacing:.1em;font-size:1.2rem;font-weight:600}.section__title:before{content:"$ ";color:var(--accent)}@media (max-width:768px){.section{margin-top:2.5rem}}
.summary{color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border);padding:1.5rem;font-size:.95rem;line-height:1.8;transition:all .2s;position:relative}.summary:before{content:"/*";color:var(--text-muted);font-size:.7rem;font-family:var(--font-mono);position:absolute;top:.5rem;left:.5rem}.summary:after{content:"*/";color:var(--text-muted);font-size:.7rem;font-family:var(--font-mono);position:absolute;bottom:.5rem;right:.5rem}.summary:hover,.summary:focus{border-color:var(--accent);box-shadow:var(--card-shadow)}.summary:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}
.experience-list{flex-direction:column;gap:1rem;display:flex}.experience-card{background:var(--bg-card);border:1px solid var(--border);padding:1.25rem 1.5rem;transition:all .2s;position:relative}.experience-card:before{content:">";color:var(--accent);font-family:var(--font-mono);opacity:0;transition:opacity .2s;position:absolute;top:1.25rem;left:-1rem}.experience-card:hover,.experience-card:focus{border-color:var(--accent);box-shadow:var(--card-shadow)}.experience-card:hover:before,.experience-card:focus:before{opacity:1}.experience-card:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}.experience-card__header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.4rem;display:flex}.experience-card__info{align-items:flex-start;gap:.75rem;display:flex}.experience-card__logo{object-fit:contain;border-radius:4px;flex-shrink:0;width:40px;height:40px}.experience-card__company{font-family:var(--font-display);color:var(--text-primary);font-size:1.1rem;font-weight:600}.experience-card__dates{flex-direction:column;align-items:flex-end;gap:.25rem;display:flex}.experience-card__period{color:var(--accent);white-space:nowrap;font-size:.75rem;font-family:var(--font-mono);border:1px solid var(--accent-dim);padding:.2rem .5rem}.experience-card__duration{color:var(--text-muted);font-size:.65rem;font-family:var(--font-mono);white-space:nowrap}.experience-card__role{color:var(--accent-secondary);margin-bottom:.25rem;font-size:.9rem;font-weight:500}.experience-card__location{color:var(--text-muted);font-size:.8rem}.experience-card__description{border-top:1px dashed var(--border);color:var(--text-secondary);margin-top:.75rem;padding-top:.75rem;font-size:.85rem;line-height:1.6}.experience-card__tech{flex-wrap:wrap;gap:.4rem;margin-top:.75rem;padding:0;display:flex}.tech-tag{font-size:.7rem;font-family:var(--font-mono);color:var(--accent);border:1px solid var(--accent-dim);background:0 0;padding:.15rem .5rem;list-style:none;transition:all .2s}.tech-tag:hover,.tech-tag:focus{background:var(--accent);color:var(--bg-primary);border-color:var(--accent)}.tech-tag:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}@media (max-width:768px){.experience-card__header{flex-direction:column;gap:.5rem}.experience-card__logo{width:32px;height:32px}.experience-card:before{display:none}}
.skills-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.skill-category{background:var(--bg-card);border:1px solid var(--border);padding:1rem;transition:all .2s}.skill-category:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:4px}.skill-category__title{font-family:var(--font-display);color:var(--accent);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.9rem;font-weight:600}.skill-category__title:before{content:"# ";color:var(--text-muted)}.skill-category__list{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;display:flex}.skill-item{font-size:.8rem;font-family:var(--font-mono);background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border);padding:.25rem .5rem;list-style:none;transition:all .2s}.skill-item:hover,.skill-item:focus{border-color:var(--accent);color:var(--accent);box-shadow:0 0 8px var(--glow)}.skill-item:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}
.education-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.education-card{background:var(--bg-card);border:1px solid var(--border);padding:1rem;transition:all .2s}.education-card:hover,.education-card:focus{border-color:var(--accent);box-shadow:var(--card-shadow)}.education-card:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}.education-card__institution{font-family:var(--font-display);color:var(--text-primary);margin-bottom:.25rem;font-size:.95rem;font-weight:600}.education-card__degree{color:var(--accent-secondary);margin-bottom:.25rem;font-size:.85rem}.education-card__period{color:var(--text-muted);font-size:.75rem;font-family:var(--font-mono)}
.certifications-list{flex-wrap:wrap;gap:.75rem;margin:0;padding:0;display:flex}.certification-badge{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);font-size:.8rem;font-family:var(--font-mono);align-items:center;gap:.5rem;padding:.5rem .75rem;list-style:none;transition:all .2s;display:flex}.certification-badge:hover,.certification-badge:focus{border-color:var(--accent);color:var(--accent);box-shadow:0 0 10px var(--glow)}.certification-badge:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}.certification-badge svg{width:14px;height:14px;stroke:var(--accent)}
.languages-list{flex-wrap:wrap;gap:1rem;margin:0;padding:0;display:flex}.language-item{background:var(--bg-card);border:1px solid var(--border);align-items:center;gap:1rem;min-width:180px;padding:.75rem 1rem;list-style:none;transition:all .2s;display:flex}.language-item:hover,.language-item:focus{border-color:var(--accent);box-shadow:0 0 10px var(--glow)}.language-item:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px}.language-item__name{color:var(--text-primary);font-size:.9rem;font-weight:600}.language-item__level{color:var(--text-muted);font-size:.75rem}.language-item__dots{gap:4px;margin-left:auto;display:flex}.language-item__dot{background:var(--border);width:8px;height:8px}.language-item__dot--filled{background:var(--accent);box-shadow:0 0 4px var(--glow)}
.footer{text-align:center;border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:1rem;margin-top:4rem;padding:1.5rem 0;display:flex}.footer__back-to-top{border:1px solid var(--border);color:var(--text-muted);font-family:var(--font-mono);cursor:pointer;background:0 0;padding:.5rem 1rem;font-size:.75rem;transition:all .2s}.footer__back-to-top:hover{border-color:var(--accent);color:var(--accent)}.footer__back-to-top:focus-visible{outline:2px solid var(--accent-secondary);outline-offset:2px;border-color:var(--accent);color:var(--accent)}.footer__text{color:var(--text-muted);font-size:.8rem;font-family:var(--font-mono)}.footer__text span{color:var(--accent)}.footer__text:before{content:"> ";color:var(--accent)}
.skip-link{background:var(--accent);color:var(--bg-primary);font-family:var(--font-mono);z-index:10000;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:top .2s;position:absolute;top:-100%;left:50%;transform:translate(-50%)}.skip-link:focus{outline:2px solid var(--accent-secondary);outline-offset:2px;top:1rem}
.resume-container{max-width:900px;margin:0 auto;padding:2rem 2rem 4rem}@media (max-width:768px){.resume-container{padding:1rem}}
