/* FlowSmart Suite legal documents */
:root{
  --paper:#FDFDFB; --card:#FFFFFF; --sunk:#F4F5F2;
  --ink:#14181C; --ink-2:#444D56; --ink-3:#737D86;
  --rule:#E3E5E1; --rule-2:#CDD1CB;
  --key:#0471FE; --key-soft:#EBF2FF; --key-line:#BFD6FF;
  --flag:#8A5A12; --flag-soft:#FBF2E2; --flag-line:#EAD9B6;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --paper:#0E1113; --card:#151A1D; --sunk:#1A2024;
    --ink:#E9EDEF; --ink-2:#A8B2B9; --ink-3:#79838A;
    --rule:#242B2F; --rule-2:#333C41;
    --key:#5CA0FF; --key-soft:#0E2240; --key-line:#1D3A62;
    --flag:#D7A355; --flag-soft:#2A2213; --flag-line:#4A3C1D;
  }
}
:root[data-theme="dark"]{
  --paper:#0E1113; --card:#151A1D; --sunk:#1A2024;
  --ink:#E9EDEF; --ink-2:#A8B2B9; --ink-3:#79838A;
  --rule:#242B2F; --rule-2:#333C41;
  --key:#5CA0FF; --key-soft:#0E2240; --key-line:#1D3A62;
  --flag:#D7A355; --flag-soft:#2A2213; --flag-line:#4A3C1D;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:"Source Serif 4",Georgia,"Times New Roman",serif;
  font-size:17.5px; line-height:1.62;
  padding:0 20px 80px;
}
.wrap{max-width:720px;margin:0 auto}
a{color:var(--key)}
a:focus-visible{outline:2px solid var(--key);outline-offset:2px}

/* masthead */
.top{padding-block:26px 0}
.top a.back{display:inline-flex;align-items:center;gap:8px;font-family:"IBM Plex Sans",system-ui,sans-serif;
  font-size:13.5px;font-weight:600;color:var(--ink-3);text-decoration:none}
.top a.back:hover{color:var(--key)}
header.doc{padding-block:30px 26px;border-bottom:1px solid var(--rule);margin-bottom:34px}
.kicker{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:11px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin:0 0 14px}
h1{font-size:clamp(28px,5vw,38px);line-height:1.15;letter-spacing:-.015em;margin:0;text-wrap:balance}
.sub{font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:14.5px;color:var(--ink-2);margin:14px 0 0}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.tag{font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:11.5px;font-weight:600;letter-spacing:.06em;
  text-transform:uppercase;border-radius:5px;padding:4px 9px;background:var(--sunk);color:var(--ink-2);
  border:1px solid var(--rule)}
.tag.draft{background:var(--flag-soft);color:var(--flag);border-color:var(--flag-line)}
.tag.live{background:var(--key-soft);color:var(--key);border-color:var(--key-line)}

/* the draft warning */
.notice{background:var(--flag-soft);border:1px solid var(--flag-line);border-radius:10px;
  padding:18px 20px;margin:0 0 34px;font-family:"IBM Plex Sans",system-ui,sans-serif;
  font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.notice b{color:var(--ink);font-weight:600}
.notice p{margin:0}
.notice p + p{margin-top:9px}

/* contents */
nav.toc{background:var(--sunk);border:1px solid var(--rule);border-radius:10px;padding:18px 22px;margin-bottom:38px}
nav.toc p{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:10.5px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin:0 0 10px}
nav.toc ol{margin:0;padding-left:1.4em;font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:14.5px;
  display:grid;gap:5px}
nav.toc a{text-decoration:none;color:var(--ink-2)}
nav.toc a:hover{color:var(--key);text-decoration:underline}

/* body */
h2{font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:20px;font-weight:650;letter-spacing:-.01em;
  margin:40px 0 12px;scroll-margin-top:20px;text-wrap:balance}
h2 .n{color:var(--ink-3);font-weight:600;margin-right:.5em;font-variant-numeric:tabular-nums}
h3{font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:16px;font-weight:650;margin:28px 0 8px}
p{margin:0 0 14px}
ol.cl,ul.cl{margin:0 0 16px;padding-left:1.5em;display:flex;flex-direction:column;gap:9px}
li::marker{color:var(--ink-3)}
strong,b{font-weight:600}

/* tables */
.tw{overflow-x:auto;margin:0 0 20px;border:1px solid var(--rule);border-radius:10px}
table{border-collapse:collapse;width:100%;font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:14.5px}
th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--rule);vertical-align:top}
th{background:var(--sunk);font-weight:650;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2)}
tr:last-child td{border-bottom:0}
td.num{font-variant-numeric:tabular-nums;white-space:nowrap}

/* open point */
.open{border-left:3px solid var(--flag-line);background:var(--flag-soft);padding:12px 16px;border-radius:0 8px 8px 0;
  font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:14px;color:var(--ink-2);margin:0 0 20px}
.open b{color:var(--flag)}

footer{margin-top:54px;padding-top:24px;border-top:1px solid var(--rule);
  font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:13.5px;color:var(--ink-3)}
footer p{margin:0 0 6px}

/* index */
.docs{display:grid;gap:12px;margin:0 0 34px;padding:0;list-style:none}
.docs li{margin:0}
.docs a.row{display:block;background:var(--card);border:1px solid var(--rule);border-radius:11px;
  padding:18px 20px;text-decoration:none;color:inherit}
.docs a.row:hover{border-color:var(--key-line);background:var(--key-soft)}
.docs .t{font-family:"IBM Plex Sans",system-ui,sans-serif;font-weight:650;font-size:16.5px;color:var(--ink);
  display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.docs .d{display:block;font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:14px;color:var(--ink-2);margin-top:5px}
.sect{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:10.5px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--ink-3);margin:34px 0 12px}

@media print{
  body{background:#fff;color:#000;font-size:11pt;padding:0}
  .top,nav.toc{display:none}
  a{color:#000;text-decoration:none}
  h2{page-break-after:avoid}
}
