body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.gallery-image-container{aspect-ratio:1;cursor:pointer;overflow:hidden;position:relative}.image-wrapper{height:100%;overflow:hidden;position:relative;width:100%}.gallery-image{height:100%;object-fit:cover;opacity:0;transition:opacity .3s ease-in-out;width:100%}.gallery-image.loaded{opacity:1}.image-overlay{background:linear-gradient(180deg,#0000 0,#0000 50%,#000000b3);bottom:0;display:flex;flex-direction:column;justify-content:space-between;left:0;opacity:0;padding:20px;position:absolute;right:0;top:0;transition:opacity .3s ease}.gallery-image-container:hover .image-overlay{opacity:1}.overlay-content{display:flex;gap:10px;justify-content:flex-end}.icon-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .3s ease;width:44px}.icon-button:hover{background:#ffffff4d}.icon-button svg{transition:all .3s ease}.icon-button svg.liked{color:#e74c3c}.expand-button{background:#ffffff40}.image-info{color:#fff}.image-info h3{font-size:1.2rem;font-weight:600;margin:0 0 8px;text-shadow:0 2px 4px #00000080}.image-description{font-size:.9rem;line-height:1.4;margin:0 0 12px;opacity:.9;text-shadow:0 1px 2px #00000080}.image-tags{display:flex;flex-wrap:wrap;gap:8px}.tag{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:20px;font-size:.85rem;padding:4px 12px}.image-skeleton{animation:loading 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;height:100%;width:100%}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-pulse{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;height:100%;width:100%}@media (max-width:768px){.icon-button{height:40px;width:40px}.image-info h3{font-size:1.1rem}.image-description{font-size:.85rem}.tag{font-size:.8rem;padding:3px 10px}}@media (max-width:480px){.gallery-image-container{border-radius:12px}.overlay-content{gap:8px;padding:15px}.icon-button{height:36px;width:36px}.icon-button svg{height:20px;width:20px}.image-info{padding:15px}.image-info h3{font-size:1rem;margin-bottom:5px}.image-description{font-size:.8rem;margin-bottom:8px}.image-tags{gap:5px}.tag{font-size:.75rem;padding:2px 8px}}.lightbox-overlay{align-items:center;background:#000000f2;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.lightbox-container{display:flex;flex-direction:column;height:100%;position:relative;width:100%}.lightbox-header{background:#00000080!important;justify-content:space-between;left:0;padding:20px 30px;position:absolute;right:0;top:0;z-index:10}.header-info,.lightbox-header{align-items:center;display:flex}.header-info{color:#fff;gap:20px}.header-info h2{font-size:1.5rem;font-weight:600;margin:0}.image-counter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:20px;font-size:.9rem;padding:6px 16px}.header-controls{display:flex;gap:10px}.control-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #ffffff4d;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .3s ease;width:44px}.control-button:hover{background:#ffffff40;transform:scale(1.1)}.control-button:active{transform:scale(.95)}.close-button{background:#ef44444d;border-color:#ef444480}.close-button:hover{background:#ef444480}.lightbox-content{align-items:center;display:flex;flex:1 1;justify-content:center;padding:100px 100px 150px;position:relative}.image-container{max-height:90%;max-width:90%;transition:transform .3s ease}.lightbox-image{border-radius:12px;box-shadow:0 20px 60px #00000080;max-height:80vh;max-width:100%;object-fit:contain}.nav-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff26!important;border:1px solid #ffffff4d!important;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:60px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:60px;z-index:5}.nav-button:hover:not(:disabled){background:#ffffff40!important;transform:translateY(-50%) scale(1.1)}.nav-button:disabled{cursor:not-allowed;opacity:.3}.nav-prev{left:20px}.nav-next{right:20px}.lightbox-description{background:#000000b3!important;bottom:0;color:#fff;left:0;padding:20px 30px;position:absolute;right:0}.lightbox-description p{font-size:1rem;line-height:1.6;margin:0 0 12px}.lightbox-tags{display:flex;flex-wrap:wrap;gap:8px}.lightbox-tag{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:20px;font-size:.85rem;padding:4px 12px}.thumbnails-container{background:#000c!important;bottom:0;left:0;padding:20px;position:absolute;right:0}.thumbnails-scroll{display:flex;gap:10px;overflow-x:auto;padding:10px 0}.thumbnails-scroll::-webkit-scrollbar{height:6px}.thumbnails-scroll::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.thumbnails-scroll::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.thumbnail{border:2px solid #0000;border-radius:8px;cursor:pointer;flex-shrink:0;height:80px;overflow:hidden;transition:all .3s ease;width:80px}.thumbnail.active{border-color:#667eea;box-shadow:0 0 20px #667eea80}.thumbnail img{height:100%;object-fit:cover;width:100%}@media (max-width:768px){.lightbox-header{align-items:stretch;flex-direction:column;gap:15px;padding:15px}.header-info{justify-content:space-between;width:100%}.header-info h2{font-size:1.1rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-counter{font-size:.85rem;padding:4px 12px}.header-controls{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr);width:100%}.control-button{border-radius:12px;height:48px;width:100%}.control-button:nth-child(5),.control-button:nth-child(6),.control-button:nth-child(7){display:none}.close-button{grid-column:4}.nav-button{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#000000d9!important;border:2px solid #fff6!important;box-shadow:0 8px 32px #0006;height:70px;width:70px}.nav-button:hover:not(:disabled){background:#000000e6!important;border-color:#fff9!important;transform:translateY(-50%) scale(1.05)}.nav-button:disabled{background:#00000080!important;border-color:#fff3!important;opacity:.4}.nav-button svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));height:32px;width:32px}.nav-prev{left:15px}.nav-next{right:15px}.lightbox-content{padding:100px 10px 120px}.lightbox-image{max-height:70vh;max-width:100%}.lightbox-description{font-size:.9rem;padding:15px}.thumbnail{height:60px;width:60px}.thumbnails-container{padding:15px}}@media (max-width:480px){.header-info h2{font-size:1rem;max-width:150px}.control-button{height:44px}.lightbox-content{padding:90px 5px 110px}.nav-button{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#000000e6!important;border:2px solid #ffffff80!important;box-shadow:0 6px 24px #00000080;height:65px;width:65px}.nav-button:hover:not(:disabled){background:#000000f2!important;border-color:#ffffffb3!important;transform:translateY(-50%) scale(1.08)}.nav-button:disabled{background:#0006!important;border-color:#ffffff26!important;opacity:.3}.nav-button svg{filter:drop-shadow(0 2px 6px rgba(0,0,0,.4));height:28px;width:28px}.nav-prev{left:12px}.nav-next{right:12px}}.gallery-container{min-height:100vh;padding:30px}.gallery-header{align-items:center;border-radius:20px;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:30px;padding:25px 30px}.gallery-title h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;margin:0}.image-count{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:20px;color:#666;font-size:.9rem;margin-left:20px;padding:6px 16px}.gallery-controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px}.search-container{align-items:center;border-radius:30px;display:flex;gap:12px;min-width:300px;padding:12px 20px}.search-input{background:#0000;border:none;color:#333;font-size:1rem;outline:none;width:100%}.search-input::placeholder{color:#999}.filter-container{align-items:center;display:flex;gap:10px}.filter-button{align-items:center;display:flex;gap:8px;padding:12px 20px}.active-filter{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .3s ease}.active-filter:hover{transform:scale(1.05)}.grid-controls{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:12px;display:flex;gap:8px;padding:6px}.grid-button{align-items:center;background:#0000;border:none;border-radius:8px;color:#666;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .3s ease}.grid-button:hover{background:#fff3}.grid-button.active{background:#667eea33;color:#667eea}.tags-filter{border-radius:15px;display:flex;flex-wrap:nowrap;gap:12px;margin-bottom:30px;overflow-x:auto;padding:20px}.tags-filter::-webkit-scrollbar{height:6px}.tags-filter::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.tags-filter::-webkit-scrollbar-thumb{background:#667eea4d;border-radius:3px}.tag-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;color:#666;cursor:pointer;font-size:.95rem;padding:8px 20px;transition:all .3s ease;white-space:nowrap}.tag-button:hover{background:#fff3;transform:translateY(-2px)}.tag-button.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.gallery-grid{grid-gap:20px;animation:fadeIn .5s ease;display:grid;gap:20px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1200px){.gallery-grid{grid-template-columns:repeat(3,1fr)!important}}@media (max-width:768px){.gallery-container{padding:15px}.gallery-header{gap:15px;padding:15px}.gallery-title{text-align:center;width:100%}.gallery-title h1{font-size:1.8rem}.image-count{margin-left:10px}.gallery-controls{justify-content:center;width:100%}.search-container{min-width:100%;order:1}.filter-container{order:2}.grid-controls{order:3}.tags-filter{gap:8px;margin-bottom:20px;padding:15px}.tag-button{font-size:.85rem;padding:6px 14px}.gallery-grid{gap:12px;grid-template-columns:repeat(2,1fr)!important}}@media (max-width:480px){.gallery-container{padding:10px}.gallery-header{padding:12px}.gallery-title h1{font-size:1.5rem}.image-count{font-size:.8rem;padding:4px 10px}.search-container{padding:10px 15px}.filter-button,.search-input{font-size:.9rem}.filter-button{padding:10px 15px}.grid-controls{display:none}.tags-filter{margin-bottom:15px;padding:12px}.tag-button{font-size:.8rem;padding:5px 12px}.gallery-grid{gap:10px;grid-template-columns:repeat(1,1fr)!important}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);background-attachment:fixed;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-x:hidden}.App,body{min-height:100vh;position:relative}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#ffffff1a}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#ffffff80}:root{--glass-bg:#ffffff1a;--glass-border:#fff3;--glass-shadow:0 8px 32px 0 #1f26875e;--glass-blur:blur(8px);--primary-gradient:linear-gradient(135deg,#667eea,#764ba2);--secondary-gradient:linear-gradient(135deg,#f093fb,#f5576c);--tertiary-gradient:linear-gradient(135deg,#4facfe,#00f2fe)}.glass{backdrop-filter:blur(8px);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:blur(8px);-webkit-backdrop-filter:var(--glass-blur);background:#ffffff1a;background:var(--glass-bg);border:1px solid #fff3;border:1px solid var(--glass-border);box-shadow:0 8px 32px 0 #1f26875e;box-shadow:var(--glass-shadow);transition:all .3s ease}.glass:hover{background:#ffffff26;box-shadow:0 12px 40px 0 #1f268773;transform:translateY(-2px)}.glass-card{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border:1px solid #ffffff2e;border-radius:20px;box-shadow:0 8px 32px 0 #1f26875e}.glass-button,.glass-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.glass-button{background:#ffffff26;border:1px solid #ffffff4d;border-radius:12px;box-shadow:0 4px 15px 0 #1f268733;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.glass-button:hover{background:#ffffff40;box-shadow:0 8px 25px 0 #1f26874d;transform:translateY(-2px)}.glass-button:active{box-shadow:0 2px 10px 0 #1f268733;transform:translateY(0)}.gradient-bg{animation:gradientShift 15s ease infinite;background:linear-gradient(135deg,#667eea,#764ba2);background-size:400% 400%}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.floating-shapes{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:-1}.shape{animation:float 20s ease-in-out infinite;border-radius:50%;filter:blur(40px);opacity:.5;position:absolute}.shape-1{animation-duration:25s;background:linear-gradient(135deg,#667eea,#764ba2);height:300px;left:-150px;top:-150px;width:300px}.shape-2{animation-delay:5s;animation-duration:30s;background:linear-gradient(135deg,#f093fb,#f5576c);bottom:-200px;height:400px;right:-200px;width:400px}.shape-3{animation-delay:10s;animation-duration:35s;background:linear-gradient(135deg,#4facfe,#00f2fe);height:250px;left:50%;top:50%;transform:translate(-50%,-50%);width:250px}@keyframes float{0%,to{transform:translate(0) rotate(0deg)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}
/*# sourceMappingURL=main.5a82c111.css.map*/