/* ── xM-Flow legal pages — shared styling ── */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#080b18;--bg2:#0e1020;--bg3:#131625;
  --fg:#eceaf5;--fg2:#b3b0c2;--fg3:#7a7790;
  --accent:#7c6fff;--accent2:#a594ff;--gold:#c4a46b;
  --accent-border:rgba(124,111,255,0.26);
  --line:rgba(236,233,245,0.08);--line2:rgba(236,233,245,0.14);
  --display:'Barlow',sans-serif;--sans:'DM Sans',sans-serif;--mono:'Sora',sans-serif;
}
html{scroll-behavior:smooth}
body{
  background:var(--bg);color:var(--fg);font-family:var(--sans);
  line-height:1.8;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
a{color:var(--accent2);text-decoration:none}
a:hover{text-decoration:underline}
img{display:block;max-width:100%}

/* background */
.bg-orbs{
  position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(ellipse 90% 50% at 50% -5%, rgba(124,111,255,0.08) 0%, transparent 60%),
    radial-gradient(ellipse 50% 40% at 96% 100%, rgba(196,164,107,0.04) 0%, transparent 50%);
}
body::before{
  content:'';position:fixed;left:0;right:0;top:0;height:1px;z-index:99;pointer-events:none;
  background:linear-gradient(90deg,transparent 5%,rgba(124,111,255,0.55),rgba(196,164,107,0.25),transparent 95%);
}

/* header */
header{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:1rem clamp(1.2rem,5vw,3rem);
  background:rgba(8,11,24,0.82);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-bottom:0.5px solid var(--line);
}
.logo-img{height:30px;width:auto;display:block;transform:translateY(10%)}
.back-link{
  font-family:var(--mono);font-size:0.66rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--fg3);
  border:0.5px solid var(--line2);border-radius:100px;padding:0.42rem 1rem;
  transition:color .2s,border-color .2s;
}
.back-link:hover{color:var(--accent2);border-color:var(--accent-border);text-decoration:none}

/* document body */
main{position:relative;z-index:1;max-width:820px;margin:0 auto;padding:clamp(2.5rem,6vw,5rem) clamp(1.3rem,5vw,2rem) 4rem}
.doc-label{
  font-family:var(--mono);font-size:0.62rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--accent2);
  margin-bottom:1rem;display:flex;align-items:center;gap:.55rem;
}
.doc-label::before{content:'';width:18px;height:1px;background:var(--accent2);opacity:.5}
h1{font-family:var(--display);font-weight:800;font-size:clamp(2rem,5vw,3rem);letter-spacing:-0.02em;line-height:1.1;margin-bottom:1rem}
.doc-meta{font-size:0.85rem;color:var(--fg3);margin-bottom:2.5rem;padding-bottom:1.6rem;border-bottom:0.5px solid var(--line)}
.doc-meta b{color:var(--fg2);font-weight:500}
.intro{font-size:1.04rem;color:var(--fg2);margin-bottom:2.5rem}
.intro b{color:var(--fg);font-weight:500}

/* table of contents */
.toc{background:var(--bg2);border:0.5px solid var(--line);border-radius:14px;padding:1.4rem 1.6rem;margin-bottom:3rem}
.toc-title{font-family:var(--mono);font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--fg3);margin-bottom:0.9rem}
.toc ol{list-style:none;counter-reset:toc;columns:2;column-gap:2rem}
.toc li{counter-increment:toc;font-size:0.9rem;margin-bottom:0.5rem;break-inside:avoid}
.toc li::before{content:counter(toc) ". ";color:var(--accent2);font-family:var(--mono);font-size:0.78rem}
.toc a{color:var(--fg2)}
.toc a:hover{color:var(--accent2)}

/* sections */
section{margin-bottom:2.6rem;scroll-margin-top:90px}
h2{
  font-family:var(--display);font-weight:700;font-size:clamp(1.3rem,2.6vw,1.7rem);letter-spacing:-0.01em;
  margin-bottom:1rem;padding-top:0.4rem;display:flex;gap:0.7rem;align-items:baseline;
}
h2 .num{font-family:var(--mono);font-size:0.95rem;color:var(--accent2);font-weight:500}
h3{font-family:var(--display);font-weight:600;font-size:1.06rem;color:var(--fg);margin:1.6rem 0 0.6rem}
p{margin-bottom:1rem;color:var(--fg2)}
strong{color:var(--fg);font-weight:600}
ul{margin:0 0 1rem 1.2rem;color:var(--fg2)}
ul li{margin-bottom:0.5rem}
.callout{
  background:rgba(124,111,255,0.06);border:0.5px solid var(--accent-border);border-left:2px solid var(--accent);
  border-radius:10px;padding:1.1rem 1.3rem;margin:1.4rem 0;font-size:0.95rem;color:var(--fg2);
}
.callout b{color:var(--fg)}
table{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:0.9rem}
th,td{text-align:left;padding:0.7rem 0.8rem;border-bottom:0.5px solid var(--line);vertical-align:top}
th{font-family:var(--mono);font-size:0.62rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--fg3)}
td{color:var(--fg2)}

/* footer */
footer{
  position:relative;z-index:1;border-top:0.5px solid var(--line);
  padding:2.2rem clamp(1.3rem,5vw,3rem);text-align:center;color:var(--fg3);font-size:0.8rem;
  display:flex;flex-direction:column;gap:0.8rem;align-items:center;
}
.footer-links{display:flex;gap:1.3rem;flex-wrap:wrap;justify-content:center}
.footer-links a{color:var(--fg3)}
.footer-links a:hover{color:var(--fg2)}

@media(max-width:600px){.toc ol{columns:1}}
