/* The editorial pages (N51): place guides, developer guides, the blog, and their admin
   editors. Patterns and why: update/BLOG_GUIDES_UI.md. Tokens only (both themes follow);
   logical properties only (RTL mirrors). The FAQ block lives in style.css (the project page
   has it too). */

/* ---------- page frame: the main column and the side column ---------- */
.ed-page { --ed-read: 68ch; }
.ed-hero { display: grid; gap: var(--space-4); margin-block: var(--space-3) var(--space-5); }
.ed-hero-t { max-width: 72ch; }
.ed-h1 { font-size: clamp(28px, 3.8vw, 42px); line-height: 1.2; margin-block: var(--space-2) var(--space-2); }
.ed-alt { margin: 0; }
.ed-tag { margin-block: var(--space-2) 0; }
.ed-meta { margin-block-start: var(--space-3); }
.ed-hero-img { margin: 0; }
.ed-hero-img img { inline-size: 100%; block-size: auto; aspect-ratio: 16 / 7; object-fit: cover; border-radius: var(--r-lg); background: var(--surface-2); }
.ed-layout { display: grid; gap: var(--space-6); align-items: start; }
.ed-main { min-width: 0; }
.ed-side { display: grid; gap: var(--space-4); min-width: 0; }
@media (min-width: 1000px) {
  .ed-layout { grid-template-columns: minmax(0, 1fr) 340px; }
  .ed-side { position: sticky; inset-block-start: calc(var(--nav-h) + var(--space-4)); }
}
.ed-wide { margin-block-start: var(--space-6); }

/* ---------- sections and prose ---------- */
.ed-sec { margin-block-start: var(--space-6); scroll-margin-block-start: calc(var(--nav-h) + var(--space-3)); }
.ed-sec:first-child, .ed-toc + .ed-sec { margin-block-start: var(--space-4); }
.ed-h2 { font-size: clamp(21px, 2.3vw, 26px); line-height: 1.3; margin: 0 0 var(--space-3); }
.ed-h2 a:hover { color: var(--jade); }
.ed-h3 { font-size: 18px; margin: var(--space-5) 0 var(--space-3); }
.ed-prose { max-width: var(--ed-read); font-size: 17.5px; line-height: 1.75; color: var(--ink); overflow-wrap: anywhere; }
[dir="rtl"] .ed-prose, .ed-prose[lang="ar"] { font-size: 18.5px; line-height: 1.95; text-align: start; }
.ed-prose > * + * { margin-block-start: var(--space-4); }
.ed-prose p { margin: 0; }
.ed-prose h2, .ed-prose h3, .ed-prose h4 { line-height: 1.35; margin-block: var(--space-6) var(--space-2); scroll-margin-block-start: calc(var(--nav-h) + var(--space-3)); }
.ed-prose h2 { font-size: 23px; } .ed-prose h3 { font-size: 20px; } .ed-prose h4 { font-size: 18px; }
.ed-prose ul, .ed-prose ol { padding-inline-start: 1.3em; margin-block: 0; }
.ed-prose li + li { margin-block-start: var(--space-2); }
.ed-prose blockquote { margin: 0; padding-inline-start: var(--space-4); border-inline-start: 3px solid var(--jade); color: var(--ink-2); }
.ed-prose hr { border: 0; border-block-start: 1px solid var(--line); margin-block: var(--space-6); }
.ed-prose a { color: var(--jade); text-decoration: underline; text-underline-offset: 3px; }
.ed-prose .fn-ref { font-size: .72em; line-height: 0; margin-inline-start: 1px; }
.ed-prose .fn-ref a { text-decoration: none; }
.ed-lang { margin-block-end: var(--space-2); }

/* ---------- pictures with their credit ---------- */
.ed-fig { margin: 0; }
.ed-fig img { inline-size: 100%; block-size: auto; border-radius: var(--r); background: var(--surface-2); }
.ed-fig figcaption { margin-block-start: var(--space-1); }
.ed-credit a { color: inherit; text-decoration: underline; }

