:root{--bg:#0d1013;--surface:#14181c;--border:#23282d;--text:#f5f7f6;--text-secondary:#9099a3;--text-muted:#5b6470;--accent:#5dcaa5;--accent-soft:#5dcaa51f;--font-sans:"Manrope", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--radius:10px;--maxw:880px}html[data-theme=light]{--bg:#fbfcfb;--surface:#f1f3f1;--border:#e4e7e5;--text:#181a19;--text-secondary:#6b716c;--text-muted:#8b9189;--accent:#0f6e56;--accent-soft:#0f6e561a}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.65}.mono{font-family:var(--font-mono)}a{color:inherit;text-decoration:none}section{max-width:var(--maxw);margin:0 auto;padding:88px 24px}h1,h2,h3{font-weight:500;line-height:1.25}h2{margin-bottom:32px;font-size:28px}p{color:var(--text-secondary)}header.nav{z-index:50;backdrop-filter:blur(8px);background:color-mix(in srgb, var(--bg) 85%, transparent);border-bottom:1px solid var(--border);max-width:var(--maxw);justify-content:space-between;align-items:center;margin:0 auto;padding:16px 24px;display:flex;position:sticky;top:0}.logo{font-family:var(--font-mono);color:var(--accent);font-size:18px}.logo .bracket{color:var(--text-muted)}.nav-links{gap:28px;font-size:14px;display:flex}.nav-links a{color:var(--text-secondary);transition:color .15s}.nav-links a:hover{color:var(--text)}.utility{font-family:var(--font-mono);align-items:center;gap:14px;font-size:13px;display:flex}.utility button,.utility .lang-toggle{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;font-family:var(--font-mono);background:0 0;border-radius:6px;padding:6px 10px;font-size:12px;display:inline-block}.utility button:hover,.utility .lang-toggle:hover{border-color:var(--accent);color:var(--accent)}.btn-cv{border:1px solid var(--accent);color:var(--accent);white-space:nowrap;border-radius:6px;padding:6px 12px;font-size:12px}.hamburger{color:var(--text);cursor:pointer;background:0 0;border:none;font-size:22px;display:none}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:78vh;animation:.7s ease-out both fadeUp;display:flex}.hero .logo{font-size:34px}.hero h1{font-size:clamp(30px,5vw,46px)}.hero .role{color:var(--accent);font-family:var(--font-mono);font-size:16px}.hero .tagline{max-width:520px;margin-top:4px}.cta-row{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:18px;display:flex}.btn{font-family:var(--font-mono);border:1px solid var(--border);border-radius:8px;padding:12px 22px;font-size:14px;transition:all .15s}.btn-primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}.btn-primary:hover{opacity:.88}.btn-secondary{color:var(--text);border-color:var(--border)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.about p{color:var(--text-secondary);margin-bottom:16px;font-size:17px}.about strong{color:var(--text);font-weight:500}.skill-group{margin-bottom:28px}.skill-group h3{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.02em;margin-bottom:12px;font-size:13px}.badges{flex-wrap:wrap;gap:8px;display:flex}.badge{font-family:var(--font-mono);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;padding:6px 12px;font-size:12.5px}.badge.core{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.timeline-item{border-bottom:1px solid var(--border);grid-template-columns:130px 1fr;gap:20px;padding:22px 0;display:grid}.timeline-item:last-child{border-bottom:none}.timeline-item .date{font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;font-size:13px}.timeline-item h3{margin-bottom:2px;font-size:17px}.timeline-item .company{color:var(--accent);margin-bottom:8px;font-size:14px;display:block}.timeline-item p{font-size:15px}.cards{grid-template-columns:1fr;gap:20px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px}.card.featured{border-color:var(--accent)}.card h3{margin-bottom:10px;font-size:19px}.card p{margin-bottom:16px;font-size:15px}.tags{flex-wrap:wrap;gap:8px;display:flex}.tag{font-family:var(--font-mono);border:1px solid var(--border);color:var(--text-muted);border-radius:5px;padding:4px 10px;font-size:11.5px}.tag.beta{color:var(--text-muted);border-style:dashed;font-style:italic}.tag.core{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.contact-list{font-family:var(--font-mono);flex-direction:column;gap:14px;margin-bottom:28px;font-size:15px;display:flex}.contact-list a{color:var(--text-secondary);transition:all .15s}.contact-list a:hover{color:var(--accent)}footer{max-width:var(--maxw);color:var(--text-muted);font-family:var(--font-mono);border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin:0 auto;padding:32px 24px 60px;font-size:12px;display:flex}#cookieConsent{z-index:100;background:var(--surface);border-top:1px solid var(--border);flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;padding:18px 24px;animation:.3s ease-out both fadeUp;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #0000002e}#cookieConsent[hidden]{display:none}#cookieConsent p{max-width:640px;color:var(--text-secondary);flex:320px;margin:0;font-size:14px;line-height:1.5}#cookieConsent .actions{flex:none;gap:10px;display:flex}#cookieConsent button{font-family:var(--font-mono);cursor:pointer;white-space:nowrap;border-radius:6px;padding:9px 16px;font-size:13px}#cookieDecline{border:1px solid var(--border);color:var(--text-secondary);background:0 0}#cookieDecline:hover{border-color:var(--text-secondary);color:var(--text)}#cookieAccept{background:var(--accent);border:1px solid var(--accent);color:var(--bg);font-weight:500}#cookieAccept:hover{opacity:.88}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=720px){.nav-links{background:var(--bg);border-bottom:1px solid var(--border);flex-direction:column;gap:16px;padding:16px 24px;display:none;position:absolute;top:100%;left:0;right:0}.nav-links.open{display:flex}.hamburger{display:block}.utility{gap:8px;font-size:11px}.timeline-item{grid-template-columns:1fr;gap:6px}}
