/* ============================================================
   AFRICAPICKUP — DAILY UPDATE / RANK PAGE (PC / DESKTOP)
   Palette: #006400 #00a32a #00d135 #e4ede6 #eef4ef
   Layout: Flexbox 2-column (center + right sidebar)
   ============================================================ */

/* ---------- 0. RESET / BASE ---------- */
*,*::before,*::after{box-sizing:border-box}
html{
  -webkit-text-size-adjust:100%;text-size-adjust:100%;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  scroll-behavior:smooth;text-rendering:optimizeLegibility;
}
body{
  margin:0 auto;padding:0;
  background:#f5f5f5;color:#3d2a2a;
  font-family:system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:15px;line-height:1.55;overflow-x:hidden;min-width:0;
}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit;cursor:pointer}
ul{list-style:none;margin:0;padding:0}
h1,h2,h3,h4,h5,h6{margin:0;padding:0;font:inherit;font-weight:700;line-height:1.3}
p{margin:0;padding:0}

/* ============================================================
   1. LAYOUT — Flexbox 2-column
   ============================================================ */
main[role="main"]{display:block;width:100%;max-width:100%;}

.content-width{
  width:auto;max-width:1200px;
  margin:0 auto;padding:0 16px;
}
.content-width.main-content{position:relative;z-index:11;}

#main-wrapper{
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  gap:20px;
  width:100%;
}

#left-col{display:none !important;}

#contents-column{
  flex:1 1 auto;
  min-width:0;
  padding:0;margin:0;
  position:relative;z-index:12;
  overflow-x:visible;word-wrap:break-word;
}

#right-col{
  flex:0 0 340px;
  width:340px;max-width:340px;
  margin:0;padding:0;
  overflow:visible;
  position:relative;z-index:12;
  font-family:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}

@media (max-width:1100px){
  #right-col{flex:0 0 300px;width:300px;max-width:300px;}
}

/* ============================================================
   2. HERO
   ============================================================ */