/* ---------- table of contents ---------- */
.ed-toc { margin-block-end: var(--space-4); }
.ed-toc-f { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r); padding: var(--space-3) var(--space-4); }
.ed-toc-l { margin: var(--space-2) 0 0; padding-inline-start: 1.2em; display: grid; gap: var(--space-1); font-size: 15px; }
.ed-toc-l a { color: var(--ink-2); }
.ed-toc-l a:hover { color: var(--jade); }
.ed-toc-sub { margin-inline-start: var(--space-4); font-size: 14px; }

/* ---------- the infobox (key facts) ---------- */
.ed-box { display: grid; gap: var(--space-3); }
.ed-logo img { max-inline-size: 160px; block-size: auto; background: var(--surface); }
.ed-kv { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; margin: 0; font-size: 14.5px; }
.ed-kv dd + dt { margin-block-start: var(--space-3); }
.ed-kv dt { color: var(--ink-2); font-size: 13px; }
.ed-kv dd { margin: 0; font-weight: 600; min-width: 0; overflow-wrap: anywhere; }
.ed-cta { display: grid; gap: var(--space-2); }
.ed-cta .h4 { margin: 0; font-weight: 700; }

/* ---------- the timeline: an ordered list with a line ---------- */
.ed-tl { list-style: none; margin: 0; padding: 0; max-width: var(--ed-read); }
.ed-tl li { position: relative; padding-inline-start: var(--space-6); padding-block-end: var(--space-4); }
.ed-tl li::before { content: ""; position: absolute; inset-inline-start: 7px; inset-block: 10px 0; border-inline-start: 2px solid var(--line-2); }
.ed-tl li:last-child::before { display: none; }
.ed-tl li::after { content: ""; position: absolute; inset-inline-start: 2px; inset-block-start: 6px; inline-size: 12px; block-size: 12px; border-radius: 50%; background: var(--jade); box-shadow: 0 0 0 3px var(--jade-wash); }
.ed-tl-when { display: block; font-weight: 700; color: var(--jade); font-size: 14.5px; }
.ed-tl p { margin: var(--space-1) 0 0; }

/* ---------- cards and grids ---------- */
.edx-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(250px, 100%), 1fr)); gap: var(--space-4); }
.ed-card { display: flex; flex-direction: column; gap: var(--space-2); min-width: 0; }
.ed-card-link { color: inherit; transition: border-color .2s, box-shadow .2s; }
.ed-card-link:hover { border-color: var(--line-2); box-shadow: var(--sh-2); }
.ed-card-h { font-size: 17px; font-weight: 700; line-height: 1.35; margin: 0; }
.ed-card-h a:hover { color: var(--jade); }
.ed-card-img { margin: calc(-1 * clamp(18px, 2.4vw, 26px)) calc(-1 * clamp(18px, 2.4vw, 26px)) var(--space-2); }
.ed-card-img img { border-radius: var(--r-lg) var(--r-lg) 0 0; aspect-ratio: 16 / 9; object-fit: cover; }
.ed-card-img figcaption { padding-inline: clamp(18px, 2.4vw, 26px); }
.ed-chips { display: flex; flex-wrap: wrap; gap: var(--space-2); margin: 0; }
.dev-logo { max-block-size: 48px; inline-size: auto; }

/* ---------- how to get there, pros and cons, figures, sources ---------- */
.ed-access { list-style: none; margin: 0 0 var(--space-4); padding: 0; display: grid; gap: var(--space-2); }
.ed-access li { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.ed-pc { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); margin-block-end: var(--space-4); }
.ed-pc ul { margin: var(--space-2) 0 0; padding-inline-start: 1.2em; display: grid; gap: var(--space-1); }
.ed-pro { border-block-start: 3px solid var(--jade); }
.ed-con { border-block-start: 3px solid var(--ochre); }
.ed-figs { margin: 0 0 var(--space-3); padding-inline-start: 1.2em; display: grid; gap: var(--space-2); max-width: var(--ed-read); }
.ed-src { margin: 0; padding-inline-start: 1.6em; display: grid; gap: var(--space-2); overflow-wrap: anywhere; }
.ed-src li:target { background: var(--jade-wash); border-radius: var(--r-xs); }
.ed-credits { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-1); }
.ed-preview { margin-block-end: var(--space-3); }

