/* ==========================================================================
   Spoofey docs: the help centre, Your tickets, the blog and the legal pages.

   The site's own theme (bg.js's navy sky, the nav and footer as everywhere),
   with Spoofey's marks where they mean something:
   - a topic is its hex gem (.hexm, base.css) in the topic's colours
   - Spoofey AI is the sparkle (.ai-mark) and the AI gradient
   - your messages are blue outgoing texts, as on Numbers; ours come with the
     face of the person who wrote them
   - a section break is the call's waveform
   Panels are glass on the sky, edged by hairlines. Status is said with a
   tinted chip and a dot; nothing is drawn with dotted outlines.

   Pages opt in with <body class="docs">. The prose kit (".article") styles
   what the article renderers produce, in each page and in the API's first
   paint (routes/support-pages.js, routes/blog-pages.js): keep its class names.
   The assistant and the ticket forms are support-chat.css.
   ========================================================================== */

/* ---------- tokens ---------- */
.docs{
  --d-bg:#05070E;
  --d-ink:#EEF1FA;          /* headings, anything read first */
  --d-text:#BEC6E0;         /* body copy */
  --d-mute:#A9B4D6;         /* secondary */
  --d-faint:#8E9BC4;        /* tertiary, placeholders */
  --d-line:rgba(147,197,253,.12);
  --d-line-2:rgba(147,197,253,.2);
  --d-line-3:rgba(96,165,250,.42);
  --d-surface:rgba(37,99,235,.05);
  --d-surface-2:rgba(37,99,235,.1);
  --d-surface-3:rgba(37,99,235,.16);
  --d-raised:#0E1430;       /* code, menus: opaque navy */
  --d-card:linear-gradient(180deg,rgba(21,27,58,.62),rgba(10,13,30,.72));
  --d-card-hi:inset 0 1px 0 rgba(255,255,255,.045);
  --d-accent:#2563EB;
  --d-link:#93C5FD;
  --d-btn:linear-gradient(135deg,#3B82F6,#1D4ED8);
  --d-btn-glow:0 10px 24px -12px rgba(2,6,23,.75),inset 0 1px 0 rgba(255,255,255,.2);
  --d-ai:var(--ai-grad,linear-gradient(135deg,#7DD3FC 0%,#818CF8 42%,#C084FC 78%,#F0ABFC 100%));
  --d-ai-deep:var(--ai-grad-deep,linear-gradient(135deg,#2563EB 0%,#6D28D9 58%,#A21CAF 100%));
  --d-ok:#34D399;
  --d-warn:#FBBF24;
  --d-bad:#F87171;
  --d-r:18px;
  --d-r-sm:11px;
  --d-ease:cubic-bezier(.16,1,.3,1);
  /* a section break: the call's waveform in a hairline that parts for it */
  --d-wave:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 16'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%2393C5FD'/%3E%3Cstop offset='1' stop-color='%23818CF8'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='url(%23g)'%3E%3Crect x='1' y='5.5' width='2.6' height='5' rx='1.3'/%3E%3Crect x='6' y='3' width='2.6' height='10' rx='1.3'/%3E%3Crect x='11' y='0.5' width='2.6' height='15' rx='1.3'/%3E%3Crect x='16' y='4' width='2.6' height='8' rx='1.3'/%3E%3Crect x='21' y='2' width='2.6' height='12' rx='1.3'/%3E%3Crect x='26' y='5' width='2.6' height='6' rx='1.3'/%3E%3Crect x='31' y='6.5' width='2.6' height='3' rx='1.3'/%3E%3C/g%3E%3C/svg%3E");
  --d-wave-rule:linear-gradient(90deg,transparent,rgba(147,197,253,.24) 26%,rgba(147,197,253,.24) calc(50% - 32px),transparent calc(50% - 32px),
    transparent calc(50% + 32px),rgba(147,197,253,.24) calc(50% + 32px),rgba(147,197,253,.24) 74%,transparent);
  /* the site-wide tokens other shared files read */
  --ink:var(--d-ink);--muted:var(--d-mute);--faint:var(--d-faint);
  background:transparent;color:var(--d-text);
  font-family:'Geist',system-ui,-apple-system,'Segoe UI',sans-serif;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
html:has(body.docs){background:#05070E;scroll-padding-top:96px}
.docs ::selection{background:rgba(37,99,235,.32);color:#fff}
.docs [hidden]{display:none!important}
.docs .aura,.docs .grain{display:none!important}

/* the sky: the site's own (bg.js), minus what moves behind reading */
.docs #spf-top{opacity:.9}

/* ---------- layout ---------- */
.d-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 28px}
.d-wrap.narrow{max-width:760px}
.d-wrap.mid{max-width:1040px}
@media(max-width:640px){.d-wrap{padding:0 18px}}

/* ---------- type ---------- */
.d-eyebrow{display:inline-flex;align-items:center;gap:8px;font:600 13.5px/1.2 'Geist',sans-serif;color:#93C5FD;
  background:var(--accent-grad,linear-gradient(100deg,#93C5FD,#7DD3FC 42%,#5EEAD4));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.d-eyebrow.ai{background:var(--d-ai);-webkit-background-clip:text;background-clip:text}
.d-eyebrow .ai-mark{-webkit-text-fill-color:initial}
.d-h1{margin:0;font:600 clamp(38px,5.2vw,60px)/1.03 'Geist',sans-serif;letter-spacing:-.04em;color:var(--d-ink);text-wrap:balance}
.d-h1.sm{font-size:clamp(32px,3.8vw,44px);line-height:1.06}
.d-h2{margin:0;font:600 clamp(24px,2.5vw,30px)/1.15 'Geist',sans-serif;letter-spacing:-.03em;color:var(--d-ink);text-wrap:balance}
.d-h3{margin:0;font:600 16px/1.35 'Geist',sans-serif;letter-spacing:-.012em;color:var(--d-ink)}
.d-lead{margin:0;font:400 18px/1.6 'Geist',sans-serif;color:var(--d-text);text-wrap:pretty}
.d-sub{margin:0;font:400 15px/1.6 'Geist',sans-serif;color:var(--d-mute);text-wrap:pretty}
.d-mono{font-family:'IBM Plex Mono',ui-monospace,monospace}
.d-sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 26px}
.d-sec-head > div{display:flex;flex-direction:column;gap:10px}
.d-sec-head .d-sub{max-width:560px}
@media(max-width:640px){.d-sec-head{flex-direction:column;align-items:flex-start;gap:14px}}

/* ---------- links and buttons ---------- */
.d-link{display:inline-flex;align-items:center;gap:6px;color:var(--d-link);font-weight:500;text-decoration:none;transition:color .15s}
.d-link:hover{color:#BFDBFE}
.d-link .arr,.d-arr{display:inline-block;transition:transform .2s var(--d-ease)}
.d-link:hover .arr,a:hover > .d-arr,a:hover .d-arr,button:hover .d-arr{transform:translateX(3px)}
.d-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:var(--d-r-sm);
  font:600 14px/1 'Geist',sans-serif;letter-spacing:-.005em;text-decoration:none;cursor:pointer;white-space:nowrap;
  border:1px solid transparent;transition:background .15s,border-color .15s,color .15s,opacity .15s,transform .15s,box-shadow .2s}
.d-btn:active{transform:translateY(1px)}
.d-btn:disabled{opacity:.5;cursor:default;transform:none}
.d-btn.primary{background:var(--d-btn);color:#fff;box-shadow:var(--d-btn-glow)}
.d-btn.ai{background:var(--d-ai-deep);color:#fff;box-shadow:0 12px 28px -14px rgba(2,6,23,.55),inset 0 1px 0 rgba(255,255,255,.2)}
.d-btn.ai .ai-mark{width:15px;height:15px;background:#fff}
@media(hover:hover){
  .d-btn.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 30px -12px rgba(2,6,23,.55),inset 0 1px 0 rgba(255,255,255,.2)}
  .d-btn.ai:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.08)}
}
.d-btn.ghost{background:rgba(37,99,235,.06);border-color:rgba(147,197,253,.2);color:var(--d-ink)}
.d-btn.ghost:hover:not(:disabled){background:rgba(37,99,235,.12);border-color:var(--d-line-3)}
.d-btn.quiet{background:none;color:var(--d-text)}
.d-btn.quiet:hover{color:var(--d-ink);background:rgba(255,255,255,.05)}
.d-btn.sm{height:32px;padding:0 12px;font-size:13px;border-radius:9px}
.d-btn.block{width:100%;height:44px}
.d-btn svg{width:15px;height:15px}
.docs a:focus-visible,.docs button:focus-visible,.docs [tabindex]:focus-visible{outline:2px solid #60A5FA;outline-offset:2px;border-radius:8px}

/* ---------- keys, chips, method and status ---------- */
.d-kbd,.d-sbar kbd{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:6px;
  font:500 12px/1 'IBM Plex Mono',monospace;color:var(--d-mute);background:var(--d-surface-2);border:1px solid var(--d-line-2);box-shadow:inset 0 -1px 0 rgba(255,255,255,.04)}
.d-chip{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 13px;border-radius:999px;font:500 13.5px/1 'Geist',sans-serif;
  color:var(--d-text);text-decoration:none;background:rgba(255,255,255,.03);border:1px solid var(--d-line);transition:color .15s,background .15s,border-color .15s;white-space:nowrap;cursor:pointer}
.d-chip:hover{color:var(--d-ink);background:var(--d-surface-2);border-color:var(--d-line-2)}
.d-chip[aria-pressed="true"],.d-chip.on{color:#fff;background:var(--d-btn);border-color:transparent}
.d-chip .n{font:500 12px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-faint)}
.d-chip.on .n,.d-chip[aria-pressed="true"] .n{color:rgba(255,255,255,.75)}
.d-chip svg{width:13px;height:13px;color:#A78BFA}
/* HTTP methods: the colour in the letters, a breath of it behind */
.docs .mth{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:0;height:20px;padding:0 6px;border-radius:5px;
  font:600 12px/1 'IBM Plex Mono',monospace;letter-spacing:.03em;border:0;box-shadow:none}
.docs .mth-get{color:#8FB0FF;background:rgba(76,125,255,.13)}
.docs .mth-post{color:#5EE0A6;background:rgba(74,222,154,.11)}
.docs .mth-put,.docs .mth-patch{color:#F4C268;background:rgba(242,181,68,.11)}
.docs .mth-delete{color:#F58F8C;background:rgba(242,115,112,.11)}
/* a status, said with a tint and a dot */
.d-status{display:inline-flex;align-items:center;gap:7px;height:24px;padding:0 10px 0 9px;border-radius:999px;white-space:nowrap;
  font:500 12.5px/1 'Geist',sans-serif;color:#BFDBFE;background:rgba(59,130,246,.13);border:1px solid rgba(96,165,250,.26)}
.d-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.d-status.wait{color:#FCD34D;background:rgba(245,158,11,.1);border-color:rgba(251,191,36,.28)}
.d-status.wait::before{animation:dPulse 1.6s ease-in-out infinite}
.d-status.done{color:#A7F3D0;background:rgba(16,185,129,.09);border-color:rgba(52,211,153,.24)}
.d-status.done::before{width:9px;height:9px;border-radius:0;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5 5L20 6.5'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5 5L20 6.5'/%3E%3C/svg%3E") center/contain no-repeat}
@keyframes dPulse{50%{opacity:.35}}

/* ---------- panels ---------- */
.d-card{position:relative;background:var(--d-card);border:1px solid var(--d-line);border-radius:var(--d-r);box-shadow:var(--d-card-hi)}
a.d-card,.d-card.hov{transition:border-color .25s,transform .35s var(--d-ease),box-shadow .3s}
@media(hover:hover){a.d-card:hover,.d-card.hov:hover{border-color:var(--d-line-3);box-shadow:var(--d-card-hi),0 30px 60px -40px rgba(2,6,23,.55)}}
/* a list of rows inside a panel: title (+ note) and a chevron */
.d-rows{list-style:none;margin:0;padding:0}
.d-rows > li + li{border-top:1px solid var(--d-line)}
.d-row{display:flex;align-items:center;gap:14px;padding:16px 20px;text-decoration:none;color:inherit;transition:background .15s}
.d-row:hover{background:var(--d-surface)}
.d-row .t{display:block;font:500 15px/1.4 'Geist',sans-serif;color:var(--d-ink);letter-spacing:-.01em}
.d-row .x{display:block;margin-top:3px;font-size:13.5px;line-height:1.5;color:var(--d-mute)}
.d-row .grow{flex:1;min-width:0}
.d-row .chev{flex:0 0 auto;width:14px;height:14px;color:var(--d-faint);transition:transform .2s var(--d-ease),color .15s}
.d-row:hover .chev{color:var(--d-text);transform:translateX(2px)}
.d-row .ep-path{font:500 13.5px/1.3 'IBM Plex Mono',monospace;color:var(--d-ink)}
.d-row .ep-name{display:block;margin-top:3px;font-size:13.5px;color:var(--d-mute)}
/* faces: the team, or anyone on a ticket */
.d-avs{display:flex;flex:0 0 auto}
.d-avs > img,.d-avs > span{width:32px;height:32px;border-radius:50%;border:2px solid #0B1024;background:#18204A;object-fit:cover}
.d-avs > * + *{margin-left:-10px}
.d-avs .mono{display:grid;place-items:center;font:600 12px/1 'Geist',sans-serif;color:#fff;background:linear-gradient(135deg,#3B82F6,#4F46E5)}

/* ---------- inputs ---------- */
.d-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.d-field > span{font:500 13px/1.3 'Geist',sans-serif;color:var(--d-ink)}
.d-field > span i{font-style:normal;font-weight:400;color:var(--d-faint)}
.d-input,.docs .d-field input,.docs .d-field textarea,.docs .d-field select{width:100%;min-width:0;padding:11px 13px;border-radius:var(--d-r-sm);
  font:400 14.5px/1.4 'Geist',sans-serif;color:var(--d-ink);background:rgba(6,9,22,.6);border:1px solid rgba(147,197,253,.18);outline:none;
  transition:border-color .15s,box-shadow .15s,background .15s}
.d-input::placeholder,.docs .d-field input::placeholder,.docs .d-field textarea::placeholder{color:var(--d-faint)}
.d-input:hover{border-color:var(--d-line-3)}
.d-input:focus,.docs .d-field input:focus,.docs .d-field textarea:focus{border-color:#3B82F6;background:rgba(8,11,28,.85);box-shadow:0 0 0 3px rgba(59,130,246,.16)}
.d-note{min-height:20px;font:400 13.5px/1.5 'Geist',sans-serif;color:var(--d-mute)}
.d-note.err{color:var(--d-bad)}
.d-note.ok{color:var(--d-ok)}

/* ---------- a search bar ---------- */
.d-search{position:relative}
.d-sbar{display:flex;align-items:center;gap:12px;height:48px;padding:0 10px 0 16px;border-radius:13px;
  background:linear-gradient(180deg,rgba(21,27,58,.72),rgba(10,13,30,.8));border:1px solid rgba(147,197,253,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);transition:border-color .2s,box-shadow .2s}
.d-sbar:focus-within{border-color:rgba(59,130,246,.7);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 0 0 4px rgba(37,99,235,.15)}
.d-sbar > svg{flex:0 0 auto;width:16px;height:16px;color:var(--d-mute)}
.d-sbar input{flex:1;min-width:0;height:100%;padding:0;border:0;outline:0;background:none;font:400 15px/1 'Geist',sans-serif;color:var(--d-ink)}
.d-sbar input::placeholder{color:var(--d-faint)}
.d-sbar input::-webkit-search-cancel-button{display:none}

/* ---------- breadcrumbs ---------- */
.d-crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0;font:400 13.5px/1.4 'Geist',sans-serif;color:var(--d-faint)}
.d-crumbs a{color:var(--d-mute);text-decoration:none;transition:color .15s}
.d-crumbs a:hover{color:var(--d-ink)}
.d-crumbs .sep{color:var(--d-faint);opacity:.6}
.d-crumbs [aria-current]{color:var(--d-text)}

/* ---------- side navigation (a topic's articles, the API, all topics) ---------- */
.d-side{position:sticky;top:96px;max-height:calc(100vh - 116px);overflow:auto;padding:2px 4px 24px 0;scrollbar-width:none;overscroll-behavior:contain}
.d-side::-webkit-scrollbar{display:none}
.d-side .grp{display:block;margin:22px 0 8px;padding:0 10px;font:600 12px/1 'Geist',sans-serif;letter-spacing:.04em;color:var(--d-faint)}
.d-side .grp:first-child{margin-top:0}
.d-side a{position:relative;display:flex;align-items:center;gap:10px;min-height:34px;padding:6px 10px;border-radius:9px;
  font:400 14px/1.35 'Geist',sans-serif;color:var(--d-mute);text-decoration:none;transition:color .15s,background .15s}
.d-side a:hover{color:var(--d-ink);background:var(--d-surface)}
.d-side a[aria-current="page"],.d-side a.on{color:var(--d-ink);background:var(--d-surface-2);font-weight:500}
.d-side a[aria-current="page"]::before,.d-side a.on::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:2px;border-radius:2px;background:linear-gradient(180deg,#60A5FA,#2563EB);box-shadow:0 0 10px rgba(59,130,246,.6)}
.d-side a .ep-path{font:500 12.5px/1.3 'IBM Plex Mono',monospace;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.d-side a .n{margin-left:auto;font:500 12px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-faint)}
.d-side .hexm{flex:0 0 auto}
.d-side .back{margin-bottom:14px;color:var(--d-mute)}
.d-side .back svg{width:12px;height:12px}

/* ---------- on this page ---------- */
.d-toc{position:sticky;top:96px;max-height:calc(100vh - 116px);overflow:auto;scrollbar-width:none}
.d-toc .ttl{display:block;margin:0 0 12px;font:600 12px/1 'Geist',sans-serif;letter-spacing:.02em;color:var(--d-ink)}
.d-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--d-line)}
.d-toc a{position:relative;display:block;margin-left:-1px;padding:5px 0 5px 14px;border-left:1px solid transparent;
  font:400 13.5px/1.45 'Geist',sans-serif;color:var(--d-mute);text-decoration:none;transition:color .15s}
.d-toc a:hover{color:var(--d-ink)}
.d-toc a.on{color:var(--d-ink)}
.d-toc a.on::before{content:"";position:absolute;left:-1px;top:5px;bottom:5px;width:2px;border-radius:2px;background:linear-gradient(180deg,#60A5FA,#2563EB);box-shadow:0 0 10px rgba(59,130,246,.6)}
.d-toc li.sub a{padding-left:26px;font-size:13px}

/* ---------- "was this helpful?" and the way out ---------- */
.d-help{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:56px;padding:16px 18px 16px 20px;border-radius:16px;
  border:1px solid var(--d-line);background:rgba(255,255,255,.02)}
.d-help .q{font:500 14.5px/1.4 'Geist',sans-serif;color:var(--d-ink)}
.d-help .q small{display:block;margin-top:2px;font-weight:400;font-size:13px;color:var(--d-mute)}
.d-help .btns{display:flex;gap:8px}
.d-help .d-btn{height:34px;padding:0 14px;font-size:13.5px}
.d-help .d-btn svg{width:14px;height:14px}
.d-help .d-btn[aria-pressed="true"]{background:var(--d-btn);color:#fff;border-color:transparent}
.d-help-more{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%;padding-top:14px;border-top:1px solid var(--d-line);font:400 14px/1.5 'Geist',sans-serif;color:var(--d-text)}
.d-help-more[hidden]{display:none}
.d-help-more span{flex:1 1 220px}
/* still stuck: the team's faces, the assistant, a person */
.d-cta{display:flex;align-items:center;gap:18px;padding:22px 24px;border-radius:var(--d-r);border:1px solid var(--d-line);
  background:radial-gradient(90% 160% at 0% 0%,rgba(99,102,241,.12),transparent 60%),var(--d-card);box-shadow:var(--d-card-hi)}
.d-cta .grow{flex:1;min-width:0}
.d-cta .t{display:block;font:600 16px/1.35 'Geist',sans-serif;color:var(--d-ink);letter-spacing:-.012em}
.d-cta .x{display:block;margin-top:4px;font-size:14px;line-height:1.5;color:var(--d-mute)}
.d-cta .acts{display:flex;gap:8px;flex:none}
@media(max-width:700px){.d-cta{flex-wrap:wrap}.d-cta .acts{width:100%}.d-cta .acts .d-btn{flex:1}}

/* ---------- states ---------- */
.d-state{padding:40px 0;text-align:center;font-size:15px;color:var(--d-mute)}
.d-state a{color:var(--d-link)}
.d-sk{display:block;border-radius:8px;background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(255,255,255,.08),rgba(255,255,255,.04));
  background-size:200% 100%;animation:dShim 1.4s linear infinite}
@keyframes dShim{to{background-position:-200% 0}}
.docs .toast{background:#111735;border:1px solid var(--d-line-2);color:var(--d-ink);box-shadow:0 20px 50px -20px rgba(0,0,0,.8)}
/* .d-rise (a fade-up on load) is retired: content is simply there */
@keyframes dRise{from{opacity:0;transform:translateY(8px)}}
@media(prefers-reduced-motion:reduce){.d-rise,.d-status.wait::before{animation:none}.d-sk{animation:none}}

/* ==========================================================================
   Prose: everything inside a long-form body (.article). Help articles
   (endpoint pages too), blog posts and the legal pages.
   ========================================================================== */
.docs .article{--p-ink:var(--d-text);--p-strong:var(--d-ink);color:var(--d-text);font:400 16.5px/1.75 'Geist',sans-serif;overflow-wrap:break-word;min-width:0}
.docs .article > *:first-child{margin-top:0}
.docs .article p{margin:0 0 20px}
.docs .article strong{color:var(--d-ink);font-weight:600}
.docs .article em{color:#C9D1EA}
.docs .article h2{margin:52px 0 14px;font:600 24px/1.25 'Geist',sans-serif;letter-spacing:-.025em;color:var(--d-ink);scroll-margin-top:96px}
.docs .article h3{margin:34px 0 10px;font:600 18px/1.35 'Geist',sans-serif;letter-spacing:-.015em;color:var(--d-ink);scroll-margin-top:96px}
.docs .article h4{margin:26px 0 8px;font:600 15.5px/1.4 'Geist',sans-serif;color:var(--d-ink)}
.docs .article a{color:var(--d-link);text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:rgba(134,166,255,.35);
  text-underline-offset:3.5px;transition:color .15s,text-decoration-color .15s}
.docs .article a:hover{color:#BFDBFE;text-decoration-color:currentColor}
.docs .article :not(pre) > code{font:500 .86em/1 'IBM Plex Mono',ui-monospace,monospace;color:#C7D2FE;background:rgba(99,102,241,.12);
  border:1px solid rgba(129,140,248,.22);border-radius:6px;padding:.16em .42em;white-space:nowrap}
.docs .article blockquote{margin:28px 0;padding:2px 0 2px 20px;border-left:2px solid transparent;border-image:linear-gradient(180deg,#93C5FD,#6366F1) 1;color:#C9D1EA;font-size:17.5px}
.docs .article blockquote p:last-child{margin:0}

/* lists: the call builder's connection points for bullets; a top-level
   numbered list is steps, each number in the site's hexagon medallion (the
   referral page's steps), the medallions joined by a thin line */
.docs .article ul,.docs .article ol{margin:0 0 22px;padding:0;list-style:none}
.docs .article li{position:relative;margin:0 0 10px;padding-left:26px}
.docs .article li > ul,.docs .article li > ol{margin:10px 0 0}
.docs .article ul > li::before{content:"";position:absolute;left:5px;top:calc(.875em - 3.5px);width:7px;height:7px;border-radius:50%;
  background:#60A5FA;box-shadow:0 0 0 3px rgba(59,130,246,.16)}
.docs .article ul ul > li::before{left:6px;top:calc(.875em - 2.5px);width:5px;height:5px;background:none;box-shadow:inset 0 0 0 1.5px #A9B4D6}
.docs .article ol{counter-reset:ol}
.docs .article ol > li{counter-increment:ol;padding-left:28px}
.docs .article ol > li::before{content:counter(ol) ".";position:absolute;left:0;top:0;min-width:20px;font-weight:600;font-variant-numeric:tabular-nums;color:#93C5FD}
.docs .article > ol{margin:6px 0 32px}
.docs .article > ol > li{padding:0 0 36px 60px;margin:0}
.docs .article > ol > li:last-child{padding-bottom:0}
/* the medallion: a beam of light round a thin ring (the conic layer, clipped
   to the hexagon) over a dark core (the svg layer, a hexagon 1.5px in) */
.docs .article > ol > li::before{content:counter(ol);top:calc(.875em - 21px);left:0;width:42px;height:42px;min-width:0;display:grid;place-items:center;
  font:700 15px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:#fff;
  clip-path:polygon(50% 0,93.3% 25%,93.3% 75%,50% 100%,6.7% 75%,6.7% 25%);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'%3E%3Cdefs%3E%3CradialGradient id='g' cx='30%25' cy='20%25' r='90%25'%3E%3Cstop offset='0' stop-color='%23152450'/%3E%3Cstop offset='1' stop-color='%23090d1d'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cpolygon points='50,0 93.3,25 93.3,75 50,100 6.7,75 6.7,25' fill='url(%23g)'/%3E%3C/svg%3E") center/calc(100% - 3px) calc(100% - 3px) no-repeat,
    conic-gradient(from 200deg,transparent 0 30%,rgba(59,130,246,.6) 45%,#fff 52%,#3B82F6 58%,transparent 75%),
    rgba(80,125,215,.45)}
.docs .article > ol > li:not(:last-child)::after{content:"";position:absolute;left:20.5px;top:calc(.875em + 23px);bottom:calc(23px - .875em);width:1px;
  background:linear-gradient(180deg,rgba(96,165,250,.5),rgba(45,212,191,.5))}
@media (max-width:560px){
  .docs .article > ol > li{padding-left:52px;padding-bottom:30px}
  .docs .article > ol > li::before{top:calc(.875em - 18px);width:36px;height:36px;font-size:14px}
  .docs .article > ol > li:not(:last-child)::after{left:17.5px;top:calc(.875em + 20px);bottom:calc(20px - .875em)}
}

/* callouts: a notification from the page, the way Spoofey's phones show one:
   the kind's app tile with its faceted glyph, a title, the message, on a
   navy card lit along its top edge in the kind's colour. The tile and glyph
   are drawn here, so the server's first paint (a .ctitle, no glyph) and the
   page's own render look the same. */
.docs .callout{--c-rgb:59,130,246;--c-a:#3B82F6;--c-b:#1D4ED8;--c-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23000' stroke='none'%3E%3Cpath fill-opacity='0.90' d='M12.55 10.3L13.25 10.3L13.25 11.09L20.09 6.12L15.09 2.49L13.39 7.74L13.39 8.1L13.24 8.18Z'/%3E%3Cpath fill-opacity='0.80' d='M22 12L20.09 6.12L13.25 11.09L13.25 12Z'/%3E%3Cpath fill-opacity='0.73' d='M20.09 17.88L22 12L13.25 12L13.25 12.91Z'/%3E%3Cpath fill-opacity='0.69' d='M15.09 21.51L20.09 17.88L13.25 12.91L13.25 15.85Z'/%3E%3Cpath fill-opacity='0.72' d='M8.91 21.51L15.09 21.51L13.25 15.85L13.25 17.3L10.75 17.3L10.75 15.85Z'/%3E%3Cpath fill-opacity='0.80' d='M3.91 17.88L8.91 21.51L10.75 15.85L10.75 12.91Z'/%3E%3Cpath fill-opacity='0.89' d='M2 12L3.91 17.88L10.75 12.91L10.75 12Z'/%3E%3Cpath fill-opacity='0.97' d='M3.91 6.12L2 12L10.75 12L10.75 11.09Z'/%3E%3Cpath d='M8.91 2.49L3.91 6.12L10.75 11.09L10.75 10.3L11.45 10.3L10.76 8.18L10.61 8.1L10.61 7.74Z'/%3E%3Cpath fill-opacity='0.97' d='M11.45 10.3L12.55 10.3L13.24 8.18L12 8.9L10.76 8.18ZM15.09 2.49L8.91 2.49L10.61 7.74L10.61 6.5L12 5.7L13.39 6.5L13.39 7.74Z'/%3E%3C/g%3E%3C/svg%3E");
  --hex:polygon(50% 0,93.3% 25%,93.3% 75%,50% 100%,6.7% 75%,6.7% 25%);
  position:relative;display:block;margin:28px 0;padding:17px 20px 18px 70px;border-radius:14px;
  font-size:15px;line-height:1.65;color:var(--d-text);
  background:linear-gradient(180deg,rgba(var(--c-rgb),.07),rgba(var(--c-rgb),.035));
  border:1px solid rgba(var(--c-rgb),.24);box-shadow:0 18px 40px -34px rgba(2,6,23,.55),inset 0 1px 0 rgba(255,255,255,.04)}
/* the kind's glyph in a real hexagon gem (base.css .hexm), exactly like the
   ticket banners — beam-lit ring, dark core, the kind's coloured glyph */
.docs .callout .hexm{--c1:var(--c-a);--c2:var(--c-b);--hs:36px;position:absolute;left:18px;top:15px}
.docs .callout .hexm .cicon{display:block}
/* a glyph with no gem round it is never drawn: unsized, it fills the whole card */
.docs .callout > .cicon{display:none}
/* fallback for the server's first paint / no-JS (a .ctitle, no gem): the old
   flat tile so there's still an icon before the client render swaps in the gem */
.docs .callout:not(:has(.hexm))::before{content:"";position:absolute;left:18px;top:16px;width:34px;height:34px;clip-path:var(--hex);
  background:linear-gradient(145deg,var(--c-a),var(--c-b));filter:drop-shadow(0 8px 14px rgba(var(--c-rgb),.5))}
.docs .callout:not(:has(.hexm))::after{content:"";position:absolute;left:18px;top:16px;width:34px;height:34px;background:#fff;
  -webkit-mask:var(--c-ico) center/17px 17px no-repeat;mask:var(--c-ico) center/17px 17px no-repeat}
.docs .callout > div{min-width:0}
.docs .callout > div:not(.ctitle)::before,.docs .callout .ctitle{display:block;margin:5px 0 3px;font:600 15px/1.4 'Geist',sans-serif;letter-spacing:-.01em;color:var(--d-ink)}
.docs .callout.note > div:not(.ctitle)::before{content:"Note"}
.docs .callout.tip > div:not(.ctitle)::before{content:"Tip"}
.docs .callout.warn > div:not(.ctitle)::before{content:"Warning"}
.docs .callout.danger > div:not(.ctitle)::before{content:"Important"}
.docs .callout p{margin:0 0 8px}.docs .callout p:last-child{margin:0}
.docs .callout strong{color:var(--d-ink)}
.docs .callout a{color:var(--d-link);text-decoration-color:rgba(147,197,253,.35)}
.docs .callout :not(pre) > code{background:rgba(var(--c-rgb),.14);border-color:rgba(var(--c-rgb),.3)}
.docs .callout.tip{--c-rgb:45,212,191;--c-a:#2DD4BF;--c-b:#0F766E;--c-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23000' stroke='none'%3E%3Cpath fill-opacity='0.94' d='M12 12L12 3.5L10.37 10.37Z'/%3E%3Cpath fill-opacity='0.84' d='M12 12L12 3.5L13.63 10.37Z'/%3E%3Cpath fill-opacity='0.55' d='M12 12L20.5 12L13.63 10.37Z'/%3E%3Cpath fill-opacity='0.55' d='M12 12L20.5 12L13.63 13.63Z'/%3E%3Cpath fill-opacity='0.55' d='M12 12L12 20.5L13.63 13.63Z'/%3E%3Cpath fill-opacity='0.55' d='M12 12L12 20.5L10.37 13.63Z'/%3E%3Cpath fill-opacity='0.78' d='M12 12L3.5 12L10.37 13.63Z'/%3E%3Cpath fill-opacity='0.89' d='M12 12L3.5 12L10.37 10.37Z'/%3E%3C/g%3E%3C/svg%3E")}
.docs .callout.warn{--c-rgb:245,158,11;--c-a:#FBBF24;--c-b:#C2410C;--c-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23000' stroke='none'%3E%3Cpath fill-opacity='0.97' d='M12.8 3.79L11.2 3.79L11.57 8.3L12.43 8.3Z'/%3E%3Cpath fill-opacity='0.92' d='M17.1 11.3L12.8 3.79L12.43 8.3L13.15 8.3L12.79 13.25Z'/%3E%3Cpath fill-opacity='0.73' d='M21.4 18.81L17.1 11.3L12.79 13.25L12.73 14Z'/%3E%3Cpath fill-opacity='0.70' d='M20.6 20.2L21.4 18.81L12.73 14L12.72 14.15Z'/%3E%3Cpath fill-opacity='0.69' d='M12 20.2L20.6 20.2L12.72 14.15L12.7 14.4L12 14.4L12 15.7L13.17 16.38L13.17 17.73L12 18.4Z'/%3E%3Cpath fill-opacity='0.79' d='M12 14.4L11.3 14.4L11.28 14.15L3.4 20.2L12 20.2L12 18.4L10.83 17.73L10.83 16.38L12 15.7Z'/%3E%3Cpath fill-opacity='0.85' d='M2.6 18.81L3.4 20.2L11.28 14.15L11.27 14Z'/%3E%3Cpath fill-opacity='0.91' d='M6.9 11.3L2.6 18.81L11.27 14L11.21 13.25Z'/%3E%3Cpath d='M11.2 3.79L6.9 11.3L11.21 13.25L10.85 8.3L11.57 8.3Z'/%3E%3C/g%3E%3C/svg%3E")}
.docs .callout.danger{--c-rgb:239,68,68;--c-a:#F87171;--c-b:#B91C1C;--c-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23000' stroke='none'%3E%3Cpath fill-opacity='0.98' d='M7.05 11.3L7.05 5.75L7.45 4.85L8.3 4.5L8.3 11.3Z'/%3E%3Cpath fill-opacity='0.88' d='M8.3 11.3L8.3 4.5L9.15 4.85L9.55 5.75L9.55 11.3Z'/%3E%3Cpath d='M9.85 11.3L9.85 3.55L10.25 2.65L11.1 2.3L11.1 11.3Z'/%3E%3Cpath fill-opacity='0.90' d='M11.1 11.3L11.1 2.3L11.95 2.65L12.35 3.55L12.35 11.3Z'/%3E%3Cpath fill-opacity='0.99' d='M12.65 11.3L12.65 4.05L13.05 3.15L13.9 2.8L13.9 11.3Z'/%3E%3Cpath fill-opacity='0.89' d='M13.9 11.3L13.9 2.8L14.75 3.15L15.15 4.05L15.15 11.3Z'/%3E%3Cpath fill-opacity='0.96' d='M15.4 11.3L15.4 6.25L15.8 5.35L16.65 5L16.65 11.3Z'/%3E%3Cpath fill-opacity='0.86' d='M16.65 11.3L16.65 5L17.5 5.35L17.9 6.25L17.9 11.3Z'/%3E%3Cpath fill-opacity='0.94' d='M7.05 11.3L17.9 11.3L12.7 16Z'/%3E%3Cpath fill-opacity='0.82' d='M17.9 11.3L17.9 16.6L16.6 19.6L15.8 22.4L12.7 16Z'/%3E%3Cpath fill-opacity='0.78' d='M15.8 22.4L9.2 22.4L8.4 20.2L12.7 16Z'/%3E%3Cpath fill-opacity='0.88' d='M8.4 20.2L7.05 14.4L7.05 11.3L12.7 16Z'/%3E%3Cpath fill-opacity='0.96' d='M7.05 14.4L5.3 12.2L4 10.2L3 10.3L2.5 11.2L4.9 14.3L8.4 20.2Z'/%3E%3Cpath fill-opacity='0.84' d='M2.5 11.2L2.9 12.4L4.6 15.6L8.4 20.2L4.9 14.3Z'/%3E%3C/g%3E%3C/svg%3E")}
.docs .callout > .ctitle + p{margin-top:0}

/* code: a quiet panel, its language and a copy button in the header */
.docs .code-wrap{position:relative;margin:26px 0;border-radius:13px;overflow:hidden;background:var(--d-raised);border:1px solid var(--d-line);box-shadow:none}
.docs .code-head{display:flex;align-items:center;gap:12px;min-height:40px;padding:6px 8px 6px 14px;background:rgba(255,255,255,.02);border-bottom:1px solid var(--d-line);
  font:500 12px/1 'IBM Plex Mono',ui-monospace,monospace;letter-spacing:.02em;color:var(--d-mute);text-transform:lowercase}
.docs .code-head > span{flex:1}
.docs .code-wrap pre{margin:0;padding:16px 18px 18px;overflow-x:auto;scrollbar-width:thin}
.docs .code-wrap code,.docs .code-wrap code.hljs{font:400 13.5px/1.7 'IBM Plex Mono',ui-monospace,monospace;background:none!important;padding:0!important;color:#D6DCF0}
.docs .copy-btn{display:inline-flex;align-items:center;gap:6px;margin-left:auto;height:26px;padding:0 9px;border-radius:7px;cursor:pointer;
  font:500 12px/1 'Geist',sans-serif;text-transform:none;letter-spacing:0;color:var(--d-mute);background:transparent;border:1px solid transparent;
  transition:color .15s,background .15s,border-color .15s}
.docs .copy-btn::before{content:"";width:12px;height:12px;background:currentColor;
  -webkit-mask: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'%3E%3Crect x='8' y='8' width='13' height='13' rx='2.5'/%3E%3Cpath d='M16 8V5.5A2.5 2.5 0 0 0 13.5 3h-8A2.5 2.5 0 0 0 3 5.5v8A2.5 2.5 0 0 0 5.5 16H8'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: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'%3E%3Crect x='8' y='8' width='13' height='13' rx='2.5'/%3E%3Cpath d='M16 8V5.5A2.5 2.5 0 0 0 13.5 3h-8A2.5 2.5 0 0 0 3 5.5v8A2.5 2.5 0 0 0 5.5 16H8'/%3E%3C/svg%3E") center/contain no-repeat}
.docs .copy-btn:hover{color:var(--d-ink);background:var(--d-surface-2);border-color:var(--d-line)}
.docs .copy-btn.copied,.docs .copy-btn.done{color:var(--d-ok)}
/* syntax, a few muted hues */
.docs .hljs{color:#D6DCF0}
.docs .hljs-keyword,.docs .hljs-built_in,.docs .hljs-selector-tag{color:#B9A7F7}
.docs .hljs-string,.docs .hljs-attr + .hljs-string{color:#8FD9B6}
.docs .hljs-attr,.docs .hljs-property,.docs .hljs-variable,.docs .hljs-params{color:#93B4FF}
.docs .hljs-number,.docs .hljs-literal{color:#F0B98A}
.docs .hljs-comment{color:#5E6472;font-style:italic}
.docs .hljs-title,.docs .hljs-title.function_{color:#E6C87A}
.docs .hljs-meta,.docs .hljs-punctuation{color:#7A808E}

/* tables: a framed panel, hairline rows */
.docs .table-wrap{margin:26px 0;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:13px;border:1px solid var(--d-line);background:rgba(255,255,255,.012);scrollbar-width:thin}
.docs .article table{width:100%;border-collapse:collapse;margin:0;font-size:14.5px;line-height:1.55}
.docs .table-wrap table{min-width:460px}
.docs .article th,.docs .article td{text-align:left;padding:12px 16px;border-bottom:1px solid var(--d-line);vertical-align:top;overflow-wrap:break-word}
.docs .article tbody tr:last-child td{border-bottom:0}
.docs .article th{font:600 12.5px/1.3 'Geist',sans-serif;color:var(--d-ink);background:rgba(255,255,255,.025)}
.docs .article td:first-child{color:var(--d-ink);font-weight:500}
.docs .article tbody tr{transition:background .15s}
.docs .article tbody tr:hover{background:rgba(255,255,255,.015)}

/* images and figures */
.docs .article img:not(.avatar){display:block;max-width:100%;height:auto;margin:30px auto;border-radius:13px;border:1px solid var(--d-line);box-shadow:none}
.docs .article p > img:not(.avatar):only-child{margin:6px auto}
.docs .article svg,.docs .article iframe,.docs .article video{max-width:100%}
.docs .article svg:not(.cicon){height:auto}
.docs .article iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:13px;margin:30px 0}
.docs .article .a-fig{margin:32px 0}
.docs .article .a-fig.is-portrait img:not(.avatar){max-width:400px}
.docs .article .a-fig img:not(.avatar){margin:0 auto}
.docs .article figcaption{margin-top:12px;text-align:center;font:400 13.5px/1.5 'Geist',sans-serif;color:var(--d-mute);text-wrap:balance}

/* section links: shown on hover (article.js adds them) */
.docs .article h2,.docs .article h3{position:relative}
.docs .h-link{display:inline-block;width:.6em;height:.6em;margin-left:.36em;vertical-align:.04em;opacity:0;text-decoration:none!important;background:var(--d-faint);transition:opacity .15s,background .15s;
  -webkit-mask: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.2' stroke-linecap='round'%3E%3Cpath d='M10 14a5 5 0 0 0 7.07 0l3-3a5 5 0 0 0-7.07-7.07l-1.5 1.5'/%3E%3Cpath d='M14 10a5 5 0 0 0-7.07 0l-3 3a5 5 0 0 0 7.07 7.07l1.5-1.5'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: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.2' stroke-linecap='round'%3E%3Cpath d='M10 14a5 5 0 0 0 7.07 0l3-3a5 5 0 0 0-7.07-7.07l-1.5 1.5'/%3E%3Cpath d='M14 10a5 5 0 0 0-7.07 0l-3 3a5 5 0 0 0 7.07 7.07l1.5-1.5'/%3E%3C/svg%3E") center/contain no-repeat}
.docs .article h2:hover .h-link,.docs .article h3:hover .h-link,.docs .h-link:focus-visible{opacity:1}
.docs .h-link:hover{background:var(--d-text)}
.docs .h-link.done{opacity:1;background:var(--d-ok)}
@media(hover:none){.docs .h-link{display:none}}

/* a divider: the hairline breaks for a voice, the call's own waveform */
.docs .article hr{position:relative;border:0;height:1px;margin:48px 0;overflow:visible;background:var(--d-wave-rule)}
.docs .article hr::after{content:"";position:absolute;left:50%;top:50%;width:34px;height:16px;transform:translate(-50%,-50%);background:var(--d-wave) center/contain no-repeat}
/* the same break anywhere else: one element, the glyph over the rule */
.d-wave{display:block;height:16px;border:0;background:var(--d-wave) center/34px 16px no-repeat,var(--d-wave-rule) center/100% 1px no-repeat}

/* FAQ: the homepage's, card for card */
.docs .faq{display:flex;flex-direction:column;gap:10px;margin:26px 0}
.docs .faq-item{border:1px solid rgba(37,99,235,.18);border-radius:15px;background:rgba(14,18,42,.55);overflow:hidden;contain:layout paint;transition:border-color .25s,box-shadow .25s}
.docs .faq-item:hover{border-color:rgba(37,99,235,.34)}
.docs .faq-item.open{border-color:rgba(37,99,235,.5);box-shadow:0 0 0 1px rgba(37,99,235,.16),0 22px 50px -34px rgba(2,6,23,.55)}
.docs .faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;background:none;border:0;cursor:pointer;text-align:left;
  color:var(--d-ink);font:600 15.5px/1.45 'Geist',sans-serif;letter-spacing:-.01em;transition:color .15s}
.docs .faq-q:hover{color:#93C5FD}
.docs .faq-q .chev{display:none}
.docs .faq-q::after{content:"";flex:0 0 auto;width:19px;height:19px;background:#93C5FD;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23000'%3E%3Cpath d='M4 8L12 8L12 17Z'/%3E%3Cpath fill-opacity='0.7' d='M12 8L20 8L12 17Z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23000'%3E%3Cpath d='M4 8L12 8L12 17Z'/%3E%3Cpath fill-opacity='0.7' d='M12 8L20 8L12 17Z'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  transition:transform .3s ease}
.docs .faq-item.open .faq-q::after{transform:rotate(180deg)}
.docs .faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease}
.docs .faq-a p{margin:0;padding:0 20px 18px;color:var(--d-mute);font-size:15px;line-height:1.66}
.docs .faq-a p + p{padding-top:0}

@media(max-width:640px){
  .docs .article{font-size:16px;line-height:1.72}
  .docs .article h2{font-size:21px;margin-top:44px}
  .docs .callout{padding:14px 16px 15px 58px}
  .docs .callout:not(:has(.hexm))::before,.docs .callout:not(:has(.hexm))::after{left:14px;top:14px;width:30px;height:30px}
  .docs .callout .hexm{--hs:30px;left:14px;top:14px}
  .docs .code-wrap pre{padding:14px}
  .docs .code-wrap code,.docs .code-wrap code.hljs{font-size:12.5px}
  .docs .article th,.docs .article td{padding:11px 13px}
}

/* ==========================================================================
   A help article (support-article.html), endpoint pages included: the topic
   on the left, the article, and On this page (or an endpoint's request and
   response) on the right.
   ========================================================================== */
.ka-layout{display:grid;grid-template-columns:232px minmax(0,1fr) 220px;gap:56px;align-items:start;max-width:1280px;padding-top:40px;padding-bottom:96px}
.ka-main{min-width:0;max-width:720px}
.ka-left,.ka-right{min-width:0}
.ka-right{position:sticky;top:96px;display:flex;flex-direction:column;gap:28px}
.ka-right .d-toc{position:static;max-height:none}
/* the topic's mark over its list */
.ka-sidehead{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:0 10px;font:600 14px/1.3 'Geist',sans-serif;color:var(--d-ink);text-decoration:none}
.ka-sidehead .hexm{--hs:30px}
/* the server's first paint lists three related articles */
.d-side .related-card{display:block;padding:6px 10px;border-radius:9px;text-decoration:none;color:var(--d-mute)}
.d-side .related-card:hover{color:var(--d-ink);background:var(--d-surface)}
.d-side .related-card h4{margin:0;font:400 14px/1.4 'Geist',sans-serif;color:inherit}
.d-side .related-empty{padding:6px 10px;font-size:13.5px;color:var(--d-faint)}

/* header */
.ka-main .d-crumbs #crumb-title,.ka-main .d-crumbs #crumb-title + .sep,.ka-main .d-crumbs .sep.last{display:none}
.ka-hero{margin:18px 0 36px}
.ka-hero h1{margin:0;font:600 clamp(32px,3.9vw,44px)/1.08 'Geist',sans-serif;letter-spacing:-.038em;color:var(--d-ink);text-wrap:balance}
.ka-hero .state{padding:10px 0 40px;color:var(--d-mute)}
.ka-hero .state a{color:var(--d-link)}
.ka-dek{margin:14px 0 0;font:400 18px/1.6 'Geist',sans-serif;color:var(--d-text);text-wrap:pretty}
.ka-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:20px;font:400 13.5px/1.3 'Geist',sans-serif;color:var(--d-mute)}
.ka-meta i{width:3px;height:3px;border-radius:50%;background:var(--d-faint)}
.ka-meta .ka-ask{margin-left:auto}
/* the topic it's in, as its gem and name, over the title */
.ka-topic{display:inline-flex;align-items:center;gap:9px;margin:0 0 16px;font:500 13.5px/1 'Geist',sans-serif;color:var(--d-text);text-decoration:none}
.ka-topic .hexm{--hs:26px}
.ka-topic:hover{color:var(--d-ink)}
.ka-hero .cat-pill{display:none}
/* an endpoint: its method and path over its name */
.ka-ep{display:inline-flex;align-items:center;gap:10px;max-width:100%;margin:0 0 16px;padding:6px 12px 6px 6px;border-radius:10px;
  background:var(--d-surface-2);border:1px solid var(--d-line)}
.ka-ep .mth{height:22px;padding:0 7px}
.ka-ep .ep-path{font:500 14px/1.3 'IBM Plex Mono',monospace;color:var(--d-ink);overflow-wrap:anywhere}
.ep-price{display:inline-flex;align-items:center;gap:6px}
.ep-price .crd{font-weight:600;color:var(--d-ink)}
/* the assistant, beside the article */
.ka-aside-ai{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:16px;
  background:linear-gradient(160deg,rgba(125,211,252,.07),rgba(192,132,252,.08));border:1px solid rgba(167,139,250,.24)}
.ka-aside-ai b{display:flex;align-items:center;gap:8px;font:600 14px/1.3 'Geist',sans-serif;color:var(--d-ink)}
.ka-aside-ai b .ai-mark{width:16px;height:16px}
.ka-aside-ai p{margin:0;font-size:13px;line-height:1.55;color:var(--d-mute)}
.ka-aside-ai .d-btn{height:34px;font-size:13px}

/* the end of an article: feedback, next and previous, a person, the small print */
.ka-pn{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.ka-pn[hidden]{display:none}
.ka-pn a{display:flex;flex-direction:column;gap:7px;min-width:0;padding:16px 18px;text-decoration:none}
.ka-pn a.next{grid-column:2;align-items:flex-end;text-align:right}
.ka-pn .k{font:400 12.5px/1 'Geist',sans-serif;color:var(--d-mute)}
.ka-pn .t{display:flex;align-items:center;gap:8px;max-width:100%;font:500 15px/1.35 'Geist',sans-serif;color:var(--d-ink)}
.ka-pn .t > span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ka-pn .ep-path{font:500 13.5px/1.3 'IBM Plex Mono',monospace}
.ka-stuck{margin-top:40px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;column-gap:16px;row-gap:16px}
.ka-stuck .acts{grid-column:2}
@media(max-width:560px){.ka-stuck{grid-template-columns:minmax(0,1fr)}.ka-stuck .acts{grid-column:1}}
.ka-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:28px;padding-top:20px;border-top:1px solid var(--d-line)}
.ka-foot .last-mod{font:400 13px/1.4 'Geist',sans-serif;color:var(--d-faint)}
.ka-foot .tools{display:flex;align-items:center;gap:8px}
.ka-foot .d-btn{height:32px;padding:0 12px;font-size:13px}
.ka-foot .admin-box{display:none;gap:8px}
.ka-foot .admin-box .del{color:var(--d-bad)}
.helpful-thanks{font:500 14px/1.3 'Geist',sans-serif;color:var(--d-ok)}
.helpful-thanks[hidden]{display:none}

/* On this page, folded above the article where the column doesn't fit */
.toc-m{margin:0 0 32px;border-radius:13px;border:1px solid var(--d-line);background:rgba(255,255,255,.02)}
.toc-m summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;cursor:pointer;list-style:none;
  font:600 13px/1 'Geist',sans-serif;color:var(--d-ink)}
.toc-m summary::-webkit-details-marker{display:none}
.toc-m summary::after{content:"";width:6px;height:6px;margin-right:3px;border-right:1.5px solid var(--d-mute);border-bottom:1.5px solid var(--d-mute);transform:rotate(45deg) translateY(-2px);transition:transform .25s}
.toc-m[open] summary::after{transform:rotate(225deg) translateY(-2px)}
.toc-m ol{list-style:none;margin:0;padding:0 16px 8px;counter-reset:tm}
.toc-m li{counter-increment:tm;border-top:1px solid var(--d-line)}
.toc-m a{display:flex;gap:12px;padding:11px 0;font-size:14.5px;line-height:1.4;color:var(--d-text);text-decoration:none}
.toc-m a::before{content:counter(tm,decimal-leading-zero);flex:none;font:500 12px/1.65 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-faint)}
.toc-m a:hover{color:var(--d-ink)}
/* the side list, folded, for phones */
.ka-mnav{display:none;margin:0 0 24px;border-radius:13px;border:1px solid var(--d-line);background:rgba(255,255,255,.02)}
.ka-mnav summary{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;list-style:none;font:500 14px/1.3 'Geist',sans-serif;color:var(--d-ink)}
.ka-mnav summary::-webkit-details-marker{display:none}
.ka-mnav summary::after{content:"";margin-left:auto;width:6px;height:6px;border-right:1.5px solid var(--d-mute);border-bottom:1.5px solid var(--d-mute);transform:rotate(45deg) translateY(-2px);transition:transform .25s}
.ka-mnav[open] summary::after{transform:rotate(225deg) translateY(-2px)}
.ka-mnav .d-side{position:static;max-height:none;padding:0 6px 10px}

/* ---- the API reference ---- */
body.api-doc .ka-layout{max-width:1440px;grid-template-columns:240px minmax(0,1fr) 220px}
body.api-doc.ep .ka-layout{grid-template-columns:240px minmax(0,1fr) minmax(0,440px);gap:48px}
body.api-doc.ep .ka-main{max-width:760px}
.ep-panel{display:none}
body.api-doc.ep .ep-panel{display:flex;flex-direction:column;gap:14px;max-height:calc(100vh - 116px);overflow-y:auto;scrollbar-width:none}
body.api-doc.ep .ep-panel::-webkit-scrollbar{display:none}
body.api-doc.ep .article .in-panel{display:none}
.ep-card{flex:0 0 auto;border-radius:14px;overflow:hidden;background:var(--d-raised);border:1px solid var(--d-line)}
.ep-card-h{display:flex;align-items:center;gap:8px;min-height:44px;padding:6px 8px 6px 14px;background:rgba(255,255,255,.02);border-bottom:1px solid var(--d-line)}
.ep-card-h .t{font:500 12.5px/1 'Geist',sans-serif;color:var(--d-ink);white-space:nowrap}
.ep-card-h .grow{flex:1}
/* a response's status: the code in the hue of its class, a dot before it */
.ep-card-h .ep-meta{display:inline-flex;align-items:center;gap:6px;font:500 12px/1 'IBM Plex Mono',monospace;font-variant-numeric:tabular-nums;color:var(--d-mute)}
.ep-card-h .ep-meta b{display:inline-flex;align-items:center;gap:6px;font-weight:500;color:#6EE7B7}
.ep-card-h .ep-meta b::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.ep-tabs{display:flex;gap:2px;padding:2px;border-radius:8px;background:rgba(255,255,255,.035);border:1px solid var(--d-line)}
.ep-tabs button{font:500 12px/1 'Geist',sans-serif;color:var(--d-mute);background:none;border:0;padding:6px 9px;border-radius:6px;cursor:pointer;transition:color .15s,background .15s}
.ep-tabs button:hover{color:var(--d-ink)}
.ep-tabs button[aria-selected="true"]{background:rgba(255,255,255,.09);color:var(--d-ink)}
.ep-card pre{margin:0;padding:14px 16px 16px;overflow:auto;max-height:380px;scrollbar-width:thin}
.ep-card code{font:400 12.5px/1.7 'IBM Plex Mono',monospace;color:#D6DCF0;background:none}
.ep-card .copy-btn{margin-left:2px}
/* a parameter list, from a field table: the name in code type, its type and
   whether it's required beside it, the description under */
.docs .params{margin:16px 0 30px;border-top:1px solid var(--d-line)}
.docs .param{padding:15px 0 16px;border-bottom:1px solid var(--d-line)}
.docs .param .p-h{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.docs .param .p-name{font:600 14px/1.3 'IBM Plex Mono',monospace;color:var(--d-ink)}
.docs .param .p-type{font:400 12.5px/1 'IBM Plex Mono',monospace;color:var(--d-mute)}
.docs .param .p-req{font:500 12px/1 'Geist',sans-serif;color:#FCD34D}
.docs .param .p-opt{font:400 12px/1 'Geist',sans-serif;color:var(--d-faint)}
.docs .param .p-d{font-size:15px;line-height:1.65;color:var(--d-text)}
.docs .param .p-d code{font:500 .86em/1 'IBM Plex Mono',monospace;color:#DCE2F5;background:rgba(255,255,255,.055);border:1px solid var(--d-line);border-radius:6px;padding:.16em .4em}
/* a status code in a table: its number in the hue of its class */
.docs .st-pill{display:inline-flex;align-items:center;gap:7px;font:600 13.5px/1 'IBM Plex Mono',monospace;color:#FCD34D}
.docs .st-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.docs .st-pill.s2{color:#6EE7B7}
.docs .st-pill.s5{color:#FDA4AF}
.docs .req-line{display:flex;align-items:center;gap:12px;margin:22px 0;padding:8px 8px 8px 10px;border-radius:12px;background:var(--d-raised);border:1px solid var(--d-line);
  font:400 13.5px/1.4 'IBM Plex Mono',monospace;white-space:nowrap;overflow:hidden}
.docs .req-line .req-base{color:var(--d-faint)}
.docs .req-line .req-path{color:var(--d-ink);font-weight:500}
.docs .req-line .copy-btn{margin-left:auto}
@media(max-width:560px){.docs .req-line{flex-wrap:wrap;white-space:normal;row-gap:8px}.docs .req-line > span{min-width:0;overflow-wrap:anywhere}}

/* ---- narrower screens ---- */
@media(max-width:1199px){
  .ka-layout,body.api-doc .ka-layout,body.api-doc.ep .ka-layout{grid-template-columns:220px minmax(0,1fr);gap:48px}
  .ka-right{display:none}
  body.api-doc.ep .article .in-panel{display:block}
}
@media(min-width:1200px){.toc-m{display:none}}
@media(max-width:1023px){
  .ka-layout,body.api-doc .ka-layout,body.api-doc.ep .ka-layout{grid-template-columns:minmax(0,1fr);gap:0;padding-top:28px}
  .ka-left{display:none}
  .ka-main{max-width:none}
  .ka-mnav{display:block}
}
@media(max-width:560px){.ka-pn{grid-template-columns:1fr}.ka-pn a.next{grid-column:auto}.ka-meta .ka-ask{margin-left:0}}

/* ==========================================================================
   A help topic (support-category.html)
   ========================================================================== */
.kc-layout{display:grid;grid-template-columns:232px minmax(0,1fr);gap:56px;align-items:start;max-width:1200px;padding-top:40px;padding-bottom:96px}
.kc-main{min-width:0;max-width:840px}
.kc-hero{position:relative;margin:18px 0 32px}
.kc-load{display:flex;gap:18px}
.kc-head{display:flex;align-items:flex-start;gap:22px}
.kc-head .hexm{--hs:68px;margin-top:4px}
.kc-tt{min-width:0}
.kc-tt .d-lead{margin-top:12px}
.kc-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:14px;font:500 13px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-mute)}
.kc-meta i{width:3px;height:3px;border-radius:50%;background:var(--d-faint)}
/* ask the assistant about this topic, or filter what's here */
.kc-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:28px}
.kc-tools:empty{display:none}
.kc-ask{display:flex;align-items:center;gap:12px;height:50px;padding:0 6px 0 14px;border-radius:14px;cursor:text;
  background:linear-gradient(180deg,rgba(21,27,58,.72),rgba(10,13,30,.82));border:1px solid rgba(167,139,250,.26);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);transition:border-color .2s,box-shadow .2s}
.kc-ask:focus-within{border-color:rgba(167,139,250,.6);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 0 0 4px rgba(129,140,248,.14)}
.kc-ask .ai-mark{width:18px;height:18px}
.kc-ask input{flex:1;min-width:0;height:100%;border:0;outline:0;background:none;font:400 15px/1 'Geist',sans-serif;color:var(--d-ink)}
.kc-ask input::placeholder{color:var(--d-faint)}
.kc-ask button{height:38px;padding:0 14px;border:0;border-radius:10px;cursor:pointer;font:600 13.5px/1 'Geist',sans-serif;color:#fff;background:var(--d-ai-deep)}
.kc-find{width:240px;height:50px;border-radius:14px}
.kc-find input{font-size:14.5px}
.kc-sec + .kc-sec,.kc-start + .kc-sec{margin-top:36px}
.kc-sec[hidden]{display:none}
.kc-sec-h{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 12px}
.kc-sec-h .d-sub{margin-top:6px;max-width:560px;font-size:14px}
.kc-sec-h .n{flex:0 0 auto;font:500 12px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-faint)}
.kc-sec .d-row{padding:17px 20px}
.kc-sec .d-row .t{font-size:15.5px}
.kc-sec .d-row .rt{flex:none;font:400 12.5px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-faint)}
.kc-sec .d-row.ep{gap:12px}
.kc-sec .d-row.ep .mth{min-width:46px}
.kc-sec li[hidden]{display:none}
.kc-sec li.row:not([hidden]) ~ li.row:not([hidden]){border-top:1px solid var(--d-line)}
.kc-sec .d-rows > li + li{border-top:0}
/* the first guide to read, a step bigger */
.kc-start{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;margin-bottom:12px;padding:20px 22px;text-decoration:none;color:inherit;
  background:radial-gradient(90% 160% at 0% 0%,color-mix(in srgb,var(--c1,#3B82F6) 16%,transparent),transparent 60%),var(--d-card)}
.kc-start .k{display:block;margin-bottom:6px;font:600 12px/1 'Geist',sans-serif;color:color-mix(in srgb,var(--c1,#3B82F6) 65%,#fff)}
.kc-start b{display:block;font:600 17px/1.35 'Geist',sans-serif;letter-spacing:-.015em;color:var(--d-ink)}
.kc-start p{margin:5px 0 0;font-size:14px;line-height:1.55;color:var(--d-mute)}
.kc-start .num{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;font:600 15px/1 'Geist',sans-serif;color:#fff;
  background:linear-gradient(140deg,var(--c1,#3B82F6),var(--c2,#4F46E5));box-shadow:0 10px 22px -12px rgba(2,6,23,.55),inset 0 1px 0 rgba(255,255,255,.25)}
.kc-start .chev{width:16px;height:16px;color:var(--d-mute);transition:transform .2s var(--d-ease)}
.kc-start:hover .chev{transform:translateX(3px);color:var(--d-ink)}
.kc-none{padding:24px 0;color:var(--d-mute)}
.kc-empty{padding:32px 28px;text-align:center}
.kc-empty .d-sub{margin-top:8px}
.kc-stuck{margin-top:48px}
.kc-other{display:none;margin-top:44px}
.kc-other-t{display:block;font:600 13px/1 'Geist',sans-serif;color:var(--d-ink)}
.kc-ochips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.kc-ochips .d-chip{height:36px;padding:0 13px 0 7px}
.kc-ochips .hexm{--hs:24px}
@media(max-width:1023px){
  .kc-layout{grid-template-columns:minmax(0,1fr);gap:0;padding-top:28px}
  .kc-left{display:none}
  .kc-other{display:block}
}
@media(max-width:640px){
  .kc-head{gap:16px}
  .kc-head .hexm{--hs:52px}
  .kc-tools{grid-template-columns:minmax(0,1fr)}
  .kc-find{width:auto}
  .kc-start{grid-template-columns:auto minmax(0,1fr)}
  .kc-start .chev{display:none}
}

/* ==========================================================================
   The help centre's front page (support.html)
   ========================================================================== */
.hc-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:72px}
.hc-hero .d-h1{margin-top:18px;font-size:clamp(42px,6vw,68px)}
.hc-hero .d-lead{margin-top:16px;max-width:600px}
/* above what follows it, so the matching guides drop down over the page */
.hc-askwrap{position:relative;z-index:40;width:100%;margin-top:36px}
.hc-try{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;max-width:860px;margin-top:18px;transition:opacity .3s,max-height .4s var(--d-ease)}
.hc-try .lbl{margin-right:2px;font:500 13px/1 'Geist',sans-serif;color:var(--d-faint)}
.hc-hero.is-chat .hc-try{opacity:0;max-height:0;overflow:hidden;margin-top:0;pointer-events:none}
.hc-trust{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:22px;font:400 13.5px/1.4 'Geist',sans-serif;color:var(--d-mute)}
.hc-trust .d-avs > img,.hc-trust .d-avs > span{width:26px;height:26px;border-width:2px}
.hc-trust .d-avs > * + *{margin-left:-8px}
.hc-trust b{font-weight:500;color:var(--d-ink)}
.hc-trust .live{width:7px;height:7px;border-radius:50%;background:var(--d-ok);box-shadow:0 0 0 3px rgba(52,211,153,.15)}

/* three ways in */
.hc-ways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:84px}
.hc-way{display:flex;align-items:flex-start;gap:16px;padding:20px;text-decoration:none;color:inherit;cursor:pointer;text-align:left;font:inherit;width:100%}
.hc-way .hexm{--hs:46px}
.hc-way .tx{flex:1;min-width:0}
.hc-way b{display:flex;align-items:center;gap:8px;font:600 15.5px/1.3 'Geist',sans-serif;letter-spacing:-.012em;color:var(--d-ink)}
.hc-way p{margin:5px 0 0;font-size:14px;line-height:1.55;color:var(--d-mute)}
.hc-way .go{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font:500 13.5px/1 'Geist',sans-serif;color:var(--d-link)}
.hc-way .go svg{width:14px;height:14px;transition:transform .2s var(--d-ease)}
.hc-way:hover .go svg{transform:translateX(3px)}
.hc-way .d-status{margin-left:2px}
/* how many tickets are open: quiet grey text beside the title, not a pill */
.hc-open{margin-left:4px;font:500 13px/1 'Geist',sans-serif;color:var(--d-faint)}
.hc-open[hidden]{display:none}
.hc-way .d-avs{margin-top:12px}
.hc-way .d-avs > img,.hc-way .d-avs > span{width:26px;height:26px}
.hc-way .d-avs > * + *{margin-left:-8px}

/* topics */
.hc-sec{margin-top:104px}
.hc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.hc-topic{display:flex;flex-direction:column;padding:22px 22px 18px}
.hc-th{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
.hc-th .hexm{--hs:46px}
.hc-th:hover .d-h3{color:#fff}
.hc-tt{display:flex;flex-direction:column;gap:5px;min-width:0}
.hc-tn{font:500 12px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-faint)}
.hc-topic > .d-sub{margin:14px 0 10px;font-size:14px}
.hc-tl{list-style:none;margin:0 -10px;padding:0}
.hc-tl a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;text-decoration:none;color:var(--d-text);font:400 14px/1.4 'Geist',sans-serif;transition:background .15s,color .15s}
.hc-tl a:hover{background:var(--d-surface);color:var(--d-ink)}
.hc-tl a .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hc-tl a .ep-path{flex:1;min-width:0;font:500 12.5px/1.3 'IBM Plex Mono',monospace;color:var(--d-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hc-tl a .chev{flex:none;width:13px;height:13px;color:var(--d-faint);transition:transform .2s var(--d-ease)}
.hc-tl a:hover .chev{transform:translateX(2px);color:var(--d-text)}
.hc-all{margin-top:auto;padding-top:12px;font-size:13.5px}
.hc-soon{padding:10px 0;font-size:13.5px;color:var(--d-faint)}
.hc-gstate{grid-column:1/-1}

/* building on Spoofey: the API, a request and its answer */
.hc-dev{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:center;padding:36px;overflow:hidden;
  background:radial-gradient(70% 120% at 100% 0%,rgba(129,140,248,.14),transparent 60%),var(--d-card)}
.hc-dev .d-h2{margin-top:12px}
.hc-dev .d-sub{margin-top:12px;max-width:440px}
.hc-dev .acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.hc-dev ul{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.hc-dev li a{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--d-text);font-size:14px}
.hc-dev li a:hover{color:var(--d-ink)}
.hc-dev li .ep-path{font:500 13px/1 'IBM Plex Mono',monospace;color:var(--d-ink)}
.hc-win{border-radius:16px;overflow:hidden;background:#0A0E22;border:1px solid var(--d-line-2);box-shadow:0 40px 80px -40px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.04)}
.hc-win-h{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border-bottom:1px solid var(--d-line)}
.hc-win-h i{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.12)}
.hc-win-h span{margin-left:8px;font:500 12px/1 'IBM Plex Mono',monospace;color:var(--d-mute)}
.hc-win pre{margin:0;padding:16px 18px;font:400 12.5px/1.75 'IBM Plex Mono',ui-monospace,monospace;color:#D6DCF0;white-space:pre;overflow-x:auto;scrollbar-width:none}
.hc-win .k{color:#B9A7F7}.hc-win .s{color:#8FD9B6}.hc-win .a{color:#93B4FF}.hc-win .c{color:#5E6472}.hc-win .n{color:#F0B98A}
.hc-win-o{border-top:1px solid var(--d-line);background:rgba(255,255,255,.015)}
.hc-win-oh{display:flex;align-items:center;gap:10px;padding:12px 18px 0;font:500 12px/1 'IBM Plex Mono',monospace;color:var(--d-faint)}
.hc-win-oh b{display:inline-flex;align-items:center;gap:7px;font-weight:600;color:#6EE7B7}
.hc-win-oh b::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.hc-win-o pre{padding-top:10px}

/* still need a hand */
.hc-end{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px;padding:34px 36px;
  background:radial-gradient(80% 140% at 0% 100%,rgba(37,99,235,.16),transparent 60%),radial-gradient(60% 120% at 100% 0%,rgba(192,132,252,.1),transparent 60%),var(--d-card)}
.hc-end .d-h2{margin-top:14px}
.hc-end .d-sub{margin-top:10px;max-width:520px}
.hc-end .acts{display:flex;gap:10px;flex-wrap:wrap}
.hc-end .d-avs > img,.hc-end .d-avs > span{width:40px;height:40px;border-width:3px}
.hc-end .d-avs > * + *{margin-left:-12px}
.hc-foot-note{margin-top:14px;text-align:center;font:400 13px/1.5 'Geist',sans-serif;color:var(--d-faint)}

@media(max-width:1023px){
  .hc-ways{grid-template-columns:minmax(0,1fr)}
  .hc-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .hc-dev{grid-template-columns:minmax(0,1fr);gap:28px;padding:28px}
}
@media(max-width:700px){
  .hc-hero{padding-top:40px}
  .hc-ways{margin-top:56px}
  .hc-grid{grid-template-columns:minmax(0,1fr)}
  .hc-sec{margin-top:72px}
  .hc-dev{padding:22px}
  .hc-end{grid-template-columns:minmax(0,1fr);padding:24px}
  .hc-trust{flex-direction:column;gap:8px}
}

/* ==========================================================================
   Your tickets (support-tickets.html): a support inbox. Your tickets down
   the side; a ticket's thread as a conversation, yours as blue outgoing
   texts and ours with the face of the person who wrote; its details beside.
   ========================================================================== */
.tk-wrap{padding-top:40px;padding-bottom:96px;max-width:1320px}
.tk-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:16px 0 28px}
.tk-head .d-lead{margin-top:10px;font-size:16.5px}
.tk-head .acts{display:flex;gap:10px;flex:none}
.tk-state{padding:60px 0;text-align:center;color:var(--d-mute)}
.tk-app{display:grid;grid-template-columns:340px minmax(0,1fr) 288px;height:min(780px,calc(100vh - 120px));min-height:560px;overflow:hidden;border-radius:22px}
.tk-app.no-info{grid-template-columns:340px minmax(0,1fr)}
/* the list */
.tk-list{display:flex;flex-direction:column;min-width:0;min-height:0;border-right:1px solid var(--d-line);background:rgba(4,6,18,.22)}
.tk-lt{padding:14px 14px 10px;display:flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--d-line)}
.tk-tabs{position:relative;display:grid;grid-template-columns:repeat(3,1fr);padding:3px;border-radius:11px;background:rgba(255,255,255,.035);border:1px solid var(--d-line)}
.tk-tabs button{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;border:0;background:none;border-radius:8px;cursor:pointer;
  font:500 13px/1 'Geist',sans-serif;color:var(--d-mute);transition:color .2s}
.tk-tabs button:hover{color:var(--d-ink)}
.tk-tabs button.on{color:#fff}
.tk-tabs button i{font-style:normal;font:500 12px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-faint)}
.tk-tabs button.on i{color:rgba(255,255,255,.75)}
.tk-tabs .ind{position:absolute;left:3px;top:3px;bottom:3px;border-radius:8px;background:var(--d-btn);box-shadow:var(--d-btn-glow);transition:transform .35s var(--d-ease),width .35s var(--d-ease)}
.tk-find{height:38px;padding:0 10px 0 12px;border-radius:10px}
.tk-find input{font-size:14px}
.tk-find > svg{width:14px;height:14px}
.tk-rows{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(147,197,253,.18) transparent;padding:6px}
.tk-row{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:12px;border-radius:13px;text-decoration:none;color:inherit;transition:background .15s}
.tk-row + .tk-row{margin-top:2px}
.tk-row:hover{background:rgba(255,255,255,.03)}
.tk-row.on{background:linear-gradient(90deg,rgba(37,99,235,.16),rgba(37,99,235,.06));box-shadow:inset 0 0 0 1px rgba(96,165,250,.22)}
.tk-row .av{position:relative;width:36px;height:36px}
.tk-row .av > img,.tk-row .av > span{width:36px;height:36px;border-radius:50%;object-fit:cover;background:#18204A}
.tk-row .av .mono{display:grid;place-items:center;font:600 13px/1 'Geist',sans-serif;color:#fff;background:linear-gradient(135deg,#3B82F6,#4F46E5)}
.tk-row .av .sys{display:grid;place-items:center;background:linear-gradient(140deg,#3B82F6,#4338CA)}
.tk-row .av .sys svg{width:19px;height:19px}
.tk-row .tx{min-width:0}
.tk-row .l1{display:flex;align-items:baseline;gap:8px}
.tk-row .sj{flex:1;min-width:0;font:500 14px/1.35 'Geist',sans-serif;color:var(--d-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk-row.unread .sj{font-weight:600;color:var(--d-ink)}
.tk-row time{flex:none;font:400 12px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-faint)}
.tk-row.unread time{color:#93C5FD}
.tk-row .l2{display:flex;align-items:center;gap:6px;margin-top:3px;font:400 12px/1.3 'Geist',sans-serif;color:var(--d-faint)}
.tk-row .l2 .num{font-variant-numeric:tabular-nums}
.tk-row .pre{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:6px;font:400 13px/1.45 'Geist',sans-serif;color:var(--d-mute)}
.tk-row .pre b{font-weight:500;color:var(--d-text)}
.tk-row .l3{display:flex;align-items:center;gap:8px;margin-top:8px}
.tk-row .l3 .d-status{height:21px;font-size:12px;padding:0 8px 0 7px}
.tk-row .dot{position:absolute;right:12px;bottom:14px;width:8px;height:8px;border-radius:50%;background:#60A5FA;box-shadow:0 0 0 3px rgba(96,165,250,.2)}
/* a red count badge, as Messages has (nav.css .snav-badge): replies waiting on you */
.d-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:8px;border-radius:100px;vertical-align:2px;
  font:700 12px/1 'Geist',sans-serif;color:#fff;background:#EF4444;box-shadow:0 0 0 2px rgba(8,6,14,.6)}
.d-badge[hidden]{display:none}
/* new replies waiting on you: the same red count badge as Messages (nav.css .snav-badge) */
.tk-row .tk-badge{position:absolute;right:12px;bottom:12px;min-width:18px;height:18px;padding:0 5px;border-radius:100px;display:inline-flex;align-items:center;justify-content:center;
  font:700 12px/1 'Geist',sans-serif;color:#fff;background:#EF4444;box-shadow:0 0 0 2px rgba(8,6,14,.6)}
.tk-none{padding:40px 16px;text-align:center;font:400 13.5px/1.5 'Geist',sans-serif;color:var(--d-mute)}
/* the thread */
.tk-read{display:flex;flex-direction:column;min-width:0;min-height:0}
.tk-rh{display:flex;align-items:flex-start;gap:14px;padding:18px 22px;border-bottom:1px solid var(--d-line)}
.tk-back{display:none;align-items:center;justify-content:center;flex:none;width:34px;height:34px;margin:-2px 0 0 -6px;border:0;border-radius:9px;background:none;color:var(--d-mute);cursor:pointer}
.tk-back svg{width:16px;height:16px}
.tk-back:hover{color:var(--d-ink);background:var(--d-surface-2)}
.tk-rt{flex:1;min-width:0}
.tk-rt h2{margin:0;font:600 19px/1.3 'Geist',sans-serif;letter-spacing:-.02em;color:var(--d-ink);overflow-wrap:anywhere}
.tk-rt .meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;margin-top:8px;font:400 13px/1.3 'Geist',sans-serif;color:var(--d-mute)}
.tk-rt .meta .num{font-variant-numeric:tabular-nums;color:var(--d-text)}
.tk-rt .meta i{width:3px;height:3px;border-radius:50%;background:var(--d-faint)}
.tk-ra{display:flex;gap:8px;flex:none}
.tk-thread{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(147,197,253,.18) transparent;padding:22px 26px 26px;display:flex;flex-direction:column;gap:18px}
.tk-day{display:flex;align-items:center;gap:12px;margin:6px 0 -2px;font:500 12px/1 'Geist',sans-serif;color:var(--d-faint)}
.tk-day::before,.tk-day::after{content:"";flex:1;height:1px;background:var(--d-line)}
.tk-msg{display:flex;gap:12px;max-width:78%;animation:dRise .4s var(--d-ease) both}
.tk-msg .av{flex:none;width:34px;height:34px;border-radius:50%;object-fit:cover;background:#18204A;align-self:flex-end}
.tk-msg .av.mono{display:grid;place-items:center;font:600 12.5px/1 'Geist',sans-serif;color:#fff;background:linear-gradient(135deg,#3B82F6,#4F46E5)}
.tk-msg .bd{min-width:0;display:flex;flex-direction:column}
.tk-msg .nm{display:flex;align-items:baseline;gap:8px;margin:0 2px 6px;white-space:nowrap;font:400 12.5px/1.3 'Geist',sans-serif;color:var(--d-mute)}
.tk-msg .nm b{font-weight:600;color:var(--d-ink)}
.tk-msg .nm .team{display:inline-flex;align-items:center;gap:5px;color:#93C5FD}
.tk-msg .nm .team svg{width:12px;height:12px}
.tk-msg .nm time{font-variant-numeric:tabular-nums;color:var(--d-faint)}
.tk-msg .tx{padding:12px 15px;border-radius:18px;font:400 14.5px/1.6 'Geist',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}
.tk-msg.them .tx{border-bottom-left-radius:6px;color:#D9DEF3;background:linear-gradient(180deg,rgba(33,41,84,.78),rgba(22,28,62,.78));border:1px solid rgba(147,197,253,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.tk-msg.you{align-self:flex-end;flex-direction:row-reverse}
.tk-msg.you .nm{justify-content:flex-end}
.tk-msg.you .tx{border-bottom-right-radius:6px;color:#fff;background:linear-gradient(135deg,#3B82F6,#1D4ED8);box-shadow:0 12px 26px -16px rgba(2,6,23,.55),inset 0 1px 0 rgba(255,255,255,.18)}
.tk-msg .tx img.binl{display:block;max-width:100%;margin-top:10px;border-radius:10px;border:1px solid var(--d-line)}
.tk-files{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.tk-files span{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 10px;border-radius:9px;font:500 12.5px/1 'Geist',sans-serif;color:var(--d-text);background:rgba(255,255,255,.04);border:1px solid var(--d-line)}
.tk-files span svg{width:13px;height:13px;color:var(--d-mute)}
/* what happened, between messages: the receipt, resolved, reopened */
.tk-sys{display:flex;align-items:center;justify-content:center;gap:9px;font:400 12.5px/1.4 'Geist',sans-serif;color:var(--d-mute);text-align:center}
.tk-sys .ic{display:grid;place-items:center;flex:none;width:20px;height:20px;border-radius:6px;background:linear-gradient(140deg,#3B82F6,#4338CA)}
.tk-sys .ic svg{width:12px;height:12px}
.tk-sys .ic.ok{background:rgba(16,185,129,.18);color:#6EE7B7}
/* resolved: the low-poly check in a green hex gem (base.css .hexm) */
.tk-ok{--c1:#10B981;--c2:#059669}
/* permanently closed: red with an X; reopened: white with the mail mark */
.tk-x{--c1:#EF4444;--c2:#B91C1C}
.tk-re{--c1:#E2E8F0;--c2:#94A3B8}
/* one glyph size in every gem, whatever it sits in (a button's own svg rule included) */
.hexm:is(.tk-ok,.tk-x,.tk-re) > svg,.d-btn .hexm > svg{width:50%;height:50%}
.tk-sys :is(.tk-ok,.tk-x,.tk-re){--hs:26px}
.d-status.gem{padding-left:5px}
.d-status.gem::before{display:none}
.d-status .tk-ok{--hs:16px}
.d-status.locked{color:#AEB8DA;background:rgba(147,197,253,.08);border-color:rgba(147,197,253,.2)}
.tk-sys b{font-weight:500;color:var(--d-text)}
/* the assistant conversation the ticket came from, folded */
.tk-ai{align-self:stretch;margin:0 0 2px;border-radius:14px;border:1px solid rgba(167,139,250,.24);background:linear-gradient(160deg,rgba(125,211,252,.05),rgba(192,132,252,.06))}
.tk-ai summary{display:flex;align-items:center;gap:10px;padding:11px 14px;cursor:pointer;list-style:none;font:500 13.5px/1.3 'Geist',sans-serif;color:var(--d-text)}
.tk-ai summary::-webkit-details-marker{display:none}
.tk-ai summary .ai-mark{width:15px;height:15px}
.tk-ai summary small{color:var(--d-faint);font-weight:400}
.tk-ai summary::after{content:"";margin-left:auto;width:6px;height:6px;border-right:1.5px solid var(--d-mute);border-bottom:1.5px solid var(--d-mute);transform:rotate(45deg) translateY(-2px);transition:transform .25s}
.tk-ai[open] summary::after{transform:rotate(225deg) translateY(-2px)}
.tk-ai .ln{display:flex;flex-direction:column;gap:10px;padding:2px 14px 14px}
.tk-ai .ln div{font:400 13.5px/1.55 'Geist',sans-serif;color:var(--d-mute)}
.tk-ai .ln div b{display:block;margin-bottom:2px;font-weight:600;font-size:12px;color:var(--d-text)}
.tk-ai .ln .sc-md{font-size:13.5px;color:var(--d-mute)}
/* the reply box */
.tk-comp{margin:0 22px 20px;border-radius:16px;border:1px solid var(--d-line-2);background:rgba(6,9,22,.5);transition:border-color .15s,box-shadow .15s}
.tk-comp:focus-within{border-color:rgba(59,130,246,.62);box-shadow:0 0 0 3px rgba(59,130,246,.14)}
.tk-comp textarea{display:block;width:100%;min-height:52px;max-height:220px;padding:14px 16px 6px;border:0;outline:0;resize:none;background:none;font:400 15px/1.55 'Geist',sans-serif;color:var(--d-ink)}
.tk-comp textarea::placeholder{color:var(--d-faint)}
.tk-cbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px 8px 16px}
.tk-cbar .d-note{min-height:0;font-size:12.5px}
/* phones have no keyboard shortcut to send: just the button */
@media (hover:none) and (pointer:coarse){ .tk-keys{display:none} }
.tk-send{display:inline-grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;cursor:pointer;color:#fff;background:var(--d-btn);box-shadow:var(--d-btn-glow);transition:transform .15s,opacity .15s}
.tk-send:hover:not(:disabled){transform:translateY(-1px)}
.tk-send:disabled{opacity:.4;cursor:default}
.tk-send svg{width:16px;height:16px}
.tk-closed{display:flex;align-items:center;gap:10px;margin:0 22px 12px;padding:11px 14px;border-radius:12px;font:400 13.5px/1.45 'Geist',sans-serif;color:var(--d-text);
  background:rgba(16,185,129,.07);border:1px solid rgba(52,211,153,.2)}
.tk-closed > svg{flex:none;width:16px;height:16px;color:#6EE7B7}
.tk-closed .tk-ok{--hs:26px}
/* closed for good: no reply box, just this */
.tk-shut{display:flex;align-items:center;gap:10px;margin:0 22px 16px;padding:12px 14px;border-radius:12px;font:500 13.5px/1.45 'Geist',sans-serif;color:#FECACA;
  background:rgba(239,68,68,.07);border:1px solid rgba(248,113,113,.24)}
.tk-shut .tk-x{--hs:26px}
/* locked: 7 days on from the last reply, it takes no more (services/support.js) */
.tk-locked{display:flex;align-items:center;gap:10px;margin:0 22px 16px;padding:12px 14px;border-radius:12px;font:400 13.5px/1.5 'Geist',sans-serif;color:var(--d-text);
  background:rgba(147,197,253,.06);border:1px solid rgba(147,197,253,.18)}
.tk-locked > svg{flex:none;width:18px;height:18px;color:#AEB8DA}
.tk-lnk{padding:0;border:0;background:none;font:inherit;font-weight:600;color:#93C5FD;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.tk-by{font-weight:600;color:#FCD34D}
.tk-due + .tk-keys{margin-left:10px}
.tk-ra .tk-ok{--hs:20px}
.tk-pick{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;flex:1;padding:48px 24px;text-align:center}
.tk-pick .hexm{--hs:56px}
.tk-pick b{font:600 16px/1.3 'Geist',sans-serif;color:var(--d-ink)}
.tk-pick p{margin:0;max-width:340px;font-size:14px;line-height:1.55;color:var(--d-mute)}
/* the details */
.tk-info{min-width:0;min-height:0;overflow-y:auto;scrollbar-width:none;border-left:1px solid var(--d-line);padding:20px 18px;background:rgba(4,6,18,.22)}
.tk-info:empty{display:none}
.tk-info h3{margin:0 0 12px;font:600 12.5px/1 'Geist',sans-serif;color:var(--d-ink)}
.tk-info dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px 14px;margin:0 0 26px;font:400 13px/1.35 'Geist',sans-serif}
.tk-info dt{color:var(--d-faint)}
.tk-info dd{margin:0;color:var(--d-text);text-align:right;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.tk-ppl{display:flex;flex-direction:column;gap:10px;margin:0 0 26px}
.tk-ppl div{display:flex;align-items:center;gap:10px;font:400 13.5px/1.3 'Geist',sans-serif;color:var(--d-text)}
.tk-ppl img,.tk-ppl .mono{width:28px;height:28px;border-radius:50%;object-fit:cover;background:#18204A}
.tk-ppl .mono{display:grid;place-items:center;font:600 12px/1 'Geist',sans-serif;color:#fff;background:linear-gradient(135deg,#3B82F6,#4F46E5)}
.tk-ppl small{display:block;color:var(--d-faint);font-size:12px}
.tk-guides{display:flex;flex-direction:column;gap:4px;margin:0 -8px}
.tk-guides a{display:flex;align-items:center;gap:10px;padding:8px;border-radius:9px;text-decoration:none;font:400 13.5px/1.4 'Geist',sans-serif;color:var(--d-text)}
.tk-guides a:hover{background:var(--d-surface);color:var(--d-ink)}
.tk-guides .sc-ti{width:26px;height:26px;border-radius:8px}
.tk-reply-time{display:flex;gap:10px;padding:12px;border-radius:12px;background:rgba(255,255,255,.025);border:1px solid var(--d-line);font:400 12.5px/1.5 'Geist',sans-serif;color:var(--d-mute);margin-bottom:26px}
.tk-reply-time b{display:block;color:var(--d-ink);font-weight:500}
/* nothing yet, and signed out */
.tk-empty{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px;padding:44px}
.tk-empty .d-h2{margin-top:16px}
.tk-empty .d-sub{margin-top:12px;max-width:420px}
.tk-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
/* a phone's message list, as the empty state's picture */
.tk-phone{justify-self:center;width:280px;padding:16px 14px;border-radius:34px;background:#070A18;border:1px solid rgba(147,197,253,.2);
  box-shadow:0 50px 90px -40px rgba(2,6,23,.55),inset 0 0 0 6px rgba(255,255,255,.02)}
.tk-phone .nb{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;margin-top:8px;border-radius:16px;background:rgba(30,38,78,.86);border:1px solid rgba(147,197,253,.16)}
.tk-phone .nb:first-child{margin-top:0}
.tk-phone .nb .sc-app{width:30px;height:30px;border-radius:8px}
.tk-phone .nb .sc-app svg{width:17px;height:17px}
.tk-phone .nb b{display:flex;justify-content:space-between;gap:8px;font:600 12px/1.3 'Geist',sans-serif;color:#fff}
.tk-phone .nb b time{font-weight:400;color:var(--d-faint)}
.tk-phone .nb span{display:block;margin-top:2px;font:400 12px/1.4 'Geist',sans-serif;color:var(--d-text)}
.tk-phone .nb.dim{opacity:.55;transform:scale(.97)}
@media(max-width:1279px){.tk-app{grid-template-columns:320px minmax(0,1fr)}.tk-info{display:none}}
@media(max-width:860px){
  .tk-head{flex-direction:column;align-items:flex-start}
  .tk-app,.tk-app.no-info{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}
  .tk-list{border-right:0;background:none}
  .tk-rows{max-height:none}
  .tk-read{display:none}
  .tk-app.reading .tk-list{display:none}
  .tk-app.reading .tk-read{display:flex;min-height:calc(100vh - 140px)}
  .tk-back{display:inline-flex}
  .tk-rh{flex-wrap:wrap;padding:14px 16px}
  .tk-ra{width:100%}
  .tk-thread{padding:18px 14px;max-height:none;overflow:visible}
  .tk-msg{max-width:92%}
  /* the name and time on one line: just the team's mark, not the words */
  .tk-msg .nm .team > span{display:none}
  .tk-comp{margin:0 12px 14px;position:sticky;bottom:12px;background:rgba(9,12,30,.96)}
  .tk-cbar{padding:4px 6px 6px 14px}
  .tk-send{width:40px;height:40px;flex:none}
  .tk-ra .d-btn{flex:1;height:40px}
  .tk-closed,.tk-locked,.tk-shut{margin:0 12px 10px}
  /* reading a ticket on a phone: the conversation gets the screen. The page
     heading steps aside, the card runs nearly edge to edge, and the messages
     read at full phone size */
  .tk-wrap:has(.tk-app.reading){padding-top:12px}
  .tk-wrap:has(.tk-app.reading) .tk-head{display:none}
  .tk-wrap:has(.tk-app.reading) .d-crumbs{margin-bottom:12px}
  .tk-app.reading{margin:0 -10px;border-radius:20px}
  .tk-app.reading .tk-rh{gap:10px;padding:16px 16px 14px}
  .tk-app.reading .tk-rt h2{font-size:21px;line-height:1.25}
  .tk-app.reading .tk-rt .meta{font-size:13.5px}
  .tk-app.reading .tk-thread{padding:20px 14px 22px;gap:22px}
  .tk-app.reading .tk-msg{max-width:90%;gap:10px}
  .tk-app.reading .tk-msg .av{width:32px;height:32px}
  .tk-app.reading .tk-msg .nm{margin-bottom:7px;font-size:13px}
  .tk-app.reading .tk-msg .tx{padding:13px 17px;border-radius:21px;font-size:16.5px;line-height:1.55}
  .tk-app.reading .tk-msg.them .tx{border-bottom-left-radius:7px}
  .tk-app.reading .tk-msg.you .tx{border-bottom-right-radius:7px}
  .tk-app.reading .tk-day{font-size:12.5px}
  .tk-app.reading .tk-sys{font-size:13.5px}
  .tk-app.reading .tk-comp{margin:0 10px 12px;border-radius:20px}
  .tk-app.reading .tk-comp textarea{min-height:58px;padding:16px 18px 6px}
  .tk-app.reading .tk-send{width:44px;height:44px}
  .tk-app.reading .tk-send svg{width:18px;height:18px}
  .tk-empty{grid-template-columns:minmax(0,1fr);padding:26px}
  .tk-phone{display:none}
}

/* ==========================================================================
   The blog's backdrop (body.docs.blog, the index and every post): calm,
   the way a long read wants it. The site's navy, flat, and one soft light
   at the top of the page that scrolls away with it. No stars, no facets,
   nothing that moves; the blog pages don't load bg.js at all.
   ========================================================================== */
html:has(body.blog){background:#070A14}
.blog::before{content:"";position:absolute;left:0;right:0;top:0;height:820px;z-index:-1;pointer-events:none;
  background:radial-gradient(56% 100% at 50% 0%,rgba(59,130,246,.11),rgba(79,70,229,.045) 48%,transparent 78%)}

/* A post always has an image. One with no cover of its own, or a cover that
   won't load, gets the blog's own art in its place: the waveform divider
   drawn large and lit, on the site's navy, wherever a cover would be (the
   post's header, the index cards, Keep reading). --aw is the glyph's width;
   the rule parts around it the way the divider's does. */
.cov-none,.bp .rc-cov:empty,.bp .cover .frame.art{--aw:clamp(58px,15%,150px);
  background:
    var(--d-wave) center/var(--aw) auto no-repeat,
    linear-gradient(90deg,transparent 10%,rgba(147,197,253,.26) 28%,rgba(147,197,253,.26) calc(50% - var(--aw) * .5 - 4%),transparent calc(50% - var(--aw) * .5 - 4%),
      transparent calc(50% + var(--aw) * .5 + 4%),rgba(147,197,253,.26) calc(50% + var(--aw) * .5 + 4%),rgba(147,197,253,.26) 72%,transparent 90%) center/100% 1px no-repeat,
    radial-gradient(34% 46% at 50% 50%,rgba(99,102,241,.3),rgba(37,99,235,.1) 55%,transparent 82%),
    radial-gradient(70% 90% at 22% 0%,rgba(99,102,241,.2),transparent 70%),
    linear-gradient(160deg,#111845,#0B1030 55%,#080C22)}

/* ==========================================================================
   The blog (blog.html): Signal & noise. The newest post leads, then the
   rest as a grid; topics are one segmented row with a sliding indicator.
   ========================================================================== */
.bl-hero{padding-top:72px}
.bl-ht{max-width:660px}
.bl-ht .d-h1{margin-top:16px}
.bl-ht .d-lead{margin-top:16px}
.bl-search{flex:0 1 300px;margin-left:auto;height:42px;padding:0 10px 0 14px;border-radius:12px}
.bl-search svg{width:16px;height:16px}
.bl-search input{font-size:14.5px}
.bl-main{padding-top:44px;padding-bottom:96px}
.bl-bar{display:flex;align-items:center;gap:12px;margin-bottom:28px}
.bl-tags{position:relative;display:flex;gap:2px;max-width:100%;padding:4px;overflow-x:auto;scrollbar-width:none;border-radius:13px;
  background:rgba(255,255,255,.03);border:1px solid var(--d-line)}
.bl-tags::-webkit-scrollbar{display:none}
.bl-bar .bl-tags{flex:0 1 auto;min-width:0}
.bl-tags button{position:relative;z-index:1;flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 13px;border:0;border-radius:9px;background:none;
  font:500 13.5px/1 'Geist',sans-serif;color:var(--d-mute);cursor:pointer;white-space:nowrap;transition:color .2s}
.bl-tags button:hover{color:var(--d-ink)}
.bl-tags button.on{color:#fff}
.bl-tags button i{font:500 12px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;font-style:normal;color:var(--d-faint);transition:color .2s}
.bl-tags button.on i{color:rgba(255,255,255,.75)}
.bl-ind{position:absolute;left:4px;top:4px;bottom:4px;border-radius:9px;background:var(--d-btn);box-shadow:var(--d-btn-glow);transition:transform .35s var(--d-ease),width .35s var(--d-ease)}
/* topics keep one colour everywhere: the tabs, a card, a post's chip */
.t-scams{--tc:#FCA5A5}.t-privacy{--tc:#5EEAD4}.t-guides{--tc:#93C5FD}.t-explainers{--tc:#BAE6FD}.t-product{--tc:#38BDF8}.t-business{--tc:#60A5FA}
.bl-tags .tdot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--tc,#93C5FD)}
/* a post's topic */
.bl-tag{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font:600 12.5px/1 'Geist',sans-serif;color:var(--tc,#93C5FD);text-decoration:none;white-space:nowrap}
.bl-tag::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
/* covers: the post's own art, edge to edge */
.bl-card{display:flex;flex-direction:column}
.bl-card,.bl-feat{overflow:hidden;text-decoration:none;color:inherit}
.bl-card .cov,.bl-feat .cov{position:relative;aspect-ratio:1200/630;overflow:hidden;background:#0B1024;border-bottom:1px solid var(--d-line)}
.cov img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--d-ease)}
a:hover > .cov img{transform:scale(1.035)}
.cov-none{position:absolute;inset:0}
.bl-card .cb{display:flex;flex-direction:column;gap:10px;flex:1;padding:18px 20px 20px}
.bl-card h3{margin:0;font:600 17.5px/1.35 'Geist',sans-serif;letter-spacing:-.018em;color:var(--d-ink);text-wrap:balance}
.bl-card p{margin:0;font-size:14px;line-height:1.6;color:var(--d-mute);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bl-card .meta,.bl-feat .meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:8px;font-size:13px;color:var(--d-mute)}
.meta .avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;background:#141B38;margin-right:2px}
.meta .dot{color:var(--d-faint)}
.bl-lead{margin-bottom:56px}
.bl-lead[hidden]{display:none}
.bl-feat{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
.bl-feat .cov{aspect-ratio:auto;border-bottom:0;border-right:1px solid var(--d-line)}
.bl-feat .cov::before{content:"";display:block;padding-top:52.5%}
.bl-feat .cov img{position:absolute;inset:0}
.bl-feat .fb{display:flex;flex-direction:column;justify-content:center;gap:14px;padding:36px 40px}
.bl-feat h2{margin:0;font:600 clamp(24px,2.5vw,33px)/1.14 'Geist',sans-serif;letter-spacing:-.032em;color:var(--d-ink);text-wrap:balance}
.bl-feat p{margin:0;font-size:15.5px;line-height:1.65;color:var(--d-text)}
.bl-feat .meta{margin-top:6px;padding-top:0}
.bl-feat .go{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-weight:500;font-size:14px;color:var(--d-link)}
.bl-feat .go svg{width:14px;height:14px;transition:transform .25s var(--d-ease)}
.bl-feat:hover .go svg{transform:translateX(3px)}
.bl-h{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 18px}
.bl-h[hidden]{display:none}
.bl-h span{font:500 12px/1 'Geist',sans-serif;font-variant-numeric:tabular-nums;color:var(--d-faint)}
.bl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bl-state{padding:40px 24px;text-align:center;color:var(--d-mute)}
.bl-state[hidden]{display:none}
.bl-state b{display:block;margin-bottom:6px;font-weight:600;font-size:16px;color:var(--d-ink)}
.bl-state .d-btn{margin-top:16px}
/* loading ghosts (blog.html), in the shape of the cards they stand in for */
.bl-ghost{pointer-events:none}
.bl-ghost .cov .d-sk{position:absolute;inset:0;border-radius:0}
.bl-tags .bl-sk-tag{flex:none;height:32px;border-radius:9px}
/* the end of the index: Numberprint, for the reader who came about a call */
.bl-np{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;margin-top:56px;padding:24px 26px;text-decoration:none;color:inherit;
  background:radial-gradient(80% 160% at 0% 50%,rgba(45,212,191,.1),transparent 60%),var(--d-card)}
.bl-np .hexm{--hs:52px;--c1:#2DD4BF}
.bl-np .tx{display:flex;flex-direction:column;min-width:0}
.bl-np .k{align-self:flex-start;font:600 12.5px/1.2 'Geist',sans-serif;background:var(--accent-grad,linear-gradient(100deg,#93C5FD,#7DD3FC 42%,#5EEAD4));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.bl-np b{display:block;margin-top:6px;font:600 18px/1.3 'Geist',sans-serif;letter-spacing:-.015em;color:var(--d-ink)}
.bl-np .t{margin-top:4px;font-size:14px;line-height:1.55;color:var(--d-mute)}
.bl-np .d-btn{white-space:nowrap}
@media(max-width:1023px){
  .bl-feat{grid-template-columns:minmax(0,1fr)}
  .bl-feat .cov{border-right:0;border-bottom:1px solid var(--d-line)}
  .bl-feat .fb{padding:26px 28px 28px}
  .bl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .bl-hero{padding-top:40px}
  .bl-search{order:-1;flex:1 1 100%;margin-left:0}
  .bl-bar{flex-wrap:wrap}
  .bl-grid{grid-template-columns:minmax(0,1fr)}
  .bl-feat .fb{padding:20px}
  .bl-feat .go{display:none}
  .bl-np{grid-template-columns:auto minmax(0,1fr)}
  .bl-np .d-btn{grid-column:1 / -1}
}

/* ==========================================================================
   A blog post (blog-post.html, body.docs.blog.bp). The server paints the
   first frame (spoofey-api routes/blog-pages.js): the hero, the body, the
   related cards, so the class names here are the ones it writes.
   One reading column down the middle of the page: the header and the cover
   centred over it, the share buttons and On this page either side of it
   where there's room, folded above and below it where there isn't.
   ========================================================================== */
.bp{--bp-col:680px;--bp-gap:56px}
.bp .wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 28px}

/* how far through the post you are: a hairline along the top of the window */
.bp-progress{position:fixed;left:0;right:0;top:0;z-index:1001;height:2px;pointer-events:none}
.bp-progress i{display:block;height:100%;transform:scaleX(0);transform-origin:0 50%;will-change:transform;
  background:linear-gradient(90deg,#3B82F6,#818CF8 55%,#5EEAD4);box-shadow:0 0 10px rgba(96,165,250,.55)}

/* the header, centred */
.bp .bp-top{padding-top:76px}
.bp-head{max-width:880px;margin:0 auto;text-align:center}
.bp .hero-body .state{padding:48px 0 8px!important;font-size:15px;color:var(--d-mute);text-align:center!important}
.bp .hero-body .state a{color:var(--d-link);text-decoration:none}
.bp .eyebrow-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px;margin-bottom:24px;font:500 13.5px/1 'Geist',sans-serif}
.bp .eyebrow-row .back{color:var(--d-mute);text-decoration:none;transition:color .15s}
.bp .eyebrow-row .back:hover{color:var(--d-ink)}
.bp .eyebrow-row .sep{color:var(--d-faint);opacity:.7}
.bp .chip,.bp .rc-tag{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;font:600 13px/1 'Geist',sans-serif;color:var(--tc,#93C5FD);text-decoration:none;white-space:nowrap;transition:filter .15s}
.bp .chip::before,.bp .rc-tag::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.bp a.chip:hover{filter:brightness(1.15)}
.bp .hero-body h1{max-width:880px;margin:0 auto;font:600 clamp(36px,5vw,62px)/1.04 'Geist',sans-serif;letter-spacing:-.042em;color:var(--d-ink);text-wrap:balance}
.bp .dek{max-width:640px;margin:22px auto 0;font:400 clamp(17px,1.5vw,19.5px)/1.6 'Geist',sans-serif;color:var(--d-mute);text-wrap:balance}
.bp .avatar{display:block;flex:0 0 auto;width:40px;height:40px;border-radius:50%;object-fit:cover;background:#141B38;box-shadow:0 0 0 1px var(--d-line-2)}
.bp .byline{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 12px;margin-top:32px;font:400 14px/1.3 'Geist',sans-serif;color:var(--d-mute)}
.bp .byline .avatar{width:30px;height:30px}
.bp .byline .who{font-weight:500;color:var(--d-ink)}
.bp .byline .sub{display:inline-flex;align-items:center;gap:12px}
.bp .byline .sub i,.bp .byline .who + .sub::before{content:"";width:3px;height:3px;border-radius:50%;background:var(--d-faint)}
.bp .byline .sub time{font-variant-numeric:tabular-nums}

/* the cover, wider than the column, centred under the header */
.bp .cover{max-width:1080px;margin:52px auto 0}
.bp .cover .frame{position:relative;aspect-ratio:1200/630;overflow:hidden;border-radius:22px;background:#0B1024;border:1px solid var(--d-line-2);
  box-shadow:0 50px 100px -64px rgba(2,6,23,.55)}
.bp .cover .frame img{display:block;width:100%;height:100%;object-fit:cover}
/* no cover of its own, or one that won't load: the blog's art (above) in the frame */
.bp .cover .frame.art img{display:none}

/* share | the article | on this page */
.bp .layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--bp-col)) minmax(0,1fr);column-gap:var(--bp-gap);align-items:start;padding-top:64px;padding-bottom:24px}
.bp .rail{grid-column:1;grid-row:1;justify-self:end;position:sticky;top:112px;display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:4px}
.bp .share-label{font:600 12px/1 'Geist',sans-serif;color:var(--d-faint)}
.bp .share{display:flex;flex-direction:column;gap:8px}
.bp .icon-btn{display:grid;place-items:center;width:38px;height:38px;padding:0;border-radius:11px;cursor:pointer;color:var(--d-mute);
  background:rgba(255,255,255,.02);border:1px solid var(--d-line);transition:color .15s,border-color .15s,background .15s}
.bp .icon-btn:hover{color:var(--d-ink);border-color:var(--d-line-3);background:var(--d-surface-2)}
.bp .icon-btn.done{color:var(--d-ok);border-color:rgba(74,222,154,.35)}
.bp .icon-btn svg{width:15px;height:15px}
.bp .admin-box{display:none;flex-direction:column;align-items:stretch;gap:8px;margin-top:10px;padding-top:14px;border-top:1px solid var(--d-line)}
.bp .admin-box .d-btn{height:32px;padding:0 12px;font-size:13px}
.bp .admin-box .del{color:var(--d-bad)}
.bp .layout > .article{grid-column:2;grid-row:1}
.bp .side{grid-column:3;grid-row:1;align-self:stretch;max-width:236px}
.bp .side[hidden]{display:none}
.bp .d-toc li.sub{display:none}
.bp .d-toc li.sub.show{display:block;animation:dRise .3s var(--d-ease) both}
.bp .toc-m{display:none}

/* an editorial measure, a step larger than help articles */
.bp .article{font-size:17.5px;line-height:1.8}
.bp .article > p:first-of-type{font-size:20px;line-height:1.65;color:#D3DAF0}
.bp .article h2{margin:72px 0 18px;font-size:clamp(24px,2.3vw,29px);line-height:1.2;letter-spacing:-.03em}
.bp .article h3{margin:44px 0 12px;font-size:20px;letter-spacing:-.018em}
.bp .article h2 + h3{margin-top:28px}
.bp .article blockquote{margin:48px 0;padding:4px 0 4px 26px;font:500 clamp(19px,1.9vw,22px)/1.5 'Geist',sans-serif;letter-spacing:-.012em;color:var(--d-ink)}
.bp .article blockquote cite{display:block;margin-top:12px;font:400 13.5px/1.4 'Geist',sans-serif;font-style:normal;color:var(--d-mute)}
.bp .article .callout{margin:36px 0}
.bp .article .a-fig{margin:40px 0}

/* the end of a post: the waveform, who wrote it and the share buttons, then a way on */
.bp .article hr.bp-end{margin:80px 0 36px}
.bp .author-card{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.bp .author-card .avatar{width:48px;height:48px}
.bp .ac-who,.bp .ac-share{display:flex;flex-direction:column;gap:5px;min-width:0}
.bp .author-card .ak{font:500 12.5px/1.2 'Geist',sans-serif;color:var(--d-faint)}
.bp .author-card .an{font:600 16px/1.3 'Geist',sans-serif;letter-spacing:-.01em;color:var(--d-ink)}
.bp .ac-share{flex-direction:row;align-items:center;gap:12px;margin-left:auto}
.bp .ac-share .share{flex-direction:row}
.bp .article .post-cta{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;margin-top:36px;padding:22px 24px;border-radius:var(--d-r);
  border:1px solid var(--d-line);color:inherit;text-decoration:none;
  background:radial-gradient(90% 140% at 0% 50%,rgba(45,212,191,.09),transparent 60%),var(--d-card);box-shadow:var(--d-card-hi);
  transition:border-color .2s,transform .3s var(--d-ease)}
.bp .article .post-cta:hover{border-color:var(--d-line-3);transform:translateY(-2px)}
.bp .post-cta .hexm{--c1:#2DD4BF}
.bp .post-cta .pc-body{display:flex;flex-direction:column;gap:5px;min-width:0}
.bp .post-cta .pc-k{align-self:flex-start;font:600 13px/1.2 'Geist',sans-serif;background:var(--accent-grad,linear-gradient(100deg,#93C5FD,#7DD3FC 42%,#5EEAD4));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.bp .post-cta b{font:600 17px/1.3 'Geist',sans-serif;letter-spacing:-.015em;color:var(--d-ink)}
.bp .post-cta .pc-t{font-size:14px;line-height:1.55;color:var(--d-mute)}
.bp .post-cta .pc-go{height:38px;font-size:14px;white-space:nowrap}

/* keep reading: the blog's own cards */
.bp .related{padding-top:112px;padding-bottom:64px}
.bp .related .sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 24px}
.bp .rgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bp .rcard{display:flex;flex-direction:column;overflow:hidden;border-radius:var(--d-r);border:1px solid var(--d-line);text-decoration:none;color:inherit;
  background:var(--d-card);box-shadow:var(--d-card-hi);transition:border-color .25s,transform .35s var(--d-ease),box-shadow .3s}
.bp .rcard:hover{border-color:var(--d-line-3);transform:translateY(-2px);box-shadow:var(--d-card-hi),0 30px 60px -40px rgba(2,6,23,.55)}
.bp .rc-cov{position:relative;aspect-ratio:1200/630;overflow:hidden;background:radial-gradient(70% 90% at 30% 0%,rgba(99,102,241,.22),transparent 70%),#0B1024;border-bottom:1px solid var(--d-line)}
.bp .rc-cov img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--d-ease)}
.bp .rcard:hover .rc-cov img{transform:scale(1.035)}
.bp .rc-body{display:flex;flex-direction:column;gap:10px;flex:1;padding:18px 20px 20px}
.bp .rcard h3{margin:0;font:600 17px/1.35 'Geist',sans-serif;letter-spacing:-.015em;color:var(--d-ink);text-wrap:balance}
.bp .rcard p{margin:0;font-size:14px;line-height:1.6;color:var(--d-mute);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* no room either side of the column: On this page folds above it, the
   share buttons stay at its end, the admin's buttons under them */
@media(max-width:1239px){
  .bp .layout{grid-template-columns:minmax(0,var(--bp-col));justify-content:center}
  .bp .side{display:none}
  .bp .toc-m{display:block;grid-column:1;grid-row:1;margin-bottom:36px}
  .bp .layout > .article{grid-column:1;grid-row:2}
  .bp .rail{grid-column:1;grid-row:3;justify-self:stretch;position:static;padding:0}
  .bp .rail .share-label,.bp .rail .share{display:none}
  .bp .admin-box{flex-direction:row;justify-content:flex-end;margin-top:28px}
}
@media(max-width:1023px){
  .bp .rgrid{grid-template-columns:minmax(0,1fr)}
  .bp .rcard{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr)}
  .bp .rc-cov{aspect-ratio:auto;min-height:100%;border-bottom:0;border-right:1px solid var(--d-line)}
  .bp .rc-cov img{position:absolute;inset:0}
}
@media(max-width:640px){
  .bp .wrap{padding-left:18px;padding-right:18px}
  .bp .bp-top{padding-top:40px}
  .bp .eyebrow-row{margin-bottom:18px}
  .bp .hero-body h1{font-size:clamp(31px,8.6vw,40px);line-height:1.08;letter-spacing:-.035em}
  .bp .dek{margin-top:16px;font-size:16.5px}
  .bp .byline{margin-top:24px;font-size:13.5px}
  .bp .byline .sub{flex-basis:100%;justify-content:center}
  .bp .byline .who + .sub::before{display:none}
  .bp .cover{margin-top:34px}
  .bp .cover .frame{border-radius:14px}
  .bp .layout{padding-top:40px}
  .bp .article{font-size:17px;line-height:1.75}
  .bp .article > p:first-of-type{font-size:18.5px}
  .bp .article h2{margin-top:56px}
  .bp .article hr.bp-end{margin:60px 0 28px}
  .bp .ac-share{margin-left:0;width:100%;padding-top:8px}
  .bp .article .post-cta{grid-template-columns:auto minmax(0,1fr);padding:20px}
  .bp .post-cta .pc-go{grid-column:1 / -1;width:100%}
  .bp .related{padding-top:80px;padding-bottom:72px}
  .bp .rcard{grid-template-columns:minmax(0,1fr)}
  .bp .rc-cov{aspect-ratio:1200/630;min-height:0;border-right:0;border-bottom:1px solid var(--d-line)}
  .bp .rc-cov img{position:static}
  .bp .admin-box .d-btn{padding:0 10px}
}
@media(prefers-reduced-motion:reduce){.bp .d-toc li.sub.show{animation:none}}
