/* Designed pages: loaded only for sites that switch a design setting on (home_layout = showcase, page_layout =
   editorial, market_layout = designed, footer_style = columns, a skin) or on a page that shows the designed market
   widgets. Comes after site.css and before the site's skin. Sites without those settings never download this file. */
/* footer_style = columns: links in headed columns */
.footer-cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 32px; }
.footer-col { min-width: 0; }
.footer-head { margin: 0 0 8px; font-size: .6875rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.footer-head a { display: inline-flex; align-items: center; min-height: 36px; color: var(--accent-text, #fff); text-decoration: none; }
.footer-col--rest { grid-column: 1 / -1; }
.footer-col--rest .footer-links { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }
@media (min-width: 768px) {
  .footer-cols { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .footer-col--rest { grid-column: span 2; }
}
/* ------------------------------------------------------------------------------------------------------------------
   Editorial page design (setting page_layout = editorial; PageDesign): article, page, platform review, listings.
   Uses the theme and skin tokens (--display, --serif, --mono, --accent-text, --on-accent, --paper-2).
   ------------------------------------------------------------------------------------------------------------------ */
.pages-editorial { --ed-ui: var(--display, var(--sans)); --ed-gold: var(--accent-text, var(--accent)); --ed-mono: var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);
  --ed-hair: color-mix(in srgb, var(--ink) 12%, transparent); --ed-card: color-mix(in srgb, var(--paper-2) 60%, transparent); --ed-ink-85: color-mix(in srgb, var(--ink) 86%, var(--paper)); --ed-ink-70: color-mix(in srgb, var(--ink) 72%, var(--paper)); }
/* Header of a page */
.pages-editorial .article-header { max-width: var(--wrap); padding-top: 40px; }
.pages-editorial .article-header > * { max-width: 48rem; }
.pages-editorial .breadcrumbs ol { margin-bottom: 32px; gap: 6px; font-family: var(--ed-ui); font-size: .75rem; color: var(--muted); }
.pages-editorial .breadcrumbs li + li::before { content: "›"; margin-inline-end: 6px; color: var(--muted); }
.pages-editorial .breadcrumbs a { transition: color .15s ease; }
.pages-editorial .breadcrumbs a:hover { color: var(--ink); }
.pages-editorial .breadcrumbs [aria-current] { color: var(--ed-ink-85); }
.pages-editorial .article-header .kicker, .pages-editorial .ed-read { display: inline-block; margin: 0 14px 0 0; font-family: var(--ed-ui); font-size: .6875rem; line-height: 1.5; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--ed-gold); }
.pages-editorial .ed-read { color: var(--muted); }
.pages-editorial .article-title { margin: 16px 0 0; font-family: var(--serif); font-weight: 700; font-size: 2.25rem; line-height: 1.05; letter-spacing: -.025em; text-wrap: balance; }
.pages-editorial .standfirst { margin: 24px 0 0; font-family: var(--serif); font-size: 1.25rem; line-height: 1.625; color: var(--ed-ink-70); text-wrap: pretty; }
.pages-editorial .byline { margin-top: 20px; padding-block: 0 20px; border-bottom: 1px solid var(--ed-hair); font-family: var(--ed-ui); font-size: .8125rem; color: var(--muted); }
.pages-editorial .byline a { color: var(--ink); font-weight: 600; text-decoration: none; }
.pages-editorial .byline a:hover { color: var(--ed-gold); }
.pages-editorial .avatar { width: 32px; height: 32px; }
.pages-editorial .ed-tile { width: 56px; height: 56px; flex: none; border-radius: 12px; font-family: var(--ed-ui); font-size: 1.5rem; margin-bottom: 4px; }
@media (min-width: 768px) { .pages-editorial .article-title { font-size: 3.75rem; } .pages-editorial .static-page .article-title { font-size: 3.25rem; } }
.pages-editorial .article-hero { max-width: 64rem; margin: 32px auto 16px; padding-inline: var(--gutter); }
.pages-editorial .article-hero img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 12px; }
.pages-editorial .article-hero figcaption { padding-inline: 0; font-family: var(--ed-ui); font-size: .75rem; }
/* Body + side column */
.pages-editorial .article-layout { max-width: var(--wrap); padding-block: 32px 64px; }
.pages-editorial .article-layout .article-main { max-width: 48rem; }
@media (min-width: 1100px) {
  .pages-editorial .article-layout.has-sidebar { grid-template-columns: minmax(0, 48rem) 280px; gap: 48px; justify-content: start; }
  .pages-editorial .article-sidebar { top: 88px; gap: 24px; }
  .pages-editorial .ed-toc--inline { display: none; }
}
@media (max-width: 1099px) { .pages-editorial .ed-toc--side { display: none; } }
/* Pages without a side column: text keeps its reading width, card grids and tables use the full page width. */
@media (min-width: 1100px) {
  .pages-editorial .article-layout:not(.has-sidebar) .article-main { max-width: none; }
  .pages-editorial .article-layout:not(.has-sidebar) .prose > * { max-width: 48rem; }
  .pages-editorial .article-layout:not(.has-sidebar) .prose > :is(.ed-linkcards, .cards, .ed-ranked, .ed-linklist, .market-feed, .ed-proscons, figure.wide, table) { max-width: none; }
}
.pages-editorial .prose { max-width: none; font-family: var(--serif); font-size: 1.0625rem; line-height: 1.8; color: var(--ed-ink-85); }
@media (min-width: 768px) { .pages-editorial .prose { font-size: 1.125rem; } }
.pages-editorial .prose > p, .pages-editorial .prose > ul, .pages-editorial .prose > ol { text-wrap: pretty; }
.pages-editorial .prose h2 { position: relative; margin: 2.2em 0 .8em; padding-bottom: .6rem; border-bottom: 1px solid var(--ed-hair); font-family: var(--ed-ui); font-size: 1.5rem; line-height: 1.2; font-weight: 700; letter-spacing: -.02em; color: var(--ink); text-wrap: balance; scroll-margin-top: 88px; }
.pages-editorial .prose h2::after { content: ""; position: absolute; inset-inline-start: 0; bottom: -1px; width: 2.5rem; height: 2px; background: var(--ed-gold); }
.pages-editorial .prose .box h2, .pages-editorial .prose .faq h2 { border: 0; padding: 0; margin-top: 0; }
.pages-editorial .prose .box h2::after { display: none; }
.pages-editorial .prose h3 { margin: 1.8em 0 .6em; font-family: var(--ed-ui); font-size: 1.25rem; line-height: 1.3; font-weight: 700; letter-spacing: -.02em; color: var(--ink); }
@media (min-width: 768px) { .pages-editorial .prose h2 { font-size: 1.875rem; } }
.pages-editorial .prose a:not(.button) { color: var(--ed-gold); text-decoration-color: color-mix(in srgb, currentColor 50%, transparent); transition: text-decoration-color .15s ease; }
.pages-editorial .prose a:not(.button):hover { text-decoration-color: currentColor; }
.pages-editorial .prose strong { color: var(--ink); }
.pages-editorial .prose li::marker { color: var(--ed-gold); }
.pages-editorial .prose blockquote { position: relative; margin: 2em 0; padding: .2em 0 .2em 1.25rem; border-inline-start: 2px solid var(--ed-gold); font-size: 1.25rem; line-height: 1.6; font-style: italic; color: var(--ink); }
.pages-editorial .prose blockquote::before { content: "\201C"; position: absolute; inset-inline-start: .4rem; top: -1.6rem; font-size: 4rem; line-height: 1; font-style: normal; color: color-mix(in srgb, var(--ed-gold) 45%, transparent); pointer-events: none; }
.pages-editorial .prose table { border: 1px solid var(--ed-hair); border-radius: 12px; border-spacing: 0; border-collapse: separate; font-family: var(--ed-ui); font-size: .875rem; line-height: 1.5; background: var(--ed-card); }
.pages-editorial .prose th, .pages-editorial .prose td { border: 0; border-bottom: 1px solid var(--ed-hair); padding: 12px 16px; }
.pages-editorial .prose thead th, .pages-editorial .prose tr:first-child > th { background: none; font-size: .625rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--ed-gold); white-space: nowrap; }
.pages-editorial .prose tbody tr:last-child > * { border-bottom: 0; }
.pages-editorial .prose tbody td:first-child, .pages-editorial .prose tbody th { font-weight: 600; color: var(--ink); }
.pages-editorial .prose td { font-variant-numeric: tabular-nums; }
.pages-editorial .prose img { border-radius: 12px; }
.pages-editorial .prose figcaption { font-family: var(--ed-ui); font-size: .75rem; }
.pages-editorial .prose hr { border-top-color: var(--ed-hair); }
/* Boxes: short answer / at a glance, cards, labels, code box, partner buttons, disclosure, terms */
.pages-editorial .prose .box, .pages-editorial .prose .market-box { margin: 1.6em 0; padding: 20px 22px; border: 1px solid var(--ed-hair); border-radius: 12px; background: var(--ed-card); font-size: 1rem; line-height: 1.7; }
.pages-editorial .prose > .box:first-of-type:not(.code-box):not(.cta-partners) { border-inline-start: 2px solid var(--ed-gold); border-start-start-radius: 4px; border-end-start-radius: 4px; }
.pages-editorial .prose .label { font-family: var(--ed-ui); font-size: .6875rem; line-height: 1.5; font-weight: 600; letter-spacing: .1em; color: var(--ed-gold); }
.pages-editorial .prose .cards { gap: 20px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); }
.pages-editorial .prose .cards > .box { transition: border-color .2s ease; }
.pages-editorial .prose .cards > .box:hover { border-color: color-mix(in srgb, var(--accent) 40%, transparent); }
.pages-editorial .prose .cards > .box h3 { margin-top: 0; font-size: 1.25rem; }
.pages-editorial .prose .cards > .box h3 a { color: var(--ink); text-decoration: none; }
.pages-editorial .prose .cards > .box h3 a:hover { color: var(--ed-gold); }
.pages-editorial .prose .cards > .box p { font-size: .9375rem; line-height: 1.6; color: var(--ed-ink-70); }
.pages-editorial .prose .cards > .box p + p:last-child:not(:has(a)) { font-family: var(--ed-ui); font-size: .6875rem; line-height: 1.5; color: var(--muted); }
.pages-editorial .prose a.button { min-height: 44px; padding: 8px 18px; border-radius: 6px; font-family: var(--ed-ui); font-size: .9375rem; font-weight: 600; letter-spacing: -.01em; transition: filter .15s ease, transform .15s ease; }
.pages-editorial .prose a.button:hover { transform: translateY(-1px); }
.pages-editorial .prose .code-box { border: 1px solid color-mix(in srgb, var(--accent) 40%, transparent); background: color-mix(in srgb, var(--accent) 5%, transparent); font-family: var(--ed-ui); }
.pages-editorial .prose .code-box .code-offer { font-size: 1.125rem; font-weight: 700; letter-spacing: -.02em; color: var(--ink); }
.pages-editorial .prose code.code-chip { font-family: var(--ed-mono); font-size: 1rem; letter-spacing: .08em; border-style: solid; border-color: color-mix(in srgb, var(--accent) 30%, transparent); background: color-mix(in srgb, var(--accent) 10%, transparent); color: var(--ink); }
.pages-editorial .copy-code { min-height: 34px; border-color: color-mix(in srgb, var(--accent) 45%, transparent); border-radius: 6px; font-family: var(--ed-ui); font-size: .8125rem; color: var(--ed-gold); transition: background .15s ease; }
.pages-editorial .copy-code:hover { background: color-mix(in srgb, var(--accent) 10%, transparent); }
.pages-editorial .prose .code-terms, .pages-editorial .prose .code-checked { font-size: .75rem; line-height: 1.5; color: var(--muted); }
.pages-editorial .cta-partners { border: 0; background: none; padding: 0; margin: 1.4em 0; }
.pages-editorial .cta-partners p { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; }
.pages-editorial .cta-partners a.button { margin: 0; }
.pages-editorial .prose .second-platform { border-color: color-mix(in srgb, var(--accent) 30%, transparent); font-family: var(--ed-ui); font-size: .9375rem; }
.pages-editorial .prose .second-platform small { font-size: .6875rem; line-height: 1.5; color: var(--muted); }
.pages-editorial .prose .market-box { border-inline-start: 2px solid var(--ed-gold); }
.pages-editorial .disclosure { margin: 0 0 1.6em; padding: 10px 14px; border: 1px solid var(--ed-hair); border-radius: 8px; background: var(--ed-card); font-family: var(--ed-ui); font-size: .75rem; color: var(--muted); }
.pages-editorial .offer-terms { border-top-color: var(--ed-hair); font-family: var(--ed-ui); font-size: .6875rem; color: var(--muted); }
/* Partner buttons in any text (home sections, pages, the automatic button row) take the partner's colour */
:is(.sc-prose, .pages-editorial .prose, .pages-editorial .cta-partners) a.button[href*="/go/kalshi"], .pages-editorial .promo-button[href*="/go/kalshi"] { background: #00eba4; color: #060e18; }
:is(.sc-prose, .pages-editorial .prose, .pages-editorial .cta-partners) a.button[href*="/go/polymarket"], .pages-editorial .promo-button[href*="/go/polymarket"] { background: #0062f5; color: #fff; }
:is(.sc-prose, .pages-editorial .prose, .pages-editorial .cta-partners) a.button[href*="/go/prophetx"], .pages-editorial .promo-button[href*="/go/prophetx"] { background: #fbc522; color: #060e18; }
:is(.sc-prose, .pages-editorial .prose, .pages-editorial .cta-partners) a.button:is([href*="/go/og?"], [href$="/go/og"]), .pages-editorial .promo-button:is([href*="/go/og?"], [href$="/go/og"]) { background: #f7743b; color: #060e18; }
:is(.sc-prose, .pages-editorial .prose) a.lo-book { color: var(--on-accent, #fff); text-decoration: none; }
:is(.sc-prose, .pages-editorial .prose) a.lo-book.lo-polymarket { background: #0062f5; color: #fff; }
:is(.sc-prose, .pages-editorial .prose) a.lo-book.lo-kalshi { background: #00eba4; color: #060e18; }
.pages-editorial .cta-partners a.button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 18px; border-radius: 6px; background: var(--accent); color: var(--on-accent, #fff); font-family: var(--ed-ui); font-size: .9375rem; font-weight: 600; text-decoration: none; }
/* Contents list */
.ed-toc { font-family: var(--ed-ui); }
.ed-toc-title, .ed-toc summary { margin: 0 0 12px; font-size: .625rem; line-height: 1.5; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--ed-gold); }
.ed-toc ol { list-style: none; margin: 0; padding: 0; counter-reset: toc; display: grid; gap: 2px; }
.ed-toc li { counter-increment: toc; margin: 0; }
.ed-toc a { display: grid; grid-template-columns: 26px 1fr; gap: 6px; padding: 5px 0; font-size: .8125rem; line-height: 1.4; color: var(--ed-ink-70); text-decoration: none; transition: color .15s ease; }
.ed-toc a::before { content: counter(toc, decimal-leading-zero); font-family: var(--ed-mono); font-size: .6875rem; line-height: 1.65; color: var(--ed-gold); }
.ed-toc a:hover { color: var(--ink); }
.pages-editorial .prose .ed-toc--inline { margin: 0 0 1.6em; padding: 14px 16px; border: 1px solid var(--ed-hair); border-radius: 12px; background: var(--ed-card); }
.ed-toc--inline summary { margin: 0; cursor: pointer; }
.ed-toc--inline[open] summary { margin-bottom: 10px; }
.pages-editorial .prose .ed-toc--inline a { color: var(--ed-ink-70); }
.ed-toc--side { padding-inline-start: 16px; border-inline-start: 1px solid var(--ed-hair); }
/* Side boxes, FAQ, article footer, related */
.pages-editorial .side-box { padding: 20px; border-color: var(--ed-hair); border-radius: 12px; background: var(--ed-card); }
.pages-editorial .promo-box { border-color: color-mix(in srgb, var(--accent) 30%, transparent); }
.pages-editorial .side-title { font-family: var(--ed-ui); font-size: .9375rem; }
.pages-editorial .side-list a { color: var(--ed-ink-70); transition: color .15s ease; }
.pages-editorial .side-list a:hover { color: var(--ed-gold); text-decoration: none; }
.pages-editorial .promo-button { min-height: 44px; border-radius: 6px; font-family: var(--ed-ui); font-weight: 600; transition: filter .15s ease; }
.pages-editorial .promo-disclaimer { font-size: .6875rem; }
.pages-editorial .faq { margin-top: 3em; font-family: var(--ed-ui); }
.pages-editorial .faq h2 { font-family: var(--ed-ui); font-size: 1.5rem; letter-spacing: -.02em; }
.pages-editorial .faq details { border-color: var(--ed-hair); }
.pages-editorial .faq summary { padding: 16px 0; font-size: 1rem; font-weight: 600; list-style: none; display: flex; justify-content: space-between; gap: 16px; transition: color .15s ease; }
.pages-editorial .faq summary::-webkit-details-marker { display: none; }
.pages-editorial .faq summary::after { content: "+"; flex: none; font-family: var(--ed-mono); color: var(--ed-gold); }
.pages-editorial .faq details[open] summary::after { content: "−"; }
.pages-editorial .faq summary:hover { color: var(--ed-gold); }
.pages-editorial .faq-answer { font-family: var(--serif); font-size: 1rem; line-height: 1.7; color: var(--ed-ink-70); }
.pages-editorial .article-footer { max-width: none; margin-top: 40px; }
.pages-editorial .tags a, .pages-editorial .chips a, .pages-editorial .share a, .pages-editorial .share button, .pages-editorial .pagination a { border-color: var(--ed-hair); font-family: var(--ed-ui); font-size: .8125rem; transition: border-color .15s ease, color .15s ease; }
.pages-editorial .tags a:hover, .pages-editorial .chips a:hover, .pages-editorial .share a:hover, .pages-editorial .share button:hover, .pages-editorial .pagination a:hover { border-color: var(--accent); color: var(--ed-gold); }
.pages-editorial .author-box { padding: 24px; border: 1px solid var(--ed-hair); border-radius: 12px; background: var(--ed-card); font-family: var(--serif); font-size: .9375rem; line-height: 1.65; color: var(--ed-ink-70); }
.pages-editorial .author-box .author-name { font-family: var(--ed-ui); font-size: 1rem; }
.pages-editorial .author-box .author-name a { color: var(--ink); text-decoration: none; }
.pages-editorial .child-pages { border: 1px solid var(--ed-hair); border-radius: 12px; background: var(--ed-card); font-family: var(--ed-ui); }
.pages-editorial .related { border-top: 1px solid var(--ed-hair); padding-block: 48px 64px; }
.pages-editorial .section-title { border-top: 0; padding-top: 0; font-family: var(--ed-ui); font-size: .6875rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ed-gold); }
/* Cards and listings (guides index, categories, search, author) */
.pages-editorial .card { padding: 16px; border: 1px solid var(--ed-hair); border-radius: 12px; background: color-mix(in srgb, var(--paper-2) 50%, transparent); transition: border-color .2s ease, box-shadow .2s ease; }
.pages-editorial .card:hover { border-color: color-mix(in srgb, var(--accent) 40%, transparent); box-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1); }
.pages-editorial .card-media { border-radius: 8px; aspect-ratio: 16 / 9; order: 1; }
.pages-editorial .card-body { display: contents; }
.pages-editorial .card .kicker { order: 0; margin: 0; font-family: var(--ed-ui); font-size: .625rem; letter-spacing: .1em; color: var(--ed-gold); }
.pages-editorial .card-title { order: 0; margin: 0; font-family: var(--ed-ui); font-size: 1.125rem; line-height: 1.3; font-weight: 700; letter-spacing: -.02em; text-wrap: balance; }
.pages-editorial .card:hover .card-title a { color: var(--ed-gold); text-decoration: none; }
.pages-editorial .card-excerpt { order: 2; margin: 0; font-family: var(--serif); font-size: .9375rem; line-height: 1.45; color: var(--ed-ink-70); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.pages-editorial .card .meta { order: 3; margin-top: auto; font-family: var(--ed-ui); font-size: .625rem; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.pages-editorial .archive { padding-block: 40px 64px; }
.pages-editorial .archive-header { padding-bottom: 28px; margin-bottom: 32px; border-bottom: 1px solid var(--ed-hair); }
.pages-editorial .archive-header h1 { max-width: 48rem; font-family: var(--serif); font-size: clamp(2.25rem, 6vw, 3.75rem); line-height: 1.05; letter-spacing: -.025em; text-wrap: balance; }
.pages-editorial .archive-desc { max-width: 42rem; margin-top: 16px; font-family: var(--serif); font-size: 1.125rem; line-height: 1.625; color: var(--ed-ink-70); }
.pages-editorial .archive-header .chips { margin-top: 20px; }
.pages-editorial .archive-intro { max-width: 48rem; }
.pages-editorial .list { max-width: none; display: grid; gap: 20px; }
@media (min-width: 640px) { .pages-editorial .list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1024px) { .pages-editorial .list { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.pages-editorial .card--list { flex-direction: column; gap: 12px; padding: 16px; border-bottom: 1px solid var(--ed-hair); }
.pages-editorial .card--list .card-media { flex: none; max-width: none; }
.pages-editorial .card--list .card-excerpt { display: -webkit-box; }
.pages-editorial .card--list .card-title { font-size: 1.125rem; }
.pages-editorial .pagination { max-width: none; font-family: var(--ed-ui); }
.pages-editorial .category-index a { font-family: var(--ed-ui); letter-spacing: -.02em; }
.pages-editorial .category-index li { border-bottom-color: var(--ed-hair); }


/* Every market and price is a partner link (owner rule): quiet until hovered, clear on focus. */
.sc-strip-tile { display: block; color: inherit; text-decoration: none; border-radius: 8px; margin: -6px; padding: 6px; transition: background .15s ease; }
.sc-strip-tile:hover { color: inherit; background: color-mix(in srgb, var(--accent) 8%, transparent); }
.sc-strip-tile span { display: block; }
.sc-strip-tile .sc-strip-change { display: inline; }
.sc-strip-list span.sc-strip-label, .sc-strip-list span.sc-strip-pct, .sc-strip-list span.sc-strip-title { display: block; }

/* Editorial design: blocks built by PageDesign::dress (review hero pieces, stacked tables, chips) */
.pages-editorial .ed-rating { display: flex; align-items: center; gap: 6px; margin: 12px 0 0; font-family: var(--ed-ui); font-size: .875rem; font-weight: 600; color: var(--ink); }
.pages-editorial .ed-rating span { color: var(--ed-gold); }
.pages-editorial .prose .ed-tldr { margin: 1.6em 0; padding: 18px 20px; border-inline-start: 2px solid var(--ed-gold); border-radius: 4px 12px 12px 4px; background: var(--ed-card); font-size: 1rem; line-height: 1.7; }
.pages-editorial .prose .ed-tldr > :last-child { margin-bottom: 0; }
.pages-editorial .prose .ed-tldr .label strong { color: inherit; }
.pages-editorial .prose p.ed-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: .2em 0 .9em; }
.pages-editorial .prose p.ed-tags strong { padding: 2px 8px; border-radius: 4px; background: color-mix(in srgb, var(--ink) 9%, transparent); font-family: var(--ed-ui); font-size: .6875rem; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; color: var(--ed-ink-70); }
.pages-editorial .prose .ed-facts dl { display: grid; grid-template-columns: auto 1fr; gap: 0 20px; margin: 0; font-family: var(--ed-ui); font-size: .875rem; }
.pages-editorial .prose .ed-facts dt, .pages-editorial .prose .ed-facts dd { margin: 0; padding: 9px 0; border-bottom: 1px solid var(--ed-hair); }
.pages-editorial .prose .ed-facts dt { font-size: .6875rem; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); align-self: center; padding-block: 11px; }
.pages-editorial .prose .ed-facts dd { text-align: end; font-weight: 600; color: var(--ink); }
.pages-editorial .prose .ed-facts dt:last-of-type, .pages-editorial .prose .ed-facts dd:last-of-type { border-bottom: 0; }
.pages-editorial .prose .ed-proscons { display: grid; gap: 16px; margin: 1.6em 0; }
@media (min-width: 640px) { .pages-editorial .prose .ed-proscons { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.pages-editorial .prose .ed-proscons > div { padding: 18px 20px; border: 1px solid var(--ed-hair); border-radius: 12px; background: var(--ed-card); border-top: 2px solid #34d399; }
.pages-editorial .prose .ed-proscons > .ed-con { border-top-color: #fb7185; }
.pages-editorial .prose .ed-proscons h3 { margin: 0 0 10px; font-size: .6875rem; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.pages-editorial .prose .ed-proscons ul { list-style: none; margin: 0; padding: 0; font-family: var(--serif); font-size: 1rem; }
.pages-editorial .prose .ed-proscons li { position: relative; margin: 0; padding: 6px 0 6px 26px; }
[dir="rtl"] .pages-editorial .prose .ed-proscons li { padding: 6px 26px 6px 0; }
.pages-editorial .prose .ed-proscons li::before { content: "✓"; position: absolute; inset-inline-start: 0; font-family: var(--ed-ui); color: #34d399; }
.pages-editorial .prose .ed-con li::before { content: "✕"; color: #fb7185; }
body.theme-light.pages-editorial .prose .ed-proscons > div { border-top-color: #0f7b3e; } body.theme-light.pages-editorial .prose .ed-proscons > .ed-con { border-top-color: #b42318; }
body.theme-light.pages-editorial .prose .ed-proscons li::before { color: #0f7b3e; } body.theme-light.pages-editorial .prose .ed-con li::before { color: #b42318; }
.pages-editorial .prose .ed-states { font-family: var(--ed-ui); }
.pages-editorial .prose .ed-states summary { cursor: pointer; padding: 6px 0; font-size: .9375rem; color: var(--ink); }
.pages-editorial .prose .ed-states ul { list-style: none; margin: 12px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(132px, 1fr)); gap: 4px 16px; font-size: .8125rem; color: var(--ed-ink-70); }
.pages-editorial .prose .ed-states li { margin: 0; padding: 3px 0 3px 18px; position: relative; }
.pages-editorial .prose .ed-states li::before { content: "✓"; position: absolute; inset-inline-start: 0; color: #34d399; font-size: .75rem; }
.pages-editorial .prose ul.ed-ratings { list-style: none; margin: 8px 0 0; padding: 0; display: grid; gap: 14px 24px; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); font-family: var(--ed-ui); }
.pages-editorial .prose .ed-ratings li { margin: 0; }
.pages-editorial .prose .ed-ratings p { margin: 0; font-size: .875rem; color: var(--ed-ink-85); }
.pages-editorial .prose .ed-ratings p strong::before { content: "★ "; color: var(--ed-gold); }
.pages-editorial .prose .ed-ratings .ed-rating-note { margin-top: 2px; font-size: .75rem; line-height: 1.5; color: var(--muted); }
/* Tables with column headings become one card per row on phones (no sideways scrolling) */
@media (max-width: 700px) {
  .pages-editorial .prose table.ed-stack, .pages-editorial .prose table.ed-stack tbody, .pages-editorial .prose table.ed-stack tr, .pages-editorial .prose table.ed-stack td, .pages-editorial .prose table.ed-stack tbody th { display: block; width: auto; }
  .pages-editorial .prose table.ed-stack { border: 0; background: none; overflow: visible; }
  .pages-editorial .prose table.ed-stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .pages-editorial .prose table.ed-stack tr { margin: 0 0 12px; padding: 6px 16px; border: 1px solid var(--ed-hair); border-radius: 12px; background: var(--ed-card); }
  .pages-editorial .prose table.ed-stack td, .pages-editorial .prose table.ed-stack tbody th { display: grid; grid-template-columns: minmax(84px, 34%) 1fr; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--ed-hair); text-align: start; white-space: normal; font-size: .875rem; text-transform: none; letter-spacing: 0; color: var(--ed-ink-85); }
  .pages-editorial .prose table.ed-stack tr > :last-child { border-bottom: 0; }
  .pages-editorial .prose table.ed-stack [data-label]::before { content: attr(data-label); font-size: .625rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); padding-top: 3px; }
  .pages-editorial .prose table.ed-stack td a { min-height: 44px; display: inline-flex; align-items: center; }
}
/* Listing cards: picture first, equal heights per row */
.pages-editorial .list .card, .pages-editorial .grid .card { height: 100%; }
.pages-editorial .card--list .card-media { order: -1; }
.pages-editorial .card-media img { transition: transform .5s ease; }
.pages-editorial .archive-header .chips a { min-height: 36px; padding: 4px 14px; border-radius: 999px; font-weight: 600; }
/* Anchors clear the sticky header; phones get 44px tap targets on small controls */
.pages-editorial :target, .home-showcase :target { scroll-margin-top: 88px; }
@media (max-width: 767px) {
  .sc-copy, .sc-terms summary, .pages-editorial .copy-code { min-height: 44px; display: inline-flex; align-items: center; }
  .sc-lead .sc-links a, .ed-toc a { min-height: 44px; align-items: center; }
  /* Small controls get a 44px tap height without moving anything: the extra height is taken back by the margin. */
  .pages-editorial .card .kicker, .home-showcase .card .kicker, .pages-editorial .article-header .kicker, .pages-editorial .author-name a, .sc-platform-name,
  .pages-editorial .ed-rank-name a, .pages-editorial .prose .cards > .box h3 a, .sc-prose .cards > .box h3 a { display: inline-flex; align-items: center; min-height: 44px; margin-block: -10px; }
  .pages-editorial .card .kicker, .home-showcase .card .kicker, .pages-editorial .article-header .kicker { margin-block: -14px; }
  .pages-editorial .brand, .home-showcase .brand { min-height: 44px; justify-content: center; }
  .pages-editorial .ed-toc--inline summary, .pages-editorial .ed-states summary, .pages-editorial .faq summary { min-height: 44px; display: flex; align-items: center; }
  .pages-editorial .prose td > a.button { min-height: 44px; }
  .pages-editorial .ed-timeline p > a:only-child, .sc-col li > a:first-child, .sc-linklist a, .pages-editorial .prose .box > a:not(.button) { padding-block: 13px; }
  .footer-bottom a { min-width: 44px; justify-content: center; }
  .pages-editorial .article-sidebar li a, .pages-editorial .side-box li a { display: flex; align-items: center; min-height: 44px; }
  .pages-editorial .ed-toc--inline li { min-height: 44px; display: flex; }
  .footer-head a, .footer-bottom a, .pages-editorial .archive-header .chips a { min-height: 44px; }
  .pages-editorial .child-pages li a, .pages-editorial .ed-toc--inline a { display: flex; align-items: center; min-height: 44px; }
  .lo td a.mf-link { min-width: 44px; justify-content: flex-end; }
  .sc-col > p > a:only-child, .mf.market-feed .mf-card h3 a.mf-link, .pages-editorial .prose table.ed-stack tbody th a { padding-block: 13px; }
  /* Breadcrumbs stay on one line on phones: long names are cut with an ellipsis, links keep a 44px tap height. */
  .pages-editorial .breadcrumbs ol { flex-wrap: nowrap; align-items: center; margin-bottom: 12px; }
  .pages-editorial .breadcrumbs li { display: flex; align-items: center; min-width: 0; flex: 0 1 auto; white-space: nowrap; }
  .pages-editorial .breadcrumbs li:first-child { flex: none; }
  .pages-editorial .breadcrumbs li:last-child { flex-shrink: 3; }
  .pages-editorial .breadcrumbs a, .pages-editorial .breadcrumbs [aria-current] { display: block; min-width: 0; max-width: none; line-height: 44px; overflow: hidden; text-overflow: ellipsis; }
  .footer-links a, .footer-social a, .language-switcher a { min-height: 44px; }
}
/* A quiet divider in the page's accent between the big home sections */
.sc-sections > .sc-sec { position: relative; }
.sc-sections > .sc-sec::before { content: ""; position: absolute; top: -1px; inset-inline-start: 0; width: 56px; height: 2px; background: linear-gradient(90deg, var(--sc-gold), transparent); }
/* ------------------------------------------------------------------------------------------------------------------
   Market widgets from the daily feed (MarketFeedService: chart cards and the movers board/list). Server-rendered, no
   script. Every market, price and button is the tracked partner link. Works in any text and on the designed home;
   this block comes after the text styles on purpose and its table rules are written to outrank them.
   ------------------------------------------------------------------------------------------------------------------ */
.mf { --mf-ui: var(--display, var(--sans)); --mf-mono: var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace); --mf-hair: color-mix(in srgb, var(--ink) 12%, transparent);
  --mf-1: #9a6400; --mf-2: #0b6f8f; --mf-3: #177a3c; --mf-4: #c0321f; --mf-up: #0f7b3e; --mf-down: #b42318; margin: 1.2em 0; font-family: var(--mf-ui); container-type: inline-size; }
body.theme-dark .mf { --mf-1: #f3bc44; --mf-2: #4fd0ee; --mf-3: #4ee384; --mf-4: #f8836b; --mf-up: #34d399; --mf-down: #fb7185; }
.mf.market-feed p { margin: 0; max-width: none; }
.mf.market-feed .mf-asof { margin-bottom: 16px; font-family: var(--mf-mono); font-size: .6875rem; line-height: 1.5; color: var(--muted); }
.mf.market-feed .mf-kicker { font-size: .6875rem; line-height: 1.5; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.mf.market-feed .mf-note { margin-top: 12px; font-size: .6875rem; line-height: 1.5; color: var(--muted); }

/* Chart cards: equal height per row; the chart takes up the slack and the button row sits on the bottom edge. */
.mf-grid-cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 20px; }
@container (min-width: 700px) { .mf-grid-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@container (min-width: 1500px) { .mf-grid-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.mf-card { container-type: inline-size; min-width: 0; display: flex; flex-direction: column; gap: 10px; padding: 16px; border: 1px solid var(--mf-hair); border-radius: 12px; background: color-mix(in srgb, var(--paper-2) 60%, transparent); transition: border-color .2s ease; }
.mf-card:hover { border-color: color-mix(in srgb, var(--accent) 40%, transparent); }
@media (min-width: 768px) { .mf-card { padding: 24px; gap: 12px; } }
.mf.market-feed .mf-card h3 { margin: 0; font-family: var(--mf-ui); font-size: 1.0625rem; line-height: 1.375; font-weight: 600; letter-spacing: -.01em; text-wrap: balance; }
/* Market and price links stay quiet inside the gold-link text styles of the designed pages (base rule: site.css). */
:is(.pages-editorial .prose, .sc-prose) :is(.market-feed, .lo) a.mf-link:not(.button) { color: inherit; text-decoration: none; }
:is(.pages-editorial .prose, .sc-prose) :is(.market-feed, .lo) a.mf-link:not(.button):hover { color: var(--accent-text, var(--accent)); text-decoration: underline; text-underline-offset: 3px; }
.mf.market-feed .mf-card h3 a.mf-link::after { content: " ↗"; font-family: var(--mf-mono); font-size: .75em; color: var(--muted); }
.mf.market-feed .mf-ends { font-family: var(--mf-mono); font-size: .6875rem; color: var(--muted); }
.mf.market-feed table.mf-table { display: table; table-layout: fixed; width: 100%; margin: 2px 0 0; border: 0; border-radius: 0; border-collapse: collapse; background: none; font-family: var(--mf-ui); font-size: .875rem; line-height: 1.35; overflow: visible; }
.mf.market-feed .mf-table tr > * { padding: 8px 0 8px 10px; border: 0; border-bottom: 1px solid var(--mf-hair); background: none; text-align: right; vertical-align: middle; white-space: nowrap; }
.mf.market-feed .mf-table thead tr > th { width: 4.75rem; padding-top: 0; font-size: .5625rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.mf.market-feed .mf-table thead tr > th:first-child { width: auto; padding-left: 0; }
.mf.market-feed .mf-table thead tr > th.mf-move { width: 5.5rem; }
.mf.market-feed .mf-table tr > th:first-child { position: relative; padding-left: 16px; text-align: left; white-space: normal; overflow-wrap: anywhere; }
.mf.market-feed .mf-table tbody tr > th { font-size: .875rem; font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--ink); }
.mf.market-feed .mf-table tbody tr > td { font-family: var(--mf-mono); font-weight: 600; font-variant-numeric: tabular-nums; color: var(--ink); }
.mf.market-feed .mf-table tbody tr:last-child > * { border-bottom: 0; }
.mf.market-feed .mf-table .mf-move { font-weight: 400; }
@container (max-width: 400px) { .mf.market-feed .mf-table .mf-move { display: none; } }
@container (min-width: 480px) { .mf.market-feed .mf-table thead tr > th:not(:first-child) { width: 5.6rem; font-size: .625rem; letter-spacing: .08em; } .mf.market-feed .mf-table thead tr > th.mf-move { width: 5.75rem; } }
.mf-key { position: absolute; left: 0; top: 50%; width: 8px; height: 8px; margin-top: -4px; border-radius: 50%; background: currentColor; }
.mf-c1 { color: var(--mf-1); stroke: var(--mf-1); } .mf-c2 { color: var(--mf-2); stroke: var(--mf-2); } .mf-c3 { color: var(--mf-3); stroke: var(--mf-3); } .mf-c4 { color: var(--mf-4); stroke: var(--mf-4); }
.mf-change { font-family: var(--mf-mono); font-size: .6875rem; font-weight: 400; white-space: nowrap; }
.mf-change.is-up { color: var(--mf-up); } .mf-change.is-down { color: var(--mf-down); } .mf-change.is-flat { color: var(--muted); }
.mf.market-feed figure.mf-chart { flex: 1 0 auto; display: flex; flex-direction: column; margin: 6px 0 0; }
.mf-plot { flex: 1 0 130px; display: flex; position: relative; direction: ltr; }
@container (min-width: 480px) { .mf-plot { flex-basis: 170px; } }
.mf-spark { display: block; width: 100%; overflow: visible; }
.mf-plot .mf-spark { position: absolute; inset: 0 38px 0 0; width: calc(100% - 38px); height: 100%; }
.mf-spark .mf-line { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.mf-spark .mf-dot { fill: none; stroke-width: 7; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.mf-spark .mf-grid { stroke: var(--mf-hair); stroke-width: 1; vector-effect: non-scaling-stroke; }
.mf-y { flex: none; display: flex; flex-direction: column; justify-content: space-between; min-width: 30px; margin-left: auto; padding-block: 2px; font-family: var(--mf-mono); font-size: .625rem; line-height: 1; color: var(--muted); text-align: right; }
.mf-x { display: flex; justify-content: space-between; margin: 6px 38px 0 0; direction: ltr; font-family: var(--mf-mono); font-size: .625rem; line-height: 1; color: var(--muted); }
.mf.market-feed .mf-chart figcaption { margin-top: 6px; text-align: end; font-family: var(--mf-ui); font-size: .625rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.mf-card-foot { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--mf-hair); }
.mf.market-feed .mf-card-foot .mf-cta { margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap: 10px; }
.mf.market-feed .mf-card-foot .mf-terms p + p { margin-top: 6px; }

/* Buttons: the partner's colour; the button of a movers row is outlined so a list of them stays quiet. */
.mf.market-feed .mf-cta { margin-top: 20px; display: flex; flex-wrap: wrap; gap: 12px; }
.mf.market-feed a.mf-button { --op: var(--accent); --op-ink: var(--on-accent, #fff); display: inline-flex; align-items: center; justify-content: center; min-height: 44px; margin: 0; padding: 8px 14px; border: 1px solid var(--op); border-radius: 6px; background: var(--op); color: var(--op-ink); font-family: var(--mf-ui); font-size: .875rem; line-height: 1.25; font-weight: 600; text-align: center; text-decoration: none; transition: filter .15s ease, background-color .15s ease; }
.mf.market-feed a.mf-button[data-partner="kalshi"] { --op: #00eba4; --op-ink: #060e18; }
.mf.market-feed a.mf-button[data-partner="polymarket"] { --op: #0062f5; --op-ink: #fff; }
.mf.market-feed a.mf-button:hover { filter: brightness(1.1); color: var(--op-ink); }
.mf.market-feed a.mf-button::after { content: "→"; margin-inline-start: 8px; font-weight: 400; }
[dir="rtl"] .mf.market-feed a.mf-button::after { content: "←"; }
.mf.market-feed a.mf-button--first { box-shadow: 0 8px 18px -10px var(--op); }
.mf.market-feed a.mf-button.mf-button--row[data-partner] { min-height: 36px; padding: 6px 12px; border-color: color-mix(in srgb, var(--op) 65%, var(--ink)); background: color-mix(in srgb, var(--op) 16%, transparent); color: var(--ink); font-size: .8125rem; white-space: nowrap; }
.mf.market-feed a.mf-button.mf-button--row[data-partner]:hover { background: color-mix(in srgb, var(--op) 30%, transparent); color: var(--ink); filter: none; }
.mf.market-feed .mf-terms { margin: 8px 0 0; }
.mf.market-feed .mf-terms-list { margin-top: 8px; display: grid; gap: 2px; }
.mf.market-feed .mf-terms-list .mf-terms { margin: 0; }

/* Movers: risers and fallers side by side on wide screens; each row has its price, change, chart and its own button. */
.mf-cols { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px; }
.mf-col { min-width: 0; container-type: inline-size; }
@container (min-width: 620px) { .mf-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; } .mf--board-one .mf-cols { grid-template-columns: minmax(0, 1fr); } }
.mf.market-feed .mf-col-title { display: flex; align-items: center; gap: 8px; margin: 0; padding-bottom: 12px; border-bottom: 1px solid color-mix(in srgb, var(--ink) 80%, transparent); font-family: var(--mf-ui); font-size: 1.125rem; line-height: 1.4; font-weight: 700; }
.mf.market-feed .mf-col-title::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--mf-up); }
.mf.market-feed .mf-col-title.is-down::before { background: var(--mf-down); }
.mf.market-feed ul.mf-movers { list-style: none; margin: 0; padding: 0; }
.mf.market-feed .mf-mover { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin: 0; padding: 12px 0; border-bottom: 1px solid var(--mf-hair); }
.mf.market-feed .mf-mover::before, .mf.market-feed .mf-mover::marker { content: none; }
.mf-mover-text { flex: 1; min-width: 0; }
.mf.market-feed .mf-mover { position: relative; }
.mf.market-feed a.mf-row-link::after { content: ""; position: absolute; inset: 0; }
.mf.market-feed .mf-mover a.mf-price, .mf.market-feed .mf-mover a.mf-button { position: relative; z-index: 1; }
.mf.market-feed .mf-mover:hover .mf-mover-label { color: var(--accent-text, var(--accent)); }
.mf.market-feed .mf-mover:has(a.mf-row-link:focus-visible) { outline: 2px solid var(--focus); outline-offset: 2px; border-radius: 6px; }
.mf.market-feed .mf-mover a.mf-row-link:focus-visible { outline: 0; }
.mf.market-feed .mf-mover-label { font-size: .875rem; line-height: 1.4; font-weight: 500; color: var(--ink); overflow-wrap: anywhere; }
.mf.market-feed .mf-mover-title { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-family: var(--serif-text, var(--serif)); font-size: .75rem; line-height: 1.45; color: color-mix(in srgb, var(--ink) 65%, var(--paper)); }
.mf.market-feed .mf-mover .mf-kicker { margin-top: 2px; font-size: .5625rem; }
.mf-mover-chart { flex: 0 0 84px; }
.mf-mover-chart .mf-spark { height: 30px; }
.mf-mover-chart.is-up .mf-line, .mf-mover-chart.is-up .mf-dot { stroke: var(--mf-up); }
.mf-mover-chart.is-down .mf-line, .mf-mover-chart.is-down .mf-dot { stroke: var(--mf-down); }
.mf-mover-num { flex: 0 0 5.6rem; text-align: end; }
.mf.market-feed .mf-mover-pct { font-family: var(--mf-mono); font-size: .875rem; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--ink); }
.mf.market-feed .mf-mover-cta { flex: 0 0 100%; display: flex; justify-content: flex-end; }
@container (max-width: 330px) { .mf-mover-chart { display: none; } }
@container (min-width: 520px) { .mf.market-feed .mf-mover { flex-wrap: nowrap; } .mf.market-feed .mf-mover-cta { flex: 0 0 auto; } }

/* Market and price links (also in the plain table layout and the live search tool): quiet until hovered, clear on focus. */
.mf-change, .market-feed a.mf-price, .mf-mover-pct { direction: ltr; unicode-bidi: isolate; }
.sc-strip-pct { direction: ltr; unicode-bidi: isolate; }
[dir="rtl"] .mf.market-feed .mf-table tr > * { padding: 8px 10px 8px 0; text-align: left; }
[dir="rtl"] .mf.market-feed .mf-table tr > th:first-child { padding-right: 16px; text-align: right; }
[dir="rtl"] .mf.market-feed .mf-table thead tr > th:first-child { padding-right: 0; }
[dir="rtl"] .mf-key { left: auto; right: 0; }
/* Market names come from the exchanges in English: inside a right-to-left page they keep their own reading order and stay on the page's side. */
[dir="rtl"] .mf.market-feed :is(.mf-mover-title, .mf-mover-label, .mf-card h3, .mf-table tbody th), [dir="rtl"] .sc-strip-title, [dir="rtl"] .sc-strip-label { unicode-bidi: plaintext; text-align: right; }
@media (max-width: 767px) {
  .mf.market-feed .mf-terms summary { min-height: 44px; display: inline-flex; align-items: center; }
  .mf.market-feed a.mf-price { min-height: 44px; display: inline-flex; align-items: center; justify-content: flex-end; }
  .mf.market-feed .mf-table tbody th a.mf-link { display: inline-block; padding-block: 13px; }
  .mf.market-feed a.mf-button.mf-button--row[data-partner] { min-height: 44px; }
  .lo td a.mf-link, .lo th a.mf-link { display: inline-flex; align-items: center; min-height: 44px; }
}
@media print {
  .sticky-cta, .menu-toggle, .search-form, .primary-nav, .sc-deco, .ed-toc, .article-sidebar, .newsletter, .language-switcher, .sc-copy, .copy-code { display: none !important; }
  body, body.theme-dark, body[class*="skin-"] { background: #fff !important; color: #000 !important; --ink: #000; --ink-2: #222; --muted: #444; --paper: #fff; --paper-2: #fff; --line: #bbb; --accent-text: #000; }
  .sc-hero { height: auto !important; aspect-ratio: auto !important; } .sc-hero-art { position: static !important; max-height: 220px; } .sc-hero-mark { position: static !important; } .sc-wordmark { color: #000 !important; filter: none !important; font-size: 2rem !important; }
  .sc-hero::before, .sc-hero::after { display: none; }
  .sc-main { display: block !important; } details > *:not(summary) { display: block !important; }
  a[href^="/go/"]::after { content: ""; } .sc-btn, .prose a.button { border: 1px solid #000; background: none !important; color: #000 !important; box-shadow: none !important; }
}
.pages-editorial .article-header:has(.ed-tile) { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 18px; align-items: center; }
.pages-editorial .article-header:has(.ed-tile) > * { grid-column: 1 / -1; }
.pages-editorial .article-header:has(.ed-tile) > .ed-tile { grid-column: 1; margin: 0; }
.pages-editorial .article-header:has(.ed-tile) > .article-title { grid-column: 2; margin: 0; }
.pages-editorial .article-header:has(.ed-tile) > .breadcrumbs { margin-bottom: 0; }
/* Platform review: the sign-up panel (partner button, code and offer, copy control, terms) beside the title on wide screens, under it on phones. */
.pages-editorial .ed-hero-cta { --sc-ui: var(--ed-ui); --sc-gold: var(--ed-gold); --sc-mono: var(--ed-mono); --sc-ink-90: var(--ink); --sc-ink-80: var(--ed-ink-85); --sc-ink-70: var(--ed-ink-70); max-width: 26rem; margin-top: 22px; }
.pages-editorial .ed-hero-cta .sc-cta { grid-template-columns: minmax(0, 1fr); margin: 0; }
@media (min-width: 1024px) {
  .pages-editorial .article-header:has(.ed-hero-cta) { grid-template-columns: auto minmax(0, 1fr) 340px; }
  .pages-editorial .article-header:has(.ed-hero-cta) > * { grid-column: 1 / 3; }
  .pages-editorial .article-header:has(.ed-hero-cta) > .ed-tile { grid-column: 1; }
  .pages-editorial .article-header:has(.ed-hero-cta) > .article-title { grid-column: 2; }
  .pages-editorial .article-header:has(.ed-hero-cta) > .ed-hero-cta { grid-column: 3; grid-row: 2 / span 3; align-self: end; margin: 0 0 4px 22px; padding: 20px; border: 1px solid var(--ed-hair); border-radius: 12px; background: var(--ed-card); }
}
.pages-editorial .ed-hero-cta .sc-offer > span[aria-hidden] { display: none; }
.pages-editorial .ed-hero-cta .sc-offer-code, .pages-editorial .ed-hero-cta .sc-offer-text { display: block; }
.pages-editorial .ed-hero-cta .sc-offer-text { margin-top: 4px; font-size: .875rem; font-weight: 600; color: var(--ink); }
.pages-editorial .ed-hero-cta .sc-copy { margin-inline-start: 0; }
.pages-editorial .ed-hero-cta .sc-offer-note { margin-inline-end: 8px; }
/* Ranked platforms (PageDesign::dress builds the cards from the ranking table's rows) */
.pages-editorial .prose ol.ed-ranked { list-style: none; max-width: none; margin: 1.6em 0 .8em; padding: 0; display: grid; gap: 14px; counter-reset: none; }
.pages-editorial .prose .ed-rank { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px 14px; align-items: start; margin: 0; padding: 18px; border: 1px solid var(--ed-hair); border-radius: 14px; background: var(--ed-card); transition: border-color .2s ease; }
.pages-editorial .prose .ed-rank::before { content: none; }
.pages-editorial .prose .ed-rank:hover { border-color: color-mix(in srgb, var(--accent) 40%, transparent); }
.pages-editorial .ed-rank-n { grid-column: 1; grid-row: 1; align-self: center; font-family: var(--ed-mono); font-size: 1.5rem; line-height: 1; font-weight: 600; letter-spacing: -.02em; color: var(--ed-gold); font-variant-numeric: tabular-nums; }
.pages-editorial .ed-rank-tile { grid-column: 2; grid-row: 1; width: 44px; height: 44px; border-radius: 10px; font-family: var(--ed-ui); font-size: 1.25rem; }
.pages-editorial .ed-rank-body { grid-column: 1 / -1; min-width: 0; }
.pages-editorial .prose .ed-rank-name { margin: 0; max-width: none; font-family: var(--ed-ui); font-size: 1.375rem; line-height: 1.2; font-weight: 700; letter-spacing: -.02em; }
.pages-editorial .prose .ed-rank-name a { color: var(--ink); text-decoration: none; }
.pages-editorial .prose .ed-rank-name a:hover { color: var(--ed-gold); }
.pages-editorial .prose .ed-rank-facts { display: grid; gap: 10px 24px; margin: 12px 0 0; font-family: var(--ed-ui); font-size: .875rem; line-height: 1.5; }
.pages-editorial .prose .ed-rank-facts dt { margin: 0 0 2px; font-size: .625rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.pages-editorial .prose .ed-rank-facts dd { margin: 0; color: var(--ed-ink-85); }
.pages-editorial .prose .ed-rank-facts dd.ed-rank-offer { font-weight: 600; color: var(--ink); }
.pages-editorial .prose .ed-rank-cta { grid-column: 1 / -1; margin: 0; max-width: none; }
.pages-editorial .prose .ed-rank-cta a.button { display: flex; justify-content: center; align-items: center; min-height: 48px; margin: 0; padding: 10px 22px; font-size: 1rem; white-space: nowrap; }
.pages-editorial .prose .ed-rank-cta a.button::after { content: "→"; margin-inline-start: 8px; font-weight: 400; }
[dir="rtl"] .pages-editorial .prose .ed-rank-cta a.button::after { content: "←"; }
.pages-editorial .prose .ed-rank--unranked { background: none; border-style: dashed; }
.pages-editorial .prose .ed-rank--unranked .ed-rank-n { color: var(--muted); }
.pages-editorial .ed-rank--unranked .ed-rank-tile { --op: color-mix(in srgb, var(--ink) 14%, var(--paper)); --op-ink: var(--ed-ink-85); }
@media (min-width: 768px) {
  .pages-editorial .prose .ed-rank { grid-template-columns: 3.25rem 56px minmax(0, 1fr) auto; gap: 8px 20px; align-items: center; padding: 24px 28px; }
  .pages-editorial .ed-rank-n { font-size: 2.25rem; }
  .pages-editorial .ed-rank-tile { width: 56px; height: 56px; border-radius: 12px; font-size: 1.5rem; }
  .pages-editorial .ed-rank-body { grid-column: 3; grid-row: 1; }
  .pages-editorial .prose .ed-rank-cta { grid-column: 4; grid-row: 1; }
  .pages-editorial .prose .ed-rank-name { font-size: 1.625rem; }
  .pages-editorial .prose .ed-rank-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
/* Link cards (a list of sentence-long links: comparisons, picks) */
.pages-editorial .prose ul.ed-linkcards { list-style: none; max-width: none; margin: 1.6em 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: 14px; }
.pages-editorial .prose ul.ed-linkcards li { margin: 0; padding: 0; display: flex; }
.pages-editorial .prose ul.ed-linkcards li::before { content: none; }
.pages-editorial .prose ul.ed-linkcards a { flex: 1; display: flex; flex-direction: column; gap: 8px; padding: 18px 20px; border: 1px solid var(--ed-hair); border-radius: 12px; background: var(--ed-card); font-family: var(--serif); font-size: .875rem; line-height: 1.55; color: var(--ed-ink-70); text-decoration: none; transition: border-color .2s ease, transform .2s ease; }
.pages-editorial .prose ul.ed-linkcards a:hover { border-color: color-mix(in srgb, var(--accent) 45%, transparent); transform: translateY(-2px); }
.pages-editorial .prose ul.ed-linkcards a strong { display: block; font-family: var(--ed-ui); font-size: 1.0625rem; line-height: 1.3; font-weight: 700; letter-spacing: -.01em; color: var(--ink); }
.pages-editorial .prose ul.ed-linkcards a::after { content: "→"; margin-top: auto; padding-top: 4px; font-family: var(--ed-ui); font-size: .875rem; font-weight: 600; color: var(--ed-gold); }
[dir="rtl"] .pages-editorial .prose ul.ed-linkcards a::after { content: "←"; }
/* "Where to go next": a list of short links as rows with an arrow */
.pages-editorial .prose ul.ed-linklist { list-style: none; margin: 1.2em 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 10px; }
.pages-editorial .prose ul.ed-linklist li { margin: 0; padding: 0; }
.pages-editorial .prose ul.ed-linklist li::before { content: none; }
.pages-editorial .prose ul.ed-linklist a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; padding: 10px 16px; border: 1px solid var(--ed-hair); border-radius: 8px; background: var(--ed-card); font-family: var(--ed-ui); font-size: .875rem; font-weight: 500; color: var(--ink); text-decoration: none; transition: border-color .2s ease, color .2s ease; }
.pages-editorial .prose ul.ed-linklist a::after { content: "→"; color: var(--ed-gold); }
[dir="rtl"] .pages-editorial .prose ul.ed-linklist a::after { content: "←"; }
.pages-editorial .prose ul.ed-linklist a:hover { border-color: color-mix(in srgb, var(--accent) 45%, transparent); color: var(--ed-gold); }
/* Change log: dated entries on a line */
.pages-editorial .prose ol.ed-timeline { list-style: none; margin: 2em 0; padding: 0; counter-reset: none; }
.pages-editorial .prose ol.ed-timeline > li { position: relative; margin: 0; padding: 0 0 28px 24px; border-inline-start: 1px solid var(--ed-hair); padding-inline: 24px 0; }
.pages-editorial .prose ol.ed-timeline > li::before { content: ""; position: absolute; top: 5px; inset-inline-start: -5px; width: 9px; height: 9px; border-radius: 50%; background: var(--ed-gold); box-shadow: 0 0 0 4px var(--paper); counter-increment: none; }
.pages-editorial .prose ol.ed-timeline > li:last-child { padding-bottom: 0; }
.pages-editorial .prose .ed-timeline .ed-when { font-family: var(--ed-mono); font-size: .6875rem; letter-spacing: .04em; color: var(--muted); }
.pages-editorial .prose .ed-timeline p.label { display: inline-block; margin: 0 0 0 10px; padding: 1px 8px; border: 1px solid var(--ed-hair); border-radius: 999px; font-size: .5625rem; color: var(--ed-ink-70); vertical-align: 1px; }
.pages-editorial .prose .ed-timeline h2, .pages-editorial .prose .ed-timeline h3 { margin: 8px 0 6px; padding: 0; border: 0; font-family: var(--ed-ui); font-size: 1.125rem; line-height: 1.35; font-weight: 600; letter-spacing: -.01em; }
.pages-editorial .prose .ed-timeline h2::after { content: none; }
.pages-editorial .prose .ed-timeline p { margin: 0 0 8px; font-size: .9375rem; line-height: 1.65; color: var(--ed-ink-70); }
.pages-editorial .prose .ed-timeline a.ed-more { font-family: var(--ed-ui); font-size: .6875rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; }
.pages-editorial .prose .ed-timeline a.ed-more::after { content: " →"; }
[dir="rtl"] .pages-editorial .prose .ed-timeline a.ed-more::after { content: " ←"; }
/* Listing pages: search box (posts to the site's /search) and a row of partner buttons in the intro */
.pages-editorial .ed-search, .pages-editorial .search-big { display: flex; gap: 8px; max-width: 34rem; margin-top: 22px; }
.pages-editorial .ed-search input, .pages-editorial .search-big input { flex: 1; min-width: 0; min-height: 44px; padding: 8px 16px; border: 1px solid color-mix(in srgb, var(--ink) 45%, transparent); border-radius: 999px; background: var(--ed-card); color: var(--ink); font-family: var(--ed-ui); font-size: .9375rem; }
.pages-editorial .ed-search input::placeholder, .pages-editorial .search-big input::placeholder { color: var(--muted); opacity: 1; }
.pages-editorial .ed-search button, .pages-editorial .search-big button { min-height: 44px; padding: 8px 20px; border: 0; border-radius: 999px; background: var(--accent); color: var(--on-accent, #fff); font-family: var(--ed-ui); font-size: .875rem; font-weight: 600; cursor: pointer; }
.pages-editorial :is(.ed-search, .search-big) :is(input, button):focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
.pages-editorial .prose p.ed-cta-row { display: flex; flex-wrap: wrap; gap: 12px; margin: 1.4em 0; }
.pages-editorial .prose p.ed-cta-row a.button { margin: 0; }
/* Tables: quiet zebra rows; tables with many columns share the width evenly instead of scrolling sideways */
.pages-editorial .prose table:not(.mf-table) tbody tr:nth-child(even) > * { background: color-mix(in srgb, var(--ink) 3%, transparent); }
.pages-editorial .prose table:not(.mf-table) tbody tr:last-child > * { border-bottom: 0; }
@media (min-width: 768px) {
  .pages-editorial .prose table.ed-fit { display: table; table-layout: fixed; width: 100%; font-size: .8125rem; }
  .pages-editorial .prose table.ed-fit th, .pages-editorial .prose table.ed-fit td { padding: 10px 10px; overflow-wrap: anywhere; white-space: normal; }
  .pages-editorial .prose table.ed-fit a.button { display: flex; justify-content: center; min-height: 40px; margin: 0; padding: 6px 8px; font-size: .75rem; line-height: 1.25; text-align: center; white-space: normal; }
}
/* FAQ accordion on the designed pages: the question row ends in a round plus that turns into a minus */
:is(.pages-editorial, .home-showcase) .faq summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 0; list-style: none; font-size: 1rem; line-height: 1.4; font-weight: 600; transition: color .15s ease; }
:is(.pages-editorial, .home-showcase) .faq summary::-webkit-details-marker { display: none; }
:is(.pages-editorial, .home-showcase) .faq summary::after { content: "+"; flex: none; display: grid; place-items: center; width: 28px; height: 28px; border: 1px solid color-mix(in srgb, var(--ink) 22%, transparent); border-radius: 50%; font-family: var(--mono, monospace); font-size: 1rem; line-height: 1; font-weight: 400; color: var(--accent-text, var(--accent)); transition: background-color .15s ease, border-color .15s ease; }
:is(.pages-editorial, .home-showcase) .faq details[open] > summary::after { content: "−"; border-color: color-mix(in srgb, var(--accent) 60%, transparent); background: color-mix(in srgb, var(--accent) 12%, transparent); }
:is(.pages-editorial, .home-showcase) .faq summary:hover { color: var(--accent-text, var(--accent)); }
:is(.pages-editorial, .home-showcase) .faq .faq-answer { max-width: 44rem; padding: 0 0 18px; padding-inline-end: 44px; font-family: var(--serif); font-size: 1rem; line-height: 1.7; color: color-mix(in srgb, var(--ink) 76%, var(--paper)); }
:is(.pages-editorial, .home-showcase) .faq .faq-answer > :first-child { margin-top: 0; }
:is(.pages-editorial, .home-showcase) .faq .faq-answer > :last-child { margin-bottom: 0; }
/* Empty states (no results, nothing here yet) and the page-not-found page */
.pages-editorial .not-found { padding-block: 56px 72px; }
.pages-editorial .not-found h1 { font-family: var(--serif); font-size: clamp(2.25rem, 6vw, 3.5rem); line-height: 1.05; letter-spacing: -.025em; }
.pages-editorial .not-found > p { max-width: 40rem; font-family: var(--serif); font-size: 1.125rem; line-height: 1.6; color: var(--ed-ink-70); }
.pages-editorial .empty-state { max-width: 40rem; margin: 32px 0; padding: 36px 24px; border: 1px dashed color-mix(in srgb, var(--ink) 22%, transparent); border-radius: 12px; font-family: var(--ed-ui); font-size: .9375rem; text-align: center; color: var(--muted); }
/* Opening lines of a review (PageDesign::dress): offer pill, ticks, small print */
.pages-editorial .prose p.ed-bonus { display: inline-block; margin: 0 0 1em; padding: 8px 14px; border: 1px solid color-mix(in srgb, var(--ed-gold) 40%, transparent); border-radius: 8px; background: color-mix(in srgb, var(--ed-gold) 10%, transparent); font-family: var(--ed-ui); font-size: .9375rem; line-height: 1.5; color: var(--ink); }
.pages-editorial .prose p.ed-bonus strong { color: var(--ed-gold); }
.pages-editorial .prose ul.ed-checks { list-style: none; display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 0 0 1em; padding: 0; font-family: var(--ed-ui); font-size: .8125rem; line-height: 1.5; color: var(--ed-ink-85); }
.pages-editorial .prose ul.ed-checks li { margin: 0; padding: 0; display: flex; gap: 7px; }
.pages-editorial .prose ul.ed-checks li::before { content: "✓"; position: static; width: auto; height: auto; background: none; color: var(--ed-gold); font-weight: 700; }
.pages-editorial .prose p.ed-meta, .pages-editorial .prose p.ed-fine { max-width: 44rem; font-family: var(--ed-ui); font-size: .8125rem; line-height: 1.6; color: var(--muted); }
.pages-editorial .prose p.ed-meta { margin-bottom: .6em; }
/* Tall pictures (phone screenshots, marked by PageDesign::dress) keep their shape at a readable height; the height is fixed, so nothing jumps when they load. */
.pages-editorial .prose img.ed-tall { width: auto; max-width: 100%; height: min(520px, 130vw); border-radius: 12px; }
