.category-picker{margin-top:40px;}.category-card{display:block;background:#fff;border-radius:10px;padding:40px 20px;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,0.1);transition:all 0.3s ease;text-decoration:none;margin-bottom:30px;border:2px solid transparent;}.category-card:hover{transform:translateY(-5px);box-shadow:0 8px 24px rgba(0,0,0,0.15);border-color:#8eaeba;text-decoration:none;}.category-icon{font-size:3.5rem;margin-bottom:20px;display:block;}.category-card h3{color:#5a7480;font-size:1.4rem;margin-bottom:10px;font-weight:600;}.category-card p{color:#999;font-size:1rem;margin:0;}.upload-card{background:linear-gradient(135deg,#8eaeba 0%,#5a7480 100%);color:#fff !important;}.upload-card h3,.upload-card p{color:#fff !important;}.upload-card:hover{background:linear-gradient(135deg,#5a7480 0%,#8eaeba 100%);border-color:#8eaeba;}.video-category-card .category-icon,.video-title-icon{color:#8eaeba;}.video-category-card .category-icon i{font-size:3.2rem;}.video-title-icon{font-size:2.5rem;margin-right:15px;}.wedding-video-detail{background:#fff;border:2px solid rgba(142,174,186,0.35);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,0.1);margin:0 auto;max-width:900px;padding:24px;}.wedding-video-embed{aspect-ratio:16 / 9;background:#000;border-radius:10px;overflow:hidden;width:100%;}.wedding-video-embed iframe{border:0;display:block;height:100%;width:100%;}.gallery-back-link{display:inline-block;margin-bottom:30px;color:#8eaeba;font-weight:600;text-decoration:none;transition:all 0.3s ease;}.gallery-back-link:hover{color:#5a7480;text-decoration:none;transform:translateX(-5px);}.gallery-back-link i{margin-right:8px;}.category-title{text-align:center;margin-bottom:40px;}.category-title h3{color:#5a7480;font-size:2rem;font-weight:600;margin-bottom:10px;}.category-title p{color:#999;font-size:1.1rem;}.gallery .row{margin-left:-15px;margin-right:-15px;}.gallery .item{position:relative;overflow:hidden;margin-bottom:30px;border-radius:8px;}.gallery .item img{width:100%;height:auto;display:block;transition:all 0.4s ease;}.gallery .item:hover img{transform:scale(1.1);}.gallery .item .hover-info{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.7);display:flex;align-items:center;justify-content:center;opacity:0;transition:all 0.4s ease;}.gallery .item:hover .hover-info{opacity:1;}.gallery .item .btn-light{background:#fff;color:#5a7480;border:none;padding:12px 30px;font-weight:600;text-transform:uppercase;letter-spacing:1px;transition:all 0.3s ease;text-decoration:none;border-radius:4px;}.gallery .item .btn-light:hover{background:#8eaeba;color:#fff;}.upload-section{background:#f8f9fa;border-radius:10px;padding:60px 40px;text-align:center;margin-top:40px;}.upload-section h3{color:#5a7480;font-size:2rem;margin-bottom:20px;}.upload-section p{color:#666;font-size:1.1rem;margin-bottom:30px;}.upload-zone{border:3px dashed #8eaeba;border-radius:10px;padding:60px 40px;background:#fff;cursor:pointer;transition:all 0.3s ease;margin-bottom:30px;}.upload-zone:hover{border-color:#5a7480;background:#f8f9fa;}.upload-zone.dragging{border-color:#5a7480;background:#e8f4f8;}.upload-zone i{font-size:4rem;color:#8eaeba;margin-bottom:20px;display:block;}.upload-zone h4{color:#5a7480;font-size:1.5rem;margin-bottom:10px;}.upload-zone p{color:#999;margin:0;}.upload-progress{margin-top:30px;}.upload-item{background:#fff;border-radius:8px;padding:15px 20px;margin-bottom:15px;box-shadow:0 2px 8px rgba(0,0,0,0.1);}.upload-item-name{font-weight:600;color:#5a7480;margin-bottom:8px;}.progress{height:8px;border-radius:4px;background:#e9ecef;overflow:hidden;}.progress-bar{background:linear-gradient(90deg,#8eaeba 0%,#5a7480 100%);transition:width 0.3s ease;}.upload-item-status{font-size:0.9rem;color:#999;margin-top:5px;}.upload-item-status.success{color:#28a745;}.upload-item-status.error{color:#dc3545;}.gallery-link-request{background:#f8f9fa;border:2px solid #8eaeba;border-radius:10px;padding:60px 40px;}.gallery-link-request > i{color:#8eaeba;display:block;font-size:4rem;margin-bottom:20px;}.gallery-link-request h3{color:#5a7480;font-size:2rem;margin-bottom:20px;}.gallery-link-request p{color:#666;font-size:1.1rem;margin-bottom:30px;}.gallery-link-request-form{margin:30px auto 0;max-width:460px;text-align:left;}.gallery-link-request-form label{color:#5a7480;font-weight:600;}.gallery-link-request-form .btn{display:block;margin:30px auto 0;}.empty-gallery{text-align:center;padding:80px 40px;}.empty-gallery i{font-size:5rem;color:#e0e0e0;margin-bottom:30px;display:block;}.empty-gallery h4{color:#999;font-size:1.5rem;margin-bottom:15px;}.empty-gallery p{color:#bbb;font-size:1.1rem;}@media (max-width:768px){.wedding-video-detail{padding:14px;}.category-card{padding:30px 15px;}.category-icon{font-size:2.5rem;}.category-card h3{font-size:1.2rem;}.upload-zone{padding:40px 20px;}.upload-zone i{font-size:3rem;}}
