.project-card[data-v-6bad6f08]{position:relative;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:1.5rem;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden;display:flex;flex-direction:column;--card-padding: 1.5rem}.project-card.grid-mode[data-v-6bad6f08]{min-height:500px;padding:var(--card-padding);gap:1.5rem}.project-card.list-mode[data-v-6bad6f08]{flex-direction:row;align-items:center;padding:1rem 1.5rem;gap:2rem;min-height:120px}.project-card[data-v-6bad6f08]:hover{transform:translateY(-8px) scale(1.02);border-color:var(--category-color);box-shadow:0 25px 50px #00000026,0 0 0 1px var(--category-color),0 0 30px color-mix(in srgb,var(--category-color) 30%,transparent)}.list-mode[data-v-6bad6f08]:hover{transform:translate(8px) scale(1.01)}.card-background[data-v-6bad6f08]{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;overflow:hidden}.gradient-overlay[data-v-6bad6f08]{position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--category-color),color-mix(in srgb,var(--category-color) 70%,transparent))}.pattern-overlay[data-v-6bad6f08]{position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 25% 25%,var(--category-color) 0%,transparent 50%),radial-gradient(circle at 75% 75%,var(--category-color) 0%,transparent 50%);opacity:.03}.glow-effect[data-v-6bad6f08]{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%),var(--category-color) 0%,transparent 50%);opacity:0;transition:opacity .3s ease;border-radius:inherit}.project-card:hover .glow-effect[data-v-6bad6f08]{opacity:.1}.card-header[data-v-6bad6f08]{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:2;flex-wrap:wrap;gap:.75rem}.list-mode .card-header[data-v-6bad6f08]{flex:none;width:auto}.category-badge[data-v-6bad6f08]{display:flex;align-items:center;gap:.5rem;background:var(--category-color);color:#fff;padding:.5rem 1rem;border-radius:50px;font-size:.875rem;font-weight:600;box-shadow:0 4px 12px color-mix(in srgb,var(--category-color) 40%,transparent);flex-shrink:0}.project-year[data-v-6bad6f08]{display:flex;align-items:center;gap:.5rem;background:#ffffff1a;color:var(--color-text);padding:.375rem .75rem;border-radius:50px;font-size:.8rem;font-weight:500;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.status-indicators[data-v-6bad6f08]{display:flex;gap:.5rem}.status-dot[data-v-6bad6f08]{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.status-dot.demo[data-v-6bad6f08]{background:#10b98133;color:#10b981;border:1px solid rgba(16,185,129,.3)}.status-dot.github[data-v-6bad6f08]{background:#8b5cf633;color:#8b5cf6;border:1px solid rgba(139,92,246,.3)}.status-dot[data-v-6bad6f08]:hover{transform:scale(1.1)}.project-image-container[data-v-6bad6f08]{position:relative;width:100%;height:200px;border-radius:1rem;overflow:hidden;background:#ffffff0d;z-index:2}.image-wrapper[data-v-6bad6f08]{position:relative;width:100%;height:100%}.project-image[data-v-6bad6f08]{width:100%;height:100%;object-fit:cover;transition:all .4s ease;opacity:0}.project-image.loaded[data-v-6bad6f08]{opacity:1}.project-card:hover .project-image[data-v-6bad6f08]{transform:scale(1.05)}.image-overlay[data-v-6bad6f08]{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;gap:1rem;opacity:0;transition:all .3s ease}.project-card:hover .image-overlay[data-v-6bad6f08]{opacity:1}.quick-action[data-v-6bad6f08]{width:50px;height:50px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#fff;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.quick-action.demo[data-v-6bad6f08]{background:#10b981cc}.quick-action.github[data-v-6bad6f08]{background:#8b5cf6cc}.quick-action[data-v-6bad6f08]:hover{transform:scale(1.1)}.tech-badge-overlay[data-v-6bad6f08]{position:absolute;top:1rem;right:1rem}.primary-tech-badge[data-v-6bad6f08]{background:#000c;color:#fff;padding:.375rem .75rem;border-radius:50px;font-size:.8rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.card-content[data-v-6bad6f08]{flex:1;position:relative;z-index:2;display:flex;flex-direction:column;gap:1rem}.list-mode .card-content[data-v-6bad6f08]{flex:1}.project-title[data-v-6bad6f08]{font-size:1.5rem;font-weight:700;color:var(--color-text);line-height:1.3;margin:0;display:flex;align-items:center;gap:.75rem}.list-mode .project-title[data-v-6bad6f08]{font-size:1.25rem}.live-indicator[data-v-6bad6f08]{display:flex;align-items:center;gap:.25rem;background:linear-gradient(45deg,#ef4444,#f97316);color:#fff;padding:.25rem .5rem;border-radius:50px;font-size:.7rem;font-weight:600;animation:pulse-6bad6f08 2s infinite}@keyframes pulse-6bad6f08{0%,to{opacity:1}50%{opacity:.7}}.project-description[data-v-6bad6f08]{color:var(--color-text);opacity:.8;line-height:1.6;margin:0}.list-mode .project-description[data-v-6bad6f08]{font-size:.9rem;line-height:1.5}.expand-btn[data-v-6bad6f08]{align-self:flex-start;display:flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--category-color);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease}.expand-btn[data-v-6bad6f08]:hover{transform:translate(4px)}.tech-preview[data-v-6bad6f08]{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#ffffff0d;border-radius:.75rem;border:1px solid rgba(255,255,255,.1)}.list-mode .tech-preview[data-v-6bad6f08]{padding:.75rem;margin:0}.primary-tech[data-v-6bad6f08]{display:flex;align-items:center;gap:.5rem;color:var(--category-color);font-weight:600}.tech-count[data-v-6bad6f08]{background:#ffffff1a;color:var(--color-text);padding:.25rem .75rem;border-radius:50px;font-size:.8rem;opacity:.8}.technologies-full[data-v-6bad6f08]{background:#0000001a;border-radius:.75rem;padding:1rem;border:1px solid rgba(255,255,255,.05);max-height:50px;overflow:hidden;transition:all .4s ease}.technologies-full.expanded[data-v-6bad6f08],.list-mode .technologies-full[data-v-6bad6f08]{max-height:200px;margin-top:.5rem}.tech-header[data-v-6bad6f08]{display:flex;align-items:center;gap:.5rem;color:var(--color-text);font-weight:600;margin-bottom:.75rem;font-size:.9rem;opacity:.8}.tech-grid[data-v-6bad6f08]{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem}.list-mode .tech-grid[data-v-6bad6f08]{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.375rem}.tech-tag[data-v-6bad6f08]{display:flex;align-items:center;gap:.375rem;background:#ffffff1a;color:var(--color-text);padding:.375rem .75rem;border-radius:50px;font-size:.8rem;font-weight:500;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.tech-tag[data-v-6bad6f08]:hover{background:var(--category-color);color:#fff;transform:translateY(-2px)}.tech-tag i[data-v-6bad6f08]{font-size:.7rem;color:var(--category-color)}.tech-tag:hover i[data-v-6bad6f08]{color:#fff}.card-actions[data-v-6bad6f08]{display:flex;gap:.75rem;position:relative;z-index:2;margin-top:auto}.list-mode .card-actions[data-v-6bad6f08]{flex:none;margin-top:0}.action-btn[data-v-6bad6f08]{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1rem;border-radius:.75rem;font-weight:600;border:none;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;font-size:.875rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.list-mode .action-btn[data-v-6bad6f08]{flex:none;padding:.625rem 1rem;font-size:.8rem}.action-btn.primary[data-v-6bad6f08]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:1px solid rgba(16,185,129,.3)}.action-btn.secondary[data-v-6bad6f08]{background:#ffffff1a;color:var(--color-text);border:1px solid rgba(255,255,255,.2)}.action-btn.details[data-v-6bad6f08]{background:rgba(var(--category-color),.1);color:var(--category-color);border:1px solid rgba(var(--category-color),.3)}.action-btn[data-v-6bad6f08]:hover{transform:translateY(-2px)}.action-btn.primary[data-v-6bad6f08]:hover{box-shadow:0 8px 25px #10b98166}.action-btn.secondary[data-v-6bad6f08]:hover{background:#fff3}.action-btn.details[data-v-6bad6f08]:hover{background:var(--category-color);color:#fff}.btn-shine[data-v-6bad6f08]{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s ease}.action-btn:hover .btn-shine[data-v-6bad6f08]{left:100%}.hover-effects[data-v-6bad6f08]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0}.particles[data-v-6bad6f08]{position:absolute;top:0;left:0;right:0;bottom:0}.particle[data-v-6bad6f08]{position:absolute;width:4px;height:4px;background:var(--category-color);border-radius:50%;opacity:0;animation:float-6bad6f08 6s infinite ease-in-out}.particle[data-v-6bad6f08]:nth-child(1){top:20%;left:20%;animation-delay:0s}.particle[data-v-6bad6f08]:nth-child(2){top:80%;left:80%;animation-delay:1s}.particle[data-v-6bad6f08]:nth-child(3){top:60%;left:10%;animation-delay:2s}.particle[data-v-6bad6f08]:nth-child(4){top:10%;left:90%;animation-delay:3s}.particle[data-v-6bad6f08]:nth-child(5){top:90%;left:30%;animation-delay:4s}.particle[data-v-6bad6f08]:nth-child(6){top:40%;left:70%;animation-delay:5s}@keyframes float-6bad6f08{0%,to{opacity:0;transform:translateY(0) scale(.5)}50%{opacity:.6;transform:translateY(-20px) scale(1)}}.project-card:hover .particle[data-v-6bad6f08]{animation-play-state:running}.card-shine[data-v-6bad6f08]{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .8s ease}.project-card:hover .card-shine[data-v-6bad6f08]{left:100%}.progress-indicator[data-v-6bad6f08]{position:absolute;bottom:0;left:0;right:0;z-index:3}.progress-track[data-v-6bad6f08]{height:3px;background:#ffffff1a}.progress-fill[data-v-6bad6f08]{height:100%;background:var(--category-color);width:0;transition:width .4s ease}.project-card:hover .progress-fill[data-v-6bad6f08]{width:100%}@media (max-width: 1024px){.project-card.grid-mode[data-v-6bad6f08]{min-height:450px}.card-actions[data-v-6bad6f08]{flex-direction:column}.action-btn[data-v-6bad6f08]{flex:none}}@media (max-width: 768px){.project-card[data-v-6bad6f08]{--card-padding: 1.25rem}.list-mode[data-v-6bad6f08]{flex-direction:column;align-items:flex-start;gap:1rem;min-height:auto;padding:1.25rem}.list-mode .card-header[data-v-6bad6f08],.list-mode .card-content[data-v-6bad6f08],.list-mode .card-actions[data-v-6bad6f08]{width:100%}.card-actions[data-v-6bad6f08]{flex-direction:row}.tech-grid[data-v-6bad6f08]{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.375rem}.tech-tag[data-v-6bad6f08]{font-size:.75rem;padding:.25rem .5rem}.project-title[data-v-6bad6f08]{font-size:1.25rem}}@media (max-width: 480px){.project-card[data-v-6bad6f08]{--card-padding: 1rem}.card-actions[data-v-6bad6f08]{flex-direction:column;gap:.5rem}.action-btn[data-v-6bad6f08]{padding:.75rem;font-size:.8rem}.tech-preview[data-v-6bad6f08]{flex-direction:column;gap:.5rem;text-align:center}}.dark .project-card[data-v-6bad6f08]{background:#0000004d;border-color:#ffffff1a}.dark .tech-preview[data-v-6bad6f08],.dark .technologies-full[data-v-6bad6f08],.dark .action-btn.secondary[data-v-6bad6f08]{background:#0003}@media (prefers-reduced-motion: reduce){.project-card[data-v-6bad6f08],.action-btn[data-v-6bad6f08],.btn-shine[data-v-6bad6f08],.card-shine[data-v-6bad6f08],.particle[data-v-6bad6f08],.live-indicator[data-v-6bad6f08]{transition:none;animation:none}.project-card[data-v-6bad6f08]:hover{transform:none}.particle[data-v-6bad6f08]{display:none}}@media (prefers-contrast: high){.project-card[data-v-6bad6f08]{background:var(--color-bg);border:2px solid var(--color-text)}.action-btn[data-v-6bad6f08]{border:2px solid var(--color-text)}.category-badge[data-v-6bad6f08],.action-btn.primary[data-v-6bad6f08]{background:var(--color-text);color:var(--color-bg)}}.action-btn[data-v-6bad6f08]:focus,.quick-action[data-v-6bad6f08]:focus,.expand-btn[data-v-6bad6f08]:focus{outline:2px solid var(--category-color);outline-offset:2px}.project-card[data-v-6bad6f08]{animation:cardEnter-6bad6f08 .6s ease forwards}@keyframes cardEnter-6bad6f08{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.project-filters[data-v-a87a3cd6]{padding:3rem 0;background:var(--color-bg);position:relative;overflow:hidden;opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.4,0,.2,1)}.project-filters.visible[data-v-a87a3cd6]{opacity:1;transform:translateY(0)}.filters-container[data-v-a87a3cd6]{max-width:1200px;margin:0 auto;padding:0 2rem}.filters-header[data-v-a87a3cd6]{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.header-content[data-v-a87a3cd6]{display:flex;align-items:center;gap:1rem}.header-icon[data-v-a87a3cd6]{width:60px;height:60px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;box-shadow:0 8px 25px #3b82f64d}.header-text h3[data-v-a87a3cd6]{font-size:1.5rem;font-weight:700;color:var(--color-text);margin:0 0 .25rem}.header-text p[data-v-a87a3cd6]{color:var(--color-text);opacity:.7;margin:0;font-size:.95rem}.total-counter[data-v-a87a3cd6]{text-align:right}.counter-number[data-v-a87a3cd6]{display:block;font-size:2rem;font-weight:800;color:var(--color-primary);line-height:1}.counter-label[data-v-a87a3cd6]{font-size:.875rem;color:var(--color-text);opacity:.7;text-transform:lowercase}.filters-grid[data-v-a87a3cd6]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.filter-btn[data-v-a87a3cd6]{position:relative;display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:1rem;color:var(--color-text);cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden;transform:scale(1)}.filter-btn[data-v-a87a3cd6]:hover{transform:translateY(-4px) scale(1.02);border-color:var(--category-color);box-shadow:0 15px 35px #0000001a,0 0 0 1px var(--category-color)}.filter-btn.active[data-v-a87a3cd6]{background:var(--category-color);color:#fff;border-color:var(--category-color);transform:translateY(-2px) scale(1.05);box-shadow:0 20px 40px color-mix(in srgb,var(--category-color) 40%,transparent),0 8px 16px color-mix(in srgb,var(--category-color) 30%,transparent)}.filter-icon[data-v-a87a3cd6]{width:48px;height:48px;background:color-mix(in srgb,var(--category-color) 20%,transparent);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--category-color);font-size:1.25rem;transition:all .3s ease;flex-shrink:0}.filter-btn.active .filter-icon[data-v-a87a3cd6]{background:#fff3;color:#fff;transform:scale(1.1)}.filter-content[data-v-a87a3cd6]{flex:1;text-align:left}.filter-name[data-v-a87a3cd6]{display:block;font-weight:600;font-size:1rem;margin-bottom:.25rem}.filter-count[data-v-a87a3cd6]{display:block;font-size:.875rem;opacity:.7}.filter-btn.active .filter-count[data-v-a87a3cd6]{opacity:.9}.active-indicator[data-v-a87a3cd6]{position:absolute;top:0;right:0;width:0;height:0;border-style:solid;border-width:0 20px 20px 0;border-color:transparent var(--category-color) transparent transparent;opacity:0;transition:opacity .3s ease}.filter-btn.active .active-indicator[data-v-a87a3cd6]{opacity:1}.filter-glow[data-v-a87a3cd6]{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 50% 50%,var(--category-color) 0%,transparent 70%);opacity:0;transition:opacity .3s ease;border-radius:inherit}.filter-btn:hover .filter-glow[data-v-a87a3cd6]{opacity:.1}.filter-btn.active .filter-glow[data-v-a87a3cd6]{opacity:.15}.filter-shine[data-v-a87a3cd6]{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .6s ease}.filter-btn:hover .filter-shine[data-v-a87a3cd6]{left:100%}.progress-bar[data-v-a87a3cd6]{height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;position:relative}.progress-fill[data-v-a87a3cd6]{height:100%;border-radius:2px;transition:all .8s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.progress-fill[data-v-a87a3cd6]:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer-a87a3cd6 2s infinite}@keyframes shimmer-a87a3cd6{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (max-width: 768px){.filters-header[data-v-a87a3cd6]{flex-direction:column;gap:1.5rem;text-align:center}.filters-grid[data-v-a87a3cd6]{grid-template-columns:repeat(2,1fr);gap:1rem}.filter-btn[data-v-a87a3cd6]{padding:1rem;flex-direction:column;text-align:center;gap:.75rem}.filter-content[data-v-a87a3cd6]{text-align:center}}@media (max-width: 480px){.filters-grid[data-v-a87a3cd6]{grid-template-columns:1fr}.filter-btn[data-v-a87a3cd6]{flex-direction:row;text-align:left}.filter-content[data-v-a87a3cd6]{text-align:left}}.dark .filter-btn[data-v-a87a3cd6]{background:#0003;border-color:#ffffff1a}.dark .progress-bar[data-v-a87a3cd6]{background:#0000004d}@media (prefers-reduced-motion: reduce){.filter-btn[data-v-a87a3cd6],.filter-shine[data-v-a87a3cd6],.progress-fill[data-v-a87a3cd6],.project-filters[data-v-a87a3cd6]{transition:none;animation:none}.filter-btn[data-v-a87a3cd6]:hover{transform:none}}@media (prefers-contrast: high){.filter-btn[data-v-a87a3cd6]{border:2px solid var(--color-text);background:var(--color-bg)}.filter-btn.active[data-v-a87a3cd6]{background:var(--color-text);color:var(--color-bg)}}.featured-projects[data-v-31ab455c]{position:relative;padding:6rem 0;background:var(--color-bg);overflow:hidden;opacity:0;transform:translateY(50px);transition:all 1s cubic-bezier(.4,0,.2,1)}.featured-projects.visible[data-v-31ab455c]{opacity:1;transform:translateY(0)}.background-effects[data-v-31ab455c]{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;overflow:hidden}.floating-shapes[data-v-31ab455c]{position:absolute;width:100%;height:100%}.shape[data-v-31ab455c]{position:absolute;border-radius:50%;background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary) 20%,transparent),color-mix(in srgb,var(--color-secondary) 15%,transparent));animation:float-31ab455c 20s infinite ease-in-out}.shape-1[data-v-31ab455c]{width:300px;height:300px;top:10%;left:-10%;animation-delay:0s}.shape-2[data-v-31ab455c]{width:200px;height:200px;top:60%;right:-5%;animation-delay:-7s}.shape-3[data-v-31ab455c]{width:150px;height:150px;top:30%;left:60%;animation-delay:-14s}.shape-4[data-v-31ab455c]{width:100px;height:100px;bottom:20%;left:20%;animation-delay:-10s}@keyframes float-31ab455c{0%,to{transform:translateY(0) rotate(0);opacity:.3}25%{transform:translateY(-50px) rotate(90deg);opacity:.7}50%{transform:translateY(-100px) rotate(180deg);opacity:.5}75%{transform:translateY(-50px) rotate(270deg);opacity:.8}}.gradient-mesh[data-v-31ab455c]{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(139,92,246,.1) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(16,185,129,.05) 0%,transparent 50%)}.featured-container[data-v-31ab455c]{max-width:1400px;margin:0 auto;padding:0 2rem;position:relative;z-index:2}.featured-header[data-v-31ab455c]{text-align:center;margin-bottom:4rem}.header-badge[data-v-31ab455c]{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;padding:.75rem 1.5rem;border-radius:50px;font-weight:600;margin-bottom:2rem;box-shadow:0 8px 25px color-mix(in srgb,var(--color-primary) 40%,transparent);animation:pulse-31ab455c 3s infinite}@keyframes pulse-31ab455c{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.featured-title[data-v-31ab455c]{font-size:clamp(2.5rem,5vw,4rem);font-weight:800;margin-bottom:1rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1.2;letter-spacing:-.02em}.featured-subtitle[data-v-31ab455c]{font-size:1.25rem;color:var(--color-text);opacity:.8;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6}.stats-grid[data-v-31ab455c]{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;max-width:800px;margin:0 auto}.stat-item[data-v-31ab455c]{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.5rem;background:#ffffff0d;border-radius:1rem;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .3s ease;min-width:0}.stat-item[data-v-31ab455c]:hover{transform:translateY(-4px);background:#ffffff14;border-color:var(--color-primary);box-shadow:0 8px 25px #0000001a}.stat-icon[data-v-31ab455c]{width:48px;height:48px;min-width:48px;min-height:48px;background:linear-gradient(135deg,var(--color-primary),color-mix(in srgb,var(--color-primary) 80%,transparent));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem;flex-shrink:0;aspect-ratio:1 / 1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #3b82f64d;transition:all .3s ease;overflow:hidden}.stat-icon[data-v-31ab455c]:hover{transform:scale(1.1);box-shadow:0 6px 20px #3b82f666}.stat-icon i[data-v-31ab455c]{flex-shrink:0;line-height:1}.stat-content[data-v-31ab455c]{display:flex;flex-direction:column;margin-top:1rem;min-width:0;align-items:center}.stat-number[data-v-31ab455c]{font-size:2rem;font-weight:800;color:var(--color-primary);line-height:1;margin-bottom:.5rem}.stat-label[data-v-31ab455c]{font-size:.9rem;font-weight:600;color:var(--color-text);opacity:.8;text-transform:uppercase;letter-spacing:.5px}.controls-section[data-v-31ab455c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem;padding:1.5rem;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:1rem;flex-wrap:wrap;gap:1rem}.filter-controls[data-v-31ab455c]{display:flex;gap:1rem;flex-wrap:wrap}.filter-group[data-v-31ab455c]{display:flex;align-items:center;gap:.5rem}.filter-label[data-v-31ab455c]{font-size:.875rem;font-weight:600;color:var(--color-text);opacity:.8}.filter-select[data-v-31ab455c]{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:.5rem;color:var(--color-text);padding:.5rem 1rem;font-size:.875rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.filter-select[data-v-31ab455c]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 20%,transparent)}.view-controls[data-v-31ab455c]{display:flex;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:.5rem;overflow:hidden}.view-btn[data-v-31ab455c]{padding:.75rem 1rem;background:none;border:none;color:var(--color-text);cursor:pointer;transition:all .3s ease;opacity:.7}.view-btn[data-v-31ab455c]:hover{opacity:1;background:#ffffff1a}.view-btn.active[data-v-31ab455c]{background:var(--color-primary);color:#fff;opacity:1}.autoplay-control[data-v-31ab455c]{display:flex;align-items:center}.autoplay-btn[data-v-31ab455c]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:.5rem;color:var(--color-text);cursor:pointer;transition:all .3s ease;font-size:.875rem}.autoplay-btn[data-v-31ab455c]:hover{background:#fff3}.autoplay-btn.active[data-v-31ab455c]{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.project-tabs[data-v-31ab455c]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem;padding:1rem 0;position:relative}@media (min-width: 1200px){.project-tabs[data-v-31ab455c]{grid-template-columns:repeat(3,1fr);gap:2rem}.stats-grid[data-v-31ab455c]{grid-template-columns:repeat(4,1fr);gap:1.75rem}}@media (min-width: 768px) and (max-width: 1199px){.project-tabs[data-v-31ab455c]{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width: 767px){.project-tabs[data-v-31ab455c]{grid-template-columns:1fr;gap:1rem;padding:.5rem 0}}.tab-button[data-v-31ab455c]{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:1.25rem;color:var(--color-text);cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;text-align:left;min-height:120px;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.tab-button.active[data-v-31ab455c]{background:rgba(var(--color-primary-rgb),.15);border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 8px 25px rgba(var(--color-primary-rgb),.25),0 4px 12px #0000001a}.tab-button[data-v-31ab455c]:hover:not(.active){background:#ffffff14;border-color:#fff3;transform:translateY(-1px);box-shadow:0 4px 15px #0000001a}.tab-status[data-v-31ab455c]{flex-shrink:0;width:12px;height:12px;border-radius:50%;position:relative;margin-top:4px}.tab-status[data-v-31ab455c]:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;background:currentColor;border-radius:50%;opacity:.8}.tab-button.active .tab-status[data-v-31ab455c]{box-shadow:0 0 12px currentColor;animation:statusPulse-31ab455c 2s infinite}@keyframes statusPulse-31ab455c{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.tab-content[data-v-31ab455c]{flex:1;display:flex;flex-direction:column;gap:.5rem;min-width:0}.tab-title[data-v-31ab455c]{font-weight:700;font-size:1.1rem;line-height:1.3;color:var(--color-text);margin:0;word-break:break-word;overflow-wrap:break-word}.tab-subtitle[data-v-31ab455c]{font-size:.9rem;opacity:.8;line-height:1.4;color:var(--color-text);font-weight:400;word-break:break-word;overflow-wrap:break-word}.tab-button.active .tab-title[data-v-31ab455c]{color:var(--color-primary)}.tab-button.active .tab-subtitle[data-v-31ab455c]{opacity:1}.complexity-badge[data-v-31ab455c]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#ffffff1a;font-size:1rem;margin-top:2px;transition:all .3s ease}.tab-button.active .complexity-badge[data-v-31ab455c]{background:rgba(var(--color-primary-rgb),.2);transform:scale(1.1)}.tab-button:hover .complexity-badge[data-v-31ab455c]{transform:scale(1.05)}.tab-button[data-v-31ab455c]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .6s ease;z-index:1}.tab-button[data-v-31ab455c]:hover:before{left:100%}.tab-button[data-v-31ab455c]:after{content:"";position:absolute;bottom:0;left:0;height:3px;width:0;background:var(--color-primary);transition:width .4s ease;border-radius:0 0 1.25rem 1.25rem}.tab-button.active[data-v-31ab455c]:after{width:100%}@media (min-width: 1200px){.tab-button[data-v-31ab455c]{min-height:140px;padding:2rem}.tab-title[data-v-31ab455c]{font-size:1.2rem}.tab-subtitle[data-v-31ab455c]{font-size:1rem}.complexity-badge[data-v-31ab455c]{width:36px;height:36px;font-size:1.1rem}}@media (min-width: 768px) and (max-width: 1199px){.tab-button[data-v-31ab455c]{min-height:130px;padding:1.75rem}.tab-title[data-v-31ab455c]{font-size:1.1rem}.tab-subtitle[data-v-31ab455c]{font-size:.95rem}}@media (max-width: 767px){.tab-button[data-v-31ab455c]{min-height:100px;padding:1.25rem;gap:.75rem}.tab-title[data-v-31ab455c]{font-size:1rem}.tab-subtitle[data-v-31ab455c]{font-size:.85rem;line-height:1.3}.complexity-badge[data-v-31ab455c]{width:28px;height:28px;font-size:.9rem}.tab-status[data-v-31ab455c]{width:10px;height:10px}.tab-status[data-v-31ab455c]:after{width:5px;height:5px}}@media (max-width: 480px){.project-tabs[data-v-31ab455c]{margin-bottom:2rem}.tab-button[data-v-31ab455c]{min-height:90px;padding:1rem;gap:.5rem;border-radius:1rem}.tab-title[data-v-31ab455c]{font-size:.95rem;line-height:1.2}.tab-subtitle[data-v-31ab455c]{font-size:.8rem;line-height:1.25}.complexity-badge[data-v-31ab455c]{width:24px;height:24px;font-size:.8rem}}@media (min-width: 1600px){.project-tabs[data-v-31ab455c]{grid-template-columns:repeat(3,1fr);gap:2.5rem;max-width:1400px;margin-left:auto;margin-right:auto}.tab-button[data-v-31ab455c]{min-height:160px;padding:2.5rem}.tab-title[data-v-31ab455c]{font-size:1.3rem}.tab-subtitle[data-v-31ab455c]{font-size:1.1rem}}.tab-button[data-v-31ab455c]:focus{outline:2px solid var(--color-primary);outline-offset:2px}.tab-button[data-v-31ab455c]:focus:not(:focus-visible){outline:none}.dark .tab-button[data-v-31ab455c]{background:#0003;border-color:#ffffff0d}.dark .tab-button.active[data-v-31ab455c]{background:rgba(var(--color-primary-rgb),.1)}.dark .tab-button[data-v-31ab455c]:hover:not(.active){background:#0000004d}@media (prefers-contrast: high){.tab-button[data-v-31ab455c]{background:var(--color-bg);border:2px solid var(--color-text)}.tab-button.active[data-v-31ab455c]{background:var(--color-primary);color:#fff}.complexity-badge[data-v-31ab455c]{background:var(--color-text);color:var(--color-bg)}}@media (prefers-reduced-motion: reduce){.tab-button[data-v-31ab455c],.complexity-badge[data-v-31ab455c],.tab-status[data-v-31ab455c],.tab-button[data-v-31ab455c]:before,.tab-button[data-v-31ab455c]:after{transition:none;animation:none}.tab-button[data-v-31ab455c]:hover,.tab-button.active[data-v-31ab455c]{transform:none}}@media print{.project-tabs[data-v-31ab455c]{display:block}.tab-button[data-v-31ab455c]{background:#fff;border:1px solid #ccc;margin-bottom:1rem;box-shadow:none;page-break-inside:avoid}.tab-button[data-v-31ab455c]:before,.tab-button[data-v-31ab455c]:after{display:none}}.featured-container[data-v-31ab455c]{padding:0 1.5rem}@media (max-width: 768px){.featured-container[data-v-31ab455c]{padding:0 1rem}.project-showcase[data-v-31ab455c]{padding:1rem}}@media (max-width: 480px){.featured-container[data-v-31ab455c]{padding:0 .75rem}}.project-tabs[data-v-31ab455c]{scroll-behavior:smooth}.tab-button.loading[data-v-31ab455c]{opacity:.6;pointer-events:none}.tab-button.loading[data-v-31ab455c]:before{animation:loadingShine-31ab455c 1.5s infinite}@keyframes loadingShine-31ab455c{0%{left:-100%}to{left:100%}}.project-showcase[data-v-31ab455c]{background:#ffffff08;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);border:1px solid rgba(255,255,255,.1);border-radius:2rem;padding:3rem;position:relative;overflow:hidden}.project-header[data-v-31ab455c]{margin-bottom:3rem}.project-meta[data-v-31ab455c]{text-align:center}.project-title[data-v-31ab455c]{font-size:2.5rem;font-weight:800;color:var(--color-text);margin-bottom:.5rem;line-height:1.2}.project-subtitle[data-v-31ab455c]{font-size:1.25rem;color:var(--color-text);opacity:.8;margin-bottom:2rem}.project-badges[data-v-31ab455c]{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.status-badge[data-v-31ab455c],.complexity-badge-full[data-v-31ab455c],.timeline-badge[data-v-31ab455c],.team-badge[data-v-31ab455c]{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:50px;font-size:.875rem;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.status-badge[data-v-31ab455c]{background:#ffffff1a;color:#fff}.complexity-badge-full[data-v-31ab455c]{background:#ffffff1a;border:1px solid currentColor}.timeline-badge[data-v-31ab455c],.team-badge[data-v-31ab455c]{background:#ffffff1a;color:var(--color-text);border:1px solid rgba(255,255,255,.2)}.project-grid[data-v-31ab455c]{display:grid;grid-template-columns:1fr 1fr;gap:3rem;margin-bottom:3rem}.project-grid.detailed-view[data-v-31ab455c]{grid-template-columns:1fr;gap:2rem}.project-media[data-v-31ab455c]{position:relative}.image-gallery[data-v-31ab455c]{background:#0003;border-radius:1.5rem;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.1)}.gallery-header[data-v-31ab455c]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.gallery-info[data-v-31ab455c]{display:flex;align-items:center;gap:1rem}.image-counter[data-v-31ab455c]{font-size:.875rem;color:#fff;font-weight:600}.image-indicators[data-v-31ab455c]{display:flex;gap:.5rem}.indicator[data-v-31ab455c]{width:8px;height:8px;border-radius:50%;background:#fff6;cursor:pointer;transition:all .3s ease}.gallery-controls[data-v-31ab455c]{display:flex;gap:.5rem}.gallery-control-btn[data-v-31ab455c]{width:36px;height:36px;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.gallery-control-btn[data-v-31ab455c]:hover{background:#ffffff4d;transform:scale(1.1)}.gallery-nav[data-v-31ab455c]{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:50px;height:50px;background:#000000b3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.25rem;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.gallery-nav[data-v-31ab455c]:hover{background:#000000e6;transform:translateY(-50%) scale(1.1)}.gallery-nav.prev[data-v-31ab455c]{left:1rem}.gallery-nav.next[data-v-31ab455c]{right:1rem}.gallery-image-container.active[data-v-31ab455c]{transform:scale(1)}.gallery-image[data-v-31ab455c]{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .3s ease;opacity:1;display:block}.gallery-image-container:hover .gallery-image[data-v-31ab455c]{transform:scale(1.05)}.image-overlay[data-v-31ab455c]{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 50%,transparent 100%);display:flex;align-items:flex-end;opacity:0;transition:all .3s ease;padding:1rem;z-index:5}.gallery-image-container:hover .image-overlay[data-v-31ab455c]{opacity:1}.overlay-content[data-v-31ab455c]{color:#fff}.overlay-content h4[data-v-31ab455c]{font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.overlay-content p[data-v-31ab455c]{opacity:.8;margin-bottom:1rem}.zoom-btn[data-v-31ab455c]{display:flex;align-items:center;gap:.5rem;background:var(--color-primary);color:#fff;border:none;padding:.5rem 1rem;border-radius:.5rem;cursor:pointer;font-weight:600;transition:all .3s ease}.zoom-btn[data-v-31ab455c]:hover{background:var(--color-secondary);transform:translateY(-2px)}.gallery-progress[data-v-31ab455c]{height:4px;background:#fff3;border-radius:2px;overflow:hidden}.progress-fill[data-v-31ab455c]{height:100%;background:var(--color-primary);transition:width .6s ease;position:relative;border-radius:2px}.progress-fill[data-v-31ab455c]:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:progressShine-31ab455c 2s infinite}@keyframes progressShine-31ab455c{0%{transform:translate(-100%)}to{transform:translate(100%)}}.project-info[data-v-31ab455c]{flex:1;min-width:400px;padding:2rem;display:flex;flex-direction:column;gap:2rem;background:#ffffff08;border-radius:1.5rem;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:relative;overflow:hidden}.project-info[data-v-31ab455c]:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent)}.info-section[data-v-31ab455c]{background:#ffffff0d;border-radius:1rem;padding:1.5rem;border:1px solid rgba(255,255,255,.1);transition:all .3s ease;position:relative;overflow:hidden}.info-section[data-v-31ab455c]:hover{transform:translateY(-2px);border-color:var(--color-primary);box-shadow:0 8px 25px #0000001a}.info-section[data-v-31ab455c]:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--color-primary);opacity:0;transition:opacity .3s ease}.info-section[data-v-31ab455c]:hover:before{opacity:1}.section-header i[data-v-31ab455c]{font-size:1.25rem;color:var(--color-primary);width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:rgba(var(--color-primary-rgb),.2);border-radius:50%;padding:.5rem}.section-header h4[data-v-31ab455c]{font-size:1.1rem;font-weight:600;color:var(--color-text);margin:0}.info-section p[data-v-31ab455c]{color:var(--color-text);opacity:.9;line-height:1.6;margin:0}.info-section.challenge[data-v-31ab455c]{border-left:4px solid #ef4444}.info-section.challenge .section-header i[data-v-31ab455c]{color:#ef4444;background:#ef444433}.info-section.solution[data-v-31ab455c]{border-left:4px solid #10b981}.info-section.solution .section-header i[data-v-31ab455c]{color:#10b981;background:#10b98133}.info-section.results[data-v-31ab455c]{border-left:4px solid #f59e0b}.info-section.results .section-header i[data-v-31ab455c]{color:#f59e0b;background:#f59e0b33}.info-section.technologies[data-v-31ab455c]{border-left:4px solid #8b5cf6}.info-section.technologies .section-header i[data-v-31ab455c]{color:#8b5cf6;background:#8b5cf633}.results-list[data-v-31ab455c]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.results-list li[data-v-31ab455c]{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#ffffff0d;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.result-icon[data-v-31ab455c]{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-top:2px}.result-icon i[data-v-31ab455c]{color:#10b981;font-size:.875rem}.results-list li span[data-v-31ab455c]{color:var(--color-text);opacity:.9;line-height:1.5;font-size:.95rem}.tech-grid[data-v-31ab455c]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.tech-item[data-v-31ab455c]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#ffffff0d;border-radius:.5rem;border:1px solid rgba(255,255,255,.1);transition:all .3s ease;position:relative;overflow:hidden}.tech-item[data-v-31ab455c]:hover{background:#8b5cf61a;border-color:#8b5cf6;transform:translateY(-2px)}.tech-item[data-v-31ab455c]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(139,92,246,.2),transparent);transition:left .5s ease}.tech-item[data-v-31ab455c]:hover:before{left:100%}.tech-icon[data-v-31ab455c]{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:#8b5cf6;flex-shrink:0}.tech-name[data-v-31ab455c]{color:var(--color-text);font-size:.9rem;font-weight:500;position:relative;z-index:2}.project-actions[data-v-31ab455c]{display:flex;gap:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1);margin-top:auto}.action-button[data-v-31ab455c]{flex:1;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.5rem;border-radius:.75rem;text-decoration:none;font-weight:600;font-size:.95rem;transition:all .3s ease;position:relative;overflow:hidden;border:none;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.action-button.demo[data-v-31ab455c]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 15px #10b9814d}.action-button.demo[data-v-31ab455c]:hover{transform:translateY(-3px);box-shadow:0 8px 25px #10b98180}.action-button.live[data-v-31ab455c]{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 15px #3b82f64d}.action-button.live[data-v-31ab455c]:hover{transform:translateY(-3px);box-shadow:0 8px 25px #3b82f680}.btn-shine[data-v-31ab455c]{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .6s ease}.action-button:hover .btn-shine[data-v-31ab455c]{left:100%}.impact-section[data-v-31ab455c]{background:#ffffff08;border-radius:1.5rem;padding:2rem;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);margin-top:2rem;position:relative;overflow:hidden}.impact-section[data-v-31ab455c]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#10b981,#3b82f6,#8b5cf6,#f59e0b)}.impact-header[data-v-31ab455c]{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.impact-icon[data-v-31ab455c]{width:48px;height:48px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;box-shadow:0 8px 25px #10b9814d}.impact-header h4[data-v-31ab455c]{font-size:1.5rem;font-weight:700;color:var(--color-text);margin:0}.impact-content[data-v-31ab455c]{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:start}.impact-text[data-v-31ab455c]{color:var(--color-text);opacity:.9;line-height:1.7;font-size:1rem}.impact-text p[data-v-31ab455c]{margin:0 0 1rem}.impact-metrics[data-v-31ab455c]{display:grid;grid-template-columns:1fr;gap:1rem}.metric-item[data-v-31ab455c]{text-align:center;padding:1.5rem;background:#ffffff0d;border-radius:1rem;border:1px solid rgba(255,255,255,.1);transition:all .3s ease;position:relative;overflow:hidden}.metric-item[data-v-31ab455c]:hover{transform:translateY(-4px);border-color:var(--color-primary);box-shadow:0 8px 25px #0000001a}.metric-item[data-v-31ab455c]:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--color-primary);transform:scaleX(0);transition:transform .3s ease}.metric-item[data-v-31ab455c]:hover:before{transform:scaleX(1)}.metric-value[data-v-31ab455c]{font-size:2.5rem;font-weight:800;color:var(--color-primary);line-height:1;margin-bottom:.5rem;display:block}.metric-label[data-v-31ab455c]{font-size:.875rem;color:var(--color-text);opacity:.8;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.image-modal[data-v-31ab455c]{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:center;animation:modalFadeIn-31ab455c .3s ease}@keyframes modalFadeIn-31ab455c{0%{opacity:0}to{opacity:1}}.modal-backdrop[data-v-31ab455c]{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000e6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.modal-content[data-v-31ab455c]{position:relative;max-width:90vw;max-height:90vh;background:#ffffff0d;border-radius:1.5rem;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);overflow:hidden;animation:modalSlideIn-31ab455c .4s ease}@keyframes modalSlideIn-31ab455c{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header[data-v-31ab455c]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(255,255,255,.1);background:#ffffff0d}.modal-info h3[data-v-31ab455c]{font-size:1.25rem;font-weight:600;color:var(--color-text);margin:0 0 .25rem}.modal-info span[data-v-31ab455c]{font-size:.875rem;color:var(--color-text);opacity:.7}.modal-controls[data-v-31ab455c]{display:flex;gap:.5rem}.modal-control-btn[data-v-31ab455c]{width:40px;height:40px;border-radius:50%;border:none;background:#ffffff1a;color:var(--color-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-control-btn[data-v-31ab455c]:hover{background:#fff3;transform:scale(1.1)}.modal-control-btn.close[data-v-31ab455c]{background:#ef444433;color:#ef4444}.modal-control-btn.close[data-v-31ab455c]:hover{background:#ef44444d}.modal-image-container[data-v-31ab455c]{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:2rem}.modal-image[data-v-31ab455c]{max-width:100%;max-height:100%;border-radius:.75rem;box-shadow:0 20px 40px #0000004d}.modal-navigation[data-v-31ab455c]{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.1);background:#ffffff08}.nav-thumbnails[data-v-31ab455c]{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.thumbnail-btn[data-v-31ab455c]{width:60px;height:40px;border-radius:.5rem;border:2px solid transparent;background:none;cursor:pointer;overflow:hidden;transition:all .3s ease;opacity:.6}.thumbnail-btn[data-v-31ab455c]:hover{opacity:.8;transform:scale(1.05)}.thumbnail-btn.active[data-v-31ab455c]{border-color:var(--color-primary);opacity:1;box-shadow:0 0 20px rgba(var(--color-primary-rgb),.5)}.thumbnail-btn img[data-v-31ab455c]{width:100%;height:100%;object-fit:cover;border-radius:.25rem}.modal-progress[data-v-31ab455c]{height:3px;background:#ffffff1a;position:relative}.modal-progress .progress-fill[data-v-31ab455c]{height:100%;background:var(--color-primary);transition:width .3s ease}@media (max-width: 1200px){.project-grid[data-v-31ab455c]{grid-template-columns:1fr;gap:2rem}.project-media[data-v-31ab455c]{min-width:auto;order:1}.project-info[data-v-31ab455c]{min-width:auto;order:2}.impact-content[data-v-31ab455c]{grid-template-columns:1fr;gap:1.5rem}.impact-metrics[data-v-31ab455c]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.featured-container[data-v-31ab455c]{padding:0 1rem}.project-showcase[data-v-31ab455c]{padding:1rem;border-radius:1.5rem}.featured-header[data-v-31ab455c]{padding:1rem 0;margin-bottom:2rem}.featured-title[data-v-31ab455c]{font-size:2rem}.project-header[data-v-31ab455c]{margin-bottom:2rem}.project-title[data-v-31ab455c]{font-size:1.75rem;line-height:1.3;margin-bottom:.75rem}.project-subtitle[data-v-31ab455c]{font-size:1rem;margin-bottom:1.5rem}.project-badges[data-v-31ab455c]{gap:.5rem;justify-content:center;flex-wrap:wrap}.status-badge[data-v-31ab455c],.complexity-badge-full[data-v-31ab455c],.timeline-badge[data-v-31ab455c],.team-badge[data-v-31ab455c]{padding:.4rem .8rem;font-size:.8rem}.stats-grid[data-v-31ab455c]{grid-template-columns:repeat(2,1fr)!important;gap:1.5rem;padding:0 .5rem}.stat-item[data-v-31ab455c]{padding:1rem}.stat-number[data-v-31ab455c]{font-size:1.5rem}.stat-label[data-v-31ab455c]{font-size:.8rem}.project-media[data-v-31ab455c]{width:100%;max-width:100%;margin:0}.image-gallery[data-v-31ab455c]{border-radius:1rem;max-width:100%;overflow:hidden}.gallery-header[data-v-31ab455c]{padding:.75rem 1rem;flex-direction:column;gap:.75rem;align-items:stretch}.gallery-info[data-v-31ab455c]{justify-content:space-between;align-items:center}.image-counter[data-v-31ab455c]{font-size:.8rem}.image-indicators[data-v-31ab455c]{display:flex;gap:.25rem;max-width:100%;overflow-x:auto;padding:.25rem 0;scrollbar-width:thin}.image-indicators[data-v-31ab455c]::-webkit-scrollbar{height:3px}.image-indicators[data-v-31ab455c]::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.image-indicators[data-v-31ab455c]::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:3px}.indicator[data-v-31ab455c]{width:6px;height:6px;flex-shrink:0}.indicator.active[data-v-31ab455c]{transform:scale(1.3)}.gallery-controls[data-v-31ab455c]{gap:.25rem}.gallery-control-btn[data-v-31ab455c]{width:32px;height:32px;font-size:.9rem}.gallery-container[data-v-31ab455c]{height:250px;border-radius:0}.gallery-nav[data-v-31ab455c]{width:40px;height:40px;font-size:1rem}.gallery-nav.prev[data-v-31ab455c]{left:.5rem}.gallery-nav.next[data-v-31ab455c]{right:.5rem}.image-overlay[data-v-31ab455c]{padding:1rem}.overlay-content h4[data-v-31ab455c]{font-size:1rem}.overlay-content p[data-v-31ab455c]{font-size:.85rem;margin-bottom:.75rem}.zoom-btn[data-v-31ab455c]{padding:.4rem .8rem;font-size:.85rem}.gallery-progress[data-v-31ab455c]{height:3px}.project-info[data-v-31ab455c]{padding:1.5rem;gap:1.5rem;min-width:auto;width:100%;max-width:100%}.info-section[data-v-31ab455c]{padding:1.25rem;border-radius:.75rem}.section-header[data-v-31ab455c]{gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem}.section-header i[data-v-31ab455c]{font-size:1rem;width:20px;height:20px;padding:.375rem}.section-header h4[data-v-31ab455c]{font-size:1rem}.info-section p[data-v-31ab455c]{font-size:.9rem;line-height:1.5}.tech-grid[data-v-31ab455c]{display:grid;grid-template-columns:1fr;gap:1rem;width:100%;max-width:100%;overflow:hidden}.tech-category[data-v-31ab455c]{width:100%;max-width:100%}.tech-category h5[data-v-31ab455c]{font-size:.9rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1);color:var(--color-primary);font-weight:600}.tech-item[data-v-31ab455c]{padding:.6rem .8rem;gap:.4rem;border-radius:.4rem;font-size:.85rem;width:100%;max-width:100%;box-sizing:border-box}.tech-icon[data-v-31ab455c]{width:16px;height:16px;flex-shrink:0}.tech-name[data-v-31ab455c]{font-size:.85rem;word-break:break-word;overflow-wrap:break-word}.results-list[data-v-31ab455c]{gap:.5rem}.results-list li[data-v-31ab455c]{padding:.6rem;gap:.5rem}.result-icon[data-v-31ab455c]{width:16px;height:16px}.result-icon i[data-v-31ab455c]{font-size:.8rem}.results-list li span[data-v-31ab455c]{font-size:.85rem;line-height:1.4}.project-actions[data-v-31ab455c]{flex-direction:column;gap:.75rem}.action-button[data-v-31ab455c]{padding:.8rem 1.25rem;font-size:.9rem;gap:.5rem}.impact-section[data-v-31ab455c]{padding:1.5rem;margin-top:1.5rem;border-radius:1rem}.impact-header[data-v-31ab455c]{gap:.75rem;margin-bottom:1.25rem;padding-bottom:.75rem}.impact-icon[data-v-31ab455c]{width:40px;height:40px;font-size:1.25rem}.impact-header h4[data-v-31ab455c]{font-size:1.25rem}.impact-content[data-v-31ab455c]{grid-template-columns:1fr;gap:1.25rem}.impact-text[data-v-31ab455c]{font-size:.9rem;line-height:1.6}.impact-metrics[data-v-31ab455c]{grid-template-columns:1fr;gap:.75rem}.metric-item[data-v-31ab455c]{padding:1.25rem}.metric-value[data-v-31ab455c]{font-size:2rem}.metric-label[data-v-31ab455c]{font-size:.8rem}.controls-section[data-v-31ab455c]{flex-direction:column;gap:1rem;padding:1rem}.filter-controls[data-v-31ab455c]{justify-content:center;flex-wrap:wrap}.modal-content[data-v-31ab455c]{max-width:95vw;max-height:95vh;border-radius:1rem}.modal-header[data-v-31ab455c]{padding:1rem;flex-direction:column;gap:.75rem;text-align:center}.modal-info h3[data-v-31ab455c]{font-size:1.1rem}.modal-info span[data-v-31ab455c]{font-size:.8rem}.modal-image-container[data-v-31ab455c]{min-height:40vh;padding:1rem}.nav-thumbnails[data-v-31ab455c]{gap:.25rem;justify-content:center}.thumbnail-btn[data-v-31ab455c]{width:45px;height:30px}}@media (max-width: 480px){.featured-container[data-v-31ab455c]{padding:0 .75rem}.featured-title[data-v-31ab455c]{font-size:1.75rem}.project-title[data-v-31ab455c]{font-size:1.5rem}.project-subtitle[data-v-31ab455c]{font-size:.9rem}.stats-grid[data-v-31ab455c]{grid-template-columns:1fr;gap:.75rem}.stat-item[data-v-31ab455c]{padding:.8rem}.gallery-container[data-v-31ab455c]{height:200px}.gallery-header[data-v-31ab455c]{padding:.5rem .75rem}.image-counter[data-v-31ab455c]{font-size:.75rem}.gallery-controls[data-v-31ab455c]{gap:.2rem}.gallery-control-btn[data-v-31ab455c]{width:28px;height:28px;font-size:.8rem}.gallery-nav[data-v-31ab455c]{width:35px;height:35px;font-size:.9rem}.gallery-nav.prev[data-v-31ab455c]{left:.25rem}.gallery-nav.next[data-v-31ab455c]{right:.25rem}.project-info[data-v-31ab455c]{padding:1rem;gap:1rem}.info-section[data-v-31ab455c]{padding:1rem}.section-header h4[data-v-31ab455c]{font-size:.9rem}.info-section p[data-v-31ab455c]{font-size:.85rem}.tech-category h5[data-v-31ab455c]{font-size:.85rem;margin-bottom:.5rem}.tech-item[data-v-31ab455c]{padding:.5rem .7rem;font-size:.8rem}.tech-icon[data-v-31ab455c]{width:14px;height:14px}.tech-name[data-v-31ab455c]{font-size:.8rem}.results-list li[data-v-31ab455c]{padding:.5rem}.results-list li span[data-v-31ab455c]{font-size:.8rem}.impact-section[data-v-31ab455c]{padding:1rem}.impact-icon[data-v-31ab455c]{width:36px;height:36px;font-size:1.1rem}.impact-header h4[data-v-31ab455c]{font-size:1.1rem}.impact-text[data-v-31ab455c]{font-size:.85rem}.metric-item[data-v-31ab455c]{padding:1rem}.metric-value[data-v-31ab455c]{font-size:1.75rem}.metric-label[data-v-31ab455c]{font-size:.75rem}.modal-header[data-v-31ab455c]{padding:.75rem}.modal-info h3[data-v-31ab455c]{font-size:1rem}.modal-image-container[data-v-31ab455c]{min-height:30vh;padding:.75rem}.nav-thumbnails[data-v-31ab455c]{display:none}.project-showcase[data-v-31ab455c]{padding:.75rem;border-radius:1rem}}@media (max-width: 768px) and (orientation: landscape){.gallery-container[data-v-31ab455c]{height:300px}.impact-metrics[data-v-31ab455c]{grid-template-columns:repeat(3,1fr)}.tech-grid[data-v-31ab455c]{grid-template-columns:repeat(2,1fr);gap:.75rem}}@media (max-width: 320px){.featured-container[data-v-31ab455c]{padding:0 .5rem}.project-showcase[data-v-31ab455c]{padding:.5rem}.gallery-container[data-v-31ab455c]{height:180px}.project-info[data-v-31ab455c]{padding:.75rem}.tech-item[data-v-31ab455c]{padding:.4rem .6rem;font-size:.75rem}.impact-section[data-v-31ab455c]{padding:.75rem}}.project-showcase[data-v-31ab455c],.project-media[data-v-31ab455c],.project-info[data-v-31ab455c],.tech-grid[data-v-31ab455c],.tech-category[data-v-31ab455c],.image-gallery[data-v-31ab455c]{box-sizing:border-box;max-width:100%;overflow-x:hidden}.tech-item[data-v-31ab455c],.result-icon[data-v-31ab455c],.section-header[data-v-31ab455c]{box-sizing:border-box;max-width:100%}body[data-v-31ab455c]{overflow-x:hidden}.featured-projects[data-v-31ab455c]{overflow-x:hidden;max-width:100vw}.featured-container[data-v-31ab455c]{max-width:100%;overflow-x:hidden}[data-v-31ab455c]{box-sizing:border-box}img[data-v-31ab455c]{max-width:100%;height:auto}.tech-name[data-v-31ab455c],.project-title[data-v-31ab455c],.project-subtitle[data-v-31ab455c],.section-header h4[data-v-31ab455c]{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.gallery-image[data-v-31ab455c]{width:100%;height:100%;object-fit:cover;max-width:100%}@media (max-width: 768px){.floating-shapes[data-v-31ab455c],.shape[data-v-31ab455c]{display:none}.btn-shine[data-v-31ab455c],.progress-fill[data-v-31ab455c]:after{display:none}}.project-showcase[data-v-31ab455c]{padding:1rem .5rem;margin:1rem 0;overflow-x:hidden}.project-header[data-v-31ab455c]{padding:1rem;margin-bottom:1.5rem}.project-title[data-v-31ab455c]{font-size:1.5rem;line-height:1.3;margin-bottom:.5rem;word-wrap:break-word}.project-subtitle[data-v-31ab455c]{font-size:1rem;line-height:1.4;margin-bottom:1rem;opacity:.8}.project-grid[data-v-31ab455c]{display:flex;flex-direction:column;gap:2rem;width:100%;min-width:0}.project-media[data-v-31ab455c]{width:100%;max-width:100%;min-width:0;order:1}.image-gallery[data-v-31ab455c]{width:100%;max-width:100%;background:#ffffff0d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:1rem;overflow:hidden}.gallery-header[data-v-31ab455c]{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#0003;border-bottom:1px solid rgba(255,255,255,.1);flex-wrap:wrap;gap:.5rem}.gallery-info[data-v-31ab455c]{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.image-counter[data-v-31ab455c]{font-size:.875rem;font-weight:600;color:var(--color-primary);white-space:nowrap}.image-indicators[data-v-31ab455c]{display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:.25rem 0;max-width:200px}.image-indicators[data-v-31ab455c]::-webkit-scrollbar{display:none}.indicator[data-v-31ab455c]{width:6px;height:6px;border-radius:50%;background:#ffffff4d;transition:all .3s ease;flex-shrink:0}.indicator.active[data-v-31ab455c]{background:var(--color-primary);transform:scale(1.2)}.gallery-controls[data-v-31ab455c]{display:flex;gap:.5rem;flex-shrink:0}.gallery-control-btn[data-v-31ab455c]{padding:.5rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:.5rem;color:var(--color-text);cursor:pointer;transition:all .3s ease;font-size:.875rem}.gallery-control-btn[data-v-31ab455c]:hover{background:#fff3}.gallery-container[data-v-31ab455c]{position:relative;width:100%;height:250px;overflow:hidden}.images-wrapper[data-v-31ab455c]{display:flex;width:100%;height:100%;transition:transform .5s cubic-bezier(.4,0,.2,1)}.gallery-image-container[data-v-31ab455c]{flex:0 0 100%;width:100%;height:100%;position:relative;overflow:hidden}.gallery-image[data-v-31ab455c]{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .3s ease}.gallery-nav[data-v-31ab455c]{position:absolute;top:50%;transform:translateY(-50%);background:#0009;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.gallery-nav.prev[data-v-31ab455c]{left:.5rem}.gallery-nav.next[data-v-31ab455c]{right:.5rem}.gallery-nav[data-v-31ab455c]:hover{background:#000c;transform:translateY(-50%) scale(1.1)}.gallery-progress[data-v-31ab455c]{width:100%;height:3px;background:#ffffff1a;overflow:hidden}.progress-fill[data-v-31ab455c]{height:100%;background:var(--color-primary);transition:width .5s ease}.project-info[data-v-31ab455c]{width:100%;max-width:100%;min-width:0;order:2}.info-section[data-v-31ab455c]{margin-bottom:2rem;padding:1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.section-header[data-v-31ab455c]{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}.section-header i[data-v-31ab455c]{font-size:1.25rem;color:var(--color-primary);flex-shrink:0}.section-header h4[data-v-31ab455c]{font-size:1.1rem;font-weight:700;color:var(--color-text);margin:0;line-height:1.3}.tech-grid[data-v-31ab455c]{display:grid;grid-template-columns:1fr;gap:1.5rem;width:100%;max-width:100%;overflow:hidden}.tech-category[data-v-31ab455c]{width:100%;min-width:0}.tech-category h5[data-v-31ab455c]{font-size:1rem;font-weight:600;color:var(--color-primary);margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.tech-item[data-v-31ab455c]{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;margin-bottom:.5rem;transition:all .3s ease;width:100%;min-width:0}.tech-item[data-v-31ab455c]:hover{background:#ffffff1a;transform:translate(4px)}.tech-icon[data-v-31ab455c]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--color-primary);border-radius:50%;color:#fff;font-size:.75rem;flex-shrink:0}.tech-name[data-v-31ab455c]{font-size:.9rem;font-weight:500;color:var(--color-text);word-wrap:break-word;flex:1;min-width:0}.results-list[data-v-31ab455c]{list-style:none;padding:0;margin:0}.results-list li[data-v-31ab455c]{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;margin-bottom:.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;transition:all .3s ease}.results-list li[data-v-31ab455c]:hover{background:#ffffff1a;transform:translate(4px)}.result-icon[data-v-31ab455c]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--color-primary);border-radius:50%;color:#fff;font-size:.7rem;flex-shrink:0;margin-top:.125rem}.results-list span[data-v-31ab455c]{font-size:.9rem;line-height:1.4;color:var(--color-text);word-wrap:break-word}.impact-section[data-v-31ab455c]{margin-top:2rem;padding:1.5rem 1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.impact-header[data-v-31ab455c]{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.impact-icon[data-v-31ab455c]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-primary);border-radius:50%;color:#fff;font-size:1.1rem;flex-shrink:0}.impact-header h4[data-v-31ab455c]{font-size:1.2rem;font-weight:700;color:var(--color-text);margin:0}.impact-content[data-v-31ab455c]{display:flex;flex-direction:column;gap:1.5rem}.impact-text p[data-v-31ab455c]{font-size:1rem;line-height:1.6;color:var(--color-text);opacity:.9;margin:0}.impact-metrics[data-v-31ab455c]{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.metric-item[data-v-31ab455c]{text-align:center;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:.75rem;transition:all .3s ease}.metric-item[data-v-31ab455c]:hover{background:#ffffff1a;transform:translateY(-2px)}.metric-value[data-v-31ab455c]{font-size:1.75rem;font-weight:800;color:var(--color-primary);line-height:1;margin-bottom:.25rem}.metric-label[data-v-31ab455c]{font-size:.8rem;font-weight:600;color:var(--color-text);opacity:.8;text-transform:uppercase;letter-spacing:.5px}.status-badge[data-v-31ab455c],.complexity-badge-full[data-v-31ab455c],.timeline-badge[data-v-31ab455c],.team-badge[data-v-31ab455c]{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:50px;font-size:.8rem;font-weight:600;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);flex-shrink:0}.complexity-badge-full[data-v-31ab455c]{background:#8b5cf633;border-color:#8b5cf6}.timeline-badge[data-v-31ab455c],.team-badge[data-v-31ab455c]{background:#ffffff1a;color:var(--color-text)}@media (min-width: 768px){.project-showcase[data-v-31ab455c]{padding:1.5rem 1rem}.project-grid[data-v-31ab455c]{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.project-media[data-v-31ab455c]{order:1}.project-info[data-v-31ab455c]{order:2}.gallery-container[data-v-31ab455c]{height:350px}.tech-grid[data-v-31ab455c]{grid-template-columns:repeat(2,1fr);gap:1rem}.image-indicators[data-v-31ab455c]{max-width:300px}.project-title[data-v-31ab455c]{font-size:1.75rem}.project-subtitle[data-v-31ab455c]{font-size:1.1rem}}@media (min-width: 1024px){.project-showcase[data-v-31ab455c]{padding:2rem 1.5rem}.project-grid[data-v-31ab455c]{grid-template-columns:1.2fr 1fr;gap:3rem}.gallery-container[data-v-31ab455c]{height:450px}.tech-grid[data-v-31ab455c]{grid-template-columns:repeat(2,1fr);gap:1.5rem}.image-indicators[data-v-31ab455c]{max-width:none}.project-title[data-v-31ab455c]{font-size:2rem}.project-subtitle[data-v-31ab455c]{font-size:1.2rem}.metric-item[data-v-31ab455c]{padding:1.5rem}.metric-value[data-v-31ab455c]{font-size:2rem}}@media (max-width: 375px){.project-showcase[data-v-31ab455c]{padding:.75rem .25rem}.gallery-container[data-v-31ab455c]{height:200px}.gallery-nav[data-v-31ab455c]{width:32px;height:32px;font-size:.8rem}.gallery-nav.prev[data-v-31ab455c]{left:.25rem}.gallery-nav.next[data-v-31ab455c]{right:.25rem}.image-indicators[data-v-31ab455c]{max-width:150px}.indicator[data-v-31ab455c]{width:4px;height:4px}.project-title[data-v-31ab455c]{font-size:1.25rem}.project-subtitle[data-v-31ab455c]{font-size:.9rem}.tech-item[data-v-31ab455c]{padding:.5rem}.tech-name[data-v-31ab455c]{font-size:.8rem}.impact-metrics[data-v-31ab455c]{grid-template-columns:1fr;gap:.75rem}.metric-value[data-v-31ab455c]{font-size:1.5rem}.metric-label[data-v-31ab455c]{font-size:.75rem}.project-badges[data-v-31ab455c]{gap:.25rem}.status-badge[data-v-31ab455c],.complexity-badge-full[data-v-31ab455c],.timeline-badge[data-v-31ab455c],.team-badge[data-v-31ab455c]{font-size:.7rem;padding:.4rem .6rem}}.featured-container[data-v-31ab455c],.project-showcase[data-v-31ab455c],.project-grid[data-v-31ab455c],.project-media[data-v-31ab455c],.project-info[data-v-31ab455c]{overflow-x:hidden!important;max-width:100%!important}.project-showcase[data-v-31ab455c] *,.project-showcase[data-v-31ab455c] *:before,.project-showcase[data-v-31ab455c] *:after{box-sizing:border-box}.image-gallery[data-v-31ab455c],.gallery-container[data-v-31ab455c],.images-wrapper[data-v-31ab455c],.gallery-image-container[data-v-31ab455c],.tech-grid[data-v-31ab455c],.tech-category[data-v-31ab455c],.tech-item[data-v-31ab455c]{max-width:100%;min-width:0;overflow:hidden}.dark .project-showcase[data-v-31ab455c]{background:#0003}.dark .info-section[data-v-31ab455c],.dark .impact-section[data-v-31ab455c]{background:#0000004d;border-color:#ffffff0d}.dark .tech-item[data-v-31ab455c],.dark .results-list li[data-v-31ab455c],.dark .metric-item[data-v-31ab455c]{background:#0006;border-color:#ffffff0d}.dark .tech-item[data-v-31ab455c]:hover,.dark .results-list li[data-v-31ab455c]:hover,.dark .metric-item[data-v-31ab455c]:hover{background:#00000080}@media (prefers-reduced-motion: reduce){.gallery-image[data-v-31ab455c],.tech-item[data-v-31ab455c],.results-list li[data-v-31ab455c],.metric-item[data-v-31ab455c],.gallery-nav[data-v-31ab455c],.images-wrapper[data-v-31ab455c]{transition:none!important;animation:none!important}.gallery-nav[data-v-31ab455c]:hover,.tech-item[data-v-31ab455c]:hover,.results-list li[data-v-31ab455c]:hover,.metric-item[data-v-31ab455c]:hover{transform:none!important}}@media print{.project-showcase[data-v-31ab455c]{background:#fff;color:#000;box-shadow:none}.gallery-nav[data-v-31ab455c],.gallery-controls[data-v-31ab455c]{display:none}.project-grid[data-v-31ab455c]{display:block}.project-media[data-v-31ab455c],.project-info[data-v-31ab455c]{page-break-inside:avoid}}@supports (scroll-behavior: smooth){.image-indicators[data-v-31ab455c]{scroll-behavior:smooth}}@supports (backdrop-filter: blur(10px)){.image-gallery[data-v-31ab455c]{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.gallery-control-btn[data-v-31ab455c]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}@supports not (backdrop-filter: blur(10px)){.image-gallery[data-v-31ab455c]{background:#ffffff1a}.gallery-control-btn[data-v-31ab455c]{background:#fff3}}.projects-view[data-v-80aa2609]{max-width:1200px;margin:0 auto;padding:2rem 1rem}.hero[data-v-80aa2609]{text-align:center;padding:0;background:linear-gradient(135deg,#1a1a1a,#4a4a4a);color:#fff;border-radius:1rem;margin-bottom:3rem;animation:slideDown-80aa2609 1s ease-out}.hero-title[data-v-80aa2609]{font-size:3.5rem;margin-bottom:1rem;background:linear-gradient(45deg,#3490dc,#6574cd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:glow-80aa2609 2s ease-in-out infinite alternate;padding:2rem 0}.hero-subtitle[data-v-80aa2609]{font-size:1.5rem;color:#9ca3af}.search-controls[data-v-80aa2609]{padding:2rem 0;background:var(--color-bg);position:relative;opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.4,0,.2,1)}.search-controls.visible[data-v-80aa2609]{opacity:1;transform:translateY(0)}.controls-container[data-v-80aa2609]{max-width:1200px;margin:0 auto;padding:0 2rem}.search-bar[data-v-80aa2609]{margin-bottom:2rem}.search-input-wrapper[data-v-80aa2609]{position:relative;max-width:600px;margin:0 auto}.search-icon[data-v-80aa2609]{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--color-text);opacity:.6;font-size:1.1rem}.search-input[data-v-80aa2609]{width:100%;padding:1rem 1rem 1rem 3rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50px;color:var(--color-text);font-size:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.search-input[data-v-80aa2609]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.clear-search[data-v-80aa2609]{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text);opacity:.6;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .3s ease}.clear-search[data-v-80aa2609]:hover{opacity:1;background:#ffffff1a}.action-buttons[data-v-80aa2609]{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap}.action-btn[data-v-80aa2609]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50px;color:var(--color-text);font-weight:500;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.action-btn[data-v-80aa2609]:hover:not(:disabled){background:var(--color-primary);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.action-btn[data-v-80aa2609]:disabled{opacity:.5;cursor:not-allowed}.action-btn.active[data-v-80aa2609]{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.filter-btn .btn-indicator[data-v-80aa2609]{position:absolute;top:0;right:0;width:8px;height:8px;background:#ef4444;border-radius:50%;opacity:0;transition:opacity .3s ease}.filter-btn .btn-indicator.active[data-v-80aa2609]{opacity:1}.view-mode-toggle[data-v-80aa2609]{display:flex;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50px;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}.view-btn[data-v-80aa2609]{padding:.75rem 1rem;background:none;border:none;color:var(--color-text);cursor:pointer;transition:all .3s ease;opacity:.6;position:relative;z-index:2;font-size:1rem}.view-btn[data-v-80aa2609]:hover{opacity:.8}.view-btn.active[data-v-80aa2609]{background:var(--color-primary);color:#fff;opacity:1;border-radius:50px;box-shadow:0 2px 8px #3b82f64d}.sort-controls[data-v-80aa2609]{display:flex;gap:.5rem;align-items:center}.sort-btn[data-v-80aa2609]{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50px;color:var(--color-text);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.sort-btn[data-v-80aa2609]:hover{background:#ffffff26;transform:translateY(-2px);border-color:#fff3;box-shadow:0 4px 12px #0000001a}.sort-btn.active[data-v-80aa2609]{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 4px 12px #3b82f64d}.sort-btn.active[data-v-80aa2609]:hover{background:color-mix(in srgb,var(--color-primary) 90%,black);transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.sort-btn i[data-v-80aa2609]{font-size:.75rem;transition:all .3s ease;opacity:.8}.sort-btn.active i[data-v-80aa2609]{opacity:1;transform:scale(1.1)}.results-info[data-v-80aa2609]{padding:1rem 0;opacity:0;transform:translateY(20px);transition:all .6s ease}.results-info.visible[data-v-80aa2609]{opacity:1;transform:translateY(0)}.results-container[data-v-80aa2609]{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.results-count[data-v-80aa2609]{display:flex;align-items:center;gap:.5rem}.count-number[data-v-80aa2609]{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.count-text[data-v-80aa2609]{color:var(--color-text);opacity:.8}.search-info[data-v-80aa2609]{display:flex;align-items:center;gap:.5rem;color:var(--color-text);opacity:.8;font-size:.9rem}.projects-container[data-v-80aa2609]{opacity:0;transform:translateY(30px);transition:all .8s cubic-bezier(.4,0,.2,1)}.projects-container.visible[data-v-80aa2609]{opacity:1;transform:translateY(0)}.projects-container.grid-view .projects-grid[data-v-80aa2609]{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.projects-container.list-view .projects-grid[data-v-80aa2609]{display:flex;flex-direction:column;gap:1rem;margin:0 auto}.fade-in[data-v-80aa2609]{animation:fadeInScale-80aa2609 .6s ease forwards;animation-delay:var(--delay);opacity:0}@keyframes fadeInScale-80aa2609{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.empty-state[data-v-80aa2609]{text-align:center;padding:4rem 2rem;color:var(--color-text)}.empty-icon[data-v-80aa2609]{font-size:4rem;color:var(--color-primary);margin-bottom:1rem;opacity:.6}.empty-state h3[data-v-80aa2609]{font-size:1.5rem;margin-bottom:.5rem;color:var(--color-text)}.empty-state p[data-v-80aa2609]{color:var(--color-text);opacity:.7;margin-bottom:2rem}.empty-action[data-v-80aa2609]{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 2rem;background:var(--color-primary);color:#fff;border:none;border-radius:50px;font-weight:600;cursor:pointer;transition:all .3s ease}.empty-action[data-v-80aa2609]:hover{transform:translateY(-2px);box-shadow:0 8px 25px #3b82f666}@media (max-width: 1024px){.projects-container.grid-view .projects-grid[data-v-80aa2609]{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}}@media (max-width: 768px){.hero-title[data-v-80aa2609]{font-size:2rem}.projects-view[data-v-80aa2609]{margin:2rem 0}.action-buttons[data-v-80aa2609]{flex-direction:column;align-items:center;gap:.75rem}.sort-controls[data-v-80aa2609]{gap:.25rem;flex-wrap:wrap;justify-content:center}.sort-btn[data-v-80aa2609]{padding:.5rem .75rem;font-size:.8rem}.view-mode-toggle[data-v-80aa2609]{order:-1;align-self:center}.projects-container.grid-view .projects-grid[data-v-80aa2609]{grid-template-columns:1fr;gap:1rem}.results-container[data-v-80aa2609]{flex-direction:column;text-align:center}}@media (max-width: 480px){.search-input-wrapper[data-v-80aa2609]{margin-bottom:1rem}.action-buttons[data-v-80aa2609]{gap:.5rem}.action-btn[data-v-80aa2609]{padding:.5rem 1rem;font-size:.875rem}.sort-controls[data-v-80aa2609]{width:100%;justify-content:space-around}.sort-btn[data-v-80aa2609]{flex:1;max-width:120px;justify-content:center}.view-btn[data-v-80aa2609]{padding:.5rem .75rem}}.dark .search-input[data-v-80aa2609],.dark .action-btn[data-v-80aa2609],.dark .sort-btn[data-v-80aa2609],.dark .view-mode-toggle[data-v-80aa2609]{background:#0000004d;border-color:#ffffff1a}@media (prefers-reduced-motion: reduce){.projects-container[data-v-80aa2609],.search-controls[data-v-80aa2609],.results-info[data-v-80aa2609],.fade-in[data-v-80aa2609],.hero[data-v-80aa2609]{transition:none;animation:none}.action-btn[data-v-80aa2609]:hover,.sort-btn[data-v-80aa2609]:hover,.view-btn[data-v-80aa2609]:hover{transform:none}}@media (prefers-contrast: high){.search-input[data-v-80aa2609],.action-btn[data-v-80aa2609],.sort-btn[data-v-80aa2609],.view-mode-toggle[data-v-80aa2609]{background:var(--color-bg);border:2px solid var(--color-text)}.action-btn.active[data-v-80aa2609],.sort-btn.active[data-v-80aa2609],.view-btn.active[data-v-80aa2609]{background:var(--color-text);color:var(--color-bg)}}.search-input[data-v-80aa2609]:focus,.action-btn[data-v-80aa2609]:focus,.sort-btn[data-v-80aa2609]:focus,.view-btn[data-v-80aa2609]:focus{outline:2px solid var(--color-primary);outline-offset:2px}@keyframes glow-80aa2609{0%{text-shadow:0 0 10px rgba(52,144,220,.2),0 0 20px rgba(52,144,220,.2)}to{text-shadow:0 0 20px rgba(52,144,220,.4),0 0 30px rgba(52,144,220,.4)}}@keyframes slideDown-80aa2609{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}