/* ---------- share ---------- */
.ed-share { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); margin-block-start: var(--space-5); padding-block-start: var(--space-4); border-block-start: 1px solid var(--line); }

/* ---------- place guides: the hub by region ---------- */
.gd-hub { display: grid; gap: var(--space-6); }
.gd-region-h { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-2); margin-block-end: var(--space-3); }
.gd-region-h .ed-h2 { margin: 0; }
.gd-kids { list-style: none; margin: var(--space-1) 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-2); }
.gd-kids .tag:hover { border-color: var(--jade); color: var(--jade); }

/* ---------- the blog (2026-09-30: the look of Anthropic's news pages and our Discover) ----------
   Every post the same design: the cover or its art (discover.css .dv-art), category · age,
   title, summary. The title's link covers the whole card. Latin titles take the serif that
   Discover uses; Arabic keeps the site's face. */
:root { --bl-credit-bg: rgba(12, 14, 16, .66); --bl-credit-ink: #ffffff; }   /* a credit on a photo: the same in both themes */
.bl-cats { display: flex; gap: var(--space-2); margin-block: var(--space-4) var(--space-5); overflow-x: auto; scrollbar-width: none; padding-block-end: 2px; }
.bl-cats::-webkit-scrollbar { display: none; }
@media (min-width: 1000px) { .bl-cats { flex-wrap: wrap; overflow: visible; } }
.bl-chip { flex: none; display: inline-flex; align-items: center; min-block-size: 36px; padding-inline: 14px; border-radius: var(--r-pill);
  border: 1px solid var(--line); background: var(--surface); color: var(--ink-2); font-size: 14px; font-weight: 600; white-space: nowrap; }
.bl-chip:hover { border-color: var(--ink-3); color: var(--ink); }
.bl-chip.on { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.bl-tags { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; margin-block: var(--space-6) 0; }
.bl-tags .tag:hover { border-color: var(--jade); }
.bl-sec-h { font-size: 15px; font-weight: 700; letter-spacing: .02em; color: var(--ink-2); margin: var(--space-6) 0 var(--space-4);
  padding-block-start: var(--space-4); border-block-start: 1px solid var(--line); }

/* the card */
.bl-grid { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-6) var(--space-5);
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); }
.bl-card { position: relative; display: flex; flex-direction: column; gap: var(--space-3); min-width: 0; }
.bl-media { position: relative; margin: 0; border-radius: var(--r-lg); overflow: hidden; aspect-ratio: 16 / 9; background: var(--surface-2); }
.bl-media img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; transition: scale .3s; }
.bl-media .dv-art { block-size: 100%; aspect-ratio: auto; border-radius: 0; }
.bl-credit { position: absolute; z-index: 2; inset-block-end: 6px; inset-inline-start: 6px; max-inline-size: calc(100% - 12px);
  padding: 2px 8px; border-radius: var(--r-pill); background: var(--bl-credit-bg); color: var(--bl-credit-ink);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bl-credit a { position: relative; z-index: 3; color: inherit; }
.bl-card-t { display: flex; flex-direction: column; gap: var(--space-2); min-width: 0; }
.bl-card-t > * { margin: 0; }
.bl-kicker { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 13.5px; color: var(--ink-2); margin: 0; }
.bl-cat { font-weight: 700; color: var(--jade); }
a.bl-cat:hover { text-decoration: underline; }
.bl-title { font-size: 19px; line-height: 1.3; font-weight: 700; overflow-wrap: anywhere; }
.bl-link { color: inherit; }
.bl-link::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: var(--r-lg); }
.bl-link:focus-visible { outline: none; }
.bl-card:has(.bl-link:focus-visible) { outline: 3px solid var(--jade); outline-offset: 4px; border-radius: var(--r-lg); }
.bl-card:hover .bl-title { color: var(--jade); }
@media (prefers-reduced-motion: no-preference) { .bl-card:hover .bl-media img { scale: 1.03; } }
.bl-ex { color: var(--ink-2); font-size: 15px; line-height: 1.6; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden; }
.bl-foot { font-size: 13px; color: var(--ink-3); display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
:root:not([lang|="ar"]) .bl-title, :root:not([lang|="ar"]) .bl-h1 {
  font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif; letter-spacing: -.01em; }
.bl-title[lang="ar"], .bl-h1[lang="ar"] { font-family: var(--font); letter-spacing: 0; }

/* the lead post: large, the picture beside the words on a wide screen */
.bl-lead { gap: var(--space-4); margin-block-end: var(--space-2); }
.bl-lead .bl-title { font-size: clamp(26px, 3.4vw, 40px); line-height: 1.15; }
.bl-lead .bl-ex { font-size: 16.5px; -webkit-line-clamp: 4; line-clamp: 4; }
.bl-lead .bl-media { border-radius: var(--r-xl); }
@media (min-width: 900px) {
  .bl-lead { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); align-items: center; gap: var(--space-6); }
  .bl-lead .bl-media { aspect-ratio: 3 / 2; }
}
.bl-pager { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--space-2); margin-block-start: var(--space-6); }
.bl-pg { display: inline-grid; place-items: center; min-inline-size: 40px; min-block-size: 40px; border-radius: var(--r-pill); color: var(--ink-2); font-weight: 600; }
a.bl-pg:hover { background: var(--surface); color: var(--ink); }
.bl-pg.on { background: var(--ink); color: var(--paper); }

