/**
 * AdSense RevShare Pro - Frontend Styles
 */

/* Ad Container Styles */
.asrp-ad-container {
    margin: 20px auto;
    padding: 10px;
    text-align: center;
    clear: both;
    overflow: hidden;
}

.asrp-ad-label {
    font-size: 11px;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 10px;
    font-weight: 400;
}

.asrp-ad-unit {
    position: relative;
    min-height: 50px;
}

/* Responsive Ad Container */
.asrp-ad-container.asrp-adsense {
    max-width: 100%;
}

/* Hide on Mobile */
.asrp-hide-mobile {
    display: block;
}

@media (max-width: 768px) {
    .asrp-hide-mobile {
        display: none !important;
    }
}

/* Hide on Desktop */
.asrp-hide-desktop {
    display: none;
}

@media (max-width: 768px) {
    .asrp-hide-desktop {
        display: block !important;
    }
}

/* Ad Loading State */
.asrp-ad-unit:not(.asrp-initialized)::before {
    content: '';
    display: block;
    width: 100%;
    min-height: 250px;
    background: linear-gradient(
        90deg,
        #f0f0f0 25%,
        #e0e0e0 50%,
        #f0f0f0 75%
    );
    background-size: 200% 100%;
    animation: asrp-loading 1.5s infinite;
}

@keyframes asrp-loading {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

.asrp-ad-unit.asrp-initialized::before {
    display: none;
}

/* Specific Ad Sizes */
.asrp-ad-container[data-ad-size="728x90"] {
    max-width: 728px;
}

.asrp-ad-container[data-ad-size="336x280"] {
    max-width: 336px;
}

.asrp-ad-container[data-ad-size="300x250"] {
    max-width: 300px;
}

.asrp-ad-container[data-ad-size="300x600"] {
    max-width: 300px;
}

.asrp-ad-container[data-ad-size="970x250"] {
    max-width: 970px;
}

.asrp-ad-container[data-ad-size="970x90"] {
    max-width: 970px;
}

.asrp-ad-container[data-ad-size="160x600"] {
    max-width: 160px;
}

/* Shortcode Ad Styles */
.asrp-shortcode-ad {
    margin: 15px auto;
}

/* Content Ad Spacing */
.asrp-ad-container.asrp-before-content {
    margin-bottom: 30px;
}

.asrp-ad-container.asrp-after-content {
    margin-top: 30px;
}

.asrp-ad-container.asrp-middle-content {
    margin: 30px auto;
}

/* Sticky Ad Support */
.asrp-ad-sticky {
    position: sticky;
    top: 20px;
    z-index: 100;
}

/* Custom Ad Styles */
.asrp-custom .asrp-ad-unit {
    width: 100%;
}

/* Print Styles */
@media print {
    .asrp-ad-container {
        display: none !important;
    }
}

/* Accessibility */
.asrp-ad-container:focus {
    outline: 2px solid #0073aa;
    outline-offset: 2px;
}

/* Dark Mode Support */
@media (prefers-color-scheme: dark) {
    .asrp-ad-label {
        color: #aaa;
    }
    
    .asrp-ad-unit:not(.asrp-initialized)::before {
        background: linear-gradient(
            90deg,
            #2a2a2a 25%,
            #1a1a1a 50%,
            #2a2a2a 75%
        );
    }
}
