/* docs.fluah.com: on top of fluah.com's site.css (colours, Sora, type and space steps). Ported from the signed-off
   design canvas (6 Nov 2026). */

/* ------------------------------------------------------------ footer: four columns (Product, Support, Account, Legal) */
.footer__brand { grid-column: 1 / span 4; }
.footer__col:first-of-type { grid-column: 5 / span 2; }

/* ------------------------------------------------------------ docs.fluah.com: header */
.dh { position: sticky; top: 0; z-index: 40; background: var(--ground); border-bottom: 1px solid var(--rule); }
.dh__in { display: flex; align-items: center; gap: var(--s4); height: 72px; }
.dh__brand { display: flex; align-items: center; gap: 14px; flex: 0 0 auto; text-decoration: none; }
.dh__brand img { height: 34px; width: auto; }
.dh__tag { padding-left: 14px; border-left: 1px solid var(--rule-strong); font-size: 22px; line-height: 34px; font-weight: 600; color: var(--ink); }
.dh__search {
  display: flex; align-items: center; gap: 10px; flex: 0 1 400px; min-width: 0; height: 44px; padding: 0 8px 0 14px; border: 0;
  border-radius: var(--r-control); background: #F3F5FB; box-shadow: inset 0 0 0 1px var(--rule); font: 400 15px/1 var(--font);
  color: var(--ink-soft); text-align: left; text-decoration: none; cursor: pointer; transition: box-shadow 0.15s ease;
}
.dh__search:hover { color: var(--ink-soft); box-shadow: inset 0 0 0 1px rgba(13, 20, 64, 0.42); }
.dh__search svg { flex: 0 0 auto; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.dh__search > span { flex: 1 1 auto; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.keys { display: inline-flex; gap: 4px; flex: 0 0 auto; }
kbd { display: inline-block; min-width: 24px; padding: 4px 6px; border-radius: 5px; background: #ffffff; box-shadow: inset 0 0 0 1px var(--rule-strong), 0 1px 0 var(--rule-strong); font: 600 12px/1 var(--font); color: var(--ink-soft); text-align: center; }
.dh__nav { display: flex; align-items: center; gap: var(--s4); margin-left: auto; list-style: none; }
.dh__nav a { font-size: 15px; color: var(--ink); text-decoration: none; white-space: nowrap; }
.dh__nav a:hover { color: var(--electric); }
.dh__nav a[aria-current="page"] { color: var(--electric); font-weight: 600; }

/* docs home */
.dhero { padding-block: clamp(56px, 7vw, 104px) 0; }
.dhero .lead { margin-top: var(--s3); color: var(--ink-soft); max-width: 36ch; }
.bigsearch {
  display: flex; align-items: center; gap: 14px; max-width: 760px; height: 68px; margin-top: var(--s5); padding: 0 14px 0 22px;
  border-radius: 14px; background: #ffffff; box-shadow: inset 0 0 0 1px var(--rule-strong), 0 24px 48px -32px rgba(13, 20, 64, 0.45);
  font-size: var(--t-body); color: var(--ink-soft); text-decoration: none; cursor: text;
}
.bigsearch:hover { color: var(--ink-soft); box-shadow: inset 0 0 0 1px rgba(13, 20, 64, 0.42), 0 24px 48px -32px rgba(13, 20, 64, 0.45); }
.bigsearch svg { flex: 0 0 auto; width: 22px; height: 22px; color: var(--electric); fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.bigsearch > span { flex: 1 1 auto; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: var(--s3); list-style: none; }
.chips a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border-radius: 999px; background: #F3F5FB; font-size: 15px; line-height: 1; color: var(--ink); text-decoration: none; transition: background-color 0.15s ease; }
.chips a:hover { background: var(--mist); color: var(--midnight); }
.dsec { padding-top: clamp(64px, 7vw, 104px); }
.dsec__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--s1) var(--s3); padding-bottom: 14px; border-bottom: 1px solid var(--rule-strong); }
.dsec__head h2 { font-size: 28px; line-height: 1.2; }
.dsec__head a { font-size: 15px; font-weight: 600; text-decoration: none; }
.dsec__head a:hover { text-decoration: underline; }

.dstart { margin-top: var(--s5); grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dstart h3 { font-size: var(--t-lead); line-height: 1.3; }
.dstart p { margin-top: var(--s1); font-size: var(--t-small); line-height: 1.6; color: var(--ink-soft); max-width: 28ch; }
.dstart .actions { grid-row: 4; padding-top: var(--s3); }

.dtopics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--gap); margin-top: var(--s4); list-style: none; }
.dtopic { display: grid; align-content: start; gap: var(--s2); padding: var(--s4) var(--s3) var(--s3); border-radius: var(--r-tile); background: rgba(13, 20, 64, 0.04); }
.dtopic h3 { display: flex; align-items: center; gap: 12px; font-size: 20px; line-height: 1.3; }
.dtopic h3 a { color: var(--ink); text-decoration: none; }
.dtopic h3 a:hover { color: var(--electric); }
.dtopic svg { flex: 0 0 auto; width: 26px; height: 26px; color: var(--electric); fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.dtopic ul { list-style: none; display: grid; }
.dtopic li a { display: block; padding: 7px 0; border-top: 1px solid var(--rule); font-size: 15px; line-height: 1.4; color: var(--ink-soft); text-decoration: none; }
.dtopic li a:hover { color: var(--electric); }

.dsample { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); align-items: center; gap: var(--s5); padding: var(--s5); border-radius: var(--r-tile); background: var(--midnight); color: var(--paper); overflow: hidden; }
.dsample .t2 { color: var(--paper); }
.dsample p { margin-top: var(--s2); font-size: var(--t-small); line-height: 1.6; color: var(--mist); max-width: 40ch; }
.dsample .shot { box-shadow: 0 0 0 1px var(--rule-dark), 0 40px 80px -40px rgba(0, 0, 0, 0.7); }
.dsample .dl-files { margin-top: var(--s4); grid-template-columns: minmax(0, 1fr); max-width: 360px; }
.dsample .dl-file { background: rgba(247, 244, 236, 0.06); box-shadow: inset 0 0 0 1px var(--rule-dark); color: var(--paper); }
.dsample .dl-file:hover { box-shadow: inset 0 0 0 1px var(--sky); color: var(--paper); }
.dsample .dl-file span { color: var(--mist); }
.dsample .dl-file svg { color: var(--sky); }

.dref { margin-top: var(--s2); grid-template-columns: repeat(5, minmax(0, 1fr)); column-gap: var(--s4); }
.dref a { color: var(--ink); text-decoration: none; }
.dref a:hover { color: var(--electric); }

.band--slim .band__in { padding-block: var(--s6); }
.band--slim .band__text { grid-column: 1 / span 7; }
.band--slim .actions { margin-top: var(--s3); }

/* docs: an article between the contents and "On this page" */
.dlayout { display: grid; grid-template-columns: 252px minmax(0, 1fr) 200px; column-gap: clamp(32px, 4vw, 64px); align-items: start; padding-block: var(--s5) var(--sec); }
.dside { position: sticky; top: 96px; font-size: 15px; line-height: 1.4; }
.dside details { border-bottom: 1px solid var(--rule); }
.dside summary { display: flex; align-items: center; gap: 10px; padding: 11px 0; font-weight: 600; color: var(--ink); cursor: pointer; list-style: none; }
.dside summary::-webkit-details-marker { display: none; }
.dside summary svg { flex: 0 0 auto; width: 18px; height: 18px; color: var(--electric); fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.dside summary::after { content: ""; flex: 0 0 auto; width: 7px; height: 7px; margin: 0 4px 0 auto; border-right: 1.5px solid var(--ink-soft); border-bottom: 1.5px solid var(--ink-soft); transform: rotate(-45deg); transition: transform 0.2s ease; }
.dside details[open] summary::after { transform: rotate(45deg); }
.dside ul { list-style: none; margin: 0 0 12px 8px; border-left: 1px solid var(--rule-strong); }
.dside li a { display: block; margin-left: -1px; padding: 7px 0 7px 18px; border-left: 2px solid transparent; color: var(--ink-soft); text-decoration: none; }
.dside li a:hover { color: var(--electric); }
.dside li a[aria-current="page"] { color: var(--electric); border-left-color: var(--electric); font-weight: 600; }

.dart { min-width: 0; max-width: 720px; }
.crumbs { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; font-size: 14px; line-height: 1.4; color: var(--ink-soft); }
.crumbs a { color: var(--ink-soft); text-decoration: none; }
.crumbs a:hover { color: var(--electric); text-decoration: underline; }
.crumbs li + li::before { content: "/"; margin-right: 8px; color: var(--grey-light); }
.dart h1 { margin-top: var(--s2); font-size: clamp(36px, 3.6vw, 52px); line-height: 1.06; color: var(--ink); }
.dart__lead { margin-top: var(--s3); font-size: var(--t-lead); line-height: 1.5; color: var(--ink); max-width: 40ch; }
.dmeta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: var(--s3); list-style: none; }
.dmeta li { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 0 10px; border-radius: 6px; box-shadow: inset 0 0 0 1px var(--rule-strong); font-size: 13px; line-height: 1; font-weight: 600; color: var(--ink-soft); }
.dmeta li.is-type { background: var(--electric); box-shadow: none; color: var(--paper); }
.dmeta svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.dart h2 { margin-top: var(--s6); font-size: 28px; line-height: 1.2; color: var(--ink); scroll-margin-top: 96px; }
.dart > p, .dart section > p { margin-top: var(--s2); font-size: var(--t-body); line-height: 1.7; color: var(--ink-soft); }
.dart p strong { color: var(--ink); font-weight: 600; }
.ui { display: inline-block; padding: 0 7px; border-radius: 6px; background: #F2F4FB; box-shadow: inset 0 0 0 1px var(--rule); font-size: 0.86em; line-height: 1.6; font-weight: 600; color: var(--ink); white-space: nowrap; }
.ui--prev { color: #A4520B; background: #FFF4EA; box-shadow: inset 0 0 0 1px #F6CFA6; }

.dbox { margin-top: var(--s5); padding: var(--s3) var(--s3) var(--s3); border-radius: var(--r-tile); background: rgba(13, 20, 64, 0.04); }
.dbox h2 { margin: 0; font-size: var(--t-body); line-height: 1.4; }
.dbox p { margin-top: 6px; font-size: var(--t-small); line-height: 1.6; color: var(--ink-soft); }
.dl-files { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: var(--s2); list-style: none; }
.dl-file { display: flex; align-items: center; gap: 12px; min-height: 60px; padding: 10px 14px; border-radius: var(--r-control); background: #ffffff; box-shadow: inset 0 0 0 1px var(--rule-strong); color: var(--ink); text-decoration: none; transition: box-shadow 0.15s ease; }
.dl-file:hover { color: var(--ink); box-shadow: inset 0 0 0 1px var(--electric); }
.dl-file svg { flex: 0 0 auto; width: 24px; height: 24px; color: var(--electric); fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.dl-file b { display: block; font-size: 15px; line-height: 1.35; font-weight: 600; }
.dl-file span { display: block; font-size: 13px; line-height: 1.4; color: var(--ink-soft); }

.where { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s2) var(--s3); margin-top: var(--s2); }
.where__path { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 15px; color: var(--ink-soft); }
.where__path svg { width: 14px; height: 14px; fill: none; stroke: var(--grey-light); stroke-width: 2; }
.switch-pic { display: inline-flex; padding: 3px; border-radius: 8px; background: #11151F; box-shadow: 0 0 0 1px rgba(13, 20, 64, 0.22); font: 600 13px/1 "Segoe UI", system-ui, sans-serif; }
.switch-pic span { padding: 7px 12px; border-radius: 6px; color: #9AA3B5; }
.switch-pic span.is-on { background: #2EC5E6; color: #0B0E14; }

.dsteps { list-style: none; display: grid; gap: var(--s5); margin-top: var(--s4); counter-reset: step; }
.dsteps > li { position: relative; padding-left: 60px; counter-increment: step; }
.dsteps > li::before { content: counter(step); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--electric); color: var(--paper); font-size: 15px; font-weight: 600; }
.dsteps > li:not(:last-child)::after { content: ""; position: absolute; left: 17px; top: 46px; bottom: calc(-1 * var(--s5) + 10px); width: 2px; background: radial-gradient(circle, var(--sky) 1.5px, transparent 2px) 0 0 / 2px 10px repeat-y; }
.dsteps h3 { padding-top: 5px; font-size: 22px; line-height: 1.3; color: var(--ink); }
.dsteps p { margin-top: 8px; font-size: var(--t-body); line-height: 1.7; color: var(--ink-soft); }
.dsteps .shot { margin-top: var(--s3); }
.callout { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 14px; margin-top: var(--s3); padding: 14px var(--s3) 14px 18px; border-radius: 12px; background: #EEF1FC; font-size: var(--t-small); line-height: 1.6; color: var(--midnight); }
.callout svg { width: 22px; height: 22px; margin-top: 1px; color: var(--electric); fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.callout b { font-weight: 600; }
.callout--note { background: #F5F6FA; }
.callout--note svg { color: var(--ink-soft); }

.dnext { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: var(--s3); list-style: none; }
.dnext a { display: grid; gap: 6px; height: 100%; padding: var(--s2) 18px; border-radius: 12px; box-shadow: inset 0 0 0 1px var(--rule-strong); color: var(--ink); text-decoration: none; transition: box-shadow 0.15s ease; }
.dnext a:hover { color: var(--ink); box-shadow: inset 0 0 0 1px var(--electric); }
.dnext small { font-size: 13px; line-height: 1.3; font-weight: 600; color: var(--electric); }
.dnext b { font-size: 16px; line-height: 1.35; font-weight: 600; }

.helpful { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s2) var(--s3); margin-top: var(--s7); padding-top: var(--s3); border-top: 1px solid var(--rule-strong); }
.helpful__ask { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; font-size: var(--t-small); font-weight: 600; color: var(--ink); }
.helpful__ask .btn { min-height: 40px; gap: 8px; padding: 0 14px; font-size: 15px; }
.helpful__ask .btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.helpful__ask .btn.is-on { background: var(--electric); color: var(--paper); box-shadow: none; }
.helpful__thanks { font-size: 15px; font-weight: 400; color: var(--ink-soft); }
.helpful__date { font-size: var(--t-meta); color: var(--ink-soft); }
.pager { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: var(--s4); }
.pager a { display: grid; gap: 4px; padding: var(--s2) var(--s3); border-radius: 12px; box-shadow: inset 0 0 0 1px var(--rule-strong); color: var(--ink); text-decoration: none; transition: box-shadow 0.15s ease; }
.pager a:hover { color: var(--ink); box-shadow: inset 0 0 0 1px var(--electric); }
.pager a + a { text-align: right; }
.pager small { font-size: 13px; color: var(--ink-soft); }
.pager b { font-size: var(--t-small); font-weight: 600; }

.dtoc { position: sticky; top: 96px; }
.dtoc h2 { font-size: 14px; line-height: 1.4; font-weight: 600; color: var(--ink); margin-bottom: 10px; }
.dtoc ol { list-style: none; border-left: 1px solid var(--rule-strong); }
.dtoc a { display: block; margin-left: -1px; padding: 6px 0 6px 16px; border-left: 2px solid transparent; font-size: 14px; line-height: 1.4; color: var(--ink-soft); text-decoration: none; }
.dtoc a:hover { color: var(--electric); }
.dtoc a.is-current { color: var(--electric); border-left-color: var(--electric); font-weight: 600; }
.dtoc__more { display: grid; gap: 8px; margin-top: var(--s4); padding-top: var(--s3); border-top: 1px solid var(--rule); font-size: 14px; }
.dtoc__more a { color: var(--ink-soft); text-decoration: none; }
.dtoc__more a:hover { color: var(--electric); }

/* docs: Ctrl K search over the page */
.dsearch { position: fixed; inset: 0; z-index: 80; display: flex; justify-content: center; align-items: flex-start; padding: 88px var(--s2) var(--s2); background: rgba(13, 20, 64, 0.4); }
.dsearch__box { display: flex; flex-direction: column; width: min(680px, 100%); max-height: calc(100% - 40px); border-radius: var(--r-tile); background: #ffffff; box-shadow: 0 0 0 1px var(--rule), 0 48px 96px -32px rgba(13, 20, 64, 0.6); overflow: hidden; }
.dsearch__in { display: flex; align-items: center; gap: 12px; flex: 0 0 auto; height: 64px; padding: 0 14px 0 20px; border-bottom: 1px solid var(--rule); }
.dsearch__in svg { flex: 0 0 auto; width: 22px; height: 22px; color: var(--electric); fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.dsearch__in input { flex: 1 1 auto; min-width: 0; height: 100%; border: 0; background: transparent; font: 400 18px/1 var(--font); color: var(--ink); }
.dsearch__in input:focus-visible { outline: none; }
.dsearch__list { overflow-y: auto; padding: 6px 8px 10px; }
.dsearch__group { padding: 14px 12px 6px; font-size: 13px; line-height: 1.3; font-weight: 600; color: var(--ink-soft); }
.dsearch__item { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 10px 12px; border-radius: 10px; color: var(--ink); text-decoration: none; }
.dsearch__item:hover, .dsearch__item.is-active { background: #EEF1FC; color: var(--ink); }
.dsearch__item svg { width: 22px; height: 22px; color: var(--electric); fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.dsearch__item b { display: block; font-size: 16px; line-height: 1.35; font-weight: 600; }
.dsearch__item span { display: block; margin-top: 2px; font-size: 14px; line-height: 1.45; color: var(--ink-soft); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.dsearch__item mark { padding: 0 2px; border-radius: 3px; background: var(--mist); color: var(--midnight); }
.dsearch__item .enter { visibility: hidden; }
.dsearch__item.is-active .enter { visibility: visible; }
.dsearch__foot { display: flex; flex-wrap: wrap; gap: 8px var(--s3); flex: 0 0 auto; padding: 12px 18px; border-top: 1px solid var(--rule); font-size: 13px; line-height: 1; color: var(--ink-soft); }
.dsearch__foot span { display: inline-flex; align-items: center; gap: 6px; }


/* ------------------------------------------------------------ tutorials: pictures carry the steps */
.dsteps h3 { font-size: 20px; }
.dsteps h3 .ui, .dsteps p .ui { font-size: 0.82em; }
.pic { margin: var(--s3) 0 0; }
.pic .shot { width: fit-content; max-width: 100%; border-radius: 10px; background: #0B0E14; }
.pic .shot img { display: block; width: auto; max-width: 100%; height: auto; }
.pic figcaption { margin-top: 10px; font-size: var(--t-meta); line-height: 1.5; color: var(--ink-soft); }
.pics2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s2); margin-top: var(--s3); }
.pics2 .pic { margin: 0; }
.ui svg { display: inline-block; width: 1.2em; height: 1.2em; margin: 0 5px 0 -1px; vertical-align: -0.24em; overflow: visible;
  /* Fluah's own strokes: an icon taken from the app keeps its attributes, one that took them from the app's CSS gets these */
  fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; stroke-linejoin: round; }
.ui--icon { padding: 0 5px; }
.ui--icon svg { margin: 0; }
.ui--prev svg, .ui svg { color: inherit; }
kbd + kbd { margin-left: 3px; }
.dart table { width: 100%; margin-top: var(--s3); border-collapse: collapse; font-size: 15px; line-height: 1.5; }
.dart th { padding: 10px 12px 10px 0; border-bottom: 1px solid var(--rule-strong); text-align: left; font-weight: 600; color: var(--ink); }
.dart td { padding: 10px 12px 10px 0; border-bottom: 1px solid var(--rule); vertical-align: top; color: var(--ink-soft); }
.dart td:first-child { color: var(--ink); white-space: nowrap; }
.dart ul.plain { margin-top: var(--s2); padding-left: 1.2em; font-size: var(--t-body); line-height: 1.7; color: var(--ink-soft); }
.dart code { padding: 1px 5px; border-radius: 4px; background: #F2F4FB; font: 500 0.88em/1.4 ui-monospace, Consolas, monospace; color: var(--ink); }
.dmeta li.is-pro { background: var(--midnight); box-shadow: none; color: var(--paper); }

/* a topic's page: its articles as picture cards */
.dtopic-head { display: flex; align-items: center; gap: 16px; margin-top: var(--s2); }
.dtopic-head svg { flex: 0 0 auto; width: 44px; height: 44px; color: var(--electric); fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.dtopic-head h1 { margin: 0; }
.dcards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s3); margin-top: var(--s5); list-style: none; }
.dcard a { display: grid; gap: 12px; height: 100%; padding: 12px 12px var(--s2); border-radius: var(--r-tile); box-shadow: inset 0 0 0 1px var(--rule-strong); color: var(--ink); text-decoration: none; transition: box-shadow 0.15s ease; }
.dcard a:hover { color: var(--ink); box-shadow: inset 0 0 0 1px var(--electric); }
.dcard .shot { border-radius: 8px; aspect-ratio: 16 / 9; background: #0B0E14; }
.dcard .shot img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: left top; }
.dcard .noshot { display: grid; place-items: center; border-radius: 8px; aspect-ratio: 16 / 9; background: rgba(13, 20, 64, 0.04); }
.dcard .noshot svg { width: 48px; height: 48px; color: var(--electric); fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.dcard b { padding: 0 6px; font-size: 18px; line-height: 1.35; font-weight: 600; }
.dcard small { padding: 0 6px; font-size: 13px; line-height: 1.3; font-weight: 600; color: var(--electric); }
.dtopic li a .n { color: var(--grey-light); }
.dtopic__all { margin-top: 4px; font-size: 14px; font-weight: 600; text-decoration: none; }

/* the search page (and the Ctrl K box) */
.dsearch[hidden] { display: none; }
.dsearch-page .dsearch__box { width: 100%; max-width: 760px; margin-top: var(--s4); box-shadow: 0 0 0 1px var(--rule-strong); max-height: none; }
.notfound { padding-block: var(--s7) var(--sec); }

@media (max-width: 1080px) {
  .footer__brand { grid-column: 1 / -1; }
  .footer__col, .footer__col:first-of-type { grid-column: auto / span 3; }
  .dh__nav li.is-wide { display: none; }
  .dstart { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: none; row-gap: var(--s5); }
  .dstart li { display: block; grid-row: auto; }
  .dtopics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dsample { grid-template-columns: minmax(0, 1fr); }
  .dref { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dlayout { grid-template-columns: 232px minmax(0, 1fr); }
  .dtoc { display: none; }
}
@media (max-width: 860px) {
  .footer__col, .footer__col:first-of-type, .footer__col:last-of-type { grid-column: auto / span 6; }
  .dh__search > span { display: none; }
  .dh__search { flex: 0 0 auto; }
  .dlayout { grid-template-columns: minmax(0, 1fr); }
  .dside { position: static; margin-bottom: var(--s4); }
  .dside details:not([open]) { display: none; }
  .dnext, .dcards, .pics2 { grid-template-columns: minmax(0, 1fr); }
  .band--slim .band__text { grid-column: 1 / -1; }
  .band--slim .band__in { padding-bottom: var(--s6); }
}
@media (max-width: 560px) {
  .dstart, .dtopics, .dref, .dl-files, .pager { grid-template-columns: minmax(0, 1fr); }
  .dh__nav { display: none; }
  .dsample { padding: var(--s4) var(--s3); }
  .pager a + a { text-align: left; }
}
body.is-searching { overflow: hidden; }
.dsearch__text { display: block; min-width: 0; }
.dsearch__none { padding: 28px 12px; font-size: 15px; color: var(--ink-soft); }
.dsearch__close { font-size: 14px; }
.dhelp { margin-top: clamp(64px, 7vw, 104px); }
.dhelp .t2 { color: var(--paper); }
.dart--wide { max-width: none; }
