/* Shared styling for COMMARKAI legal pages. Matches the v3 site:
   warm cream ground, Montserrat only, no monospace, no bordered cards. */
:root{
  --cream:#F3F7FC;
  --band:#E6EEF8;
  --white:#FFFFFF;
  --ink:#17151E;
  --ink-2:#56505F;
  --ink-3:#8E8896;
  --purple:#6B5FA9;
  --purple-deep:#493D7A;
  --hi:#FFE500;
  --hi-wash:#FFF7B8;
  --lift:0 1px 2px rgba(23,21,30,.04), 0 6px 16px -6px rgba(23,21,30,.10);
  --f:"Montserrat","Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:var(--cream);color:var(--ink);
  font-family:var(--f);font-size:16.5px;line-height:1.72;letter-spacing:-.008em;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{margin:0;text-wrap:balance;font-weight:700;letter-spacing:-.032em;line-height:1.14}
p{margin:0}
a{color:var(--purple-deep)}
:focus-visible{outline:2px solid var(--purple);outline-offset:4px;border-radius:5px}

.wrap{max-width:780px;margin:0 auto;padding-inline:clamp(20px,5vw,32px)}

/* header */
.top{padding-block:clamp(26px,4vw,40px) 0}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink)}
.brand img{width:30px;height:30px;display:block}
.brand b{font-weight:700;font-size:18px;letter-spacing:-.04em}
.brand span{font-size:13px;font-weight:500;color:var(--ink-3);letter-spacing:-.015em;padding-left:10px;box-shadow:inset 1px 0 0 rgba(23,21,30,.16)}
@media (max-width:480px){.brand span{display:none}}

h1{font-size:clamp(30px,5.6vw,46px);font-weight:800;letter-spacing:-.04em;margin-top:clamp(30px,5vw,48px)}
.meta{margin-top:18px;font-size:14.5px;color:var(--ink-3);padding-bottom:26px;box-shadow:inset 0 -1px 0 rgba(23,21,30,.10)}
.meta b{color:var(--ink-2);font-weight:600}

.intro{margin-top:26px;font-size:17.5px;color:var(--ink-2);line-height:1.66}

/* body */
main{padding-bottom:clamp(60px,9vw,110px)}
section{margin-top:clamp(34px,5vw,48px);scroll-margin-top:20px}
h2{font-size:clamp(19px,2.6vw,23px);margin-bottom:14px}
h2 .n{color:var(--purple);font-weight:700;margin-right:10px}
h3{font-size:16.5px;margin-top:24px;margin-bottom:8px;font-weight:700}
section p{margin-top:14px;color:var(--ink-2)}
ul{margin:14px 0 0;padding-left:22px;color:var(--ink-2)}
li{margin-bottom:9px}
strong{color:var(--ink);font-weight:600}

/* table */
.tw{overflow-x:auto;margin-top:20px}
table{border-collapse:collapse;width:100%;min-width:440px;font-size:15px}
th{
  text-align:left;font-size:13px;font-weight:700;color:var(--ink-3);
  padding:10px 14px 10px 0;box-shadow:inset 0 -1px 0 rgba(23,21,30,.14);white-space:nowrap;
}
td{padding:12px 14px 12px 0;color:var(--ink-2);vertical-align:top;box-shadow:inset 0 -1px 0 rgba(23,21,30,.07)}
td:first-child{color:var(--ink);font-weight:600}

/* callout */
.note{
  background:var(--white);border-radius:14px;padding:18px 22px;margin-top:22px;
  box-shadow:var(--lift);
}
.note.flag{background:var(--hi-wash)}
.note .lbl{font-size:13px;font-weight:700;color:var(--ink)}
.note p{margin-top:8px;font-size:15.5px}

/* placeholder that must not ship */
.todo{
  background:#FFF3CD;color:#7A5B00;font-weight:700;
  padding:2px 8px;border-radius:5px;font-size:.92em;
}

/* contents */
.toc{background:var(--white);border-radius:14px;padding:20px 24px;margin-top:30px;box-shadow:var(--lift)}
.toc h2{font-size:13px;color:var(--ink-3);font-weight:700;letter-spacing:0;margin-bottom:12px}
.toc ol{margin:0;padding-left:20px;columns:2;column-gap:28px}
@media (max-width:620px){.toc ol{columns:1}}
.toc li{margin-bottom:6px;break-inside:avoid;font-size:14.5px}
.toc a{text-decoration:none}
.toc a:hover{text-decoration:underline}

/* footer */
footer{background:var(--ink);color:var(--cream);padding-block:40px 30px;margin-top:auto}
.fin{max-width:780px;margin:0 auto;padding-inline:clamp(20px,5vw,32px)}
.flinks{display:flex;gap:20px;flex-wrap:wrap}
.flinks a{color:rgba(243,247,252,.82);text-decoration:none;font-size:14.5px}
.flinks a:hover{color:#fff}
.fbot{margin-top:26px;padding-top:20px;box-shadow:inset 0 1px 0 rgba(243,247,252,.16);font-size:13.5px;color:rgba(243,247,252,.55)}
