@import url(https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=DM+Mono:ital,wght@0,300;0,400;1,300&family=Outfit:wght@300;400;500;600&display=swap);.chat-toggle{align-items:center;animation:chat-glow 2.5s ease-in-out infinite;background:var(--accent);border:none;border-radius:50%;bottom:1.5rem;cursor:pointer;display:flex;height:52px;justify-content:center;outline:none;overflow:visible;position:fixed;right:1.5rem;transition:transform .2s ease,background .2s ease;width:52px;z-index:150}.chat-toggle:before{animation:chat-radiate 2.5s ease-out infinite;background:var(--accent);border-radius:50%;content:"";inset:0;position:absolute;z-index:-1}.chat-toggle.open,.chat-toggle.open:before{animation:none}.chat-toggle:hover{transform:scale(1.1)}.chat-toggle:active{transform:scale(.96)}.chat-toggle svg{color:#000;flex-shrink:0;position:relative;z-index:1}@keyframes chat-glow{0%,to{box-shadow:0 4px 20px #0000004d,0 0 12px var(--accent-soft)}50%{box-shadow:0 4px 20px #0000004d,0 0 28px var(--accent-soft)}}@keyframes chat-radiate{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}.chat-toggle-dot{animation:chat-dot-pulse 2s infinite;background:#ef4444;border:2px solid var(--bg);border-radius:50%;height:10px;position:absolute;right:4px;top:4px;width:10px;z-index:2}@keyframes chat-dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.25)}}.chat-tooltip{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:var(--surface);border:1px solid var(--border);border-radius:8px;bottom:calc(100% + 10px);box-shadow:0 4px 16px #00000040;color:var(--text-muted);font-size:.72rem;line-height:1.4;opacity:0;padding:.5rem .65rem;pointer-events:none;position:absolute;right:0;text-align:left;transition:opacity .2s ease;white-space:normal;width:210px;z-index:10}.chat-tooltip:after{border:5px solid #0000;border-top:5px solid var(--border);content:"";position:absolute;right:18px;top:100%}.chat-toggle:hover .chat-tooltip{opacity:1}.chat-window{backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);background:var(--surface);border:1px solid var(--border);border-radius:16px;bottom:calc(1.5rem + 64px);box-shadow:0 8px 40px #00000059,0 0 1px var(--border);display:flex;flex-direction:column;height:540px;opacity:0;overflow:hidden;pointer-events:none;position:fixed;right:1.5rem;transform:scale(.85) translateY(12px);transform-origin:bottom right;transition:opacity .22s ease,transform .22s ease;width:380px;z-index:150}.chat-window.open{opacity:1;pointer-events:all;transform:scale(1) translateY(0)}.chat-header{background:var(--accent);flex-shrink:0;justify-content:space-between;padding:.85rem 1rem}.chat-header,.chat-header-info{align-items:center;display:flex}.chat-header-info{gap:.6rem}.chat-avatar{align-items:center;background:#00000040;border-radius:50%;color:#000;display:flex;height:32px;justify-content:center;width:32px}.chat-header-title{color:#000;font-family:Syne,sans-serif;font-size:.88rem;font-weight:700;line-height:1.2}.chat-header-sub{color:#0009;font-size:.72rem;margin-top:1px}.chat-close-btn{align-items:center;background:none;border:none;border-radius:6px;color:#000000b3;cursor:pointer;display:flex;justify-content:center;outline:none;padding:4px;transition:color .15s,background .15s}.chat-close-btn:hover{background:#0000001f;color:#000}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:.75rem;overflow-y:auto;padding:1rem;scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-track{background:#0000}.chat-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.chat-msg{display:flex;flex-direction:column;max-width:88%}.chat-msg.user{align-items:flex-end;align-self:flex-end}.chat-msg.assistant{align-items:flex-start;align-self:flex-start}.chat-bubble{border-radius:14px;font-size:.875rem;line-height:1.5;padding:.6rem .85rem;white-space:pre-wrap;word-break:break-word}.chat-msg.user .chat-bubble{background:var(--accent);border-bottom-right-radius:4px;color:#000}.chat-msg.assistant .chat-bubble{border-bottom-left-radius:4px;color:var(--text)}.chat-msg.assistant .chat-bubble,.chat-typing{background:#ffffff0f;border:1px solid var(--border)}.chat-typing{align-items:center;align-self:flex-start;border-radius:14px;border-bottom-left-radius:4px;display:flex;gap:4px;padding:.6rem .85rem}.chat-typing-dot{animation:chat-bounce 1.2s infinite;background:var(--text-muted);border-radius:50%;height:6px;width:6px}.chat-typing-dot:nth-child(2){animation-delay:.2s}.chat-typing-dot:nth-child(3){animation-delay:.4s}@keyframes chat-bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-5px)}}.chat-welcome{align-items:center;display:flex;flex-direction:column;padding:1.5rem .5rem .5rem;text-align:center}.chat-welcome-text{color:var(--text-muted);font-size:.875rem;line-height:1.5;max-width:270px}.chat-error{align-self:flex-start;max-width:88%}.chat-error-bubble{background:#ef44441a;border:1px solid #ef444440;border-radius:14px;border-bottom-left-radius:4px;color:#ef4444;font-size:.8rem;line-height:1.4;padding:.6rem .85rem}.chat-retry-btn{background:none;border:1px solid #ef444466;border-radius:8px;color:#ef4444;cursor:pointer;font-family:inherit;font-size:.75rem;margin-top:.4rem;outline:none;padding:.3rem .7rem;transition:background .15s}.chat-retry-btn:hover{background:#ef44441a}.chat-input-area{background:var(--surface);border-top:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;gap:0}.chat-faq{border-bottom:1px solid var(--border);padding:.55rem .75rem .4rem}.chat-faq-label{color:var(--text-muted);display:block;font-size:.68rem;letter-spacing:.05em;margin-bottom:.35rem;opacity:.7;text-transform:uppercase}.chat-faq-chips{display:flex;flex-direction:column;gap:.3rem}.chat-faq-chip{background:none;border:1px solid var(--border);border-radius:16px;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:.775rem;outline:none;overflow:hidden;padding:.32rem .75rem;text-align:left;text-overflow:ellipsis;transition:border-color .15s,color .15s,background .15s;white-space:nowrap}.chat-faq-chip:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.chat-faq-chip:disabled{cursor:not-allowed;opacity:.4}.chat-input-row{align-items:flex-end;display:flex;gap:.5rem;padding:.65rem .75rem}.chat-input{background:#ffffff0f;border:1px solid var(--border);border-radius:12px;color:var(--text);flex:1 1;font-family:inherit;font-size:.875rem;line-height:1.4;max-height:100px;outline:none;padding:.6rem .85rem;resize:none;transition:border-color .15s}.chat-input::placeholder{color:var(--text-muted)}.chat-input:focus{border-color:var(--accent)}.chat-send-btn{align-items:center;background:var(--accent);border:none;border-radius:10px;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;outline:none;transition:opacity .15s,transform .15s;width:36px}.chat-send-btn:hover:not(:disabled){opacity:.85;transform:scale(1.05)}.chat-send-btn:disabled{cursor:not-allowed;opacity:.4}.chat-send-btn svg{color:#000}@media (max-width:768px){.chat-window{border-radius:0;bottom:0;height:100%;left:0;position:fixed;right:0;top:0;transform-origin:bottom center;width:100%;z-index:200}.chat-toggle{bottom:1rem;right:1rem;z-index:195}}@media (prefers-reduced-motion:reduce){.chat-toggle,.chat-toggle-dot,.chat-toggle:before,.chat-typing-dot,.chat-window{animation:none;transition:none}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto}body{background:var(--bg);color:var(--text);font-family:Outfit,sans-serif;overflow-x:hidden;transition:background .45s ease,color .45s ease}h1,h2,h3,h4{font-family:Syne,sans-serif}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px}#three-canvas{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}.section-overlay{background:var(--section-overlay);inset:0;pointer-events:none;position:absolute;z-index:0}#hero .section-overlay{display:none}.section{padding:90px 0}.container,.section,.section>*{position:relative;z-index:1}.container{margin:0 auto;max-width:1100px;padding:0 clamp(16px,5vw,40px)}.section-tag{color:var(--accent);font-family:DM Mono,monospace;font-size:11px;letter-spacing:3px;margin-bottom:10px;opacity:.9;text-transform:uppercase}.section-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--text) 30%,var(--accent) 100%);-webkit-background-clip:text;background-clip:text;font-size:clamp(1.8rem,4vw,3rem);font-weight:800;line-height:1.1;margin-bottom:18px}.divider{background:linear-gradient(90deg,#0000,var(--border),#0000);height:1px;margin-bottom:72px;width:100%}.card{backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:clamp(16px,3vw,26px);transition:transform .3s ease,box-shadow .3s ease}.card:hover{box-shadow:0 20px 60px #00e5ff17;transform:translateY(-4px)}.skill-pill{align-items:center;background:var(--accent-soft);border:1px solid var(--border);border-radius:100px;color:var(--accent);display:inline-flex;font-family:DM Mono,monospace;font-size:11px;font-weight:500;gap:5px;padding:5px 12px;transition:all .2s ease;white-space:nowrap}.skill-pill:hover{transform:scale(1.05)}.btn-primary,.skill-pill:hover{background:var(--accent);color:var(--bg)}.btn-primary{align-items:center;border:none;border-radius:100px;cursor:pointer;display:inline-flex;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;gap:8px;letter-spacing:.3px;padding:11px 26px;text-decoration:none;transition:all .3s ease}.btn-primary:hover{box-shadow:0 8px 30px #00e5ff59;filter:brightness(1.1);transform:translateY(-2px)}.btn-ghost{align-items:center;background:#0000;border:1px solid var(--border);border-radius:100px;color:var(--accent);cursor:pointer;display:inline-flex;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;gap:8px;padding:11px 26px;text-decoration:none;transition:all .3s ease}.btn-ghost:hover{background:var(--accent-soft);transform:translateY(-2px)}.parallax-slow{will-change:transform}.fade-up{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease}.fade-up.visible{opacity:1;transform:translateY(0)}.fade-up-delay-1{transition-delay:.1s}.fade-up-delay-2{transition-delay:.2s}.fade-up-delay-3{transition-delay:.3s}.fade-up-delay-4{transition-delay:.4s}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.nav-link{background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:Outfit,sans-serif;font-size:13px;font-weight:500;letter-spacing:.3px;padding:6px 2px;position:relative;transition:color .2s ease}.nav-link:after{background:var(--accent);border-radius:2px;bottom:0;content:"";height:2px;left:0;position:absolute;right:0;transform:scaleX(0);transition:transform .25s ease}.nav-link.active,.nav-link:hover{color:var(--accent)}.nav-link.active{font-weight:600}.nav-link.active:after{transform:scaleX(1)}.logo-btn{align-items:center;background:none;border:none;cursor:pointer;display:flex;gap:2px;padding:0;transition:opacity .2s}.logo-btn:hover{opacity:.8}.mobile-menu{backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);background:var(--nav-bg);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:3px;left:0;padding:14px 20px 18px;position:fixed;right:0;top:64px;transform:translateY(-115%);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:99}.mobile-menu.open{transform:translateY(0)}.mobile-nav-link{align-items:center;background:none;border:none;border-radius:10px;color:var(--text);cursor:pointer;display:flex;font-family:Outfit,sans-serif;font-size:15px;font-weight:500;gap:12px;padding:11px 14px;text-align:left;transition:all .2s ease;width:100%}.mobile-nav-link.active,.mobile-nav-link:hover{background:var(--accent-soft);color:var(--accent);padding-left:20px}.hamburger{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;padding:6px}.hamburger span{background:var(--text);border-radius:2px;display:block;height:2px;transition:all .3s ease;width:22px}.hamburger.open span:first-child{transform:rotate(45deg) translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.theme-toggle{align-items:center;background:var(--accent-soft);border:1px solid var(--border);border-radius:100px;cursor:pointer;display:flex;flex-shrink:0;height:26px;outline:none;padding:3px;transition:all .3s ease;width:50px}.theme-toggle-knob{align-items:center;background:var(--accent);border-radius:50%;display:flex;font-size:10px;height:18px;justify-content:center;transition:transform .3s cubic-bezier(.34,1.56,.64,1);width:18px}.theme-toggle-knob.right{transform:translateX(24px)}.hero-name{font-size:clamp(2.8rem,8vw,6.5rem);font-weight:800;letter-spacing:-2px;line-height:.95}.hero-name-accent{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent) 0,var(--accent2) 100%);-webkit-background-clip:text;background-clip:text}.hero-role{color:var(--accent);font-family:DM Mono,monospace;font-size:clamp(.65rem,2vw,.9rem);letter-spacing:3px;text-transform:uppercase}.glow-line{background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:2px;box-shadow:0 0 12px var(--accent);height:2px;margin:16px 0;width:56px}.scroll-indicator{align-items:center;animation:bounce 2s infinite;color:var(--text-muted);font-family:DM Mono,monospace;font-size:10px;gap:5px;letter-spacing:2px}.project-card,.scroll-indicator{display:flex;flex-direction:column}.project-card{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--surface);border:1px solid var(--border);border-radius:20px;overflow:hidden;transition:all .35s cubic-bezier(.175,.885,.32,1.275)}.project-card:hover{transform:translateY(-7px) scale(1.01)}.project-card-header{background:linear-gradient(135deg,var(--accent-soft) 0,#0000 100%);border-bottom:1px solid var(--border);padding:clamp(16px,3vw,24px) clamp(16px,3vw,26px) clamp(12px,2vw,15px)}.project-card-body{display:flex;flex:1 1;flex-direction:column;padding:clamp(14px,3vw,18px) clamp(16px,3vw,26px) clamp(16px,3vw,22px)}.skills-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(90px,1fr))}.skill-item{align-items:center;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--surface);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;font-size:11px;font-weight:500;gap:7px;padding:14px 10px;text-align:center;transition:all .3s ease}.skill-item:hover{background:var(--accent-soft);border-color:var(--accent);transform:translateY(-3px)}.skill-icon{font-size:1.6rem;line-height:1}.contact-link{align-items:center;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--surface);border:1px solid var(--border);border-radius:14px;color:var(--text);display:flex;gap:14px;padding:15px 20px;text-decoration:none;transition:all .3s ease}.contact-link:hover{background:var(--accent-soft);border-color:var(--accent);transform:translateX(5px)}.contact-icon{align-items:center;background:var(--accent-soft);border-radius:10px;display:flex;flex-shrink:0;font-size:17px;height:38px;justify-content:center;width:38px}.orb{border-radius:50%;filter:blur(90px);pointer-events:none;position:fixed;z-index:0}@media (max-width:1024px){.hero-grid{grid-template-columns:1fr!important}.hero-avatar{display:none!important}.about-grid,.exp-row{grid-template-columns:1fr!important}.exp-meta{margin-top:10px;text-align:left!important}}@media (min-width:769px){.hamburger{display:none!important}.nav-desktop{display:flex!important}}@media (max-width:768px){.hamburger{display:flex!important}.nav-desktop{display:none!important}.section{padding:60px 0}.hero-name{letter-spacing:-1px}.projects-grid{grid-template-columns:1fr!important}.stats-row{gap:20px!important}.certs-grid{grid-template-columns:1fr!important}.divider{margin-bottom:52px}}@media (max-width:480px){.skills-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr))}.hero-btns{align-items:flex-start;flex-direction:column!important}.hero-btns a{justify-content:center;width:100%}}
/*# sourceMappingURL=main.7d977fbf.css.map*/