
/* FireSonic Documentation — scoped to Docs only */
.docs-page { background:#fff; }
.docs-page .docs-page-hero,
.docs-page .docs-landing-hero { background:linear-gradient(135deg,#fff,#f4f9fe); border-bottom:1px solid var(--line); }
.docs-page .docs-page-hero { padding:48px 0 42px; }
.docs-page .docs-landing-hero { padding:70px 0 62px; }
.docs-page .docs-page-hero h1,
.docs-page .docs-landing-hero h1 { margin:10px 0 10px; color:var(--navy); letter-spacing:-.035em; line-height:1.08; }
.docs-page .docs-page-hero h1 { font-size:clamp(34px,4vw,50px); }
.docs-page .docs-landing-hero h1 { font-size:clamp(40px,4.8vw,60px); }
.docs-page .docs-page-hero p,
.docs-page .docs-landing-hero p { margin:0; max-width:900px; color:var(--muted); font-size:17px; }
.docs-page .docs-shell { display:grid; grid-template-columns:248px minmax(0,1fr) 190px; gap:34px; padding:42px 0 90px; align-items:start; }
.docs-page .docs-sidebar { position:sticky; top:94px; max-height:calc(100vh - 112px); overflow:auto; padding-right:10px; scrollbar-width:thin; }
.docs-page .docs-home-link { display:block; margin-bottom:15px; color:var(--navy); font-size:14px; font-weight:850; }
.docs-page .docs-nav-group { margin:0 0 18px; }
.docs-page .docs-nav-group h4 { margin:0 0 6px; color:#8a9caf; font-size:10px; text-transform:uppercase; letter-spacing:.13em; }
.docs-page .docs-nav-group a { display:block; padding:5px 9px; margin:1px 0; border-radius:7px; color:#52677e; font-size:12.5px; line-height:1.35; }
.docs-page .docs-nav-group a:hover { background:#f4f8fc; color:var(--blue); }
.docs-page .docs-nav-group a.active { background:#edf6ff; color:var(--blue); font-weight:800; }
.docs-page .docs-content { min-width:0; max-width:850px; }
.docs-page .docs-content > p:first-child { margin-top:0; font-size:16px; color:#4d627b; }
.docs-page .docs-content h2 { margin:42px 0 12px; color:var(--navy); font-size:27px; line-height:1.2; letter-spacing:-.025em; scroll-margin-top:100px; }
.docs-page .docs-content h3 { margin:28px 0 10px; color:var(--navy); font-size:19px; scroll-margin-top:100px; }
.docs-page .docs-content p { color:#4f637a; }
.docs-page .docs-content code:not(.docs-code code) { padding:.08em .35em; border-radius:5px; background:#f1f5f9; color:#2a5b8e; font: .9em ui-monospace,SFMono-Regular,Consolas,monospace; }
.docs-page .docs-toc { position:sticky; top:100px; border-left:1px solid var(--line); padding-left:17px; }
.docs-page .docs-toc h4 { margin:0 0 9px; color:var(--navy); font-size:11px; }
.docs-page .docs-toc a { display:block; padding:4px 0; color:#708298; font-size:11.5px; line-height:1.35; }
.docs-page .docs-toc a:hover { color:var(--blue); }
.docs-page .docs-toc a.toc-sub { padding-left:10px; font-size:11px; }
.docs-page .toc-empty { color:#8b9caf; font-size:11px; }
.docs-page .docs-table-wrap { margin:18px 0 24px; overflow:auto; border:1px solid var(--line); border-radius:12px; background:#fff; }
.docs-page .docs-table-wrap table { min-width:640px; margin:0; }
.docs-page .docs-table-wrap th { padding:10px 13px; background:#f6f9fc; color:#455970; font-size:11.5px; }
.docs-page .docs-table-wrap td { padding:10px 13px; color:#52677e; font-size:12px; line-height:1.5; vertical-align:top; }
.docs-page .docs-code { margin:16px 0 22px; padding:16px 18px; overflow:auto; border-radius:11px; background:#0c1f35; color:#d9e8f7; font:12px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace; }
.docs-page .docs-callout { margin:18px 0 24px; padding:15px 17px; border:1px solid #d7e4ef; border-left:4px solid var(--blue); border-radius:0 11px 11px 0; background:#f3f8fd; }
.docs-page .docs-callout strong { display:block; color:var(--navy); font-size:13px; }
.docs-page .docs-callout p { margin:4px 0 0; font-size:12.5px; line-height:1.55; }
.docs-page .docs-callout.warning { border-left-color:var(--orange); background:#fff7ef; }
.docs-page .docs-callout.security { border-left-color:var(--green); background:#f1faf6; }
.docs-page .docs-callout.commercial { border-left-color:var(--purple); background:#f7f4ff; }
.docs-page .docs-bullets { margin:12px 0 22px; padding-left:21px; }
.docs-page .docs-bullets li { margin:5px 0; color:#4f637a; }
.docs-page .docs-steps { margin:12px 0 22px; padding-left:22px; }
.docs-page .docs-steps li { margin:7px 0; color:#4f637a; }
.docs-page .docs-feature-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:18px 0 28px; }
.docs-page .docs-feature-grid > div { padding:16px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.docs-page .docs-feature-grid strong { display:block; color:var(--navy); font-size:13px; }
.docs-page .docs-feature-grid span { display:block; margin-top:4px; color:var(--muted); font-size:12px; line-height:1.5; }
.docs-page .code-list { margin:15px 0 24px; padding:15px 17px; border:1px solid var(--line); border-radius:11px; background:#f8fbfe; color:#405a75; font:12px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace; }
.docs-page .edition-badge { display:inline-flex; align-items:center; width:max-content; padding:4px 8px; border-radius:999px; font-size:10px; line-height:1.2; font-weight:850; white-space:nowrap; }
.docs-page .edition-commercial { color:#5d45b8; background:#eeeaff; border:1px solid #dbd3ff; }
.docs-page .edition-standard { color:#0b7b55; background:#eaf8f2; border:1px solid #cfeee0; }
.docs-page .edition-limit { color:#9b6710; background:#fff6e7; border:1px solid #f0ddb6; }
.docs-page .edition-legend { display:grid; gap:10px; margin:16px 0 20px; }
.docs-page .edition-legend > div { display:flex; align-items:center; gap:10px; color:#566c84; font-size:12px; }
.docs-page .availability-table td:nth-child(2) { white-space:nowrap; }
.docs-page .flow-diagram { display:flex; align-items:stretch; gap:8px; margin:20px 0 28px; overflow-x:auto; padding:4px 2px 10px; }
.docs-page .flow-diagram > div { min-width:125px; flex:1 0 125px; padding:15px 12px; border:1px solid #dce6f0; border-radius:12px; background:#fff; text-align:center; }
.docs-page .flow-diagram > div b { width:24px; height:24px; margin:0 auto 7px; display:grid; place-items:center; border-radius:50%; background:#edf6ff; color:var(--blue); font-size:10px; }
.docs-page .flow-diagram strong { display:block; color:var(--navy); font-size:12px; }
.docs-page .flow-diagram span { display:block; margin-top:4px; color:var(--muted); font-size:10.5px; line-height:1.4; }
.docs-page .flow-diagram i { align-self:center; color:#6886a5; font-style:normal; font-size:18px; }
.docs-page .flow-diagram .hook-box { background:#f7f4ff; border-color:#ded5fb; }
.docs-page .flow-diagram .flow-success { background:#f0faf6; border-color:#cfeadb; }
.docs-page .recovery-diagram { margin:18px 0 28px; padding:20px; border:1px solid var(--line); border-radius:13px; background:#fbfdff; }
.docs-page .recovery-main { display:flex; justify-content:center; align-items:center; gap:12px; }
.docs-page .recovery-main span { padding:10px 14px; border:1px solid #dbe6ef; border-radius:10px; background:#fff; color:var(--navy); font-size:12px; font-weight:800; }
.docs-page .recovery-main .error-box { color:#b43d35; background:#fff1ef; border-color:#efcdc8; }
.docs-page .recovery-return { margin-top:12px; text-align:center; color:#6d8196; font-size:11px; }
.docs-page .docs-landing-content { padding:54px 0 85px; }
.docs-page .docs-home-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.docs-page .docs-hub-card { display:block; padding:30px; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 6px 20px rgba(15,38,67,.045); }
.docs-page .docs-hub-card:hover { transform:translateY(-2px); border-color:#cad9e7; box-shadow:var(--shadow-sm); }
.docs-page .docs-hub-kicker { color:var(--blue); font-size:11px; font-weight:850; text-transform:uppercase; letter-spacing:.12em; }
.docs-page .docs-hub-card h2 { margin:9px 0 8px; color:var(--navy); font-size:28px; }
.docs-page .docs-hub-card p { margin:0; color:var(--muted); }
.docs-page .docs-card-link { display:inline-block; margin-top:16px; color:var(--blue); font-size:13px; font-weight:800; }
.docs-page .docs-home-section { margin-top:52px; }
.docs-page .docs-home-section h2 { color:var(--navy); font-size:28px; }
.docs-page .docs-quick-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.docs-page .docs-quick-grid a { padding:17px; border:1px solid var(--line); border-radius:12px; background:#f9fbfd; }
.docs-page .docs-quick-grid strong { display:block; color:var(--navy); font-size:13px; }
.docs-page .docs-quick-grid span { display:block; margin-top:4px; color:var(--muted); font-size:11px; line-height:1.45; }
.docs-page .docs-inline-link { font-weight:750; }
@media(max-width:1100px){ .docs-page .docs-shell{grid-template-columns:220px minmax(0,1fr)} .docs-page .docs-toc{display:none} .docs-page .docs-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media(max-width:820px){ .docs-page .docs-shell{grid-template-columns:1fr;padding-top:24px} .docs-page .docs-sidebar{position:relative;top:0;max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fbfdff} .docs-page .docs-home-link{grid-column:1/-1;margin:0}.docs-page .docs-nav-group{margin:0}.docs-page .docs-home-grid{grid-template-columns:1fr}.docs-page .docs-feature-grid{grid-template-columns:1fr} }
@media(max-width:600px){ .docs-page .docs-page-hero{padding:38px 0 34px}.docs-page .docs-landing-hero{padding:46px 0 42px}.docs-page .docs-sidebar{grid-template-columns:1fr}.docs-page .docs-quick-grid{grid-template-columns:1fr}.docs-page .docs-table-wrap table{min-width:560px}.docs-page .docs-content h2{font-size:24px}.docs-page .docs-hub-card{padding:23px}.docs-page .docs-hub-card h2{font-size:24px} }

/* === Docs navigation/catalog/commercial/diagram v2 === */
.docs-page .docs-landing-hero { padding:48px 0 42px; }
.docs-page .docs-landing-content { padding:42px 0 86px; }
.docs-page .docs-home-first { margin-top:0; }
.docs-page .docs-section-intro { margin:5px 0 18px; color:var(--muted); font-size:14px; }

/* Quick-access cards: documentation, not marketing */
.docs-page .docs-quick-grid-six { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.docs-page .docs-quick-grid-six a { min-height:142px; padding:20px; background:#fff; box-shadow:0 2px 10px rgba(15,38,67,.025); }
.docs-page .docs-quick-grid-six .icon { width:27px; height:27px; margin-bottom:14px; color:var(--blue); }
.docs-page .docs-quick-grid-six strong { font-size:14px; }
.docs-page .docs-quick-grid-six span { margin-top:6px; font-size:12px; line-height:1.55; }

/* Docs Home full article catalog */
.docs-page .docs-all-docs { margin-top:58px; }
.docs-page .docs-commercial-key { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin:16px 0 22px; color:#64778d; font-size:12px; }
.docs-page .docs-commercial-key a { margin-left:3px; font-weight:750; }
.docs-page .docs-catalog { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
.docs-page details > summary { cursor:pointer; list-style:none; }
.docs-page details > summary::-webkit-details-marker { display:none; }
.docs-page .docs-catalog-section { border:1px solid var(--line); border-radius:16px; background:#fff; overflow:hidden; }
.docs-page .docs-catalog-section > summary { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:19px 20px; color:var(--navy); font-size:16px; font-weight:850; background:#f8fafc; }
.docs-page .docs-catalog-section > summary small { color:#8596a9; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.docs-page .docs-catalog-section > summary::before { content:'›'; order:3; color:#8091a5; font-size:22px; transform:rotate(0deg); transition:transform .18s ease; }
.docs-page .docs-catalog-section[open] > summary::before { transform:rotate(90deg); }
.docs-page .docs-catalog-section-body { padding:8px 16px 16px; }
.docs-page .docs-catalog-group { border-bottom:1px solid #edf1f5; }
.docs-page .docs-catalog-group:last-child { border-bottom:0; }
.docs-page .docs-catalog-group > summary { position:relative; padding:12px 24px 10px 4px; color:#314b67; font-size:12.5px; font-weight:800; }
.docs-page .docs-catalog-group > summary::after { content:'›'; position:absolute; right:6px; top:8px; color:#94a4b6; font-size:18px; transition:transform .18s ease; }
.docs-page .docs-catalog-group[open] > summary::after { transform:rotate(90deg); }
.docs-page .docs-catalog-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px 12px; padding:0 0 12px; }
.docs-page .docs-catalog-links a { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 10px; border-radius:8px; color:#52677e; font-size:12px; }
.docs-page .docs-catalog-links a:hover { background:#f3f8fd; color:var(--blue); }
.docs-page .docs-catalog-links b { color:#91a3b5; font-size:12px; font-weight:500; }

/* Expandable article navigation */
.docs-page .docs-sidebar { padding-right:12px; }
.docs-page .docs-home-link { margin-bottom:9px; font-size:14px; }
.docs-page .docs-nav-toplinks { display:grid; gap:2px; margin:0 0 15px; padding-bottom:13px; border-bottom:1px solid #edf1f5; }
.docs-page .docs-nav-toplinks a { padding:6px 9px; border-radius:7px; color:#61758b; font-size:12px; }
.docs-page .docs-nav-toplinks a:hover,.docs-page .docs-nav-toplinks a.active { background:#edf6ff; color:var(--blue); font-weight:800; }
.docs-page .docs-nav-section { margin:6px 0; }
.docs-page .docs-nav-section > summary { position:relative; padding:9px 30px 9px 10px; border-radius:9px; color:#263e59; font-size:12.5px; font-weight:850; text-transform:uppercase; letter-spacing:.07em; }
.docs-page .docs-nav-section > summary::after { content:'›'; position:absolute; right:10px; top:5px; color:#91a2b4; font-size:21px; transition:transform .18s ease; }
.docs-page .docs-nav-section[open] > summary { background:#f4f8fc; color:var(--blue); }
.docs-page .docs-nav-section[open] > summary::after { transform:rotate(90deg); }
.docs-page .docs-nav-section-body { padding:5px 0 7px 8px; }
.docs-page .docs-nav-subsection { margin:2px 0; }
.docs-page .docs-nav-subsection > summary { position:relative; padding:6px 28px 6px 10px; border-radius:7px; color:#52677e; font-size:11.5px; font-weight:750; }
.docs-page .docs-nav-subsection > summary::after { content:'›'; position:absolute; right:8px; top:2px; color:#a2afbd; font-size:18px; transition:transform .18s ease; }
.docs-page .docs-nav-subsection[open] > summary::after { transform:rotate(90deg); }
.docs-page .docs-nav-links { margin:1px 0 6px 8px; padding-left:7px; border-left:1px solid #e3eaf1; }
.docs-page .docs-nav-links a { display:block; padding:5px 8px; border-radius:7px; color:#61758b; font-size:11.5px; line-height:1.35; }
.docs-page .docs-nav-links a:hover { background:#f4f8fc; color:var(--blue); }
.docs-page .docs-nav-links a.active { background:#eaf4ff; color:var(--blue); font-weight:850; }

/* Only commercial-only capabilities get a badge. */
.docs-page .commercial-badge { display:inline-flex; vertical-align:middle; align-items:center; width:max-content; margin-left:5px; padding:3px 8px; border:1px solid #f0c4a7; border-radius:999px; background:#fff1e8; color:#a94716; font-size:9.5px; line-height:1.25; font-weight:850; white-space:nowrap; letter-spacing:.01em; }
.docs-page h2 .commercial-badge,.docs-page h3 .commercial-badge { position:relative; top:-2px; }
.docs-page .docs-callout.commercial { padding:12px 15px; border:1px solid #f2d4c1; border-left:3px solid #dc6c31; background:#fff8f3; }
.docs-page .docs-callout.commercial p { margin:0; color:#6a574b; }
.docs-page .docs-table-wrap .commercial-badge { margin-left:6px; }

/* MinIO-inspired explanatory diagrams: simple HTML/CSS, one idea per diagram. */
.docs-page .docs-diagram { margin:20px 0 30px; padding:22px 24px 20px; border-radius:16px; background:#f4f5f7; }
.docs-page .docs-diagram-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:0 0 16px; border-bottom:1px solid #dde2e8; }
.docs-page .docs-diagram-head > div:first-child { display:grid; gap:5px; }
.docs-page .docs-diagram-head span { color:#6c7887; font-size:10.5px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.docs-page .docs-diagram-head code { padding:0; background:transparent; color:#4b5969; font:12px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace; }
.docs-page .docs-diagram-flow { display:flex; align-items:stretch; gap:9px; padding:26px 0 8px; overflow-x:auto; }
.docs-page .docs-diagram-flow > div { min-width:116px; flex:1 0 116px; display:flex; flex-direction:column; justify-content:center; min-height:88px; padding:12px 10px; border:1px solid #d6dce3; border-radius:10px; background:#fff; }
.docs-page .docs-diagram-flow > div b { width:auto; height:auto; margin:0 0 5px; display:block; background:transparent; color:#2878e6; font-size:9px; }
.docs-page .docs-diagram-flow strong { color:#17263a; font-size:11.5px; }
.docs-page .docs-diagram-flow small { margin-top:4px; color:#677689; font-size:9.8px; line-height:1.4; }
.docs-page .docs-diagram-flow i { align-self:center; color:#5d7fa4; font-style:normal; font-size:17px; }
.docs-page .docs-diagram-flow .hook { border-color:#d8cdf8; background:#faf8ff; }
.docs-page .docs-diagram-flow .success { border-left:3px solid #2aa572; background:#fbfffd; }
.docs-page .docs-diagram-caption { margin:12px 0 0; color:#708094; font-size:11px; text-align:center; }
.docs-page .docs-diagram-legend { display:flex; gap:13px; color:#68788a; font-size:10px; }
.docs-page .docs-diagram-legend span { display:flex; align-items:center; gap:5px; text-transform:none; letter-spacing:0; font-weight:650; }
.docs-page .docs-diagram-legend b { width:10px; height:10px; border-radius:3px; border:1px solid #d6dce3; background:#fff; }
.docs-page .docs-diagram-legend .legend-hook { border-color:#d8cdf8; background:#faf8ff; }
.docs-page .docs-recovery-grid { display:grid; grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr); gap:9px; align-items:center; padding:24px 0 14px; }
.docs-page .docs-recovery-grid div { padding:13px 14px; border:1px solid #d6dce3; border-radius:10px; background:#fff; color:#26374a; font-size:11.5px; font-weight:800; }
.docs-page .docs-recovery-grid i { text-align:center; color:#76889b; font-style:normal; }
.docs-page .docs-recovery-grid .failure { border-left:3px solid #d85b50; background:#fff8f7; color:#a13d35; }
.docs-page .docs-retry-strip { display:flex; gap:14px; align-items:center; margin-top:4px; padding:12px 14px; border:1px solid #d6dce3; border-radius:10px; background:#fff; }
.docs-page .docs-retry-strip strong { flex:0 0 auto; color:var(--navy); font-size:11px; }
.docs-page .docs-retry-strip span { color:#68788a; font-size:10.5px; }
.docs-page .docs-semantic-flow { display:grid; grid-template-columns:1fr 30px 1fr 30px 1fr; gap:9px; align-items:center; padding:24px 0 14px; }
.docs-page .docs-semantic-flow > div { padding:15px; border:1px solid #d6dce3; border-radius:10px; background:#fff; }
.docs-page .docs-semantic-flow .rules { border-color:#d8cdf8; background:#faf8ff; }
.docs-page .docs-semantic-flow i { text-align:center; color:#72869a; font-style:normal; }
.docs-page .docs-semantic-flow strong { display:block; color:#203146; font-size:11.5px; }
.docs-page .docs-semantic-flow small { display:block; margin-top:4px; color:#68788a; font-size:10px; }
.docs-page .docs-branch-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.docs-page .docs-branch-row .branch { padding:12px 14px; border-radius:10px; background:#fff; border:1px solid #d6dce3; }
.docs-page .docs-branch-row .branch b { display:block; font-size:10.5px; }
.docs-page .docs-branch-row .branch span { display:block; margin-top:3px; color:#697a8d; font-size:10px; }
.docs-page .docs-branch-row .pass { border-left:3px solid #2aa572; }
.docs-page .docs-branch-row .fail { border-left:3px solid #d85b50; }

@media(max-width:1100px){
  .docs-page .docs-catalog{grid-template-columns:1fr}
  .docs-page .docs-quick-grid-six{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  .docs-page .docs-sidebar{display:block}
  .docs-page .docs-nav-section{margin:6px 0}
  .docs-page .docs-catalog-links{grid-template-columns:1fr}
}
@media(max-width:600px){
  .docs-page .docs-quick-grid-six{grid-template-columns:1fr}
  .docs-page .docs-diagram{padding:18px}
  .docs-page .docs-diagram-head{display:block}
  .docs-page .docs-diagram-legend{margin-top:10px}
  .docs-page .docs-recovery-grid{grid-template-columns:1fr}
  .docs-page .docs-recovery-grid i{transform:rotate(90deg)}
  .docs-page .docs-semantic-flow{grid-template-columns:1fr}
  .docs-page .docs-semantic-flow i{transform:rotate(90deg)}
  .docs-page .docs-branch-row{grid-template-columns:1fr}
  .docs-page .docs-retry-strip{display:block}
  .docs-page .docs-retry-strip span{display:block;margin-top:5px}
}


/* === Docs v3: JetBrains-style home + IDE selector === */
.docs-page .docs-home-shell {
  grid-template-columns: 270px minmax(0,1fr) 170px;
  gap: 34px;
  padding-top: 34px;
}
.docs-page .docs-home-content { max-width: 900px; }
.docs-page .docs-home-content .breadcrumbs { margin-bottom: 13px; }
.docs-page .docs-home-title {
  margin: 10px 0 10px;
  color: var(--navy);
  font-size: clamp(39px,4vw,54px);
  line-height: 1.05;
  letter-spacing: -.04em;
}
.docs-page .docs-home-lead {
  max-width: 790px;
  margin: 0 0 42px !important;
  color: #526a84 !important;
  font-size: 17px !important;
  line-height: 1.58;
}
.docs-page .docs-home-block { margin: 0 0 48px; }
.docs-page .docs-home-block h2 {
  margin: 0 0 7px;
  font-size: 27px;
}
.docs-page .docs-home-block > p {
  margin: 0 0 17px;
  color: #667b92;
  font-size: 13.5px;
}
.docs-page .docs-start-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
}
.docs-page .docs-start-card {
  min-height: 112px;
  display: grid;
  grid-template-columns: 48px minmax(0,1fr) 18px;
  gap: 14px;
  align-items: center;
  padding: 18px 19px;
  border: 1px solid #d6e2ee;
  border-radius: 13px;
  background: linear-gradient(145deg,#fff,#f4f9ff);
  color: inherit;
  box-shadow: 0 2px 10px rgba(15,38,67,.025);
}
.docs-page .docs-start-card.sdk {
  border-color: #d5eadf;
  background: linear-gradient(145deg,#fff,#f2fbf6);
}
.docs-page .docs-start-card:hover {
  border-color: #b9d3ec;
  box-shadow: 0 7px 19px rgba(15,38,67,.06);
  transform: translateY(-1px);
}
.docs-page .docs-start-card.sdk:hover { border-color: #b7dcc6; }
.docs-page .docs-start-card .icon { width: 38px; height: 38px; color: #287ce7; }
.docs-page .docs-start-card.sdk .icon { color: #15975a; }
.docs-page .docs-start-card strong { display:block; color:var(--navy); font-size:14px; line-height:1.3; }
.docs-page .docs-start-card span { display:block; margin-top:5px; color:#667a90; font-size:11.5px; line-height:1.5; }
.docs-page .docs-start-card > b { color:#7894af; font-size:17px; font-weight:500; }
.docs-page .docs-home-guidance {
  border-top: 1px solid #e6edf3;
  border-bottom: 1px solid #e6edf3;
}
.docs-page .docs-guidance-row {
  min-height: 58px;
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 12px 4px;
  border-bottom: 1px solid #edf2f6;
}
.docs-page .docs-guidance-row:last-child { border-bottom: 0; }
.docs-page .docs-guidance-row .icon { flex:0 0 auto; width:21px; height:21px; color:#3581df; }
.docs-page .docs-guidance-row p { margin:0; color:#5c7188; font-size:12.5px; line-height:1.52; }
.docs-page .docs-guidance-row p strong { color:#233b57; }
.docs-page .docs-guidance-row.commercial-row { gap:10px; }
.docs-page .docs-guidance-row.commercial-row .commercial-badge { margin-left:0; }
.docs-page .docs-popular-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.docs-page .docs-popular-list {
  border-top: 2px solid #d6e7f8;
}
.docs-page .docs-popular-list.sdk { border-top-color:#d8eee1; }
.docs-page .docs-popular-list h3 {
  margin: 0;
  padding: 12px 10px 10px;
  font-size: 13px;
}
.docs-page .docs-popular-list a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 10px;
  border-top:1px solid #edf1f5;
  color:#526a83;
  font-size:12px;
}
.docs-page .docs-popular-list a:hover { background:#f7fafc; color:var(--blue); }
.docs-page .docs-popular-list a b { color:#9aa9b9; font-weight:500; }
.docs-page .docs-home-toc { margin-top: 12px; }
.docs-page .docs-home-sidebar .docs-nav-section[open] > summary { background:transparent; color:#263e59; }
.docs-page .docs-home-sidebar .docs-nav-section > summary:hover,
.docs-page .docs-home-sidebar .docs-nav-subsection > summary:hover { background:#f4f8fc; color:var(--blue); }

/* IDE-specific documentation fragments. The choice is shared between SDK pages. */
.docs-page .docs-ide-switcher {
  width:max-content;
  display:flex;
  align-items:center;
  gap:4px;
  margin: 14px 0 18px;
  padding:4px;
  border:1px solid #d8e2ec;
  border-radius:9px;
  background:#f5f8fb;
}
.docs-page .docs-ide-switcher > span {
  padding:0 7px;
  color:#7b8da1;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.docs-page .docs-ide-switcher button {
  appearance:none;
  border:0;
  border-radius:6px;
  padding:7px 11px;
  background:transparent;
  color:#536a82;
  font:inherit;
  font-size:11.5px;
  font-weight:750;
  cursor:pointer;
}
.docs-page .docs-ide-switcher button:hover { background:#fff; color:var(--blue); }
.docs-page .docs-ide-switcher button.active {
  background:#fff;
  color:var(--navy);
  box-shadow:0 1px 4px rgba(15,38,67,.09);
}
.docs-page .docs-ide-panel {
  margin:0 0 24px;
  padding:18px 20px;
  border:1px solid #e0e7ee;
  border-radius:11px;
  background:#fbfcfe;
}
.docs-page .docs-ide-panel[hidden] { display:none !important; }
.docs-page .docs-ide-panel h3 { margin-top:0; }
.docs-page .docs-ide-panel .docs-steps { margin-bottom:0; }

@media(max-width:1100px){
  .docs-page .docs-home-shell{grid-template-columns:235px minmax(0,1fr)}
  .docs-page .docs-home-toc{display:none}
}
@media(max-width:820px){
  .docs-page .docs-home-shell{grid-template-columns:1fr}
  .docs-page .docs-home-sidebar{display:block}
  .docs-page .docs-start-grid,.docs-page .docs-popular-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .docs-page .docs-home-title{font-size:36px}
  .docs-page .docs-home-lead{font-size:15px !important;margin-bottom:32px !important}
  .docs-page .docs-start-card{grid-template-columns:38px minmax(0,1fr) 15px;padding:16px}
  .docs-page .docs-start-card .icon{width:31px;height:31px}
  .docs-page .docs-ide-switcher{width:100%}
  .docs-page .docs-ide-switcher button{flex:1}
}

/* === Docs v4: unified JetBrains-style article layout === */
.docs-page .docs-article-shell {
  grid-template-columns: 270px minmax(0,1fr) 170px;
  gap: 34px;
  padding-top: 34px;
}
.docs-page .docs-article-content {
  max-width: 900px;
}
.docs-page .docs-article-header {
  margin: 0 0 38px;
}
.docs-page .docs-article-header .breadcrumbs {
  margin: 0 0 14px;
  color: #71869d;
  font-size: 12px;
  line-height: 1.4;
}
.docs-page .docs-article-header .breadcrumbs a {
  color: #71869d;
}
.docs-page .docs-article-header .breadcrumbs a:hover {
  color: var(--blue);
}
.docs-page .docs-article-header .section-kicker {
  margin: 0 0 12px;
  color: var(--blue);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.docs-page .docs-article-header h1 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(36px,3.8vw,50px);
  line-height: 1.06;
  letter-spacing: -.04em;
}
.docs-page .docs-article-header .docs-article-lead {
  max-width: 790px;
  margin: 13px 0 0;
  color: #526a84;
  font-size: 17px;
  line-height: 1.58;
}
.docs-page .docs-article-header + h2 {
  margin-top: 0;
}
.docs-page .docs-article-shell .docs-toc {
  top: 96px;
}

@media(max-width:1100px) {
  .docs-page .docs-article-shell {
    grid-template-columns: 230px minmax(0,1fr);
    gap: 30px;
  }
}
@media(max-width:820px) {
  .docs-page .docs-article-shell {
    grid-template-columns: 1fr;
    gap: 24px;
    padding-top: 24px;
  }
  .docs-page .docs-article-header {
    margin-bottom: 30px;
  }
}
@media(max-width:600px) {
  .docs-page .docs-article-header h1 {
    font-size: 34px;
  }
  .docs-page .docs-article-header .docs-article-lead {
    font-size: 15.5px;
  }
}

/* === Docs v5: simplified documentation shell === */
/* Remove redundant documentation branding and make the docs read like a developer reference. */
.docs-page .docs-home-link { display:none !important; }
.docs-page .docs-nav-toplinks { margin-top:0; }

.docs-page .docs-breadcrumbs {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
  margin:0 0 18px !important;
  color:#8091a5;
  font-size:11.5px !important;
  line-height:1.35;
}
.docs-page .docs-breadcrumbs a { color:#667d95; }
.docs-page .docs-breadcrumbs a:hover { color:var(--blue); }
.docs-page .docs-breadcrumbs span { color:#9aa9b9; }
.docs-page .docs-breadcrumbs span:last-child { color:#667d95; }

/* Docs home: compact title rather than a marketing hero. */
.docs-page .docs-home-title {
  margin:0 0 7px;
  color:var(--navy);
  font-size:clamp(36px,3.5vw,44px);
  line-height:1.06;
  letter-spacing:-.035em;
}
.docs-page .docs-home-lead {
  max-width:760px;
  margin:0 0 34px !important;
  color:#586f87 !important;
  font-size:15.5px !important;
  line-height:1.55;
}
.docs-page .docs-home-block { margin-bottom:42px; }
.docs-page .docs-home-block h2 { font-size:25px; }
.docs-page .docs-home-block > p { margin-bottom:15px; font-size:12.5px; }

/* Two quick-start cards only. */
.docs-page .docs-start-card {
  min-height:118px;
  grid-template-columns:52px minmax(0,1fr) 18px;
  gap:15px;
  padding:18px 20px;
}
.docs-page .docs-start-icon {
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#eaf4ff;
}
.docs-page .docs-start-card.sdk .docs-start-icon { background:#edf9f2; }
.docs-page .docs-start-card .docs-start-icon .icon { width:28px; height:28px; margin:0; }
.docs-page .docs-start-card strong { font-size:14px; }
.docs-page .docs-start-card span { font-size:11.5px; }

/* Browse links are compact documentation lists, not another card wall. */
.docs-page .docs-browse-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.docs-page .docs-browse-list {
  overflow:hidden;
  border:1px solid #dce6ef;
  border-radius:11px;
  background:#fff;
}
.docs-page .docs-browse-list h3 {
  display:flex;
  align-items:center;
  gap:9px;
  margin:0;
  padding:13px 14px;
  border-bottom:1px solid #e8eef4;
  background:#f7fbff;
  color:var(--navy);
  font-size:13px;
}
.docs-page .docs-browse-list.sdk h3 { background:#f6fbf8; }
.docs-page .docs-browse-list h3 .icon { width:18px; height:18px; color:#2d7fe7; }
.docs-page .docs-browse-list.sdk h3 .icon { color:#16965b; }
.docs-page .docs-browse-list > a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:9px 13px;
  border-bottom:1px solid #edf2f6;
  color:inherit;
}
.docs-page .docs-browse-list > a:last-child { border-bottom:0; }
.docs-page .docs-browse-list > a:hover { background:#f8fbfd; }
.docs-page .docs-browse-list > a span { min-width:0; }
.docs-page .docs-browse-list > a strong { display:block; color:#285f9c; font-size:11.8px; line-height:1.3; }
.docs-page .docs-browse-list.sdk > a strong { color:#18704b; }
.docs-page .docs-browse-list > a small { display:block; margin-top:2px; color:#7a8da2; font-size:10.3px; line-height:1.35; }
.docs-page .docs-browse-list > a b { color:#9aabba; font-size:13px; font-weight:500; }
.docs-page .docs-notes-block { margin-bottom:28px; }

/* Article pages: breadcrumb + title + optional lead only. */
.docs-page .docs-article-header {
  margin:0 0 30px;
}
.docs-page .docs-article-header .section-kicker { display:none !important; }
.docs-page .docs-article-header h1 {
  margin:0;
  font-size:clamp(32px,3vw,40px);
  line-height:1.08;
  letter-spacing:-.035em;
}
.docs-page .docs-article-header .docs-article-lead {
  max-width:760px;
  margin-top:9px;
  font-size:15px;
  line-height:1.52;
}
.docs-page .docs-article-header + h2 { margin-top:0; }

/* Slightly tighter shell, matching the reference-style docs layout. */
.docs-page .docs-home-shell,
.docs-page .docs-article-shell {
  grid-template-columns:270px minmax(0,1fr) 170px;
  gap:32px;
  padding-top:30px;
}
.docs-page .docs-home-content,
.docs-page .docs-article-content { max-width:900px; }
.docs-page .docs-sidebar { top:92px; }
.docs-page .docs-toc { top:96px; }

@media(max-width:1100px){
  .docs-page .docs-home-shell,
  .docs-page .docs-article-shell { grid-template-columns:230px minmax(0,1fr); gap:28px; }
}
@media(max-width:820px){
  .docs-page .docs-home-shell,
  .docs-page .docs-article-shell { grid-template-columns:1fr; gap:22px; padding-top:22px; }
  .docs-page .docs-browse-grid { grid-template-columns:1fr; }
}
@media(max-width:600px){
  .docs-page .docs-home-title { font-size:34px; }
  .docs-page .docs-home-lead { font-size:14.5px !important; }
  .docs-page .docs-article-header h1 { font-size:32px; }
  .docs-page .docs-start-card { grid-template-columns:42px minmax(0,1fr) 15px; padding:15px; }
  .docs-page .docs-start-icon { width:40px; height:40px; }
  .docs-page .docs-start-card .docs-start-icon .icon { width:24px; height:24px; }
}


/* === Docs v9: Platform documentation refinement === */
.docs-page .docs-edition-note{display:flex;align-items:center;gap:10px;margin:8px 0 28px;padding:12px 14px;border:1px solid #efd9ca;border-radius:10px;background:#fffaf6;color:#66584e;font-size:12.5px;line-height:1.5}
.docs-page .docs-figure{margin:22px 0 28px}.docs-page .docs-figure img{display:block;max-width:100%;height:auto;border:1px solid #d9e3ed;border-radius:10px;background:#fff;box-shadow:0 5px 16px rgba(22,48,76,.05)}
.docs-page .docs-figure-compact img{max-width:820px}.docs-page .docs-figure figcaption{margin-top:8px;color:#71849a;font-size:11.5px;line-height:1.45}
.docs-page .docs-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0 20px}.docs-page .docs-command-grid h4{margin:0 0 7px;color:var(--navy);font-size:13px}.docs-page .docs-command-grid .docs-code{margin:0}
.docs-page .docs-cap-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.docs-page .docs-cap-card h3{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.docs-page .docs-property-group{margin:12px 0;border:1px solid #dce6ef;border-radius:11px;background:#fff;overflow:hidden}.docs-page .docs-property-group>summary{cursor:pointer;list-style:none;padding:13px 15px;color:var(--navy);font-weight:800;font-size:13px;background:#f8fafc}.docs-page .docs-property-group>summary::-webkit-details-marker{display:none}.docs-page .docs-property-group>summary::after{content:'›';float:right;color:#95a7b9;transform:rotate(90deg);font-size:18px;line-height:1}.docs-page .docs-property-group[open]>summary::after{transform:rotate(-90deg)}.docs-page .docs-property-group .docs-table-wrap{margin:0;border:0;border-top:1px solid #e5ecf2;border-radius:0}
.docs-page .docs-deploy-diagram{display:flex;align-items:center;justify-content:center;gap:14px;margin:20px 0 24px;padding:22px;border:1px solid #e1e7ed;border-radius:14px;background:#f6f7f9}.docs-page .docs-diagram-box{min-width:160px;padding:15px 18px;border:1px solid #d7dfe7;border-radius:10px;background:#fff;text-align:center}.docs-page .docs-diagram-box.primary{border-left:4px solid #2e7eea}.docs-page .docs-diagram-box strong{display:block;color:var(--navy);font-size:13px}.docs-page .docs-diagram-box span{display:block;margin-top:4px;color:#76889d;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10.8px}.docs-page .docs-diagram-arrow{color:#2e7eea;font-size:22px}
@media(max-width:760px){.docs-page .docs-command-grid,.docs-page .docs-cap-grid-wide{grid-template-columns:1fr}.docs-page .docs-deploy-diagram{flex-direction:column}.docs-page .docs-diagram-arrow{transform:rotate(90deg)}}

/* =========================================================
   Docs Home v10 — compact developer documentation hub
   ========================================================= */
.docs-page .docs-home-content {
  max-width: 930px;
}
.docs-page .docs-home-content .docs-breadcrumbs {
  margin: 0 0 12px;
}
.docs-page .docs-home-title {
  margin: 0 0 8px;
  font-size: 40px;
  line-height: 1.08;
  letter-spacing: -.025em;
}
.docs-page .docs-home-lead {
  max-width: 820px;
  margin: 0 0 42px !important;
  font-size: 15.5px !important;
  line-height: 1.55;
  color: var(--muted);
}
.docs-page .docs-home-block {
  margin: 0 0 44px;
}
.docs-page .docs-home-block h2 {
  margin: 0 0 18px;
  font-size: 27px;
  line-height: 1.2;
}
.docs-page .docs-start-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 16px;
}
.docs-page .docs-start-card {
  display: grid;
  grid-template-columns: 52px minmax(0,1fr);
  gap: 16px;
  min-height: 164px;
  padding: 21px;
  align-items: start;
  border: 1px solid #d6e3ef;
  border-radius: 14px;
  background: linear-gradient(135deg,#fbfdff 0%,#f5f9fe 100%);
  text-decoration: none;
  box-shadow: 0 4px 16px rgba(21,54,89,.025);
}
.docs-page .docs-start-card.sdk {
  border-color: #eadbcf;
  background: linear-gradient(135deg,#fffdfb 0%,#fff7f1 100%);
}
.docs-page .docs-start-card:hover {
  transform: translateY(-1px);
  border-color: #bcd2e7;
  box-shadow: 0 8px 22px rgba(21,54,89,.05);
}
.docs-page .docs-start-card.sdk:hover { border-color:#e3c4ad; }
.docs-page .docs-start-icon {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: #eaf3ff;
}
.docs-page .docs-start-card.sdk .docs-start-icon { background:#fff0e5; }
.docs-page .docs-start-card .docs-start-icon .icon {
  width: 29px;
  height: 29px;
  color: #2378e3;
}
.docs-page .docs-start-card.sdk .docs-start-icon .icon { color:#ef6a2e; }
.docs-page .docs-start-copy { min-width:0; }
.docs-page .docs-start-copy > strong {
  display:block;
  margin: 1px 0 7px;
  color:var(--navy);
  font-size:15px;
  line-height:1.3;
}
.docs-page .docs-start-copy > span {
  display:block;
  min-height: 46px;
  margin:0;
  color:#62778d;
  font-size:12.5px;
  line-height:1.48;
}
.docs-page .docs-start-copy > em {
  display:block;
  margin-top:13px;
  color:#126fe5;
  font-size:12.5px;
  line-height:1.3;
  font-style:normal;
  font-weight:700;
}
.docs-page .docs-start-copy > em b { margin-left:5px; font-weight:500; }
.docs-page .docs-home-browse h2 { margin-bottom:18px; }
.docs-page .docs-browse-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.docs-page .docs-browse-list {
  overflow:hidden;
  border:1px solid #d8e3ed;
  border-radius:12px;
  background:#fff;
}
.docs-page .docs-browse-list h3 {
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  padding:13px 16px;
  border-bottom:1px solid #dfe7ee;
  background:#f7faff;
  color:var(--navy);
  font-size:15px;
}
.docs-page .docs-browse-list.sdk h3 { background:#fff9f5; }
.docs-page .docs-browse-list h3 .icon { width:19px; height:19px; color:#2378e3; }
.docs-page .docs-browse-list.sdk h3 .icon { color:#ef6a2e; }
.docs-page .docs-browse-list > a {
  display:grid;
  grid-template-columns:minmax(0,1fr) 14px;
  gap:12px;
  align-items:center;
  padding:10px 15px;
  border-bottom:1px solid #e5ebf1;
  text-decoration:none;
}
.docs-page .docs-browse-list > a:last-child { border-bottom:0; }
.docs-page .docs-browse-list > a:hover { background:#fafcff; }
.docs-page .docs-browse-list > a strong {
  display:block;
  color:#195fae;
  font-size:12.5px;
  line-height:1.3;
}
.docs-page .docs-browse-list.sdk > a strong { color:#b95727; }
.docs-page .docs-browse-list > a small {
  display:block;
  margin-top:2px;
  color:#74869a;
  font-size:11px;
  line-height:1.35;
}
.docs-page .docs-browse-list > a b {
  color:#90a3b5;
  font-size:14px;
  font-weight:500;
}
.docs-page .docs-home-edition-note {
  display:flex;
  align-items:center;
  gap:10px;
  margin: -4px 0 20px;
  padding:11px 13px;
  border:1px solid #eadccc;
  border-radius:10px;
  background:#fffaf6;
  color:#5e6570;
  font-size:12.5px;
  line-height:1.45;
}
.docs-page .docs-info-mark {
  flex:0 0 22px;
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border:1px solid #e8bd9f;
  border-radius:50%;
  color:#bd5d27;
  font-size:12px;
  font-weight:800;
  font-family:Arial,sans-serif;
}
@media(max-width:1050px){
  .docs-page .docs-start-grid,.docs-page .docs-browse-grid{grid-template-columns:1fr}
  .docs-page .docs-start-card{min-height:auto}
  .docs-page .docs-start-copy > span{min-height:auto}
}
@media(max-width:700px){
  .docs-page .docs-home-title{font-size:34px}
  .docs-page .docs-home-lead{font-size:14.5px !important;margin-bottom:30px !important}
  .docs-page .docs-start-card{grid-template-columns:44px minmax(0,1fr);padding:17px}
  .docs-page .docs-start-icon{width:44px;height:44px}
  .docs-page .docs-start-card .docs-start-icon .icon{width:25px;height:25px}
}

/* =========================================================
   Docs Home v11 — neutral cards and unified link color
   ========================================================= */
.docs-page .docs-start-card {
  display:block;
  min-height:156px;
  padding:22px 24px;
  background:#fbfdff;
  border-color:#d6e3ef;
}
.docs-page .docs-start-card.sdk {
  background:#fffdfb;
  border-color:#eee4dc;
}
.docs-page .docs-start-card:hover,
.docs-page .docs-start-card.sdk:hover {
  border-color:#c7d8e8;
  box-shadow:0 7px 18px rgba(21,54,89,.045);
}
.docs-page .docs-start-copy > strong {
  margin:0 0 8px;
}
.docs-page .docs-start-copy > span {
  min-height:46px;
}
.docs-page .docs-start-copy > em,
.docs-page .docs-start-card.sdk .docs-start-copy > em {
  color:#126fe5;
}

/* Browse cards use one neutral visual language. */
.docs-page .docs-browse-list,
.docs-page .docs-browse-list.sdk {
  background:#fff;
}
.docs-page .docs-browse-list h3,
.docs-page .docs-browse-list.sdk h3 {
  background:#f8fafc;
  color:var(--navy);
  gap:0;
}
.docs-page .docs-browse-list > a strong,
.docs-page .docs-browse-list.sdk > a strong {
  color:#195fae;
}
.docs-page .docs-browse-list > a:hover,
.docs-page .docs-browse-list.sdk > a:hover {
  background:#f8fbfe;
}

@media(max-width:700px){
  .docs-page .docs-start-card{display:block;padding:18px 19px}
}


/* v12 docs home refinements */
.docs-page .docs-start-card.sdk {
  background:#fff8f2;
  border-color:#edd8cb;
}
.docs-page .docs-start-copy > em,
.docs-page .docs-start-card.sdk .docs-start-copy > em {
  color:#195fae;
}
.docs-page .docs-home-list-icon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.docs-page .docs-home-list-icon-platform {
  width:18px;
  height:18px;
  border:3px solid #5d57d8;
  border-radius:1px;
  box-sizing:border-box;
}
.docs-page .docs-home-list-icon-sdk {
  min-width:24px;
  height:18px;
  color:#ef6a2e;
  font-size:14px;
  font-weight:900;
  line-height:1;
  letter-spacing:-0.02em;
}
.docs-page .docs-browse-list h3,
.docs-page .docs-browse-list.sdk h3 {
  gap:12px;
}
.docs-page .docs-browse-list > a strong,
.docs-page .docs-browse-list.sdk > a strong,
.docs-page .docs-start-copy > em,
.docs-page .docs-start-card.sdk .docs-start-copy > em {
  color:#195fae;
}


/* v13 platform docs additions */
.docs-page .docs-callout.warning{border-left:4px solid #e28a2b;background:#fff6ea;}
.docs-page .docs-figure{margin:1.25rem 0 1.75rem;border:1px solid #d6e1ef;border-radius:18px;padding:1rem;background:#fff;}
.docs-page .docs-figure img{display:block;max-width:100%;height:auto;border-radius:10px;}
.docs-page .docs-figure figcaption{margin-top:.75rem;color:#5f7698;font-size:.95rem;line-height:1.6;}


/* v14 critical documentation warning */
.docs-page .docs-callout.critical {
  border:1px solid #f2b8b8;
  border-left:4px solid #d92d20;
  background:#fff4f4;
}
.docs-page .docs-callout.critical .docs-critical-title {
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 5px;
}
.docs-page .docs-callout.critical .docs-critical-title strong {
  display:inline;
  color:#b42318;
  font-weight:800;
}
.docs-page .docs-callout.critical .docs-critical-icon {
  color:#d92d20;
  font-size:17px;
  line-height:1;
}
.docs-page .docs-callout.critical p {
  margin:0;
  color:#63312f;
}
.docs-page .docs-callout.critical code {
  color:#8f1f17;
  background:#ffe9e8;
}


/* v15 Getting Started refinements */
.docs-page .docs-figure{margin:1.35rem 0 1.75rem;padding:0;border:0;background:transparent;border-radius:0;}
.docs-page .docs-figure img{display:block;max-width:100%;height:auto;border:0;border-radius:6px;background:transparent;box-shadow:none;}
.docs-page .docs-figure figcaption{margin-top:.6rem;color:#667b92;font-size:12px;line-height:1.5;}
.docs-page .docs-diagram-box.primary{border-left:1px solid #d7dfe7;}
.docs-page .docs-property-group .docs-callout{margin:14px 16px 16px;}
.docs-page .docs-property-group .docs-callout.critical{margin-top:10px;}


/* v16 Architecture + Semantic Validation */
.docs-page .docs-architecture-goals{margin-top:14px}
.docs-page .docs-arch-flow{display:flex;align-items:stretch;gap:7px;padding:24px 0 8px;overflow:visible}
.docs-page .docs-arch-flow>div{min-width:0;flex:1 1 0;display:flex;flex-direction:column;justify-content:center;min-height:92px;padding:11px 8px;border:1px solid #d6dce3;border-radius:10px;background:#fff}
.docs-page .docs-arch-flow>div b{margin-bottom:5px;color:#2878e6;font-size:9px}
.docs-page .docs-arch-flow strong{color:#17263a;font-size:10.8px;line-height:1.3}
.docs-page .docs-arch-flow small{margin-top:4px;color:#677689;font-size:9px;line-height:1.35}
.docs-page .docs-arch-flow i{align-self:center;color:#5d7fa4;font-style:normal;font-size:15px}
.docs-page .docs-arch-flow .success{border-left:3px solid #2aa572;background:#fbfffd}
.docs-page .docs-boundary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 28px}
.docs-page .docs-boundary-card{padding:18px 20px;border:1px solid #dbe4ed;border-radius:12px;background:#fff}
.docs-page .docs-boundary-card.core{background:#f8fbff}
.docs-page .docs-boundary-card.custom{background:#fbf9ff}
.docs-page .docs-boundary-card>span{display:block;margin-bottom:8px;color:#657b92;font-size:10px;font-weight:850;letter-spacing:.12em}
.docs-page .docs-boundary-card>strong{display:block;color:var(--navy);font-size:13.5px}
.docs-page .docs-boundary-card ul{margin:12px 0 0;padding-left:20px}
.docs-page .docs-boundary-card li{margin:5px 0;color:#556d88;font-size:12.5px;line-height:1.5}
.docs-page .docs-semantic-pipeline{display:flex;align-items:stretch;gap:8px;padding:24px 0 8px}
.docs-page .docs-semantic-pipeline>div{min-width:0;flex:1 1 0;padding:13px 10px;border:1px solid #d6dce3;border-radius:10px;background:#fff}
.docs-page .docs-semantic-pipeline .hook{border-color:#d8cdf8;background:#faf8ff}
.docs-page .docs-semantic-pipeline .rules{border-color:#cfc4f3;background:#f8f5ff}
.docs-page .docs-semantic-pipeline .success{border-left:3px solid #2aa572;background:#fbfffd}
.docs-page .docs-semantic-pipeline i{align-self:center;color:#6e8298;font-style:normal}
.docs-page .docs-semantic-pipeline strong{display:block;color:#203146;font-size:10.8px;line-height:1.3}
.docs-page .docs-semantic-pipeline small{display:block;margin-top:4px;color:#68788a;font-size:9.2px;line-height:1.35}
@media(max-width:900px){.docs-page .docs-arch-flow,.docs-page .docs-semantic-pipeline{display:grid;grid-template-columns:1fr}.docs-page .docs-arch-flow i,.docs-page .docs-semantic-pipeline i{transform:rotate(90deg);text-align:center}.docs-page .docs-boundary-grid{grid-template-columns:1fr}}

/* v18 HL7 support contact note */
.docs-page .docs-support-note {
  margin-top: 18px;
}
.docs-page .docs-support-note p {
  margin: 4px 0 0;
}

/* v19 architecture diagram alignment fix */
.docs-architecture-diagram--grid .docs-arch-grid{
  display:grid;
  grid-template-columns:minmax(96px,1fr) 24px minmax(96px,1fr) 24px minmax(96px,1fr) 24px minmax(96px,1fr) 24px minmax(96px,1fr) 24px minmax(96px,1fr) 24px minmax(96px,1fr);
  gap:12px;
  align-items:center;
}
.docs-architecture-diagram--grid .docs-arch-step{
  min-height:124px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.docs-architecture-diagram--grid .docs-arch-grid > i{
  display:flex;
  align-items:center;
  justify-content:center;
  font-style:normal;
  font-size:1.5rem;
  font-weight:700;
  color:#56749c;
}
@media (max-width:1180px){
  .docs-architecture-diagram--grid .docs-arch-grid{
    grid-template-columns:repeat(4,minmax(120px,1fr));
  }
  .docs-architecture-diagram--grid .docs-arch-grid > i{
    display:none;
  }
}
@media (max-width:760px){
  .docs-architecture-diagram--grid .docs-arch-grid{
    grid-template-columns:1fr 1fr;
  }
}

/* v20 robust architecture pipeline layout */
.docs-page .docs-architecture-diagram--grid .docs-arch-grid {
  display:flex;
  align-items:stretch;
  width:100%;
  gap:8px;
  min-width:0;
}
.docs-page .docs-architecture-diagram--grid .docs-arch-step {
  flex:1 1 0;
  min-width:0;
  min-height:122px;
  padding:12px 10px;
  box-sizing:border-box;
}
.docs-page .docs-architecture-diagram--grid .docs-arch-grid > i {
  flex:0 0 14px;
  width:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-style:normal;
  font-size:18px;
  font-weight:600;
  color:#5f7fa8;
}
.docs-page .docs-architecture-diagram--grid .docs-arch-step b,
.docs-page .docs-architecture-diagram--grid .docs-arch-step strong,
.docs-page .docs-architecture-diagram--grid .docs-arch-step small {
  overflow-wrap:anywhere;
}
@media (max-width:1050px) {
  .docs-page .docs-architecture-diagram--grid .docs-arch-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .docs-page .docs-architecture-diagram--grid .docs-arch-grid > i { display:none; }
}
@media (max-width:650px) {
  .docs-page .docs-architecture-diagram--grid .docs-arch-grid { grid-template-columns:1fr; }
}

/* v21 regenerated — clean two-row architecture pipeline */
.docs-page .docs-architecture-pipeline {
  overflow: hidden;
}

.docs-page .docs-architecture-pipeline .docs-arch-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) 30px minmax(0,1fr) 30px minmax(0,1fr) 30px minmax(0,1fr);
  gap: 10px;
  align-items: center;
}

.docs-page .docs-architecture-pipeline .docs-arch-row-top {
  margin-top: 22px;
}

.docs-page .docs-architecture-pipeline .docs-arch-row-bottom {
  grid-template-columns: minmax(0,1fr) 30px minmax(0,1fr) 30px minmax(0,1fr);
  width: calc(75% - 5px);
  margin-left: auto;
}

.docs-page .docs-architecture-pipeline .docs-arch-card {
  min-width: 0;
  min-height: 108px;
  padding: 14px 15px;
  box-sizing: border-box;
  border: 1px solid #d5deea;
  border-radius: 11px;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.docs-page .docs-architecture-pipeline .docs-arch-card b {
  display: block;
  margin-bottom: 7px;
  color: #2878e6;
  font-size: 11px;
  line-height: 1;
}

.docs-page .docs-architecture-pipeline .docs-arch-card strong {
  color: #102c50;
  font-size: 14px;
  line-height: 1.25;
  white-space: nowrap;
}

.docs-page .docs-architecture-pipeline .docs-arch-card small {
  display: block;
  margin-top: 7px;
  color: #657990;
  font-size: 11px;
  line-height: 1.4;
}

.docs-page .docs-architecture-pipeline .docs-arch-row > i {
  color: #5d7fa4;
  font-style: normal;
  font-size: 18px;
  line-height: 1;
  text-align: center;
}

.docs-page .docs-architecture-pipeline .docs-arch-turn {
  width: 25%;
  margin: 4px 0 4px auto;
  display: flex;
  justify-content: center;
  color: #5d7fa4;
  font-size: 18px;
  line-height: 1;
}

.docs-page .docs-architecture-pipeline .docs-arch-deliver {
  border-left: 3px solid #2aa572;
  background: #fbfffd;
}

.docs-page .docs-architecture-pipeline .docs-diagram-caption {
  margin-top: 20px;
}

@media (max-width: 900px) {
  .docs-page .docs-architecture-pipeline .docs-arch-row,
  .docs-page .docs-architecture-pipeline .docs-arch-row-bottom {
    width: 100%;
    margin-left: 0;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .docs-page .docs-architecture-pipeline .docs-arch-row > i {
    transform: rotate(90deg);
  }

  .docs-page .docs-architecture-pipeline .docs-arch-row-bottom > i {
    transform: rotate(-90deg);
  }

  .docs-page .docs-architecture-pipeline .docs-arch-turn {
    width: 100%;
    margin: 8px 0;
  }

  .docs-page .docs-architecture-pipeline .docs-arch-card strong {
    white-space: normal;
  }
}

/* v22 persistence article */
.docs-page .docs-persistence-flow {
  padding: 18px 20px;
}
.docs-page .docs-simple-flow {
  display: grid;
  grid-template-columns: minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr);
  gap: 8px;
  align-items: center;
}
.docs-page .docs-simple-flow > div {
  min-width: 0;
  padding: 13px 12px;
  border: 1px solid #d7e1ed;
  border-radius: 10px;
  background: #fff;
}
.docs-page .docs-simple-flow strong,
.docs-page .docs-simple-flow span {
  display: block;
}
.docs-page .docs-simple-flow strong {
  color: var(--navy);
  font-size: 13px;
}
.docs-page .docs-simple-flow span {
  margin-top: 5px;
  color: #687b91;
  font-size: 11px;
  line-height: 1.35;
}
.docs-page .docs-simple-flow > i {
  color: #6b86a5;
  font-style: normal;
  text-align: center;
  font-size: 17px;
}
@media (max-width: 900px) {
  .docs-page .docs-simple-flow {
    grid-template-columns: 1fr;
  }
  .docs-page .docs-simple-flow > i {
    transform: rotate(90deg);
  }
}

/* v23 equal-size persistence boxes */
.docs-page .docs-simple-flow {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  column-gap: 18px;
  row-gap: 18px;
}
.docs-page .docs-simple-flow > div {
  min-height: 108px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.docs-page .docs-simple-flow > i {
  display: none;
}
.docs-page .docs-persistence-flow .docs-simple-flow {
  position: relative;
}
.docs-page .docs-persistence-flow .docs-simple-flow > div:not(:last-of-type)::after {
  content: "→";
  position: absolute;
  right: -15px;
  top: 50%;
  transform: translateY(-50%);
  color: #6b86a5;
  font-size: 18px;
}
.docs-page .docs-persistence-flow .docs-simple-flow > div {
  position: relative;
}
@media (max-width: 900px) {
  .docs-page .docs-simple-flow {
    grid-template-columns: 1fr;
  }
  .docs-page .docs-persistence-flow .docs-simple-flow > div:not(:last-of-type)::after {
    content: "↓";
    right: auto;
    left: 50%;
    top: auto;
    bottom: -15px;
    transform: translateX(-50%);
  }
}

/* v26 reliability article */
.docs-page .docs-reliability-principles {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:16px 0 28px;
}
.docs-page .docs-reliability-principles > div {
  padding:15px 16px;
  border:1px solid #d7e1ed;
  border-radius:11px;
  background:#fff;
}
.docs-page .docs-reliability-principles strong,
.docs-page .docs-reliability-principles span {
  display:block;
}
.docs-page .docs-reliability-principles strong {
  color:var(--navy);
  font-size:13px;
}
.docs-page .docs-reliability-principles span {
  margin-top:5px;
  color:#667b92;
  font-size:11.5px;
  line-height:1.45;
}
.docs-page .docs-rel-flow-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:22px 0 8px;
}
.docs-page .docs-rel-flow-row > div,
.docs-page .docs-rel-recovery-row > div {
  min-width:0;
  min-height:88px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:12px 11px;
  border:1px solid #d6dfe9;
  border-radius:10px;
  background:#fff;
}
.docs-page .docs-rel-flow-row strong,
.docs-page .docs-rel-recovery-row strong {
  color:var(--navy);
  font-size:11.5px;
  line-height:1.3;
}
.docs-page .docs-rel-flow-row small,
.docs-page .docs-rel-recovery-row small {
  margin-top:5px;
  color:#697b90;
  font-size:9.8px;
  line-height:1.4;
}
.docs-page .docs-rel-flow-row > i,
.docs-page .docs-rel-recovery-row > i {
  text-align:center;
  color:#6080a4;
  font-style:normal;
  font-size:16px;
}
.docs-page .docs-rel-flow-row .success,
.docs-page .docs-rel-recovery-row .success {
  border-left:3px solid #2aa572;
  background:#fbfffd;
}
.docs-page .docs-rel-recovery-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr);
  gap:8px;
  align-items:center;
  padding:22px 0 8px;
}
.docs-page .docs-rel-recovery-row .failure {
  border-left:3px solid #d9534f;
  background:#fff8f7;
}
@media(max-width:1000px){
  .docs-page .docs-rel-flow-row,
  .docs-page .docs-rel-recovery-row {
    grid-template-columns:repeat(3,minmax(120px,1fr));
  }
  .docs-page .docs-rel-flow-row > i,
  .docs-page .docs-rel-recovery-row > i { display:none; }
}
@media(max-width:700px){
  .docs-page .docs-reliability-principles,
  .docs-page .docs-rel-flow-row,
  .docs-page .docs-rel-recovery-row { grid-template-columns:1fr; }
}

/* v27 Operations documentation */
.docs-page .docs-figure-wide img { width:100%; max-width:none; }
.docs-page .docs-article-content .docs-figure-wide { margin-top:18px; margin-bottom:30px; }
.docs-page .docs-article-content .docs-figure-wide figcaption { max-width:920px; }


/* v29 Operations media containment fix
   Screenshots must always stay inside the center article column and never
   overlap the right-hand "On this page" navigation. */
.docs-page .docs-article-content figure,
.docs-page .docs-article-content .docs-figure,
.docs-page .docs-article-content .docs-figure-wide {
  box-sizing: border-box;
  max-width: 100%;
}

.docs-page .docs-article-content .docs-figure-wide {
  width: 86%;
  margin: 22px auto 34px;
}

.docs-page .docs-article-content .docs-figure-wide img,
.docs-page .docs-article-content .docs-figure img,
.docs-page .docs-article-content figure img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  box-sizing: border-box;
  object-fit: contain;
  margin-left: auto;
  margin-right: auto;
}

.docs-page .docs-article-content .docs-figure-wide figcaption,
.docs-page .docs-article-content .docs-figure figcaption,
.docs-page .docs-article-content figure figcaption {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 8px auto 0;
  text-align: left;
}

/* Keep wide code/table/media wrappers inside the article column as well. */
.docs-page .docs-article-content pre,
.docs-page .docs-article-content .docs-code,
.docs-page .docs-article-content .docs-table-wrap,
.docs-page .docs-article-content .docs-diagram {
  max-width: 100%;
  box-sizing: border-box;
}

.docs-page .docs-article-content .docs-table-wrap,
.docs-page .docs-article-content .docs-diagram {
  overflow-x: auto;
}

/* On narrower layouts use the full article width. */
@media (max-width: 1100px) {
  .docs-page .docs-article-content .docs-figure-wide {
    width: 100%;
  }
}





/* v31 Operations-specific screenshot scale
   Stretch screenshots to the visual edge of the article column while keeping
   a small breathing space before the right TOC column. */
.docs-operations-page .docs-article-content .docs-figure-wide {
  width: 96%;
  max-width: 1040px;
}

@media (max-width: 1100px) {
  .docs-operations-page .docs-article-content .docs-figure-wide {
    width: 100%;
    max-width: 100%;
  }
}

/* v33 SDK overview engineering workflow */
.docs-page .docs-sdk-engineering-flow .docs-diagram-flow.five {
  display:grid;
  grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr);
  gap:7px;
  align-items:stretch;
  overflow:visible;
}
.docs-page .docs-sdk-engineering-flow .docs-diagram-flow.five > div {
  min-width:0;
  width:auto;
  flex:none;
}
.docs-page .docs-sdk-engineering-flow .docs-diagram-flow.five > i {
  display:flex;
  align-items:center;
  justify-content:center;
}
@media (max-width:900px) {
  .docs-page .docs-sdk-engineering-flow .docs-diagram-flow.five {
    grid-template-columns:1fr;
  }
  .docs-page .docs-sdk-engineering-flow .docs-diagram-flow.five > i {
    transform:rotate(90deg);
  }
}

/* v35 SDK Getting Started GIF placeholders */
.docs-page .docs-media-placeholder {
  display:flex;
  align-items:center;
  gap:14px;
  margin:18px 0 4px;
  padding:16px 18px;
  border:1px dashed #b8c9da;
  border-radius:11px;
  background:#f8fbfe;
  color:#52677e;
}
.docs-page .docs-media-placeholder-icon {
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:34px;
  border-radius:8px;
  background:#eaf3fb;
  color:#2878e6;
  font-size:11px;
  font-weight:850;
  letter-spacing:.08em;
}
.docs-page .docs-media-placeholder strong {
  display:block;
  margin:0 0 3px;
  color:var(--navy);
  font-size:13px;
}
.docs-page .docs-media-placeholder span {
  display:block;
  font-size:12px;
  line-height:1.5;
}

/* v36 SDK Workflow Development refinements */
.docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle {
  display:grid;
  grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr);
  gap:5px;
  overflow:visible;
}
.docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle > div,
.docs-page .docs-generation-diagram .docs-diagram-flow.generation > div,
.docs-page .docs-sandbox-diagram .docs-diagram-flow.sandbox-flow > div {
  min-width:0;
  width:auto;
  flex:none;
}
.docs-page .docs-generation-diagram .docs-diagram-flow.generation {
  display:grid;
  grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr);
  gap:7px;
  overflow:visible;
}
.docs-page .docs-sandbox-diagram .docs-diagram-flow.sandbox-flow {
  display:grid;
  grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr) 22px minmax(0,1fr);
  gap:7px;
  overflow:visible;
}
.docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow i,
.docs-page .docs-generation-diagram .docs-diagram-flow i,
.docs-page .docs-sandbox-diagram .docs-diagram-flow i {
  display:flex;
  align-items:center;
  justify-content:center;
}
.docs-page .docs-code-compare {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:16px 0 28px;
}
.docs-page .docs-code-compare > div {
  min-width:0;
}
.docs-page .docs-code-compare > div > strong {
  display:block;
  margin:0 0 8px;
  color:var(--navy);
  font-size:13px;
}
.docs-page .docs-code-compare .docs-code {
  height:calc(100% - 26px);
  margin:0;
}
.docs-page .docs-security-grid > div:first-child {
  border-left:3px solid var(--green);
}
.docs-page .docs-security-grid > div:last-child {
  border-left:3px solid var(--orange);
}
@media (max-width:900px) {
  .docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle,
  .docs-page .docs-generation-diagram .docs-diagram-flow.generation,
  .docs-page .docs-sandbox-diagram .docs-diagram-flow.sandbox-flow,
  .docs-page .docs-code-compare {
    grid-template-columns:1fr;
  }
  .docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow i,
  .docs-page .docs-generation-diagram .docs-diagram-flow i,
  .docs-page .docs-sandbox-diagram .docs-diagram-flow i {
    transform:rotate(90deg);
  }
}


/* v38 Workflow Development layout refinements */
/* Keep lifecycle diagrams on the same visual grid with balanced, aligned stages. */
.docs-page .docs-sdk-lifecycle-diagram,
.docs-page .docs-generation-diagram {
  width:100%;
  box-sizing:border-box;
}
.docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle,
.docs-page .docs-generation-diagram .docs-diagram-flow.generation {
  align-items:stretch;
  padding:26px 0 8px;
  overflow:visible;
}
.docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle {
  grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr) 14px minmax(0,1fr);
  gap:5px;
}
.docs-page .docs-generation-diagram .docs-diagram-flow.generation {
  grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr);
  gap:7px;
}
.docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle > div,
.docs-page .docs-generation-diagram .docs-diagram-flow.generation > div {
  min-width:0;
  min-height:96px;
  height:100%;
  padding:11px 8px;
  box-sizing:border-box;
  justify-content:center;
}
.docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle strong,
.docs-page .docs-generation-diagram .docs-diagram-flow.generation strong {
  display:block;
  min-width:0;
  font-size:10.5px;
  line-height:1.28;
  overflow-wrap:anywhere;
}
.docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle small,
.docs-page .docs-generation-diagram .docs-diagram-flow.generation small {
  font-size:9.4px;
  line-height:1.35;
}
.docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle i,
.docs-page .docs-generation-diagram .docs-diagram-flow.generation i {
  width:100%;
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Code comparisons read better vertically and no longer need horizontal scrollbars. */
.docs-page .docs-code-compare {
  display:grid;
  grid-template-columns:1fr;
  gap:20px;
  margin:16px 0 30px;
}
.docs-page .docs-code-compare > div {
  min-width:0;
}
.docs-page .docs-code-compare .docs-code {
  width:100%;
  height:auto;
  margin:0;
  box-sizing:border-box;
  overflow-x:hidden;
}
.docs-page .docs-code-compare .docs-code code {
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

/* Give the separated workflow examples a clear article rhythm. */
.docs-page .docs-article-content #workflows ~ h3 {
  margin-top:24px;
}

@media (max-width:900px) {
  .docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle,
  .docs-page .docs-generation-diagram .docs-diagram-flow.generation {
    grid-template-columns:1fr;
    gap:8px;
  }
  .docs-page .docs-sdk-lifecycle-diagram .docs-diagram-flow.lifecycle i,
  .docs-page .docs-generation-diagram .docs-diagram-flow.generation i {
    min-height:18px;
    transform:rotate(90deg);
  }
}

/* v40 Lifecycle message diagram: compact aligned two-row serpentine flow */
.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-two-row {
  padding: 18px 6px 4px;
  max-width: 930px;
  margin: 0 auto;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row {
  display: grid;
  grid-template-columns:
    minmax(150px, 1fr) 24px
    minmax(150px, 1fr) 24px
    minmax(150px, 1fr) 24px
    minmax(150px, 1fr);
  gap: 12px;
  align-items: center;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row > div {
  min-width: 0;
  min-height: 98px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 14px 16px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row > div.hook {
  border-color: #d9c8ff;
  background: #fbf9ff;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row > div.success {
  border-left: 3px solid var(--green);
  background: #fbfffd;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row strong {
  display: block;
  margin-bottom: 6px;
  font-size: 11.8px;
  line-height: 1.25;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row small {
  display: block;
  font-size: 10.2px;
  line-height: 1.35;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row > i {
  display: flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  font-size: 16px;
  color: #5c7fa3;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-turn {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 24px;
  padding-right: 8.3%;
  box-sizing: border-box;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-turn span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  font-size: 18px;
  color: #5c7fa3;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row-bottom {
  direction: rtl;
  margin-top: 4px;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row-bottom > * {
  direction: ltr;
}

/* Generation diagram stays single-row, but uses the same readable card sizing. */
.docs-page .docs-generation-diagram .docs-diagram-flow.generation > div {
  min-height: 112px;
  padding: 16px 14px;
}

.docs-page .docs-generation-diagram .docs-diagram-flow.generation strong {
  font-size: 12px;
  line-height: 1.3;
  overflow-wrap: normal;
  word-break: normal;
}

.docs-page .docs-generation-diagram .docs-diagram-flow.generation small {
  font-size: 10.5px;
  line-height: 1.4;
}

@media (max-width: 900px) {
  .docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row-bottom {
    direction: ltr;
  }

  .docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row > i {
    min-height: 22px;
    transform: rotate(90deg);
  }

  .docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-turn {
    justify-content: center;
    height: 30px;
    padding-right: 0;
  }
}


/* v41 Lifecycle diagram — exact 4-column x 2-row alignment, no overflow */
.docs-page .docs-sdk-lifecycle-diagram {
  overflow-x: hidden;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid {
  display: grid;
  grid-template-columns:
    minmax(0, 1fr) 22px
    minmax(0, 1fr) 22px
    minmax(0, 1fr) 22px
    minmax(0, 1fr);
  grid-template-rows: 102px 24px 102px;
  column-gap: 10px;
  row-gap: 0;
  width: 100%;
  min-width: 0;
  padding: 20px 0 6px;
  box-sizing: border-box;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid > div {
  min-width: 0;
  height: 102px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid > div.hook {
  border-color: #d9c8ff;
  background: #fbf9ff;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid > div.success {
  border-left: 3px solid var(--green);
  background: #fbfffd;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid strong {
  display: block;
  margin-bottom: 6px;
  min-width: 0;
  font-size: 12px;
  line-height: 1.25;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid small {
  display: block;
  font-size: 10px;
  line-height: 1.35;
}

.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid > i,
.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid > .turn-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #5c7fa3;
  font-style: normal;
  font-size: 17px;
}

/* top row */
.docs-page .docs-sdk-lifecycle-diagram .stage-1 { grid-column: 1; grid-row: 1; }
.docs-page .docs-sdk-lifecycle-diagram .arrow-1 { grid-column: 2; grid-row: 1; }
.docs-page .docs-sdk-lifecycle-diagram .stage-2 { grid-column: 3; grid-row: 1; }
.docs-page .docs-sdk-lifecycle-diagram .arrow-2 { grid-column: 4; grid-row: 1; }
.docs-page .docs-sdk-lifecycle-diagram .stage-3 { grid-column: 5; grid-row: 1; }
.docs-page .docs-sdk-lifecycle-diagram .arrow-3 { grid-column: 6; grid-row: 1; }
.docs-page .docs-sdk-lifecycle-diagram .stage-4 { grid-column: 7; grid-row: 1; }

/* clean vertical turn: Core Mapper -> postConvert */
.docs-page .docs-sdk-lifecycle-diagram .turn-arrow {
  grid-column: 7;
  grid-row: 2;
}

/* bottom row, continuing right -> left */
.docs-page .docs-sdk-lifecycle-diagram .stage-5 { grid-column: 7; grid-row: 3; }
.docs-page .docs-sdk-lifecycle-diagram .arrow-4 { grid-column: 6; grid-row: 3; }
.docs-page .docs-sdk-lifecycle-diagram .stage-6 { grid-column: 5; grid-row: 3; }
.docs-page .docs-sdk-lifecycle-diagram .arrow-5 { grid-column: 4; grid-row: 3; }
.docs-page .docs-sdk-lifecycle-diagram .stage-7 { grid-column: 3; grid-row: 3; }
.docs-page .docs-sdk-lifecycle-diagram .arrow-6 { grid-column: 2; grid-row: 3; }
.docs-page .docs-sdk-lifecycle-diagram .stage-8 { grid-column: 1; grid-row: 3; }

@media (max-width: 900px) {
  .docs-page .docs-sdk-lifecycle-diagram {
    overflow-x: visible;
  }

  .docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 18px 0 4px;
  }

  .docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid > div {
    width: 100%;
    height: auto;
    min-height: 86px;
  }

  .docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid > i {
    min-height: 18px;
    transform: rotate(90deg);
  }

  .docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-grid > .turn-arrow {
    min-height: 18px;
  }
}


/* v43: soft-wrap long single-line property examples without changing the copied text */
.docs-page .docs-code.docs-code-wrap {
  overflow-x: hidden;
}
.docs-page .docs-code.docs-code-wrap code {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: normal;
}


/* v46 SDK Testing & Debugging */
.docs-page .docs-gif-placeholder {
  margin:18px 0 4px;
}
.docs-page .docs-gif-placeholder img {
  width:100%;
  max-width:880px;
  margin:0 auto;
  border:1px dashed #bdcddd;
  border-radius:10px;
  background:#f8fafc;
  box-shadow:none;
}
.docs-page .docs-gif-placeholder figcaption {
  max-width:880px;
  margin:7px auto 0;
  color:#71849a;
  font-size:11.5px;
}


/* FireSonic colorful code blocks */
.docs-page .docs-code {
  border:1px solid rgba(128,173,215,.12);
  background:linear-gradient(145deg,#0a1c31 0%,#0c223b 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025), 0 8px 22px rgba(11,31,53,.07);
  scrollbar-width:thin;
  scrollbar-color:#4d6984 #0b1e34;
}
.docs-page .docs-code::-webkit-scrollbar { height:7px; width:7px; }
.docs-page .docs-code::-webkit-scrollbar-track { background:#0b1e34; }
.docs-page .docs-code::-webkit-scrollbar-thumb { background:#4d6984; border-radius:999px; }
.docs-page .docs-code code { color:inherit; }


/* FireSonic docs code polish v9 */
.docs-page .docs-code {
  padding:17px 20px;
  border-radius:12px;
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size:12.25px;
  line-height:1.68;
  letter-spacing:.002em;
  tab-size:4;
}

.docs-page .docs-code code {
  display:block;
  padding:0;
  background:transparent;
  color:inherit;
  font:inherit;
  line-height:inherit;
  letter-spacing:inherit;
  tab-size:inherit;
}

/* Properties remain intentionally restrained:
   keys are accented; ordinary values stay neutral; numbers, booleans,
   environment placeholders and URLs carry only light semantic accents. */
.docs-page .docs-code .code-property {
  color:#72c9ff;
}
.docs-page .docs-code .code-operator {
  color:#88a9c7;
}
.docs-page .docs-code .code-variable {
  color:#f6c85f;
}
.docs-page .docs-code .code-number {
  color:#ff9b71;
}
.docs-page .docs-code .code-boolean {
  color:#ff86b5;
}
.docs-page .docs-code .code-url {
  color:#9ccdf8;
}

/* A little more breathing room for two-column command examples,
   without changing the underlying command text or wrapping rules. */
.docs-page .docs-command-grid .docs-code {
  min-height:52px;
  display:flex;
  align-items:center;
}
.docs-page .docs-command-grid .docs-code code {
  width:100%;
}


/* FireSonic docs readability pass v10
   Raise the small-text floor without changing article headings/body scale. */

/* Left documentation navigation */
.docs-page .docs-home-link {
  font-size:15px;
}
.docs-page .docs-nav-toplinks a {
  font-size:13.5px;
  line-height:1.45;
}
.docs-page .docs-nav-section > summary {
  font-size:13.5px;
  line-height:1.4;
}
.docs-page .docs-nav-subsection > summary {
  font-size:13px;
  line-height:1.4;
}
.docs-page .docs-nav-links a {
  font-size:13.5px;
  line-height:1.45;
  padding-top:6px;
  padding-bottom:6px;
}

/* Right "On this page" navigation */
.docs-page .docs-toc h4 {
  font-size:13px;
  margin-bottom:10px;
}
.docs-page .docs-toc a {
  font-size:13.5px;
  line-height:1.45;
  padding:4.5px 0;
}
.docs-page .docs-toc a.toc-sub {
  font-size:13px;
}
.docs-page .toc-empty {
  font-size:13px;
}

/* Tables */
.docs-page .docs-table-wrap th {
  font-size:13.5px;
  line-height:1.45;
  padding:11px 14px;
}
.docs-page .docs-table-wrap td {
  font-size:13.5px;
  line-height:1.58;
  padding:11px 14px;
}

/* Callouts, notes and property groups */
.docs-page .docs-callout strong {
  font-size:14px;
}
.docs-page .docs-callout p {
  font-size:13.5px;
  line-height:1.6;
}
.docs-page .docs-edition-note {
  font-size:13.5px;
}
.docs-page .docs-property-group > summary {
  font-size:14px;
}
.docs-page .docs-command-grid h4 {
  font-size:14px;
}

/* Landing-page cards and small descriptions */
.docs-page .docs-start-card strong,
.docs-page .docs-quick-grid strong,
.docs-page .docs-quick-grid-six strong {
  font-size:14px;
}
.docs-page .docs-start-card span,
.docs-page .docs-quick-grid span,
.docs-page .docs-quick-grid-six span {
  font-size:12.75px;
  line-height:1.52;
}
.docs-page .docs-browse-list > a strong {
  font-size:13.25px;
}
.docs-page .docs-browse-list > a small {
  font-size:12px;
  line-height:1.45;
}
.docs-page .docs-card-link,
.docs-page .docs-guidance-row p,
.docs-page .docs-section-intro,
.docs-page .docs-commercial-key {
  font-size:13.5px;
}

/* Feature grids and supporting UI text */
.docs-page .docs-feature-grid strong {
  font-size:14px;
}
.docs-page .docs-feature-grid span {
  font-size:13px;
  line-height:1.55;
}
.docs-page .edition-legend > div {
  font-size:13px;
}
.docs-page .commercial-badge,
.docs-page .edition-badge {
  font-size:10.5px;
}

/* Captions and compact diagrams */
.docs-page .docs-figure figcaption,
.docs-page .docs-diagram-caption {
  font-size:12.5px;
  line-height:1.5;
}
.docs-page .docs-diagram-legend {
  font-size:11.5px;
}
.docs-page .docs-diagram-flow strong,
.docs-page .docs-recovery-grid div,
.docs-page .docs-semantic-flow strong,
.docs-page .docs-arch-flow strong,
.docs-page .docs-boundary-card li,
.docs-page .docs-semantic-pipeline strong {
  font-size:12.25px;
}
.docs-page .docs-diagram-flow small,
.docs-page .docs-semantic-flow small,
.docs-page .docs-arch-flow small,
.docs-page .docs-semantic-pipeline small,
.docs-page .docs-retry-strip span,
.docs-page .docs-branch-row .branch span {
  font-size:11.25px;
  line-height:1.45;
}
.docs-page .docs-retry-strip strong,
.docs-page .docs-branch-row .branch b,
.docs-page .recovery-return {
  font-size:11.75px;
}

/* Keep mobile readable without making the sidebar oversized. */
@media(max-width:820px) {
  .docs-page .docs-nav-section > summary {
    font-size:13.25px;
  }
  .docs-page .docs-nav-subsection > summary,
  .docs-page .docs-nav-links a,
  .docs-page .docs-nav-toplinks a {
    font-size:13px;
  }
}


/* FireSonic docs card and diagram readability pass v11
   Keep similar informational boxes on a consistent, readable type scale. */

/* Docs landing cards */
.docs-page .docs-start-copy > strong {
  font-size:15px;
  line-height:1.35;
}
.docs-page .docs-start-copy > span {
  font-size:14px;
  line-height:1.55;
}
.docs-page .docs-start-copy > em,
.docs-page .docs-start-card.sdk .docs-start-copy > em {
  font-size:14px;
  line-height:1.4;
}
.docs-page .docs-browse-list h3 {
  font-size:14.5px;
}
.docs-page .docs-browse-list > a strong {
  font-size:14px;
  line-height:1.35;
}
.docs-page .docs-browse-list > a small {
  font-size:13.25px;
  line-height:1.48;
}
.docs-page .docs-browse-list > a {
  padding-top:11px;
  padding-bottom:11px;
}

/* Architecture: platform-core / custom-workflow cards */
.docs-page .docs-boundary-card > span {
  font-size:11.5px;
}
.docs-page .docs-boundary-card > strong {
  font-size:15.5px;
  line-height:1.35;
}
.docs-page .docs-boundary-card li {
  font-size:14px;
  line-height:1.55;
}

/* Reliability principle cards */
.docs-page .docs-reliability-principles strong {
  font-size:15px;
  line-height:1.35;
}
.docs-page .docs-reliability-principles span {
  font-size:14px;
  line-height:1.55;
}

/* Shared compact flow-card scale */
.docs-page .docs-rel-flow-row strong,
.docs-page .docs-rel-recovery-row strong,
.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row strong,
.docs-page .docs-arch-flow strong,
.docs-page .docs-semantic-flow strong,
.docs-page .docs-semantic-pipeline strong,
.docs-page .docs-diagram-flow strong {
  font-size:13.5px;
  line-height:1.35;
}
.docs-page .docs-rel-flow-row small,
.docs-page .docs-rel-recovery-row small,
.docs-page .docs-sdk-lifecycle-diagram .docs-lifecycle-row small,
.docs-page .docs-arch-flow small,
.docs-page .docs-semantic-flow small,
.docs-page .docs-semantic-pipeline small,
.docs-page .docs-diagram-flow small {
  font-size:12.25px;
  line-height:1.48;
}

/* Diagram headings/captions */
.docs-page .docs-diagram-head span {
  font-size:11.5px;
}
.docs-page .docs-diagram-head code {
  font-size:13.5px;
  line-height:1.5;
}
.docs-page .docs-diagram-legend {
  font-size:12.25px;
}

/* Additional repeated explanatory cards */
.docs-page .docs-feature-grid strong {
  font-size:14.5px;
}
.docs-page .docs-feature-grid span {
  font-size:13.5px;
  line-height:1.55;
}
.docs-page .docs-recovery-grid div,
.docs-page .docs-boundary-card li {
  font-size:14px;
}
.docs-page .docs-branch-row .branch b,
.docs-page .docs-retry-strip strong,
.docs-page .recovery-return {
  font-size:13px;
}
.docs-page .docs-branch-row .branch span,
.docs-page .docs-retry-strip span {
  font-size:12.25px;
  line-height:1.48;
}

/* Keep the larger text comfortable on compact screens. */
@media(max-width:700px) {
  .docs-page .docs-boundary-card li,
  .docs-page .docs-reliability-principles span,
  .docs-page .docs-start-copy > span {
    font-size:13.5px;
  }
}

/* FireSonic compact flow-card fit fix v12
   Keep the enlarged Docs typography while preventing long state labels
   such as PROCESSED from escaping compact lifecycle/recovery boxes. */
.docs-page .docs-rel-flow-row > div,
.docs-page .docs-rel-recovery-row > div {
  min-width: 0;
  padding-left: 9px;
  padding-right: 9px;
}

.docs-page .docs-rel-flow-row strong,
.docs-page .docs-rel-recovery-row strong {
  display: block;
  max-width: 100%;
  font-size: 10px;
  line-height: 1.3;
  overflow-wrap: anywhere;
  word-break: normal;
}

.docs-page .docs-rel-flow-row small,
.docs-page .docs-rel-recovery-row small {
  display: block;
  max-width: 100%;
  font-size: 11px;
  line-height: 1.46;
  overflow-wrap: anywhere;
}


/* FireSonic SDK animated placeholder GIFs v14 */
.docs-page .docs-gif-placeholder img {
  display:block;
  width:100%;
  max-width:880px;
  height:auto;
  margin:0 auto;
  border:1px dashed #bdcddd;
  border-radius:12px;
  background:#f8fafc;
}
.docs-page .docs-gif-placeholder figcaption {
  max-width:880px;
  margin:8px auto 0;
  color:#71849a;
  font-size:12.5px;
  line-height:1.45;
}


/* FireSonic Docs video walkthroughs v17 */
.docs-page .docs-video-figure {
  max-width: 880px;
  margin: 20px auto 6px;
}
.docs-page .docs-video-frame {
  overflow: hidden;
  border: 1px solid #d4e0ed;
  border-radius: 14px;
  background: #0b1e34;
  box-shadow: 0 10px 28px rgba(13, 37, 62, .08);
}
.docs-page .docs-walkthrough-video {
  display: block;
  width: 100%;
  height: auto;
  background: #0b1e34;
}
.docs-page .docs-video-figure figcaption {
  margin: 9px 4px 0;
  color: #71849a;
  font-size: 13px;
  line-height: 1.5;
}
.docs-page .docs-next-step {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 28px 0 6px;
  padding: 20px 22px;
  border: 1px solid #cfe0f1;
  border-radius: 14px;
  background: #f5f9fd;
}
.docs-page .docs-next-step strong {
  display: block;
  margin-bottom: 5px;
  color: #0b2d53;
  font-size: 16px;
}
.docs-page .docs-next-step p {
  margin: 0;
  color: #4f6a88;
  font-size: 14px;
  line-height: 1.55;
}
.docs-page .docs-next-step > a {
  flex: 0 0 auto;
  font-weight: 700;
  white-space: nowrap;
}
@media(max-width: 720px) {
  .docs-page .docs-next-step {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
}