.daily-hero{
  position:relative;margin:20px 0 0;
  padding:40px 44px 36px;border-radius:20px;overflow:hidden;
  color:#fff;isolation:isolate;
  min-height:260px;
  background:
    repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 2px,transparent 2px 14px),
    linear-gradient(135deg,#004d00 0%,#006400 35%,#00a32a 75%,#00d135 100%);
  box-shadow:0 10px 32px rgba(0,100,0,.28), inset 0 1px 0 rgba(255,255,255,.18);
}
.daily-hero::before{
  content:"";position:absolute;top:-45%;right:-12%;width:480px;height:480px;
  background:radial-gradient(circle,rgba(255,255,255,.30) 0%,transparent 68%);
  pointer-events:none;z-index:0;
}
.daily-hero::after{
  content:"";position:absolute;bottom:-45%;left:-14%;width:400px;height:400px;
  background:radial-gradient(circle,rgba(0,209,53,.35) 0%,transparent 70%);
  pointer-events:none;z-index:0;
}
.daily-hero .hero-inner{
  position:relative;z-index:1;
  display:flex;flex-direction:column;gap:12px;max-width:820px;
}
.daily-hero .hero-badge{
  display:inline-flex;align-items:center;gap:8px;align-self:flex-start;
  background:rgba(255,255,255,.18);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.28);
  padding:6px 16px;border-radius:24px;
  font-size:11.5px;font-weight:800;
  text-transform:uppercase;letter-spacing:.8px;color:#fff;
}
.daily-hero .hero-badge .pulse-dot{
  display:inline-block;width:8px;height:8px;background:#fff;border-radius:50%;
  box-shadow:0 0 0 0 rgba(255,255,255,.7);animation:pulse 1.8s infinite;
}
@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(255,255,255,.6)}
  70%{box-shadow:0 0 0 10px rgba(255,255,255,0)}
  100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}
}
.daily-hero .hero-title{
  display:flex;align-items:center;gap:16px;
  font-size:34px;font-weight:900;line-height:1.15;
  letter-spacing:-.5px;color:#fff;
  text-shadow:0 2px 4px rgba(0,0,0,.14);
}
.daily-hero .hero-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:64px;height:64px;border-radius:16px;flex-shrink:0;
  background:linear-gradient(135deg,rgba(255,255,255,.28),rgba(255,255,255,.10));
  border:1px solid rgba(255,255,255,.35);
  box-shadow:0 6px 18px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.3);
  font-size:30px;color:#fff;
}
.daily-hero .hero-subtitle{
  font-size:15px;font-weight:600;line-height:1.55;
  color:rgba(255,255,255,.92);max-width:720px;
  text-shadow:0 1px 1px rgba(0,0,0,.08);
}
.daily-hero .hero-stats{
  display:flex;gap:36px;flex-wrap:wrap;
  margin-top:16px;padding-top:18px;
  border-top:1px solid rgba(255,255,255,.2);
}
.daily-hero .hero-stat{
  display:flex;flex-direction:column;gap:4px;
  padding-left:14px;border-left:2px solid rgba(255,255,255,.25);
}
.daily-hero .hero-stats .hero-stat:first-child{border-left:none;padding-left:0;}
.daily-hero .hero-stat .stat-num{font-size:26px;font-weight:900;color:#fff;line-height:1.1;}
.daily-hero .hero-stat .stat-lbl{
  font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:.6px;
  color:rgba(255,255,255,.75);
}

/* ============================================================
   3. CHART SELECTOR
   ============================================================ */
.chartlist-header{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  background:linear-gradient(135deg,#e4ede6 0%,#eef4ef 100%);
  padding:16px 24px;border-radius:14px;margin:20px 0 0;
  border-left:6px solid #006400;
  box-shadow:0 2px 10px rgba(0,100,0,.06);
}
.chartlist-type{
  position:relative;padding-left:22px;
  display:flex;align-items:center;gap:10px;
  font-size:15px;font-weight:800;
  text-transform:uppercase;letter-spacing:.5px;color:#2a5a2a;
}
.chartlist-type::before{
  content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:10px;height:10px;background:#00a32a;border-radius:50%;
  box-shadow:0 0 0 0 rgba(0,163,42,.55);animation:pulse 1.8s infinite;
}
.chartlist-select{min-width:280px;max-width:360px;}
.chartlist-select select{
  width:100%;padding:11px 42px 11px 20px;
  font-size:14px;font-weight:700;color:#006400;
  background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23006400' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>") no-repeat right 16px center;
  background-size:14px;
  border:1.5px solid rgba(0,100,0,.25);border-radius:999px;
  -webkit-appearance:none;-moz-appearance:none;appearance:none;
  cursor:pointer;outline:none;
  box-shadow:0 2px 8px rgba(0,100,0,.06), inset 0 1px 0 #fff;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.chartlist-select select:hover{
  border-color:#00a32a;
  box-shadow:0 4px 14px rgba(0,163,42,.18);
}
.chartlist-select select:focus-visible{
  border-color:#00a32a;
  box-shadow:0 0 0 4px rgba(0,163,42,.15);
}

/* ============================================================
   4. CHART LIST
   ============================================================ */
.chart-list{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;margin:16px 0 0;padding:20px;
  background:linear-gradient(180deg,#eef4ef 0%,#e4ede6 100%);
  border-radius:16px;list-style:none;
  contain:layout paint;
}
.chart-li{
  position:relative;background:#fff;border-radius:14px;overflow:hidden;
  border:1px solid rgba(0,100,0,.08);
  box-shadow:0 2px 6px rgba(0,0,0,.04);
  transition:transform .22s cubic-bezier(.2,.7,.3,1),
             box-shadow .25s ease,
             border-color .25s ease;
  contain:layout paint;
}
.chart-li::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;z-index:3;
  background:linear-gradient(180deg,#00d135,#006400);
  transform:scaleY(0);transform-origin:top;
  transition:transform .28s cubic-bezier(.2,.7,.3,1);
}
.chart-li:hover::before{transform:scaleY(1);}
.chart-li:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 28px rgba(0,100,0,.16), 0 2px 6px rgba(0,100,0,.08);
  border-color:rgba(0,163,42,.4);
}
.chart-li > a{
  display:flex;align-items:center;gap:18px;
  padding:16px 18px;text-decoration:none;color:inherit;
}
.chart-li .the-image{
  flex-shrink:0;width:92px;height:92px;
  aspect-ratio:1/1;border-radius:12px;
  object-fit:cover;background:#e4ede6;
  box-shadow:0 4px 12px rgba(0,0,0,.10);
  transition:transform .3s ease;
}
.chart-li:hover .the-image{transform:scale(1.04);}

.badge-rate{
  position:absolute;top:12px;left:12px;z-index:4;
  min-width:34px;height:34px;padding:0 10px;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:14px;font-weight:900;letter-spacing:-.4px;line-height:1;
  border-radius:10px;border:1.5px solid rgba(255,255,255,.35);
  background:linear-gradient(135deg,#00a32a 0%,#006400 100%);
  color:#fff;
  box-shadow:0 4px 12px rgba(0,100,0,.35), inset 0 1px 0 rgba(255,255,255,.25);
}
.chart-list .chart-li:nth-child(1) .badge-rate{
  background:linear-gradient(135deg,#ffe066 0%,#ffd700 45%,#d4a017 100%);
  color:#3d2a2a;
  box-shadow:0 4px 14px rgba(212,160,23,.55), inset 0 1px 0 rgba(255,255,255,.6);
}
.chart-list .chart-li:nth-child(2) .badge-rate{
  background:linear-gradient(135deg,#f0f0f0 0%,#e0e0e0 45%,#a0a0a0 100%);
  color:#3d2a2a;
}
.chart-list .chart-li:nth-child(3) .badge-rate{
  background:linear-gradient(135deg,#e8a866 0%,#cd7f32 50%,#a0522d 100%);
  color:#fff;
}

.chart-li .chart-body{
  flex:1;min-width:0;
  display:flex;flex-direction:column;justify-content:center;gap:6px;
}
.chart-li .name-title{
  font-size:16px;font-weight:700;line-height:1.4;color:#1a2e1a;
  overflow:hidden;text-overflow:ellipsis;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
  transition:color .2s ease;
}
.chart-li:hover .name-title{color:#006400;}
.chart-li .other-details,
.chart-li .artistname{
  font-size:13.5px;color:#00a32a;font-weight:600;letter-spacing:.1px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.chart-li .artistname sub{color:#00a32a;font-size:13px;vertical-align:baseline;}
.chart-li .name-title .fa-tv{color:#00a32a;font-size:11px;margin-left:2px;}

/* ============================================================
   5. FAQ
   ============================================================ */
.faq-section{
  margin:28px 0 32px;
  content-visibility:auto;
  contain-intrinsic-size:auto 600px;
}
.faq-section h2{
  display:flex;align-items:center;gap:12px;
  font-size:17px;font-weight:800;
  text-transform:uppercase;letter-spacing:.5px;
  color:#2a5a2a;background:#e4ede6;
  padding:18px 24px 16px;
  border-left:6px solid #006400;
  border-radius:14px 14px 0 0;
  border-bottom:1px solid rgba(0,100,0,.08);
}
.faq-section h2::before{
  content:"";width:9px;height:9px;background:#00a32a;border-radius:50%;
  flex-shrink:0;box-shadow:0 0 0 3px rgba(0,163,42,.14);
}
.faq{
  padding:20px;list-style:none;
  background:linear-gradient(180deg,#eef4ef 0%,#e4ede6 100%);
  border-radius:0 0 16px 16px;
  display:flex;flex-direction:column;gap:12px;
}
.faq-item{
  position:relative;background:#fff;border-radius:12px;overflow:hidden;
  border:1px solid rgba(0,100,0,.08);
  padding:20px 24px 20px 28px;
  transition:transform .2s ease, box-shadow .25s ease, border-color .25s ease;
}
.faq-item::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(180deg,#00d135,#006400);
  transform:scaleY(.35);transform-origin:top;
  transition:transform .3s cubic-bezier(.2,.7,.3,1);
}
.faq-item::after{
  content:"#";position:absolute;top:16px;right:20px;
  font-size:20px;font-weight:900;color:rgba(0,163,42,.28);line-height:1;
}
.faq-item:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 26px rgba(0,100,0,.12);
  border-color:rgba(0,163,42,.4);
}
.faq-item:hover::before{transform:scaleY(1);}
.faq-question{
  margin:0 34px 10px 0;font-weight:800;font-size:15px;
  color:#006400;line-height:1.4;
}
.faq-answer{margin:0;color:#3d2a2a;line-height:1.7;font-size:14px;}
.faq-answer strong{
  color:#006400;font-weight:700;
  background:rgba(0,163,42,.07);
  padding:1px 6px;border-radius:5px;
}

/* ============================================================
   6. PAGINATION
   ============================================================ */
.pages{
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  margin:24px 0 28px;padding:20px 26px;border-radius:14px;
  background:linear-gradient(135deg,#e4ede6,#eef4ef);
  border-left:6px solid #006400;
}
.pages .page-listing{
  display:flex;flex-wrap:wrap;gap:6px;align-items:center;
}
.pages .this-page,
.pages .a-page a{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:40px;height:40px;padding:0 14px;
  background:#fff;color:#006400;
  border:1px solid rgba(0,100,0,.15);border-radius:999px;
  font-size:14px;font-weight:700;text-decoration:none;
  transition:all .2s ease;
}
.pages .this-page{
  background:linear-gradient(135deg,#00a32a 0%,#006400 100%);
  color:#fff;border-color:#006400;
  box-shadow:0 4px 12px rgba(0,100,0,.3), inset 0 1px 0 rgba(255,255,255,.2);
}
.pages .a-page a:hover{
  background:#00a32a;color:#fff;border-color:#00a32a;
  transform:translateY(-2px);
  box-shadow:0 6px 14px rgba(0,163,42,.25);
}
.pages-info{
  display:block;text-align:right;
  color:#4a5a4a;font-size:13px;font-weight:600;
}

/* ============================================================
   7. SIDEBAR
   ============================================================ */
.sidebar-box{
  background:#fff;
  border-radius:12px;
  border-left:5px solid #006400;
  margin-bottom:18px;
  padding:0;overflow:hidden;
  box-shadow:0 1px 4px rgba(0,0,0,.04);
  width:100%;min-width:0;
}
.sidebar-box:nth-of-type(1){margin-top:20px;}
.sidebar-box > *:not(.box-name){padding:12px 16px;}

.sidebar-box .box-name{
  display:flex;align-items:center;gap:10px;
  font-size:14px;font-weight:800;
  letter-spacing:.4px;text-transform:uppercase;
  line-height:1.3;
  padding:14px 16px 12px;margin:0;
  color:#2a5a2a;background:#e4ede6;
  border-bottom:1px solid rgba(0,100,0,.06);
  overflow-wrap:break-word;
}
.sidebar-box .box-name::before{
  content:"";display:inline-block;
  width:8px;height:8px;background:#00a32a;
  border-radius:50%;flex-shrink:0;
  box-shadow:0 0 0 3px rgba(0,163,42,.14);
}

.sidebar-box ul{list-style:none;margin:0;padding:0;}
.sidebar-box ul li{
  padding:8px 16px;margin:0;
  border-bottom:1px solid rgba(0,100,0,.06);
  font-size:13.5px;line-height:1.5;color:#3d2a2a;
  overflow-wrap:break-word;
}
.sidebar-box ul li:last-child{border-bottom:none;}
.sidebar-box ul li a{
  color:#2a5a2a;font-weight:600;
  display:inline-flex;align-items:center;gap:6px;
  transition:color .2s ease;
}
.sidebar-box ul li a:hover{color:#00a32a;}
.sidebar-box ul li a i{color:#00a32a;font-size:11px;}

.sidebar-box .sidebar-item{
  display:flex;gap:10px;
  padding:10px 16px;
  border-bottom:1px solid rgba(0,100,0,.06);
  align-items:center;
}
.sidebar-box .sidebar-item:last-child{border-bottom:none;}
.sidebar-box .sidebar-item img{
  width:48px;height:48px;aspect-ratio:1/1;
  border-radius:8px;object-fit:cover;flex-shrink:0;
  background:#e4ede6;
}
.sidebar-box .sidebar-item .item-info{flex:1;min-width:0;}
.sidebar-box .sidebar-item .item-info .item-title{
  font-size:13px;font-weight:700;color:#2a1a1a;
  line-height:1.3;margin:0 0 3px;
  overflow:hidden;text-overflow:ellipsis;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
}
.sidebar-box .sidebar-item .item-info .item-title a{
  color:#2a1a1a;display:block;
}
.sidebar-box .sidebar-item .item-info .item-title a:hover{color:#006400;}
.sidebar-box .sidebar-item .item-info .item-meta{
  font-size:11px;color:#7a6a5a;
}

.media-otw{text-align:center;}
.media-otw .otw-title{
  padding:12px 16px;background:#eef4ef;margin:0;
  font-size:13.5px;font-weight:700;line-height:1.4;
  color:#2a5a2a;letter-spacing:.3px;
}
#music-otw{height:auto;}
#music-otw .motw-img{margin:12px 0 8px;padding:0 12px;}
#music-otw .motw-img img{
  width:100%;height:180px;aspect-ratio:300/230;
  object-fit:cover;border-radius:8px;background:#e4ede6;
}
#music-otw .by-text{
  font-style:italic;color:#7a6a5a;font-size:12px;
  padding:0 12px 12px;margin:0;text-align:center;
}
.otw-o{
  margin:10px 12px;padding:8px 0;
  border-top:1px solid rgba(0,100,0,.06);
  font-size:13px;color:#4a5a4a;
}

.official-social-links{
  list-style:none;margin:0;
  padding:14px 12px !important;
  width:100%;display:flex;gap:8px;
  justify-content:space-between;align-items:center;
}
.official-social-links li{
  margin:0;padding:0;flex:1;
  display:flex;justify-content:center;
}
.official-social-links li a{
  display:inline-flex;align-items:center;justify-content:center;
  width:42px;height:42px;border-radius:50%;
  background:rgba(0,163,42,.08);color:#006400;
  transition:all .2s ease;
  border:1px solid rgba(0,100,0,.08);
}
.official-social-links li a:hover{
  background:linear-gradient(135deg,#00a32a 0%,#006400 100%);
  color:#fff;transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(0,100,0,.25);
  border-color:#006400;
}
.official-social-links li a i{font-size:16px;color:inherit;}

.sponsored-sidebar{
  text-align:center;overflow:hidden;padding:12px;
}
.sponsored-sidebar img{
  max-width:100%;height:auto;border-radius:8px;
}

/* ============================================================
   9. LARGE DESKTOP
   ============================================================ */
@media (min-width:1400px){
  .chart-list{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (min-width:1600px){
  .chart-list{grid-template-columns:repeat(4,minmax(0,1fr));}
}

/* ============================================================
   10. PRINT
   ============================================================ */
@media print{
  .daily-hero,.chartlist-header,.pages,.faq-section,#right-col{display:none;}
  .chart-list{grid-template-columns:repeat(2,1fr);padding:0;background:none;}
  .chart-li{border:1px solid #ccc;box-shadow:none;}
}

/* ============================================================
   11. REDUCED MOTION
   ============================================================ */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
}