@keyframes blogs-module__g67Kpq__fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.blogs-module__g67Kpq__main{max-width:1100px;margin:0 auto;padding:0 28px 80px;animation:.55s ease-out both blogs-module__g67Kpq__fadeInUp}.blogs-module__g67Kpq__pageHeader{text-align:center;margin-bottom:3.5rem}.blogs-module__g67Kpq__sectionLabel{letter-spacing:2.5px;text-transform:uppercase;color:var(--violet-light,#a78bfa);background:#8b5cf61a;border:1px solid #8b5cf640;border-radius:50px;margin-bottom:16px;padding:4px 14px;font-size:.72rem;font-weight:700;display:inline-block}.blogs-module__g67Kpq__heading{letter-spacing:-1.5px;margin-bottom:.75rem;font-size:3.2rem;font-weight:900;}.blogs-module__g67Kpq__subheading{color:var(--text-2,#94a3b8);font-size:1rem}.blogs-module__g67Kpq__grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:22px;display:grid}.blogs-module__g67Kpq__filterBar{flex-wrap:wrap;gap:9px;margin-bottom:26px;display:flex}.blogs-module__g67Kpq__filterChip{border:1px solid var(--border,#ffffff0f);background:var(--card,#121220);color:var(--text-2,#94a3b8);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:7px 14px;font-family:inherit;font-size:.82rem;font-weight:600;transition:border-color .2s,color .2s,background .2s;display:inline-flex}.blogs-module__g67Kpq__filterChip:hover{border-color:var(--border-hover,#8b5cf659);color:var(--text,#f1f5f9)}.blogs-module__g67Kpq__filterChip:focus-visible{outline:2px solid var(--violet,#8b5cf6);outline-offset:2px}.blogs-module__g67Kpq__filterChipActive{color:var(--violet-light,#a78bfa);background:#8b5cf61f;border-color:#8b5cf68c}.blogs-module__g67Kpq__filterCount{font-variant-numeric:tabular-nums;opacity:.65;font-size:.72rem}.blogs-module__g67Kpq__sectionGroup{margin-bottom:4rem}.blogs-module__g67Kpq__sectionGroupHeader{border-bottom:1px solid #ffffff0d;align-items:baseline;gap:16px;margin-bottom:1.75rem;padding-bottom:14px;display:flex}.blogs-module__g67Kpq__sectionGroupTitle{color:var(--text,#f1f5f9);letter-spacing:-.3px;font-size:1.3rem;font-weight:800;position:relative}.blogs-module__g67Kpq__sectionGroupTitle:before{content:"";background:var(--violet,#8b5cf6);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:10px;display:inline-block;box-shadow:0 0 8px #8b5cf699}.blogs-module__g67Kpq__stateCard{text-align:center;background:var(--card,#121220);border:1px solid #ffffff0f;border-radius:18px;flex-direction:column;align-items:center;gap:10px;padding:56px 24px;display:flex}.blogs-module__g67Kpq__stateIcon{color:var(--violet-light,#a78bfa);opacity:.8;margin-bottom:6px}.blogs-module__g67Kpq__stateTitle{color:var(--text,#f1f5f9);font-size:1.05rem;font-weight:700}.blogs-module__g67Kpq__stateMessage{color:var(--text-2,#94a3b8);max-width:360px;font-size:.9rem}@media (max-width:768px){.blogs-module__g67Kpq__main{padding:0 16px 60px}.blogs-module__g67Kpq__heading{font-size:2.4rem}.blogs-module__g67Kpq__grid{grid-template-columns:1fr}}
.projectcard-module__NfFxNq__card{background:var(--card,#121220);border:1px solid #ffffff0f;border-radius:18px;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex;position:relative;overflow:hidden}.projectcard-module__NfFxNq__card:before{content:"";-webkit-mask-composite:xor;pointer-events:none;opacity:0;background:linear-gradient(135deg,#0000 30%,#8b5cf600 60%);border-radius:18px;padding:1px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.projectcard-module__NfFxNq__card:hover{border-color:#8b5cf64d;box-shadow:0 20px 50px #8b5cf626,0 4px 16px #0006}.projectcard-module__NfFxNq__card:hover:before{opacity:1;background:linear-gradient(135deg,#8b5cf699 0%,#a855f766 50%,#0000 100%)}.projectcard-module__NfFxNq__topAccent{transform-origin:0;background:linear-gradient(90deg,#6366f1,#8b5cf6,#ec4899);flex-shrink:0;height:2px;transition:transform .4s;transform:scaleX(0)}.projectcard-module__NfFxNq__card:hover .projectcard-module__NfFxNq__topAccent{transform:scaleX(1)}.projectcard-module__NfFxNq__image{background:var(--surface,#0e0f1c);flex-shrink:0;width:100%;height:210px;position:relative;overflow:hidden}.projectcard-module__NfFxNq__image img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.projectcard-module__NfFxNq__card:hover .projectcard-module__NfFxNq__image img{transform:scale(1.06)}.projectcard-module__NfFxNq__placeholder{background:linear-gradient(135deg,#0e0f1c 0%,#121220 50%,#0e0f1c 100%);flex-direction:column;justify-content:center;align-items:center;gap:16px;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.projectcard-module__NfFxNq__placeholder:before{content:"";background:radial-gradient(60% 50% at 30% 40%,#6366f114 0%,#0000 70%),radial-gradient(40% 40% at 70% 60%,#a855f70f 0%,#0000 70%);position:absolute;inset:0}.projectcard-module__NfFxNq__placeholderGrid{grid-template-columns:repeat(4,1fr);gap:7px;display:grid;position:relative}.projectcard-module__NfFxNq__placeholderDot{background:#8b5cf62e;border-radius:50%;width:6px;height:6px}.projectcard-module__NfFxNq__placeholderDot:nth-child(2),.projectcard-module__NfFxNq__placeholderDot:nth-child(6),.projectcard-module__NfFxNq__placeholderDot:nth-child(11),.projectcard-module__NfFxNq__placeholderDot:nth-child(15){background:#8b5cf680;border-radius:3px;width:8px;height:8px}.projectcard-module__NfFxNq__placeholderDot:nth-child(5),.projectcard-module__NfFxNq__placeholderDot:nth-child(10){background:#a855f759}.projectcard-module__NfFxNq__placeholderLabel{letter-spacing:2px;text-transform:uppercase;color:#8b5cf673;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:80%;font-size:.72rem;font-weight:700;position:relative;overflow:hidden}.projectcard-module__NfFxNq__content{flex-direction:column;flex:1;padding:22px;display:flex}.projectcard-module__NfFxNq__content h2{color:var(--text,#f1f5f9);letter-spacing:-.2px;margin-bottom:8px;font-size:1.08rem;font-weight:700;line-height:1.35}.projectcard-module__NfFxNq__content p{color:var(--text-2,#94a3b8);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin-bottom:18px;font-size:.86rem;line-height:1.65;display:-webkit-box;overflow:hidden}.projectcard-module__NfFxNq__techTags{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.projectcard-module__NfFxNq__techTag{letter-spacing:.3px;color:var(--violet-light,#a78bfa);white-space:nowrap;background:#8b5cf61a;border:1px solid #8b5cf633;border-radius:50px;padding:3px 10px;font-size:.72rem;font-weight:600}.projectcard-module__NfFxNq__links{flex-direction:row;align-items:center;gap:8px;display:flex}.projectcard-module__NfFxNq__likeBtn{cursor:pointer;color:var(--text-3,#475569);white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff17;border-radius:9px;flex-shrink:0;align-items:center;gap:5px;padding:9px 12px;font-size:.78rem;font-weight:600;transition:all .22s;display:flex}.projectcard-module__NfFxNq__likeBtn:hover{color:#f43f5e;background:#f43f5e12;border-color:#f43f5e59;transform:translateY(-1px)}.projectcard-module__NfFxNq__likeBtn.projectcard-module__NfFxNq__liked{color:#f43f5e;background:#f43f5e1a;border-color:#f43f5e59}.projectcard-module__NfFxNq__likeHeart{font-size:.9rem;line-height:1;transition:transform .2s cubic-bezier(.34,1.56,.64,1);display:inline-block}.projectcard-module__NfFxNq__likeBtn:hover .projectcard-module__NfFxNq__likeHeart,.projectcard-module__NfFxNq__likeBtn.projectcard-module__NfFxNq__liked .projectcard-module__NfFxNq__likeHeart{transform:scale(1.25)}@keyframes projectcard-module__NfFxNq__likePop{0%{transform:scale(1)}40%{transform:scale(1.45)}70%{transform:scale(.9)}to{transform:scale(1.25)}}.projectcard-module__NfFxNq__likeBtn.projectcard-module__NfFxNq__liked .projectcard-module__NfFxNq__likeHeart{animation:.35s cubic-bezier(.34,1.56,.64,1) projectcard-module__NfFxNq__likePop}@keyframes projectcard-module__NfFxNq__feedbackSlideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.projectcard-module__NfFxNq__feedbackPopover{background:var(--surface,#0e0f1c);border:1px solid #8b5cf633;border-radius:12px;flex-direction:column;gap:8px;margin-top:12px;padding:14px;animation:.25s ease-out both projectcard-module__NfFxNq__feedbackSlideIn;display:flex}.projectcard-module__NfFxNq__feedbackHeader{color:var(--text-2,#94a3b8);justify-content:space-between;align-items:center;gap:8px;font-size:.78rem;font-weight:600;display:flex}.projectcard-module__NfFxNq__feedbackClose{width:20px;height:20px;color:var(--text-3,#475569);cursor:pointer;background:0 0;border:none;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;transition:all .15s;display:flex}.projectcard-module__NfFxNq__feedbackClose:hover{color:var(--text,#f1f5f9);background:#ffffff0f}.projectcard-module__NfFxNq__feedbackInput,.projectcard-module__NfFxNq__feedbackTextarea{background:var(--card,#121220);width:100%;color:var(--text,#f1f5f9);box-sizing:border-box;resize:none;border:1px solid #ffffff14;border-radius:8px;outline:none;padding:8px 10px;font-family:inherit;font-size:.82rem;transition:border-color .2s}.projectcard-module__NfFxNq__feedbackInput:focus,.projectcard-module__NfFxNq__feedbackTextarea:focus{border-color:#8b5cf68c}.projectcard-module__NfFxNq__feedbackInput::placeholder,.projectcard-module__NfFxNq__feedbackTextarea::placeholder{color:var(--text-3,#475569)}.projectcard-module__NfFxNq__feedbackActions{justify-content:flex-end;gap:8px;display:flex}.projectcard-module__NfFxNq__feedbackSkip{color:var(--text-3,#475569);cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:7px;padding:6px 12px;font-size:.76rem;font-weight:600;transition:all .18s}.projectcard-module__NfFxNq__feedbackSkip:hover{color:var(--text-2,#94a3b8);border-color:#ffffff2e}.projectcard-module__NfFxNq__feedbackSubmit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:7px;padding:6px 14px;font-size:.76rem;font-weight:700;transition:all .18s}.projectcard-module__NfFxNq__feedbackSubmit:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.projectcard-module__NfFxNq__feedbackSubmit:disabled{opacity:.5;cursor:not-allowed}.projectcard-module__NfFxNq__feedbackThanks{color:var(--violet-light,#a78bfa);text-align:center;margin:4px 0;font-size:.85rem;font-weight:600}.projectcard-module__NfFxNq__button{cursor:pointer;text-align:center;letter-spacing:.2px;border:1px solid #0000;border-radius:9px;flex:1;padding:9px 10px;font-size:.78rem;font-weight:600;transition:all .22s}.projectcard-module__NfFxNq__buttonCode{color:var(--violet-light,#a78bfa);background:#8b5cf612;border-color:#8b5cf638}.projectcard-module__NfFxNq__buttonCode:hover{background:#8b5cf624;border-color:#8b5cf673;transform:translateY(-1px)}.projectcard-module__NfFxNq__buttonLive{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#0000;box-shadow:0 2px 10px #6366f140}.projectcard-module__NfFxNq__buttonLive:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 5px 18px #6366f173}.projectcard-module__NfFxNq__buttonDetail{color:var(--text-2,#94a3b8);background:#ffffff0a;border-color:#ffffff17}.projectcard-module__NfFxNq__buttonDetail:hover{color:var(--text,#f1f5f9);background:#ffffff14;border-color:#ffffff2e;transform:translateY(-1px)}:root[data-theme=dev] .projectcard-module__NfFxNq__card{border-radius:0}:root[data-theme=dev] .projectcard-module__NfFxNq__card:before{border-radius:0}:root[data-theme=dev] .projectcard-module__NfFxNq__techTag{border-radius:0}:root[data-theme=dev] .projectcard-module__NfFxNq__likeBtn{border-radius:0}:root[data-theme=dev] .projectcard-module__NfFxNq__feedbackPopover{border-radius:0}:root[data-theme=dev] .projectcard-module__NfFxNq__feedbackClose{border-radius:0}:root[data-theme=dev] .projectcard-module__NfFxNq__feedbackTextarea{border-radius:0}:root[data-theme=dev] .projectcard-module__NfFxNq__feedbackSkip{border-radius:0}:root[data-theme=dev] .projectcard-module__NfFxNq__feedbackSubmit{border-radius:0}
@keyframes contact-module__ij3X0G__fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.contact-module__ij3X0G__main{max-width:1050px;margin:0 auto;padding:0 28px 80px;animation:.55s ease-out both contact-module__ij3X0G__fadeInUp}.contact-module__ij3X0G__pageHeader{text-align:center;margin-bottom:3.5rem}.contact-module__ij3X0G__sectionLabel{letter-spacing:2.5px;text-transform:uppercase;color:var(--violet-light,#a78bfa);background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .25);border-radius:50px;margin-bottom:16px;padding:4px 14px;font-size:.72rem;font-weight:700;display:inline-block}.contact-module__ij3X0G__heading{letter-spacing:-1.5px;margin-bottom:.75rem;font-size:3.2rem;font-weight:900;}.contact-module__ij3X0G__subheading{color:var(--text-2,#94a3b8);font-size:1rem}.contact-module__ij3X0G__contactGrid{grid-template-columns:1fr 340px;align-items:start;gap:32px;display:grid}.contact-module__ij3X0G__form{flex-direction:column;gap:14px;display:flex}.contact-module__ij3X0G__form input,.contact-module__ij3X0G__form textarea{width:100%;color:var(--text,#f1f5f9);background:var(--card,#121220);border:1px solid #ffffff14;border-radius:12px;outline:none;padding:14px 18px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.contact-module__ij3X0G__form textarea{resize:vertical;min-height:140px}.contact-module__ij3X0G__form input:focus,.contact-module__ij3X0G__form textarea:focus{border-color:var(--violet,#8b5cf6);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .12)}.contact-module__ij3X0G__form input::placeholder,.contact-module__ij3X0G__form textarea::placeholder{color:var(--text-3,#475569)}.contact-module__ij3X0G__form button{color:#fff;cursor:pointer;box-shadow:0 4px 20px rgba(var(--accent-2-rgb), .3);letter-spacing:.2px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;padding:14px 28px;font-size:.95rem;font-weight:700;transition:all .25s}.contact-module__ij3X0G__form button:hover{opacity:.9;box-shadow:0 8px 28px rgba(var(--accent-2-rgb), .45);transform:translateY(-2px)}.contact-module__ij3X0G__form button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.contact-module__ij3X0G__errorNotice{color:var(--text-2,#94a3b8);font-size:.9rem;line-height:1.6}.contact-module__ij3X0G__errorNotice a{color:var(--violet-light,#a78bfa);text-underline-offset:3px;text-decoration:underline}.contact-module__ij3X0G__infoPanel{background:var(--card,#121220);border:1px solid #ffffff0f;border-radius:18px;flex-direction:column;gap:20px;padding:28px;display:flex;position:sticky;top:100px}.contact-module__ij3X0G__infoPanelTitle{color:var(--text,#f1f5f9);border-bottom:1px solid #ffffff0f;margin-bottom:4px;padding-bottom:14px;font-size:1rem;font-weight:700}.contact-module__ij3X0G__detail{align-items:center;gap:14px;display:flex}.contact-module__ij3X0G__detailIcon{background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .2);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.contact-module__ij3X0G__detailIcon img{filter:invert()brightness(.7);width:16px;height:16px}.contact-module__ij3X0G__detail p{color:var(--text-2,#94a3b8);margin:0;font-size:.9rem;line-height:1.4}.contact-module__ij3X0G__social{border-top:1px solid #ffffff0f;flex-wrap:wrap;gap:10px;padding-top:10px;display:flex}.contact-module__ij3X0G__social a{background:#ffffff0a;border:1px solid #ffffff14;border-radius:11px;justify-content:center;align-items:center;width:42px;height:42px;transition:all .25s;display:inline-flex}.contact-module__ij3X0G__social a:hover{background:rgba(var(--accent-rgb), .12);border-color:rgba(var(--accent-rgb), .35);transform:translateY(-3px)}.contact-module__ij3X0G__social img{opacity:.7;width:17px;height:17px;transition:opacity .2s}.contact-module__ij3X0G__social a:hover img{opacity:1}.contact-module__ij3X0G__socialGithubWrap{position:relative}.contact-module__ij3X0G__socialGithubButton{cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:11px;justify-content:center;align-items:center;width:42px;height:42px;transition:all .25s;display:inline-flex}.contact-module__ij3X0G__socialGithubButton:hover,.contact-module__ij3X0G__socialGithubButton[aria-expanded=true]{background:rgba(var(--accent-rgb), .12);border-color:rgba(var(--accent-rgb), .35);transform:translateY(-3px)}.contact-module__ij3X0G__socialGithubButton img{opacity:.7;width:17px;height:17px;transition:opacity .2s}.contact-module__ij3X0G__socialGithubButton:hover img,.contact-module__ij3X0G__socialGithubButton[aria-expanded=true] img{opacity:1}.contact-module__ij3X0G__socialGithubMenu{background:var(--card,#121220);z-index:10;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;gap:2px;min-width:140px;padding:6px;animation:.15s ease-out both contact-module__ij3X0G__socialMenuIn;display:flex;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 12px 32px #00000080}@keyframes contact-module__ij3X0G__socialMenuIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.contact-module__ij3X0G__socialGithubMenuItem{color:var(--text-2,#94a3b8);border-radius:8px;padding:8px 12px;font-size:.85rem;font-weight:600;transition:all .15s;display:block}.contact-module__ij3X0G__socialGithubMenuItem:hover{background:rgba(var(--accent-rgb), .12);color:var(--text,#f1f5f9)}@media (max-width:860px){.contact-module__ij3X0G__contactGrid{grid-template-columns:1fr}.contact-module__ij3X0G__infoPanel{position:static}}@media (max-width:480px){.contact-module__ij3X0G__main{padding:0 16px 60px}.contact-module__ij3X0G__heading{font-size:2.4rem}}:root[data-theme=dev] .contact-module__ij3X0G__main{max-width:none;padding-left:0;padding-right:0;padding-top:64px!important}:root[data-theme=dev] .contact-module__ij3X0G__form{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__form input{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__form textarea{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__form button{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__infoPanel{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__detailIcon{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__social a{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__socialGithubButton{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__socialGithubMenu{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__socialGithubMenuItem{border-radius:0}:root[data-theme=dev] .contact-module__ij3X0G__pageHeader{margin-bottom:2rem}:root[data-theme=dev] .contact-module__ij3X0G__sectionLabel{font-family:var(--font-geist-mono), monospace;letter-spacing:.2px;text-transform:none;color:var(--text-3);white-space:pre;background:0 0;border:none;border-radius:0;padding:0;font-weight:400;display:block}:root[data-theme=dev] .contact-module__ij3X0G__sectionLabel:before{content:"#!/usr/bin/env contact\a \a "}:root[data-theme=dev] .contact-module__ij3X0G__form{background:var(--card);border:1px solid var(--border);border-radius:var(--r-md,14px);padding:20px}:is(:root[data-theme=dev] .contact-module__ij3X0G__form input,:root[data-theme=dev] .contact-module__ij3X0G__form textarea){background:var(--bg);font-family:var(--font-geist-mono), monospace;font-size:.88rem}:is(:root[data-theme=dev] .contact-module__ij3X0G__form input:focus,:root[data-theme=dev] .contact-module__ij3X0G__form textarea:focus){border-color:var(--violet);box-shadow:0 0 0 3px #007acc26}:root[data-theme=dev] .contact-module__ij3X0G__form button{font-family:var(--font-geist-mono), monospace;text-align:left}:root[data-theme=dev] .contact-module__ij3X0G__form button:before{content:"$ ";opacity:.7}:root[data-theme=dev] .contact-module__ij3X0G__infoPanel{font-family:var(--font-geist-mono), monospace}:root[data-theme=dev] .contact-module__ij3X0G__infoPanelTitle:before{content:"// ";color:var(--text-3);font-weight:400}@media (max-width:768px){:root[data-theme=dev] .contact-module__ij3X0G__main{padding-left:16px;padding-right:16px}}
.file-tabs-module__E-kntq__tabStrip{background:var(--surface);border-bottom:1px solid var(--border);z-index:50;align-items:stretch;margin-bottom:1.25rem;display:flex;position:sticky;top:42px;overflow-x:auto}.file-tabs-module__E-kntq__tab{border-right:1px solid var(--border);white-space:nowrap;background:0 0;border-top:2px solid #0000;align-items:center;transition:background .15s,color .15s;display:inline-flex}.file-tabs-module__E-kntq__tab:hover{background:var(--card-hover)}.file-tabs-module__E-kntq__tabActive{background:var(--card);border-top-color:var(--violet)}.file-tabs-module__E-kntq__tabLabel{cursor:pointer;font-family:var(--font-geist-mono), monospace;color:var(--text-3);background:0 0;border:none;align-items:center;gap:7px;padding:9px 6px 9px 14px;font-size:.78rem;display:inline-flex}.file-tabs-module__E-kntq__tabActive .file-tabs-module__E-kntq__tabLabel{color:var(--text)}.file-tabs-module__E-kntq__tabIcon{opacity:.8;flex-shrink:0}.file-tabs-module__E-kntq__tabClose{cursor:pointer;width:20px;height:20px;color:var(--text-3);opacity:0;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;margin-right:8px;padding:0;transition:opacity .15s,background .15s;display:inline-flex}.file-tabs-module__E-kntq__tab:hover .file-tabs-module__E-kntq__tabClose,.file-tabs-module__E-kntq__tabActive .file-tabs-module__E-kntq__tabClose{opacity:1}.file-tabs-module__E-kntq__tabClose:hover{color:var(--text);background:#ffffff1f}.file-tabs-module__E-kntq__emptyState{font-family:var(--font-geist-mono), monospace;color:var(--text-3);padding:2.5rem 20px;font-size:.85rem}
.breadcrumb-module__PXr3qW__breadcrumb{font-family:var(--font-geist-mono), monospace;color:var(--text-3);flex-wrap:wrap;align-items:center;padding:0 18px 10px;font-size:.74rem;display:flex}.breadcrumb-module__PXr3qW__crumb,.breadcrumb-module__PXr3qW__crumbFile{align-items:center;gap:4px;display:inline-flex}.breadcrumb-module__PXr3qW__crumbFile{color:var(--text-2)}.breadcrumb-module__PXr3qW__crumbSep{opacity:.6;flex-shrink:0;margin:0 2px}.breadcrumb-module__PXr3qW__crumbIcon{opacity:.8;flex-shrink:0}
.code-view-module__Lvxelq__codeBlock{font-family:var(--font-geist-mono), monospace;background:var(--bg);border:none;border-radius:0;min-height:calc(100vh - 130px);margin-bottom:0;padding:18px 0;font-size:.85rem;line-height:1.7;overflow-x:auto}.code-view-module__Lvxelq__codeLine{display:flex}.code-view-module__Lvxelq__codeLine:hover{background:var(--card-hover)}.code-view-module__Lvxelq__lineNum{text-align:right;color:var(--text-3);-webkit-user-select:none;user-select:none;flex-shrink:0;margin:0 20px 0 16px}.code-view-module__Lvxelq__lineContent{white-space:pre-wrap;word-break:break-word;padding-right:20px}.code-view-module__Lvxelq__tok_comment{color:#6a9955;font-style:italic}.code-view-module__Lvxelq__tok_keyword{color:#569cd6}.code-view-module__Lvxelq__tok_key{color:#9cdcfe}.code-view-module__Lvxelq__tok_string{color:#ce9178}.code-view-module__Lvxelq__tok_punct{color:#d4d4d4}.code-view-module__Lvxelq__tok_type{color:#4ec9b0}.code-view-module__Lvxelq__tok_number{color:#b5cea8}.code-view-module__Lvxelq__tok_link{color:#ce9178;cursor:pointer;text-decoration:none}.code-view-module__Lvxelq__tok_link:hover{text-underline-offset:2px;text-decoration:underline}
@keyframes home-module__NoU7wq__fadeIn{0%{opacity:0}to{opacity:1}}@keyframes home-module__NoU7wq__fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes home-module__NoU7wq__floating{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes home-module__NoU7wq__pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.15)}}@keyframes home-module__NoU7wq__scrollBob{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.3;transform:translateY(8px)}}@keyframes home-module__NoU7wq__spin{to{transform:rotate(360deg)}}@keyframes home-module__NoU7wq__shimmer{0%{background-position:-200%}to{background-position:200%}}.home-module__NoU7wq__loadingScreen{background:var(--bg);justify-content:center;align-items:center;height:100vh;display:flex}.home-module__NoU7wq__loadingPulse{background:var(--grad-primary);border-radius:50%;width:48px;height:48px;animation:1.4s ease-in-out infinite home-module__NoU7wq__pulse}.home-module__NoU7wq__banner{justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.home-module__NoU7wq__gradientOverlay{z-index:1;background:radial-gradient(ellipse 70% 60% at 15% 30%, rgba(var(--accent-2-rgb), .18) 0%, transparent 70%), radial-gradient(ellipse 50% 50% at 85% 70%, rgba(var(--accent-rgb), .12) 0%, transparent 70%), linear-gradient(to bottom, var(--bg) 0%, transparent 18%, transparent 82%, var(--bg) 100%);position:absolute;inset:0}.home-module__NoU7wq__overlay{z-index:2;justify-content:space-between;align-items:center;gap:64px;width:100%;max-width:1180px;margin-top:72px;padding:0 48px;display:flex;position:relative}.home-module__NoU7wq__textContainer{flex:1;max-width:600px}.home-module__NoU7wq__title{letter-spacing:-2px;color:var(--text);margin-bottom:18px;font-size:4.2rem;font-weight:900;line-height:1.05;animation:.9s ease-out .1s both home-module__NoU7wq__fadeInUp}.home-module__NoU7wq__roleText{color:var(--text-2);min-height:2.2rem;margin-bottom:22px;font-size:1.5rem;font-weight:600;animation:.9s ease-out .2s both home-module__NoU7wq__fadeInUp}.home-module__NoU7wq__skill{background:var(--grad-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-weight:800}.home-module__NoU7wq__description{color:var(--text-2);margin-bottom:38px;font-size:1.05rem;line-height:1.85;animation:.9s ease-out .3s both home-module__NoU7wq__fadeInUp}.home-module__NoU7wq__buttonGroup{flex-wrap:wrap;gap:14px;animation:.9s ease-out .4s both home-module__NoU7wq__fadeInUp;display:flex}.home-module__NoU7wq__primaryButton{background:var(--grad-primary);color:#fff;cursor:pointer;box-shadow:0 4px 24px rgba(var(--accent-rgb), .35);letter-spacing:.2px;border:none;border-radius:50px;padding:14px 34px;font-size:.95rem;font-weight:700;transition:all .3s}.home-module__NoU7wq__primaryButton:hover{box-shadow:0 10px 36px rgba(var(--accent-rgb), .5);transform:translateY(-3px)}.home-module__NoU7wq__secondaryButton{color:var(--text);cursor:pointer;letter-spacing:.2px;background:0 0;border:1px solid #ffffff2e;border-radius:50px;align-items:center;gap:8px;padding:14px 34px;font-size:.95rem;font-weight:600;transition:all .3s;display:inline-flex}.home-module__NoU7wq__secondaryButton:hover{border-color:var(--border-hover);background:rgba(var(--accent-rgb), .08);transform:translateY(-3px)}.home-module__NoU7wq__imageContainer{flex-shrink:0;justify-content:center;align-items:center;animation:1s ease-out .5s both home-module__NoU7wq__fadeIn;display:flex;position:relative}.home-module__NoU7wq__glowAura{background:radial-gradient(circle at center, rgba(var(--accent-rgb), .28) 0%, rgba(var(--accent-rgb), .14) 40%, #ec48990f 70%, transparent 100%);filter:blur(32px);pointer-events:none;border-radius:50%;width:410px;height:410px;animation:6s ease-in-out infinite home-module__NoU7wq__pulse;position:absolute}.home-module__NoU7wq__profileImage{object-fit:cover;border-radius:50%;width:380px;height:380px;animation:6s ease-in-out 1s infinite home-module__NoU7wq__floating;display:block;position:relative}.home-module__NoU7wq__scrollIndicator{z-index:2;opacity:.6;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.home-module__NoU7wq__scrollDot{background:linear-gradient(to bottom, var(--violet), transparent);border-radius:3px;width:5px;height:22px;animation:2.2s ease-in-out infinite home-module__NoU7wq__scrollBob}@media (max-width:1024px){.home-module__NoU7wq__overlay{text-align:center;flex-direction:column-reverse;gap:40px;padding:0 32px}.home-module__NoU7wq__textContainer{max-width:100%}.home-module__NoU7wq__buttonGroup{justify-content:center}.home-module__NoU7wq__profileImage{width:300px;height:300px}.home-module__NoU7wq__glowAura{width:330px;height:330px}}@media (max-width:768px){.home-module__NoU7wq__banner{min-height:auto;padding:16px 0 48px}.home-module__NoU7wq__overlay{margin-top:88px;padding:0 20px}.home-module__NoU7wq__title{letter-spacing:-1px;font-size:2.8rem}.home-module__NoU7wq__roleText{font-size:1.2rem}.home-module__NoU7wq__profileImage{width:220px;height:220px}.home-module__NoU7wq__glowAura{width:260px;height:260px}.home-module__NoU7wq__scrollIndicator{display:none}}@media (max-width:480px){.home-module__NoU7wq__title{font-size:2.2rem}.home-module__NoU7wq__primaryButton,.home-module__NoU7wq__secondaryButton{padding:12px 24px;font-size:.9rem}}
@keyframes about-module__bEqw4q__fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.about-module__bEqw4q__container{max-width:1100px;color:var(--text,#f1f5f9);margin:0 auto;padding:0 28px 80px;animation:.55s ease-out both about-module__bEqw4q__fadeInUp}:root[data-theme=dev] .about-module__bEqw4q__container{max-width:none;padding-left:0;padding-right:0;padding-top:64px!important}:root[data-theme=dev] .about-module__bEqw4q__section{margin-bottom:2rem}:is(:root[data-theme=dev] .about-module__bEqw4q__card,:root[data-theme=dev] .about-module__bEqw4q__timelineCard,:root[data-theme=dev] .about-module__bEqw4q__achievementCard,:root[data-theme=dev] .about-module__bEqw4q__marketplaceCard,:root[data-theme=dev] .about-module__bEqw4q__timelinePeriod,:root[data-theme=dev] .about-module__bEqw4q__button){border-radius:0}:root[data-theme=dev] .about-module__bEqw4q__sectionHeader{display:none}.about-module__bEqw4q__loading{height:70vh;color:var(--text-2,#94a3b8);letter-spacing:1px;justify-content:center;align-items:center;font-size:1rem;display:flex}.about-module__bEqw4q__hero{text-align:center;margin-bottom:4rem}.about-module__bEqw4q__sectionLabel{letter-spacing:2.5px;text-transform:uppercase;color:var(--violet-light,#a78bfa);background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .25);border-radius:50px;margin-bottom:16px;padding:4px 14px;font-size:.72rem;font-weight:700;display:inline-block}.about-module__bEqw4q__heading{letter-spacing:-1.5px;margin-bottom:1.2rem;font-size:3.2rem;font-weight:900;}.about-module__bEqw4q__description{color:var(--text-2,#94a3b8);max-width:760px;margin:0 auto;font-size:1.08rem;line-height:1.9}.about-module__bEqw4q__section{margin-bottom:4rem}.about-module__bEqw4q__sectionHeader{flex-direction:column;gap:10px;margin-bottom:2rem;display:flex}.about-module__bEqw4q__sectionTitle{letter-spacing:-.5px;color:var(--text,#f1f5f9);padding-bottom:14px;font-size:1.75rem;font-weight:800;position:relative}.about-module__bEqw4q__sectionTitle:after{content:"";background:linear-gradient(90deg,#8b5cf6,#a855f7);border-radius:2px;width:48px;height:3px;position:absolute;bottom:0;left:0}:root[data-theme=dev] .about-module__bEqw4q__sectionLabel{font-family:var(--font-geist-mono), monospace;letter-spacing:.2px;text-transform:none;color:var(--text-3);background:0 0;border:none;border-radius:0;padding:0;font-weight:400}:root[data-theme=dev] .about-module__bEqw4q__sectionTitle:after{background:var(--grad-primary)}:root[data-theme=dev] .about-module__bEqw4q__timeline:before{background:linear-gradient(to bottom, var(--violet), transparent)}:root[data-theme=dev] .about-module__bEqw4q__timelinePeriod{font-family:var(--font-geist-mono), monospace;text-transform:none;letter-spacing:.2px;color:var(--text-3);background:0 0;padding:0}:is(:root[data-theme=dev] .about-module__bEqw4q__timelineTitle,:root[data-theme=dev] .about-module__bEqw4q__cardTitle,:root[data-theme=dev] .about-module__bEqw4q__achievementTitle){font-family:var(--font-geist-mono), monospace}.about-module__bEqw4q__timeline{padding-left:32px;position:relative}.about-module__bEqw4q__timeline:before{content:"";background:linear-gradient(to bottom, #8b5cf6, rgba(var(--accent-rgb), 0));border-radius:1px;width:2px;position:absolute;top:8px;bottom:0;left:7px}.about-module__bEqw4q__timelineItem{margin-bottom:1.5rem;position:relative}.about-module__bEqw4q__timelineItem:last-child{margin-bottom:0}.about-module__bEqw4q__timelineDot{background:var(--violet,#8b5cf6);border:3px solid var(--bg,#080810);width:14px;height:14px;box-shadow:0 0 0 2px rgba(var(--accent-rgb), .4), 0 0 16px rgba(var(--accent-rgb), .3);z-index:1;border-radius:50%;position:absolute;top:16px;left:-30px}.about-module__bEqw4q__timelineCard{background:var(--card,#121220);border:1px solid var(--border,#ffffff0f);border-radius:var(--r-md,14px);padding:20px 24px;transition:border-color .25s,box-shadow .25s,transform .25s}.about-module__bEqw4q__timelineCard:hover{border-color:rgba(var(--accent-rgb), .25);box-shadow:0 6px 24px rgba(var(--accent-rgb), .08);transform:translate(4px)}.about-module__bEqw4q__timelinePeriod{text-transform:uppercase;letter-spacing:1.2px;color:var(--violet-light,#a78bfa);background:rgba(var(--accent-rgb), .1);border-radius:50px;margin-bottom:10px;padding:3px 10px;font-size:.76rem;font-weight:700;display:inline-block}.about-module__bEqw4q__timelineTitle{color:var(--text,#f1f5f9);margin-bottom:4px;font-size:1.05rem;font-weight:700}.about-module__bEqw4q__timelineCompany{color:var(--text-2,#94a3b8);font-size:.92rem;font-weight:600}.about-module__bEqw4q__timelineDept{color:var(--text-3,#475569);margin-top:3px;font-size:.83rem}.about-module__bEqw4q__timelineHighlights{border-top:1px solid var(--border,#ffffff0f);flex-direction:column;gap:9px;margin:14px 0 0;padding-top:14px;list-style:none;display:flex}.about-module__bEqw4q__timelineHighlights li{color:var(--text-2,#94a3b8);padding-left:18px;font-size:.86rem;line-height:1.55;position:relative}.about-module__bEqw4q__timelineHighlights li:before{content:"";background:var(--violet,#8b5cf6);width:5px;height:5px;box-shadow:0 0 6px rgba(var(--accent-rgb), .55);border-radius:50%;position:absolute;top:.6em;left:0}.about-module__bEqw4q__timelineHighlights strong,.about-module__bEqw4q__timelineHighlights b{color:var(--text,#f1f5f9);font-weight:600}.about-module__bEqw4q__cardContainer{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;display:grid}.about-module__bEqw4q__card{background:var(--card,#121220);border:1px solid var(--border,#ffffff0f);border-radius:var(--r-md,14px);flex-direction:column;justify-content:space-between;padding:22px 24px;transition:border-color .25s,box-shadow .25s,transform .25s;display:flex}.about-module__bEqw4q__card:hover{border-color:rgba(var(--accent-rgb), .25);box-shadow:0 10px 30px rgba(var(--accent-rgb), .08);transform:translateY(-4px)}.about-module__bEqw4q__cardTitle{color:var(--text,#f1f5f9);border-bottom:1px solid rgba(var(--accent-rgb), .2);margin-bottom:8px;padding-bottom:8px;font-size:1.05rem;font-weight:700}.about-module__bEqw4q__cardText{color:var(--text-2,#94a3b8);margin-top:4px;font-size:.9rem}.about-module__bEqw4q__cardSubText{color:var(--text-3,#475569);margin-top:6px;font-size:.8rem}.about-module__bEqw4q__button{color:#fff;cursor:pointer;box-shadow:0 3px 12px rgba(var(--accent-2-rgb), .25);background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;align-self:flex-start;margin-top:14px;padding:9px 20px;font-size:.85rem;font-weight:600;transition:all .25s;display:inline-block}.about-module__bEqw4q__button:hover{opacity:.88;box-shadow:0 6px 20px rgba(var(--accent-2-rgb), .4);transform:translateY(-2px)}.about-module__bEqw4q__button a{color:#fff;text-decoration:none}.about-module__bEqw4q__achievementGrid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem;display:grid}.about-module__bEqw4q__achievementCard{background:var(--card,#121220);border:1px solid var(--border,#ffffff0f);border-radius:var(--r-md,14px);padding:24px;transition:border-color .25s,box-shadow .25s,transform .25s}.about-module__bEqw4q__achievementCard:hover{border-color:rgba(var(--accent-rgb), .25);box-shadow:0 10px 30px rgba(var(--accent-rgb), .08);transform:translateY(-4px)}.about-module__bEqw4q__achievementIcon{border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:14px;display:inline-flex}.about-module__bEqw4q__achievementTitle{color:var(--text,#f1f5f9);margin-bottom:6px;font-size:1.02rem;font-weight:700;line-height:1.4}.about-module__bEqw4q__achievementMeta{letter-spacing:.5px;text-transform:uppercase;color:var(--violet-light,#a78bfa);margin-bottom:12px;font-size:.76rem;font-weight:700}.about-module__bEqw4q__achievementDesc{color:var(--text-2,#94a3b8);font-size:.88rem;line-height:1.7}.about-module__bEqw4q__marketplaceCard{background:var(--card,#121220);border:1px solid rgba(var(--accent-rgb), .2);border-radius:18px;padding:28px;transition:border-color .25s,box-shadow .25s}.about-module__bEqw4q__marketplaceCard:hover{border-color:rgba(var(--accent-rgb), .35);box-shadow:0 12px 40px rgba(var(--accent-rgb), .1)}.about-module__bEqw4q__marketplaceCardTop{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.about-module__bEqw4q__marketplaceCardMeta{flex:1;min-width:200px}.about-module__bEqw4q__marketplaceDomain{letter-spacing:1.5px;text-transform:uppercase;color:var(--violet-light,#a78bfa);background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .25);border-radius:50px;margin-bottom:14px;padding:3px 12px;font-size:.76rem;font-weight:700;display:inline-block}.about-module__bEqw4q__marketplaceDesc{color:var(--text-2,#94a3b8);margin:0;font-size:.95rem;line-height:1.75}.about-module__bEqw4q__marketplaceTools{border-top:1px solid #ffffff0d;flex-wrap:wrap;gap:10px;padding-top:20px;display:flex}.about-module__bEqw4q__marketplaceTool{background:var(--surface,#0e0f1c);border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;flex:1;gap:2px;min-width:120px;padding:10px 16px;transition:border-color .2s,transform .2s;display:flex}.about-module__bEqw4q__marketplaceTool:hover{border-color:rgba(var(--accent-rgb), .25);transform:translateY(-2px)}.about-module__bEqw4q__marketplaceToolName{color:var(--text,#f1f5f9);font-size:.88rem;font-weight:700}.about-module__bEqw4q__marketplaceToolDesc{color:var(--text-3,#475569);font-size:.76rem}@media (max-width:768px){.about-module__bEqw4q__heading{font-size:2.4rem}.about-module__bEqw4q__sectionTitle{font-size:1.5rem}.about-module__bEqw4q__cardContainer{grid-template-columns:1fr}.about-module__bEqw4q__timeline{padding-left:24px}.about-module__bEqw4q__marketplaceCardTop{flex-direction:column}.about-module__bEqw4q__marketplaceTools{gap:8px}.about-module__bEqw4q__marketplaceTool{min-width:100px}:root[data-theme=dev] .about-module__bEqw4q__container{padding-left:16px;padding-right:16px}}
.githubstats-module__3xm9zG__container{background:var(--card,#121220);border:1px solid rgba(var(--accent-rgb), .18);border-radius:18px;padding:28px;transition:border-color .25s,box-shadow .25s}.githubstats-module__3xm9zG__container:hover{border-color:rgba(var(--accent-rgb), .32);box-shadow:0 10px 36px rgba(var(--accent-rgb), .08)}.githubstats-module__3xm9zG__statsRow{gap:0;margin-bottom:28px;display:flex}.githubstats-module__3xm9zG__stat{text-align:center;border-right:1px solid #ffffff0f;flex-direction:column;flex:1;align-items:center;padding:16px 8px;display:flex}.githubstats-module__3xm9zG__stat:last-child{border-right:none}.githubstats-module__3xm9zG__statValue{letter-spacing:-1px;font-size:2rem;font-weight:800;line-height:1.1;}.githubstats-module__3xm9zG__statLabel{letter-spacing:.5px;color:var(--text-3,#475569);text-transform:uppercase;margin-top:5px;font-size:.73rem;font-weight:600}.githubstats-module__3xm9zG__languages{margin-bottom:24px}.githubstats-module__3xm9zG__langTitle{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-3,#475569);margin-bottom:12px;font-size:.75rem;font-weight:700}.githubstats-module__3xm9zG__langBar{background:#ffffff0d;border-radius:50px;gap:2px;height:7px;display:flex;overflow:hidden}.githubstats-module__3xm9zG__langSegment{cursor:default;border-radius:50px;transition:opacity .2s}.githubstats-module__3xm9zG__langSegment:hover{opacity:.8}.githubstats-module__3xm9zG__langLegend{flex-wrap:wrap;gap:12px 20px;margin-top:10px;display:flex}.githubstats-module__3xm9zG__langLegendItem{color:var(--text-2,#94a3b8);align-items:center;gap:6px;font-size:.8rem;display:flex}.githubstats-module__3xm9zG__langDot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.githubstats-module__3xm9zG__githubLink{color:var(--violet-light,#a78bfa);align-items:center;gap:6px;font-size:.84rem;font-weight:600;text-decoration:none;transition:color .2s,gap .2s;display:inline-flex}.githubstats-module__3xm9zG__githubLink:hover{color:var(--violet,#8b5cf6);gap:9px}@media (max-width:480px){.githubstats-module__3xm9zG__statsRow{flex-direction:column;gap:1px}.githubstats-module__3xm9zG__stat{border-bottom:1px solid #ffffff0f;border-right:none;padding:12px 8px}.githubstats-module__3xm9zG__stat:last-child{border-bottom:none}.githubstats-module__3xm9zG__statValue{font-size:1.6rem}}
.leetcodestats-module__uBlQDa__container{background:var(--card,#121220);border:1px solid rgba(var(--accent-rgb), .18);border-radius:18px;padding:28px;transition:border-color .25s,box-shadow .25s}.leetcodestats-module__uBlQDa__container:hover{border-color:rgba(var(--accent-rgb), .32);box-shadow:0 10px 36px rgba(var(--accent-rgb), .08)}.leetcodestats-module__uBlQDa__statsRow{gap:0;margin-bottom:28px;display:flex}.leetcodestats-module__uBlQDa__stat{text-align:center;border-right:1px solid #ffffff0f;flex-direction:column;flex:1;align-items:center;padding:16px 8px;display:flex}.leetcodestats-module__uBlQDa__stat:last-child{border-right:none}.leetcodestats-module__uBlQDa__statValue{letter-spacing:-1px;font-size:2rem;font-weight:800;line-height:1.1;}.leetcodestats-module__uBlQDa__statLabel{letter-spacing:.5px;color:var(--text-3,#475569);text-transform:uppercase;margin-top:5px;font-size:.73rem;font-weight:600}.leetcodestats-module__uBlQDa__chartRow{align-items:center;gap:36px;margin-bottom:24px;display:flex}.leetcodestats-module__uBlQDa__donutWrap{flex-shrink:0;width:160px;height:160px;position:relative}.leetcodestats-module__uBlQDa__donut{border-radius:50%;width:100%;height:100%}.leetcodestats-module__uBlQDa__donutHole{background:var(--card,#121220);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:15px}.leetcodestats-module__uBlQDa__donutTotal{letter-spacing:-1px;font-size:1.9rem;font-weight:800;line-height:1.1;}.leetcodestats-module__uBlQDa__donutCaption{letter-spacing:1px;text-transform:uppercase;color:var(--text-3,#475569);margin-top:3px;font-size:.68rem;font-weight:600}.leetcodestats-module__uBlQDa__legend{flex-direction:column;flex:1;gap:16px;min-width:0;display:flex}.leetcodestats-module__uBlQDa__legendTop{justify-content:space-between;align-items:center;gap:12px;display:flex}.leetcodestats-module__uBlQDa__legendName{color:var(--text-2,#94a3b8);align-items:center;gap:8px;font-size:.84rem;font-weight:600;display:flex}.leetcodestats-module__uBlQDa__legendDot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.leetcodestats-module__uBlQDa__legendCount{color:var(--text-1,#e2e8f0);font-size:.84rem;font-weight:700}.leetcodestats-module__uBlQDa__legendTotal{color:var(--text-3,#475569);font-weight:500}.leetcodestats-module__uBlQDa__legendTrack{background:#ffffff0d;border-radius:50px;height:6px;margin-top:7px;overflow:hidden}.leetcodestats-module__uBlQDa__legendFill{border-radius:50px;height:100%}.leetcodestats-module__uBlQDa__leetcodeLink{color:var(--violet-light,#a78bfa);align-items:center;gap:6px;font-size:.84rem;font-weight:600;text-decoration:none;transition:color .2s,gap .2s;display:inline-flex}.leetcodestats-module__uBlQDa__leetcodeLink:hover{color:var(--violet,#8b5cf6);gap:9px}@media (max-width:560px){.leetcodestats-module__uBlQDa__chartRow{flex-direction:column;gap:24px}.leetcodestats-module__uBlQDa__legend{width:100%}}@media (max-width:480px){.leetcodestats-module__uBlQDa__statsRow{flex-direction:column;gap:1px}.leetcodestats-module__uBlQDa__stat{border-bottom:1px solid #ffffff0f;border-right:none;padding:12px 8px}.leetcodestats-module__uBlQDa__stat:last-child{border-bottom:none}.leetcodestats-module__uBlQDa__statValue{font-size:1.6rem}}
.skillBox-module__gstQSq__skillCircle{background:var(--card,#121220);text-align:center;cursor:default;border:1px solid #ffffff0f;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;padding:20px 12px 16px;transition:border-color .25s,box-shadow .25s,transform .25s,background .25s;display:flex;position:relative;overflow:hidden}.skillBox-module__gstQSq__skillCircle:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#8b5cf666,#0000);height:1px;transition:opacity .25s;position:absolute;top:0;left:0;right:0}.skillBox-module__gstQSq__skillCircle:hover{background:var(--card-hover,#161628);border-color:#8b5cf64d;transform:translateY(-5px);box-shadow:0 12px 30px #8b5cf61a}.skillBox-module__gstQSq__skillCircle:hover:before{opacity:1}.skillBox-module__gstQSq__skillIcon{object-fit:contain;filter:drop-shadow(0 2px 6px #00000080);width:48px;height:48px;margin-bottom:10px;transition:transform .25s}.skillBox-module__gstQSq__skillCircle:hover .skillBox-module__gstQSq__skillIcon{transform:scale(1.1)}.skillBox-module__gstQSq__skillIconFallback{width:48px;height:48px;color:var(--violet-light,#a78bfa);background:#8b5cf61f;border:1px solid #8b5cf633;border-radius:12px;justify-content:center;align-items:center;margin-bottom:10px;font-size:1.1rem;font-weight:700;display:flex}.skillBox-module__gstQSq__skillName{color:var(--text,#f1f5f9);margin:0 0 5px;font-size:.82rem;font-weight:700;line-height:1.3}:is(:root[data-theme=dev] .skillBox-module__gstQSq__skillCircle,:root[data-theme=dev] .skillBox-module__gstQSq__skillIconFallback){border-radius:0}
@keyframes skills-module__faOA9W__fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.skills-module__faOA9W__skillsPage{max-width:1100px;margin:0 auto;padding:0 28px 80px;animation:.55s ease-out both skills-module__faOA9W__fadeInUp}.skills-module__faOA9W__pageHeader{text-align:center;margin-bottom:4rem}.skills-module__faOA9W__sectionLabel{letter-spacing:2.5px;text-transform:uppercase;color:var(--violet-light,#a78bfa);background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .25);border-radius:50px;margin-bottom:16px;padding:4px 14px;font-size:.72rem;font-weight:700;display:inline-block}.skills-module__faOA9W__heading{letter-spacing:-1.5px;margin-bottom:.75rem;font-size:3.2rem;font-weight:900;}.skills-module__faOA9W__subheading{color:var(--text-2,#94a3b8);font-size:1rem}.skills-module__faOA9W__categorySection{margin-bottom:3rem}.skills-module__faOA9W__categoryHeader{align-items:center;gap:14px;margin-bottom:1.25rem;display:flex}.skills-module__faOA9W__categoryTitle{color:var(--text,#f1f5f9);letter-spacing:.2px;font-size:1.1rem;font-weight:700}.skills-module__faOA9W__categoryLine{background:linear-gradient(to right, rgba(var(--accent-rgb),.3), transparent);flex:1;height:1px}.skills-module__faOA9W__conceptRow{flex-wrap:wrap;gap:8px;display:flex}.skills-module__faOA9W__conceptPill{padding:6px 16px;font-size:.8rem;}.skills-module__faOA9W__categoryDot{background:var(--violet,#8b5cf6);width:8px;height:8px;box-shadow:0 0 8px rgba(var(--accent-rgb),.6);border-radius:50%;flex-shrink:0}.skills-module__faOA9W__skillsGrid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}@media (max-width:768px){.skills-module__faOA9W__heading{font-size:2.4rem}.skills-module__faOA9W__skillsGrid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}}:root[data-theme=dev] .skills-module__faOA9W__skillsPage{max-width:none;padding-left:0;padding-right:0;padding-top:64px!important}:is(:root[data-theme=dev] .skills-module__faOA9W__conceptPill,:root[data-theme=dev] .skills-module__faOA9W__categoryDot){border-radius:0}:root[data-theme=dev] .skills-module__faOA9W__pageHeader{margin-bottom:2rem}:root[data-theme=dev] .skills-module__faOA9W__categorySection{margin-bottom:1.5rem}:root[data-theme=dev] .skills-module__faOA9W__categoryHeader{margin-bottom:.75rem}:root[data-theme=dev] .skills-module__faOA9W__sectionLabel{font-family:var(--font-geist-mono), monospace;letter-spacing:.2px;text-transform:none;color:var(--text-3);background:0 0;border:none;border-radius:0;padding:0;font-weight:400}:root[data-theme=dev] .skills-module__faOA9W__categoryTitle{font-family:var(--font-geist-mono), monospace;color:var(--violet-light);font-weight:500}:root[data-theme=dev] .skills-module__faOA9W__categoryTitle:before{content:"const ";color:var(--pink)}:root[data-theme=dev] .skills-module__faOA9W__categoryTitle:after{content:" = [";color:var(--text-3)}:root[data-theme=dev] .skills-module__faOA9W__categorySection:after{content:"];";font-family:var(--font-geist-mono), monospace;color:var(--text-3);margin-top:12px;display:block}:root[data-theme=dev] .skills-module__faOA9W__categoryLine{background:linear-gradient(to right, var(--border-hover), transparent)}:root[data-theme=dev] .skills-module__faOA9W__categoryDot{background:var(--violet);box-shadow:0 0 8px #007acc80}:root[data-theme=dev] .skills-module__faOA9W__conceptPill{font-family:var(--font-geist-mono), monospace}:root[data-theme=dev] .skills-module__faOA9W__conceptPill:before{content:"\"";color:var(--text-3)}:root[data-theme=dev] .skills-module__faOA9W__conceptPill:after{content:"\"";color:var(--text-3)}@media (max-width:768px){:root[data-theme=dev] .skills-module__faOA9W__skillsPage{padding-left:16px;padding-right:16px}}
@keyframes projects-module__goobZG__fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.projects-module__goobZG__main{max-width:1100px;margin:0 auto;padding:0 28px 80px;animation:.55s ease-out both projects-module__goobZG__fadeInUp}.projects-module__goobZG__pageHeader{text-align:center;margin-bottom:3.5rem}.projects-module__goobZG__sectionLabel{letter-spacing:2.5px;text-transform:uppercase;color:var(--violet-light,#a78bfa);background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .25);border-radius:50px;margin-bottom:16px;padding:4px 14px;font-size:.72rem;font-weight:700;display:inline-block}.projects-module__goobZG__heading{letter-spacing:-1.5px;margin-bottom:.75rem;font-size:3.2rem;font-weight:900;}.projects-module__goobZG__subheading{color:var(--text-2,#94a3b8);font-size:1rem}.projects-module__goobZG__grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:22px;display:grid}.projects-module__goobZG__sectionGroup{margin-bottom:4rem}.projects-module__goobZG__sectionGroupHeader{border-bottom:1px solid #ffffff0d;align-items:baseline;gap:16px;margin-bottom:1.75rem;padding-bottom:14px;display:flex}.projects-module__goobZG__sectionGroupTitle{color:var(--text,#f1f5f9);letter-spacing:-.3px;font-size:1.3rem;font-weight:800;position:relative}.projects-module__goobZG__sectionGroupTitle:before{content:"";background:var(--violet,#8b5cf6);width:8px;height:8px;box-shadow:0 0 8px rgba(var(--accent-rgb), .6);vertical-align:middle;border-radius:50%;margin-right:10px;display:inline-block}.projects-module__goobZG__sectionGroupSubtitle{color:var(--text-3,#475569);font-size:.85rem}.projects-module__goobZG__marketplaceBanner{background:var(--card,#121220);border:1px solid rgba(var(--accent-rgb), .2);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:22px 28px;display:flex}.projects-module__goobZG__marketplaceBannerText{color:var(--text-2,#94a3b8);flex:1;min-width:200px;font-size:.92rem;line-height:1.6}.projects-module__goobZG__marketplaceBannerText strong{color:var(--text,#f1f5f9)}.projects-module__goobZG__marketplaceBannerLink{color:#fff;white-space:nowrap;box-shadow:0 4px 16px rgba(var(--accent-2-rgb),.3);background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;align-items:center;gap:8px;padding:10px 22px;font-size:.88rem;font-weight:700;text-decoration:none;transition:all .25s;display:inline-flex}.projects-module__goobZG__marketplaceBannerLink:hover{opacity:.9;box-shadow:0 8px 24px rgba(var(--accent-2-rgb),.4);transform:translateY(-2px)}.projects-module__goobZG__packageChips{flex-wrap:wrap;gap:10px;display:flex}.projects-module__goobZG__packageChip{background:var(--card,#121220);border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;flex:1;gap:2px;min-width:140px;padding:10px 16px;text-decoration:none;transition:border-color .2s,transform .2s;display:flex}.projects-module__goobZG__packageChip:hover{border-color:rgba(var(--accent-rgb), .25);transform:translateY(-2px)}.projects-module__goobZG__packageChipName{color:var(--text,#f1f5f9);font-size:.88rem;font-weight:700}.projects-module__goobZG__packageChipDesc{color:var(--text-3,#475569);font-size:.76rem}@media (max-width:768px){.projects-module__goobZG__main{padding:0 16px 60px}.projects-module__goobZG__heading{font-size:2.4rem}.projects-module__goobZG__grid{grid-template-columns:1fr}.projects-module__goobZG__marketplaceBanner{flex-direction:column;align-items:flex-start}.projects-module__goobZG__packageChips{gap:8px}.projects-module__goobZG__packageChip{min-width:100px}}:root[data-theme=dev] .projects-module__goobZG__main{max-width:none;padding-left:0;padding-right:0;padding-top:64px!important}:is(:root[data-theme=dev] .projects-module__goobZG__marketplaceBanner,:root[data-theme=dev] .projects-module__goobZG__marketplaceBannerLink,:root[data-theme=dev] .projects-module__goobZG__packageChip){border-radius:0}:root[data-theme=dev] .projects-module__goobZG__pageHeader{margin-bottom:2rem}:root[data-theme=dev] .projects-module__goobZG__sectionGroup{margin-bottom:2rem}:root[data-theme=dev] .projects-module__goobZG__sectionGroupHeader{margin-bottom:1rem}:root[data-theme=dev] .projects-module__goobZG__sectionLabel{font-family:var(--font-geist-mono), monospace;letter-spacing:.2px;text-transform:none;color:var(--text-3);background:0 0;border:none;border-radius:0;padding:0;font-weight:400}:root[data-theme=dev] .projects-module__goobZG__sectionGroupTitle{font-family:var(--font-geist-mono), monospace}:root[data-theme=dev] .projects-module__goobZG__sectionGroupTitle:before{content:"📁 ";box-shadow:none;vertical-align:baseline;background:0 0;border-radius:0;width:auto;height:auto}:root[data-theme=dev] .projects-module__goobZG__packageChip{font-family:var(--font-geist-mono), monospace}:root[data-theme=dev] .projects-module__goobZG__packageChipName{color:var(--violet-light)}:root[data-theme=dev] .projects-module__goobZG__packageChipName:before{content:"import ";color:var(--pink)}@media (max-width:768px){:root[data-theme=dev] .projects-module__goobZG__main{padding-left:16px;padding-right:16px}}
.markdown-preview-module__AIYyXW__previewBar{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:1.5rem;padding:10px 0 0;display:flex}.markdown-preview-module__AIYyXW__previewBadge{background:var(--card);border:1px solid var(--border);color:var(--text-2);font-family:var(--font-geist-mono), monospace;letter-spacing:.3px;white-space:nowrap;align-items:center;gap:6px;margin:0 18px 10px 0;padding:3px 9px;font-size:.7rem;display:inline-flex}
@keyframes projectdetail-module__55sTha__fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes projectdetail-module__55sTha__spin{to{transform:rotate(360deg)}}.projectdetail-module__55sTha__projectDetailPage{min-height:100vh;padding:120px 24px 80px;animation:.55s ease-out both projectdetail-module__55sTha__fadeInUp}.projectdetail-module__55sTha__container{max-width:900px;margin:0 auto}.projectdetail-module__55sTha__wideContainer{max-width:1180px;margin:0 auto}.projectdetail-module__55sTha__header{margin-bottom:2.5rem}.projectdetail-module__55sTha__backButton{color:var(--violet-light,#a78bfa);cursor:pointer;background:#8b5cf614;border:1px solid #8b5cf633;border-radius:10px;align-items:center;gap:8px;margin-bottom:20px;padding:8px 16px;font-size:.88rem;font-weight:600;text-decoration:none;transition:all .22s;display:inline-flex}.projectdetail-module__55sTha__backButton:hover{background:#8b5cf626;transform:translate(-4px)}.projectdetail-module__55sTha__projectTitle{letter-spacing:-1px;font-size:2.8rem;font-weight:900;line-height:1.15;}.projectdetail-module__55sTha__metaRow{color:var(--text-2,#94a3b8);flex-wrap:wrap;align-items:center;gap:16px;margin-top:14px;font-size:.88rem;display:flex}.projectdetail-module__55sTha__liveBadge{color:#4ade80;align-items:center;gap:7px;font-weight:600;display:inline-flex}.projectdetail-module__55sTha__liveDot{background:#4ade80;border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite projectdetail-module__55sTha__livePulse;box-shadow:0 0 8px #4ade80b3}@keyframes projectdetail-module__55sTha__livePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.projectdetail-module__55sTha__content{flex-direction:column;gap:3rem;display:flex}.projectdetail-module__55sTha__detailLayout{grid-template-columns:1fr 300px;align-items:start;gap:2.5rem;display:grid}.projectdetail-module__55sTha__mainColumn{flex-direction:column;gap:3rem;min-width:0;display:flex}.projectdetail-module__55sTha__sidebar{flex-direction:column;gap:1.25rem;display:flex;position:sticky;top:100px}.projectdetail-module__55sTha__sidebarCard{background:var(--card,#121220);border:1px solid #ffffff0f;border-radius:18px;padding:24px}.projectdetail-module__55sTha__sidebarTitle{color:var(--text,#f1f5f9);margin-bottom:16px;font-size:1rem;font-weight:700}.projectdetail-module__55sTha__sidebarLinks{flex-direction:column;align-items:stretch;gap:10px;display:flex}.projectdetail-module__55sTha__sidebarLinks .projectdetail-module__55sTha__link{justify-content:center}.projectdetail-module__55sTha__projectNav{grid-template-columns:1fr 1fr;gap:16px;margin-top:3rem;display:grid}.projectdetail-module__55sTha__navLink{background:var(--card,#121220);border:1px solid #ffffff0f;border-radius:16px;flex-direction:column;gap:6px;padding:18px 22px;text-decoration:none;transition:all .22s;display:flex}.projectdetail-module__55sTha__navLink:hover{border-color:#8b5cf659;transform:translateY(-2px)}.projectdetail-module__55sTha__navLinkEnd{text-align:right;grid-column:2;align-items:flex-end}.projectdetail-module__55sTha__navLinkLabel{color:var(--violet-light,#a78bfa);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.projectdetail-module__55sTha__navLinkTitle{color:var(--text,#f1f5f9);font-size:1rem;font-weight:700}.projectdetail-module__55sTha__relatedSection{margin-top:3rem}.projectdetail-module__55sTha__relatedGrid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:20px;display:grid}.projectdetail-module__55sTha__relatedCard{background:var(--card,#121220);border:1px solid #ffffff0f;border-radius:16px;text-decoration:none;transition:all .25s;display:block;overflow:hidden}.projectdetail-module__55sTha__relatedCard:hover{border-color:#8b5cf659;transform:translateY(-4px)}.projectdetail-module__55sTha__relatedThumb{aspect-ratio:16/9;width:100%;position:relative}.projectdetail-module__55sTha__relatedCardBody{padding:14px 16px}.projectdetail-module__55sTha__relatedCardBody h4{color:var(--text,#f1f5f9);margin:0;font-size:.95rem;font-weight:700}.projectdetail-module__55sTha__imageSection{border:1px solid #ffffff12;border-radius:18px;overflow:hidden;box-shadow:0 12px 40px #00000080}.projectdetail-module__55sTha__thumbnail{width:100%;height:auto;transition:transform .4s;display:block}.projectdetail-module__55sTha__imageSection:hover .projectdetail-module__55sTha__thumbnail{transform:scale(1.01)}.projectdetail-module__55sTha__descriptionSection{background:var(--card,#121220);border:1px solid #ffffff0f;border-radius:18px;padding:32px}.projectdetail-module__55sTha__sectionTitle{color:var(--text,#f1f5f9);border-bottom:1px solid #ffffff12;margin-bottom:20px;padding-bottom:14px;font-size:1.3rem;font-weight:700;position:relative}.projectdetail-module__55sTha__sectionTitle:after{content:"";background:linear-gradient(90deg,#8b5cf6,#a855f7);border-radius:1px;width:48px;height:2px;position:absolute;bottom:-1px;left:0}.projectdetail-module__55sTha__description{color:var(--text-2,#94a3b8);font-size:1rem;line-height:1.85}.projectdetail-module__55sTha__description h1,.projectdetail-module__55sTha__description h2,.projectdetail-module__55sTha__description h3,.projectdetail-module__55sTha__description h4,.projectdetail-module__55sTha__description h5,.projectdetail-module__55sTha__description h6{color:var(--text,#f1f5f9);margin-top:1.5em;margin-bottom:.6em;font-weight:700}.projectdetail-module__55sTha__description h3{font-size:1.15rem}.projectdetail-module__55sTha__description h4{margin-top:1.1em;margin-bottom:.3em;font-size:1rem}.projectdetail-module__55sTha__description p{margin-bottom:1em}.projectdetail-module__55sTha__description ul,.projectdetail-module__55sTha__description ol{margin-bottom:1em;padding-left:1.5em}.projectdetail-module__55sTha__description li{margin-bottom:.4em}.projectdetail-module__55sTha__description a{color:var(--violet-light,#a78bfa);text-underline-offset:3px;text-decoration:underline;transition:opacity .2s}.projectdetail-module__55sTha__description a:hover{opacity:.75}.projectdetail-module__55sTha__description code{font-family:var(--font-geist-mono,monospace);color:var(--violet-light,#a78bfa);background:#8b5cf61a;border-radius:5px;padding:2px 7px;font-size:.87em}.projectdetail-module__55sTha__description pre{background:var(--surface,#0e0f1c);border-left:3px solid var(--violet,#8b5cf6);border-radius:12px;margin:1em 0;padding:16px 20px;overflow-x:auto}.projectdetail-module__55sTha__description blockquote{border-left:3px solid var(--violet,#8b5cf6);color:var(--text-3,#475569);margin:1em 0;padding-left:18px;font-style:italic}.projectdetail-module__55sTha__description pre code{color:inherit;background:0 0;padding:0;font-size:.86rem;line-height:1.7}.projectdetail-module__55sTha__description figure{margin:1.9em -32px}.projectdetail-module__55sTha__description figcaption{padding-inline:32px}@media (max-width:820px){.projectdetail-module__55sTha__description figure{overflow-x:auto}.projectdetail-module__55sTha__description figure img{min-width:640px}}.projectdetail-module__55sTha__description img{border:1px solid var(--border,#ffffff0f);border-radius:12px;width:100%;height:auto;display:block}.projectdetail-module__55sTha__description figcaption{text-align:center;color:var(--text-3,#7c8798);margin-top:11px;font-size:.82rem;line-height:1.55}.projectdetail-module__55sTha__techStackWrap{margin-top:1.5em}.projectdetail-module__55sTha__techGroup{margin-bottom:14px}.projectdetail-module__55sTha__techGroup:last-child{margin-bottom:0}.projectdetail-module__55sTha__techGroupLabel{color:var(--text,#f1f5f9);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-size:.78rem;font-weight:600}.projectdetail-module__55sTha__techChips{flex-wrap:wrap;gap:8px;display:flex}.projectdetail-module__55sTha__techChip{padding:4px 12px;font-size:.82rem;}.projectdetail-module__55sTha__metaLine{color:var(--text-2,#94a3b8);margin-top:8px;font-size:.9rem}.projectdetail-module__55sTha__tagRow{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.projectdetail-module__55sTha__tag{padding:3px 10px;font-size:.72rem;}.projectdetail-module__55sTha__linksSection{background:var(--card,#121220);border:1px solid #ffffff0f;border-radius:18px;padding:28px}.projectdetail-module__55sTha__links{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:14px;display:flex}.projectdetail-module__55sTha__link{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;align-items:center;gap:10px;padding:13px 28px;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .25s;display:inline-flex;box-shadow:0 4px 20px #6366f14d}.projectdetail-module__55sTha__link:hover{opacity:.92;transform:translateY(-3px);box-shadow:0 8px 28px #6366f173}.projectdetail-module__55sTha__linkIcon{font-size:1.1rem}.projectdetail-module__55sTha__liveLink{background:linear-gradient(135deg,#6366f1,#8b5cf6,#a855f7) 0 0/200% 200%;position:relative;overflow:hidden;box-shadow:0 4px 20px #8b5cf659}.projectdetail-module__55sTha__liveLink:before{content:"";background:linear-gradient(120deg,#0000 30%,#ffffff59 50%,#0000 70%);transition:transform .6s;position:absolute;inset:0;transform:translate(-120%)}.projectdetail-module__55sTha__liveLink:hover{opacity:1;background-position:100%;transform:translateY(-3px);box-shadow:0 10px 32px #8b5cf680}.projectdetail-module__55sTha__liveLink:hover:before{transform:translate(120%)}.projectdetail-module__55sTha__linkArrow{transition:transform .25s;display:inline-block}.projectdetail-module__55sTha__liveLink:hover .projectdetail-module__55sTha__linkArrow{transform:translate(3px,-3px)}.projectdetail-module__55sTha__secondaryLink{color:var(--text,#f1f5f9);box-shadow:none;background:#ffffff08;border:1px solid #ffffff1f}.projectdetail-module__55sTha__secondaryLink:hover{box-shadow:none;opacity:1;background:#8b5cf61a;border-color:#8b5cf659;transform:translateY(-2px)}.projectdetail-module__55sTha__likeButton{width:100%;color:var(--text-2,#94a3b8);background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;gap:9px;padding:13px 24px;font-size:.92rem;font-weight:700;transition:background .25s,border-color .25s,color .25s,transform .25s;display:inline-flex}.projectdetail-module__55sTha__likeButton:hover{color:var(--text,#f1f5f9);background:#ec489914;border-color:#ec489966;transform:translateY(-2px)}.projectdetail-module__55sTha__likeButton:active{transform:translateY(0)}.projectdetail-module__55sTha__likeHeart{color:var(--text-3,#64748b);font-size:1.2rem;line-height:1;transition:transform .35s cubic-bezier(.34,1.56,.64,1),color .25s}.projectdetail-module__55sTha__likeButton:hover .projectdetail-module__55sTha__likeHeart{color:#ec4899;transform:scale(1.1)}.projectdetail-module__55sTha__likeButton.projectdetail-module__55sTha__liked{color:#f9a8d4;background:linear-gradient(135deg,#ec489929,#db277729);border-color:#ec489973}.projectdetail-module__55sTha__likeButton.projectdetail-module__55sTha__liked .projectdetail-module__55sTha__likeHeart{color:#ec4899;transform:scale(1.2)}.projectdetail-module__55sTha__likeButton.projectdetail-module__55sTha__liked:active .projectdetail-module__55sTha__likeHeart{transform:scale(.9)}.projectdetail-module__55sTha__likeCount{color:var(--text-3,#64748b);font-size:.85rem;font-weight:600}.projectdetail-module__55sTha__likeButton.projectdetail-module__55sTha__liked .projectdetail-module__55sTha__likeCount{color:#f9a8d4}.projectdetail-module__55sTha__loadingContainer{min-height:60vh;color:var(--text-2,#94a3b8);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.projectdetail-module__55sTha__loadingSpinner{border:3px solid #8b5cf633;border-top-color:var(--violet,#8b5cf6);border-radius:50%;width:44px;height:44px;animation:.8s linear infinite projectdetail-module__55sTha__spin}.projectdetail-module__55sTha__errorContainer{text-align:center;padding:80px 20px}.projectdetail-module__55sTha__errorContainer h2{color:var(--text,#f1f5f9);margin-bottom:12px;font-size:2rem;font-weight:800}.projectdetail-module__55sTha__errorContainer p{color:var(--text-2,#94a3b8);margin-bottom:28px;font-size:1rem}.projectdetail-module__55sTha__backLink{color:var(--violet-light,#a78bfa);border:1px solid #8b5cf64d;border-radius:10px;align-items:center;padding:12px 24px;font-weight:600;text-decoration:none;transition:all .22s;display:inline-flex}.projectdetail-module__55sTha__backLink:hover{background:#8b5cf61a;transform:translate(-3px)}@media (max-width:1024px){.projectdetail-module__55sTha__detailLayout{grid-template-columns:1fr}.projectdetail-module__55sTha__sidebar{position:static}}@media (max-width:768px){.projectdetail-module__55sTha__projectDetailPage{padding:100px 16px 60px}.projectdetail-module__55sTha__projectTitle{font-size:2.1rem}.projectdetail-module__55sTha__links{flex-direction:column;align-items:stretch}.projectdetail-module__55sTha__link{justify-content:center}.projectdetail-module__55sTha__projectNav{grid-template-columns:1fr}.projectdetail-module__55sTha__navLinkEnd{text-align:left;grid-column:1;align-items:flex-start}}
