/* Legal pages — shared styles */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --void:#02040a;--panel:#080d1f;
  --purple:#7c3aed;--violet:#a855f7;--lavender:#c4b5fd;
  --blue:#3b82f6;--cyan:#06b6d4;--pink:#ec4899;
  --green:#10b981;--text:#f1f5f9;--t2:#94a3b8;--t3:#475569;
  --border:rgba(168,85,247,.18);
}
html{scroll-behavior:smooth}
body{background:var(--void);color:var(--text);font-family:'Space Grotesk',sans-serif;line-height:1.7;overflow-x:hidden;min-height:100vh}
::selection{background:rgba(168,85,247,.3)}
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-thumb{background:rgba(168,85,247,.3);border-radius:6px}

/* Cosmic background */
body::before{
  content:'';position:fixed;inset:0;z-index:-2;
  background:
    radial-gradient(ellipse 60% 40% at 80% 20%,rgba(124,58,237,.08),transparent 60%),
    radial-gradient(ellipse 50% 50% at 10% 70%,rgba(59,130,246,.06),transparent 60%),
    radial-gradient(ellipse 40% 30% at 90% 90%,rgba(236,72,153,.05),transparent 60%);
}

/* Top nav */
.lnav{
  position:sticky;top:0;z-index:100;
  background:rgba(2,4,10,.85);backdrop-filter:blur(20px) saturate(1.4);
  border-bottom:1px solid rgba(168,85,247,.12);
  padding:14px 32px;display:flex;align-items:center;justify-content:space-between;
}
.lnav-logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.lnav-mark{
  width:36px;height:36px;border-radius:10px;
  background:linear-gradient(135deg,#7c3aed,#3b82f6);
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 20px rgba(124,58,237,.5);
}
.lnav-mark svg{width:20px;height:20px}
.lnav-t{font-family:'Orbitron',sans-serif;font-size:12px;font-weight:800;color:#f1f5f9;letter-spacing:.12em}
.lnav-s{font-size:9px;color:var(--t3);letter-spacing:.2em;margin-top:2px}
.lnav-back{
  padding:8px 18px;border-radius:20px;
  background:rgba(168,85,247,.08);border:1px solid rgba(168,85,247,.25);
  color:var(--lavender);text-decoration:none;font-size:12px;font-weight:600;
  transition:all .25s;
}
.lnav-back:hover{background:rgba(168,85,247,.15);border-color:#a855f7;transform:translateX(-3px)}

/* Layout */
.lwrap{display:grid;grid-template-columns:240px 1fr;gap:48px;max-width:1180px;margin:48px auto;padding:0 32px}
@media(max-width:880px){.lwrap{grid-template-columns:1fr;gap:24px}}

/* Sidebar TOC */
.ltoc{position:sticky;top:96px;align-self:start;height:fit-content}
.ltoc-title{font-family:'Orbitron',sans-serif;font-size:10px;letter-spacing:.18em;color:var(--t3);font-weight:700;margin-bottom:12px;padding-left:12px}
.ltoc nav{display:flex;flex-direction:column;gap:2px}
.ltoc a{
  padding:8px 14px;border-radius:10px;
  color:var(--t2);text-decoration:none;font-size:12.5px;
  border-left:2px solid transparent;
  transition:all .2s;
}
.ltoc a:hover{color:#fff;background:rgba(168,85,247,.06)}
.ltoc a.act{color:var(--lavender);background:rgba(168,85,247,.1);border-left-color:var(--violet)}

.ltoc-tabs{display:flex;flex-direction:column;gap:2px;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid rgba(168,85,247,.1)}
.ltoc-tabs a{
  padding:9px 14px;border-radius:10px;color:var(--t3);text-decoration:none;font-size:12px;font-weight:500;
  display:flex;align-items:center;gap:9px;transition:all .2s;
}
.ltoc-tabs a:hover{color:#c4b5fd;background:rgba(168,85,247,.05)}
.ltoc-tabs a.cur{background:rgba(168,85,247,.1);color:#fff}
.ltoc-tabs a .dot{width:6px;height:6px;border-radius:50%;background:rgba(168,85,247,.3)}
.ltoc-tabs a.cur .dot{background:var(--violet);box-shadow:0 0 8px var(--violet)}

/* Article */
.lart{max-width:760px}
.lart-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:5px 14px;border-radius:20px;background:rgba(168,85,247,.08);border:1px solid rgba(168,85,247,.2);font-size:10px;font-weight:700;letter-spacing:.15em;color:var(--lavender);margin-bottom:18px}
.lart-eyebrow .d{width:5px;height:5px;border-radius:50%;background:var(--violet);animation:dot 2s infinite}
@keyframes dot{0%,100%{opacity:1}50%{opacity:.3}}
.lart h1{
  font-family:'Orbitron',sans-serif;font-size:clamp(28px,4vw,44px);font-weight:900;line-height:1.1;
  background:linear-gradient(135deg,#f1f5f9 0%,#c4b5fd 60%,#7c3aed 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  margin-bottom:14px;
}
.lart-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:11.5px;color:var(--t3);margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid rgba(168,85,247,.1);font-family:'JetBrains Mono',monospace}
.lart-meta span strong{color:#c4b5fd;font-weight:600}
.lart h2{
  font-family:'Orbitron',sans-serif;font-size:20px;font-weight:800;
  margin:48px 0 16px;color:#f1f5f9;
  scroll-margin-top:90px;
}
.lart h2::before{content:'§ ';color:var(--violet);font-family:inherit}
.lart h3{font-size:15px;font-weight:700;color:#c4b5fd;margin:24px 0 10px;font-family:'Space Grotesk',sans-serif}
.lart p{font-size:14.5px;color:var(--t2);margin-bottom:14px;line-height:1.85}
.lart strong{color:#e2e8f0;font-weight:600}
.lart em{color:var(--lavender);font-style:normal;font-weight:500}
.lart a{color:var(--lavender);text-decoration:none;border-bottom:1px dashed rgba(196,181,253,.3);transition:all .2s}
.lart a:hover{color:#fff;border-bottom-style:solid}
.lart ul,.lart ol{margin:14px 0 18px 22px;color:var(--t2)}
.lart li{font-size:14px;margin-bottom:8px;line-height:1.75}
.lart li::marker{color:var(--violet)}

.lcallout{
  margin:24px 0;padding:16px 20px;border-radius:12px;
  background:linear-gradient(135deg,rgba(168,85,247,.06),rgba(59,130,246,.04));
  border:1px solid rgba(168,85,247,.2);
  border-left:3px solid var(--violet);
  font-size:13.5px;line-height:1.8;color:var(--t2);
}
.lcallout strong{color:#c4b5fd}
.lcallout-warn{border-left-color:#f59e0b;background:linear-gradient(135deg,rgba(245,158,11,.06),rgba(251,191,36,.04));border-color:rgba(245,158,11,.25)}

.ltable{width:100%;margin:18px 0;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;border:1px solid rgba(168,85,247,.15);background:rgba(8,13,31,.5)}
.ltable th,.ltable td{padding:11px 14px;font-size:12.5px;text-align:left;border-bottom:1px solid rgba(168,85,247,.08)}
.ltable th{background:rgba(168,85,247,.08);font-family:'Orbitron',sans-serif;font-weight:700;color:#c4b5fd;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase}
.ltable tr:last-child td{border-bottom:0}
.ltable td{color:var(--t2)}
.ltable td strong{color:#f1f5f9}

/* Compliance badges row */
.lbadges{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 8px}
.lbadge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;background:rgba(16,185,129,.08);border:1px solid rgba(16,185,129,.22);font-size:11px;color:#6ee7b7;font-weight:600}

/* Foot */
.lfoot{margin-top:64px;padding:24px;background:linear-gradient(135deg,rgba(168,85,247,.06),rgba(59,130,246,.04));border:1px solid rgba(168,85,247,.18);border-radius:16px;text-align:center}
.lfoot-t{font-family:'Orbitron',sans-serif;font-size:14px;color:#c4b5fd;margin-bottom:6px}
.lfoot-d{font-size:13px;color:var(--t2)}
.lfoot a{color:var(--lavender);text-decoration:none;font-weight:600}

.lcopy{text-align:center;color:var(--t3);font-size:11px;padding:32px;border-top:1px solid rgba(168,85,247,.08);margin-top:48px;letter-spacing:.04em}
.lcopy a{color:var(--t3);text-decoration:none;margin:0 10px;transition:color .2s}
.lcopy a:hover{color:#c4b5fd}
