:root{--ig-primary-color: #337ab7;--ig-white: #fff;--ig-black: #000;--ig-background-overlay: rgba(0, 0, 0, .4);--ig-thumbnail-size: 96px;--ig-thumbnail-size-small: 80px;--ig-thumbnail-border-width: 4px;--ig-thumbnail-border-width-small: 3px;--ig-bullet-size: 4px;--ig-bullet-size-small: 3px}.image-gallery-icon{color:var(--ig-white, #fff);transition:all .3s ease-out;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0;cursor:pointer;outline:none;position:absolute;z-index:4;filter:drop-shadow(0 2px 2px rgba(0,0,0,.5))}@media (hover: hover) and (pointer: fine){.image-gallery-icon:hover{color:var(--ig-primary-color, #337ab7)}.image-gallery-icon:hover .image-gallery-svg{transform:scale(1.1)}}.image-gallery-icon:focus{outline:2px solid var(--ig-primary-color, #337ab7)}.image-gallery-using-mouse .image-gallery-icon:focus{outline:none}.image-gallery-fullscreen-button,.image-gallery-play-button{bottom:0;padding:20px}.image-gallery-fullscreen-button .image-gallery-svg,.image-gallery-play-button .image-gallery-svg{height:32px;width:32px}@media (max-width: 768px){.image-gallery-fullscreen-button,.image-gallery-play-button{padding:16px}.image-gallery-fullscreen-button .image-gallery-svg,.image-gallery-play-button .image-gallery-svg{height:24px;width:24px}}@media (max-width: 480px){.image-gallery-fullscreen-button,.image-gallery-play-button{padding:12px}.image-gallery-fullscreen-button .image-gallery-svg,.image-gallery-play-button .image-gallery-svg{height:16px;width:16px}}.image-gallery-fullscreen-button{right:0}.image-gallery-play-button{left:0}.image-gallery-top-nav,.image-gallery-bottom-nav{padding:12px;left:50%;transform:translate(-50%)}.image-gallery-top-nav .image-gallery-svg,.image-gallery-bottom-nav .image-gallery-svg{height:120px;width:96px}@media (max-width: 768px){.image-gallery-top-nav .image-gallery-svg,.image-gallery-bottom-nav .image-gallery-svg{height:72px;width:48px}}@media (max-width: 480px){.image-gallery-top-nav .image-gallery-svg,.image-gallery-bottom-nav .image-gallery-svg{height:48px;width:32px}}.image-gallery-top-nav[disabled],.image-gallery-bottom-nav[disabled]{cursor:not-allowed;opacity:.6;pointer-events:none}.image-gallery-top-nav{top:0}.image-gallery-bottom-nav{bottom:0}.image-gallery-left-nav,.image-gallery-right-nav{padding:48px 12px;top:50%;transform:translateY(-50%)}.image-gallery-left-nav .image-gallery-svg,.image-gallery-right-nav .image-gallery-svg{height:120px;width:64px}@media (max-width: 768px){.image-gallery-left-nav .image-gallery-svg,.image-gallery-right-nav .image-gallery-svg{height:72px;width:32px}}@media (max-width: 480px){.image-gallery-left-nav .image-gallery-svg,.image-gallery-right-nav .image-gallery-svg{height:48px;width:24px}}.image-gallery-left-nav[disabled],.image-gallery-right-nav[disabled]{cursor:not-allowed;opacity:.6;pointer-events:none}.image-gallery-left-nav{left:0}.image-gallery-right-nav{right:0}.image-gallery{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;position:relative;overscroll-behavior:none;-webkit-overflow-scrolling:touch}.image-gallery.fullscreen-modal{background:var(--ig-black, #000);bottom:0;height:100%;left:0;position:fixed;right:0;top:0;width:100%;z-index:5}.image-gallery.fullscreen-modal .image-gallery-content{top:50%;transform:translateY(-50%)}.image-gallery-content{position:relative;line-height:0;top:0}.image-gallery-content.fullscreen{background:var(--ig-black, #000)}.image-gallery-content .image-gallery-slide .image-gallery-image{max-height:calc(100vh - 80px)}.image-gallery-content.image-gallery-thumbnails-left .image-gallery-slide .image-gallery-image,.image-gallery-content.image-gallery-thumbnails-right .image-gallery-slide .image-gallery-image{max-height:100vh}.image-gallery-slide-wrapper{position:relative}.image-gallery-slide-wrapper.image-gallery-thumbnails-left,.image-gallery-slide-wrapper.image-gallery-thumbnails-right{display:inline-block;width:calc(100% - 112px)}@media (max-width: 768px){.image-gallery-slide-wrapper.image-gallery-thumbnails-left,.image-gallery-slide-wrapper.image-gallery-thumbnails-right{width:calc(100% - 88px)}}.image-gallery-slide-wrapper.image-gallery-rtl{direction:rtl}.image-gallery-swipe{overflow:hidden;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0);touch-action:pan-y pinch-zoom}.image-gallery-slides{overflow:hidden;position:relative;touch-action:pan-y pinch-zoom;-webkit-backface-visibility:hidden;backface-visibility:hidden;contain:layout style paint;isolation:isolate}.image-gallery-slides-container{display:flex;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;will-change:transform}.image-gallery-slides-container.vertical{flex-direction:column;height:100%}.image-gallery-slides-container.vertical .image-gallery-slide{flex:0 0 100%;height:100%;min-height:0}.image-gallery-slides-container.vertical .image-gallery-slide .image-gallery-image{height:100%;width:auto;max-width:100%}.image-gallery-slide{flex:0 0 100%;min-width:0;position:relative;-webkit-backface-visibility:hidden;backface-visibility:hidden}.image-gallery-slide .image-gallery-image{width:100%;object-fit:contain}.image-gallery-slide .image-gallery-description{background:var(--ig-background-overlay, rgba(0, 0, 0, .4));bottom:72px;color:var(--ig-white, #fff);left:0;line-height:1;padding:12px 20px;position:absolute;white-space:normal}@media (max-width: 768px){.image-gallery-slide .image-gallery-description{bottom:48px;font-size:.8em;padding:8px 16px}}.image-gallery-bullets{bottom:20px;left:0;margin:0 auto;position:absolute;right:0;width:80%;z-index:4;text-align:center}.image-gallery-bullets .image-gallery-bullets-container{margin:0 auto;padding:0;display:inline-block}.image-gallery-bullets .image-gallery-bullets-inner{display:flex;align-items:center;justify-content:flex-start;white-space:nowrap;padding:2px 0}.image-gallery-bullets .image-gallery-bullet{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:1px solid var(--ig-white, #fff);border-radius:50%;box-shadow:0 2px 2px #0009;cursor:pointer;margin:0 4px;outline:none;width:calc(var(--ig-bullet-size, 4px) * 2 + 2px);height:calc(var(--ig-bullet-size, 4px) * 2 + 2px);padding:0;flex-shrink:0;transition:all .2s ease-out}@media (max-width: 768px){.image-gallery-bullets .image-gallery-bullet{margin:0 3px;width:calc(var(--ig-bullet-size-small, 3px) * 2 + 2px);height:calc(var(--ig-bullet-size-small, 3px) * 2 + 2px)}}@media (max-width: 480px){.image-gallery-bullets .image-gallery-bullet{width:8px;height:8px}}.image-gallery-bullets .image-gallery-bullet:focus{transform:scale(1.2);background:var(--ig-primary-color, #337ab7);border:1px solid var(--ig-primary-color, #337ab7)}.image-gallery-bullets .image-gallery-bullet.active{transform:scale(1.2);border:1px solid var(--ig-white, #fff);background:var(--ig-white, #fff)}@media (hover: hover) and (pointer: fine){.image-gallery-bullets .image-gallery-bullet:hover{background:var(--ig-primary-color, #337ab7);border:1px solid var(--ig-primary-color, #337ab7)}.image-gallery-bullets .image-gallery-bullet.active:hover{background:var(--ig-primary-color, #337ab7)}}.image-gallery-bullets.image-gallery-bullets-vertical{left:20px;right:auto;bottom:auto;width:auto;top:50%;transform:translateY(-50%)}.image-gallery-bullets.image-gallery-bullets-vertical .image-gallery-bullets-inner{flex-direction:column;padding:0 2px}.image-gallery-bullets.image-gallery-bullets-vertical .image-gallery-bullet{display:block;margin:4px 0}@media (max-width: 768px){.image-gallery-bullets.image-gallery-bullets-vertical .image-gallery-bullet{margin:3px 0}}@media (max-width: 480px){.image-gallery-bullets.image-gallery-bullets-vertical .image-gallery-bullet{margin:3px 0}}.image-gallery-thumbnails-wrapper{position:relative}.image-gallery-thumbnails-wrapper.thumbnails-swipe-horizontal{touch-action:pan-y}.image-gallery-thumbnails-wrapper.thumbnails-swipe-vertical{touch-action:pan-x}.image-gallery-thumbnails-wrapper.thumbnails-wrapper-rtl{direction:rtl}.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-left,.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-right{display:inline-block;vertical-align:top;width:var(--ig-thumbnail-size, 96px)}@media (max-width: 768px){.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-left,.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-right{width:var(--ig-thumbnail-size-small, 80px)}}.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-left .image-gallery-thumbnails,.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-right .image-gallery-thumbnails{height:100%;width:100%;left:0;padding:0;position:absolute;top:0}.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-left .image-gallery-thumbnails .image-gallery-thumbnail,.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-right .image-gallery-thumbnails .image-gallery-thumbnail{display:block;margin-right:0;padding:0}.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-left .image-gallery-thumbnails .image-gallery-thumbnail+.image-gallery-thumbnail,.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-right .image-gallery-thumbnails .image-gallery-thumbnail+.image-gallery-thumbnail{margin-left:0;margin-top:2px}.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-left,.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-right{margin:0 4px}@media (max-width: 768px){.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-left,.image-gallery-thumbnails-wrapper.image-gallery-thumbnails-right{margin:0 4px}}.image-gallery-thumbnails{overflow:hidden;padding:4px 0}@media (max-width: 768px){.image-gallery-thumbnails{padding:4px 0}}.image-gallery-thumbnails .image-gallery-thumbnails-container{cursor:pointer;text-align:center;white-space:nowrap}.image-gallery-thumbnail{display:inline-block;border:var(--ig-thumbnail-border-width, 4px) solid transparent;transition:border .3s ease-out;width:var(--ig-thumbnail-size, 96px);background:transparent;padding:0}@media (max-width: 768px){.image-gallery-thumbnail{border:var(--ig-thumbnail-border-width-small, 3px) solid transparent;width:var(--ig-thumbnail-size-small, 80px)}}.image-gallery-thumbnail+.image-gallery-thumbnail{margin-left:2px}.image-gallery-thumbnail .image-gallery-thumbnail-inner{display:block;position:relative}.image-gallery-thumbnail .image-gallery-thumbnail-image{vertical-align:middle;width:100%;line-height:0}.image-gallery-thumbnail.active,.image-gallery-thumbnail:focus{outline:none;border:var(--ig-thumbnail-border-width, 4px) solid var(--ig-primary-color, #337ab7)}@media (max-width: 768px){.image-gallery-thumbnail.active,.image-gallery-thumbnail:focus{border:var(--ig-thumbnail-border-width-small, 3px) solid var(--ig-primary-color, #337ab7)}}@media (hover: hover) and (pointer: fine){.image-gallery-thumbnail:hover{outline:none;border:var(--ig-thumbnail-border-width, 4px) solid var(--ig-primary-color, #337ab7)}}@media (hover: hover) and (pointer: fine) and (max-width: 768px){.image-gallery-thumbnail:hover{border:var(--ig-thumbnail-border-width-small, 3px) solid var(--ig-primary-color, #337ab7)}}.image-gallery-thumbnail-label{box-sizing:border-box;color:var(--ig-white, #fff);font-size:1em;left:0;line-height:1em;padding:5%;position:absolute;top:50%;text-shadow:0 2px 2px rgba(0,0,0,.6);transform:translateY(-50%);white-space:normal;width:100%}@media (max-width: 768px){.image-gallery-thumbnail-label{font-size:.8em;line-height:.8em}}.image-gallery-index{background:var(--ig-background-overlay, rgba(0, 0, 0, .4));color:var(--ig-white, #fff);line-height:1;padding:10px 20px;position:absolute;right:0;top:0;z-index:4}@media (max-width: 768px){.image-gallery-index{font-size:.8em;padding:5px 10px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0a0a0f;color:#fff;min-height:100vh}.app{min-height:100vh}.nav{background:#0000004d;border-bottom:1px solid rgba(255,255,255,.1);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:100}.nav-brand{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#a855f7,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.nav-actions{display:flex;gap:.5rem}.btn{padding:.5rem 1rem;border:none;border-radius:.5rem;cursor:pointer;font-size:.875rem;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-primary{background:#7c3aed;color:#fff}.btn-primary:hover{background:#6d28d9}.btn-secondary{background:#ffffff1a;color:#fff}.btn-secondary:hover{background:#fff3}.btn-success{background:#059669;color:#fff}.btn-danger{background:#dc2626;color:#fff}.btn-icon{padding:.5rem;background:#ffffff1a;color:#fff;border:none;border-radius:.5rem;cursor:pointer}.carousel-container{position:relative;height:400px;overflow:hidden;cursor:grab;-webkit-user-select:none;user-select:none}.carousel-container:active{cursor:grabbing}.carousel-track{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.carousel-card{position:absolute;transition:all .4s cubic-bezier(.25,.1,.25,1);cursor:pointer}.carousel-card:hover{transform:scale(1.02)!important}.carousel-card-inner{width:300px;background:#1e1e28cc;border-radius:1rem;border:1px solid rgba(255,255,255,.1);overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.carousel-card-inner img{width:100%;aspect-ratio:4/3;object-fit:cover}.carousel-card-info{padding:1rem}.carousel-card-info h3{font-weight:700;margin-bottom:.25rem}.carousel-card-info span{font-size:.75rem;color:#9ca3af}.indicators{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem}.indicator{width:.5rem;height:.5rem;border-radius:9999px;background:#4b5563;border:none;cursor:pointer;transition:all .2s}.indicator.active{background:#a855f7;width:1.5rem}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;padding:1rem}.image-item{position:relative;aspect-ratio:1;border-radius:.5rem;overflow:hidden;cursor:pointer}.image-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.image-item:hover img{transform:scale(1.05)}.image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}.image-item:hover .image-overlay{opacity:1}.upload-zone{border:2px dashed rgba(255,255,255,.2);border-radius:1rem;padding:3rem;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:2rem}.upload-zone:hover{border-color:#a855f7;background:#a855f70d}.upload-zone.dragging{border-color:#a855f7;background:#a855f71a}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000f2;z-index:1000;display:flex;align-items:center;justify-content:center}.lightbox img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:.5rem}.lightbox-close{position:absolute;top:1rem;right:1rem;background:#ffffff1a;border:none;color:#fff;width:2.5rem;height:2.5rem;border-radius:50%;cursor:pointer;font-size:1.5rem}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1a;border:none;color:#fff;width:3rem;height:3rem;border-radius:50%;cursor:pointer;font-size:1.5rem}.lightbox-prev{left:1rem}.lightbox-next{right:1rem}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:500}.modal-content{background:#1f2937;border-radius:1rem;padding:1.5rem;width:100%;max-width:24rem;border:1px solid rgba(255,255,255,.1)}.modal-content h2{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.modal-content input,.modal-content textarea{width:100%;padding:.75rem;background:#374151;border:none;border-radius:.5rem;color:#fff;margin-bottom:.75rem}.modal-actions{display:flex;gap:.75rem}.modal-actions .btn{flex:1;padding:.75rem}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh}.login-card{background:#1e1e28cc;border-radius:1rem;padding:2rem;width:100%;max-width:24rem;border:1px solid rgba(255,255,255,.1);text-align:center}.login-card h1{font-size:1.5rem;margin-bottom:.5rem}.login-card p{color:#9ca3af;margin-bottom:1.5rem}.loading{display:flex;justify-content:center;padding:5rem}.spinner{width:2rem;height:2rem;border:3px solid #7c3aed;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.qr-modal{text-align:center}.qr-modal img{background:#fff;padding:1rem;border-radius:.5rem}.qr-modal p{color:#9ca3af;margin-top:1rem;font-size:.875rem}