/* the article: a centred header and reading column */
.bl-head { max-inline-size: 760px; margin-inline: auto; display: grid; gap: var(--space-3); }
.bl-head > * { margin: 0; }
.bl-h1 { font-size: clamp(32px, 5vw, 54px); line-height: 1.1; font-weight: 700; overflow-wrap: anywhere; }
[lang|="ar"] .bl-h1 { line-height: 1.3; }
.bl-dek { font-size: clamp(18px, 2vw, 21px); line-height: 1.55; color: var(--ink-2); }
.bl-byline { display: flex; align-items: center; gap: var(--space-3); padding-block: var(--space-3); border-block: 1px solid var(--line); margin-block-start: var(--space-2); }
.bl-avatar { flex: none; display: grid; place-items: center; inline-size: 40px; block-size: 40px; border-radius: 50%; background: var(--jade-wash); color: var(--jade); font-weight: 700; }
.bl-by-t { display: grid; gap: 2px; min-width: 0; font-size: 14px; }
.bl-by-n { font-weight: 600; }
.bl-by-m { color: var(--ink-2); }
.bl-by-share { margin-inline-start: auto; }
.bl-lang { margin-block-start: var(--space-2); }
.bl-hero { max-inline-size: 1120px; margin: var(--space-5) auto var(--space-6); }
.bl-hero img { aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--r-xl); }
.bl-hero-art .dv-art { aspect-ratio: 21 / 9; }
@media (max-width: 640px) { .bl-hero-art .dv-art { aspect-ratio: 16 / 9; } .bl-hero img, .bl-hero-art .dv-art { border-radius: var(--r-lg); } }
.bl-layout { display: grid; gap: var(--space-5); justify-content: center; grid-template-columns: minmax(0, var(--ed-read)); }
.bl-main { min-width: 0; }
@media (min-width: 1100px) {
  .bl-layout.has-toc { grid-template-columns: 220px minmax(0, var(--ed-read)) 220px; column-gap: var(--space-6); }
  .bl-toc-col { position: sticky; inset-block-start: calc(var(--nav-h) + var(--space-4)); }
  .bl-toc-col .ed-toc-f { background: none; border: 0; padding: 0; }
  .bl-toc-col .ed-toc-l { font-size: 14px; padding-inline-start: 0; list-style: none; border-inline-start: 1px solid var(--line); }
  .bl-toc-col .ed-toc-l li { padding-inline-start: var(--space-3); }
}
.bl-body { font-size: 18px; line-height: 1.78; }
[dir="rtl"] .bl-body, .bl-body[lang="ar"] { font-size: 19px; line-height: 2; }
.bl-body > p:first-child { font-size: 1.08em; }
.bl-fig { margin-block: var(--space-6); }
.bl-fig img { border-radius: var(--r); }
.bl-fig figcaption { font-size: 14px; line-height: 1.5; color: var(--ink-2); margin-block-start: var(--space-2); }
.bl-body blockquote { font-size: 1.1em; }
.bl-article .ed-share { margin-block-start: var(--space-5); }
.bl-next { max-inline-size: 1120px; margin: var(--space-6) auto 0; }
.ed-fig-missing { color: var(--ink-3); border: 1px dashed var(--line-2); border-radius: var(--r-xs); padding: var(--space-2); }

