@import "https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700&family=Poppins:wght@300;400;500;600&display=swap";
:root{--bg-primary:#0a0a14;--bg-secondary:#0c0c1899;--bg-card:#ffffff12;--bg-card-hover:#ffffff1f;--text-primary:#f3f4f6;--text-secondary:#c0c4cc;--text-heading:#fff;--border-color:#ffffff29;--border-glow:#00dbde66;--shadow-card:0 8px 32px 0 #1f26874d;--modal-bg:#10102a;--input-bg:#161630;--input-border:#4b5563;--timeline-line:#ffffff40;--skill-bar-bg:#ffffff1f;--particle-color:#0ff;--particle-line:#0ff;--shape-opacity:.15}[data-theme=light]{--bg-primary:#e2e5ea;--bg-secondary:#ffffffd9;--bg-card:#ffffffe0;--bg-card-hover:#fffffff5;--text-primary:#1a1a2e;--text-secondary:#3b3f51;--text-heading:#0f0f1a;--border-color:#00000024;--border-glow:#00968866;--shadow-card:0 8px 32px 0 #00000024;--modal-bg:#f8f9fb;--input-bg:#fff;--input-border:#7c8293;--timeline-line:#0003;--skill-bar-bg:#0000001f;--particle-color:#0e7490;--particle-line:#0e7490;--shape-opacity:.2}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:Poppins,sans-serif;transition:background-color .5s,color .5s;overflow-x:hidden}.orbitron{font-family:Orbitron,sans-serif}.gradient-text{background:linear-gradient(135deg,#0ff,#0f8,#f0f);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.card-glass{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);box-shadow:var(--shadow-card);border-radius:16px;transition:all .3s}.card-glass:hover{background:var(--bg-card-hover);border-color:var(--border-glow);box-shadow:0 0 20px #00dbde26}.hover-scale{transition:transform .3s,box-shadow .3s}.hover-scale:hover{transform:scale(1.03);box-shadow:0 0 24px #00dbde33}.floating{animation:3s ease-in-out infinite floating}@keyframes floating{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}#particles-js{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}#matrix-canvas{z-index:0;pointer-events:none;opacity:.06;width:100%;height:100%;position:fixed;top:0;left:0}#starfield-canvas{z-index:0;pointer-events:none;opacity:.8;width:100%;height:100%;position:fixed;top:0;left:0}.shooting-stars-container{z-index:1;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.shooting-star{opacity:0;background:linear-gradient(90deg,#fffc,#0000);border-radius:50%;width:120px;height:2px;animation:1.2s linear forwards shootingStar;position:absolute}@keyframes shootingStar{0%{opacity:1;transform:translate(0)translateY(0)rotate(-45deg)}70%{opacity:1}to{opacity:0;transform:translate(600px)translateY(600px)rotate(-45deg)}}.aurora-container{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.aurora-band{filter:blur(80px);opacity:.12;width:200%;height:40%;animation:12s ease-in-out infinite alternate auroraMove;position:absolute}.aurora-band:first-child{background:linear-gradient(90deg,#0ff,#0f8,#0000);animation-duration:14s;top:5%;left:-50%}.aurora-band:nth-child(2){background:linear-gradient(90deg,#f0f,#8b5cf6,#0000);animation-duration:18s;animation-delay:-5s;top:15%;left:-30%}.aurora-band:nth-child(3){background:linear-gradient(90deg,#0ff,#f0f,#0000);animation-duration:16s;animation-delay:-8s;top:25%;left:-60%}@keyframes auroraMove{0%{transform:translate(0)translateY(0)rotate(0)}50%{transform:translate(10%)translateY(-5%)rotate(2deg)}to{transform:translate(20%)translateY(5%)rotate(-2deg)}}.floating-code{color:var(--particle-color);opacity:.08;pointer-events:none;z-index:1;white-space:pre;font-family:Courier New,monospace;font-size:12px;animation:20s linear infinite floatCode;position:fixed}@keyframes floatCode{0%{opacity:0;transform:translateY(100vh)rotate(0)}10%{opacity:.08}90%{opacity:.08}to{opacity:0;transform:translateY(-100vh)rotate(15deg)}}.binary-rain{color:var(--particle-color);opacity:.05;pointer-events:none;z-index:1;font-family:Courier New,monospace;font-size:14px;animation:15s linear infinite binaryScroll;position:fixed}@keyframes binaryScroll{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}.floating-symbol{color:var(--particle-color);opacity:.06;pointer-events:none;z-index:1;font-size:20px;animation:25s ease-in-out infinite symbolFloat;position:fixed}@keyframes symbolFloat{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(30px,-50px)rotate(90deg)}50%{transform:translate(-20px,-100px)rotate(180deg)}75%{transform:translate(40px,-50px)rotate(270deg)}}.scanline-overlay{z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00ffff04 2px 4px);width:100%;height:100%;animation:8s linear infinite scanlineScroll;position:fixed;top:0;left:0}@keyframes scanlineScroll{0%{background-position:0 0}to{background-position:0 100vh}}.section-glow{position:relative}.section-glow:before{content:"";background:radial-gradient(circle,var(--particle-color)0%,transparent 70%);opacity:.03;pointer-events:none;z-index:0;width:60%;height:60%;animation:4s ease-in-out infinite sectionGlowPulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes sectionGlowPulse{0%,to{opacity:.03;transform:translate(-50%,-50%)scale(1)}50%{opacity:.06;transform:translate(-50%,-50%)scale(1.1)}}.connection-lines{z-index:1;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.conn-line{stroke:var(--particle-line);stroke-width:1px;stroke-dasharray:8 4;opacity:.12;animation:20s linear infinite dashMove;position:absolute}@keyframes dashMove{0%{stroke-dashoffset:0}to{stroke-dashoffset:-200px}}.conn-dot{background:var(--particle-color);border-radius:50%;width:4px;height:4px;animation:3s ease-in-out infinite dotPulse;position:absolute}@keyframes dotPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.8;transform:scale(1.5)}}.nav-link{padding:.25rem 0;transition:color .3s;position:relative}.nav-link:after{content:"";background:linear-gradient(90deg,#0ff,#f0f);border-radius:1px;width:0;height:2px;transition:width .3s;position:absolute;bottom:-2px;left:0}.nav-link:hover:after{width:100%}.nav-link:hover{color:#0ff}.skill-bar{background:var(--skill-bar-bg);border-radius:4px;width:100%;height:8px;position:relative;overflow:hidden}.skill-progress{background:linear-gradient(90deg,#0ff,#0f8);border-radius:4px;height:100%;transition:width 1.5s ease-out;position:relative}.skill-progress:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);animation:2s ease-in-out infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.project-card-wrapper{perspective:1000px;height:420px}.project-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.175,.885,.32,1.275);position:relative}.project-card-wrapper:hover .project-inner,.project-card-wrapper.flipped .project-inner{transform:rotateY(180deg)}.project-front,.project-back{backface-visibility:hidden;border-radius:16px;width:100%;height:100%;position:absolute;overflow:hidden}.project-front{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);flex-direction:column;padding:1.5rem;transition:border-color .4s,box-shadow .4s;display:flex}.project-card-wrapper:hover .project-front{border-color:#00ffff40;box-shadow:0 0 30px #00ffff14}.project-back{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);flex-direction:column;padding:1.5rem;display:flex;transform:rotateY(180deg)}.project-title-luxury{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.project-photo-section{align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.project-photo-circle{border-radius:50%;flex-shrink:0;width:80px;height:80px;position:relative;overflow:hidden}.project-photo-circle-sm{width:44px;height:44px}.project-photo-img{object-fit:cover;border-radius:50%;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1),filter .4s}.project-card-wrapper:hover .project-photo-img{transform:scale(1.08)}.project-photo-blur-ring{filter:blur(10px);z-index:-1;opacity:0;background:conic-gradient(#0ff6,#0f83,#0ff6,#ff00ff26,#0ff6);border-radius:50%;transition:opacity .5s;animation:6s linear infinite blurRingRotate;position:absolute;inset:-8px}.project-card-wrapper:hover .project-photo-blur-ring{opacity:1}@keyframes blurRingRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.project-photo-circle:after{content:"";pointer-events:none;border:2px solid #0ff3;border-radius:50%;transition:border-color .4s;position:absolute;inset:0}.project-card-wrapper:hover .project-photo-circle:after{border-color:#00ffff80}.project-photo-shine{z-index:2;pointer-events:none;background:linear-gradient(105deg,#0000 40%,#ffffff26 45%,#ffffff0d 50%,#0000 55%);border-radius:50%;transition:transform .6s;position:absolute;inset:0;transform:translate(-100%)}.project-card-wrapper:hover .project-photo-shine{transform:translate(100%)}.project-photo-info{flex-direction:column;flex:1;gap:0;min-width:0;display:flex}.project-title-icon{background:#00ffff0f;border:1px solid #00ffff1f;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;padding:8px;transition:all .4s;display:flex;position:relative;overflow:hidden}.project-title-icon:before{content:"";background:conic-gradient(#0000 0%,#00ffff14 25%,#0000 50%);width:200%;height:200%;animation:4s linear infinite iconRotate;position:absolute;top:-50%;left:-50%}@keyframes iconRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.project-title-icon svg{z-index:1;position:relative}.project-card-wrapper:hover .project-title-icon{background:#00ffff1a;border-color:#00ffff40;box-shadow:0 0 15px #00ffff26}.project-title-text{color:var(--text-heading);letter-spacing:.01em;margin:0;font-size:1rem;font-weight:700;line-height:1.3}.project-title-underline{background:linear-gradient(90deg,#0ff,#0f8,#0000);border-radius:2px;width:0;height:2px;margin-top:4px;transition:width .5s cubic-bezier(.16,1,.3,1)}.project-card-wrapper:hover .project-title-underline{width:100%}.flip-hint{color:var(--text-secondary);opacity:0;text-align:center;margin-top:auto;padding-top:.75rem;font-size:.7rem;transition:all .4s;transform:translateY(4px)}.project-card-wrapper:hover .flip-hint{opacity:.5;transform:translateY(0)}.tech-tag{color:#0ff;white-space:nowrap;background:#00ffff1a;border:1px solid #0ff3;border-radius:9999px;padding:.2rem .6rem;font-size:.7rem;transition:all .3s;display:inline-block}.tech-tag:hover{background:#0ff3;border-color:#0ff6}.project-status{color:#0f8;background:#00ff881a;border:1px solid #0f83;border-radius:9999px;align-items:center;gap:.35rem;padding:.2rem .6rem;font-size:.7rem;display:inline-flex}.status-dot{background:#0f8;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;box-shadow:0 0 #0f86}50%{opacity:.6;box-shadow:0 0 0 6px #0f80}}.filter-btn{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);cursor:pointer;border-radius:9999px;padding:.4rem 1rem;font-size:.8rem;transition:all .3s}.filter-btn:hover{border-color:var(--border-glow);background:var(--bg-card-hover)}.filter-btn.active{color:#0ff;background:linear-gradient(135deg,#0ff3,#0f83);border-color:#0ff;box-shadow:0 0 12px #00ffff26}.project-modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;width:100%;height:100%;padding:1rem;animation:.3s fadeIn;display:flex;position:fixed;top:0;left:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.project-modal-content{background:var(--modal-bg);border:1px solid var(--border-color);width:100%;max-width:720px;max-height:85vh;box-shadow:var(--shadow-card);border-radius:16px;padding:2rem;animation:.3s slideUp;overflow-y:auto}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-result-card{border:1px solid var(--border-color);background:#ffffff0d;border-radius:12px;margin-bottom:.75rem;padding:1rem}.modal-feature-item{color:var(--text-secondary);align-items:flex-start;gap:.5rem;padding:.4rem 0;font-size:.85rem;display:flex}.modal-feature-item:before{content:"▸";color:#0ff;flex-shrink:0}.toast-notification{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);color:var(--text-primary);z-index:2000;box-shadow:var(--shadow-card);border-radius:12px;padding:1rem 1.5rem;font-size:.9rem;animation:.3s slideInRight,.3s 2.7s forwards fadeOut;position:fixed;bottom:2rem;right:2rem}@keyframes slideInRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.profile-avatar{border:3px solid var(--border-glow);object-fit:cover;border-radius:50%;width:140px;height:140px;transition:transform .3s,box-shadow .3s;box-shadow:0 0 24px #00dbde33}.profile-avatar:hover{transform:scale(1.05);box-shadow:0 0 40px #00dbde59}.gallery-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:16px;transition:all .3s;overflow:hidden}.gallery-card:hover{background:var(--bg-card-hover);border-color:var(--border-glow);transform:translateY(-4px);box-shadow:0 0 20px #00dbde26}.gallery-card-img-wrapper{aspect-ratio:16/10;position:relative;overflow:hidden}.gallery-card-img-wrapper img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.gallery-card:hover .gallery-card-img-wrapper img{transform:scale(1.08)}.gallery-zoom-overlay{opacity:0;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:flex;position:absolute;top:0;left:0}.gallery-card:hover .gallery-zoom-overlay{opacity:1}.gallery-zoom-icon{color:#fff;background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:flex}.gallery-card-period{-webkit-backdrop-filter:blur(8px);color:#e0e0e0;z-index:2;background:#0009;border-radius:8px;padding:.2rem .6rem;font-size:.7rem;position:absolute;top:.75rem;right:.75rem}.gallery-card-badge{color:#0a0a14;z-index:2;background:linear-gradient(135deg,#0ff,#0f8);border-radius:9999px;padding:.15rem .5rem;font-size:.65rem;font-weight:600;position:absolute;top:.75rem;left:.75rem}.gallery-card-body{padding:1rem 1.25rem 1.25rem}.gallery-card-title{color:var(--text-heading);margin-bottom:.25rem;font-size:1rem;font-weight:600}.gallery-card-role{color:#0ff;margin-bottom:.5rem;font-size:.8rem}.gallery-card-desc{color:var(--text-secondary);margin-bottom:.75rem;font-size:.8rem;line-height:1.5}.gallery-card-tags{flex-wrap:wrap;gap:.35rem;display:flex}.gallery-card-tag{color:#0ff;white-space:nowrap;background:#00ffff1a;border:1px solid #0ff3;border-radius:9999px;padding:.15rem .5rem;font-size:.65rem}.lightbox-backdrop{z-index:1500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000eb;justify-content:center;align-items:center;width:100%;height:100%;padding:1.5rem;animation:.3s fadeIn;display:flex;position:fixed;top:0;left:0}.lightbox-wrapper{background:#0f0f1ef2;border:1px solid #ffffff14;border-radius:16px;flex-direction:column;width:100%;max-width:850px;max-height:92vh;animation:.35s cubic-bezier(.16,1,.3,1) slideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 80px #0009,0 0 40px #00ffff0d}.lightbox-header{border-bottom:1px solid #ffffff0f;flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.lightbox-counter{color:#ffffff80;letter-spacing:.05em;font-size:.8rem;font-weight:500}.lightbox-close{color:#fff9;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;transition:all .25s;display:flex}.lightbox-close:hover{color:#ff5050;background:#ff505033;border-color:#ff50504d}.lightbox-image-container{background:#0000004d;flex-shrink:0;justify-content:center;align-items:center;width:100%;max-height:50vh;display:flex;overflow:hidden}.lightbox-main-img{object-fit:cover;width:100%;height:100%;max-height:50vh;transition:opacity .3s;display:block}.lightbox-caption{border-top:1px solid #ffffff0f;flex-shrink:0;padding:1.25rem 1.5rem;overflow-y:auto}.lightbox-caption-top{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.6rem;display:flex}.lightbox-caption-title{color:#fff;margin:0;font-size:1.05rem;font-weight:700;line-height:1.3}.lightbox-caption-role{color:#0ff;opacity:.85;margin:.2rem 0 0;font-size:.8rem}.lightbox-caption-meta{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.lightbox-caption-badge{color:#0f8;white-space:nowrap;background:#00ff881a;border:1px solid #0f83;border-radius:9999px;padding:.2rem .6rem;font-size:.7rem}.lightbox-caption-year{color:#fff6;background:#ffffff0d;border-radius:9999px;padding:.2rem .6rem;font-size:.7rem}.lightbox-caption-desc{color:#fff9;margin:.6rem 0;font-size:.82rem;line-height:1.6}.lightbox-photo-caption{color:#fffc;background:#00ffff0a;border-left:3px solid #0ff;border-radius:0 8px 8px 0;margin:.75rem 0;padding:.65rem .85rem;font-size:.85rem;font-style:italic;line-height:1.6}.lightbox-photo-counter{color:#ffffff73;letter-spacing:.03em;font-size:.75rem;font-weight:500}.lightbox-thumbnail-strip{gap:.5rem;margin:.65rem 0;padding-bottom:.25rem;display:flex;overflow-x:auto}.lightbox-thumbnail-strip::-webkit-scrollbar{height:4px}.lightbox-thumbnail-strip::-webkit-scrollbar-track{background:#ffffff0d;border-radius:2px}.lightbox-thumbnail-strip::-webkit-scrollbar-thumb{background:#0ff3;border-radius:2px}.lightbox-thumb{cursor:pointer;opacity:.5;border:2px solid #0000;border-radius:6px;flex-shrink:0;width:60px;height:42px;transition:all .25s;position:relative;overflow:hidden}.lightbox-thumb:hover{opacity:.8;border-color:#00ffff4d}.lightbox-thumb-active{box-shadow:0 0 8px #00ffff4d;opacity:1!important;border-color:#0ff!important}.lightbox-thumb img{object-fit:cover;width:100%;height:100%;display:block}.lightbox-thumb-label{color:#fff;background:#0009;border-radius:3px;padding:0 .2rem;font-size:.55rem;font-weight:600;line-height:1.4;position:absolute;bottom:2px;right:3px}.gallery-card-photos-count{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;letter-spacing:.02em;background:#0009;border:1px solid #ffffff1a;border-radius:6px;padding:.2rem .5rem;font-size:.65rem;position:absolute;bottom:.5rem;right:.5rem}.lightbox-caption-tags{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.lightbox-caption-tag{color:#0ff;letter-spacing:.02em;background:#00ffff14;border:1px solid #00ffff26;border-radius:6px;padding:.15rem .55rem;font-size:.68rem}.lightbox-nav{color:#ffffffb3;cursor:pointer;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000080;border:1px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;transition:all .25s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{color:#0ff;background:#00ffff26;border-color:#00ffff4d;box-shadow:0 0 15px #00ffff26}.lightbox-prev{left:-1.25rem}.lightbox-next{right:-1.25rem}.file-upload-area{background:var(--input-bg);border:1.5px dashed var(--input-border);cursor:pointer;border-radius:12px;width:100%;padding:1.25rem;transition:all .3s}.file-upload-area:hover{background:#00ffff08;border-color:#0ff}.file-upload-dragover{box-shadow:inset 0 0 20px #00ffff1a;background:#00ffff14!important;border-color:#0ff!important}.file-upload-placeholder{color:var(--text-secondary);flex-direction:column;align-items:center;gap:.4rem;display:flex}.file-upload-info{align-items:center;gap:.5rem;padding:.25rem 0;display:flex}.preloader{background:var(--bg-primary);z-index:9999;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .6s,visibility .6s;display:flex;position:fixed;top:0;left:0}.preloader.hidden{opacity:0;visibility:hidden}.preloader-content{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.ghost-loader{width:80px;height:100px;position:relative}.ghost-svg{width:80px;height:100px;animation:2s ease-in-out infinite ghostFloat}.ghost-body{fill:#0ff3;stroke:#0ff;stroke-width:2px}.ghost-eye{fill:#0ff;animation:2s ease-in-out infinite eyePulse}.loading-text{color:#0ff;letter-spacing:.2em;font-family:Orbitron,sans-serif;font-size:1.2rem;animation:1.5s ease-in-out infinite textPulse}.loading-progress{background:#ffffff1a;border-radius:2px;width:200px;height:4px;margin-top:.5rem;overflow:hidden}.progress-bar{background:linear-gradient(90deg,#0ff,#0f8);border-radius:2px;height:100%;transition:width .3s;box-shadow:0 0 10px #00ffff80}#ghost-canvas{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;top:0;left:0}@keyframes ghostFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes eyePulse{0%,to{opacity:1;r:4}50%{opacity:.5;r:3}}@keyframes textPulse{0%,to{opacity:1}50%{opacity:.4}}.theme-toggle{background:var(--bg-card);border:1px solid var(--border-color);cursor:pointer;border-radius:9999px;align-items:center;width:52px;height:28px;padding:0 3px;transition:all .3s;display:flex;position:relative}.theme-toggle:hover{border-color:var(--border-glow)}.theme-toggle-knob{background:#0ff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:transform .3s,background .3s;display:flex}[data-theme=light] .theme-toggle-knob{background:#fbbf24;transform:translate(24px)}.theme-toggle-icon{color:#0a0a14;justify-content:center;align-items:center;font-size:12px;display:flex}.timeline-item{padding-bottom:2rem;padding-left:2.5rem;position:relative}.timeline-item:before{content:"";border:3px solid var(--bg-primary);z-index:2;background:#0ff;border-radius:50%;width:12px;height:12px;position:absolute;top:8px;left:0;box-shadow:0 0 12px #0ff6}.timeline-item:after{content:"";background:var(--timeline-line);width:2px;height:calc(100% - 20px);position:absolute;top:24px;left:5px}.timeline-item:last-child:after{display:none}.certificate-badge{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;align-items:center;gap:.5rem;padding:.5rem 1rem;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.certificate-badge:before{content:"";background:linear-gradient(45deg,#0000 40%,#ffffff14 50%,#0000 60%);width:200%;height:200%;animation:3s ease-in-out infinite shine;position:absolute;top:-50%;left:-50%}.certificate-badge:hover{border-color:var(--border-glow);transform:translateY(-2px);box-shadow:0 4px 16px #00dbde26}@keyframes shine{0%{transform:translate(-100%)rotate(45deg)}to{transform:translate(100%)rotate(45deg)}}.bg-animated-shapes{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.bg-shape{border:1px solid var(--particle-color);opacity:var(--shape-opacity);animation:20s ease-in-out infinite floatShape;position:absolute}.bg-shape:first-child{border-radius:12px;width:60px;height:60px;animation-duration:18s;top:10%;left:5%}.bg-shape:nth-child(2){border-radius:50%;width:40px;height:40px;animation-duration:22s;animation-delay:-3s;top:30%;right:10%}.bg-shape:nth-child(3){border-radius:16px;width:80px;height:80px;animation-duration:25s;animation-delay:-6s;bottom:20%;left:15%}.bg-shape:nth-child(4){border-radius:50%;width:30px;height:30px;animation-duration:20s;animation-delay:-9s;top:50%;right:25%}.bg-shape:nth-child(5){border-radius:8px;width:50px;height:50px;animation-duration:23s;animation-delay:-4s;bottom:40%;right:5%}@keyframes floatShape{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(20px,-30px)rotate(90deg)}50%{transform:translate(-10px,-60px)rotate(180deg)}75%{transform:translate(30px,-30px)rotate(270deg)}}.bg-grid{z-index:0;pointer-events:none;background-image:linear-gradient(#00ffff08 1px,#0000 1px),linear-gradient(90deg,#00ffff08 1px,#0000 1px);background-size:60px 60px;width:100%;height:100%;animation:8s ease-in-out infinite gridPulse;position:fixed;top:0;left:0}@keyframes gridPulse{0%,to{opacity:.4}50%{opacity:.8}}.bg-gradient-mesh{z-index:0;pointer-events:none;opacity:.15;background:radial-gradient(at 20%,#00ffff4d 0%,#0000 50%),radial-gradient(at 80% 20%,#f0f3 0%,#0000 50%),radial-gradient(at 50% 80%,#0f83 0%,#0000 50%);width:100%;height:100%;animation:15s ease-in-out infinite alternate meshMove;position:fixed;top:0;left:0}@keyframes meshMove{0%{transform:scale(1)rotate(0)}50%{transform:scale(1.1)rotate(2deg)}to{transform:scale(1)rotate(-2deg)}}.floating-geo{pointer-events:none;z-index:1;animation:30s ease-in-out infinite geoFloat;position:fixed}.floating-geo svg{width:100%;height:100%}@keyframes geoFloat{0%,to{transform:translate(0)rotate(0)}20%{transform:translate(40px,-80px)rotate(72deg)}40%{transform:translate(-60px,-120px)rotate(144deg)}60%{transform:translate(30px,-60px)rotate(216deg)}80%{transform:translate(-40px,-100px)rotate(288deg)}}[data-theme=light] .gradient-text{background:linear-gradient(135deg,#0e7490,#059669,#9333ea);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}[data-theme=light] .card-glass{background:var(--bg-card);border-color:var(--border-color)}[data-theme=light] .card-glass:hover{background:var(--bg-card-hover);border-color:var(--border-glow);box-shadow:0 8px 32px #0000001a}[data-theme=light] .hover-scale:hover{box-shadow:0 8px 24px #0000001f}[data-theme=light] .nav-link:hover{color:#0e7490}[data-theme=light] .nav-link:after{background:linear-gradient(90deg,#0e7490,#9333ea)}[data-theme=light] .skill-progress{background:linear-gradient(90deg,#0e7490,#059669)}[data-theme=light] .project-front,[data-theme=light] .project-back{background:var(--bg-card);border-color:var(--border-color)}[data-theme=light] .project-photo-circle:after{border-color:#0e74904d}[data-theme=light] .project-card-wrapper:hover .project-photo-circle:after{border-color:#0e749099}[data-theme=light] .project-photo-blur-ring{background:conic-gradient(#0e74904d,#05966933,#0e74904d,#0e749026,#0e74904d)}[data-theme=light] .tech-tag{color:#0e7490;background:#0e74901a;border-color:#0e749040}[data-theme=light] .tech-tag:hover{background:#0e74902e;border-color:#0e749066}[data-theme=light] .project-status{color:#059669;background:#0596691a;border-color:#05966940}[data-theme=light] .status-dot{background:#059669}@keyframes pulse-dot-light{0%,to{opacity:1;box-shadow:0 0 #05966966}50%{opacity:.6;box-shadow:0 0 0 6px #05966900}}[data-theme=light] .status-dot{animation-name:pulse-dot-light}[data-theme=light] .filter-btn{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}[data-theme=light] .filter-btn:hover{border-color:var(--border-glow);background:var(--bg-card-hover)}[data-theme=light] .filter-btn.active{color:#0e7490;background:linear-gradient(135deg,#0e749026,#05966926);border-color:#0e7490;box-shadow:0 0 12px #0e74901f}[data-theme=light] .modal-result-card{border-color:var(--border-color);background:#00000008}[data-theme=light] .modal-feature-item:before{color:#0e7490}[data-theme=light] .toast-notification{border-color:var(--border-color);background:#fffffff2;box-shadow:0 8px 32px #0000001f}[data-theme=light] .profile-avatar{border-color:var(--border-glow);box-shadow:0 0 20px #0e749033}[data-theme=light] .profile-avatar:hover{box-shadow:0 0 32px #0e74904d}[data-theme=light] .gallery-card{background:var(--bg-card);border-color:var(--border-color)}[data-theme=light] .gallery-card:hover{background:var(--bg-card-hover);border-color:var(--border-glow);box-shadow:0 8px 24px #0000001a}[data-theme=light] .gallery-card-badge{color:#fff;background:linear-gradient(135deg,#0e7490,#059669)}[data-theme=light] .gallery-card-role{color:#0e7490}[data-theme=light] .gallery-card-tag{color:#0e7490;background:#0e74901a;border-color:#0e749040}[data-theme=light] .certificate-badge{background:var(--bg-card);border-color:var(--border-color)}[data-theme=light] .certificate-badge:before{background:linear-gradient(45deg,#0000 40%,#0000000a 50%,#0000 60%)}[data-theme=light] .certificate-badge:hover{border-color:var(--border-glow);box-shadow:0 4px 16px #0e74901f}[data-theme=light] .bg-shape{border-color:var(--particle-color)}[data-theme=light] .bg-grid{background-image:linear-gradient(#0e74900a 1px,#0000 1px),linear-gradient(90deg,#0e74900a 1px,#0000 1px)}[data-theme=light] .bg-gradient-mesh{opacity:.2;background:radial-gradient(at 20%,#0e749026 0%,#0000 50%),radial-gradient(at 80% 20%,#9333ea1a 0%,#0000 50%),radial-gradient(at 50% 80%,#0596691a 0%,#0000 50%)}[data-theme=light] .aurora-band{opacity:.06}[data-theme=light] .scanline-overlay{background:repeating-linear-gradient(0deg,#0000,#0000 2px,#0e749003 2px 4px)}[data-theme=light] .ghost-body{fill:#0e749026;stroke:#0e7490}[data-theme=light] .ghost-eye{fill:#0e7490}[data-theme=light] .loading-text{color:#0e7490}[data-theme=light] .progress-bar{background:linear-gradient(90deg,#0e7490,#059669);box-shadow:0 0 10px #0e749066}[data-theme=light] .timeline-item:before{border-color:var(--bg-primary);background:#0e7490;box-shadow:0 0 12px #0e749066}[data-theme=light] .conn-line{stroke:var(--particle-line)}[data-theme=light] .conn-dot{background:var(--particle-color)}[data-theme=light] .theme-toggle{background:#fffc;border-color:#00000026}[data-theme=light] .theme-toggle-icon{color:#fff}[data-theme=light] .theme-toggle-knob{background:#fbbf24}[data-theme=light] .lightbox-nav,[data-theme=light] .lightbox-close{color:#fff;background:#0000004d;border-color:#0003}[data-theme=light] .lightbox-wrapper{background:#fffffff7;border-color:#0000001a}[data-theme=light] .lightbox-caption-title{color:#1a1a2e}[data-theme=light] .lightbox-caption-role{color:#0891b2}[data-theme=light] .lightbox-caption-desc{color:#475569}[data-theme=light] .lightbox-caption-badge{color:#059669;background:#05966914;border-color:#05966933}[data-theme=light] .lightbox-caption-tag{color:#0891b2;background:#0891b214;border-color:#0891b233}[data-theme=light] .lightbox-counter{color:#64748b}[data-theme=light] .lightbox-header,[data-theme=light] .lightbox-caption{border-color:#00000014}[data-theme=light] .lightbox-photo-caption{color:#334155;background:#0891b20f;border-left-color:#0891b2}[data-theme=light] .lightbox-photo-counter{color:#64748b}[data-theme=light] .lightbox-thumb{opacity:.6;border-color:#0000001a}[data-theme=light] .lightbox-thumb:hover{opacity:.85;border-color:#0891b24d}[data-theme=light] .lightbox-thumb-active{box-shadow:0 0 6px #0891b233;border-color:#0891b2!important}[data-theme=light] .gallery-card-photos-count{color:#334155;background:#ffffffd9;border-color:#0000001a}@media (max-width:768px){.project-card-wrapper{height:auto;min-height:320px}.project-card-wrapper.flipped .project-inner{transform:rotateY(180deg)}.project-front,.project-back{backface-visibility:visible}.project-back{display:none;transform:none}.project-card-wrapper.flipped .project-back{display:flex}.project-card-wrapper.flipped .project-front{display:none}.flip-hint{display:none!important}.lightbox-wrapper{border-radius:12px;max-height:95vh}.lightbox-image-container,.lightbox-main-img{max-height:35vh}.lightbox-caption{padding:1rem}.lightbox-caption-top{flex-direction:column;gap:.5rem}.lightbox-caption-title{font-size:.95rem}.lightbox-caption-desc{font-size:.78rem}.lightbox-prev{left:.25rem}.lightbox-next{right:.25rem}.lightbox-nav{opacity:.8;width:36px;height:36px}.lightbox-backdrop{padding:.75rem}.profile-avatar{width:100px;height:100px}.toast-notification{bottom:1rem;left:1rem;right:1rem}.project-modal-content{max-height:90vh;padding:1.25rem}.loading-text{font-size:1rem}.loading-progress{width:160px}}.project-modal-content::-webkit-scrollbar{width:6px}.project-modal-content::-webkit-scrollbar-track{background:0 0}.project-modal-content::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.project-modal-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}[data-theme=light] .project-modal-content::-webkit-scrollbar-thumb{background:#00000026}[data-theme=light] .project-modal-content::-webkit-scrollbar-thumb:hover{background:#0000004d}.project-back::-webkit-scrollbar{width:4px}.project-back::-webkit-scrollbar-track{background:0 0}.project-back::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.certificate-clickable{cursor:pointer}.certificate-clickable:hover{border-color:#0ff;transform:translateY(-3px)scale(1.03);box-shadow:0 0 24px #00dbde40,0 8px 32px #00dbde1a}.certificate-clickable:active{transform:translateY(-1px)scale(1.01)}.cert-modal-backdrop{z-index:2000;background:#000000d9;justify-content:center;align-items:center;width:100%;height:100%;padding:1.5rem;animation:.3s fadeIn;display:flex;position:fixed;top:0;left:0}.cert-modal-content{background:var(--modal-bg);border:1px solid var(--border-color);border-radius:20px;flex-direction:column;width:100%;max-width:680px;max-height:90vh;animation:.4s cubic-bezier(.175,.885,.32,1.275) slideUp;display:flex;overflow:hidden;box-shadow:0 0 60px #00dbde14,0 24px 80px #00000080}.cert-modal-header{border-bottom:1px solid var(--border-color);background:#00ffff05;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.cert-modal-header-left{align-items:center;gap:.75rem;display:flex}.cert-modal-icon{background:#00ffff14;border:1px solid #00ffff26;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.cert-modal-action-btn{color:#0ff;cursor:pointer;background:#00ffff14;border:1px solid #00ffff26;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .3s;display:flex}.cert-modal-action-btn:hover{background:#00ffff26;border-color:#00ffff4d;transform:translateY(-1px)}.cert-modal-close-btn{border:1px solid var(--border-color);width:36px;height:36px;color:var(--text-primary);cursor:pointer;background:#ffffff0d;border-radius:8px;justify-content:center;align-items:center;font-size:1rem;transition:all .3s;display:flex}.cert-modal-close-btn:hover{color:#ff6464;background:#ff64641a;border-color:#ff64644d}.cert-modal-meta{border-bottom:1px solid var(--border-color);background:#00ffff05;align-items:center;gap:.5rem;padding:.6rem 1.5rem;display:flex}.cert-modal-pdf-wrapper{background:#0003;flex:1;position:relative;overflow:hidden}.cert-modal-pdf{border:none;width:100%;height:65vh;display:block}[data-theme=light] .cert-modal-content{box-shadow:0 0 60px #0e74900f,0 24px 80px #00000026}[data-theme=light] .cert-modal-icon{background:#0e749014;border-color:#0e749026}[data-theme=light] .cert-modal-icon svg{stroke:#0e7490}[data-theme=light] .cert-modal-action-btn{color:#0e7490;background:#0e749014;border-color:#0e749026}[data-theme=light] .cert-modal-action-btn:hover{background:#0e749026;border-color:#0e74904d}[data-theme=light] .cert-modal-meta span:first-child{color:#0e7490}[data-theme=light] .cert-modal-pdf-wrapper{background:#0000000d}
