/* =========================================
   SISTEM BOX LUAR KAKU (FIXED WRAPPER) - FINAL
   ========================================= */

/* 1. BOX WRAPPER LUAR (Static/Benteng) */
.balai-ad-box {
    position: relative;
    margin: auto;
    width: 100%;
    max-width: 1070px;
    height: 280px; 
    min-height: 280px; /* Tambahan untuk kestabilan CLS */
    background-color: #f9f9f9;
    border: 1px dashed #ddd;
    border-radius: 4px;
    overflow: hidden;
    display: flex;
    align-items: center; 
    justify-content: center;
}

/* Label ADVERTISEMENT */
.balai-ad-box::before {
    content: "ADVERTISEMENT";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 3px;
    color: #ccc;
    z-index: 1;
}

/* 2. INNER CONTAINER (Flexible/Penyewa) */
.balai-ad-inner {
    position: relative;
    width: 100% !important;
    z-index: 2;
    height: auto; 
    display: block;
    border-radius: 8px;
}

/* 3. TAG IKLAN (Mesin Utama) */
.balai-ad-inner ins.adsbygoogle {
    display: block !important;
    width: 100% !important;
    height: auto;
    margin: 0 auto;
}

.balai-ad-inner ins.adsbygoogle[data-ad-status="filled"] {
    background-color: #fff !important;
    animation: fadeInAd 0.8s ease both;
}

/* 4. PENYESUAIAN KHUSUS SLOT */
.bp-box-sidebar { height: 600px !important; min-height: 600px !important; }
.bp-box-multiplex { 
    height: auto !important; 
    min-height: 450px; 
    border: none; 
    background: transparent; 
}
.balai-ad-list-item {
    list-style: none !important;
    margin-bottom: 2em;
    grid-column: 1 / -1;
}
.balai-ad-list-item .balai-ad-inner {
    padding: 10px;
}

.type-feed, .type-flex {
    border: none !important;
    background: transparent !important;
    height: auto !important;
}

.type-feed::before, .type-flex::before {
    top: 10px;
    transform: translate(-50%, 0);
}

/* 5. BEST PRACTICE RESPONSIVE (MOBILE) */
@media (max-width: 768px) {
    .balai-ad-box {
        width: 100vw !important;
        overflow: hidden;
        box-sizing: border-box;
        margin-left: calc(50% - 50vw) !important;
        margin-right: calc(50% - 50vw) !important;
        max-width: 100vw !important;
        height: auto; 
        min-height: 260px;
        border-left: none;
        border-right: none;
        border-radius: 0;
        margin: 15px auto; 
        background-color: #fdfdfd;

        /* Pastikan pembungkus luar selalu memusatkan isi */
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
    
    .bp-box-sidebar {
        /* JANGAN paksa width 100% selayar jika iklannya memang kecil */
        width: auto !important; 
        max-width: 100% !important;
        height: auto !important;
        min-height: 250px !important;
        margin: 0 auto !important; /* Paksa tengah */
    }

    /* Khusus untuk iklan sidebar di HP agar tidak meluber */
    .bp-box-sidebar .balai-ad-inner {
        display: flex;
        justify-content: center;
        width: 100%;
    }

    .balai-ad-inner {
        padding: 0; /* Hilangkan padding agar tidak menggeser asimetris */
        box-sizing: border-box;
    }
}

@keyframes fadeInAd {
    0% { opacity: 0; }
    100% { opacity: 1; }
}