/* ---------- the admin editors ---------- */
.ed-edit-grid { display: grid; gap: var(--space-5); align-items: start; }
@media (min-width: 1200px) {
  .ed-edit-grid { grid-template-columns: minmax(0, 1fr) minmax(300px, 40%); }
  .ed-live { position: sticky; inset-block-start: calc(var(--nav-h) + var(--space-4)); max-block-size: calc(100vh - var(--nav-h) - 32px); overflow: auto; }
}
.ed-live .ed-prose { font-size: 16px; }
.ed-list { display: grid; gap: var(--space-3); }
.ed-rows { display: grid; gap: var(--space-3); }
.ed-row { display: grid; gap: var(--space-3); padding: var(--space-4); }
.ed-row-acts { flex-wrap: wrap; }
.ed-img-now { display: flex; align-items: center; gap: var(--space-3); min-block-size: 40px; }
.ed-img-now img { border-radius: var(--r-xs); object-fit: cover; }
.ed-adm-list { list-style: none; margin: 0; padding: 0; }
.ed-adm-list > li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-2) var(--space-4);
  padding: var(--space-3) var(--panel-pad-i); border-block-start: 1px solid var(--line); }
.ed-adm-list > li:first-child { border-block-start: 0; }
.ed-adm-list > li > span:first-child { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.ed-adm-list > li.ed-depth-1 { padding-inline-start: calc(var(--panel-pad-i) + var(--space-5)); }
.ed-adm-list > li.ed-depth-2 { padding-inline-start: calc(var(--panel-pad-i) + var(--space-6) + var(--space-4)); }
.ed-auto { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-2); }
.ed-auto li { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); justify-content: space-between; }
.ed-recent { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-2); }
.ed-recent li { display: flex; align-items: center; gap: var(--space-2); }
.ed-faq { border-block-start: 1px solid var(--line); padding-block: var(--space-2); }
/* a list item in the other language (dir set on it) keeps its bullet inside the box */
.ed-figs li[dir], .ed-pc li[dir] { list-style-position: inside; }
/* the developer guide: key facts before the text on a phone (like an encyclopedia), beside it on a wide screen */
@media (min-width: 1000px) { .ed-side-first > .ed-side { grid-column: 2; grid-row: 1; } .ed-side-first > .ed-main { grid-column: 1; grid-row: 1; } }

/* ---------- the blog's editor (Admin → Blog, public/assets/blog-editor.js) ---------- */
.bp-form { display: grid; gap: var(--space-4); }
.bp-form > * { margin: 0; min-width: 0; }
.bp-langs { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); border-block-end: 1px solid var(--line); }
.bp-lang-t { display: inline-flex; align-items: center; gap: var(--space-2); min-block-size: 44px; padding-inline: var(--space-4); border: 0; background: none;
  color: var(--ink-2); font: inherit; font-weight: 600; border-block-end: 2px solid transparent; margin-block-end: -1px; cursor: pointer; }
