@import"https://fonts.cdnfonts.com/css/satoshi";*{box-sizing:border-box}*,*:before,*:after{max-width:100%}:root{font-family:Satoshi,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#0a0a0f!important;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--background-color: #0a0a0f;--text-color: rgba(255, 255, 255, .87);--selected-color: #646cff;--accent-color: #4a90e2;--surface-color: #1a1a2e;--border-color: #2a2a3e}.light{--background-color: #f8f9fa;--text-color: #213547;--selected-color: #646cff;--accent-color: #4a90e2;--surface-color: #ffffff;--border-color: #e9ecef}.dark{--background-color: #0a0a0f;--text-color: rgba(255, 255, 255, .87);--selected-color: #646cff;--accent-color: #4a90e2;--surface-color: #1a1a2e;--border-color: #2a2a3e}a{font-weight:500;color:var(--selected-color);text-decoration:inherit}a:hover{color:var(--accent-color)}html,body{margin:0;padding:0;min-height:100vh;width:100%;background-color:var(--background-color)!important;color:var(--text-color);transition:background-color .3s ease,color .3s ease}#root{width:100%!important;height:100vh!important;background-color:var(--background-color)!important;margin:0!important;padding:0!important;max-width:none!important;text-align:left!important}.app{width:100%;min-height:100vh;display:flex;flex-direction:column;background-color:var(--background-color)!important;transition:background-color .3s ease;margin:0;padding:0}.hero-section{position:relative;width:100%;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:10;color:var(--text-color);background:#0000004d;padding:2rem;border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.hero-content h1{font-size:3.5rem;margin-bottom:1rem;color:var(--text-color);text-shadow:2px 2px 4px rgba(0,0,0,.5)}.hero-content p{font-size:1.2rem;margin:0;opacity:.9}.main-content{background-color:var(--background-color);padding:1rem 10rem;display:flex;flex-direction:column;gap:1rem}@media (max-width: 768px){.main-content{padding:1rem}.app,html,body{max-width:100vw;overflow-x:hidden}}.sample-content{margin:0 auto}.sample-content h2{color:var(--text-color);font-size:2rem;margin-bottom:1rem;margin-top:2rem}.sample-content p{color:var(--text-color);font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem;opacity:.9}h1{font-size:3.2em;line-height:1.1;color:var(--text-color)}button{border-radius:8px;border:1px solid var(--border-color);padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--surface-color);color:var(--text-color);cursor:pointer;transition:border-color .25s,background-color .25s}button:hover{border-color:var(--selected-color);background-color:var(--border-color)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff;--background-color: #f8f9fa;--text-color: #213547;--surface-color: #ffffff;--border-color: #e9ecef}.light{--background-color: #f8f9fa;--text-color: #213547;--selected-color: #646cff;--accent-color: #4a90e2;--surface-color: #ffffff;--border-color: #e9ecef}.dark{--background-color: #0a0a0f;--text-color: rgba(255, 255, 255, .87);--selected-color: #646cff;--accent-color: #4a90e2;--surface-color: #1a1a2e;--border-color: #2a2a3e}a:hover{color:#747bff}button{background-color:var(--surface-color)}}.cv-button{position:relative;display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit;font:inherit;font-weight:600;font-size:.9rem;letter-spacing:.02em;cursor:pointer;transition:all .25s ease;text-decoration:none;outline:none}.cv-button:hover{background:var(--text-color);color:var(--background-color);transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in srgb,var(--text-color) 25%,transparent)}.cv-button:focus-visible{outline:2px solid color-mix(in srgb,currentColor 60%,transparent);outline-offset:3px}.cv-button:active{transform:translateY(0);box-shadow:0 2px 6px color-mix(in srgb,var(--text-color) 15%,transparent)}.cv-button__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0}.cv-button__icon svg{width:100%;height:100%;transition:transform .25s ease}.cv-button:hover .cv-button__icon svg{transform:translateY(-1px)}.cv-button__text{white-space:nowrap}.cv-button--footer{justify-content:center;height:36px;padding:0 .75rem;border:1px solid var(--border-color);background:var(--surface-color);color:var(--text-color);transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .1s ease}.cv-button--footer:hover{background:var(--border-color);border:1px solid var(--accent-color);color:var(--accent-color)}@media (prefers-reduced-motion: reduce){.cv-button,.cv-button__icon svg{transition:none!important}.cv-button:hover{transform:none}.cv-button:hover .cv-button__icon svg{transform:none}}@media (max-width: 768px){.cv-button{padding:6px 12px;font-size:.85rem;gap:6px}.cv-button__icon{width:16px;height:16px}}.language-switcher{position:relative;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;width:220px;height:36px;border:1.5px solid currentColor;border-radius:8px;overflow:hidden;background:transparent}.language-switcher button{appearance:none;-webkit-appearance:none;background:transparent;color:inherit;border:none;margin:0;padding:0;font:inherit;cursor:pointer;height:100%;display:grid;place-items:center;font-weight:600;font-size:.9rem;letter-spacing:.02em;transition:color .2s ease,filter .2s ease,background-color .25s ease,box-shadow .25s ease,padding .25s ease,margin .25s ease}.language-switcher button:hover{filter:brightness(1.1)}.language-switcher button.selected{color:#0a0a0f;background:#fff;box-shadow:0 0 #fff;border-radius:6px}@media (max-width: 768px){.language-switcher{width:5rem;height:32px;border-width:1px}.language-switcher button{font-size:.75rem}}.mode-toggle{--toggle-width: 56px;--toggle-height: 32px;--thumb-size: 24px;--transition-fast: .16s;--transition-slow: .26s;position:relative;display:inline-flex;align-items:center;justify-content:center;width:var(--toggle-width);height:var(--toggle-height);border:none;background:transparent;padding:0;cursor:pointer;transition:transform var(--transition-fast) ease}@media (max-width: 768px){.mode-toggle{--toggle-width: 52px;--toggle-height: 28px;--thumb-size: 22px}}.mode-toggle:focus{outline:none}.mode-toggle:focus-visible{outline:2px solid color-mix(in srgb,currentColor 60%,transparent);outline-offset:3px;border-radius:999px}.mode-toggle:hover{background:transparent;transform:scale(1.03)}.mode-toggle__track{position:relative;width:100%;height:100%;border-radius:999px;background:linear-gradient(180deg,#0000001f,#0000000f);transition:background var(--transition-slow) ease}.mode-toggle__thumb{position:absolute;top:50%;left:4px;width:var(--thumb-size);height:var(--thumb-size);transform:translateY(-50%);border-radius:50%;background:#fff;box-shadow:0 2px 6px #0003,0 1px 2px #0003 inset;transition:transform var(--transition-slow) cubic-bezier(.22,1,.36,1),background var(--transition-slow) ease,box-shadow var(--transition-slow) ease}.mode-toggle__icon{position:absolute;top:50%;transform:translateY(-50%);color:#ffb020;opacity:1;transition:opacity var(--transition-fast) ease,transform var(--transition-slow) ease,color var(--transition-slow) ease}.mode-toggle__icon--sun{left:8px}.mode-toggle__icon--moon{right:8px;color:#8aa4ff}.mode-toggle__track[data-state=light]{background:linear-gradient(180deg,#ffe7a3,#ffd16c)}.mode-toggle__track[data-state=light] .mode-toggle__thumb{background:#fffef5;box-shadow:0 3px 10px #ffb10059,0 1px 2px #0003 inset;transform:translateY(-50%)}.mode-toggle__track[data-state=light] .mode-toggle__icon--sun{opacity:1;transform:translateY(-50%) scale(1)}.mode-toggle__track[data-state=light] .mode-toggle__icon--moon{opacity:.25;transform:translateY(-50%) scale(.9)}.mode-toggle__track[data-state=dark]{background:linear-gradient(180deg,#2a2f45,#1c2033)}.mode-toggle__track[data-state=dark] .mode-toggle__thumb{background:#dfe7ff;transform:translate(calc(var(--toggle-width) - var(--thumb-size) - 8px),-50%);box-shadow:0 4px 12px #4263eb59,0 1px 2px #00000040 inset}.mode-toggle__track[data-state=dark] .mode-toggle__icon--sun{opacity:.25;transform:translateY(-50%) scale(.9)}.mode-toggle__track[data-state=dark] .mode-toggle__icon--moon{opacity:1;transform:translateY(-50%) scale(1)}@media (prefers-reduced-motion: reduce){.mode-toggle__thumb,.mode-toggle__icon,.mode-toggle__track{transition:none!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hover-header{position:fixed;top:0;left:0;right:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateY(-100%);transition:transform .3s ease;z-index:1000}.header-controls{display:flex;justify-content:space-between;align-items:center;padding:1rem;gap:1rem;width:100%;max-width:100vw;box-sizing:border-box}.header-controls-left{display:flex;align-items:center;gap:1rem}.header-controls-left-text{display:flex;flex-direction:column;align-items:flex-start}.header-controls-left-text h2,.header-controls-left-text h5{margin:0;line-height:1.1}.header-controls-left-text h5:before{content:"";display:block;width:100%;height:1px;background:currentColor;opacity:.45;margin:.35rem 0 .25rem;border-radius:999px}.header-controls-right{display:flex;align-items:center;gap:1rem}@media (max-width: 768px){.header-controls{align-items:flex-start;padding:.5rem;gap:.5rem}.header-controls-right{flex-direction:column;align-items:center;gap:.5rem}}@media (max-width: 480px){.header-controls{padding:.25rem .5rem}}.terminal-overlay{position:fixed;bottom:20px;left:20px;z-index:1000;background-color:#111;color:#0f0;font-family:Fira Code,monospace;border-radius:8px;box-shadow:0 4px 20px #0000004d;transition:all .3s ease;overflow:hidden;min-width:300px;max-width:500px;display:flex;flex-direction:column}.terminal-overlay.minimized{height:40px;width:300px}.terminal-overlay.expanded{height:340px;width:500px}.terminal-toolbar{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:#1a1a1a;border-bottom:1px solid #333;height:40px;box-sizing:border-box;flex-shrink:0}.toolbar-left{display:flex;align-items:center;gap:8px}.toolbar-button{background:none;border:none;color:#0f0;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.toolbar-button:hover{background-color:#333}.toolbar-title{font-size:12px;font-weight:500;color:#0f0;margin-left:4px}.toolbar-right{display:flex;align-items:center}.window-controls{display:flex;gap:6px}.control-dot{width:8px;height:8px;border-radius:50%;cursor:pointer;transition:opacity .2s ease}.control-dot:hover{opacity:.7}.control-dot.minimize{background-color:#ffbd2e}.control-dot.maximize{background-color:#28ca42}.control-dot.close{background-color:#ff5f56}.terminal-content{padding:12px;height:calc(100% - 40px);overflow-y:auto;display:flex;flex-direction:column;box-sizing:border-box;max-height:calc(100% - 40px)}.terminal-overlay.minimized .terminal-content{display:none}.terminal-body{white-space:pre-wrap;flex:1;overflow-y:auto;margin-bottom:8px}.terminal-body p{margin:0 0 4px;font-size:13px;line-height:1.4}.terminal-line{margin-bottom:4px}.terminal-line.command p{color:#0ff;font-weight:500}.terminal-line.output p{color:#0f0}.terminal-input-line{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:8px;border-top:1px solid #333}.prompt{color:#0ff;font-weight:700;font-size:13px;min-width:12px}.terminal-input{background:transparent;border:none;outline:none;color:#0f0;font-family:inherit;flex:1;font-size:13px;caret-color:#0f0}.terminal-input::placeholder{color:#666}@media (max-width: 768px){.terminal-overlay{bottom:10px;left:10px;right:10px;min-width:auto;max-width:none}.terminal-overlay.minimized,.terminal-overlay.expanded{width:auto}}.hero-3d-container{width:100%;height:100vh;position:absolute;top:0;left:0}.hero-content-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:10;text-shadow:2px 2px 4px rgba(0,0,0,.5);padding:1rem}.hero-content-overlay h1{font-size:3rem;margin-bottom:1rem;font-weight:700;margin:0 auto}.hero-content-overlay p{font-size:1.2rem;max-width:600px;margin:0 auto}.hero-content-overlay .hero-title{font-size:clamp(1.7rem,5.5vw,4rem);line-height:1.1}.hero-content-overlay .hero-subtitle{font-size:clamp(.95rem,3.5vw,1.25rem);line-height:1.4}@media (max-width: 480px){.typewriter-animation{border-right-width:2px}}.typewriter-animation{display:inline-block;overflow:hidden;white-space:nowrap;border-right:3px solid;max-width:0;animation:typing 2.8s steps(40,end) forwards,blink-caret .75s step-end infinite}.fade-in-animation{opacity:0;animation:fadeIn .5s ease-in forwards;animation-delay:2.8s}.hero-subtitle2-container{position:absolute;top:15rem;left:0;right:0;text-align:center}.scroll-arrow-container{margin-top:2rem;max-width:100px;margin:0 auto;animation:bounce 2.2s infinite;animation-delay:3.5s}.scroll-arrow-container>div{margin-top:1rem;font-size:1.5rem;cursor:pointer;display:block;color:#fff;text-shadow:0 0 10px rgba(255,255,255,.8);font-weight:700}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-13px)}60%{transform:translateY(-10px)}}@keyframes typing{0%{max-width:0}to{max-width:100%}}@keyframes blink-caret{0%,to{border-color:transparent}50%{border-color:currentColor}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loading-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#fff;z-index:15}.loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid #ffffff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-indicator p{margin:0;font-size:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.hero-content-overlay.light-mode{color:#fff;border-radius:1rem;background-color:#00000080}.hero-content-overlay.dark-mode,.hero-content-overlay.light-mode h1{color:#fff}.hero-content-overlay.light-mode .hero-subtitle2-container p{color:#213547}.hero-content-overlay.light-mode .scroll-arrow-container>div{color:#213547;text-shadow:0 0 10px rgba(0,0,0,.25)}.skills-graph-container{margin:2rem 0;padding:1.5rem;width:100%;max-width:100%;background:transparent}.skills-graph-container h3{text-align:center;margin-bottom:1.5rem;color:#333;font-size:1.5rem;font-weight:600}.graph-wrapper{width:80%;height:400px;overflow:hidden;position:relative;background:transparent;margin:0 auto;border:1px solid rgba(255,255,255,.3);border-radius:12px;box-shadow:0 4px 10px #0003,0 0 15px #ffffff1a}.graph-wrapper canvas{width:100%!important;height:100%!important;max-width:100%;max-height:100%;background:transparent!important}.graph-instruction{position:absolute;bottom:10px;left:50%;transform:translate(-50%);z-index:10;pointer-events:none}.graph-instruction p{margin:0;color:#ffffffb3;font-size:.85rem;font-weight:400;text-align:center;background:#0006;padding:6px 12px;border-radius:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);white-space:nowrap;transition:opacity .3s ease}.graph-wrapper>div{background:transparent!important}.graph-wrapper>div>canvas{background:transparent!important}[data-testid=graph-canvas],[data-testid=graph-container]{background:transparent!important}.description-box{margin-top:1rem;padding:1rem;background:#0000004d;border-radius:12px;border:2px solid rgba(255,255,255,.3);box-shadow:0 0 20px #fff3,inset 0 0 20px #ffffff1a;opacity:0;transform:translateY(-20px);transition:all .4s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;height:auto;overflow:hidden}.description-box.visible{opacity:1;transform:translateY(0);pointer-events:auto;border-color:#fff9;box-shadow:0 0 15px #fff6,inset 0 0 15px #ffffff1a}.description-content{transform:translateY(10px);transition:transform .4s cubic-bezier(.4,0,.2,1)}.description-box.visible .description-content{transform:translateY(0)}.description-content h4{margin:0 0 .5rem;color:#fff;font-size:1.2rem;font-weight:600;text-shadow:0 0 10px rgba(255,255,255,.5)}.description-content p{margin:0;color:#ffffffe6;font-size:.95rem;line-height:1.5;text-shadow:0 0 5px rgba(255,255,255,.3)}@media (max-width: 768px){.skills-graph-container{padding:1rem;margin:1rem 0}.graph-wrapper{width:95%;height:350px;margin-bottom:1.2rem}.graph-instruction p{font-size:.75rem;white-space:normal;display:inline-block;max-width:100vw;line-height:1.3;padding:4px 5px}.description-box{padding:.75rem}.description-content h4{font-size:1.1rem}.description-content p{font-size:.9rem}}@media (max-width: 480px){.graph-wrapper{height:250px}.graph-instruction p{font-size:.6rem;max-width:100vw}.description-box{margin-top:.5rem;padding:.5rem}.description-content h4{font-size:1rem}.description-content p{font-size:.85rem}}.scroll-reveal{opacity:0;transition:all .6s cubic-bezier(.645,.045,.355,1)}.scroll-reveal-visible{opacity:1}.scroll-reveal-up{transform:translateY(60px)}.scroll-reveal-up.scroll-reveal-visible{transform:translateY(0)}.scroll-reveal-down{transform:translateY(-60px)}.scroll-reveal-down.scroll-reveal-visible{transform:translateY(0)}.scroll-reveal-left{transform:translate(-60px)}.scroll-reveal-left.scroll-reveal-visible{transform:translate(0)}.scroll-reveal-right{transform:translate(60px)}.scroll-reveal-right.scroll-reveal-visible{transform:translate(0)}.scroll-reveal-fade{transform:scale(.9)}.scroll-reveal-fade.scroll-reveal-visible{transform:scale(1)}.scroll-reveal-zoom{transform:scale(.8)}.scroll-reveal-zoom.scroll-reveal-visible{transform:scale(1)}.scroll-reveal-stagger{animation-fill-mode:both}.scroll-reveal-stagger:nth-child(1){animation-delay:0ms}.scroll-reveal-stagger:nth-child(2){animation-delay:.1s}.scroll-reveal-stagger:nth-child(3){animation-delay:.2s}.scroll-reveal-stagger:nth-child(4){animation-delay:.3s}.scroll-reveal-stagger:nth-child(5){animation-delay:.4s}.scroll-reveal-stagger:nth-child(6){animation-delay:.5s}.scroll-reveal-rotate{transform:translateY(60px) rotate(10deg)}.scroll-reveal-rotate.scroll-reveal-visible{transform:translateY(0) rotate(0)}.scroll-reveal{will-change:transform,opacity}.scroll-reveal-visible{will-change:auto}.about-section{width:100%;position:relative;padding:2rem 0rem;margin:4rem 0 2rem}.about-section h2{font-size:2rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,#879aef,#642f99);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (min-width: 768px){.about-section{padding:3rem 2rem}}.about-section h3{font-size:1.75rem;font-weight:700;color:var(--text-color)}.about-section p{font-size:1.1rem;line-height:1.6;color:var(--text-color);opacity:.9}.dark .about-section h2{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.projects-section{border-radius:12px;transition:all .3s ease}.projects-section h2{font-size:2rem;font-weight:700;margin-bottom:1rem;background:linear-gradient(135deg,#f093fb,#f5576c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.projects-section>p{font-size:1.1rem;line-height:1.6;color:var(--text-color);opacity:.9;text-align:center;margin-bottom:3rem}.timeline-container{display:flex;position:relative}.timeline-arrow{position:absolute;top:0;left:0;width:60px;height:100%;display:flex;align-items:flex-start;padding-top:6rem;z-index:10}.arrow-line{position:relative;width:8px;background:linear-gradient(180deg,#f093fb,#f5576c);border-radius:4px;transition:height .1s ease-out;min-height:0;box-shadow:0 0 15px #f093fb66}.arrow-head{position:absolute;bottom:-12px;left:50%;transform:translate(-50%);width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-top:16px solid #f5576c;filter:drop-shadow(0 3px 6px rgba(245,87,108,.4))}.timeline-content{flex:1;display:flex;flex-direction:column;gap:2.5rem;padding-left:2rem}.timeline-item{position:relative;padding:1.5rem;border-radius:12px;background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.1);transition:all .3s ease}.timeline-item:hover{transform:translate(8px);box-shadow:0 8px 32px #0000001a;border-color:#f093fb4d}.timeline-item.project{border-left:4px solid #f093fb}.timeline-item.job{border-left:4px solid #4ade80}.timeline-item-content{position:relative}.timeline-item-header{margin-bottom:1rem}.timeline-title{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:var(--text-color)}.timeline-company{display:block;font-size:1rem;font-weight:500;color:#f093fb;margin-bottom:.25rem}.timeline-duration{display:block;font-size:.9rem;color:var(--text-color);opacity:.7}.timeline-description{font-size:1rem;line-height:1.6;color:var(--text-color);opacity:.9;margin-bottom:1rem}.timeline-technologies{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{display:inline-block;padding:.3rem .8rem;background:#f093fb1a;border:1px solid rgba(240,147,251,.3);border-radius:20px;font-size:.8rem;font-weight:500;color:#f093fb;transition:all .3s ease}.tech-tag:hover{background:#f093fb33;border-color:#f093fb80;transform:translateY(-2px)}.timeline-connector{position:absolute;left:-3rem;top:1.5rem;width:24px;height:3px;background:linear-gradient(90deg,#f093fb,#f5576c);border-radius:2px}.timeline-connector:before{content:"";position:absolute;left:-8px;top:-5px;width:13px;height:13px;background:#f093fb;border:3px solid rgba(255,255,255,.2);border-radius:50%;box-shadow:0 0 10px #f093fb80}.dark .projects-section h2{background:linear-gradient(135deg,#ffecd2,#fcb69f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dark .timeline-item{background:#0006;border-color:#ffffff0d}.dark .timeline-item:hover{border-color:#ffecd24d}.dark .arrow-line{background:linear-gradient(180deg,#ffecd2,#fcb69f);box-shadow:0 0 15px #ffecd266}.dark .arrow-head{border-top-color:#fcb69f;filter:drop-shadow(0 3px 6px rgba(252,182,159,.4))}.dark .timeline-company{color:#ffecd2}.dark .tech-tag{background:#ffecd21a;border-color:#ffecd24d;color:#ffecd2}.dark .tech-tag:hover{background:#ffecd233;border-color:#ffecd280}.dark .timeline-connector{background:linear-gradient(90deg,#ffecd2,#fcb69f)}.dark .timeline-connector:before{background:#ffecd2;box-shadow:0 0 10px #ffecd280}@media (max-width: 768px){.timeline-container{flex-direction:column;gap:1rem}.timeline-arrow{position:relative;top:0;height:auto;width:100%;padding:0;margin-bottom:1rem}.arrow-line{width:100%;height:6px;background:linear-gradient(90deg,#f093fb,#f5576c)}.arrow-head{right:-12px;bottom:50%;transform:translateY(50%);border-left:16px solid #f5576c;border-top:10px solid transparent;border-bottom:10px solid transparent;border-right:none}.timeline-content{padding-left:0}.timeline-connector{display:none}.timeline-item{transform:none}.timeline-item:hover{transform:translateY(-4px)}.dark .arrow-line{background:linear-gradient(90deg,#ffecd2,#fcb69f)}.dark .arrow-head{border-left-color:#fcb69f}}.contact-section{padding:3rem 2rem;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.contact-section h2{font-size:2rem;font-weight:700;margin-bottom:.5rem;background:linear-gradient(135deg,#4facfe,#00f2fe);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-section p{font-size:1.1rem;line-height:1.6;color:var(--text-color);opacity:.9}.dark .contact-section h2{background:linear-gradient(135deg,#a8edea,#fed6e3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-form{margin-top:2rem;width:100%;max-width:600px}.form-group{margin-bottom:1.5rem;text-align:left}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-color);font-size:1rem}.form-group input,.form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid rgba(0,0,0,.3);border-radius:8px;background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-color);font-size:1rem;transition:all .3s ease;resize:vertical}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#4facfe;box-shadow:0 0 0 3px #4facfe1a;background:#ffffff14}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-color);opacity:.6}.form-group input:disabled,.form-group textarea:disabled{opacity:.6;cursor:not-allowed}.submit-button{width:100%;padding:.875rem 2rem;background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:1rem}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #4facfe4d}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.submit-message{margin-top:1rem;padding:.75rem 1rem;border-radius:6px;font-weight:500;text-align:center}.submit-message.success{background:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.2)}.submit-message.error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.dark .form-group input,.dark .form-group textarea{background:#0003;border-color:#ffffff0d}.dark .form-group input:focus,.dark .form-group textarea:focus{background:#0000004d;border-color:#a8edea;box-shadow:0 0 0 3px #a8edea1a}.dark .submit-button{background:linear-gradient(135deg,#a8edea,#fed6e3);color:#1a1a1a}.dark .submit-button:hover:not(:disabled){box-shadow:0 8px 25px #a8edea4d}@media (max-width: 768px){.contact-form{margin-top:1.5rem}.form-group{margin-bottom:1.25rem}.form-group input,.form-group textarea{padding:.625rem .875rem;font-size:.95rem}.submit-button{padding:.75rem 1.5rem;font-size:1rem}}.hover-header{position:fixed;top:0;left:0;right:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateY(-100%);transition:transform .3s ease;z-index:1000;padding:.5rem 0}.hover-header.show{transform:translateY(0)}.header-controls{display:flex;justify-content:space-between;align-items:center;padding:1rem;gap:1rem}.toggle-btn{margin:0;padding:.5rem 1rem;font-weight:700;border:none;cursor:pointer;border-radius:4px;transition:all .3s ease;background:transparent;color:inherit;border:1px solid currentColor}.toggle-btn:hover{background:#ffffff1a}.app-footer{margin-top:auto;width:100%;border-top:1px solid var(--border-color);background:var(--surface-color);color:var(--text-color);transition:background-color .3s ease,color .3s ease,border-color .3s ease}.footer-content{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}@media (max-width: 768px){.footer-content{padding:1rem;flex-direction:column;text-align:center}}.footer-actions{display:flex;align-items:center;gap:.75rem}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;color:var(--text-color);background:var(--surface-color);border:1px solid var(--border-color);transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .1s ease}.icon-button:hover{background:var(--border-color);transform:translateY(-1px);border:1px solid var(--accent-color)}.to-top-button{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 .5rem;border-radius:8px;color:var(--text-color);background:var(--surface-color);border:1px solid var(--border-color);transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .1s ease}.to-top-button:hover{background:var(--border-color);transform:translateY(-1px)}
