/* Formato de las páginas legales: mismo diseño que el CRM (tema oscuro por defecto, claro si el sistema lo pide). */
:root { color-scheme: dark light; --app-bg:#07070f; --surface:#0d0d1a; --border:#1d1d36; --text:#dde0f0; --muted:#8b92a8; --primary:#6366f1; --primary-text:#a5a8ff; --ghost:#161628; }
@media (prefers-color-scheme: light) { :root { --app-bg:#f4f5fa; --surface:#ffffff; --border:#e2e5f0; --text:#161a2e; --muted:#5b6479; --primary:#4f46e5; --primary-text:#4338ca; --ghost:#eef0f8; } }
* { box-sizing:border-box; }
html { background:var(--app-bg); }
body { margin:0; min-height:100dvh; background:var(--app-bg); color:var(--text); font:14px/1.7 "DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
.topbar { position:sticky; top:0; z-index:10; display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; padding:12px 24px; background:var(--surface); border-bottom:1px solid var(--border); }
.brand small { display:block; font-size:9px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--primary-text); }
.brand strong { display:block; font-size:19px; font-weight:900; letter-spacing:-.5px; line-height:1.2; }
.btn { display:inline-flex; align-items:center; gap:6px; padding:8px 16px; border-radius:8px; border:1px solid var(--border); background:var(--ghost); color:var(--text); font-weight:700; font-size:12px; text-decoration:none; }
.btn:hover { border-color:var(--primary); }
.btn.primary { background:var(--primary); border-color:var(--primary); color:#fff; }
main { max-width:820px; margin:0 auto; padding:28px 16px 48px; }
.card { background:var(--surface); border:1px solid var(--border); border-radius:12px; padding:28px 28px 32px; }
h1 { font-size:26px; font-weight:900; letter-spacing:-.5px; margin:0 0 4px; }
h2 { font-size:15px; font-weight:800; margin:28px 0 8px; padding-top:18px; border-top:1px solid var(--border); }
p, li { color:var(--text); }
.muted { color:var(--muted); font-size:12px; }
a { color:var(--primary-text); }
a.btn { color:var(--text); } a.btn.primary { color:#fff; }
ol, ul { padding-left:22px; }
.box { background:var(--app-bg); border:1px solid var(--border); border-radius:10px; padding:12px 16px; }
table { border-collapse:collapse; width:100%; }
th, td { text-align:left; padding:8px 10px; border-bottom:1px solid var(--border); vertical-align:top; }
th { font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:var(--muted); }
.bottom { display:flex; gap:10px; flex-wrap:wrap; justify-content:space-between; align-items:center; margin-top:24px; }
.links { display:flex; gap:16px; flex-wrap:wrap; font-size:12px; }
@media (max-width:600px) { .topbar { padding:10px 16px; } .card { padding:20px 18px 24px; } }
