/* docs.css: the shared knowledge-base article shell, after Semrush's KB (semrush.com/kb/1184-audit-your-website, measured
   2026-10-16): a head row with the hub's name and a search field, the tree on the left, the article on a raised card with
   breadcrumbs above it, and a sticky right rail holding "On this page" (the article's h2s, the current one marked)
   and "Is this article helpful?". Under 1200px the rail folds into the card: the contents list after the lede, the
   question at the foot. Under 800px the tree becomes the disclosure above the article. Canonical:
   SkailSites/shared/docs.css, copied to every site by sync_shared.py. Tokens only; every value has a fallback. */
/* The disclosure chevron is Lucide's chevron-down, its ink centred in its box, so it sits on the label's centre in any
   font. The rotated half-bordered square it replaced needed a margin nudge that was right for Archivo and 3px high for
   the system font (board, 2026-10-22, nowlark.com/support/questions at 390). */
:root{--rf-chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}
.rf-wrap{--rf-side-w:248px;--rf-rail-w:200px;--rf-gap:32px;--rf-top:calc(var(--nav-h,72px) + 24px);
  /* Semrush's frame, measured 2026-10-18 (kb/1184-audit-your-website): 12px from the screen's edge at 1280, the card 728px
     wide, a 32px gap and a 200px rail; at 1440 and up the frame stops growing and the rail is 220px. */
  --rf-pad-x:clamp(24px,calc((100vw - 1280px) / 2 + 24px),40px);
  max-width:1360px;margin:0 auto;padding:calc(var(--nav-h,72px) + 40px) var(--rf-pad-x) 96px;
  display:grid;grid-template-columns:var(--rf-side-w) minmax(0,1fr) var(--rf-rail-w);column-gap:var(--rf-gap);align-items:start}

