/* ProLedger legal and technical pages */
.ap-legal-page{padding:clamp(70px,7vw,108px) 0 clamp(68px,7vw,104px)}
.ap-legal-hero{width:min(1120px,calc(100vw - 48px));margin:0 auto 24px;padding:clamp(26px,4vw,42px);border-radius:28px;border:1px solid rgba(255,255,255,.12);background:radial-gradient(circle at 16% 18%,rgba(35,224,184,.16),transparent 32%),radial-gradient(circle at 86% 22%,rgba(21,143,130,.18),transparent 34%),linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.035))}
.ap-legal-hero h1{color:#fff;font-size:clamp(36px,4.6vw,58px);line-height:1.02;letter-spacing:-.055em;margin:12px 0;max-width:960px}
.ap-legal-hero p{color:var(--hg-muted);font-size:16px;line-height:1.6;max-width:820px;margin:0}
.ap-legal-updated{display:inline-flex;margin-top:16px;padding:8px 12px;border-radius:999px;color:#cfd6ff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);font-size:12px;font-weight:900}
.ap-legal-layout{width:min(1120px,calc(100vw - 48px));margin:0 auto;display:grid;grid-template-columns:260px minmax(0,1fr);gap:22px;align-items:start}
.ap-legal-toc{position:sticky;top:124px;display:grid;gap:10px;padding:18px;border-radius:22px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.10)}
.ap-legal-toc strong{color:#fff;margin-bottom:4px}.ap-legal-toc a{color:#aeb5d0;text-decoration:none;font-size:13px;line-height:1.35}.ap-legal-toc a:hover{color:var(--hg-accent-2)}
.ap-legal-content{display:grid;gap:18px}.ap-legal-contact-box,.ap-legal-section{border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.045);border-radius:22px}
.ap-legal-section{padding:clamp(20px,2.6vw,28px)}.ap-legal-section h2{color:#fff;font-size:clamp(22px,2.6vw,30px);line-height:1.05;letter-spacing:-.035em;margin:0 0 14px}
.ap-legal-section p,.ap-legal-section li{color:var(--hg-muted);line-height:1.68;font-size:15px}.ap-legal-section p:last-child,.ap-legal-section ul:last-child{margin-bottom:0}
.ap-legal-section a{color:var(--hg-accent-2);text-decoration:none;font-weight:800}.ap-legal-section a:hover{text-decoration:underline}.ap-legal-section ul{padding-left:1.2em}
.ap-legal-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ap-legal-link-grid a{display:grid;gap:6px;padding:16px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);text-decoration:none}.ap-legal-link-grid a strong{color:#fff}.ap-legal-link-grid a span{color:var(--hg-muted);line-height:1.45;font-size:13px}
.ap-legal-contact-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px}.ap-legal-contact-box strong{color:#fff}.ap-legal-contact-box p{color:var(--hg-muted);margin:6px 0 0}.ap-legal-contact-box a:not(.hg-btn){color:var(--hg-accent-2)}
@media(max-width:920px){.ap-legal-layout{grid-template-columns:1fr}.ap-legal-toc{position:static}.ap-legal-contact-box{grid-template-columns:1fr}}
@media(max-width:640px){.ap-legal-page{padding-top:72px}.ap-legal-hero,.ap-legal-layout{width:min(100% - 28px,1120px)}.ap-legal-hero{padding:22px}.ap-legal-hero h1{font-size:34px}.ap-legal-link-grid{grid-template-columns:1fr}}

/* Dynamic contact card shared by legal and technical static pages */
.ap-legal-contact-card strong{display:block;color:#fff;margin-bottom:8px}
.ap-legal-contact-card p{color:var(--hg-muted);margin:6px 0 0;line-height:1.55}
.ap-legal-contact-card a:not(.hg-btn){color:var(--hg-accent-2);text-decoration:none;font-weight:800}
.ap-legal-contact-card a:not(.hg-btn):hover{text-decoration:underline}


/* Static-page safe dynamic contact placeholder */
.ap-legal-contact-card[data-ap-legal-contact-dynamic] {
    min-height: 96px;
}

/* ProLedger light-theme accessibility overrides. This stylesheet can be
   injected by a static DLE page after the global brand layer. */
.ap-legal-hero,
.ap-legal-toc,
.ap-legal-section,
.ap-legal-contact-box,
.ap-legal-contact-card,
.ap-legal-link-grid a {
    color: var(--pl-text, #173735);
    background: var(--pl-surface, #fff);
    border-color: var(--pl-line, #cfe2de);
    box-shadow: 0 10px 34px rgba(11, 36, 36, .055);
}

.ap-legal-hero h1,
.ap-legal-toc strong,
.ap-legal-section h2,
.ap-legal-link-grid a strong,
.ap-legal-contact-box strong,
.ap-legal-contact-card strong {
    color: var(--pl-ink, #0b2424);
}

.ap-legal-hero p,
.ap-legal-toc a,
.ap-legal-section :where(p, li),
.ap-legal-link-grid a span,
.ap-legal-contact-box p,
.ap-legal-contact-card p {
    color: var(--pl-muted, #4f6864);
}

.ap-legal-updated {
    color: var(--pl-link, #0b766d);
    background: var(--pl-accent-pale, #dcf8f3);
    border-color: var(--pl-line, #cfe2de);
}

.ap-legal-section a,
.ap-legal-contact-box a:not(.hg-btn),
.ap-legal-contact-card a:not(.hg-btn) {
    color: var(--pl-link, #0b766d);
}
.ap-legal-contact-card[data-ap-legal-contact-dynamic] p {
    color: var(--hg-muted);
}
