/* Mode malam: tema gelap diberi nuansa jalan malam dari v5/13 (aspal basah, pantulan lampu, nama bercahaya).
   Tetap tenang dan terbaca; bukan cyberpunk. Aktif otomatis 18.00–06.00 WIB kecuali pengunjung memilih sendiri. */
/* Tanpa transisi opacity: transisi membuat lapisan ini dipisah oleh Chrome sehingga kaca kartu tidak bisa memblurnya */
.malam{position:fixed;inset:0;z-index:0;pointer-events:none;display:none}
:root[data-theme="dark"] .malam{display:block}
.malam::before{content:"";position:absolute;inset:0;background:
  radial-gradient(40% 30% at 18% 6%,rgba(255,125,156,.13),transparent 70%),
  radial-gradient(36% 26% at 86% 12%,rgba(98,211,217,.10),transparent 70%),
  radial-gradient(50% 30% at 60% 100%,rgba(255,179,107,.08),transparent 70%)}
.malam::after{content:"";position:absolute;left:0;right:0;bottom:0;height:55vh;filter:blur(18px);opacity:.6;
  background:
  linear-gradient(90deg,transparent 12%,rgba(255,125,156,.20) 14%,transparent 17%),
  linear-gradient(90deg,transparent 31%,rgba(255,179,107,.15) 32.5%,transparent 34%),
  linear-gradient(90deg,transparent 62%,rgba(98,211,217,.15) 63.5%,transparent 66%),
  linear-gradient(90deg,transparent 80%,rgba(255,125,156,.12) 82%,transparent 85%);
  -webkit-mask:linear-gradient(180deg,transparent,#000 45%,#000 75%,transparent);mask:linear-gradient(180deg,transparent,#000 45%,#000 75%,transparent)}
#hujan{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;display:none}
#hujan.on{display:block}
@media (prefers-reduced-motion:reduce){#hujan{display:none}}

/* Isi halaman selalu di atas lapisan malam dan hujan */
.bento,#list,.grid,footer{position:relative;z-index:1}