/* The head row: the hub's name over the tree, the search field over the card (one subgrid, so both stay on their columns). */
.rf-top{grid-column:1/-1;display:grid;grid-template-columns:subgrid;align-items:center;margin:0 0 24px}
.rf-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.rf-hub{display:inline-flex;align-items:center;min-height:44px;font-size:22px;font-weight:400;line-height:1.3;color:var(--ink);text-decoration:none}
.rf-hub:hover{color:var(--brand,#ffb23e)}
.rf-search{grid-column:2;position:relative;display:flex;gap:24px;align-items:center}
.rf-search input{flex:1;min-width:0;height:56px;padding:0 18px;
 font:inherit;font-size:16px;color:var(--ink);
  background:var(--rf-field,var(--rf-card,var(--surface,rgba(255,255,255,.04))));border:1px solid var(--control-line,var(--line,rgba(255,255,255,.14)));border-radius:var(--rf-r-ctl,6px)}
.rf-search input::placeholder{color:var(--ink3,var(--ink2))}
.rf-search input:focus-visible{outline:2px solid var(--brand,#ffb23e);outline-offset:1px}
/* The button is secondary to the field (Enter searches too): the field's radius and line, no fill of its own. */
.rf-search .rf-sbtn{flex:none;height:56px;min-width:120px;padding:0 28px;font:inherit;font-size:16px;font-weight:500;border-radius:var(--rf-r-ctl,6px);cursor:pointer;
  color:var(--ink);background:transparent;border:1px solid var(--control-line,var(--line,rgba(255,255,255,.14)))}
.rf-search .rf-sbtn:hover{border-color:var(--ink3,var(--ink2))}
.rf-hits{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:20;margin:0;padding:6px;list-style:none;max-height:min(60vh,420px);overflow:auto;
  background:var(--rf-pop,var(--page,#111));border:1px solid var(--line,rgba(255,255,255,.14));border-radius:var(--rf-r-ctl,8px);box-shadow:0 12px 32px rgba(0,0,0,.28)}
.rf-hits a{display:block;padding:10px 12px;border-radius:6px;color:var(--ink);text-decoration:none;line-height:1.35}
.rf-hits a small{display:block;color:var(--ink3,var(--ink2));font-size:13px;margin-top:2px}
.rf-hits a:hover,.rf-hits a[aria-selected=true]{background:var(--brand-tint,rgba(255,178,62,.12))}
.rf-hits .rf-none{padding:10px 12px;color:var(--ink2)}

/* The tree. */
/* Sticky with its own scroll, so a short article ends above the footer instead of over an empty column. Its foot fades
   out, so a tree taller than the screen reads as one that scrolls, not one cut off; the padding lifts the last row clear
   of the fade at the end of the scroll. */
.rf-side{grid-column:1;position:sticky;top:var(--rf-top);max-height:calc(100vh - var(--rf-top) - 24px);overflow:auto;font-size:14px;
  overscroll-behavior:contain}
.rf-wrap .rf-side{padding-right:12px!important}
/* The fade marks rows out of view (docs.js sets .rf-more and .rf-scrolled), so a tree that fits shows its last row in full. */
.rf-wrap .rf-side.rf-more{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 40px),transparent);
  mask-image:linear-gradient(to bottom,#000 calc(100% - 40px),transparent)}
.rf-wrap .rf-side.rf-scrolled:not(.rf-more){-webkit-mask-image:linear-gradient(to bottom,transparent,#000 32px);
  mask-image:linear-gradient(to bottom,transparent,#000 32px)}
.rf-wrap .rf-side nav{padding-bottom:40px}
.rf-wrap .rf-side.rf-scrolled.rf-more{-webkit-mask-image:linear-gradient(to bottom,transparent,#000 32px,#000 calc(100% - 40px),transparent);
  mask-image:linear-gradient(to bottom,transparent,#000 32px,#000 calc(100% - 40px),transparent)}
/* The pane's scrollbar stays drawn (macOS hides an overlay scrollbar until the pointer scrolls, which read as a tree cut
   off by its fade). A styled ::-webkit-scrollbar is always shown; scrollbar-width or scrollbar-color would switch it off. */
.rf-wrap .rf-side::-webkit-scrollbar{width:8px}
.rf-wrap .rf-side::-webkit-scrollbar-thumb{background:var(--ink3);border-radius:4px;border:2px solid transparent;background-clip:padding-box}
.rf-wrap .rf-side::-webkit-scrollbar-track{background:transparent}
.rf-side{background:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;padding:0 4px 0 0!important;border-radius:0!important}
.rf-side nav{position:relative}
.rf-side h4,.rf-side .rf-g{position:relative;margin:0;padding:11px 10px 12px 30px;font-size:14px;line-height:21px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--ink2)}
.rf-side h4::before,.rf-side .rf-g::before{content:"";position:absolute;left:11px;top:17px;width:6px;height:6px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
/* A topic whose pages are not listed under it points right, not down. */
.rf-side a.rf-g:not(:has(+a:not(.rf-g)))::before{left:9px;top:16px;transform:rotate(-45deg)}
/* A page with nothing under it (the glossary) is a leaf: no chevron at all. */
.rf-side a.rf-g.rf-leaf::before,.rf-mob a.rf-g.rf-leaf::before{content:none}
.rf-side a{display:block;margin:0;padding:11px 10px 12px 30px;text-wrap:pretty;border-radius:0;color:var(--ink3,var(--ink2));text-decoration:none;font-size:14px;line-height:21px;font-weight:500}
.rf-side .rf-g~a:not(.rf-g){padding-left:44px}
/* An h4 is a fixed section header, not a topic that opens (nowlark.com's API and support panes): no chevron, the text
   colour, and its links on its own text edge, as a Finder or Mail sidebar groups its rows. */
.rf-side h4{padding-top:20px;padding-bottom:4px;font-weight:600;color:var(--ink)}.rf-side h4:first-child{padding-top:0}
.rf-side h4::before,.rf-mob h4::before{content:none}
.rf-side a.rf-g{color:var(--ink2)}.rf-side a.rf-g:hover,.rf-side a.rf-g[aria-current=page]{color:var(--ink)}
.rf-side a:hover{color:var(--ink)}
.rf-side a[aria-current=page]{color:var(--ink);background:var(--brand-tint,rgba(127,127,127,.1));border-radius:6px;font-weight:500}
/* The hub's name starts on the tree's text edge, not left of it. */
.rf-top .rf-hub{padding-left:30px}
/* Every tree row is 44px, rows touching, mouse or finger: a tap between two lands on one of them. */

/* The article column: breadcrumbs, then the card. */
.rf-main{grid-column:2;min-width:0}
.rf-main>.s-crumbs,.rf-main>.rf-crumbs{margin:0 0 16px}
.rf-crumbs ol{display:flex;flex-wrap:wrap;gap:4px 12px;margin:0;padding:0;list-style:none;font-size:14px;line-height:21px;color:var(--ink3,var(--ink2))}
/* The separator ends the item before it, so a crumb that wraps starts its line with its own words, not a lone slash. */
.rf-crumbs li:not(:last-child)::after{content:"/";margin-left:12px;color:var(--ink3,var(--ink2))}
.rf-crumbs a{color:var(--ink2);text-decoration:none}.rf-crumbs a:hover{color:var(--ink);text-decoration:underline}
.rf-art{grid-column:2;min-width:0;background:var(--rf-card,var(--surface,rgba(255,255,255,.035)));border:1px solid var(--rf-card-line,var(--line,rgba(255,255,255,.1)));
  border-radius:var(--rf-r,6px);padding:44px clamp(16px,3vw,40px) 40px}
.rf-main>.rf-art{grid-column:auto}
.rf-art p,.rf-art li,.rf-art td,.rf-art em{overflow-wrap:break-word}   /* a long URL in prose wraps; headings and endpoint lines keep their words whole */
.rf-art>h1{font-size:clamp(32px,3.4vw,42px);line-height:1.2;font-weight:700;letter-spacing:0;margin:0 0 16px}
/* A heading fills its line before it wraps (Semrush: plain wrapping). A site's own `text-wrap: balance` on every heading
   split a title that just missed one line into two half lines, a strip of empty card beside both (orgomedia.ai, 2026-10-18);
   pretty still keeps a last word from standing alone. */
.rf-art :is(h1,h2,h3,h4),.rf-home :is(h1,h2){text-wrap:pretty}
.rf-art>.s-crumbs+h1,.rf-art>.rf-crumbs+h1{margin-top:12px}
.rf-art .rf-lede{font-size:16px;line-height:24px;color:var(--ink);margin:0 0 16px}
.rf-art h2{font-size:clamp(24px,2.4vw,32px);line-height:1.2;font-weight:700;margin:56px 0 16px;scroll-margin-top:calc(var(--nav-h,72px) + 20px)}
.rf-art h3{font-size:22px;line-height:1.3;font-weight:700;margin:44px 0 16px;scroll-margin-top:calc(var(--nav-h,72px) + 20px)}
.rf-art h4{font-size:16px;margin:24px 0 8px;scroll-margin-top:calc(var(--nav-h,72px) + 20px)}
.rf-art :is(h2,h3,h4) .rf-a{margin-left:8px;opacity:0;color:var(--ink3,var(--ink2));text-decoration:none;font-weight:400}
.rf-art :is(h2,h3,h4):hover .rf-a,.rf-art .rf-a:focus{opacity:1}
.rf-art p,.rf-art li{line-height:24px;max-width:none}.rf-art p{margin:0 0 16px}
/* The lede is one sentence at a larger size: 68ch keeps it under 80 characters a line where the article spans the rail
   column (a topic page has no rail), wrapping it into two full lines instead of one 112-character line. */
.rf-art .rf-lede{max-width:68ch}.rf-art ul,.rf-art ol{padding-left:22px}
.rf-art li+li{margin-top:4px}
.rf-art a{color:var(--brand,#ffb23e)}
.rf-art code{font:0.92em var(--font-mono,ui-monospace,monospace);background:rgba(127,127,127,.12);padding:2px 6px;border-radius:6px}
.rf-art pre{margin:16px 0;padding:16px 18px;border-radius:var(--r-ctl,10px);background:var(--page);border:1px solid var(--control-line,var(--line));overflow:auto;line-height:1.6}
.rf-art>pre,.rf-art>.rf-code,.rf-art blockquote{max-width:74ch}   /* code and quotes hold the prose measure; tables keep the column */
.rf-art pre code{background:none;padding:0;font-size:13.5px}
.rf-art table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14.5px}
@media(max-width:1100px){.rf-art table{display:block;overflow:auto}}
@media(max-width:1100px){.rf-art th,.rf-art td{min-width:9em}}
.rf-art th,.rf-art td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line,rgba(255,255,255,.12));vertical-align:top}
.rf-art th{font-weight:600;color:var(--ink);white-space:nowrap}
.rf-art blockquote{margin:16px 0;padding:4px 18px;border-left:3px solid var(--brand,#ffb23e);color:var(--ink2)}
/* Screenshots and console remakes sit in a soft frame, as Semrush's do (radius 10, a 16px shadow). */
.rf-art figure{margin:24px 0}
.rf-art figure img,.rf-art>p>img,.rf-art .rf-shot{display:block;max-width:100%;height:auto;border-radius:var(--rf-r-shot,10px);box-shadow:var(--rf-shot-shadow,4px 4px 16px rgba(0,0,0,.24))}
.rf-art figcaption{margin-top:10px;font-size:14px;color:var(--ink3,var(--ink2))}
/* A note: Semrush's tinted tip box. */
.rf-note{margin:20px 0;padding:14px 18px;border-radius:var(--rf-r,10px);background:var(--brand-tint,rgba(255,178,62,.1));max-width:74ch}
.rf-note>:first-child{margin-top:0}.rf-note>:last-child{margin-bottom:0}
/* A call to action inside an article (Semrush's green "Launch Site Audit"). */
.rf-cta{display:inline-flex;align-items:center;gap:8px;margin:8px 0 4px;padding:12px 26px;border-radius:999px;font-weight:600;text-decoration:none!important;
  color:var(--on-brand,#111)!important;background:var(--brand,#ffb23e)}
.rf-cta:hover{filter:brightness(1.06)}
.rf-ep{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}
.rf-m{font:700 12px var(--font-mono,ui-monospace,monospace);padding:3px 8px;border-radius:6px;background:var(--brand-tint2,rgba(255,178,62,.15));color:var(--brand,#ffb23e);letter-spacing:.04em}
/* Previous and next: two plain links under one rule, no boxes inside the card. */
/* Previous and next share a row while both titles fit on one line each, and stack when they do not (2026-10-18: a
   half-width column wrapped "Do I even need all that? (Standalone mode)" by 19px beside an empty half). */
.rf-pn{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px;margin-top:40px;padding-top:20px;border-top:1px solid var(--line,rgba(255,255,255,.12))}
.rf-pn a{display:block;min-height:44px;padding:10px 0;text-decoration:none;color:var(--rf-link,var(--brand,#ffb23e));font-weight:600;text-wrap:balance}
.rf-pn .pv small::before{content:"\2039\00a0"}.rf-pn .nx small::after{content:"\00a0\203a"}
/* After a topic's rows the rows' own bottom rule is the divider. */
.rf-rows+.rf-pn{margin-top:0;padding-top:4px;border-top:0}
.rf-pn a:hover{text-decoration:underline}
.rf-pn a small{display:block;color:var(--ink3,var(--ink2));margin-bottom:4px;font-weight:400}.rf-pn>a{flex:1 1 auto;max-width:100%}.rf-pn>span:empty{display:none}.rf-pn .nx{text-align:right}
.rf-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:24px 0}
.rf-cards a{display:block;padding:20px;border:1px solid var(--line,rgba(255,255,255,.12));border-radius:var(--rf-r,10px);text-decoration:none;color:var(--ink);text-wrap:pretty}
.rf-cards a:hover{border-color:var(--ink3,var(--ink2))}
.rf-cards a b{display:block;margin-bottom:6px}.rf-cards a span{color:var(--ink2);font-size:14.5px}
/* Copy sits in the code box's top-right corner, as Stripe and Vercel put it (the owner, 2026-10-22). Only the line beside it
   gives way: docs.js puts that line in .rf-l1, clipped --rf-cut short of the edge (the pill's widest label, "Copied") and
   scrolled with the box, so every other line runs the full width (the board, round 2: an 84px column kept clear down the
   whole box cut lines 140px short of the edge). A clip, not a mask, so the layout guard sees the text end where it does. */
.rf-code{position:relative;display:grid;margin:16px 0}.rf-code pre{grid-area:1/1;margin:0}
/* The code, not the box, scrolls and never breaks a token: a long line fades over its last 48px until it is scrolled to. */
.rf-code pre:has(>code){overflow:hidden}.rf-code pre>code{display:block;overflow-x:auto;white-space:pre;overflow-wrap:normal;word-break:normal;line-height:1.6}
.rf-code.rf-more pre>code{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent)}
.rf-l1{display:inline-block;vertical-align:top;max-width:calc(100% - var(--rf-cut,0px));overflow:hidden}
.rf-l1[data-more]{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(to right,#000 calc(100% - 24px),transparent)}
/* A message to paste (PageSoar's note for a host, a bare <pre>) is prose: it wraps at spaces, round a gap the size of Copy. */
.rf-code.rf-prose pre>code{white-space:pre-wrap}
.rf-gap{display:none}.rf-prose .rf-gap{display:block;float:right;width:var(--rf-cut,0px);height:var(--rf-band,0px)}
.rf-copy{font:600 12px var(--font,inherit);padding:6px 12px;border-radius:999px;border:1px solid var(--control-line,var(--line));background:var(--page);color:var(--ink2);cursor:pointer}
.rf-copy:hover{color:var(--ink)}.rf-copy[data-ok]{color:var(--brand,#ffb23e)}
.rf-copy{position:absolute;top:8px;right:8px;z-index:1}
/* The pill stays small; what a finger hits is 44px tall. */
.rf-copy::after{content:"";position:absolute;inset:-8px}


/* The right rail (docs.js fills it): "On this page", then "Is this article helpful?". */
.rf-rail{grid-column:3;position:sticky;top:var(--rf-top);max-height:calc(100vh - var(--rf-top) - 24px);overflow:auto;font-size:14px;margin-top:37px}
.rf-rail:empty{display:none}
/* A page with no rail (a topic's list) gives its column to the article, so nothing sits empty on the right. Desktop
   only: on a phone grid-column:2/-1 made a second column and laid the search and the menu in one cell. */
.rf-toc-h{margin:0 0 12px;font-size:14px;line-height:20px;font-weight:700;color:var(--ink)}
.rf-toc ol{list-style:none;margin:0;padding:0}
.rf-toc li{margin:0}.rf-toc li+li{margin-top:8px}
.rf-toc a{display:block;padding:2px 12px 2px 0;color:var(--ink2);text-decoration:none;line-height:21px}
.rf-toc a:hover{color:var(--ink)}
.rf-toc a[aria-current=true]{color:var(--ink);font-weight:500}
@media (pointer:coarse){.rf-toc li+li{margin-top:0}.rf-toc a{padding-top:11px;padding-bottom:12px}}
.rf-rail .rf-helpful{margin-top:28px;padding-top:28px;border-top:1px solid var(--line,rgba(255,255,255,.12))}
.rf-rail .rf-helpful:first-child{margin-top:0;padding-top:0;border-top:0}
.rf-helpful p{margin:0 0 10px;font-size:14px;color:var(--ink2)}
.rf-helpful div{display:flex;gap:8px}
.rf-helpful button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:56px;min-height:44px;padding:0 16px;font:inherit;font-size:14px;font-weight:600;
  border-radius:var(--rf-r-ctl,6px);border:1px solid var(--control-line,var(--line,rgba(255,255,255,.14)));background:transparent;color:var(--ink);cursor:pointer}
.rf-helpful button:hover{border-color:var(--ink3,var(--ink2))}
.rf-helpful button svg{width:18px;height:18px}.rf-helpful svg.rf-down{transform:scale(1,-1)}   /* a class, not a style attribute: a strict CSP (style-src 'self') drops those */
.rf-helpful [role=status]{margin:0;color:var(--ink)}
/* The folded copies inside the card, shown only where the rail is not. */
.rf-toc-in,.rf-art>.rf-helpful{display:none}
.rf-art>.rf-helpful{margin-top:40px;padding-top:20px;border-top:1px solid var(--line,rgba(255,255,255,.12))}
.rf-toc-in{margin:0 0 28px;padding:0 0 4px;border-block:1px solid var(--rf-card-line,var(--line,rgba(255,255,255,.12)))}
.rf-toc-in summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:44px;font-weight:600;color:var(--ink);cursor:pointer;list-style:none}
.rf-toc-in summary::-webkit-details-marker{display:none}
.rf-toc-in summary::after{content:"";flex:none;width:16px;height:16px;background:currentColor;-webkit-mask:var(--rf-chev) center/16px no-repeat;mask:var(--rf-chev) center/16px no-repeat}
.rf-toc-in[open] summary::after{transform:rotate(180deg)}
/* A host's own disclosure chevron outranks these by specificity (Nowlark's controls.css,
   details:not(.passwrap):not(.s-q):not(.s-menu):not(.hdmenu)>summary::after, a 6px box nudged 2px up), so the help
   centre's box is pinned here, the same on every site. */
:is(.rf-mob,.rf-toc-in) summary::after{box-sizing:border-box!important;width:16px!important;height:16px!important;border:0!important;margin:0!important;transform:none!important}
:is(.rf-mob,.rf-toc-in)[open] summary::after{transform:rotate(180deg)!important}
/* Open, the questions are quiet rows in the text colour, as on the hub, not a column of accent links. */
.rf-toc-in ol{list-style:none;margin:4px 0 0;padding:0}.rf-toc-in li{margin:0}
.rf-toc-in a{display:block;padding:10px 0;color:var(--ink2);text-decoration:none;text-wrap:pretty}.rf-toc-in a:hover{color:var(--ink)}

/* The head row's field is the card's width, its button ending on the card's edge, on every page (Semrush: the form and
   the card share both edges). It spanned the card and rail until 2026-10-18 and so ran past the card under it. A page
   without a rail keeps its card in the card's column too, as Semrush's kb/837 does: spread over the rail's column, a
   topic page's rows left their one-line summaries 600px short of the chevron (board, 2026-10-22). The tree, the field
   and the card never move between pages. */
@media(min-width:1440px){.rf-wrap{--rf-rail-w:220px}}
.rf-mob{display:none}
@media(max-width:1199px){
  .rf-wrap{grid-template-columns:var(--rf-side-w) minmax(0,1fr)}
  .rf-rail{display:none}
  .rf-toc-in,.rf-art>.rf-helpful{display:block}
}
@media(max-width:1100px){.rf-wrap{--rf-side-w:224px}}
@media(max-width:800px){
  .rf-wrap{grid-template-columns:minmax(0,1fr);--rf-pad-x:16px;padding-bottom:48px}   /* a phone keeps the 16px gutter, and the last band sits 48px over the footer */
  .rf-top{grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:20px}.rf-top .rf-hub{display:none}
  .rf-search{grid-column:1;gap:8px}.rf-search input,.rf-search .rf-sbtn{height:48px}.rf-search .rf-sbtn{min-width:0;padding:0 20px}
  .rf-side{display:none}.rf-main,.rf-art{grid-column:1}
  .rf-art{padding:20px 16px 24px}
  .rf-art>h1{font-size:28px;text-wrap:wrap}
  /* No trail on a phone: the menu above names the page and holds the way home, and the trail cut to its parents read as a stray word. */
  .rf-main>:is(.s-crumbs,.rf-crumbs){display:none}
  .rf-mob summary::-webkit-details-marker{display:none}
  .rf-mob summary::after{content:"";flex:none;width:16px;height:16px;background:currentColor;-webkit-mask:var(--rf-chev) center/16px no-repeat;mask:var(--rf-chev) center/16px no-repeat}
  .rf-mob[open] summary::after{transform:rotate(180deg)}
  .rf-mob{display:block;margin-bottom:16px}.rf-mob summary{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:8px 16px;border:1px solid var(--control-line,var(--line,rgba(255,255,255,.12)));
    border-radius:var(--rf-r-ctl,6px);background:var(--rf-field,var(--rf-card,var(--surface,rgba(255,255,255,.04))));font-weight:600;cursor:pointer}
  /* Closed, the list takes no box at all: a closed <details> only skips painting it, so its rows still had geometry under the article.
     Open, the list is one panel under the field, its rows the tree's: a chevron on each topic, the current page tinted. */
  .rf-mob:not([open]) .rf-mob-list{display:none}
  .rf-mob[open] .rf-mob-list{margin-top:8px;border:1px solid var(--control-line,var(--line,rgba(255,255,255,.12)));border-radius:var(--rf-r-ctl,6px);
    background:var(--rf-card,var(--surface,rgba(255,255,255,.035)))}
  .rf-mob nav,.rf-mob-list{padding:6px}.rf-mob a{display:block;position:relative;padding:12px 14px 12px 20px;text-wrap:pretty;border-radius:6px;color:var(--ink2);text-decoration:none}
  .rf-mob h4,.rf-mob .rf-g{position:relative;margin:0;padding:12px 14px 12px 20px;font-size:inherit;font-weight:600;color:var(--ink)}
  .rf-mob h4::before,.rf-mob .rf-g::before{content:"";position:absolute;left:5px;top:19px;width:6px;height:6px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
  .rf-mob a.rf-g:not(:has(+a:not(.rf-g)))::before{left:3px;top:20px;transform:rotate(-45deg)}
  .rf-mob .rf-g~a:not(.rf-g){padding-left:34px}
  .rf-mob a[aria-current=page]{color:var(--ink);background:var(--brand-tint,rgba(127,127,127,.1))}
  .rf-pn{flex-direction:column}.rf-pn .nx{text-align:left}
}

/* The hub home, after semrush.com/kb (measured 2026-10-16): "How can we help you?" over the search, a 3-column grid of
   category cards (icon, title, one line), a bordered band with one action, sections headed at 42px (Learn cards, quick
   links) and a larger support band. Markup: main.rf-home > .rf-home-top (h1 + form.rf-search), ul.rf-cats > li >
   a.rf-cat (.rf-cat-i, .rf-cat-t, .rf-cat-d), section.rf-band (div + optional .rf-band-art), section.rf-sec (h2.rf-sec-h
   + ul.rf-cats.rf-learn, ul.rf-quick or ol.rf-steps). A category page is the article shell with ul.rf-rows inside the card. */
.rf-home{max-width:1185px;margin:0 auto;padding:calc(var(--nav-h,72px) + 24px) clamp(16px,3vw,40px) 96px}
.rf-home-top{padding:60px 0 0;margin:0 0 56px}
.rf-home-top h1{font-size:clamp(34px,4.2vw,48px);line-height:1.2;font-weight:700;letter-spacing:0;margin:0 0 28px;color:var(--ink)}
.rf-home-top .rf-search{max-width:none}
.rf-cats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
/* Each tile spans three rows of the list (name, line, count) as a subgrid, so the lines of one row of tiles start level
   however many lines a name takes, and the counts sit on one line at the foot. */
.rf-cats>li{margin:0;display:grid;grid-row:span 3;grid-template-rows:subgrid;row-gap:0}
.rf-cats>li>.rf-cat{grid-row:1/-1;grid-template-rows:subgrid}
/* a tile with no article count (nowlark.com/support) spans two rows, not three, and keeps its top padding at the bottom,
   so the card ends with its text (the board, 2026-10-22: 45px of nothing under every description) */
.rf-cats>li:not(:has(.rf-cat-n)){grid-row:span 2}
@media(min-width:641px){.rf-cat:not(:has(.rf-cat-n)){padding-bottom:20px}}
.rf-cat{flex:1;display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:12px;row-gap:10px;align-items:start;align-content:start;grid-template-rows:auto auto 1fr;
  padding:20px 28px 28px;border:1px solid var(--rf-card-line,var(--line,rgba(255,255,255,.12)));border-radius:var(--rf-r-lg,10px);
  background:var(--rf-card,var(--surface,rgba(255,255,255,.035)));color:var(--ink);text-decoration:none;transition:border-color .15s,box-shadow .15s}
.rf-cat:hover{border-color:var(--ink3,var(--ink2));box-shadow:0 10px 30px rgba(0,0,0,.12)}
.rf-cat:focus-visible{outline:2px solid var(--brand,#ffb23e);outline-offset:2px}
.rf-cat-i{width:44px;height:44px;display:grid;place-items:center;color:var(--brand,#ffb23e)}
.rf-cat-i svg,.rf-cat-i .rf-ico{width:36px;height:36px}
/* Semrush's help centre: the topic's icon on its name's line, the name centred on it (docs_icons.py has the glyphs). */
.rf-cat-t{align-self:center;font-size:18px;line-height:1.3;font-weight:600;text-wrap:balance}
.rf-cat-d{grid-column:1/-1;font-size:14px;line-height:21px;color:var(--ink2);text-wrap:pretty}
/* A tile without an icon: one column, its count last. */
.rf-cat:not(:has(.rf-cat-i)){display:flex;flex-direction:column;gap:8px}

.rf-cat-n{grid-column:1/-1;align-self:end;padding-top:4px;font-size:13px;line-height:18px;color:var(--ink3,var(--ink2))}
.rf-learn .rf-cat{grid-template-columns:minmax(0,1fr);row-gap:8px}
.rf-learn .rf-cat-i{width:72px;height:72px;margin-bottom:8px;border-radius:16px;background:var(--brand-tint,rgba(255,178,62,.12))}
.rf-learn .rf-cat-i svg{width:40px;height:40px}
.rf-learn .rf-cat-t{font-size:16px}
.rf-sec{margin:96px 0 0}
.rf-sec-h{font-size:clamp(28px,3.4vw,42px);line-height:1.2;font-weight:700;letter-spacing:0;margin:0 0 28px;color:var(--ink)}
.rf-band{margin:56px 0 0;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:28px;
  border:1px solid var(--rf-card-line,var(--line,rgba(255,255,255,.12)));border-radius:var(--rf-r-lg,10px);background:var(--rf-card,var(--surface,rgba(255,255,255,.035)))}
.rf-band h2,.rf-band-t{font-size:18px;line-height:1.3;font-weight:600;margin:0 0 6px;color:var(--ink)}
.rf-band p{margin:0 0 16px;font-size:14px;line-height:21px;color:var(--ink2)}.rf-band p:last-child{margin-bottom:0}
.rf-band .rf-cta{margin:0}
/* The words take the row and the action ends it on the right edge, so the band holds no empty stretch. */
.rf-band>div:not(.rf-band-art):first-child{flex:0 1 auto;min-width:0}.rf-band>:last-child{flex:none}
.rf-band-art{flex:none;width:clamp(120px,14vw,180px);color:var(--brand,#ffb23e)}
.rf-band-art svg{display:block;width:100%;height:auto}
.rf-band-lg{margin-top:96px;padding:50px 56px;border-radius:16px;box-shadow:10px 10px 45px rgba(0,0,0,.1)}
.rf-band-lg h2{font-size:clamp(28px,3.4vw,42px);line-height:1.2;font-weight:700;margin:0 0 12px;max-width:12ch}
.rf-band-lg p{font-size:16px;line-height:24px;margin-bottom:28px;max-width:40ch}
.rf-band-lg .rf-band-art{width:clamp(160px,20vw,260px)}
/* A hub's "read these first": three numbered steps on one line, a rule above each, no boxes; the whole step is the link
   (its title's box stretched over it) and .rf-go says so. Markup: ol.rf-steps > li > a + p + span.rf-go. */
.rf-steps{list-style:none;counter-reset:rf-step;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.rf-steps li{position:relative;counter-increment:rf-step;margin:0;display:flex;flex-direction:column;align-items:flex-start;padding-top:24px;border-top:1px solid var(--line,rgba(255,255,255,.12))}
.rf-steps li::before{content:counter(rf-step);display:block;margin:0 0 12px;font-size:32px;font-weight:700;line-height:1;color:var(--brand,#ffb23e)}
.rf-steps a{font-size:20px;font-weight:600;line-height:1.3;color:var(--ink);text-decoration:none}
.rf-steps a::after{content:"";position:absolute;inset:0}
.rf-steps a:hover{color:var(--brand,#ffb23e)}
.rf-steps p{margin:8px 0 0;font-size:14px;line-height:1.55;color:var(--ink2);max-width:65ch}
/* each step's link sits on one line across the row, however long the line above it runs */
.rf-go{display:inline-block;margin-top:auto;padding-top:12px;font-size:14px;font-weight:600;color:var(--rf-link,var(--brand,#ffb23e))}
.rf-steps li:hover .rf-go{text-decoration:underline}
/* three across down to a small tablet (at 768 one column ran a 65ch step two thirds of the way across the band below) */
@media(max-width:600px){.rf-steps{grid-template-columns:minmax(0,1fr);gap:24px}}
/* .rf-steps-rows: the steps as one row each, number, title, line and link across, for a hub whose tiles above are three
   across already (the layout guard's same-shape-twice, pagesoar.com/resources 2026-10-21). Phones stack as before. */
@media(min-width:1000px){
  .rf-steps.rf-steps-rows{grid-template-columns:minmax(0,1fr);gap:0}
  .rf-steps-rows li{display:grid;grid-template-columns:40px minmax(0,1fr) minmax(0,1fr) 16px;column-gap:32px;align-items:baseline;padding:24px 0}
  .rf-steps-rows li::after{content:"";align-self:center;width:8px;height:8px;border:solid var(--ink3,var(--ink2));border-width:2px 2px 0 0;transform:rotate(45deg)}
  .rf-steps-rows li:last-child{border-bottom:1px solid var(--line,rgba(255,255,255,.12))}
  .rf-steps-rows li::before{margin:0;font-size:24px}
  .rf-steps-rows p{margin:0;max-width:none}
}
/* The row is the link (its title's box covers it), so a wide row shows a chevron in place of "Read the guide"; a
   phone keeps the words, the only sign there that a step opens (pagesoar.com/resources at 390, 2026-10-22). */
@media(min-width:1000px){.rf-steps-rows .rf-go{display:none}}
/* The questions as rows under a rule, two columns, in the text colour with a chevron: a list of links, not a wall of accent. */
.rf-quick{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
.rf-quick li{margin:0;border-top:1px solid var(--line,rgba(255,255,255,.12))}
.rf-quick a{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;align-items:center;min-height:56px;padding:12px 4px 12px 0;
  font-size:16px;line-height:24px;font-weight:500;color:var(--ink);text-decoration:none}
.rf-quick a::after{content:"";flex:none;width:8px;height:8px;margin-right:4px;border:solid var(--ink3,var(--ink2));border-width:2px 2px 0 0;transform:rotate(45deg)}
.rf-quick a:hover{color:var(--rf-link,var(--brand,#ffb23e))}
/* A category page: its articles as rows inside the card. */
/* Rows between two rules, not a box inside the card. */
.rf-rows{list-style:none;margin:24px 0;padding:0;border-block:1px solid var(--rf-card-line,var(--line,rgba(255,255,255,.12)))}
.rf-art ul.rf-rows{padding:0}.rf-rows li{margin:0;max-width:none}
.rf-rows li+li{border-top:1px solid var(--rf-card-line,var(--line,rgba(255,255,255,.12)))}
/* A grid, not a flex row: the title is a bare text node, and in a flex row it would sit beside its <small>. */
.rf-rows a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px;padding:20px 0;color:var(--ink);text-decoration:none;font-weight:600;line-height:21px;text-wrap:pretty}
.rf-rows a::after{content:"";grid-column:2;grid-row:1/span 3;width:8px;height:8px;border:solid currentColor;border-width:2px 2px 0 0;transform:rotate(45deg);margin-right:4px}
.rf-rows a .rf-t{grid-column:1}  /* the title, one grid cell however many <mark>s a search puts in it */
.rf-rows a:hover{background:var(--rf-hover,rgba(127,127,127,.06))}
.rf-rows a small{grid-column:1;display:block;margin-top:4px;text-wrap:pretty;font-weight:400;font-size:14px;color:var(--ink2)}
.rf-rows mark{background:var(--brand-tint,rgba(255,178,62,.2));color:inherit;border-radius:2px}
/* A search hit names its topic under its title (.rf-k), so a product guide reads apart from a basics one. */
.rf-rows a .rf-k{grid-column:1;display:block;margin-top:2px;font-weight:500;font-size:13px;line-height:18px;color:var(--ink3,var(--ink2))}
/* The summary sits under its title at every width, a mail list's subject over its preview. */
@media(max-width:1000px){.rf-cats{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
/* Two columns of questions under 900px left each about 310px, so a plain question wrapped beside empty space: one column. */
@media(max-width:900px){.rf-quick{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){
  .rf-home-top{padding-top:24px;margin-bottom:32px}
  /* On a phone the tiles are one divided list, not a stack of cards. */
  .rf-cats{grid-template-columns:minmax(0,1fr);gap:0;border-block:1px solid var(--rf-card-line,var(--line,rgba(255,255,255,.12)))}
  .rf-cats>li+li{border-top:1px solid var(--rf-card-line,var(--line,rgba(255,255,255,.12)))}
  .rf-cat{position:relative;padding:16px 28px 16px 0;border:0;border-radius:0;background:none;box-shadow:none}.rf-cat:hover{box-shadow:none}
  /* Each row ends in the chevron every other list here uses, on its title's line, so it reads as a row that opens. */
  .rf-cat::after{content:"";position:absolute;right:6px;top:38px;width:8px;height:8px;border:solid currentColor;border-width:2px 2px 0 0;transform:translateY(-50%) rotate(45deg)}.rf-quick{grid-template-columns:minmax(0,1fr)}
  .rf-band{flex-direction:column;align-items:flex-start;padding:22px}.rf-band-lg{padding:28px 22px}.rf-band-art{display:none}
  .rf-sec,.rf-band-lg{margin-top:64px}
}

/* docs_icons.py:start (Lucide 0.460.0, ISC; generated, never edited) */
.rf-ico{display:inline-block;flex:none;width:32px;height:32px;background:currentColor;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.rf-ico[data-icon="rocket"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z%22 /%3E%3Cpath d=%22m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z%22 /%3E%3Cpath d=%22M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0%22 /%3E%3Cpath d=%22M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="sliders-horizontal"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cline x1=%2221%22 x2=%2214%22 y1=%224%22 y2=%224%22 /%3E%3Cline x1=%2210%22 x2=%223%22 y1=%224%22 y2=%224%22 /%3E%3Cline x1=%2221%22 x2=%2212%22 y1=%2212%22 y2=%2212%22 /%3E%3Cline x1=%228%22 x2=%223%22 y1=%2212%22 y2=%2212%22 /%3E%3Cline x1=%2221%22 x2=%2216%22 y1=%2220%22 y2=%2220%22 /%3E%3Cline x1=%2212%22 x2=%223%22 y1=%2220%22 y2=%2220%22 /%3E%3Cline x1=%2214%22 x2=%2214%22 y1=%222%22 y2=%226%22 /%3E%3Cline x1=%228%22 x2=%228%22 y1=%2210%22 y2=%2214%22 /%3E%3Cline x1=%2216%22 x2=%2216%22 y1=%2218%22 y2=%2222%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="cpu"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Crect width=%2216%22 height=%2216%22 x=%224%22 y=%224%22 rx=%222%22 /%3E%3Crect width=%226%22 height=%226%22 x=%229%22 y=%229%22 rx=%221%22 /%3E%3Cpath d=%22M15 2v2%22 /%3E%3Cpath d=%22M15 20v2%22 /%3E%3Cpath d=%22M2 15h2%22 /%3E%3Cpath d=%22M2 9h2%22 /%3E%3Cpath d=%22M20 15h2%22 /%3E%3Cpath d=%22M20 9h2%22 /%3E%3Cpath d=%22M9 2v2%22 /%3E%3Cpath d=%22M9 20v2%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="folder-tree"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z%22 /%3E%3Cpath d=%22M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z%22 /%3E%3Cpath d=%22M3 5a2 2 0 0 0 2 2h3%22 /%3E%3Cpath d=%22M3 3v13a2 2 0 0 0 2 2h3%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="plug"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M12 22v-5%22 /%3E%3Cpath d=%22M9 8V2%22 /%3E%3Cpath d=%22M15 8V2%22 /%3E%3Cpath d=%22M18 8v5a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V8Z%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="smartphone"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Crect width=%2214%22 height=%2220%22 x=%225%22 y=%222%22 rx=%222%22 ry=%222%22 /%3E%3Cpath d=%22M12 18h.01%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="user-cog"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Ccircle cx=%2218%22 cy=%2215%22 r=%223%22 /%3E%3Ccircle cx=%229%22 cy=%227%22 r=%224%22 /%3E%3Cpath d=%22M10 15H6a4 4 0 0 0-4 4v2%22 /%3E%3Cpath d=%22m21.7 16.4-.9-.3%22 /%3E%3Cpath d=%22m15.2 13.9-.9-.3%22 /%3E%3Cpath d=%22m16.6 18.7.3-.9%22 /%3E%3Cpath d=%22m19.1 12.2.3-.9%22 /%3E%3Cpath d=%22m19.6 18.7-.4-1%22 /%3E%3Cpath d=%22m16.8 12.3-.4-1%22 /%3E%3Cpath d=%22m14.3 16.6 1-.4%22 /%3E%3Cpath d=%22m20.7 13.8 1-.4%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="book-open"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M12 7v14%22 /%3E%3Cpath d=%22M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="scan-search"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M3 7V5a2 2 0 0 1 2-2h2%22 /%3E%3Cpath d=%22M17 3h2a2 2 0 0 1 2 2v2%22 /%3E%3Cpath d=%22M21 17v2a2 2 0 0 1-2 2h-2%22 /%3E%3Cpath d=%22M7 21H5a2 2 0 0 1-2-2v-2%22 /%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%223%22 /%3E%3Cpath d=%22m16 16-1.9-1.9%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="chart-line"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M3 3v16a2 2 0 0 0 2 2h16%22 /%3E%3Cpath d=%22m19 9-5 5-4-4-3 3%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="globe"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22 /%3E%3Cpath d=%22M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20%22 /%3E%3Cpath d=%22M2 12h20%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="message-circle-question"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M7.9 20A9 9 0 1 0 4 16.1L2 22Z%22 /%3E%3Cpath d=%22M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3%22 /%3E%3Cpath d=%22M12 17h.01%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="graduation-cap"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z%22 /%3E%3Cpath d=%22M22 10v6%22 /%3E%3Cpath d=%22M6 12.5V16a6 3 0 0 0 12 0v-3.5%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="users"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2%22 /%3E%3Ccircle cx=%229%22 cy=%227%22 r=%224%22 /%3E%3Cpath d=%22M22 21v-2a4 4 0 0 0-3-3.87%22 /%3E%3Cpath d=%22M16 3.13a4 4 0 0 1 0 7.75%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="badge-check"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z%22 /%3E%3Cpath d=%22m9 12 2 2 4-4%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="book-a"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20%22 /%3E%3Cpath d=%22m8 13 4-7 4 7%22 /%3E%3Cpath d=%22M9.1 11h5.7%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="wrench"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="send"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z%22 /%3E%3Cpath d=%22m21.854 2.147-10.94 10.939%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="calendar-clock"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M21 7.5V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h3.5%22 /%3E%3Cpath d=%22M16 2v4%22 /%3E%3Cpath d=%22M8 2v4%22 /%3E%3Cpath d=%22M3 10h5%22 /%3E%3Cpath d=%22M17.5 17.5 16 16.3V14%22 /%3E%3Ccircle cx=%2216%22 cy=%2216%22 r=%226%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="reply"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpolyline points=%229 17 4 12 9 7%22 /%3E%3Cpath d=%22M20 18v-2a4 4 0 0 0-4-4H4%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="inbox"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpolyline points=%2222 12 16 12 14 15 10 15 8 12 2 12%22 /%3E%3Cpath d=%22M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="blocks"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Crect width=%227%22 height=%227%22 x=%2214%22 y=%223%22 rx=%221%22 /%3E%3Cpath d=%22M10 21V8a1 1 0 0 0-1-1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-5a1 1 0 0 0-1-1H3%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="bell-ring"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9%22 /%3E%3Cpath d=%22M10.3 21a1.94 1.94 0 0 0 3.4 0%22 /%3E%3Cpath d=%22M4 2C2.8 3.7 2 5.7 2 8%22 /%3E%3Cpath d=%22M22 8c0-2.3-.8-4.3-2-6%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="clipboard-list"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Crect width=%228%22 height=%224%22 x=%228%22 y=%222%22 rx=%221%22 ry=%221%22 /%3E%3Cpath d=%22M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2%22 /%3E%3Cpath d=%22M12 11h4%22 /%3E%3Cpath d=%22M12 16h4%22 /%3E%3Cpath d=%22M8 11h.01%22 /%3E%3Cpath d=%22M8 16h.01%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="layout-dashboard"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Crect width=%227%22 height=%229%22 x=%223%22 y=%223%22 rx=%221%22 /%3E%3Crect width=%227%22 height=%225%22 x=%2214%22 y=%223%22 rx=%221%22 /%3E%3Crect width=%227%22 height=%229%22 x=%2214%22 y=%2212%22 rx=%221%22 /%3E%3Crect width=%227%22 height=%225%22 x=%223%22 y=%2216%22 rx=%221%22 /%3E%3C/svg%3E")}
.rf-ico[data-icon="user-round-cog"]{--ico:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22 %3E%3Cpath d=%22M2 21a8 8 0 0 1 10.434-7.62%22 /%3E%3Ccircle cx=%2210%22 cy=%228%22 r=%225%22 /%3E%3Ccircle cx=%2218%22 cy=%2218%22 r=%223%22 /%3E%3Cpath d=%22m19.5 14.3-.4.9%22 /%3E%3Cpath d=%22m16.9 20.8-.4.9%22 /%3E%3Cpath d=%22m21.7 19.5-.9-.4%22 /%3E%3Cpath d=%22m15.2 16.9-.9-.4%22 /%3E%3Cpath d=%22m21.7 16.5-.9.4%22 /%3E%3Cpath d=%22m15.2 19.1-.9.4%22 /%3E%3Cpath d=%22m19.5 21.7-.4-.9%22 /%3E%3Cpath d=%22m16.9 15.2-.4-.9%22 /%3E%3C/svg%3E")}
/* docs_icons.py:end */
