.yarl__fullsize{width:100%;height:100%}.yarl__relative{position:relative}.yarl__portal{opacity:0;transition:opacity var(--yarl__fade_animation_duration,.25s)var(--yarl__fade_animation_timing_function,ease);z-index:var(--yarl__portal_zindex,9999);position:fixed;inset:0;overflow:hidden}.yarl__portal_open{opacity:1}.yarl__container{background-color:var(--yarl__container_background_color,var(--yarl__color_backdrop,#000));overscroll-behavior:var(--yarl__controller_overscroll_behavior,contain);touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;user-select:none;outline:none;position:absolute;inset:0;overflow:hidden}.yarl__carousel{height:100%;opacity:var(--yarl__pull_opacity,1);transform:translate(var(--yarl__swipe_offset,0),var(--yarl__pull_offset,0));width:calc(100% + (var(--yarl__carousel_slides_count) - 1)*(100% + var(--yarl__carousel_spacing_px,0)*1px + var(--yarl__carousel_spacing_percent,0)*1%));flex:none;place-content:center;align-items:stretch;display:flex}.yarl__carousel_with_slides{-moz-column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%);column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%)}.yarl__flex_center{place-content:center;align-items:center;display:flex}.yarl__slide{padding:calc(var(--yarl__carousel_padding_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_padding_percent,0)*1%);flex:1;position:relative;overflow:hidden}[dir=rtl] .yarl__slide{--yarl__direction:-1}.yarl__slide_image{-o-object-fit:contain;object-fit:contain;touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;max-width:100%;max-height:100%}.yarl__slide_image_cover{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.yarl__slide_image_loading{opacity:0}@media screen and (min-width:800px){.yarl__slide_wrapper:not(.yarl__slide_wrapper_interactive) .yarl__slide_image{-webkit-backface-visibility:hidden;-webkit-transform-style:preserve-3d;-webkit-transform:translateZ(0)}}.yarl__slide_placeholder{line-height:0;position:absolute;top:50%;left:50%;transform:translate(-50%)translateY(-50%)}.yarl__slide_loading{color:var(--yarl__slide_icon_loading_color,var(--yarl__color_button,#fffc));animation:1s linear yarl__delayed_fadein}.yarl__slide_loading line{animation:1s linear infinite yarl__stroke_opacity}.yarl__slide_loading line:first-of-type{animation-delay:-1.875s}.yarl__slide_loading line:nth-of-type(2){animation-delay:-1.75s}.yarl__slide_loading line:nth-of-type(3){animation-delay:-1.625s}.yarl__slide_loading line:nth-of-type(4){animation-delay:-1.5s}.yarl__slide_loading line:nth-of-type(5){animation-delay:-1.375s}.yarl__slide_loading line:nth-of-type(6){animation-delay:-1.25s}.yarl__slide_loading line:nth-of-type(7){animation-delay:-1.125s}.yarl__slide_loading line:nth-of-type(8){animation-delay:-1s}.yarl__slide_error{color:var(--yarl__slide_icon_error_color,red);height:var(--yarl__slide_icon_error_size,48px);width:var(--yarl__slide_icon_error_size,48px)}@media (prefers-reduced-motion){.yarl__portal,.yarl__slide{transition:unset}.yarl__slide_loading,.yarl__slide_loading line{animation:unset}}.yarl__toolbar{padding:var(--yarl__toolbar_padding,8px);justify-content:flex-end;display:flex;position:absolute;inset:0 0 auto auto}[dir=rtl] .yarl__toolbar{inset:0 auto auto 0}.yarl__icon{height:var(--yarl__icon_size,32px);width:var(--yarl__icon_size,32px)}.yarl__button{appearance:none;background-color:var(--yarl__button_background_color,transparent);border:var(--yarl__button_border,0);color:var(--yarl__color_button,#fffc);cursor:pointer;filter:var(--yarl__button_filter,drop-shadow(2px 2px 2px #000c));margin:var(--yarl__button_margin,0);padding:var(--yarl__button_padding,8px);-webkit-tap-highlight-color:transparent;outline:none;line-height:0}.yarl__button:focus{color:var(--yarl__color_button_active,#fff)}.yarl__button:focus:not(:focus-visible){color:var(--yarl__color_button,#fffc)}.yarl__button:focus-visible{color:var(--yarl__color_button_active,#fff)}@media (hover:hover){.yarl__button:focus-visible:hover,.yarl__button:focus:hover,.yarl__button:hover{color:var(--yarl__color_button_active,#fff)}}.yarl__button:disabled{color:var(--yarl__color_button_disabled,#fff6);cursor:default}.yarl__navigation_next,.yarl__navigation_prev{padding:var(--yarl__navigation_button_padding,24px 16px);position:absolute;top:50%;transform:translateY(-50%)}.yarl__navigation_prev{left:0}[dir=rtl] .yarl__navigation_prev{left:unset;right:0;transform:translateY(-50%)rotate(180deg)}.yarl__navigation_next{right:0}[dir=rtl] .yarl__navigation_next{left:0;right:unset;transform:translateY(-50%)rotate(180deg)}.yarl__no_scroll{overscroll-behavior:none;height:100%;overflow:hidden}@keyframes yarl__delayed_fadein{0%{opacity:0}80%{opacity:0}to{opacity:1}}@keyframes yarl__stroke_opacity{0%{stroke-opacity:1}to{stroke-opacity:.125}}
.project-gallery{width:100%;margin-bottom:0}.gallery-main{aspect-ratio:16/9;cursor:pointer;background:#000;border:2px solid #00d4ff33;border-radius:15px;width:100%;max-width:900px;margin:0 auto;transition:all .4s;position:relative;overflow:hidden;box-shadow:0 8px 30px #00000080}.gallery-main:hover{border-color:var(--glow-blue);transform:translateY(-3px);box-shadow:0 0 40px #00d4ff66,0 10px 50px #0009}.main-image,.main-video{object-fit:contain;background:#000;width:100%;height:100%}.youtube-container{width:100%;height:100%;position:relative}.main-youtube{background:#000;border:none;width:100%;height:100%;position:absolute;top:0;left:0}.image-counter{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);color:var(--text-primary);z-index:10;background:#000000d9;border:2px solid #00d4ff66;border-radius:25px;align-items:center;gap:.75rem;padding:.75rem 1.25rem;font-size:.95rem;font-weight:700;display:flex;position:absolute;top:1.5rem;right:1.5rem;box-shadow:0 4px 20px #00d4ff4d}.media-type-badge{letter-spacing:.05em;background:#00d4ff4d;border:1px solid #00d4ff80;border-radius:12px;padding:.35rem .7rem;font-size:.7rem;font-weight:700}.gallery-nav{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);color:var(--text-primary);cursor:pointer;z-index:10;background:#000000d9;border:2px solid #00d4ff4d;border-radius:50%;justify-content:center;align-items:center;width:55px;height:55px;font-size:2.2rem;transition:all .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gallery-nav:hover{border-color:var(--glow-blue);background:#00d4ff26;transform:translateY(-50%)scale(1.1);box-shadow:0 0 25px #00d4ff80}.gallery-nav.prev{left:1rem}.gallery-nav.next{right:1rem}.gallery-thumbnails{scrollbar-width:thin;scrollbar-color:var(--glow-blue)#0000004d;gap:.75rem;max-width:900px;margin-top:1.25rem;margin-left:auto;margin-right:auto;padding:.75rem 0;display:flex;overflow-x:auto}.gallery-thumbnails::-webkit-scrollbar{height:8px}.gallery-thumbnails::-webkit-scrollbar-track{background:var(--bg-card);border-radius:4px}.gallery-thumbnails::-webkit-scrollbar-thumb{background:var(--glow-blue);border-radius:4px}.thumbnail{cursor:pointer;background:#000;border:2px solid #0000;border-radius:10px;flex-shrink:0;width:120px;height:68px;padding:0;transition:all .3s;overflow:hidden;box-shadow:0 3px 12px #0006}.thumbnail:hover{border-color:#00d4ff99;transform:translateY(-3px);box-shadow:0 6px 20px #00d4ff4d}.thumbnail.active{border-color:var(--glow-blue);transform:scale(1.05);box-shadow:0 0 20px #00d4ff99,0 6px 20px #0006}.thumbnail-image{object-fit:cover;width:100%;height:100%}.thumbnail-video{width:100%;height:100%;position:relative}.thumbnail-video-el{object-fit:cover;width:100%;height:100%}.video-play-overlay{color:var(--glow-blue);text-shadow:0 0 10px #00d4ffcc;pointer-events:none;font-size:1.5rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.lightbox{z-index:1000;background:#000000f2;justify-content:center;align-items:center;padding:2rem;animation:.3s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-close{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);cursor:pointer;z-index:1001;background:#0a0e17e6;border:1px solid #fff3;border-radius:50%;width:50px;height:50px;font-size:1.5rem;transition:all .3s;position:absolute;top:2rem;right:2rem}.lightbox-close:hover{background:#f003;border-color:red;box-shadow:0 0 20px #f006}.lightbox-content{justify-content:center;align-items:center;max-width:90vw;max-height:90vh;display:flex;position:relative}.lightbox-image{object-fit:contain;border-radius:10px;width:auto;max-width:100%;height:auto;max-height:90vh;box-shadow:0 0 50px #00d4ff4d}.lightbox-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);cursor:pointer;background:#0a0e17e6;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:2.5rem;transition:all .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{border-color:var(--glow-blue);background:#00d4ff33;box-shadow:0 0 20px #00d4ff66}.lightbox-nav.prev{left:-80px}.lightbox-nav.next{right:-80px}.lightbox-counter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text-primary);background:#0a0e17e6;border:1px solid #00d4ff4d;border-radius:20px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;position:absolute;bottom:-3rem;left:50%;transform:translate(-50%);box-shadow:0 0 20px #00d4ff33}@media (max-width:768px){.lightbox{padding:1rem}.lightbox-nav.prev{left:1rem}.lightbox-nav.next{right:1rem}.lightbox-counter{bottom:1rem}.gallery-thumbnails{gap:.5rem}.thumbnail{width:80px;height:45px}}
.project-page{max-width:1600px;min-height:100vh;margin:0 auto;padding:3rem 2rem}.back-link{color:var(--glow-blue);align-items:center;gap:.5rem;margin-bottom:2rem;font-size:1rem;text-decoration:none;transition:all .3s;display:inline-flex}.back-link:hover{color:var(--glow-purple);text-shadow:0 0 10px;transform:translate(-5px)}.project-title-section{border-bottom:2px solid #00d4ff33;padding-bottom:1.5rem}.project-title{background:linear-gradient(135deg,#fff,var(--glow-blue),var(--glow-purple));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:1rem;font-size:3.5rem;font-weight:800;line-height:1.2}.project-meta{color:var(--text-secondary);flex-wrap:wrap;gap:1.5rem;font-size:1rem;display:flex}.project-meta>span{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-transform:capitalize;background:#0f141999;border:1px solid #ffffff1a;border-radius:20px;padding:.5rem 1rem}.project-status{font-weight:600}.status-released{color:var(--glow-green);border-color:#00ff884d!important}.status-in-progress{color:var(--glow-blue);border-color:#00d4ff4d!important}.status-archived{color:var(--text-secondary)}.project-content{grid-template-columns:1fr 380px;align-items:start;gap:4rem;display:grid}.project-main{min-width:0}.project-description{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid #ffffff1a;border-left:3px solid var(--glow-blue);background:#0f141966;border-radius:15px;margin:3rem 0 2.5rem;padding:2rem}.project-description h2{color:var(--glow-blue);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;font-size:1.5rem;font-weight:700}.project-description p{color:var(--text-secondary);font-size:1.05rem;line-height:1.9}.project-cta-button{color:var(--text-primary);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);cursor:pointer;background:#0f141999;border:2px solid;border-radius:50px;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:1.1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.project-cta-button.youtube{border-color:red;box-shadow:0 0 20px #f003}.project-cta-button.youtube:hover{background:#ff00001a;transform:translateY(-2px);box-shadow:0 0 30px #f006}.project-cta-button.game{border-color:var(--glow-blue);box-shadow:0 0 20px #00d4ff33}.project-cta-button.game:hover{background:#00d4ff1a;transform:translateY(-2px);box-shadow:0 0 30px #00d4ff66}.project-cta-button.demo,.project-cta-button.github{border-color:var(--glow-purple);box-shadow:0 0 20px #a855f733}.project-cta-button.demo:hover,.project-cta-button.github:hover{background:#a855f71a;transform:translateY(-2px);box-shadow:0 0 30px #a855f766}.button-icon{font-size:1.3rem}.project-sidebar{align-self:start;position:sticky;top:2rem}.project-tech-section,.project-info-section{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f141999;border:1px solid #ffffff1a;border-radius:15px;margin-bottom:1.5rem;padding:1.5rem}.project-tech-section h3,.project-info-section h3{color:var(--text-primary);border-bottom:2px solid #00d4ff33;margin-bottom:1rem;padding-bottom:.75rem;font-size:1.3rem;font-weight:700}.tech-tags{flex-wrap:wrap;gap:.5rem;display:flex}.tech-tag{color:var(--glow-blue);background:#00d4ff1a;border:1px solid #00d4ff4d;border-radius:20px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .3s}.tech-tag:hover{background:#00d4ff33;transform:translateY(-2px);box-shadow:0 0 15px #00d4ff4d}.project-details{gap:1rem;display:grid}.project-details dt{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-size:.85rem;font-weight:600}.project-details dd{color:var(--text-primary);text-transform:capitalize;margin-bottom:.5rem;font-size:1.05rem}@media (max-width:1024px){.project-content{grid-template-columns:1fr}.project-sidebar{position:static}.project-title{font-size:2.5rem}}@media (max-width:768px){.project-page{padding:1rem}.project-title{font-size:2rem}.project-meta{gap:.75rem;font-size:.9rem}.project-description p{font-size:1rem}.project-cta-button{justify-content:center;width:100%}}