.bp-lang-t[aria-selected="true"] { color: var(--ink); border-block-end-color: var(--jade); }
.bp-dot { inline-size: 8px; block-size: 8px; border-radius: 50%; border: 1.5px solid var(--ink-3); }
.bp-dot.on { background: var(--jade); border-color: var(--jade); }
.bp-langs-h { margin: 0; margin-inline-start: auto; }
.bp-pane { display: grid; gap: var(--space-4); }
.bp-pane > * { margin: 0; }
.bp-title-in { font-size: 20px; font-weight: 700; }
.bp-view { display: inline-flex; gap: 2px; padding: 3px; border-radius: var(--r-pill); background: var(--surface-2); margin-block-end: var(--space-3); }
.bp-view .seg-b { border: 0; background: none; color: var(--ink-2); font: inherit; font-size: 14px; font-weight: 600; padding: 6px 16px; border-radius: var(--r-pill); cursor: pointer; min-block-size: 36px; }
.bp-view .seg-b.on { background: var(--surface); color: var(--ink); box-shadow: var(--sh-1); }
.bp-split { display: grid; gap: var(--space-4); }
.bp-src { display: grid; gap: var(--space-2); min-width: 0; }
.bp-src .lbl { margin: 0; }
.bp-write[data-view="write"] .bp-prev { display: none; }
.bp-write[data-view="preview"] .bp-src { display: none; }
.bp-prev { min-width: 0; border: 1px solid var(--line); border-radius: var(--r); padding: var(--space-4); background: var(--surface); overflow: auto; }
.bp-prev .eyebrow { margin: 0 0 var(--space-3); }
.bp-prev .bl-body { font-size: 16px; line-height: 1.7; }
.bp-prev .bl-body[lang="ar"] { font-size: 17px; line-height: 1.9; }
@media (min-width: 1200px) {
  .bp-view { display: none; }
  .bp-split { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
  .bp-write[data-view] .bp-prev, .bp-write[data-view] .bp-src { display: grid; }
  .bp-write[data-view] .bp-prev { display: block; position: sticky; inset-block-start: calc(var(--nav-h) + var(--space-3)); max-block-size: calc(100vh - var(--nav-h) - 32px); }
}
.bp-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 2px; padding: 4px; border: 1px solid var(--line); border-block-end: 0;
  border-radius: var(--r-sm) var(--r-sm) 0 0; background: var(--surface-2); }
.bp-tool { display: inline-grid; place-items: center; inline-size: 36px; block-size: 36px; border: 0; border-radius: var(--r-xs); background: none; color: var(--ink-2); cursor: pointer; }
.bp-tool:hover, .bp-tool:focus-visible { background: var(--surface); color: var(--ink); }
.bp-tools-end { margin-inline-start: auto; padding-inline: var(--space-2); }
@media (max-width: 640px) { .bp-tools-end { display: none; } }
.bp-body-in { border-start-start-radius: 0; border-start-end-radius: 0; min-block-size: 420px; font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, var(--font); font-size: 15px; line-height: 1.7; resize: vertical; }
.bp-body-in[lang="ar"] { font-family: var(--font); font-size: 16.5px; }
.bp-body-in.bp-drop { outline: 3px dashed var(--jade); outline-offset: -3px; }
.bp-stats { margin: 0; min-block-size: 1.4em; }
.bp-url { display: inline-block; margin-inline-start: var(--space-1); color: var(--ink-2); }
.bp-cover-row { display: grid; gap: var(--space-4); align-items: start; }
@media (min-width: 700px) { .bp-cover-row { grid-template-columns: 280px minmax(0, 1fr); } }
.bp-cover-now img, .bp-cover-now .dv-art { display: block; inline-size: 100%; block-size: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--r); }
.bp-cover-t { display: grid; gap: var(--space-3); }
.bp-cover-t > * { margin: 0; }
.bp-seo-prev { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); }
.bp-serp { display: grid; gap: 4px; }
.bp-serp p, .bp-og p { margin: 0; }
.bp-serp-t { color: var(--jade); font-size: 18px; line-height: 1.3; }
.bp-og { padding: 0; overflow: hidden; }
.bp-og-img { aspect-ratio: 1200 / 630; background: var(--surface-2); }
.bp-og-img img, .bp-og-img .dv-art { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; border-radius: 0; aspect-ratio: auto; }
.bp-og-t { display: grid; gap: 4px; padding: var(--space-3); }
.bp-og-h { font-weight: 700; }
.bp-imgbox { max-width: min(520px, calc(100vw - 32px)); }
.bp-imgbox form { gap: var(--space-3); }
.bp-img-thumb img { display: block; inline-size: 100%; block-size: auto; max-block-size: 220px; object-fit: contain; border-radius: var(--r-sm); background: var(--surface-2); }
.bp-kept { margin-inline-start: auto; }
.bp-pane[hidden], .bp-form [hidden], .bp-imgbox [hidden] { display: none; }
