:root[data-theme=editorial]{color-scheme:light;--t-bg:#f6f3ec;--t-surface:#fffdf8;--t-surface-2:#faf7f0;--t-border:#e6dfd1;--t-border-strong:#cfc5b2;--t-text:#2b2722;--t-heading:#1a1714;--t-muted:#655c51;--t-accent:#9a3412;--t-on-accent:#ffffff;--t-accent-soft:rgba(154,52,18,0.08);--t-accent-line:rgba(154,52,18,0.35);--t-nav-bg:rgba(255,253,248,0.8);--t-shadow:0 1px 2px rgba(43,39,34,0.06),0 8px 24px rgba(43,39,34,0.06);--t-ok:#15803d;--t-error:#b91c1c;--t-star:#b45309;--t-radius:4px;--t-radius-sm:3px;--t-font-body:"Source Serif 4",Georgia,"Times New Roman",serif;--t-font-head:"Fraunces",Georgia,"Times New Roman",serif}:root[data-theme=epure]{color-scheme:light;--t-bg:#ffffff;--t-surface:#ffffff;--t-surface-2:#f5f5f4;--t-border:#e7e5e4;--t-border-strong:#a8a29e;--t-text:#292524;--t-heading:#0c0a09;--t-muted:#57534e;--t-accent:#d32f2f;--t-on-accent:#ffffff;--t-accent-soft:rgba(211,47,47,0.07);--t-accent-line:rgba(211,47,47,0.45);--t-nav-bg:rgba(255,255,255,0.8);--t-shadow:none;--t-ok:#15803d;--t-error:#b91c1c;--t-star:#d32f2f;--t-radius:0;--t-radius-sm:0;--t-font-body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--t-font-head:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif}:root[data-theme=terminal]{color-scheme:dark;--t-bg:#0a0e0a;--t-surface:#0e140e;--t-surface-2:#111a12;--t-border:#1d3322;--t-border-strong:#2f5a3a;--t-text:#c6e3c8;--t-heading:#ecfff0;--t-muted:#86a98a;--t-accent:#4ade80;--t-on-accent:#04120a;--t-accent-soft:rgba(74,222,128,0.1);--t-accent-line:rgba(74,222,128,0.4);--t-nav-bg:rgba(10,14,10,0.82);--t-shadow:none;--t-ok:#4ade80;--t-error:#f87171;--t-star:#facc15;--t-radius:0;--t-radius-sm:0;--t-font-body:"JetBrains Mono",ui-monospace,"Cascadia Code",Consolas,monospace;--t-font-head:"JetBrains Mono",ui-monospace,"Cascadia Code",Consolas,monospace}:root:not([data-theme=neon]){--primary-dark:#1e293b;--secondary:var(--t-accent);--gray:var(--t-muted);--white:var(--t-text);--text-main:var(--t-text);--text-secondary:var(--t-muted);--bg-main:var(--t-bg)}:root:not([data-theme=neon]) body{font-family:var(--t-font-body);font-optical-sizing:auto;color:var(--t-text);background:var(--t-bg)}:root:not([data-theme=neon]) .container{background:#0000;backdrop-filter:none}:root:not([data-theme=neon]) .header{color:var(--t-text)}:root:not([data-theme=neon]) .header-content{background:var(--t-surface);border-color:var(--t-border);backdrop-filter:none;box-shadow:var(--t-shadow);border-radius:var(--t-radius);animation:none}:root:not([data-theme=neon]) .profile-photo{border-color:var(--t-accent);box-shadow:none;animation:none}:root:not([data-theme=neon]) .profile-photo:hover{transform:none;box-shadow:none}:root:not([data-theme=neon]) .header h1,:root:not([data-theme=neon]) .profile-stat-value,:root:not([data-theme=neon]) .section-title{background:none;-webkit-text-fill-color:currentcolor;color:var(--t-heading);font-family:var(--t-font-head)}:root:not([data-theme=neon]) .section-title{border-bottom-color:var(--t-accent);text-wrap:balance}:root:not([data-theme=neon]) .profile-stat-value{color:var(--t-accent);font-variant-numeric:tabular-nums}:root:not([data-theme=neon]) .hero-menu{animation:none}:root:not([data-theme=neon]) .hero-menu a{background:var(--t-surface);backdrop-filter:none;border-color:var(--t-border-strong);color:var(--t-text);border-radius:var(--t-radius)}:root:not([data-theme=neon]) .hero-menu a:hover{transform:none;background:var(--t-accent-soft);border-color:var(--t-accent)}:root:not([data-theme=neon]) .hero-menu a:active{transform:scale(.96)}:root:not([data-theme=neon]) .contact-actions button,:root:not([data-theme=neon]) .cookie-actions .cookie-accept,:root:not([data-theme=neon]) .hero-menu a.hero-menu-primary,:root:not([data-theme=neon]) .nav-btn.nav-btn-primary{background:var(--t-accent);border-color:var(--t-accent);color:var(--t-on-accent)}:root:not([data-theme=neon]) .hero-menu a.hero-menu-primary:hover,:root:not([data-theme=neon]) .nav-btn.nav-btn-primary:hover{background:var(--t-heading);border-color:var(--t-heading);color:var(--t-bg)}:root:not([data-theme=neon]) .lang-switch{background:var(--t-surface);border-color:var(--t-border-strong);backdrop-filter:none}:root:not([data-theme=neon]) .lang-switch a{color:var(--t-muted)}:root:not([data-theme=neon]) .lang-switch a:hover{background:var(--t-accent-soft);color:var(--t-heading)}:root:not([data-theme=neon]) .lang-switch a[aria-current=page]{background:var(--t-accent);color:var(--t-on-accent)}:root:not([data-theme=neon]) .section-nav{background:var(--t-nav-bg);border-color:var(--t-border);backdrop-filter:blur(16px)saturate(160%);border-radius:var(--t-radius);box-shadow:var(--t-shadow)}:root:not([data-theme=neon]) .section-nav-links a{color:var(--t-muted);border-radius:var(--t-radius)}:root:not([data-theme=neon]) .section-nav-links a.active,:root:not([data-theme=neon]) .section-nav-links a:hover{background:var(--t-accent-soft);color:var(--t-heading)}:root:not([data-theme=neon]) .nav-btn{border-color:var(--t-border-strong);color:var(--t-text);border-radius:var(--t-radius)}:root:not([data-theme=neon]) .nav-btn:hover,:root:not([data-theme=neon]) .nav-btn[aria-pressed=true]{background:var(--t-accent-soft);border-color:var(--t-accent)}:root:not([data-theme=neon]) .section{background:var(--t-surface);border-color:var(--t-border);color:var(--t-text);border-radius:var(--t-radius);box-shadow:var(--t-shadow);transition:border-color.2s}:root:not([data-theme=neon]) .section:hover{background:var(--t-surface);border-color:var(--t-border-strong);transform:none}:root:not([data-theme=neon]) .section-icon{background:var(--t-accent);color:var(--t-on-accent);box-shadow:none;border-radius:var(--t-radius-sm)}:root:not([data-theme=neon]) .skill-icon{background:var(--t-accent-soft);border-color:var(--t-accent-line);color:var(--t-accent);border-radius:var(--t-radius-sm)}:root:not([data-theme=neon]) .i{color:var(--t-accent)}:root:not([data-theme=neon]) .contact-item .i,:root:not([data-theme=neon]) .hero-menu .i,:root:not([data-theme=neon]) .nav-btn-primary .i{color:inherit}:root:not([data-theme=neon]) .i.star{color:var(--t-star)}:root:not([data-theme=neon]) .formation-item,:root:not([data-theme=neon]) .interest-item,:root:not([data-theme=neon]) .language-item,:root:not([data-theme=neon]) .profile-pillar,:root:not([data-theme=neon]) .profile-stat,:root:not([data-theme=neon]) .skill-category,:root:not([data-theme=neon]) .tech-stack{background:var(--t-surface-2);border-color:var(--t-border);border-radius:var(--t-radius);box-shadow:none;transition:border-color.2s}:root:not([data-theme=neon]) .skill-category:before{display:none}:root:not([data-theme=neon]) .formation-item:hover,:root:not([data-theme=neon]) .interest-item:hover,:root:not([data-theme=neon]) .language-item:hover,:root:not([data-theme=neon]) .profile-pillar:hover,:root:not([data-theme=neon]) .skill-category:hover{background:var(--t-surface-2);border-color:var(--t-accent-line);transform:none;box-shadow:none}:root:not([data-theme=neon]) .profile-pillar,:root:not([data-theme=neon]) .profile-pillar:hover{border-top-color:var(--t-accent)}:root:not([data-theme=neon]) .formation-item,:root:not([data-theme=neon]) .formation-item:hover{border-left-color:var(--t-accent)}:root:not([data-theme=neon]) .experience-title,:root:not([data-theme=neon]) .formation-title,:root:not([data-theme=neon]) .profile-pillar h3,:root:not([data-theme=neon]) .skill-category h3{color:var(--t-heading);font-family:var(--t-font-head)}:root:not([data-theme=neon]) .contact-form label,:root:not([data-theme=neon]) .experience-date,:root:not([data-theme=neon]) .experience-header[role=button] .experience-title:after,:root:not([data-theme=neon]) .mission-facts dt,:root:not([data-theme=neon]) .profile-sector strong,:root:not([data-theme=neon]) .tech-stack strong,:root:not([data-theme=neon]) footer a{color:var(--t-accent)}:root:not([data-theme=neon]) .experience-company,:root:not([data-theme=neon]) .formation-details{color:var(--t-muted)}:root:not([data-theme=neon]) .skill-tag{background:var(--t-surface);border-color:var(--t-border-strong);color:var(--t-text);border-radius:var(--t-radius);transition:background-color.2s,border-color.2s}:root:not([data-theme=neon]) .skill-tag:hover{background:var(--t-accent-soft);border-color:var(--t-accent);transform:none;box-shadow:none}:root:not([data-theme=neon]) .skill-tag.core,:root:not([data-theme=neon]) .skill-tag.core:hover{background:var(--t-accent);border-color:var(--t-accent);color:var(--t-on-accent)}:root:not([data-theme=neon]) .experience-item{border-left-color:var(--t-accent-line)}:root:not([data-theme=neon]) .experience-item:before{background:var(--t-accent);box-shadow:none;animation:none}:root:not([data-theme=neon]) .company-logo,:root:not([data-theme=neon]) .formation-logo{border-color:var(--t-border);box-shadow:none;border-radius:var(--t-radius)}:root:not([data-theme=neon]) .company-logo:hover,:root:not([data-theme=neon]) .formation-logo:hover{transform:none;box-shadow:none;border-color:var(--t-accent-line)}:root:not([data-theme=neon]) .employer-badge{border-color:var(--t-border-strong);box-shadow:none}:root:not([data-theme=neon]) .mission-facts{border-bottom-color:var(--t-border)}:root:not([data-theme=neon]) .profile-sector,:root:not([data-theme=neon]) .tech-tags span{background:var(--t-surface);border-color:var(--t-border-strong);border-radius:var(--t-radius)}:root:not([data-theme=neon]) .flag{box-shadow:0 0 0 1px var(--t-border-strong)}:root:not([data-theme=neon]) .contact-form input,:root:not([data-theme=neon]) .contact-form select,:root:not([data-theme=neon]) .contact-form textarea{color:var(--t-text);background:var(--t-surface);border-color:var(--t-border-strong);border-radius:var(--t-radius)}:root:not([data-theme=neon]) .contact-form select option{color:var(--t-text);background:var(--t-surface)}:root:not([data-theme=neon]) .contact-form input:focus,:root:not([data-theme=neon]) .contact-form select:focus,:root:not([data-theme=neon]) .contact-form textarea:focus{border-color:var(--t-accent);box-shadow:0 0 0 3px var(--t-accent-soft)}:root:not([data-theme=neon]) .contact-actions button{border-radius:var(--t-radius)}:root:not([data-theme=neon]) .contact-status.ok{color:var(--t-ok)}:root:not([data-theme=neon]) .contact-status.error{color:var(--t-error)}:root:not([data-theme=neon]) .cookie-btn{color:var(--t-accent);background:var(--t-accent-soft);border-color:var(--t-accent-line)}:root:not([data-theme=neon]) .cookie-dialog{color:var(--t-text);background:var(--t-surface);border-color:var(--t-border-strong);border-radius:var(--t-radius)}:root:not([data-theme=neon]) .cookie-dialog h2 svg{stroke:var(--t-accent)}:root:not([data-theme=neon]) .cookie-result{color:var(--t-accent)}:root:not([data-theme=neon]) .cookie-pref{background:var(--t-surface-2);border-color:var(--t-border)}:root:not([data-theme=neon]) .cookie-pref input{accent-color:var(--t-accent)}:root:not([data-theme=neon]) .cookie-actions button{color:var(--t-text);border-color:var(--t-border-strong);border-radius:var(--t-radius)}:root:not([data-theme=neon]) footer{background:var(--t-surface);color:var(--t-text);border-top-color:var(--t-border)}:root:not([data-theme=neon]) footer a:hover{color:var(--t-heading);text-shadow:none}:root:not([data-theme=neon]) [role=button]:focus-visible,:root:not([data-theme=neon]) a:focus-visible,:root:not([data-theme=neon]) button:focus-visible,:root:not([data-theme=neon]) select:focus-visible{outline:2px solid var(--t-accent);outline-offset:2px}:root[data-theme=editorial] .header h1{font-weight:700;letter-spacing:-.01em}:root[data-theme=editorial] .header .subtitle{font-style:italic;color:var(--t-accent)}:root[data-theme=editorial] .section-title{font-size:2rem;font-weight:700;border-bottom-width:2px}:root[data-theme=editorial] .section-icon{background:#0000;color:var(--t-accent);border:1px solid var(--t-accent-line)}:root[data-theme=editorial] .profile-lead{font-size:1.25rem}:root[data-theme=editorial] .nav-btn,:root[data-theme=editorial] .profile-sector,:root[data-theme=editorial] .section-nav-links a,:root[data-theme=editorial] .skill-tag,:root[data-theme=editorial] .tech-tags span{border-radius:999px}:root[data-theme=epure] .header{min-height:0;padding-top:5rem}:root[data-theme=epure] .header-content{max-width:1100px;width:100%;border:none;border-bottom:6px solid var(--t-heading);text-align:left;align-items:flex-start}:root[data-theme=epure] .contact-info,:root[data-theme=epure] .header-text{text-align:left;justify-content:flex-start}:root[data-theme=epure] .header h1{font-size:clamp(2.4rem,6vw,4.5rem);font-weight:800;letter-spacing:-.04em;line-height:1}:root[data-theme=epure] .header .subtitle{font-weight:600;color:var(--t-accent)}:root[data-theme=epure] .profile-photo{border-width:0;filter:grayscale()}:root[data-theme=epure] .hero-menu{justify-content:flex-start;max-width:1100px;width:100%;padding:0 2rem}:root[data-theme=epure] .section,:root[data-theme=epure] .section:hover{border:none;border-top:2px solid var(--t-heading);padding-left:0;padding-right:0}:root[data-theme=epure] .section-title{font-size:2.2rem;font-weight:800;letter-spacing:-.03em;border-bottom:none;padding-bottom:0}:root[data-theme=epure] .section-icon{background:#0000;color:var(--t-accent);width:auto;margin-right:.6rem}:root[data-theme=epure] .formation-item,:root[data-theme=epure] .interest-item,:root[data-theme=epure] .language-item,:root[data-theme=epure] .profile-pillar,:root[data-theme=epure] .profile-stat,:root[data-theme=epure] .skill-category,:root[data-theme=epure] .tech-stack{background:#0000}:root[data-theme=epure] .profile-stat{border:none;border-left:3px solid var(--t-accent)}:root[data-theme=epure] .profile-stat-value{color:var(--t-heading);font-weight:800;letter-spacing:-.02em}:root[data-theme=epure] .experience-item{border-left:1px solid var(--t-border-strong)}:root[data-theme=epure] .experience-item:before{border-radius:0;width:11px;height:11px;left:-6px}:root[data-theme=terminal] body{font-size:.95rem}:root[data-theme=terminal] .header h1:after{content:"_";color:var(--t-accent);animation:theme-blink 1s steps(1)infinite}:root[data-theme=terminal] .header .subtitle:before,:root[data-theme=terminal] .section-title:before{content:"$ ";color:var(--t-accent)}:root[data-theme=terminal] .section-icon{display:none}:root[data-theme=terminal] .section-title{font-size:1.5rem;border-bottom-style:dashed;border-bottom-width:1px}:root[data-theme=terminal] .header-content,:root[data-theme=terminal] .section,:root[data-theme=terminal] .section-nav{border-style:dashed}:root[data-theme=terminal] .profile-photo{filter:grayscale()contrast(1.1);border-width:2px}:root[data-theme=terminal] .experience-item:before{border-radius:0}:root[data-theme=terminal] .skill-tag:before{content:"[";color:var(--t-muted)}:root[data-theme=terminal] .skill-tag:after{content:"]";color:var(--t-muted)}:root[data-theme=terminal] .skill-tag.core:after,:root[data-theme=terminal] .skill-tag.core:before{color:inherit}@keyframes theme-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){:root[data-theme=terminal] .header h1:after{animation:none}}@media (width<=768px){:root[data-theme=epure] .header{padding-top:.75rem}:root[data-theme=epure] .section-title{font-size:1.7rem}:root[data-theme=editorial] .section-title{font-size:1.6rem}}.theme-picker{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem.4rem;border:1px solid var(--secondary);border-radius:999px}.theme-picker[hidden]{display:none}.theme-swatch{--sw-ring:var(--secondary);width:1.4rem;height:1.4rem;padding:0;border-radius:50%;border:1px solid#7f7f7f73;background:linear-gradient(135deg,var(--sw-bg) 50%,var(--sw-accent) 50%);cursor:pointer;transition:transform.15s,box-shadow.15s}.theme-swatch:hover{transform:scale(1.15)}.theme-swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--bg-main),0 0 0 4px var(--sw-ring)}.theme-swatch:focus-visible{outline:2px solid var(--sw-ring);outline-offset:3px}.theme-swatch[data-theme-option=neon]{--sw-bg:#0f172a;--sw-accent:#06b6d4}.theme-swatch[data-theme-option=editorial]{--sw-bg:#f6f3ec;--sw-accent:#9a3412}.theme-swatch[data-theme-option=epure]{--sw-bg:#ffffff;--sw-accent:#d32f2f}.theme-swatch[data-theme-option=terminal]{--sw-bg:#0a0e0a;--sw-accent:#4ade80}:root:not([data-theme=neon]) .theme-picker{border-color:var(--t-border-strong);border-radius:var(--t-radius)}:root[data-theme=editorial] .theme-picker{border-radius:999px}@media (prefers-reduced-motion:reduce){.theme-swatch{transition:none}.theme-swatch:hover{transform:none}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media print{.theme-picker{display:none}}@media (prefers-reduced-transparency:reduce){:root:not([data-theme=neon]) .section-nav{background:var(--t-surface);backdrop-filter:none}}