@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__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__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}}
