/* =========================================
   NEWSMU MOBILE STYLESHEET
   Target: Layar HP (Max-Width 768px)
   Fitur: Menu Swipe, List View, Font Fix
   ========================================= */

@media (max-width: 768px) {

    /* --- 1. HEADER & LOGO --- */
    .site-header { 
        height: 64px !important;
        padding: 0 !important;
    }
    .head-inner { 
        display: flex !important; 
        flex-wrap: nowrap !important;
        align-items: center;
        justify-content: space-between;
        padding: 0 16px;
        width: 100%;
        gap: 12px;
    }
    .site-branding { 
        flex: 1;
        min-width: 0;
        text-align: center;
        margin: 0;
        order: 2;
    }
    .site-branding img {
        display: inline-block;
        width: auto;
        max-width: min(190px, 58vw);
        max-height: 38px;
    }

    .nm-hamburger,
    .mob-search-trigger {
        flex: 0 0 42px;
        width: 42px !important;
        min-height: 42px;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        padding: 0 !important;
        line-height: 1;
    }

    /* Menu desktop di area gradient harus tetap tersembunyi di mobile. */
    .site-header .main-nav,
    .site-header .menu-main-menu-container,
    .site-header .main-navigation,
    .site-header .h-tools {
        display: none !important;
    }

    .nm-swipe-menu {
        min-height: 46px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);
    }
    .nm-swipe-menu ul {
        min-width: max-content;
    }
    .nm-swipe-menu a {
        min-height: 46px;
        display: flex !important;
        align-items: center;
        padding: 0 15px !important;
        letter-spacing: 0;
    }

    /* Search mobile: penuh tetapi tetap berada di dalam viewport. */
    .nm-search-bubble {
        position: absolute !important;
        top: calc(100% + 8px) !important;
        left: 12px !important;
        right: 12px !important;
        width: auto !important;
        margin: 0 !important;
        padding: 8px !important;
        border-radius: 6px !important;
        box-shadow: 0 12px 30px rgba(0, 0, 0, 0.22) !important;
    }
    .nm-search-bubble .bubble-inner {
        min-height: 46px;
    }
    .nm-search-bubble input[type="search"] {
        min-width: 0;
        margin: 0 !important;
        padding: 10px 12px !important;
        font-size: 16px !important;
    }
    .nm-search-bubble button {
        flex: 0 0 48px;
        padding: 0 !important;
    }

    /* --- 3. LAYOUT KONTEN --- */
    .nm-cont, .site-main, .widget-area {
        padding-left: 15px !important; padding-right: 15px !important;
        width: 100% !important; box-sizing: border-box;
    }
    .widget, .nm-widget { margin-bottom: 30px !important; }

    /* --- 4. LIST VIEW (UBAH GRID JADI DATAR) --- */
    .nm-block-grid, .nm-post-grid, .archive .site-main { display: block !important; }

    .nm-post-item, .nm-block-item, article.post {
        display: flex !important; flex-direction: row !important; align-items: flex-start !important;
        gap: 15px !important; margin-bottom: 20px !important; padding-bottom: 20px !important;
        border-bottom: 1px solid #eee !important; width: 100% !important;
    }
    .nm-post-item:last-child, .nm-block-item:last-child { border-bottom: none !important; }

    /* Gambar Kecil di Kiri */
    .nm-post-thumb, .nm-block-thumb, .post-thumbnail {
        width: 110px !important; flex: 0 0 110px !important; height: 75px !important;
        margin-bottom: 0 !important; border-radius: 6px !important; overflow: hidden;
    }
    .nm-post-thumb img, .nm-block-thumb img, .post-thumbnail img {
        width: 100% !important; height: 100% !important; object-fit: cover !important;
    }

    /* Judul di Kanan */
    .nm-post-content, .nm-block-content, .entry-header { flex: 1 !important; padding: 0 !important; }

    .nm-post-title, .nm-block-title, .entry-title {
        font-size: 15px !important; line-height: 1.4 !important;
        margin-top: 0 !important; margin-bottom: 5px !important; font-weight: 600 !important;
    }
    .nm-post-title a, .nm-block-title a, .entry-title a { color: #222 !important; text-decoration: none !important; }
    
    .nm-post-meta, .entry-meta { font-size: 11px !important; color: #888 !important; }

    /* --- 5. FONT SIZING FIX --- */
    h1 { font-size: 24px !important; }
    h2 { font-size: 20px !important; }
    h3 { font-size: 18px !important; }
    p { font-size: 15px !important; line-height: 1.6 !important; }
    
    /* Widget Slider Mobile Fix */
    .nm-slide-title { font-size: 18px !important; line-height: 1.3 !important; }
    .nm-slide-content { bottom: 15px !important; left: 15px !important; right: 15px !important; }
}
