/* timeline */
.day{margin-bottom:18px}
.day h3{color:var(--red2)}
.day ul{list-style:none;margin:0;padding:0}
.day li{display:flex;gap:16px;padding:8px 0;border-bottom:1px dashed var(--line)}
.day li b{min-width:120px;font-weight:600;color:var(--muted)}

/* legal / prose */
.prose{max-width:820px}
.prose h2{margin-top:1.6em;font-size:1.4rem} .prose h3{margin-top:1.4em;font-size:1.1rem;color:var(--red2)}
.prose ul,.prose ol{padding-left:1.3em} .prose li{margin-bottom:.4em}
.page-title{padding:40px 0 12px;border-bottom:1px solid var(--line);margin-bottom:28px;background:linear-gradient(180deg,#160607,transparent)}

/* admin */
.admin-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin:22px 0}
.filters{display:grid;grid-template-columns:2fr repeat(4,1fr) auto;gap:10px;margin-bottom:16px}
@media(max-width:900px){.filters{grid-template-columns:1fr 1fr}}
.thumb{width:100%;max-width:340px;border-radius:10px;border:1px solid var(--line)}
.files{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.pager{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px}
.pager a,.pager span{padding:6px 12px;border:1px solid var(--line);border-radius:8px}
.pager span{background:var(--red);border-color:var(--red)}

/* Halaman verifikasi tanda tangan (/verifikasi) */
.vf{max-width:560px;margin:0 auto}
.vf-card{background:var(--card);border:1px solid #1f6b3f;border-radius:20px;padding:26px 22px 22px;text-align:center;box-shadow:0 0 0 1px #0f2418,0 18px 50px rgba(46,204,113,.08)}
.vf-seal{width:92px;height:92px;margin:0 auto 14px;border-radius:50%;background:#0f2418;border:2px solid var(--ok);display:grid;place-items:center;animation:vfPop .5s cubic-bezier(.2,1.4,.4,1) both}
.vf-seal svg{width:52px;height:52px;stroke:var(--ok);fill:none;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60;animation:vfDraw .5s .35s ease forwards}
.vf-ttl{font-family:var(--head);text-transform:uppercase;letter-spacing:.04em;font-size:1.5rem;color:var(--ok);margin:0 0 4px}
.vf-sub{color:var(--muted);font-size:.92rem;margin:0 0 20px}
.vf-sign{background:#fff;border-radius:14px;padding:10px;margin:0 auto 18px;max-width:340px}
.vf-sign img{display:block;width:100%;height:auto;max-height:170px;object-fit:contain}
.vf-name{font-size:1.2rem;font-weight:700;margin:0}
.vf-role{color:var(--red2);font-weight:600;margin:2px 0 0}
.vf-dl{display:grid;grid-template-columns:auto 1fr;gap:10px 14px;text-align:left;margin:20px 0 0;padding:16px;background:#0f0f0f;border:1px solid var(--line);border-radius:14px;font-size:.93rem}
.vf-dl dt{color:var(--muted)} .vf-dl dd{margin:0;font-weight:600;word-break:break-word} .vf-dl .badge{white-space:nowrap}
@media(max-width:520px){.vf-dl{grid-template-columns:1fr;gap:2px}.vf-dl dd{margin:0 0 12px}.vf-dl dd:last-child{margin-bottom:0}.vf-dl dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}}
.vf-note{margin:16px 0 0;font-size:.8rem;color:var(--muted)}
.vf-bad .vf-card{border-color:#7a2323;box-shadow:none} .vf-bad .vf-seal{background:#241010;border-color:var(--bad)} .vf-bad .vf-seal svg{stroke:var(--bad)} .vf-bad .vf-ttl{color:var(--bad)}
@keyframes vfPop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes vfDraw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.vf-seal,.vf-seal svg{animation:none;stroke-dashoffset:0}}
