@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700;800&family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,700&family=Space+Mono&display=swap";:root{--bg-color: #050505;--text-main: #ffffff;--text-primary: #ffffff;--text-muted: rgba(255, 255, 255, .5);--accent: #00f2ea;--accent-alt: #ff0055;--card-bg: #0f0f0f;--glass: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--font-main: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-display: "Playfair Display", serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-main);-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}.folio-app{position:relative;min-height:100vh}#app{max-width:1600px;margin:0 auto;padding:4rem 2rem}.monitor-scanlines{position:fixed;inset:0;background:linear-gradient(#12101000 50%,#0000001a 50%);background-size:100% 4px;pointer-events:none;z-index:1000;opacity:.15}.vignette{position:fixed;inset:0;background:radial-gradient(circle,transparent 40%,rgba(0,0,0,.9) 160%);pointer-events:none;z-index:1001}.hero{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:5rem;padding-bottom:2rem;border-bottom:1px solid var(--glass-border)}.header-left{display:flex;flex-direction:column;gap:.5rem}.logo{font-family:Playfair Display,serif;font-weight:700;font-size:5rem;letter-spacing:-.02em;color:var(--text-primary);line-height:1;position:relative;z-index:2}.logo-folio{background:linear-gradient(135deg,#fff,#ffffffb3);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#fff;filter:drop-shadow(0 10px 20px rgba(0,0,0,.5));text-transform:uppercase;font-style:normal}.subtitle{font-family:Space Mono,monospace;font-size:.7rem;color:var(--accent);letter-spacing:.4em;text-transform:uppercase;opacity:.8}.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:1.5rem}.stats{font-size:.7rem;color:var(--text-muted);letter-spacing:.2em;text-transform:uppercase;margin-top:0}#image-count{font-size:1.2rem;color:#fff;font-weight:700;margin-right:.4rem}.filter-search-group{display:flex;gap:1rem}.premium-select,#search-input{background:var(--glass);border:1px solid var(--glass-border);padding:.9rem 1.5rem;border-radius:4px;color:#fff;font-family:var(--font-main);font-size:.8rem;letter-spacing:.05em;transition:all .3s cubic-bezier(.4,0,.2,1);outline:none}.premium-select:hover,#search-input:hover{background:#ffffff0f;border-color:#fff3}.premium-select:focus,#search-input:focus{background:#ffffff14;border-color:var(--accent);box-shadow:0 0 20px #00f2ea1a}.premium-select{cursor:pointer;min-width:180px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1.2rem center}.premium-select option{background-color:#050505;color:#fff;padding:10px}.search-container{width:300px}#search-input::placeholder{color:#fff3;text-transform:uppercase}.masonry-grid{display:flex;gap:2rem}.grid-column{flex:1;display:flex;flex-direction:column;gap:2rem}.portfolio-item{position:relative;background:var(--card-bg);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .5s cubic-bezier(.165,.84,.44,1);border:1px solid transparent}.portfolio-item:hover{transform:translateY(-8px) scale(1.01);border-color:var(--glass-border);box-shadow:0 30px 60px #00000080}.portfolio-image{width:100%;height:auto;display:block;transition:transform .8s cubic-bezier(.165,.84,.44,1)}.portfolio-item:hover .portfolio-image{transform:scale(1.08)}.item-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:2.5rem 1.5rem;opacity:0;transition:opacity .4s ease}.portfolio-item:hover .item-overlay{opacity:1}.item-title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;color:#fff;margin-bottom:.4rem;transform:translateY(10px);transition:transform .4s cubic-bezier(.165,.84,.44,1)}.portfolio-item:hover .item-title{transform:translateY(0)}.item-tech{font-family:Space Mono,monospace;font-size:.6rem;color:var(--accent);text-transform:uppercase;letter-spacing:.2em;transform:translateY(10px);transition:transform .4s cubic-bezier(.165,.84,.44,1) .1s}.portfolio-item:hover .item-tech{transform:translateY(0)}.lightbox{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10000;display:flex;justify-content:center;align-items:center;opacity:0;pointer-events:none;transition:all .4s cubic-bezier(.165,.84,.44,1);cursor:zoom-out}.lightbox.active{opacity:1;pointer-events:all}.lightbox-wrapper{position:relative;max-width:90vw;max-height:90vh;display:flex;justify-content:center;align-items:center;cursor:default}.lightbox-image-container{position:relative;box-shadow:0 50px 100px #000000b3;border-radius:8px;overflow:hidden;background:#000;display:flex}.lightbox-img{max-width:90vw;max-height:85vh;object-fit:contain;display:block}.close-btn-top{position:fixed;top:2rem;right:2rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.1);color:#fff;width:44px;height:44px;border-radius:50%;font-size:1.5rem;display:flex;justify-content:center;align-items:center;cursor:pointer;z-index:10001;transition:all .3s}.close-btn-top:hover{background:var(--accent);color:#000;transform:rotate(90deg)}.preloader{position:fixed;inset:0;z-index:99999;background:#000;display:flex;justify-content:center;align-items:center;transition:opacity 1s cubic-bezier(.165,.84,.44,1)}.preloader.fade-out{opacity:0;pointer-events:none}.preloader-content{display:flex;flex-direction:column;align-items:center;gap:2rem}.character-reveal{position:relative;width:400px;height:400px;animation:float 4s ease-in-out infinite}.loader-img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 30px rgba(0,242,234,.4))}.naruto-runner-container{position:relative;width:100%;height:200px;overflow:hidden}.naruto-runner-container.small{height:150px}.naruto-sprite-container{position:absolute;top:50%;left:-120px;transform:translateY(-50%);width:100px;height:120px;animation:run-across-screen 3.5s linear infinite;z-index:100;pointer-events:none}.style-stick .runner-body{position:relative;width:100%;height:100%;animation:character-bounce .3s ease-in-out infinite}.style-stick .runner-body:before{content:"😅";position:absolute;top:0;left:50%;transform:translate(-50%);font-size:40px;animation:head-wobble .3s ease-in-out infinite}.style-stick .runner-body:after{content:"";position:absolute;top:38px;left:50%;transform:translate(-50%);width:8px;height:35px;background:linear-gradient(180deg,#ff6b35,#f7931e);border-radius:4px;box-shadow:0 0 10px #ff6b3580}.style-stick .runner-arm-left,.style-stick .runner-arm-right{position:absolute;top:42px;width:6px;height:25px;background:linear-gradient(180deg,#ffd93d,#f7931e);border-radius:3px;transform-origin:top center}.style-stick .runner-arm-left{left:30px;animation:arm-swing-left .3s ease-in-out infinite}.style-stick .runner-arm-right{right:30px;animation:arm-swing-right .3s ease-in-out infinite}.style-stick .runner-leg-left,.style-stick .runner-leg-right{position:absolute;top:70px;width:8px;height:35px;background:linear-gradient(180deg,#4a90d9,#357abd);border-radius:4px;transform-origin:top center}.style-stick .runner-leg-left{left:38px;animation:leg-run-left .3s ease-in-out infinite}.style-stick .runner-leg-right{right:38px;animation:leg-run-right .3s ease-in-out infinite}.style-stick .runner-trail:before{content:"💨";position:absolute;font-size:16px;animation:dust-puff .6s ease-out infinite}.style-stick .runner-trail:after{content:"💨";position:absolute;left:20px;font-size:14px;animation:dust-puff .6s ease-out infinite .2s}.style-blob .runner-body{position:relative;width:80px;height:60px;background:linear-gradient(135deg,#00d9ff,#00b4d8,#0096c7);border-radius:50% 50% 45% 45%/60% 60% 40% 40%;margin:20px auto 0;animation:blob-squish .4s ease-in-out infinite;box-shadow:0 20px 40px #00b4d866,inset 0 -10px 20px #0000001a,inset 0 10px 20px #ffffff4d}.style-blob .runner-body:before{content:"";position:absolute;top:8px;left:15px;width:20px;height:15px;background:#fff9;border-radius:50%;filter:blur(2px)}.style-blob .runner-body:after{content:"";position:absolute;bottom:10px;left:50%;transform:translate(-50%);width:16px;height:8px;border:3px solid #1a1a2e;border-top:none;border-radius:0 0 20px 20px}.style-blob .runner-arm-left,.style-blob .runner-arm-right{position:absolute;top:15px;width:18px;height:22px;background:#fff;border-radius:50%;box-shadow:inset 0 0 0 3px #0000000d;animation:eye-blink 3s ease-in-out infinite}.style-blob .runner-arm-left{left:18px}.style-blob .runner-arm-right{right:18px}.style-blob .runner-arm-left:after,.style-blob .runner-arm-right:after{content:"";position:absolute;top:6px;left:8px;width:8px;height:10px;background:#1a1a2e;border-radius:50%;animation:pupil-look .4s ease-in-out infinite}.style-blob .runner-leg-left,.style-blob .runner-leg-right{position:absolute;bottom:12px;width:12px;height:6px;background:#ff96c899;border-radius:50%;filter:blur(2px)}.style-blob .runner-leg-left{left:8px}.style-blob .runner-leg-right{right:8px}.style-blob .runner-trail:before{content:"✨";position:absolute;font-size:14px;animation:sparkle-trail .5s ease-out infinite}.style-blob .runner-trail:after{content:"✨";position:absolute;left:15px;font-size:10px;animation:sparkle-trail .5s ease-out infinite .15s}.style-robot .runner-body{position:relative;width:70px;height:80px;margin:10px auto 0;animation:robot-walk .4s steps(2) infinite}.style-robot .runner-body:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:40px;height:35px;background:linear-gradient(180deg,#6c5ce7,#a29bfe);border-radius:8px 8px 4px 4px;box-shadow:0 0 20px #6c5ce780,inset 0 -5px #0003}.style-robot .runner-body:after{content:"";position:absolute;top:38px;left:50%;transform:translate(-50%);width:50px;height:35px;background:linear-gradient(180deg,#74b9ff,#0984e3);border-radius:6px;box-shadow:inset 0 -5px #0003}.style-robot .runner-arm-left,.style-robot .runner-arm-right{position:absolute;top:8px;width:10px;height:10px;background:#fd79a8;border-radius:50%;box-shadow:0 0 8px #fd79a8,inset 0 0 3px #ffffff80;animation:robot-eye-glow 1s ease-in-out infinite alternate}.style-robot .runner-arm-left{left:22px;animation-delay:0s}.style-robot .runner-arm-right{right:22px;animation-delay:.5s}.style-robot .runner-leg-left,.style-robot .runner-leg-right{position:absolute;bottom:0;width:14px;height:20px;background:linear-gradient(180deg,#636e72,#2d3436);border-radius:3px;transform-origin:top center}.style-robot .runner-leg-left{left:18px;animation:leg-run-left .2s steps(2) infinite}.style-robot .runner-leg-right{right:18px;animation:leg-run-right .2s steps(2) infinite}.style-robot .runner-trail:before{content:"⚡";position:absolute;font-size:16px;animation:sparkle-trail .4s ease-out infinite}.style-robot .runner-trail:after{content:"🔧";position:absolute;left:18px;font-size:12px;animation:sparkle-trail .4s ease-out infinite .1s}.style-ninja .runner-body{position:relative;width:80px;height:90px;margin:10px auto 0;animation:ninja-dash .15s ease-in-out infinite}.style-ninja .runner-body:before{content:"";position:absolute;top:5px;left:50%;transform:translate(-50%) rotate(-15deg);width:35px;height:35px;background:#1a1a2e;border-radius:50% 50% 45% 45%;box-shadow:0 0 15px #00000080}.style-ninja .runner-body:after{content:"";position:absolute;top:35px;left:50%;transform:translate(-50%) skew(-10deg);width:30px;height:40px;background:linear-gradient(180deg,#2d3436,#1a1a2e);border-radius:5px}.style-ninja .runner-arm-left{position:absolute;top:18px;left:15px;width:55px;height:8px;background:linear-gradient(90deg,#e74c3c,#c0392b);transform:rotate(-5deg);border-radius:2px;box-shadow:0 0 10px #e74c3c80}.style-ninja .runner-arm-right{position:absolute;top:20px;right:-25px;width:40px;height:6px;background:linear-gradient(90deg,#e74c3c 80%,transparent 100%);animation:headband-flow .2s ease-in-out infinite;border-radius:0 3px 3px 0}.style-ninja .runner-leg-left,.style-ninja .runner-leg-right{position:absolute;left:-30px;width:25px;height:3px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.8) 100%);animation:speed-lines .15s linear infinite}.style-ninja .runner-leg-left{top:30px;animation-delay:0s}.style-ninja .runner-leg-right{top:50px;animation-delay:.05s}.style-ninja .runner-trail:before,.style-ninja .runner-trail:after{content:"";position:absolute;width:60px;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(231,76,60,.6) 50%,transparent 100%);animation:ninja-trail .3s linear infinite}.style-ninja .runner-trail:before{top:40px;left:-50px}.style-ninja .runner-trail:after{top:55px;left:-40px;animation-delay:.1s}@keyframes run-across-screen{0%{left:-120px}to{left:100vw}}@keyframes character-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes head-wobble{0%,to{transform:translate(-50%) rotate(-5deg)}50%{transform:translate(-50%) rotate(5deg)}}@keyframes arm-swing-left{0%,to{transform:rotate(45deg)}50%{transform:rotate(-45deg)}}@keyframes arm-swing-right{0%,to{transform:rotate(-45deg)}50%{transform:rotate(45deg)}}@keyframes leg-run-left{0%,to{transform:rotate(-30deg)}50%{transform:rotate(30deg)}}@keyframes leg-run-right{0%,to{transform:rotate(30deg)}50%{transform:rotate(-30deg)}}@keyframes dust-puff{0%{opacity:.8;transform:translate(0) scale(1)}to{opacity:0;transform:translate(-30px) scale(.5)}}@keyframes blob-squish{0%,to{transform:scaleX(1) scaleY(1) translateY(0)}25%{transform:scaleX(1.1) scaleY(.9) translateY(5px)}50%{transform:scaleX(.95) scaleY(1.1) translateY(-10px)}75%{transform:scaleX(1.05) scaleY(.95) translateY(3px)}}@keyframes eye-blink{0%,45%,55%,to{transform:scaleY(1)}50%{transform:scaleY(.1)}}@keyframes pupil-look{0%,to{transform:translate(2px)}50%{transform:translate(-2px)}}@keyframes sparkle-trail{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(-40px) scale(.3)}}@keyframes robot-walk{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes robot-eye-glow{0%{box-shadow:0 0 8px #fd79a8}to{box-shadow:0 0 15px #fd79a8,0 0 25px #fd79a8}}@keyframes ninja-dash{0%,to{transform:translate(0) skew(-5deg)}50%{transform:translate(3px) skew(-8deg)}}@keyframes headband-flow{0%,to{transform:rotate(0) scaleX(1)}50%{transform:rotate(5deg) scaleX(1.1)}}@keyframes speed-lines{0%{opacity:0;transform:translate(10px)}50%{opacity:1}to{opacity:0;transform:translate(-20px)}}@keyframes ninja-trail{0%{opacity:.8;transform:scaleX(1)}to{opacity:0;transform:scaleX(.5) translate(-30px)}}.loading-stats{text-align:center}.terminal-text{font-family:Space Mono,monospace;font-size:.7rem;color:var(--accent);letter-spacing:.3em;text-transform:uppercase;margin-bottom:1rem}.progress-track{width:300px;height:2px;background:#ffffff1a;position:relative;overflow:hidden}.progress-fill{position:absolute;height:100%;width:50%;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:progress-slide 2s infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes progress-slide{0%{left:-50%}to{left:100%}}.tag-chip{font-family:Space Mono,monospace;font-weight:700;font-size:12px!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.tag-chip:hover{transform:scale(1.05) translateY(-2px);box-shadow:0 10px 20px #0000004d}.loader-sentinel{display:flex;justify-content:center;align-items:center;z-index:1000;pointer-events:none;transition:opacity .3s ease}.loader-sentinel.centered{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.loader-sentinel.bottom{position:fixed;bottom:0;left:0;right:0;height:120px;background:linear-gradient(to top,rgba(5,5,5,.95) 0%,rgba(5,5,5,.8) 50%,transparent 100%);-webkit-backdrop-filter:none;backdrop-filter:none}@media(max-width:1200px){.logo{font-size:4rem}.masonry-grid,.grid-column{gap:1.5rem}}@media(max-width:900px){.hero{flex-direction:column;align-items:flex-start;gap:3rem}.header-right{align-items:flex-start;width:100%}.filter-search-group{width:100%;flex-direction:column}.search-container{width:100%}#popular-tags{justify-content:flex-start!important}.grid-column:last-child{display:none}}@media(max-width:600px){.logo{font-size:3rem}.grid-column:nth-child(2){display:none}}
