.portfolio-detail-root{background:var(--smoky-black);min-height:100vh;font-family:var(--ff-poppins);padding:20px 15px 60px}.back-btn{color:var(--orange-yellow-crayola);font-size:var(--fs-7);font-weight:var(--fw-500);background:var(--border-gradient-onyx);z-index:1;transition:var(--transition-1);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;margin-bottom:20px;padding:8px 16px;text-decoration:none;display:inline-flex;position:relative}.back-btn:before{content:"";border-radius:inherit;background:var(--bg-gradient-jet);z-index:-1;position:absolute;inset:1px}.back-btn:hover{color:var(--white-1);background:var(--bg-gradient-yellow-1)}.back-btn ion-icon{font-size:16px}.pd-wrapper{flex-direction:column;gap:20px;max-width:900px;margin:0 auto;display:flex}.pd-hero{background:var(--eerie-black-2);border:1px solid var(--jet);min-height:280px;box-shadow:var(--shadow-2);border-radius:20px;position:relative;overflow:hidden}.pd-hero-image-wrap{position:absolute;inset:0}.pd-hero-overlay{background:linear-gradient(#0000 0%,#12121299 50%,#121212 100%);position:absolute;inset:0}.pd-hero-content{z-index:2;flex-direction:column;justify-content:flex-end;min-height:280px;padding:30px 25px 25px;display:flex;position:relative}.pd-category-badge{color:var(--smoky-black);background:var(--text-gradient-yellow);font-size:var(--fs-8);font-weight:var(--fw-600);text-transform:uppercase;letter-spacing:.5px;border-radius:6px;width:max-content;margin-bottom:10px;padding:4px 12px;display:inline-block}.pd-hero-title{font-size:clamp(26px,5vw,42px);font-weight:var(--fw-600);color:var(--white-1);text-shadow:0 2px 10px #00000080;margin-bottom:14px;line-height:1.2}.pd-hero-meta{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.pd-meta-item{color:var(--light-gray-70);font-size:var(--fs-7);align-items:center;gap:5px;display:flex}.pd-meta-item ion-icon{color:var(--orange-yellow-crayola);font-size:15px}.pd-meta-link{color:var(--white-2);font-size:var(--fs-7);font-weight:var(--fw-500);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:var(--transition-1);background:#ffffff1a;border:1px solid #ffffff26;border-radius:8px;align-items:center;gap:5px;padding:5px 12px;display:flex}.pd-meta-link:hover{background:var(--orange-yellow-crayola);color:var(--smoky-black);border-color:var(--orange-yellow-crayola)}.pd-meta-link ion-icon{font-size:14px}.pd-metrics-bar{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.pd-metric-item{background:var(--border-gradient-onyx);z-index:1;text-align:center;box-shadow:var(--shadow-1);transition:var(--transition-1);border-radius:14px;flex-direction:column;align-items:center;padding:18px 10px;display:flex;position:relative}.pd-metric-item:before{content:"";border-radius:inherit;background:var(--bg-gradient-jet);z-index:-1;position:absolute;inset:1px}.pd-metric-item:hover{transform:translateY(-2px)}.pd-metric-value{font-size:var(--fs-1);font-weight:var(--fw-600);background:var(--text-gradient-yellow);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:4px;line-height:1.1}.pd-metric-label{color:var(--light-gray-70);font-size:var(--fs-8);font-weight:var(--fw-400);text-transform:uppercase;letter-spacing:.4px}.pd-metric-link{font-size:var(--fs-1);font-weight:var(--fw-600);background:var(--text-gradient-yellow);-webkit-text-fill-color:transparent;transition:var(--transition-1);-webkit-background-clip:text;background-clip:text;justify-content:center;align-items:center;gap:6px;margin-bottom:4px;line-height:1.1;text-decoration:none;display:flex}.pd-metric-link ion-icon{-webkit-text-fill-color:initial;color:var(--orange-yellow-crayola);flex-shrink:0;font-size:22px}.pd-metric-item:hover .pd-metric-link{opacity:.85}.pd-content-grid{grid-template-columns:1fr;gap:16px;display:grid}.pd-section{background:var(--border-gradient-onyx);box-shadow:var(--shadow-1);z-index:1;transition:var(--transition-1);border-radius:18px;padding:22px;position:relative}.pd-section:before{content:"";border-radius:inherit;background:var(--bg-gradient-jet);z-index:-1;position:absolute;inset:1px}.pd-section:hover{box-shadow:var(--shadow-3);transform:translateY(-2px)}.pd-section-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.pd-section-title{font-size:var(--fs-2);font-weight:var(--fw-600);color:var(--white-2);padding-bottom:8px;position:relative}.pd-section-title:after{content:"";background:var(--text-gradient-yellow);border-radius:3px;width:28px;height:3px;position:absolute;bottom:0;left:0}.pd-section-title--standalone{font-size:var(--fs-2);margin-bottom:16px}.pd-section-text{color:var(--light-gray);font-size:var(--fs-6);font-weight:var(--fw-300);line-height:1.75}.pd-section-icon-box{z-index:1;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;display:flex;position:relative}.pd-section-icon-box:before{content:"";border-radius:inherit;background:var(--eerie-black-1);z-index:-1;position:absolute;inset:1px}.about-icon{background:var(--border-gradient-onyx);color:var(--orange-yellow-crayola);box-shadow:var(--shadow-1)}.challenge-icon{color:#ffb366;box-shadow:var(--shadow-1);background:linear-gradient(to bottom right,#ff8c1a 3%,#303030 97%)}.solution-icon{color:#85e0b3;box-shadow:var(--shadow-1);background:linear-gradient(to bottom right,#2eb873 3%,#303030 97%)}.tech-icon{color:#759ef0;box-shadow:var(--shadow-1);background:linear-gradient(to bottom right,#306ee8 3%,#303030 97%)}.pd-challenge-content{align-items:flex-start;gap:16px;display:flex}.pd-challenge-icon-wrap{color:#ffa64c;background:#ff8c1a26;border:1px solid #ff8c1a4d;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;margin-top:2px;font-size:20px;display:flex}.pd-solution-content{align-items:flex-start;gap:16px;display:flex}.pd-solution-icon-wrap{color:#70dba6;background:#2eb87326;border:1px solid #2eb8734d;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;margin-top:2px;font-size:20px;display:flex}.pd-tech-grid{flex-wrap:wrap;gap:10px;display:flex}.pd-tech-chip{background:var(--onyx);border:1px solid var(--jet);transition:var(--transition-1);cursor:default;border-radius:30px;align-items:center;gap:8px;padding:8px 14px;display:flex}.pd-tech-chip:hover{border-color:var(--orange-yellow-crayola);background:#ffdb7014;transform:translateY(-2px)}.pd-tech-icon{align-items:center;font-size:18px;display:flex}.pd-tech-name{color:var(--light-gray);font-size:var(--fs-7);font-weight:var(--fw-500);white-space:nowrap}.pd-section--full{grid-column:1/-1}.pd-rich-about{flex-direction:column;gap:12px;display:flex}.pd-about-bullets{flex-wrap:wrap;gap:10px;margin:4px 0;list-style:none;display:flex}.pd-about-bullets li{color:var(--light-gray);font-size:var(--fs-7);font-weight:var(--fw-400);background:#ffdb7014;border:1px solid #ffdb7033;border-radius:20px;padding:6px 14px}.pd-vision-box{border-left:3px solid var(--orange-yellow-crayola);background:#ffdb700d;border-radius:0 10px 10px 0;align-items:flex-start;gap:12px;margin-top:4px;padding:12px 16px;display:flex}.pd-vision-box ion-icon{color:var(--orange-yellow-crayola);flex-shrink:0;margin-top:2px;font-size:20px}.pd-hiw-grid{grid-template-columns:1fr;gap:20px;display:grid}.pd-hiw-block{border:1px solid var(--jet);background:#ffffff08;border-radius:14px;padding:18px}.pd-hiw-block-header{border-bottom:1px solid var(--jet);align-items:center;gap:10px;margin-bottom:14px;padding-bottom:10px;display:flex}.pd-hiw-block-header ion-icon{color:var(--orange-yellow-crayola);flex-shrink:0;font-size:20px}.pd-hiw-block-title{font-size:var(--fs-5);font-weight:var(--fw-600);color:var(--white-2)}.pd-hiw-step{border-bottom:1px solid #ffffff0d;flex-direction:column;gap:6px;padding:10px 0;display:flex}.pd-hiw-step:last-child{border-bottom:none;padding-bottom:0}.pd-hiw-step-heading{font-size:var(--fs-6);font-weight:var(--fw-600);color:var(--orange-yellow-crayola)}.pd-hiw-tech-tags{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.pd-hiw-tech-tag{font-size:11px;font-weight:var(--fw-500);color:var(--light-gray-70);letter-spacing:.3px;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:4px;padding:2px 8px}.pd-screenshots-section{background:var(--border-gradient-onyx);box-shadow:var(--shadow-1);z-index:1;border-radius:18px;padding:22px;position:relative}.pd-screenshots-section:before{content:"";border-radius:inherit;background:var(--bg-gradient-jet);z-index:-1;position:absolute;inset:1px}.pd-screenshots-grid{grid-template-columns:1fr;gap:12px;display:grid}.pd-screenshot-item{background:var(--onyx);height:200px;transition:var(--transition-1);border-radius:12px;overflow:hidden}.pd-screenshot-item:hover{box-shadow:var(--shadow-3);transform:scale(1.01)}@media (min-width:580px){.pd-metrics-bar{grid-template-columns:repeat(4,1fr)}.pd-screenshots-grid{grid-template-columns:repeat(2,1fr)}.pd-screenshot-item{height:220px}.pd-hiw-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.portfolio-detail-root{padding:30px 20px 60px}.pd-hero{min-height:360px}.pd-hero-content{min-height:360px;padding:40px 35px 30px}.pd-content-grid{grid-template-columns:1fr 1fr}.pd-section--technologies{grid-column:1/-1}.pd-screenshot-item{height:260px}}@media (min-width:1024px){.pd-content-grid{grid-template-columns:1fr 1fr}.pd-section--technologies{grid-column:1/-1}}
