@layer utilities {
            .content-auto { content-visibility: auto; }
            .text-shadow-lg { text-shadow: 0 4px 8px rgba(0,0,0,0.12), 0 2px 4px rgba(0,0,0,0.08); }
            .scrollbar-hide::-webkit-scrollbar { display: none; }
            .scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }
            .child-friendly { border-radius: 12px; transition: all 0.3s ease; }
            .child-friendly:hover { transform: translateY(-5px); }
            .filter-active { background-color: rgba(79, 158, 84, 0.1); color: #4F9E54; border-color: #4F9E54; }
            .search-layer-enter { animation: searchLayerIn 0.3s ease forwards; }
            .search-layer-exit { animation: searchLayerOut 0.3s ease forwards; }
            .user-menu-button img { transition: transform 0.3s ease; }
            .user-menu-container:hover .user-menu-button img { transform: scale(1.1); }
            .user-dropdown a { transition: all 0.2s ease; }
            .user-dropdown a:hover i { transform: translateX(2px); }
            .user-menu-container { position: relative; padding: 4px; }
            .user-dropdown { margin-top: 2px; }
            .loader { border-top-color: #4F9E54; animation: spinner 0.6s linear infinite; }
            .video-control-hover { transition: all 0.3s ease; }
            .video-container:hover .video-controls { opacity: 1; transform: translateY(0); }
            .video-progress { height: 4px; background: rgba(255,255,255,0.2); transition: height 0.2s ease; }
            .video-container:hover .video-progress { height: 6px; }
            .video-progress-filled { background: #4F9E54; height: 100%; width: 0%; transition: width 0.1s linear; }
            @keyframes searchLayerIn { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: translateY(0); } }
            @keyframes searchLayerOut { from { opacity: 1; transform: translateY(0); } to { opacity: 0; transform: translateY(-20px); } }
            @keyframes spinner { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
            .iframe-container { position: relative; width: 100%; height: 100%; overflow: hidden; min-height: 300px; }
            .video-wrapper { position: relative; width: 100%; padding-bottom: 56.25%; height: 0; overflow: hidden; background: #000; }
            .video-iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }
            #download-modal, #purchase-modal { z-index: 60; }
            .download-iframe-container, .purchase-iframe-container { height: 300px; }
            .related-item {@apply mb-4 last:mb-0;}
            .related-item-img {@apply w-full h-32 object-cover rounded-lg mb-2;}
            .related-item-title {@apply text-sm font-medium line-clamp-2 hover:text-primary transition-colors;}
        }