*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#05050a;--bg2:#0c0c14;--card:#11111f;--accent:#8b5cf6;--accent2:#a78bfa;--text:#f3f4f6;--muted:#9ca3af;--glass:#8b5cf605;--glass-b:#ffffff0f}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:DM Sans,sans-serif;line-height:1.6;overflow-x:hidden}::selection{background:#8b5cf647}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--accent);border-radius:2px}#progress-bar{background:linear-gradient(90deg, var(--accent), var(--accent2));z-index:9999;width:0%;height:2px;transition:width .1s linear;position:fixed;top:0;left:0}#loader{background:var(--bg);z-index:9998;flex-direction:column;justify-content:center;align-items:center;gap:20px;transition:opacity .7s,visibility .7s;display:flex;position:fixed;inset:0}#loader.hide{opacity:0;visibility:hidden;pointer-events:none}.loader-name{letter-spacing:4px;text-transform:uppercase;background:linear-gradient(135deg, var(--text) 30%, var(--accent2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-family:Syne,sans-serif;font-size:22px;font-weight:800}.loader-ring{border:2px solid #8b5cf61f;border-top-color:var(--accent);border-radius:50%;width:44px;height:44px;animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}nav{z-index:500;justify-content:space-between;align-items:center;height:68px;padding:0 6%;transition:background .3s,border-color .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s;display:flex;position:fixed;top:0;left:0;right:0}nav.scrolled{-webkit-backdrop-filter:blur(26px);border-bottom:1px solid var(--glass-b);background:#05050aed}.nav-logo{letter-spacing:-.3px;background:linear-gradient(135deg, var(--text) 20%, var(--accent2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-family:Syne,sans-serif;font-size:18px;font-weight:800;text-decoration:none}.nav-links{align-items:center;gap:34px;list-style:none;display:flex}.nav-links a{color:var(--muted);letter-spacing:.3px;font-size:14px;font-weight:500;text-decoration:none;transition:color .2s;position:relative}.nav-links a:after{content:"";background:var(--accent);width:0;height:1px;transition:width .3s;position:absolute;bottom:-4px;left:0}.nav-links a:hover{color:var(--text)}.nav-links a:hover:after{width:100%}.nav-actions{align-items:center;gap:10px;display:flex}.nav-resume{color:var(--accent2);letter-spacing:.3px;background:0 0;border:1px solid #8b5cf64d;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;text-decoration:none;transition:all .22s}.nav-resume:hover{border-color:var(--accent2);background:#8b5cf61a;transform:translateY(-1px)}.nav-hire{background:var(--accent);color:#fff;letter-spacing:.3px;border-radius:8px;padding:8px 20px;font-size:13px;font-weight:600;text-decoration:none;transition:all .22s}.nav-hire:hover{background:var(--accent2);transform:translateY(-1px);box-shadow:0 6px 22px #8b5cf652}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:var(--text);width:22px;height:1.5px;transition:all .3s;display:block}.hamburger.open span:first-child{transform:rotate(45deg)translate(4.5px,4.5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg)translate(4.5px,-4.5px)}.mobile-nav{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-bottom:1px solid var(--glass-b);z-index:499;background:#05050af7;padding:22px 6% 30px;display:none;position:fixed;top:68px;left:0;right:0}.mobile-nav.open{display:block}.mobile-nav a{color:var(--muted);border-bottom:1px solid var(--glass-b);padding:13px 0;font-size:15px;text-decoration:none;transition:color .2s;display:block}.mobile-nav a:hover{color:var(--text)}.mobile-nav a:last-of-type{border:none}.mobile-resume{color:var(--accent2);border:1px solid #8b5cf64d;border-radius:8px;align-items:center;gap:8px;margin-top:18px;padding:10px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:all .22s;display:inline-flex}.mobile-resume:hover{background:#8b5cf61a}.wa-float{z-index:999;color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;font-size:24px;text-decoration:none;transition:transform .2s,box-shadow .2s;animation:2.8s ease-in-out infinite waPulse;display:flex;position:fixed;bottom:28px;left:28px;box-shadow:0 4px 20px #22c55e4d}.wa-float:hover{animation:none;transform:scale(1.1)translateY(-2px);box-shadow:0 8px 28px #22c55e73}@keyframes waPulse{0%,to{box-shadow:0 4px 20px #22c55e4d}50%{transform:scale(1.05);box-shadow:0 4px 36px #22c55e8c}}#back-top{z-index:400;background:var(--card);width:44px;height:44px;color:var(--accent2);cursor:pointer;opacity:0;border:1px solid #8b5cf647;border-radius:10px;justify-content:center;align-items:center;font-size:14px;transition:all .3s;display:flex;position:fixed;bottom:28px;right:28px;transform:translateY(12px)}#back-top.show{opacity:1;transform:translateY(0)}#back-top:hover{background:#8b5cf61a;transform:translateY(-2px)}section{padding:104px 6%}.section-tag{letter-spacing:2.5px;text-transform:uppercase;color:var(--accent2);margin-bottom:12px;font-size:11px;font-weight:700;display:inline-block}.section-title{letter-spacing:-1.2px;margin-bottom:14px;font-family:Syne,sans-serif;font-size:clamp(28px,4vw,44px);font-weight:800;line-height:1.08}.section-sub{color:var(--muted);max-width:480px;font-size:15.5px;font-weight:300;line-height:1.85}.divider{background:linear-gradient(90deg, var(--accent), transparent);border-radius:2px;width:36px;height:2px;margin:20px 0 54px}#hero{text-align:center;justify-content:center;align-items:center;min-height:100vh;padding:120px 6% 80px;display:flex;position:relative;overflow:hidden}.hero-grid{pointer-events:none;background-image:linear-gradient(#8b5cf609 1px,#0000 1px),linear-gradient(90deg,#8b5cf609 1px,#0000 1px);background-size:58px 58px;position:absolute;inset:0}.hero-glow{pointer-events:none;background:radial-gradient(65% 55% at 50% 48%,#8b5cf612 0%,#0000 68%);position:absolute;inset:0}.hero-particle{pointer-events:none;background:radial-gradient(circle,#8b5cf659,#0000 70%);border-radius:50%;animation:14s ease-in-out infinite floatParticle;position:absolute}.hero-particle.p1{width:220px;height:220px;animation-delay:0s;top:12%;left:8%}.hero-particle.p2{width:160px;height:160px;animation-delay:-4s;top:55%;right:10%}.hero-particle.p3{width:130px;height:130px;animation-delay:-8s;bottom:8%;left:18%}@keyframes floatParticle{0%,to{transform:translate(0)scale(1)}33%{transform:translate(24px,-30px)scale(1.08)}66%{transform:translate(-18px,22px)scale(.95)}}.typing-cursor{background:var(--accent2);width:2px;margin-left:2px;animation:.85s step-end infinite blinkCursor;display:inline-block}@keyframes blinkCursor{0%,to{opacity:1}50%{opacity:0}}@media (width<=768px){.hero-particle{display:none}}.hero-content{z-index:1;max-width:760px;position:relative}.hero-badge{color:var(--accent2);letter-spacing:.4px;background:#8b5cf612;border:1px solid #8b5cf62e;border-radius:100px;align-items:center;gap:9px;margin-bottom:30px;padding:7px 18px;font-size:13px;font-weight:500;display:inline-flex}.badge-dot{background:#4ade80;border-radius:50%;width:6px;height:6px;animation:2.2s ease-in-out infinite dotPulse}@keyframes dotPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}.hero-name{letter-spacing:-2.5px;color:var(--text);margin-bottom:14px;font-family:Syne,sans-serif;font-size:clamp(44px,7.5vw,82px);font-weight:800;line-height:1.03}.hero-name span{background:linear-gradient(135deg, var(--accent) 10%, var(--accent2) 90%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-role{color:var(--muted);letter-spacing:.5px;margin-bottom:18px;font-family:Syne,sans-serif;font-size:clamp(15px,2vw,20px);font-weight:600}.hero-tagline{color:var(--muted);max-width:510px;margin:0 auto 30px;font-size:clamp(14px,1.6vw,17px);font-weight:300;line-height:1.9}.hero-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:22px;margin-bottom:40px;display:flex}.hero-meta-item{color:var(--muted);align-items:center;gap:7px;font-size:13px;display:flex}.hero-meta-item i{color:var(--accent2);font-size:12px}.hero-btns{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.btn-fill{background:var(--accent);color:#fff;cursor:pointer;letter-spacing:.4px;border:none;border-radius:9px;padding:13px 30px;font-size:14px;font-weight:600;text-decoration:none;transition:all .25s;display:inline-block}.btn-fill:hover{background:var(--accent2);transform:translateY(-2px);box-shadow:0 10px 28px #8b5cf661}.btn-ghost{color:var(--text);border:1px solid var(--glass-b);cursor:pointer;letter-spacing:.4px;background:0 0;border-radius:9px;padding:13px 30px;font-size:14px;font-weight:500;text-decoration:none;transition:all .25s;display:inline-block}.btn-ghost:hover{background:#8b5cf60f;border-color:#8b5cf666;transform:translateY(-2px)}.hero-scroll{color:var(--muted);letter-spacing:2px;text-transform:uppercase;flex-direction:column;align-items:center;gap:8px;font-size:10px;animation:2.4s ease-in-out infinite scrollBob;display:flex;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}@keyframes scrollBob{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(8px)}}.scroll-line{background:linear-gradient(to bottom, var(--accent), transparent);width:1px;height:38px}#about{background:var(--bg2)}.about-grid{grid-template-columns:340px 1fr;align-items:start;gap:68px;max-width:1080px;margin:0 auto;display:grid}.about-card{background:var(--card);border:1px solid var(--glass-b);border-radius:20px;padding:36px 28px;position:relative;overflow:hidden}.about-card:before{content:"";background:linear-gradient(90deg,#0000,#8b5cf680,#0000);height:1px;position:absolute;top:0;left:0;right:0}.about-avatar{background:linear-gradient(135deg,#8b5cf62e,#a78bfa14);border:1px solid #8b5cf638;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 18px;font-size:32px;display:flex}.about-avatar-img{width:110px;height:110px;margin:0 auto 20px;position:relative}.about-avatar-img:before{content:"";background:linear-gradient(135deg, var(--accent), var(--accent2), transparent);z-index:0;border-radius:50%;animation:4s linear infinite spin;position:absolute;inset:-3px}.about-avatar-img:after{content:"";background:var(--card);z-index:1;border-radius:50%;position:absolute;inset:-1px}.about-avatar-img img{object-fit:cover;object-position:top center;z-index:2;border:2px solid var(--card);border-radius:50%;width:100%;height:100%;display:block;position:relative}.about-card-name{text-align:center;margin-bottom:4px;font-family:Syne,sans-serif;font-size:17px;font-weight:700}.about-card-role{color:var(--accent2);letter-spacing:.5px;text-align:center;text-transform:uppercase;margin-bottom:24px;font-size:12px;font-weight:600}.about-sep{background:var(--glass-b);height:1px;margin-bottom:22px}.info-row{align-items:flex-start;gap:12px;margin-bottom:14px;font-size:13px;display:flex}.info-row:last-of-type{margin-bottom:0}.info-row i{color:var(--accent2);flex-shrink:0;width:15px;margin-top:2px;font-size:13px}.info-row a{color:var(--muted);word-break:break-all;text-decoration:none;transition:color .2s}.info-row a:hover{color:var(--text)}.info-row span{color:var(--muted)}.stat-strip{gap:10px;margin-top:24px;display:flex}.stat-box{text-align:center;background:#8b5cf60f;border:1px solid #8b5cf61f;border-radius:10px;flex:1;padding:14px 8px}.stat-num{color:var(--accent2);font-family:Syne,sans-serif;font-size:21px;font-weight:800}.stat-lbl{color:var(--muted);letter-spacing:.5px;text-transform:uppercase;margin-top:3px;font-size:10px}.about-text-wrap{padding-top:4px}.about-text-wrap p{color:var(--muted);margin-bottom:16px;font-size:15.5px;font-weight:300;line-height:1.95}.about-text-wrap p strong{color:var(--text);font-weight:500}.about-text-wrap p:last-of-type{margin-bottom:28px}#skills{background:var(--bg)}.skills-inner{max-width:1080px;margin:0 auto}.skills-header{text-align:center}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:12px;display:grid}.skill-card{background:var(--card);border:1px solid var(--glass-b);text-align:center;cursor:default;border-radius:14px;padding:24px 14px;transition:all .28s}.skill-card:hover{border-color:#8b5cf659;transform:translateY(-5px)}.skill-icon{color:var(--muted);margin-bottom:11px;font-size:28px;transition:color .28s;display:block}.skill-card:hover .skill-icon{color:var(--accent2)}.skill-name{color:var(--muted);letter-spacing:.3px;font-size:12px;font-weight:500;transition:color .28s}.skill-card:hover .skill-name{color:var(--text)}#projects{background:var(--bg2)}.projects-inner{max-width:1080px;margin:0 auto}.projects-header{text-align:center}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.proj-card{background:var(--card);border:1px solid var(--glass-b);border-radius:18px;transition:all .32s;overflow:hidden}.proj-card:hover{border-color:#8b5cf64d;transform:translateY(-7px);box-shadow:0 22px 52px #0000008c}.proj-thumb{justify-content:center;align-items:center;height:178px;display:flex;position:relative;overflow:hidden}.proj-thumb-bg{position:absolute;inset:0}.proj-thumb-icon{z-index:1;opacity:.82;font-size:46px;position:relative}.proj-overlay{opacity:0;z-index:2;background:#05050ac7;justify-content:center;align-items:center;gap:10px;transition:opacity .28s;display:flex;position:absolute;inset:0}.proj-card:hover .proj-overlay{opacity:1}.proj-link{background:var(--accent);color:#fff;border-radius:7px;padding:9px 20px;font-size:13px;font-weight:600;text-decoration:none;transition:background .2s}.proj-link:hover{background:var(--accent2)}.proj-link.gh{color:var(--text);background:0 0;border:1px solid #ffffff2e}.proj-link.gh:hover{background:#ffffff14}.proj-body{padding:20px}.proj-tags{flex-wrap:wrap;gap:6px;margin-bottom:11px;display:flex}.proj-tag{color:var(--accent2);letter-spacing:.3px;background:#8b5cf617;border:1px solid #8b5cf629;border-radius:100px;padding:3px 9px;font-size:11px;font-weight:500}.proj-title{letter-spacing:-.2px;margin-bottom:8px;font-family:Syne,sans-serif;font-size:17px;font-weight:700}.proj-desc{color:var(--muted);font-size:13.5px;font-weight:300;line-height:1.75}#contact{background:var(--bg)}.contact-inner{max-width:1020px;margin:0 auto}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:72px;margin-top:56px;display:grid}.connect-side{padding-top:6px}.connect-headline{letter-spacing:-1.5px;margin-bottom:16px;font-family:Syne,sans-serif;font-size:clamp(30px,3.8vw,48px);font-weight:800;line-height:1.08}.connect-headline span{background:linear-gradient(135deg, var(--accent) 10%, var(--accent2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.connect-sub{color:var(--muted);max-width:340px;margin-bottom:38px;font-size:15px;font-weight:300;line-height:1.85}.connect-nodes{flex-direction:column;gap:22px;display:flex}.connect-node{align-items:flex-start;gap:16px;display:flex}.node-icon{width:40px;height:40px;color:var(--accent2);background:#8b5cf614;border:1px solid #8b5cf629;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;display:flex}.node-text{flex-direction:column;gap:3px;padding-top:2px;display:flex}.node-label{letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.node-val{color:var(--text);font-size:14.5px;font-weight:400}.node-val a{color:var(--text);text-decoration:none;transition:color .2s}.node-val a:hover{color:var(--accent2)}.connect-status{color:#4ade80;background:#4ade800f;border:1px solid #4ade8026;border-radius:100px;align-items:center;gap:9px;margin-top:36px;padding:8px 18px;font-size:13px;font-weight:500;display:inline-flex}.status-dot{background:#4ade80;border-radius:50%;width:7px;height:7px;animation:2.2s ease-in-out infinite dotPulse}.form-side{padding-top:4px}.form-side .form-group{flex-direction:column;gap:0;margin-bottom:28px;display:flex;position:relative}.form-side label{letter-spacing:1.8px;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:11px;font-weight:700}.form-side input,.form-side textarea{border:none;border-bottom:1px solid var(--glass-b);color:var(--text);resize:none;background:0 0;outline:none;width:100%;padding:6px 0 12px;font-family:DM Sans,sans-serif;font-size:15px;font-weight:300;transition:border-color .3s}.form-side input::placeholder,.form-side textarea::placeholder{color:var(--muted);opacity:.45}.form-side input:focus,.form-side textarea:focus{border-bottom-color:var(--accent)}.form-side .form-group:after{content:"";background:var(--accent);width:0;height:1px;transition:width .35s;position:absolute;bottom:0;left:0}.form-side .form-group:focus-within:after{width:100%}.form-side textarea{height:110px}.form-side .form-row-2{grid-template-columns:1fr 1fr;gap:24px;display:grid}.submit-arrow-btn{cursor:pointer;color:var(--text);letter-spacing:.4px;background:0 0;border:none;align-items:center;gap:10px;margin-top:4px;padding:0;font-family:Syne,sans-serif;font-size:15px;font-weight:700;transition:color .25s;display:inline-flex}.submit-arrow-btn .arrow-circle{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:15px;transition:background .25s,transform .25s;display:flex}.submit-arrow-btn:hover{color:var(--accent2)}.submit-arrow-btn:hover .arrow-circle{background:var(--accent2);transform:translate(4px)}.form-success{color:#4ade80;background:#4ade800d;border:1px solid #4ade8024;border-radius:10px;align-items:center;gap:10px;margin-top:22px;padding:14px 18px;font-size:13.5px;font-weight:500;display:none}.form-success.show{display:flex}footer{background:var(--bg2);border-top:1px solid var(--glass-b);text-align:center;padding:46px 6%}.footer-logo{background:linear-gradient(135deg, var(--text) 20%, var(--accent2));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:24px;font-family:Syne,sans-serif;font-size:19px;font-weight:800;text-decoration:none;display:inline-block}.social-links{justify-content:center;gap:12px;margin-bottom:28px;display:flex}.social-link{background:var(--card);border:1px solid var(--glass-b);width:42px;height:42px;color:var(--muted);border-radius:10px;justify-content:center;align-items:center;font-size:16px;text-decoration:none;transition:all .25s;display:flex}.social-link:hover{color:var(--accent2);border-color:#8b5cf659;transform:translateY(-3px)}.footer-copy{color:var(--muted);font-size:13px;font-weight:300}.footer-copy span{color:var(--accent2)}.reveal{opacity:0;transition:opacity .65s,transform .65s;transform:translateY(26px)}.reveal.visible{opacity:1;transform:translateY(0)}.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}@media (width<=900px){.about-grid{grid-template-columns:1fr;gap:36px}.contact-grid{grid-template-columns:1fr;gap:48px}.connect-status{margin-top:24px}}@media (width<=768px){.nav-links,.nav-actions{display:none}.hamburger{display:flex}.proj-thumb{flex-direction:column;height:auto;overflow:visible}.proj-thumb img{height:178px;display:block}.proj-overlay{opacity:1;background:0 0;padding:14px 16px 4px;position:static}}@media (width<=480px){section{padding:74px 5%}nav{padding:0 5%}.hero-btns{flex-direction:column;align-items:center}.btn-fill,.btn-ghost{text-align:center;width:100%}.form-side .form-row-2{grid-template-columns:1fr}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.chat-float{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;cursor:pointer;z-index:999;border:none;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;font-size:24px;transition:transform .25s;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 6px 24px #8b5cf666}.chat-float:hover{transform:scale(1.08)translateY(-2px)}.chat-window{background:var(--card);border:1px solid var(--glass-b);z-index:998;border-radius:18px;flex-direction:column;width:340px;max-width:calc(100vw - 40px);height:460px;display:flex;position:fixed;bottom:96px;right:28px;overflow:hidden;box-shadow:0 20px 60px #00000080}.chat-header{background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;justify-content:space-between;align-items:center;padding:16px 18px;font-family:Syne,sans-serif;font-size:14px;font-weight:700;display:flex}.chat-header button{color:#fff;cursor:pointer;opacity:.85;background:0 0;border:none;font-size:16px}.chat-header button:hover{opacity:1}.chat-messages{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.chat-msg{border-radius:12px;max-width:82%;padding:10px 14px;font-size:13.5px;line-height:1.6}.chat-msg.user{background:var(--accent);color:#fff;border-bottom-right-radius:3px;align-self:flex-end}.chat-msg.bot{color:var(--text);background:#8b5cf614;border:1px solid #8b5cf624;border-bottom-left-radius:3px;align-self:flex-start}.chat-msg.typing{align-items:center;gap:4px;display:flex}.chat-msg.typing span{background:var(--accent2);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite typingDot}.chat-msg.typing span:nth-child(2){animation-delay:.2s}.chat-msg.typing span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.chat-input-row{border-top:1px solid var(--glass-b);gap:8px;padding:12px;display:flex}.chat-input-row input{border:1px solid var(--glass-b);color:var(--text);background:#ffffff0a;border-radius:10px;outline:none;flex:1;padding:10px 12px;font-size:13px}.chat-input-row input:focus{border-color:var(--accent)}.chat-input-row button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;width:38px;transition:background .2s}.chat-input-row button:hover{background:var(--accent2)}.chat-input-row button:disabled{opacity:.5;cursor:not-allowed}@media (width<=480px){.chat-window{width:calc(100vw - 32px);height:420px;bottom:88px;right:16px}.chat-float{bottom:20px;right:20px}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}
