.gallery-page{background-color:#fff;min-height:100vh}.gallery-page .gallery-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-top:2rem;display:grid}.gallery-page .gallery-grid .gallery-item{cursor:pointer;border-radius:8px;height:300px;transition:transform .3s;position:relative;overflow:hidden}.gallery-page .gallery-grid .gallery-item:hover{transform:scale(1.02)}.gallery-page .gallery-grid .gallery-item:hover .overlay{opacity:1}.gallery-page .gallery-grid .gallery-item img{object-fit:cover;width:100%;height:100%}.gallery-page .gallery-grid .gallery-item .overlay{opacity:0;color:#fff;background:linear-gradient(#0000,#000c);padding:1.5rem;transition:opacity .3s;position:absolute;bottom:0;left:0;right:0}.gallery-page .gallery-grid .gallery-item .overlay h3{margin-bottom:.5rem;font-size:1.1rem}.gallery-page .gallery-grid .gallery-item .overlay .category{background-color:var(--primary);border-radius:4px;padding:.25rem .75rem;font-size:.85rem}.gallery-page .image-viewer-modal{z-index:1000;background-color:#000000f2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gallery-page .image-viewer-modal .close-button{cursor:pointer;color:#fff;z-index:10;background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:background-color .3s;display:flex;position:absolute;top:2rem;right:2rem}.gallery-page .image-viewer-modal .close-button:hover{background-color:#fff3}.gallery-page .image-viewer-modal .nav-button{cursor:pointer;color:#fff;z-index:10;background-color:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:background-color .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gallery-page .image-viewer-modal .nav-button:hover{background-color:#fff3}.gallery-page .image-viewer-modal .nav-button.prev{left:2rem}.gallery-page .image-viewer-modal .nav-button.next{right:2rem}.gallery-page .image-viewer-modal .image-container{flex-direction:column;align-items:center;max-width:90%;max-height:90vh;display:flex}.gallery-page .image-viewer-modal .image-container img{object-fit:contain;border-radius:8px;max-width:100%;max-height:80vh}.gallery-page .image-viewer-modal .image-container .image-info{text-align:center;color:#fff;margin-top:1.5rem}.gallery-page .image-viewer-modal .image-container .image-info h2{margin-bottom:.5rem;font-size:1.5rem}.gallery-page .image-viewer-modal .image-container .image-info .counter{color:#ccc;font-size:1rem}@media screen and (max-width:768px){.gallery-page .container{padding:3rem 1rem}.gallery-page .container h1{font-size:2rem}.gallery-page .gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.gallery-page .gallery-grid .gallery-item{height:250px}.gallery-page .image-viewer-modal .nav-button{width:45px;height:45px}.gallery-page .image-viewer-modal .nav-button.prev{left:1rem}.gallery-page .image-viewer-modal .nav-button.next{right:1rem}.gallery-page .image-viewer-modal .close-button{width:40px;height:40px;top:1rem;right:1rem}.gallery-page .image-viewer-modal .image-container .image-info h2{font-size:1.2rem}}.gallery-tabs .tabs{border-bottom:2px solid #e9ecef;margin-bottom:20px;display:flex}.gallery-tabs .tabs .tab{cursor:pointer;color:#666;border-bottom:3px solid #0000;border-radius:4px 4px 0 0;padding:12px 24px;font-weight:500;transition:all .3s}.gallery-tabs .tabs .tab:hover{color:#007bff;background-color:#f8f9fa}.gallery-tabs .tabs .tab.active{color:#007bff;background-color:#f8f9fa;border-bottom-color:#007bff}.gallery-tabs .tab-content{animation:.3s ease-in fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.gallery-admin{padding:20px}.gallery-admin .gallery-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.gallery-admin .gallery-header h2{color:#333;margin:0}.gallery-admin .gallery-filters{flex-wrap:wrap;align-items:center;gap:15px;margin-bottom:30px;display:flex}.gallery-admin .gallery-filters .search-box{flex:1;min-width:250px;position:relative}.gallery-admin .gallery-filters .search-box input{border:1px solid #ddd;border-radius:5px;width:100%;padding:10px 15px 10px 40px;font-size:14px}.gallery-admin .gallery-filters .search-box input:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 3px #007bff1a}.gallery-admin .gallery-filters .search-box svg{color:#666;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.gallery-admin .gallery-filters select{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:5px;padding:10px 15px;font-size:14px}.gallery-admin .gallery-filters select:focus{border-color:#007bff;outline:none}.gallery-admin .gallery-loading{text-align:center;color:#666;padding:60px;font-size:16px}.gallery-admin .error-message{color:#c33;background:#fee;border:1px solid #fcc;border-radius:5px;margin-bottom:20px;padding:15px}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-bottom:30px;display:grid}.photo-item{background:#fff;border-radius:8px;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 2px 8px #0000001a}.photo-item:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.photo-item.inactive{opacity:.6}.photo-item.inactive .photo-info:after{content:"INACTIVE";color:#fff;background:#dc3545;border-radius:3px;padding:2px 8px;font-size:12px;font-weight:700;position:absolute;top:10px;right:10px}.photo-item .photo-content{height:200px;position:relative;overflow:hidden}.photo-item .photo-content img,.photo-item .photo-content video{object-fit:cover;width:100%;height:100%;display:block}.photo-item .photo-content .photo-overlay{opacity:0;background:#000000b3;justify-content:center;align-items:center;gap:15px;transition:opacity .2s;display:flex;position:absolute;inset:0}.photo-item .photo-content .photo-overlay button{cursor:pointer;background:#ffffffe6;border:none;border-radius:50%;padding:10px;transition:background .2s}.photo-item .photo-content .photo-overlay button:hover{background:#fff}.photo-item .photo-content .photo-overlay button svg{display:block}.photo-item .photo-content:hover .photo-overlay{opacity:1}.photo-item .photo-info{padding:15px;position:relative}.photo-item .photo-info h4{color:#333;margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.3}.photo-item .photo-info .photo-type{color:#fff;text-transform:uppercase;background:#007bff;border-radius:4px;padding:4px 8px;font-size:12px;font-weight:500;display:inline-block}.photo-item .photo-info .photo-type[data-type=VIDEO]{background:#28a745}.btn{cursor:pointer;border:none;border-radius:5px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn.btn-primary{color:#fff;background:#007bff}.btn.btn-primary:hover{background:#0056b3}.btn.btn-secondary{color:#fff;background:#6c757d}.btn.btn-secondary:hover{background:#545b62}.btn.btn-outline{color:#007bff;background:0 0;border:1px solid #007bff}.btn.btn-outline:hover{color:#fff;background:#007bff}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:8px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-content .modal-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:20px;display:flex}.modal-content .modal-header h3{color:#333;margin:0}.modal-content .modal-header button{cursor:pointer;background:0 0;border:none;border-radius:3px;padding:5px}.modal-content .modal-header button:hover{background:#f5f5f5}.gallery-form{padding:20px}.gallery-form .form-group{margin-bottom:20px}.gallery-form .form-group .error-message{color:#dc3545;align-items:center;gap:5px;margin-top:5px;font-size:12px;display:flex}.gallery-form input,.gallery-form textarea,.gallery-form select{border:1px solid #ddd;border-radius:5px;width:100%;padding:12px;font-family:inherit;font-size:14px}.gallery-form input:focus,.gallery-form textarea:focus,.gallery-form select:focus{border-color:#007bff;outline:none;box-shadow:0 0 0 3px #007bff1a}.gallery-form input.error,.gallery-form textarea.error,.gallery-form select.error{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.gallery-form textarea{resize:vertical;min-height:80px}.gallery-form .checkbox-label{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.gallery-form .checkbox-label input[type=checkbox]{width:auto;margin:0}.gallery-form .form-label{color:#333;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.gallery-form .upload-type-selection{gap:20px;margin-top:8px;display:flex}.gallery-form .upload-type-selection .radio-label{cursor:pointer;color:#555;align-items:center;gap:8px;font-size:14px;display:flex}.gallery-form .upload-type-selection .radio-label input[type=radio]{cursor:pointer;width:auto;margin:0}.gallery-form .upload-type-selection .radio-label span{cursor:pointer}.gallery-form .upload-type-selection .radio-label:hover{color:#007bff}.gallery-form .form-hint{color:#666;margin-top:6px;font-size:12px;line-height:1.4;display:block}.gallery-form .form-actions{border-top:1px solid #eee;justify-content:flex-end;gap:10px;margin-top:30px;padding-top:20px;display:flex}.slider-overlay{z-index:2000;background:#000000f2;flex-direction:column;display:flex;position:fixed;inset:0}.slider-content{flex-direction:column;height:100%;display:flex}.slider-header{color:#fff;justify-content:space-between;align-items:center;padding:20px;display:flex}.slider-header .slider-controls{align-items:center;gap:15px;display:flex}.slider-header .slider-controls button{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;padding:8px;transition:background .2s}.slider-header .slider-controls button:hover{background:#fff3}.slider-header .close-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;padding:10px}.slider-header .close-btn:hover{background:#fff3}.slider-main{flex:1;align-items:center;display:flex;position:relative}.slider-main .nav-btn{color:#fff;cursor:pointer;z-index:10;background:#ffffff1a;border:none;border-radius:50%;padding:15px;transition:background .2s;position:absolute;top:50%;transform:translateY(-50%)}.slider-main .nav-btn:hover{background:#fff3}.slider-main .nav-btn.prev{left:20px}.slider-main .nav-btn.next{right:20px}.slider-media{text-align:center;width:100%;padding:0 80px}.slider-media img,.slider-media video{object-fit:contain;max-width:100%;max-height:70vh}.slider-media .media-info{color:#fff;max-width:600px;margin-top:20px;margin-left:auto;margin-right:auto}.slider-media .media-info h3{margin:0 0 10px;font-size:24px}.slider-media .media-info p{opacity:.8;margin:0;line-height:1.5}.slider-thumbnails{justify-content:center;gap:10px;padding:20px;display:flex;overflow-x:auto}.slider-thumbnails .thumbnail{cursor:pointer;opacity:.6;border-radius:4px;flex-shrink:0;width:60px;height:60px;transition:opacity .2s;overflow:hidden}.slider-thumbnails .thumbnail.active{opacity:1;box-shadow:0 0 0 2px #fff}.slider-thumbnails .thumbnail:hover{opacity:.8}.slider-thumbnails .thumbnail img,.slider-thumbnails .thumbnail video{object-fit:cover;width:100%;height:100%}.pagination{color:#666;justify-content:center;align-items:center;margin-top:30px;font-size:14px;display:flex}@media (max-width:768px){.gallery-admin{padding:15px}.gallery-header{flex-direction:column;align-items:stretch;gap:15px}.gallery-filters{flex-direction:column;align-items:stretch}.gallery-filters .search-box{min-width:auto}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}.modal-content{max-width:none;margin:10px}.slider-media{padding:0 60px}.slider-main .nav-btn.prev{left:10px}.slider-main .nav-btn.next{right:10px}}@media (max-width:480px){.gallery-grid{grid-template-columns:1fr}.slider-media{padding:0 50px}.slider-thumbnails .thumbnail{width:50px;height:50px}}.videos-gallery .videos-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:20px 0;display:grid}.videos-gallery .video-item{background:#fff;border:1px solid #ddd;border-radius:8px;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001a}.videos-gallery .video-item:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.videos-gallery .video-item.inactive{opacity:.6}.videos-gallery .video-item.inactive .video-content:after{content:"INACTIVE";color:#fff;z-index:3;background:#dc3545e6;border-radius:4px;padding:4px 8px;font-size:12px;font-weight:700;position:absolute;top:10px;left:10px}.videos-gallery .video-item .video-content{aspect-ratio:16/9;background:#000;position:relative;overflow:hidden}.videos-gallery .video-item .video-content video{object-fit:cover;width:100%;height:100%;transition:transform .3s}.videos-gallery .video-item .video-content .external-video-preview{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.videos-gallery .video-item .video-content .external-video-preview img{object-fit:cover;width:100%;height:100%}.videos-gallery .video-item .video-content .external-video-preview .external-placeholder{color:#ccc;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.videos-gallery .video-item .video-content .external-video-preview .external-placeholder span{font-size:14px;font-weight:500}.videos-gallery .video-item .video-content .video-overlay{opacity:0;background:#0000004d;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;inset:0}.videos-gallery .video-item .video-content .video-overlay .play-btn{cursor:pointer;color:#333;background:#ffffffe6;border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:all .3s;display:flex}.videos-gallery .video-item .video-content .video-overlay .play-btn:hover{background:#fff;transform:scale(1.1)}.videos-gallery .video-item .video-content .video-overlay .play-btn svg{margin-left:2px}.videos-gallery .video-item .video-content .video-overlay .video-actions{gap:8px;display:flex;position:absolute;top:10px;right:10px}.videos-gallery .video-item .video-content .video-overlay .video-actions button{cursor:pointer;color:#333;background:#ffffffe6;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .3s;display:flex}.videos-gallery .video-item .video-content .video-overlay .video-actions button:hover{background:#fff;transform:scale(1.1)}.videos-gallery .video-item .video-content .video-overlay .video-actions button:nth-child(2):hover{color:#dc3545}.videos-gallery .video-item .video-content:hover .video-overlay{opacity:1}.videos-gallery .video-item .video-content .video-duration{color:#fff;background:#000000b3;border-radius:4px;align-items:center;gap:4px;padding:2px 6px;font-size:12px;display:flex;position:absolute;bottom:8px;right:8px}.videos-gallery .video-item .video-content .video-type-badge{color:#fff;background:#007bffe6;border-radius:4px;align-items:center;gap:4px;padding:4px 6px;font-size:10px;font-weight:700;display:flex;position:absolute;top:8px;left:8px}.videos-gallery .video-item .video-content .video-type-badge .platform-name{opacity:.9;font-size:9px}.videos-gallery .video-item.external-video .video-type-badge{background:#ff5722e6}.videos-gallery .video-item .video-info{padding:15px}.videos-gallery .video-item .video-info h4{color:#333;margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.3}.videos-gallery .video-item .video-info .video-description{color:#666;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.videos-gallery .videos-stats{color:#666;align-items:center;gap:15px;font-size:14px;display:flex}.videos-gallery .videos-stats .stat-item{align-items:center;gap:6px;display:flex}.video-player-overlay{z-index:1000;background:#000000e6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.video-player-overlay .video-player-content{background:#000;border-radius:8px;flex-direction:column;width:90vw;max-height:90vh;display:flex;overflow:hidden}.video-player-overlay .video-player-content .video-player-header{background:#1a1a1a;justify-content:space-between;align-items:flex-start;gap:20px;padding:15px 20px;display:flex}.video-player-overlay .video-player-content .video-player-header .video-info{flex:1}.video-player-overlay .video-player-content .video-player-header .video-info h3{color:#fff;margin:0 0 5px;font-size:18px}.video-player-overlay .video-player-content .video-player-header .video-info p{color:#ccc;margin:0;font-size:14px;line-height:1.4}.video-player-overlay .video-player-content .video-player-header .close-btn{cursor:pointer;color:#fff;background:#ffffff1a;border:none;border-radius:4px;justify-content:center;align-items:center;width:40px;height:40px;transition:background-color .3s;display:flex}.video-player-overlay .video-player-content .video-player-header .close-btn:hover{background:#fff3}.video-player-overlay .video-player-content .video-player-main{flex:1;justify-content:center;align-items:center;min-height:300px;display:flex}.video-player-overlay .video-player-content .video-player-main video{outline:none;width:100%;max-height:70vh}.video-player-overlay .video-player-content .video-player-main .external-video-player{justify-content:center;align-items:center;width:100%;height:100%;padding:40px;display:flex}.video-player-overlay .video-player-content .video-player-main .external-video-player .external-video-info{text-align:center;color:#fff;max-width:500px}.video-player-overlay .video-player-content .video-player-main .external-video-player .external-video-info svg{color:#ccc;margin-bottom:20px}.video-player-overlay .video-player-content .video-player-main .external-video-player .external-video-info h4{color:#fff;margin:0 0 10px;font-size:24px}.video-player-overlay .video-player-content .video-player-main .external-video-player .external-video-info p{color:#ccc;margin:0 0 25px;font-size:16px;line-height:1.5}.video-player-overlay .video-player-content .video-player-main .external-video-player .external-video-info .open-external-btn{border-radius:6px;margin-bottom:20px;padding:12px 24px;font-size:16px;font-weight:500;transition:all .3s}.video-player-overlay .video-player-content .video-player-main .external-video-player .external-video-info .open-external-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #007bff4d}.video-player-overlay .video-player-content .video-player-main .external-video-player .external-video-info small{color:#888;word-break:break-all;background:#ffffff1a;border-radius:4px;margin-top:10px;padding:8px 12px;font-size:12px;display:block}.video-player-overlay .video-player-content .video-player-info{background:#1a1a1a;border-top:1px solid #333;padding:15px 20px}.video-player-overlay .video-player-content .video-player-info .video-meta{color:#ccc;gap:20px;font-size:14px;display:flex}.video-player-overlay .video-player-content .video-player-info .video-meta span{align-items:center;gap:6px;display:flex}.video-player-overlay .video-player-content .video-player-info .video-meta .video-status{color:#28a745}.video-player-overlay .video-player-content .video-player-info .video-meta .video-status.inactive{color:#dc3545}@media (max-width:768px){.videos-gallery .videos-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}.videos-gallery .video-item .video-content .video-overlay .play-btn{width:50px;height:50px}.videos-gallery .video-item .video-content .video-overlay .video-actions button{width:28px;height:28px}.videos-gallery .videos-stats{flex-direction:column;align-items:flex-start;gap:10px}.video-player-overlay{padding:10px}.video-player-overlay .video-player-content{width:95vw;max-height:95vh}.video-player-overlay .video-player-content .video-player-header{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 15px}.video-player-overlay .video-player-content .video-player-header .close-btn{position:absolute;top:10px;right:10px}.video-player-overlay .video-player-content .video-player-info .video-meta{flex-direction:column;gap:8px}}
