@import"https://fonts.googleapis.com/css2?family=Fira+Code:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700;800&family=Poppins:wght@500;600;700;800&display=swap";:root{--terminal-black: #282a36;--terminal-green: #50fa7b;--terminal-cyan: #8be9fd;--terminal-purple: #bd93f9;--terminal-pink: #ff79c6;--terminal-yellow: #f1fa8c;--terminal-orange: #ffb86c;--terminal-red: #ff5555;--terminal-white: #f8f8f2;--terminal-gray: #44475a;--terminal-bright-black: #6272a4;--color-primary: var(--terminal-green);--color-secondary: var(--terminal-cyan);--color-accent: var(--terminal-purple);--color-background: var(--terminal-black);--color-surface: #1e1f29;--color-text: var(--terminal-white);--color-text-muted: var(--terminal-bright-black);--color-border: var(--terminal-gray);--color-error: var(--terminal-red);--color-success: var(--terminal-green);--accent: var(--color-accent);--text-primary: var(--color-text);--text-secondary: var(--color-text-muted);--bg-primary: var(--color-background);--bg-secondary: #1b1d24;--nav-bg: var(--bg-primary);--button-text: #1e1e1e;--nav-link-hover-bg: rgba(255, 255, 255, .06);--icon-link-bg: rgba(255, 255, 255, .06);--progress-bg: var(--color-border);--progress-fill: var(--color-primary);--accent-hover: #9a7cf5;--font-terminal: "Fira Code", monospace;--font-primary: var(--font-terminal);--font-code: var(--font-terminal);--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--text-xs: var(--font-size-xs);--text-sm: var(--font-size-sm);--text-base: var(--font-size-base);--text-lg: var(--font-size-lg);--text-xl: var(--font-size-xl);--space-1: .25rem;--space-2: .5rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2rem;--space-6: 3rem;--space-8: 4rem;--border-width: 1px;--border-style: solid;--border-color: var(--color-border);--border-radius: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--terminal-glow: 0 0 10px rgba(80, 250, 123, .3);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--z-negative: -1;--z-elevated: 1;--z-sticky: 100;--z-drawer: 200;--z-modal: 300;--z-popup: 400;--z-cursor: 9999;--z-fixed: 1000;--cursor-size: 20px;--cursor-size-hover: 30px;--cursor-color: var(--accent)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;height:100%;cursor:none!important}body{font-family:var(--font-primary);font-size:var(--text-base);line-height:1.6;color:var(--color-text);background:linear-gradient(120deg,#10141a,#0e1220);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;cursor:none!important}a,button,[data-cursor=pointer]{cursor:none!important}a{color:inherit;text-decoration:none}ul{list-style:none}button{font-family:inherit}.cursor-dot,.cursor-outline{position:fixed;top:0;left:0;transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;z-index:var(--z-cursor);transition:opacity .2s ease-out,width .3s ease-out,height .3s ease-out,background-color .2s ease-out,border-color .2s ease-out}.cursor-dot{width:4px;height:4px;background-color:var(--accent)}.cursor-outline{width:24px;height:24px;border:1px solid var(--accent);opacity:.4;mix-blend-mode:difference}.cursor-dot.is-pointer{opacity:0}.cursor-outline.is-pointer{width:48px;height:48px;background-color:var(--accent);border-color:var(--accent);opacity:.2}@media (max-width: 768px){.cursor-dot,.cursor-outline{display:none!important}}@media (max-width: 768px){html{font-size:14px}}@media (max-width: 480px){html{font-size:12px}}.site-background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(1200px 700px at 20% 10%,rgba(102,255,153,.06),transparent 60%),radial-gradient(900px 600px at 80% 80%,rgba(46,134,171,.08),transparent 65%),linear-gradient(120deg,#10141a,#0e1220);pointer-events:none}.site-background .hero-grid{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,rgba(102,255,153,.12) 1px,transparent 1px),linear-gradient(to bottom,rgba(102,255,153,.12) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:radial-gradient(80% 60% at 50% 50%,black 60%,transparent 100%);mask-image:radial-gradient(80% 60% at 50% 50%,black 60%,transparent 100%);opacity:.25}.site-background .scanline{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(180deg,rgba(255,255,255,.04) 0px,rgba(255,255,255,.04) 1px,transparent 2px,transparent 4px);mix-blend-mode:overlay;opacity:.15;animation:scan 9s linear infinite}.site-background .orb{position:absolute;filter:blur(28px);width:360px;height:360px;border-radius:50%;opacity:.45}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-4)}section{margin:var(--space-8) 0;padding:var(--space-4) 0}.terminal-command{font-family:var(--font-code);font-size:clamp(1.5rem,4vw,2.25rem);font-weight:600;letter-spacing:.02em;margin-bottom:2rem;background:linear-gradient(135deg,var(--accent) 0%,var(--color-text) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent}.footer{margin-top:6rem;padding:2.5rem 0;background:#0f172a99;border-top:1px solid rgba(102,255,153,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.footer__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.footer__copy{font-size:.9rem;color:var(--text-secondary)}.footer__socials{display:flex;gap:1rem}.footer__social-link{color:var(--text-secondary);font-size:1.4rem;transition:color .2s ease,transform .2s ease}.footer__social-link:hover{color:var(--accent);transform:translateY(-3px)}@media (max-width: 1200px){.container{padding:0 var(--space-3)}}@media (max-width: 768px){section{margin:var(--space-6) 0;padding:var(--space-3) 0}.footer__inner{flex-direction:column;text-align:center}}@media (max-width: 480px){.container{padding:0 var(--space-2)}}.main-nav{position:fixed;top:0;left:0;width:100%;z-index:1000;background:#0f172abf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(102,255,153,.1);transition:height .3s ease,background-color .3s ease}.main-nav .container{display:flex;justify-content:space-between;align-items:center;height:70px;transition:height .3s ease}.main-nav--scrolled .container{height:50px}.main-nav__logo-link{white-space:nowrap}.main-nav__logo{font-size:1.3rem;font-weight:700;color:var(--color-text);letter-spacing:.02em;position:relative}.main-nav__logo span{display:inline-block;transition:opacity .3s ease,transform .3s ease}.logo-compact{position:absolute;left:0;opacity:0;transform:translateY(10px)}.main-nav--scrolled .logo-full{opacity:0;transform:translateY(-10px)}.main-nav--scrolled .logo-compact{opacity:1;transform:translateY(0)}.main-nav__list{display:flex;align-items:center;gap:.5rem}.main-nav__link{color:var(--text-secondary);font-size:.9rem;font-weight:500;text-transform:lowercase;padding:.5rem 1rem;border-radius:8px;transition:color .2s,background-color .2s}.main-nav__link:hover,.main-nav__link.is-active{color:var(--color-text);background-color:#66ff991a}.main-nav__icon-link{color:var(--text-primary);font-size:1.25rem;transition:color .3s ease,transform .2s ease;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--icon-link-bg);cursor:none}.main-nav__icon-link:hover{color:var(--accent);transform:translateY(-2px);background-color:var(--nav-link-hover-bg)}.theme-toggle-button{background-color:var(--accent);border:1px solid var(--border-color);color:var(--button-text);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:none;transition:all .3s ease;box-shadow:0 2px 8px #0000001a}.theme-toggle-button:hover{background-color:var(--accent-hover);transform:translateY(-2px) rotate(15deg);box-shadow:0 4px 12px #0003}.main-nav__toggle{display:none;background:var(--accent);border:1px solid var(--border-color);color:var(--button-text);font-size:1.5rem;cursor:none;width:2.5rem;height:2.5rem;border-radius:50%;align-items:center;justify-content:center;transition:all .3s ease}@media screen and (max-width: 768px){.main-nav__list{position:fixed;top:4rem;left:0;width:100%;flex-direction:column;background-color:var(--nav-bg);box-shadow:0 10px 20px #0000001a;padding:1.5rem;gap:1rem;z-index:999;max-height:0;overflow:hidden;opacity:0;pointer-events:none;transition:max-height .3s ease-out,opacity .3s ease-out}.main-nav__list.active{max-height:500px;opacity:1;pointer-events:auto;overflow-y:auto}.main-nav__list li{width:100%}.main-nav__link{white-space:nowrap;font-size:1rem;padding:.5rem;overflow:hidden;text-overflow:ellipsis}.main-nav__icon-link{margin:0 auto}.theme-toggle-button{width:40px;height:40px;margin-top:.5rem}.main-nav__toggle{display:flex}}.terminal-section{position:relative;padding-top:5rem;padding-bottom:4rem}.skills-legend{display:flex;flex-wrap:wrap;gap:1rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:2rem}.skills-legend span{display:inline-flex;align-items:center}.legend-dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:.5rem;box-shadow:0 0 10px,0 0 20px}.legend-dot--expert{background:#4ade80;box-shadow:0 0 10px #4ade80,0 0 20px #4ade80}.legend-dot--advanced{background:#60a5fa;box-shadow:0 0 10px #60a5fa,0 0 20px #60a5fa}.legend-dot--confirmed{background:#fbbf24;box-shadow:0 0 10px #fbbf24,0 0 20px #fbbf24}.legend-dot--progress{background:#94a3b8;box-shadow:0 0 10px #94a3b8,0 0 20px #94a3b8}.skills-grid-wide{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.skill-card{display:flex;flex-direction:column;gap:.85rem;padding:1.25rem;min-height:150px;background:#141e30b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(102,255,153,.15);border-radius:16px;box-shadow:0 8px 32px #0000001a;transition:transform .3s ease,box-shadow .3s ease}.skill-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 16px 32px #0003}.skill-card__header{display:flex;align-items:center;justify-content:space-between;width:100%}.skill-card__identity{display:flex;align-items:center;gap:.85rem}.skill-logo{width:30px;height:30px;object-fit:contain}.skill-card__name{margin:0;font-size:1rem;font-weight:600;color:var(--color-text)}.skill-card__level{font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;padding:.25rem .6rem;border-radius:999px;border:1px solid;white-space:nowrap;font-weight:500}.skill-card__level--expert{border-color:#4ade8066;background:#4ade8026;color:#4ade80}.skill-card__level--avancé{border-color:#60a5fa66;background:#60a5fa26;color:#60a5fa}.skill-card__level--confirmé{border-color:#fbbf2480;background:#fbbf2426;color:#fbbf24}.skill-card__level--intermédiaire,.skill-card__level--en-progression{border-color:#94a3b866;background:#94a3b826;color:#94a3b8}.skill-bar-track{display:block;position:relative;width:100%;height:8px;background:#0f172aa6;border-radius:999px;overflow:hidden;border:1px solid rgba(102,255,153,.1);margin-top:auto}.skill-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent) 0%,#4ade80 100%);border-radius:inherit;box-shadow:0 0 12px #66ff994d;transition:width .8s cubic-bezier(.16,1,.3,1)}.skill-bar-indicator{display:none}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:2.5rem}.project-card{position:relative;background:#141e30b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(102,255,153,.15);padding:2rem;display:flex;flex-direction:column;gap:1.4rem;box-shadow:0 8px 32px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.project-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top right,rgba(102,255,153,.18),transparent 55%);opacity:.8;pointer-events:none}.project-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 16px 32px #0003;border-color:#66ff994d}.project-card__title{font-size:1.25rem;font-weight:700;color:var(--color-text)}.project-card__meta{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;text-transform:uppercase;color:#cbd5e1cc}.project-card__description{font-size:.97rem;line-height:1.65;color:var(--text-secondary)}.project-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{padding:.35rem .7rem;border-radius:999px;background:#94a3b81f;border:1px solid rgba(102,255,153,.18);color:var(--accent);font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.project-card__footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:1rem}.about-section{display:flex;justify-content:center;align-items:center;padding:4rem 0 3rem;background:transparent}.about-container{display:grid;grid-template-columns:260px 1fr;gap:2.2rem;align-items:start;width:100%;max-width:1100px}.about-photo-wrap{flex:0 0 170px;display:flex;flex-direction:column;align-items:center;justify-content:start}.about-photo{width:170px;height:170px;border-radius:50%;object-fit:cover;box-shadow:0 0 42px #2e86ab55,0 2px 24px #181a1e;border:4px solid #232323;margin-bottom:.7rem}.about-content{flex:1;display:flex;align-items:center;height:100%}.about-terminal{background:linear-gradient(135deg,#66ff9914,#2e86ab14),#111319d9;border-radius:18px;box-shadow:0 18px 38px #0f172a47;border:1px solid rgba(102,255,153,.12);font-family:Fira Code,monospace;padding:1.6rem;width:100%;position:relative}.about-header{display:flex;align-items:center;margin-bottom:1.1rem}.about-dot{width:13px;height:13px;border-radius:50%;margin-right:8px;display:inline-block}.about-dot.red{background:#f26419}.about-dot.yellow{background:#f6f7eb}.about-dot.green{background:#2e86ab}.about-title{font-size:1.12rem;font-weight:700;color:var(--accent);margin-left:20px;letter-spacing:.09em}.about-body{font-size:1.05rem;color:var(--color-text);font-family:Fira Code,monospace;margin-top:.3rem;line-height:1.75;max-width:780px}.about-section-title{margin-top:1rem;font-size:1.08rem;letter-spacing:.04em}.about-prompt{color:#2e86ab;font-weight:900;font-size:1.3rem;margin-right:.6em}.about-hi{font-weight:700;color:#f26419;letter-spacing:.05em;font-size:1.18rem}.about-desc{margin-top:1.2rem;margin-bottom:1.35rem;color:var(--text-secondary);font-size:1.03rem;line-height:1.75}.about-highlight{color:#f26419;font-weight:700}.about-summary{display:flex;flex-direction:column;gap:1.2rem;margin-bottom:1.2rem}.about-metrics{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:.8rem}.about-metric{background:#1018208c;border:1px solid rgba(102,255,153,.14);border-radius:12px;padding:.8rem .9rem;display:flex;flex-direction:column;gap:.3rem;align-items:flex-start}.about-metric i{font-size:1rem;color:var(--accent)}.about-metric__value{font-size:1.2rem;font-weight:700}.about-metric__label{font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.about-panels{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:.8rem;margin-bottom:1.2rem}.about-card{background:#1018208c;border:1px solid rgba(102,255,153,.12);border-radius:14px;padding:.9rem;display:flex;flex-direction:column;gap:.6rem}.about-card__header{display:inline-flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;color:var(--accent);letter-spacing:.04em}.about-card p{font-size:.95rem;color:var(--text-secondary)}.about-card ul{margin:0;padding-left:1.1rem;display:grid;gap:.3rem;color:var(--text-secondary);font-size:.92rem}.about-card__cta{margin-top:auto;align-self:flex-start;font-size:.85rem;color:var(--accent);border:1px solid rgba(102,255,153,.18);border-radius:999px;padding:.35rem .8rem;transition:transform .18s ease,border-color .18s ease}.about-card__cta:hover{transform:translateY(-1px);border-color:#66ff9959}.about-links{margin-top:1.2rem;display:flex;gap:1.3rem;flex-wrap:wrap}.about-link{color:var(--color-text);font-weight:600;background:#1018208c;padding:.5em 1.2em;border-radius:10px;text-decoration:none;box-shadow:0 8px 16px #080f2040;border:1px solid rgba(102,255,153,.12);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.about-link:hover{color:var(--accent);transform:translateY(-2px);background:#161e28d9;border-color:#66ff9938;box-shadow:0 12px 22px #080f2059}.lang-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin:.2rem 0 .6rem}.lang-badge{padding:.32rem .65rem;border-radius:999px;border:1px solid rgba(102,255,153,.2);background:#1018208c;color:var(--color-text);font-size:.85rem;letter-spacing:.02em}@media (max-width: 900px){.about-container{grid-template-columns:1fr;gap:1.2rem}.about-content{width:100%}.about-terminal{padding:1rem}.about-photo{width:120px;height:120px}.about-metrics{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.about-panels{grid-template-columns:1fr}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.skills-section{padding-top:4.5rem;padding-bottom:2.1rem}.skills-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:2.5rem 0 0;max-width:1600px;margin-left:auto;margin-right:auto}.skills-card{background:#141e30b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(102,255,153,.15);border-radius:16px;box-shadow:0 8px 32px #0000001a;padding:2.25rem;width:100%;min-width:0;display:flex;flex-direction:column;align-items:flex-start;font-family:Fira Code,monospace;box-sizing:border-box;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;position:relative;overflow:hidden}.skills-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at var(--x) var(--y),rgba(102,255,153,.2),transparent 40%);opacity:0;transition:opacity .4s ease;pointer-events:none}.skills-card:hover:before{opacity:1}.skills-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px #0003;border-color:#66ff994d}.skills-card-title{font-weight:700;font-size:1.1rem;margin-bottom:.8em;color:var(--accent);letter-spacing:.02em;text-transform:none}.skills-card-stars{margin-bottom:1em;font-size:1.5em;letter-spacing:.15em}.skills-card-stars .star{color:#94a3b84d;transition:color .3s ease}.skills-card-stars .star--filled{color:#fbbf24;text-shadow:0 0 8px rgba(251,191,36,.6),0 0 16px rgba(251,191,36,.3);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.skills-card-comment{font-size:.98rem;color:var(--text-secondary);margin-bottom:1em;line-height:1.65}.skills-card-link{margin-top:auto;padding-top:.75rem}.skills-card-na{color:#888;font-size:.95em}.skills-tabs{display:flex;gap:.5rem;margin-top:2rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(102,255,153,.15)}.skills-tab{padding:.75rem 1.25rem;background:transparent;border:none;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:color .2s,border-bottom-color .2s;border-bottom:2px solid transparent;position:relative;top:1px}.skills-tab:hover{color:var(--color-text)}.skills-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.skills-grid-wide{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:1.5rem}@media (max-width: 1024px){.skills-cards-grid{grid-template-columns:repeat(2,minmax(280px,1fr));gap:1.75rem}}@media (max-width: 768px){.skills-cards-grid{grid-template-columns:1fr;gap:1.5rem}.skills-card{padding:1.75rem}.skills-tabs{flex-wrap:wrap}.skills-grid-wide{grid-template-columns:1fr}}.home-section{display:flex;justify-content:center;align-items:center;min-height:95vh;padding:0;position:relative;overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero-grid{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,rgba(102,255,153,.12) 1px,transparent 1px),linear-gradient(to bottom,rgba(102,255,153,.12) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:radial-gradient(80% 60% at 50% 50%,black 60%,transparent 100%);mask-image:radial-gradient(80% 60% at 50% 50%,black 60%,transparent 100%);opacity:.25}.scanline{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(180deg,rgba(255,255,255,.04) 0px,rgba(255,255,255,.04) 1px,transparent 2px,transparent 4px);mix-blend-mode:overlay;opacity:.15;animation:scan 9s linear infinite}@keyframes scan{0%{transform:translateY(-10%)}to{transform:translateY(10%)}}.orb{position:absolute;filter:blur(28px);width:360px;height:360px;border-radius:50%;opacity:.45}.orb--1{left:-80px;top:-80px;background:radial-gradient(circle at 30% 30%,#66ff998c,#2e86ab40);animation:float1 9s ease-in-out infinite}.orb--2{right:-120px;bottom:-120px;background:radial-gradient(circle at 70% 70%,#2e86ab73,#6f93);animation:float2 11s ease-in-out infinite}.orb--3{left:50%;bottom:10%;transform:translate(-50%);width:220px;height:220px;background:radial-gradient(circle at 50% 50%,#94a3b840,#66ff9926);animation:float3 13s ease-in-out infinite}@keyframes float1{0%{transform:translate(0)}50%{transform:translate(14px,-10px)}to{transform:translate(0)}}@keyframes float2{0%{transform:translate(0)}50%{transform:translate(-12px,12px)}to{transform:translate(0)}}@keyframes float3{0%{transform:translate(-50%)}50%{transform:translate(calc(-50% + 10px),-8px)}to{transform:translate(-50%)}}.pc-screen-big{position:relative;width:720px;max-width:99vw;min-height:480px;background:linear-gradient(135deg,#66ff991f,#2e86ab1f),#141a22d9;border-radius:24px;box-shadow:0 22px 45px #080f2080,inset 0 0 0 1px #66ff991f;margin:0 auto;overflow:hidden;opacity:0;transform:perspective(1400px) translateY(38px) scale(.9);filter:blur(14px);transition:transform .8s cubic-bezier(.22,.61,.36,1),opacity .8s ease,filter .8s ease}.pc-screen-big.is-active{opacity:1;transform:perspective(1400px) translateY(0) scale(1);filter:blur(0)}.pc-screen-big.is-active .terminal-window{animation:fadeUp .6s ease .25s both}.pc-screen-big.is-active .terminal-header,.pc-screen-big.is-active .terminal-body{animation:fadeUp .6s ease .38s both}.screen-glow{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:24px;box-shadow:0 0 62px 18px #66ff9940,0 0 24px #2e86ab2e;z-index:0;pointer-events:none}.terminal-window{position:relative;z-index:1;padding:2.6rem 3.2rem 2.7rem;background:linear-gradient(90deg,#11141cbf 90%,#0e1219d9);border-radius:18px;box-shadow:0 2px 21px #23232359;font-family:Fira Code,monospace}.terminal-header{display:flex;align-items:center;margin-bottom:1.5rem}.dot{width:15px;height:15px;border-radius:50%;margin-right:7px;display:inline-block}.dot.red{background:#f26419}.dot.yellow{background:#f6f7eb}.dot.green{background:#2e86ab}.terminal-title{font-size:1.15rem;font-weight:700;color:var(--accent);margin-left:24px;letter-spacing:.08em;text-shadow:0 0 12px rgba(102,255,153,.25)}.terminal-body{font-size:1.22rem;color:var(--color-text);font-family:Fira Code,monospace}.terminal-prompt{color:var(--accent);font-weight:900;font-size:1.32rem;margin-right:.6em;text-shadow:0 0 10px rgba(102,255,153,.25)}.typed-text{font-weight:700;color:#f26419;letter-spacing:.04em;font-size:1.4rem;text-shadow:0 0 7px rgba(242,100,25,.25)}.terminal-desc{margin-top:1.2rem;font-size:1.09rem;color:#a7e8f2;font-family:Fira Code,monospace;text-shadow:0 0 8px rgba(167,232,242,.2)}.home-btn-group{margin-top:2.1rem;display:flex;gap:1.4rem}.home-btn-group .button{font-size:1.1rem;padding:1em 2em;border-radius:12px;text-decoration:none;display:inline-block;background:#141e30b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(102,255,153,.2);color:var(--color-text);transition:all .3s ease}.home-btn-group .button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0003;border-color:#6f96;color:var(--accent)}.home-btn-group .button.button--primary{background:var(--accent);color:var(--button-text, #1e1e1e);border-color:var(--accent)}.home-btn-group .button.button--primary:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}.home-btn-group .button.button--secondary{background:transparent;border-color:#6f96;color:var(--accent)}.home-btn-group .button.button--secondary:hover{background:#66ff991a;border-color:#6f99}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.pc-screen-big,.pc-screen-big.is-active,.pc-screen-big.is-active .terminal-window,.pc-screen-big.is-active .terminal-header,.pc-screen-big.is-active .terminal-body,.big-btn,.big-btn:hover{transition:none!important;animation:none!important;transform:none!important;filter:none!important}.pc-screen-big{opacity:1}}.home-tech-title{margin-top:2.5rem;font-size:1.13rem;font-family:Fira Code,monospace;color:var(--accent);font-weight:700;letter-spacing:.06em;margin-bottom:1rem}.home-tech-list{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:.7rem}.tech-badge{display:flex;align-items:center;gap:.7rem;background:#101820a6;border-radius:12px;box-shadow:0 12px 24px #080f2059,inset 0 0 0 1px #66ff991f;padding:.5em 1em;font-family:Fira Code,monospace;font-size:.97rem;color:#fff;border-left:3px solid var(--accent);border-top:2px solid rgba(242,100,25,.9);transition:.18s}.tech-badge:hover{background:#161e28d9;transform:scale(1.06);box-shadow:0 18px 32px #f2641940}.tech-icon{width:22px;height:22px;filter:drop-shadow(0 1px 5px rgba(167,232,242,.3))}.tech-name{padding-left:.1em;color:#a7e8f2;font-weight:600;font-family:Fira Code,monospace;font-size:1em}@media (max-width: 900px){.pc-screen-big{width:98vw;min-height:260px}.terminal-window{padding:1.2rem .7rem}.home-btn-group{flex-direction:column;gap:.8rem}.home-tech-list{gap:.8rem}.tech-badge{font-size:.95em;padding:.4em .6em}.tech-icon{width:18px;height:18px}}.stage-section{padding-top:4rem;padding-bottom:4rem}.stage-wrapper{display:flex;flex-direction:column;gap:2.5rem}.stage-header{max-width:680px}.stage-intro{margin-top:.75rem;color:var(--text-secondary);font-size:1rem;line-height:1.7}.stage-card{background:linear-gradient(135deg,#66ff9914,#2e86ab14),var(--color-surface);border:1px solid rgba(102,255,153,.12);border-radius:18px;padding:2.5rem;box-shadow:0 18px 38px #0f172a47;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;flex-direction:column;gap:2rem}.stage-card__top{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.stage-logo{width:78px;height:78px;border-radius:16px;background:#ffffffe6;display:grid;place-items:center;box-shadow:0 12px 24px #0f172a3d;border:1px solid rgba(148,163,184,.2)}.stage-logo img{width:64px;height:64px;object-fit:contain;filter:saturate(1.05)}.stage-meta{display:flex;flex-direction:column;min-width:220px}.stage-organization{font-size:1.25rem;font-weight:700;color:var(--color-text)}.stage-role{font-size:.95rem;color:var(--text-secondary);margin-top:.2rem}.stage-tag{margin-left:auto;padding:.45rem 1.1rem;border-radius:999px;background:#66ff991f;border:1px solid rgba(102,255,153,.4);color:var(--accent);font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}.stage-body{display:flex;flex-direction:column;gap:1.8rem}.stage-description{font-size:1.05rem;line-height:1.8;color:var(--color-text)}.stage-infos{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.4rem}.stage-infos dt{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:.4rem}.stage-infos dd{font-size:1rem;color:var(--color-text);margin:0}.stage-highlights{display:flex;flex-direction:column;gap:.85rem;list-style:none;padding-left:0}.stage-highlight{display:flex;align-items:flex-start;gap:.75rem;color:var(--text-secondary);line-height:1.6}.stage-bullet{width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#66ff99d9,#2e86ab66);box-shadow:0 0 12px #66ff9973;margin-top:.45rem;flex-shrink:0}@media (max-width: 768px){.stage-card{padding:1.8rem}.stage-card__top{flex-direction:column;align-items:flex-start}.stage-tag{margin-left:0}}.button{display:inline-block;padding:.75rem 1.5rem;font-family:var(--font-code);font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-radius:8px;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;background:#141e30b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(102,255,153,.2);color:var(--color-text)}.button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0003;border-color:#6f96;color:var(--accent)}.button--primary{background:var(--accent);color:var(--button-text, #1e1e1e);border-color:var(--accent)}.button--primary:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}.button--secondary{background:transparent;border-color:#6f96;color:var(--accent)}.button--secondary:hover{background:#66ff991a;border-color:#6f99}.technologies-wrapper{margin-top:6rem}.timeline-container{position:relative;max-width:900px;margin:4rem auto;padding:1rem 0}.timeline-container:before{content:"";position:absolute;width:2px;background-color:var(--accent);top:0;bottom:0;left:50%;margin-left:-1px;box-shadow:0 0 10px #66ff9980}.timeline-item{padding:10px 40px;position:relative;width:50%}.timeline-item.left{left:0}.timeline-item.right{left:50%}.timeline-content{padding:20px 30px;background:linear-gradient(135deg,#66ff9914,#2e86ab14),#111319d9;position:relative;border-radius:12px;border:1px solid rgba(102,255,153,.12);box-shadow:0 8px 24px #080f2059;transition:transform .3s ease,box-shadow .3s ease}.timeline-content:hover{transform:translateY(-5px);box-shadow:0 12px 30px #080f2073}.timeline-logo-wrapper{position:absolute;top:20px;width:50px;height:50px;background:#ffffffe6;border-radius:50%;display:flex;justify-content:center;align-items:center;border:2px solid var(--accent);overflow:hidden}.timeline-item.left .timeline-logo-wrapper{right:-25px}.timeline-item.right .timeline-logo-wrapper{left:-25px}.timeline-logo{width:100%;height:100%;object-fit:contain;padding:5px}.timeline-logo-icon{font-size:1.5rem;color:var(--accent)}.timeline-text{padding-left:60px}.timeline-item.right .timeline-text{padding-left:0;padding-right:60px;text-align:right}.timeline-period{font-size:.85rem;font-weight:600;color:var(--accent);letter-spacing:.05em;display:block;margin-bottom:.5rem}.timeline-title{font-size:1.2rem;font-weight:700;color:var(--color-text);margin-bottom:.3rem}.timeline-meta{font-size:.95rem;color:var(--text-secondary);margin-bottom:.8rem}.timeline-description{font-size:1rem;color:var(--text-secondary);line-height:1.6}@media (max-width: 768px){.timeline-container:before{left:35px}.timeline-item{width:100%;padding-left:70px;padding-right:25px}.timeline-item.right{left:0%}.timeline-logo-wrapper,.timeline-item.right .timeline-logo-wrapper{left:10px}.timeline-text{padding-left:0}.timeline-item.right .timeline-text{padding-right:0;text-align:left}}:root.terminal{--bg-primary: #1e1e1e;--bg-secondary: #252525;--text-primary: #e8f6e8;--text-secondary: #9cd1d1;--accent: #66ff99;--accent-hover: #55cc88;--color-background: var(--bg-primary);--color-surface: #2a2a2a;--color-text: var(--text-primary);--color-text-muted: #9aa4b2;--color-border: #3a3a3a;--nav-bg: var(--bg-primary);--button-text: #0f0f0f;--progress-bg: #3a3a3a;--progress-fill: var(--accent);--nav-link-hover-bg: rgba(102, 255, 153, .1);--icon-link-bg: rgba(102, 255, 153, .1)}:root.light{--color-background: #f8f9fa;--color-surface: #ffffff;--color-text: #212529;--text-secondary: #6c757d;--accent: #007bff;--accent-dark: #0056b3;--button-text: #ffffff}:root.light .site-background{background:var(--color-background)}:root.light .site-background .hero-grid,:root.light .site-background .scanline,:root.light .site-background .orb{display:none}:root.light .main-nav,:root.light .footer,:root.light .pc-screen-big,:root.light .terminal-window,:root.light .about-terminal,:root.light .project-card,:root.light .skills-cards-grid .skills-card,:root.light .skills-grid-wide .skill-card,:root.light .about-metric,:root.light .about-card,:root.light .lang-badge{background:var(--color-surface);border:1px solid #dee2e6;box-shadow:0 8px 24px #0000000d;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--color-text)}:root.light .main-nav:hover,:root.light .footer:hover,:root.light .pc-screen-big:hover,:root.light .about-terminal:hover,:root.light .skills-card:hover,:root.light .project-card:hover,:root.light .about-metric:hover,:root.light .about-card:hover,:root.light .lang-badge:hover{border-color:var(--accent)}:root.light .button{background:#e9ecef;color:var(--color-text);border:1px solid #ced4da}:root.light .button:hover{border-color:var(--accent);background:#dee2e6}:root.light .button.button--primary{background:var(--accent);color:var(--button-text);border-color:transparent}:root.light .button.button--primary:hover{background:var(--accent-dark)}:root.light .button.button--secondary{background:transparent;border-color:var(--accent);color:var(--accent)}:root.light .button.button--secondary:hover{background:#007bff0d;color:var(--accent-dark)}:root.light .tech-badge{background:#f1f3f5;border:1px solid #dee2e6;box-shadow:none}:root.light .tech-badge:hover{border-color:var(--accent)}:root.light .terminal-title,:root.light .terminal-prompt,:root.light .about-highlight,:root.light .main-nav__logo,:root.light .footer__social-link:hover,:root.light .about-card__header,:root.light .about-metric i{color:var(--accent)}:root.light .main-nav__link:hover,:root.light .main-nav__link.is-active{background-color:#007bff1a;color:var(--accent)}:root.light .typed-text{color:#d9480f}:root.light .terminal-desc,:root.light .about-desc,:root.light .skills-card__level,:root.light .footer__copy,:root.light .tech-name,:root.light .main-nav__link,:root.light .footer__social-link,:root.light .about-metric__label,:root.light .about-card p,:root.light .about-card ul{color:var(--text-secondary)}:root.light .terminal-command{background:linear-gradient(135deg,var(--accent) 0%,var(--color-text) 70%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
