/*
Theme Name: Jurnal BMR Perfect v9.2 Security Ultimate
Theme URI: https://jurnalbmr.id
Author: Jurnal BMR Team
Description: FINAL SECURITY ULTIMATE v9.2 - Best security hardening: anti user enumeration, block REST users, no xmlrpc, nosniff, SAMEORIGIN, referrer-policy, limit search, hide login errors, no file edit. Plus homepage 3 berita dibawah slider, kategori manual, gambar 3:2 tanpa crop, footer editable, light/dark toggle. 100% responsive. - Homepage persis screenshot: dibawah slider 3 berita thumbnail, Kanal Utama BOLMONG RAYA > NUSANTARA > HUKUM DAN KRIMINAL > TECHNO. Kolom kategori bisa tambah manual di dashboard (tidak paten 4). Single post gambar 3:2 tanpa crop full terlihat. Footer bisa atur menu & desain dari dashboard. Tombol Light/Dark mode bisa show/hide di header. 100% responsive semua gadget, keamanan hardened, editable 100%.
Version: 14.5 Ribbon Fixed + Ads Hide Final Perfect - Content & Caption & 6 Ads Responsive Fixed - Final Clean
License: GPL v2 or later
Text Domain: jurnal-bmr-pro
*/

:root{--dark:#052e1f;--dark2:#02140e;--bg:#0a0a0a;--bg-card:#151515;--bg-card2:#1e1e1e;--border:#2a2a2a;--bright:#22c55e;--text:#d4e8d6;--text-dim:#8aa89c;--text-bright:#e8f5e9}
body.light-mode{--bg:#f4f7f4;--bg-card:#ffffff;--bg-card2:#f8fafc;--border:#d1e7d3;--text:#0f172a;--text-dim:#64748b;--text-bright:#052e1f}
*{box-sizing:border-box;max-width:100%} html{overflow-x:hidden} body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.7;overflow-x:hidden;transition:background .3s,color .3s}
a{color:inherit;text-decoration:none;word-break:break-word} img{max-width:100%;height:auto;display:block}
.container{max-width:1320px;margin:0 auto;padding:0 20px;width:100%}
@media(max-width:640px){.container{padding:0 14px}}
.top-live{background:var(--bg);color:#86efac;font-size:12px;padding:8px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between}
.sticky-top-wrap{position:sticky;top:0;z-index:9999;background:transparent}
.sticky-header{position:relative;z-index:999;background:linear-gradient(180deg,var(--dark) 0%, #031a11 100%);box-shadow:0 8px 30px rgba(0,0,0,.6);border-bottom:1px solid rgba(34,197,94,.15)}
.logo-box{display:flex;align-items:center;gap:12px}
.logo-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--bright),#16a34a);border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:900;color:var(--dark);font-size:20px;flex-shrink:0}
.nav{display:flex;gap:26px;font-weight:700;font-size:14px;flex-wrap:wrap} .nav a:hover{color:var(--bright)}
.hamburger{display:none;background:#0a1a14;border:1px solid rgba(34,197,94,.2);width:44px;height:44px;border-radius:12px;color:#fff;cursor:pointer}
.search-toggle,.theme-toggle{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);width:44px;height:44px;border-radius:12px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s}
.search-toggle:hover,.theme-toggle:hover{background:var(--bright);color:var(--dark)}
.search-box{display:none;padding:16px;background:var(--bg-card);border-bottom:2px solid var(--bright)} .search-box.active{display:block}
.breaking-wrap{display:flex;align-items:center;background:var(--dark);border-bottom:1px solid var(--border);overflow:hidden}
.breaking-label{background:var(--dark);color:#fff;font-weight:900;font-size:13px;letter-spacing:1px;padding:12px 18px;display:flex;align-items:center;gap:8px;white-space:nowrap;flex-shrink:0}
.breaking-label:before{content:'';width:10px;height:10px;background:var(--bright);border-radius:50%;display:inline-block;box-shadow:0 0 0 4px rgba(34,197,94,.2);animation:pulse 2s infinite}
.breaking-marquee{flex:1;background:var(--bright);color:var(--dark);padding:10px 0;font-weight:700;font-size:14px;overflow:hidden;min-width:0}
.slider-dark{position:relative;border-radius:20px;overflow:hidden;height:500px;background:var(--bg-card);border:1px solid var(--border);box-shadow:0 20px 60px rgba(0,0,0,.5)}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .7s} .slide.active{opacity:1}
.slide img{width:100%;height:100%;object-fit:cover;opacity:.9}
.slide-overlay{position:absolute;inset:0;background:linear-gradient(to top, rgba(2,20,12,.95) 0%, rgba(2,20,12,.6) 35%, rgba(0,0,0,.1) 70%)}
.tech-badge{position:absolute;top:16px;left:16px;background:var(--bright);color:var(--dark);font-size:11px;font-weight:800;padding:6px 14px;border-radius:999px;z-index:2}
.date-badge{position:absolute;top:16px;left:110px;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);color:#fff;font-size:11px;font-weight:600;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.1);z-index:2}
.ribbon-bottom{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top, rgba(2,20,12,.98), rgba(5,46,31,.7));backdrop-filter:blur(12px);border-top:2px solid rgba(34,197,94,.5);padding:14px 18px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:12px;z-index:2}
.below-slider-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:14px;display:flex;gap:12px;align-items:center;transition:.2s}
.below-slider-card:hover{border-color:var(--bright);transform:translateY(-2px)}
.below-slider-thumb{width:80px;height:80px;border-radius:12px;overflow:hidden;flex-shrink:0;background:#000}
.kanal-header{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,var(--dark) 0%, #082a1b 100%);border-radius:16px 16px 0 0;border:1px solid var(--border);border-bottom:0;overflow:hidden}
.kanal-title{display:flex;align-items:center;gap:12px;padding:14px 18px;font-weight:900;font-size:15px;letter-spacing:.5px;color:#fff;min-width:0}
.kanal-icon{width:36px;height:36px;background:var(--bright);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--dark);font-weight:900;flex-shrink:0;position:relative}
.kanal-icon:after{content:'';position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid var(--bright)}
.kanal-tab{background:var(--bright);color:var(--dark);padding:14px 24px;font-weight:800;font-size:12px;letter-spacing:1px;clip-path:polygon(0 0, 90% 0, 100% 50%, 90% 100%, 0 100%);flex-shrink:0}
.cat-card-dark{background:var(--bg-card);border:1px solid var(--border);border-top:0;border-radius:0 0 16px 16px;overflow:hidden}
.featured-img{position:relative;height:240px;overflow:hidden;border-radius:14px;margin:14px;background:#000}
.featured-img img{width:100%;height:100%;object-fit:cover}
.single-featured{position:relative;border-radius:16px;overflow:hidden;background:#0a0a0a;border:1px solid var(--border);aspect-ratio:3/2;display:flex;align-items:center;justify-content:center}
.single-featured img{width:100%;height:100%;object-fit:contain;object-position:center}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.grid-main{display:grid;grid-template-columns:1.8fr .8fr;gap:24px}
@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-main{grid-template-columns:1fr}.nav{display:none}.hamburger{display:flex;align-items:center;justify-content:center}.slider-dark{height:420px}}
@media(max-width:640px){.grid-4{grid-template-columns:1fr}.slider-dark{height:380px}.featured-img{height:200px}.below-slider-thumb{width:70px;height:70px}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}


/* === FIX STICKY HEADER v13.0 - MANUAL FIX === */
html{overflow-x:clip !important}
body{overflow-x:clip !important; overflow:visible !important;}
.sticky-top-wrap{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  z-index:99999 !important;
  background:var(--dark);
  transform:translateZ(0);
  -webkit-transform:translateZ(0);
}
body{padding-top:108px !important}
@media(max-width:782px){body.admin-bar .sticky-top-wrap{top:46px !important} body{padding-top:88px !important}}
@media(min-width:783px){body.admin-bar .sticky-top-wrap{top:32px !important}}


/* === V13 FINAL FIXES - STICKY + SLIDER NO CROP + FOOTER CENTERED === */
html{overflow-x:clip !important}
body{overflow-x:clip !important}

/* STICKY FIX TOTAL - pakai fixed + JS height */
.sticky-top-wrap{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  z-index:99999 !important;
  background:var(--dark) !important;
  box-shadow:0 4px 20px rgba(0,0,0,.4);
}
body{padding-top:0 !important}
body.v13-sticky-ready{padding-top:var(--sticky-h, 130px) !important}
body.admin-bar .sticky-top-wrap{top:32px !important}
@media(max-width:782px){body.admin-bar .sticky-top-wrap{top:46px !important}}

/* SLIDER IMAGE TIDAK TERPOTONG - full visible */
.slider-dark{
  height:auto !important;
  aspect-ratio:16/9 !important;
  min-height:320px !important;
  background:#000 !important;
}
.slider-dark .slide{
  position:absolute !important;
  inset:0 !important;
}
.slider-dark .slide img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#0a0a0a !important;
}
@media(max-width:640px){
  .slider-dark{aspect-ratio:4/3 !important; min-height:260px !important}
}

/* SIDEBAR - hilangkan default WP widgets styling */
.widget_search, .widget_recent_entries, .widget_recent_comments, .widget_archive, .widget_categories{
  display:none !important;
}

/* FOOTER CENTERED 2 BARIS */
.footer-v13{
  background:var(--dark);
  border-top:3px solid var(--bright);
  padding:40px 0 20px;
  text-align:center;
}
.footer-v13-logo{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;margin-bottom:20px
}
.footer-v13-desc{
  max-width:680px;margin:0 auto 20px;color:#86efac;font-size:14px;line-height:1.6;opacity:.9
}
.footer-v13-menu{
  display:flex;flex-wrap:wrap;justify-content:center;gap:8px 20px;margin:20px auto;max-width:900px;padding:0;list-style:none
}
.footer-v13-menu a{
  color:#cbd5c0;font-size:13px;font-weight:600;text-decoration:none
}
.footer-v13-menu a:hover{color:var(--bright)}
.footer-v13-copy{
  border-top:1px solid rgba(255,255,255,.08);margin-top:24px;padding-top:16px;color:#6b8c7a;font-size:12px
}
@media(max-width:640px){
  .footer-v13{padding:30px 16px 16px}
  .footer-v13-menu{gap:8px 14px}
  .footer-v13-menu a{font-size:12px}
}

/* V13.1 CAPTION FIX - hilangkan teks paten, hanya tampilkan caption asli */
.single-caption-paten{display:none !important}


/* === V14 ULTIMATE - RESPONSIVE + SEO LIGHT + SIDEBAR ATRAKTIF === */
.container{max-width:var(--container-w, 1320px) !important}
@media(min-width:1400px){.container{max-width:1360px !important} .grid-4{grid-template-columns:repeat(4,1fr)}}
@media(min-width:1600px){.container{max-width:1440px !important}}
@media(max-width:1024px){.grid-main{grid-template-columns:1fr !important} .grid-4{grid-template-columns:repeat(2,1fr) !important}}
@media(max-width:640px){.grid-4{grid-template-columns:1fr !important}}

.widget-v14{margin-bottom:20px}
.widget-title-v14{font-weight:900;margin-bottom:12px;color:var(--text-bright);border-left:3px solid var(--bright);padding-left:10px}

.ad-box-v14{transition:transform .2s}
.ad-box-v14:hover{transform:translateY(-2px)}

/* Logo auto ideal */
.logo-box img{max-width:100%;height:auto;object-fit:contain}

/* Hide default WP search/archive in single if somehow appears */
body.single .widget_search, body.single .widget_archive, body.single .widget_categories, body.single .widget_recent_entries, body.single .widget_recent_comments{display:none !important}

/* SEO Light - reduce heavy shadows on mobile */
@media(max-width:640px){.slider-dark{box-shadow:none !important} .sticky-header{box-shadow:0 2px 10px rgba(0,0,0,.3) !important}}

/* Footer gradient */
.footer-v13{background:linear-gradient(135deg, #02140e 0%, #052e1f 40%, #0a4d2e 75%, #15803d 100%) !important}





/* === V14.3 RESPONSIVE SINGLE POST FIX - ANTI NUMPUK === */
.grid-main, .grid-main-v14{
  display:grid;
  grid-template-columns:1fr 340px;
  gap:24px;
  align-items:start;
}
.grid-main > *, .grid-main-v14 > *{
  min-width:0;
}

/* Tablet & Mobile - jadi 1 kolom, artikel dulu sidebar bawah */
@media(max-width:1024px){
  .grid-main, .grid-main-v14{
    grid-template-columns:1fr !important;
    gap:20px !important;
  }
  .grid-main > aside, .grid-main-v14 > aside{
    position:static !important;
    top:auto !important;
  }
}
@media(max-width:640px){
  .grid-main, .grid-main-v14{
    gap:16px !important;
  }
  .grid-main article, .grid-main-v14 article{
    padding:16px !important;
    border-radius:12px !important;
  }
  .single-featured{
    border-radius:12px !important;
  }
}

/* Pastikan tidak overlap */
article{overflow:hidden}
aside{overflow:visible}

/* Sidebar sticky hanya desktop */
@media(min-width:1025px){
  .sidebar-sticky-v14{
    position:sticky;
    top:calc(var(--sticky-h, 90px) + 20px);
    align-self:start;
  }
}
@media(max-width:1024px){
  .sidebar-sticky-v14{
    position:static !important;
  }
}

/* Fix breadcrumb di HP */
@media(max-width:640px){
  .breadcrumb-v14{font-size:10px !important;padding:10px !important;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
}


/* === V14.4 FIX ISI ARTIKEL TIDAK MUNCUL + CAPTION + 6 ADS === */
.single-article-v14{overflow:visible !important}
.single-content-v14{color:var(--text-bright) !important; display:block !important; visibility:visible !important}
.single-content-v14 p{margin-bottom:16px !important; color:var(--text) !important}
.single-content-v14 img{max-width:100%; height:auto; border-radius:12px}
.single-caption-v14{display:block !important}

@media(max-width:1024px){
  .grid-main-v14{grid-template-columns:1fr !important}
}

/* 6 slot iklan sidebar - ukuran ideal */
.widget-v14 img{max-width:100%; height:auto}


/* === V14.5 RIBBON CANTIK FIXED - pakai CSS variables biar ganti model langsung berubah === */
.ribbon-bottom{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;font-size:12px;z-index:2;padding:12px 18px;transition:all .3s ease;color:var(--rb-text, #fff)}
.ribbon-bottom .rb-left{display:flex;align-items:center;gap:10px;font-weight:800}
.ribbon-bottom .rb-icon{width:32px;height:32px;background:var(--bright);color:var(--dark);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;overflow:hidden;flex-shrink:0}
.ribbon-bottom .rb-icon img{width:100%;height:100%;object-fit:contain}

/* Slider Ribbon - semua pakai variable --rb-bg, --rb-bg2, --rb-text */
.ribbon-style-default{background:linear-gradient(to top, var(--rb-bg, #052e1f) 0%, color-mix(in srgb, var(--rb-bg, #052e1f) 70%, transparent) 100%);backdrop-filter:blur(12px);border-top:2px solid var(--rb-bg2, #22c55e)}
.ribbon-style-3d{background:linear-gradient(180deg, var(--rb-bg2, #0a4d2e) 0%, var(--rb-bg, #052e1f) 100%);box-shadow:0 -4px 20px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.15);border-top:2px solid var(--rb-bg2, #22c55e);transform:translateZ(0)}
.ribbon-style-glass{background:color-mix(in srgb, var(--rb-bg, #052e1f) 65%, transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(255,255,255,.15);box-shadow:0 -8px 32px rgba(0,0,0,.3)}
.ribbon-style-gradient{background:linear-gradient(90deg, var(--rb-bg, #052e1f) 0%, color-mix(in srgb, var(--rb-bg, #052e1f) 50%, var(--rb-bg2, #16a34a)) 50%, var(--rb-bg2, #16a34a) 100%);border-top:2px solid var(--rb-bg2, #22c55e)}
.ribbon-style-minimal{background:rgba(0,0,0,.55);padding:8px 14px !important;font-size:11px !important;backdrop-filter:blur(8px);border-top:1px solid var(--rb-bg2, #22c55e)}
.ribbon-style-ornate{background:linear-gradient(to top, #02140e 0%, var(--rb-bg, #052e1f) 100%);border-top:2px solid #fbbf24;box-shadow:0 -2px 0 #fbbf24, 0 -6px 20px rgba(251,191,36,.2);position:relative}
.ribbon-style-ornate:before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg, transparent, #fbbf24, transparent)}

/* Kanal Header - pakai variable --k-bg, --k-text, --k-accent */
.kanal-header{padding:12px 16px;display:flex;justify-content:space-between;align-items:center;transition:all .3s ease}
.kanal-title{display:flex;align-items:center;gap:10px;font-weight:900;font-size:14px;letter-spacing:.5px}
.kanal-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;transition:all .3s}
.kanal-tab{font-size:10px;font-weight:800;padding:6px 12px;border-radius:999px;letter-spacing:.5px;transition:all .3s}

.kanal-style-default{background:var(--bg-card2);border-bottom:1px solid var(--border)}
.kanal-style-default .kanal-icon{background:var(--k-accent, var(--bright));color:var(--dark)}
.kanal-style-default .kanal-tab{background:color-mix(in srgb, var(--k-accent, var(--bright)) 15%, transparent);color:var(--k-accent, var(--bright))}

.kanal-style-3d{background:linear-gradient(180deg, var(--bg-card2) 0%, var(--bg-card) 100%);border-bottom:2px solid var(--k-accent, var(--bright));box-shadow:0 2px 8px rgba(0,0,0,.1), inset 0 1px 0 rgba(255,255,255,.05)}
.kanal-style-3d .kanal-icon{background:linear-gradient(135deg, var(--k-accent, var(--bright)), #16a34a);color:var(--dark);box-shadow:0 2px 6px color-mix(in srgb, var(--k-accent) 30%, transparent)}

.kanal-style-pill{background:var(--bg-card);padding:10px 14px !important}
.kanal-style-pill .kanal-title{background:var(--k-bg, var(--dark));color:var(--k-text, #fff);padding:6px 14px;border-radius:999px;font-size:12px}
.kanal-style-pill .kanal-icon{background:var(--k-accent, var(--bright));width:22px;height:22px;font-size:11px}
.kanal-style-pill .kanal-tab{display:none}

.kanal-style-corner{background:var(--bg-card);position:relative;overflow:hidden;border-left:4px solid var(--k-accent, var(--bright))}
.kanal-style-corner:before{content:'';position:absolute;top:0;right:0;width:0;height:0;border-style:solid;border-width:0 20px 20px 0;border-color:transparent var(--k-accent, var(--bright)) transparent transparent}
.kanal-style-corner .kanal-icon{background:transparent;border:1px solid var(--k-accent, var(--bright));color:var(--k-accent, var(--bright))}

.kanal-style-underline{background:transparent;border-bottom:2px solid var(--border);padding:0 0 12px 0 !important;border-radius:0 !important;position:relative}
.kanal-style-underline:after{content:'';position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:var(--k-accent, var(--bright))}
.kanal-style-underline .kanal-icon{display:none}
.kanal-style-underline .kanal-title{font-size:18px;color:var(--k-text, var(--text-bright))}

.kanal-style-ornate{background:linear-gradient(135deg, var(--k-bg, var(--dark)) 0%, #0a3d26 100%);color:var(--k-text, #fff);border:1px solid color-mix(in srgb, var(--k-accent) 20%, transparent);border-radius:12px !important;box-shadow:0 4px 15px rgba(0,0,0,.2)}
.kanal-style-ornate .kanal-title{color:var(--k-text, #fff)}
.kanal-style-ornate .kanal-icon{background:linear-gradient(135deg, #fbbf24, #f59e0b);color:#000}
.kanal-style-ornate .kanal-tab{background:rgba(255,255,255,.1);color:#86efac;border:1px solid rgba(255,255,255,.1)}
