/* User Agreement and Privacy Policy: the Ketentuan | Privasi switch, then
   the document on one surface with a reading measure of about 72
   characters. The contents list sits beside it from 1100px and folds into
   a disclosure above the text on smaller screens. Clause numbers are part
   of the text, so copying or printing keeps them. */
.legal-page{display:grid;gap:16px}
.legal-page>*{min-width:0}
.legal-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px}
.legal-tabs{display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--color-paper-2);max-width:100%}
.legal-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;border-radius:10px;font-size:13px;color:var(--color-muted);text-decoration:none;white-space:nowrap}
.legal-tabs a:hover{color:var(--color-ink)}
.legal-tabs a[aria-current=page]{background:var(--color-surface);color:var(--color-ink);font-weight:500;box-shadow:0 1px 3px var(--color-shadow)}
.legal-lang{margin:0;max-width:72ch;font-size:13px;color:var(--color-muted)}
.legal-lang .text-link{min-height:0;padding:0;white-space:normal}

.legal-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
.legal-toc{display:none}
.legal-toc ol,.legal-toc-inline ol{margin:0;padding:0;list-style:none;display:grid;gap:2px}
.legal-toc a,.legal-toc-inline a{display:block;padding:6px 10px;border-radius:8px;font-size:13px;line-height:1.45;color:var(--color-muted);text-decoration:none}
.legal-toc a:hover,.legal-toc-inline a:hover{background:var(--color-paper-2);color:var(--color-ink)}

.legal-doc{padding:28px 24px 36px;border-radius:var(--radius-surface);background:var(--color-surface);font-size:15px;line-height:1.75;color:var(--color-ink)}
.legal-doc>*{max-width:72ch}
.legal-doc section{scroll-margin-top:calc(var(--sticky-top) + 16px)}
.legal-doc section+section{margin-top:36px}
.legal-doc h2{margin:0 0 14px;font-size:18px;line-height:1.4;font-weight:600}
.legal-doc p{margin:0}
.legal-doc a:not(.text-link){color:var(--color-accent);text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
.legal-doc strong{font-weight:600}
.legal-meta{margin:0 0 20px;font-size:13px;color:var(--color-muted)}

.legal-toc-inline{margin:0 0 24px;border-radius:14px;background:var(--color-paper)}
.legal-toc-inline summary{display:flex;align-items:center;min-height:44px;padding:0 16px;font-size:14px;font-weight:500;cursor:pointer}
.legal-toc-inline summary::-webkit-details-marker{display:none}
.legal-toc-inline summary::after{content:"";margin-left:auto;width:7px;height:7px;border-right:1.5px solid var(--color-muted);border-bottom:1.5px solid var(--color-muted);transform:translateY(-2px) rotate(45deg)}
.legal-toc-inline[open] summary::after{transform:translateY(2px) rotate(225deg)}
.legal-toc-inline[open] summary{border-bottom:1px solid var(--color-rule)}
.legal-toc-inline ol{padding:8px 6px 10px}

.legal-summary{padding:20px 22px;border-radius:16px;background:var(--color-accent-soft)}
.legal-summary h2{font-size:16px;margin-bottom:10px}
.legal-summary ul{margin:0;padding-left:1.2em;display:grid;gap:6px}
.legal-note{margin-top:12px!important;font-size:13px;color:var(--color-muted)}

.legal-clause{display:grid;grid-template-columns:3.2em minmax(0,1fr);margin:0 0 12px}
.legal-clause:last-child{margin-bottom:0}
.legal-clause>div{display:grid;gap:8px}
.legal-n,.legal-i{font-variant-numeric:tabular-nums;color:var(--color-muted);font-weight:600}
.legal-items{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.legal-items>li{display:grid;grid-template-columns:2.2em minmax(0,1fr)}
.legal-sources{margin:0;padding-left:1.2em;display:grid;gap:8px}

.legal-defs,.legal-contact{margin:0;display:grid;gap:12px}
.legal-defs dt,.legal-contact dt{font-weight:600}
.legal-defs dd,.legal-contact dd{margin:0}
.legal-contact{margin-block:14px;padding:16px 18px;border-radius:14px;background:var(--color-paper)}
.legal-contact div{display:grid;grid-template-columns:minmax(0,12em) minmax(0,1fr);gap:4px 16px}
.legal-contact dt{font-weight:400;color:var(--color-muted)}

.legal-table{margin:4px 0 16px;overflow-x:auto;border-radius:14px;background:var(--color-paper)}
.legal-table table{min-width:520px;font-size:13.5px;line-height:1.55}
.legal-table th{white-space:normal;font-weight:500;color:var(--color-muted)}
.legal-table td,.legal-table th{padding:11px 14px;vertical-align:top}
.legal-table tbody tr:hover{background:none}
.legal-doc code{padding:1px 6px;border-radius:6px;background:var(--color-paper-2);font-size:12.5px;white-space:nowrap}

@media (min-width:640px){
 .legal-doc{padding:36px 40px 44px}
}
@media (min-width:1100px){
 .legal-layout{grid-template-columns:240px minmax(0,1fr)}
 .legal-toc{display:block;position:sticky;top:calc(var(--sticky-top) + 8px);max-height:calc(100dvh - var(--sticky-top) - 32px);overflow-y:auto;padding:12px 8px;border-radius:var(--radius-surface);background:var(--color-surface)}
 .legal-toc-inline{display:none}
 .legal-doc{padding:40px 48px 48px}
}
@media (max-width:420px){
 .legal-tabs{width:100%}
 .legal-tabs a{flex:1;padding-inline:8px}
 .legal-clause{grid-template-columns:2.8em minmax(0,1fr)}
 .legal-contact div{grid-template-columns:minmax(0,1fr)}
}
@media print{
 .member-header,.member-sidebar,.member-bottom,.site-footer,.mobile-drawer,.legal-tabs,.legal-lang,.legal-toc,.legal-toc-inline{display:none!important}
 .legal-doc{padding:0;background:none}
 .legal-doc a{color:inherit}
}
