/* LIBYA — lapisan gelombang dune */
.ly-page { --color-primary:#166534; --color-accent:#d6b36a; --color-bg:#f7f0e3; --ly-ink:#33301f; --ly-muted:#7c7460;
  background:var(--color-bg); color:var(--ly-ink); font-family:'Cairo',system-ui,sans-serif; margin:-1.5rem -12px 0; padding-bottom:0; text-align:center; }
.ly-container { width:100%; max-width:940px; margin:0 auto; padding:0 16px; position:relative; z-index:1; }
.ly-breadcrumb { font-size:12px; color:var(--ly-muted); text-align:left; padding-top:14px; } .ly-breadcrumb a { color:var(--color-primary); }
.ly-layer { position:relative; padding:38px 0 64px; }
.ly-layer-1 { background:var(--color-bg); }
.ly-layer-2 { background:var(--color-accent); color:#2c2716; }
.ly-layer-3 { background:var(--color-primary); color:#eef6ef; }
.ly-layer-4 { background:var(--color-bg); padding-bottom:52px; }
.ly-dune { position:absolute; left:0; right:0; bottom:-1px; height:56px; z-index:0; }
.ly-dune-1 { background:var(--color-accent); clip-path:polygon(0 100%,0 62%,18% 40%,42% 66%,68% 34%,88% 58%,100% 44%,100% 100%); }
.ly-dune-2 { background:var(--color-primary); clip-path:polygon(0 100%,0 50%,22% 72%,46% 38%,70% 64%,90% 40%,100% 58%,100% 100%); }
.ly-dune-3 { background:var(--color-bg); clip-path:polygon(0 100%,0 58%,20% 36%,44% 62%,66% 34%,86% 60%,100% 42%,100% 100%); }
.ly-kicker { margin:14px 0 8px; font-size:11px; font-weight:700; letter-spacing:.3em; color:var(--color-primary); }
.ly-h1 { font-weight:700; font-size:clamp(24px,5.8vw,40px); line-height:1.14; margin:0 0 8px; }
.ly-date { margin:0; font-size:12.5px; color:var(--ly-muted); }
.ly-balls { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; padding-top:8px; }
.ly-ball { position:relative; display:inline-flex; align-items:center; justify-content:center; width:clamp(70px,18vw,94px); height:clamp(70px,18vw,94px);
  border-radius:50%; background:radial-gradient(circle at 35% 30%,#1f7a44,var(--color-primary)); color:#f4efe0; font-weight:700;
  font-size:clamp(28px,8vw,40px); box-shadow:0 8px 18px rgba(22,101,52,.28); opacity:0; transform:translateY(14px);
  animation:ly-in .45s ease forwards; }
.ly-ball::after { content:''; position:absolute; left:-6%; right:-6%; bottom:-4px; height:34%; border-radius:0 0 50% 50%/0 0 100% 100%;
  background:var(--color-accent); }
.ly-ball-empty { background:#cdbd9a; color:#8f846c; }
@keyframes ly-in { to{opacity:1;transform:translateY(0);} }
.ly-meta { margin:22px 0 0; font-size:12.5px; color:#4c452c; }
.ly-desc { margin:0 0 18px; font-size:14px; color:rgba(238,246,239,.8); }
.ly-h2 { font-weight:700; font-size:clamp(20px,4.6vw,28px); margin:0 0 16px; }
.ly-layer-4 .ly-h2 { color:var(--color-primary); }
.ly-filter { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-bottom:18px; }
.ly-filter select { height:40px; padding:0 12px; border:0; border-radius:12px; background:#fff; font-family:inherit; font-size:13px; color:var(--ly-ink); }
.ly-btn { display:inline-flex; align-items:center; height:40px; padding:0 18px; border:0; border-radius:12px; background:var(--color-accent);
  color:#2c2716; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.ly-btn:hover { background:#c4a05a; color:#2c2716; } .ly-btn-ghost { background:#fff; }
.ly-strips { list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.ly-strip { display:flex; align-items:center; gap:14px; padding:13px 18px; border-radius:12px; background:rgba(255,255,255,.94); color:var(--ly-ink); text-align:left; }
.ly-strip-day { flex:0 0 86px; font-size:11.5px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--ly-muted); }
.ly-strip-date { flex:1 1 auto; font-size:13.5px; font-weight:700; }
.ly-strip-num { font-size:22px; font-weight:700; letter-spacing:.14em; color:var(--color-primary); }
.ly-empty { background:rgba(255,255,255,.94); border-radius:12px; padding:38px 18px; color:var(--ly-ink); }
.ly-empty h3 { font-size:18px; margin:0 0 6px; } .ly-empty p { margin:0; font-size:13px; color:var(--ly-muted); }
.ly-pagination { margin-top:14px; font-size:13px; color:rgba(238,246,239,.85); }
.ly-pagination .page-link { border-radius:10px; border:0; background:rgba(255,255,255,.9); color:var(--ly-ink); font-weight:700; }
.ly-pagination .page-item.active .page-link { background:var(--color-accent); color:#2c2716; }
.ly-mounds { display:grid; gap:12px; }
.ly-mound { background:#fff; border:1px solid #e3d8c1; border-radius:12px 12px 40px 40px/12px 12px 60px 60px; padding:20px 14px 24px; }
.ly-mound-label { display:block; font-size:10.5px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--ly-muted); }
.ly-mound-value { display:block; margin:6px 0 3px; font-size:19px; font-weight:700; color:var(--color-primary); }
.ly-mound-note { display:block; font-size:11.5px; color:var(--ly-muted); }
.ly-note { margin:18px 0 0; font-size:13px; color:var(--ly-muted); } .ly-note a { color:var(--color-primary); font-weight:700; }
@media (min-width:768px) { .ly-mounds { grid-template-columns:repeat(3,1fr); } }
@media (min-width:992px) { .ly-page { margin-left:-24px; margin-right:-24px; } }
@media (max-width:575.98px) { .ly-layer { padding:28px 0 48px; } .ly-balls { gap:9px; } .ly-strip-day { flex:0 0 70px; } }
@media (prefers-reduced-motion:reduce) { .ly-ball { animation:none; opacity:1; transform:none; } }
