/* RobinType — legal pages (FAQ · Privacy · Terms)
   Satu file bersama untuk tiga halaman dokumen. Flat, tanpa gradien. */

.legal-page { width: min(760px, calc(100% - 40px)); margin: 0 auto; padding: 40px 0 90px; }

.legal-topbar { display: flex; align-items: center; gap: 16px; padding-bottom: 20px; border-bottom: 1px solid #d8d8d0; }
.legal-back { display: inline-flex; align-items: center; gap: 8px; height: 34px; padding: 0 14px; border: 0; border-radius: 9px; background: #c8ef67; color: #273513; font-size: 12px; font-weight: 600; text-decoration: none; transition: background-color .15s ease; }
.legal-back:hover { background: #b8df55; }
.legal-brand { margin-left: auto; font: 700 19px Georgia, serif; letter-spacing: -.06em; color: inherit; text-decoration: none; }
.legal-brand span { font-style: italic; }

.legal-header { padding: 34px 0 22px; }
.legal-eyebrow { margin: 0 0 12px; font-size: 10px; letter-spacing: .2em; color: #888a81; }
.legal-header h1 { margin: 0; font: 400 clamp(30px, 5vw, 44px)/1.06 Georgia, serif; letter-spacing: -.045em; }
.legal-header p { margin: 14px 0 0; color: #777970; font-size: 13px; line-height: 1.6; }
.legal-draft { display: inline-block; margin-top: 14px; padding: 5px 10px; border: 1px solid #d8d8d0; border-radius: 999px; font-size: 11px; color: #777970; }

.legal-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 30px; }
.legal-nav a { padding: 7px 13px; border: 1px solid #d1d2c9; border-radius: 999px; background: #fff; color: #4b4d45; font-size: 12px; text-decoration: none; }
.legal-nav a:hover { border-color: #9fca43; color: #273513; }
.legal-nav a[aria-current="page"] { background: #eef3d8; border-color: #9fca43; color: #3d5410; font-weight: 600; }

.legal-body { display: grid; gap: 30px; }
.legal-section { padding-top: 22px; border-top: 1px solid #e2e2da; }
.legal-section:first-child { padding-top: 0; border-top: 0; }
.legal-section h2 { margin: 0 0 12px; font: 400 21px/1.2 Georgia, serif; letter-spacing: -.02em; }
.legal-section h3 { margin: 20px 0 8px; font-size: 13px; letter-spacing: .01em; }
.legal-section p { margin: 0 0 12px; color: #4b4d45; font-size: 14px; line-height: 1.68; }
.legal-section p:last-child { margin-bottom: 0; }
.legal-section ul, .legal-section ol { margin: 0 0 12px; padding-left: 20px; color: #4b4d45; font-size: 14px; line-height: 1.68; }
.legal-section li { margin-bottom: 7px; }
.legal-section li:last-child { margin-bottom: 0; }
.legal-section strong { color: #181a16; }
.legal-section a { color: #3d5410; text-decoration: none; border-bottom: 1px solid #c8ef67; }
.legal-section a:hover { color: #273513; border-bottom-color: #9fca43; }
.legal-note { padding: 13px 15px; border-radius: 10px; background: #f1f1ea; color: #4b4d45; font-size: 13px; line-height: 1.6; }

.legal-faq { display: grid; gap: 10px; }
.legal-faq details { border: 1px solid #e2e2da; border-radius: 11px; background: #fff; }
.legal-faq summary { padding: 14px 16px; cursor: pointer; font-size: 14px; font-weight: 600; color: #181a16; list-style: none; display: flex; gap: 12px; align-items: baseline; }
.legal-faq summary::-webkit-details-marker { display: none; }
.legal-faq summary::after { content: "+"; margin-left: auto; color: #888a81; font-weight: 400; font-size: 17px; line-height: 1; }
.legal-faq details[open] summary::after { content: "–"; }
.legal-faq details[open] summary { border-bottom: 1px solid #e2e2da; }
.legal-faq .legal-faq-body { padding: 14px 16px; }
.legal-faq .legal-faq-body p { margin: 0 0 10px; color: #4b4d45; font-size: 13.5px; line-height: 1.66; }
.legal-faq .legal-faq-body p:last-child { margin-bottom: 0; }
.legal-faq .legal-faq-body ul { margin: 0 0 10px; padding-left: 20px; color: #4b4d45; font-size: 13.5px; line-height: 1.66; }

.legal-footer { margin-top: 46px; padding-top: 20px; border-top: 1px solid #d8d8d0; display: flex; justify-content: space-between; gap: 18px; flex-wrap: wrap; color: #92938a; font-size: 11px; }
.legal-footer a { color: #777970; text-decoration: none; border-bottom: 1px solid #d8d8d0; }
.legal-footer a:hover { color: #181a16; }

body.dark .legal-topbar, body.dark .legal-section, body.dark .legal-footer { border-color: #3b3d35; }
body.dark .legal-header p, body.dark .legal-footer, body.dark .legal-footer a { color: #a7a89f; }
body.dark .legal-draft { border-color: #4a4d43; color: #a7a89f; }
body.dark .legal-nav a { background: #282a25; border-color: #4a4d43; color: #e8e9df; }
body.dark .legal-nav a[aria-current="page"] { background: #c8ef67; border-color: #c8ef67; color: #273513; }
body.dark .legal-section p, body.dark .legal-section ul, body.dark .legal-section ol { color: #d6d7ce; }
body.dark .legal-section strong { color: #f3f2e9; }
body.dark .legal-section a { color: #c8ef67; border-bottom-color: #4a5a2a; }
body.dark .legal-note { background: #22241f; color: #d6d7ce; }
body.dark .legal-faq details { background: #282a25; border-color: #3b3d35; }
body.dark .legal-faq summary { color: #f3f2e9; }
body.dark .legal-faq details[open] summary { border-color: #3b3d35; }
body.dark .legal-faq .legal-faq-body p, body.dark .legal-faq .legal-faq-body ul { color: #d6d7ce; }

@media (max-width: 650px) {
  .legal-page { width: calc(100% - 28px); padding: 24px 0 70px; }
  .legal-footer { flex-direction: column; gap: 8px; }
}