/* ChessDB.cz – nový vzhled v2 · Články (Claude Design „ChessDB Clanky", 25. 10. 2026)
   Výpis /blog, článek /clanky/<slug>/ a okno „Podpoř autora". Barvy a písma z v2-base.css. */


/* ── Výpis ── */
.v2b-main { max-width: 1248px; margin: 0 auto; padding: 56px 24px 80px; box-sizing: border-box; }
.v2b-h1 { margin: 0; font-size: 52px; line-height: 1.1; }
.v2b-sub { margin: 10px 0 0; font: 500 17px var(--v2-man); color: var(--v2-m); }
.v2b-lead { margin-top: 36px; display: grid; grid-template-columns: 640px minmax(0, 1fr); background: var(--v2-card); border: 1px solid var(--v2-b); border-radius: 18px; overflow: hidden; color: var(--v2-t) !important; text-decoration: none !important; transition: border-color .14s ease; }
.v2b-lead:hover { border-color: rgba(255,255,255,.16); }
.v2b-lead__img, .v2b-card__img { background: repeating-linear-gradient(45deg, #2A3648 0 10px, #253042 10px 20px); overflow: hidden; }
.v2b-lead__img { height: 380px; }
.v2b-lead__img img, .v2b-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.v2b-lead__body { padding: 36px; display: flex; flex-direction: column; min-width: 0; }
.v2b-meta { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.v2b-cat { height: 26px; padding: 0 10px; border-radius: 8px; background: rgba(242,210,60,.12); color: var(--v2-acc); font: 800 12px var(--v2-man); display: inline-flex; align-items: center; white-space: nowrap; }
.v2b-date { font: 600 13px var(--v2-man); color: var(--v2-m); white-space: nowrap; }
.v2b-lead__t { margin: 16px 0 0; font: 600 30px/1.25 var(--v2-pop); letter-spacing: -.02em; color: var(--v2-t); text-wrap: pretty; }
.v2b-lead__p { margin: 12px 0 0; font: 500 16px/1.6 var(--v2-man); color: var(--v2-t2); display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.v2b-lead__ft { margin-top: auto; padding-top: 20px; display: flex; align-items: center; gap: 10px; }
.v2b-av { width: 36px; height: 36px; flex: none; border-radius: 50%; background: #334155; color: var(--v2-t); font: 600 13px var(--v2-pop); display: inline-flex; align-items: center; justify-content: center; }
img.v2b-av { display: block; object-fit: cover; padding: 0; }   /* fotka autora místo iniciál */
.v2b-au { font: 700 14px var(--v2-man); color: var(--v2-t); }
.v2b-read { margin-left: auto; height: 40px; padding: 0 18px; border-radius: 999px; background: var(--v2-acc); color: var(--v2-on); font: 800 14px var(--v2-man); display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; transition: background .14s ease; }
.v2b-read .v2i { font-size: 16px; }
.v2b-lead:hover .v2b-read { background: var(--v2-acc-h); }
.v2b-lbl { margin-top: 40px; font: 800 12px var(--v2-man); letter-spacing: 1.2px; color: var(--v2-m); }
.v2b-grid { margin-top: 14px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.v2b-card { display: flex; flex-direction: column; background: var(--v2-card); border: 1px solid var(--v2-b); border-radius: 18px; overflow: hidden; color: var(--v2-t) !important; text-decoration: none !important; transition: border-color .14s ease; }
.v2b-card:hover { border-color: rgba(255,255,255,.16); }
.v2b-card__img { height: 200px; background-size: auto; background-image: repeating-linear-gradient(45deg, #2A3648 0 8px, #253042 8px 16px); }
.v2b-card__b { padding: 16px; }
.v2b-card__m { font: 600 12.5px var(--v2-man); color: var(--v2-m); }
.v2b-card__t { margin-top: 6px; font: 600 17px/1.35 var(--v2-pop); color: var(--v2-t2); text-wrap: pretty; transition: color .14s ease; }
.v2b-card:hover .v2b-card__t { color: var(--v2-t); }
.v2b-card.is-new { animation: v2bIn .3s ease both; }
@keyframes v2bIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.v2b-more { margin-top: 28px; display: flex; flex-direction: column; align-items: center; gap: 8px; }
.v2b-morebtn { height: 48px; padding: 0 24px; border-radius: 13px; background: var(--v2-card); border: 1px solid var(--v2-b2); color: var(--v2-t); font: 800 14px var(--v2-man); cursor: pointer; transition: border-color .14s ease; }
.v2b-morebtn:hover { border-color: rgba(242,210,60,.45); }
.v2b-morebtn:disabled { opacity: .6; cursor: progress; }
.v2b-empty { margin-top: 36px; min-height: 180px; border-radius: 18px; background: var(--v2-card); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; }
.v2b-empty > .v2i { font-size: 34px; color: #475569; }
.v2b-empty b { font: 700 15px var(--v2-man); color: var(--v2-t); }
.v2b-err { font: 600 12.5px/1.45 var(--v2-man); color: #FCA5A5; text-align: center; }
.v2b-err[hidden] { display: none; }

/* ── Článek ── */
.v2b-art { max-width: 1248px; margin: 0 auto; padding: 40px 24px 80px; box-sizing: border-box; }
.v2b-back { display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 14px 0 10px; border-radius: 999px; background: rgba(30,41,59,.55); border: 1px solid rgba(255,255,255,.12); color: var(--v2-t2) !important; font: 700 14px var(--v2-man); text-decoration: none !important; transition: color .14s ease; }
.v2b-back .v2i { font-size: 16px; }
.v2b-back:hover { color: var(--v2-acc) !important; }
.v2b-head { max-width: 800px; margin: 32px auto 0; }
.v2b-title { margin: 14px 0 0; font-size: 48px; line-height: 1.15; text-wrap: pretty; }
.v2b-by { margin-top: 20px; display: flex; align-items: center; gap: 12px; }
.v2b-by .v2b-av { width: 40px; height: 40px; font-size: 14px; }
.v2b-by__n { font: 700 15px var(--v2-man); color: var(--v2-t); }
.v2b-by__s { font: 600 12.5px var(--v2-man); color: var(--v2-m); }
.v2b-by__acts { margin-left: auto; display: flex; gap: 10px; }
.v2b-by__acts .v2i { font-size: 17px; }
.v2b-hero { margin: 32px 0 0; }
.v2b-hero img { width: 100%; height: 520px; object-fit: cover; border-radius: 18px; display: block; background: repeating-linear-gradient(45deg, #2A3648 0 10px, #253042 10px 20px); }
.v2b-hero figcaption { max-width: 800px; margin: 10px auto 0; font: 500 13px/1.5 var(--v2-man); color: var(--v2-m); }
.v2b-body { max-width: 720px; margin: 36px auto 0; }
.v2b-lede { margin: 0; font: 600 20px/1.6 var(--v2-man); color: var(--v2-t); text-wrap: pretty; }
.v2b-prose p { margin: 16px 0 0; font: 500 18px/1.75 var(--v2-man); color: var(--v2-t2); text-wrap: pretty; }
.v2b-prose > p:first-child { margin-top: 24px; }
.v2b-prose h2 { margin: 44px 0 0; font: 600 28px/1.25 var(--v2-pop); letter-spacing: -.01em; color: var(--v2-t); text-wrap: pretty; }
.v2b-hrow { margin-top: 44px; display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.v2b-hrow h2 { margin: 0; }
.v2b-age { height: 28px; padding: 0 12px; border-radius: 999px; background: var(--v2-acc); color: var(--v2-on); font: 800 13px var(--v2-man); display: inline-flex; align-items: center; white-space: nowrap; }
.v2b-prose ul, .v2b-prose ol { margin: 16px 0 0; padding-left: 24px; font: 500 18px/1.75 var(--v2-man); color: var(--v2-t2); }
.v2b-prose li + li { margin-top: 6px; }
.v2b-prose li::marker { color: var(--v2-acc); }
.v2b-prose a { color: var(--v2-acc) !important; text-decoration: underline; text-underline-offset: 3px; }
.v2b-prose a:hover { color: var(--v2-acc-h) !important; }
.v2b-prose strong, .v2b-prose b { color: var(--v2-t); font-weight: 700; }
.v2b-prose figure { margin: 28px 0 0; }
.v2b-prose figure img { width: 100%; height: auto; border-radius: 14px; display: block; }
.v2b-prose figcaption { margin-top: 8px; font: 500 13px/1.5 var(--v2-man); color: var(--v2-m); }
.v2b-prose blockquote { margin: 24px 0 0; padding: 14px 18px; border-left: 3px solid var(--v2-acc); background: rgba(242,210,60,.06); border-radius: 0 12px 12px 0; }
.v2b-prose blockquote p { margin: 0; font: 500 18px/1.65 var(--v2-man); color: var(--v2-t); }
.v2b-prose blockquote cite { display: block; margin-top: 8px; font: 700 13px var(--v2-man); font-style: normal; color: var(--v2-m); }
.v2b-sign { margin-top: 36px; display: flex; align-items: center; gap: 8px; font: 700 16px var(--v2-man); color: var(--v2-t); }
.v2b-sign span { color: var(--v2-acc); font-family: 'Noto Sans Symbols 2', var(--v2-man); }
.v2b-supbox { margin-top: 32px; background: var(--v2-card); border: 1px solid rgba(242,210,60,.2); border-radius: 18px; padding: 24px; display: grid; grid-template-columns: minmax(0, 1fr) 240px; gap: 24px; align-items: center; }
.v2b-supbox__h { display: flex; align-items: center; gap: 8px; font: 600 19px var(--v2-pop); color: var(--v2-t); }
.v2b-supbox__h .v2i { font-size: 19px; color: var(--v2-acc); }
.v2b-supbox p { margin: 8px 0 0; font: 500 15px/1.55 var(--v2-man); color: var(--v2-t2); }
.v2b-supbtn { width: 100%; height: 52px; border-radius: 999px; border: 0; background: var(--v2-acc); color: var(--v2-on); font: 800 15px var(--v2-man); box-shadow: 0 6px 14px rgba(242,210,60,.28); cursor: pointer; transition: background .14s ease, transform .1s ease; }
.v2b-supbtn:hover { background: var(--v2-acc-h); }
.v2b-supbtn:active { transform: scale(.98); }
.v2b-note { margin-top: 8px; text-align: center; font: 600 12px var(--v2-man); color: var(--v2-m); }
.v2b-tags { margin-top: 20px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.v2b-tag { height: 30px; padding: 0 12px; border-radius: 999px; background: var(--v2-card); border: 1px solid var(--v2-b2); color: var(--v2-t2); font: 700 13px var(--v2-man); display: inline-flex; align-items: center; gap: 6px; }
.v2b-tag .v2i { font-size: 13px; }
.v2b-tags__s { margin-left: auto; font: 700 13px var(--v2-man); color: var(--v2-m); }
.v2-circ.v2b-ic--sm { width: 36px; height: 36px; font-size: 15px; }
.v2b-authbox { margin-top: 20px; background: var(--v2-card); border: 1px solid var(--v2-b); border-radius: 18px; padding: 24px; display: flex; gap: 18px; }
.v2b-authbox .v2b-av { width: 64px; height: 64px; font-size: 20px; }
.v2b-authbox__l { font: 800 12px var(--v2-man); letter-spacing: 1.2px; color: var(--v2-m); }
.v2b-authbox__n { font: 600 19px var(--v2-pop); color: var(--v2-t); }
.v2b-authbox p { margin: 8px 0 0; font: 500 15px/1.65 var(--v2-man); color: var(--v2-t2); text-wrap: pretty; }

/* ── Okno „Podpoř autora" ── */
.v2b-sup { position: fixed; inset: 0; z-index: 9990; display: flex; align-items: flex-start; justify-content: center; padding: 110px 16px 24px; box-sizing: border-box; overflow-y: auto; }
.v2b-sup[hidden] { display: none; }
.v2b-sup__bg { position: fixed; inset: 0; background: rgba(15,23,42,.75); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.v2b-sup__box { position: relative; width: 520px; max-width: 100%; box-sizing: border-box; background: var(--v2-card); border: 1px solid var(--v2-b); border-radius: 18px; padding: 28px; box-shadow: 0 32px 80px rgba(0,0,0,.6); }
.v2b-sup__x { position: absolute; top: 18px; right: 18px; }
.v2b-sup__tag { height: 26px; padding: 0 9px; border-radius: 8px; background: rgba(242,210,60,.12); color: var(--v2-acc); font: 800 12px var(--v2-man); letter-spacing: 1.2px; display: inline-flex; align-items: center; gap: 6px; }
.v2b-sup__tag .v2i { font-size: 13px; }
.v2b-sup__who { margin-top: 16px; display: flex; align-items: center; gap: 12px; padding-right: 44px; }
.v2b-sup__who .v2b-av { width: 52px; height: 52px; font-size: 17px; }
.v2b-sup__who h2 { margin: 0; font-size: 26px; }
.v2b-sup__sub { font: 600 14px var(--v2-man); color: var(--v2-m); }
.v2b-sup__p { margin: 14px 0 0; font: 500 15px/1.55 var(--v2-man); color: var(--v2-t2); }
.v2b-sup__lbl { margin-top: 18px; font: 800 13px var(--v2-man); color: var(--v2-m); }
.v2b-sup__lbl span { font-weight: 600; color: var(--v2-m2); }
.v2b-amts { margin-top: 8px; display: flex; gap: 4px; padding: 4px; border-radius: 16px; background: #172033; }
.v2b-amts button { flex: 1; height: 44px; border: 0; border-radius: 12px; background: transparent; color: var(--v2-t2); font: 700 13px var(--v2-man); cursor: pointer; transition: background .14s ease, color .14s ease; }
.v2b-amts button:hover { color: var(--v2-t); }
.v2b-amts button.is-on { background: var(--v2-acc); color: var(--v2-on); box-shadow: 0 0 12px rgba(242,210,60,.18); }
.v2b-custom { margin-top: 10px; height: 48px; border-radius: 12px; background: var(--v2-bg); border: 1px solid var(--v2-b2); display: flex; align-items: center; gap: 8px; padding: 0 14px; box-sizing: border-box; }
.v2b-custom[hidden] { display: none; }
.v2b-custom:focus-within { border-color: rgba(242,210,60,.6); }
.v2b-custom input { flex: 1; min-width: 0; border: 0; background: transparent; outline: none; color: var(--v2-t); font: 600 16px var(--v2-pop); }
.v2b-custom input:focus, .v2b-custom input:focus-visible, .v2b-msg:focus-visible { outline: none; box-shadow: none; }   /* fokus ukazuje žlutý okraj pole */
.v2b-custom span { font: 700 14px var(--v2-man); color: var(--v2-m); }
.v2b-msg { display: block; margin-top: 8px; width: 100%; box-sizing: border-box; height: 80px; resize: none; border-radius: 12px; background: var(--v2-bg); border: 1px solid var(--v2-b2); padding: 12px 14px; color: var(--v2-t); font: 500 14px var(--v2-man); outline: none; }
.v2b-msg:focus { border-color: rgba(242,210,60,.6); }
.v2b-msg::placeholder, .v2b-custom input::placeholder { color: var(--v2-m2); }
.v2b-pay { margin-top: 18px; width: 100%; height: 56px; border-radius: 999px; border: 0; background: var(--v2-acc); color: var(--v2-on); font: 800 16px var(--v2-man); box-shadow: 0 6px 14px rgba(242,210,60,.28); display: flex; align-items: center; justify-content: center; gap: 8px; cursor: pointer; transition: background .14s ease, transform .1s ease; }
.v2b-pay .v2i { font-size: 16px; }
.v2b-pay:hover { background: var(--v2-acc-h); }
.v2b-pay:active { transform: scale(.98); }
.v2b-pay:disabled { opacity: .6; cursor: progress; transform: none; }
.v2b-sup .v2b-err { margin-top: 10px; }
.v2b-later { margin-top: 10px; width: 100%; height: 44px; border-radius: 13px; background: transparent; border: 1px solid var(--v2-b2); color: var(--v2-t2); font: 800 14px var(--v2-man); cursor: pointer; transition: border-color .14s ease; }
.v2b-later:hover { border-color: rgba(242,210,60,.45); }

/* toast (kopírování odkazu) */
.v2b-toast { position: fixed; left: 50%; bottom: 28px; z-index: 9995; transform: translate(-50%, 10px); opacity: 0; pointer-events: none; background: var(--v2-card); border: 1px solid var(--v2-b); border-radius: 12px; padding: 12px 16px; font: 600 13.5px var(--v2-man); color: var(--v2-t); box-shadow: 0 12px 30px rgba(2,6,23,.4); transition: opacity .2s ease, transform .2s ease; }
.v2b-toast.is-on { opacity: 1; transform: translate(-50%, 0); }

/* užší okna */
@media (max-width: 1180px) {
  .v2b-lead { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .v2b-hero img { height: 440px; }
}
@media (max-width: 900px) {
  .v2b-lead { grid-template-columns: 1fr; }
  .v2b-lead__img { height: 300px; }
  .v2b-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .v2b-supbox { grid-template-columns: 1fr; }
  .v2b-title { font-size: 38px; }
}
@media (prefers-reduced-motion: reduce) { .v2b-card.is-new { animation: none; } }

/* ══ Mobil (Claude Design „ChessDB Clanky mobil“, 26. 10. 2026) ═══════════════════════════════════════════
   Jen mobilní vykreslení Článků (wp_is_mobile → <html class="cdb-v2 v2b-m">, blog-v2.php); na počítači se nic nemění.
   Tento soubor načítá i Série – proto vše pod html.v2b-m (Série má html.v2s-m a vlastní pravidla v v2-serie.css).
   Dolní lišta z návrhu se nedělá, navigace je sdílená lišta s menu (v2-mnav.css). Doplňující CSS šablony dává do 768 px
   html i body overflow-x: hidden → html visible (lišta zůstane sticky), zámek posouvání přes body. */
html.cdb-v2.v2b-m { overflow: visible; }
html.cdb-v2.v2b-m.v2-mnav-open body { overflow: hidden; }

@media (max-width: 760px) {
  /* lišta článku: Zpět + „Články“, vpravo Sdílet a účet (Registrace jen v menu) */
  .v2-blog-h .v2-reg { display: none; }

  /* ── Výpis (1) ── */
  html.v2b-m .v2b-main { padding: 28px 20px 40px; }
  html.v2b-m .v2b-h1 { font-size: 34px; line-height: 1.15; }
  html.v2b-m .v2b-sub { margin-top: 8px; font-size: 15px; line-height: 1.5; }
  html.v2b-m .v2b-lead { margin-top: 24px; display: block; -webkit-tap-highlight-color: transparent; }
  html.v2b-m .v2b-lead__img { height: 196px; }
  html.v2b-m .v2b-lead__body { display: block; padding: 16px; }
  html.v2b-m .v2b-cat { height: 24px; padding: 0 9px; }
  html.v2b-m .v2b-date { font-size: 12.5px; }
  html.v2b-m .v2b-lead__t { margin-top: 10px; font-size: 20px; line-height: 1.3; letter-spacing: -.01em; }
  html.v2b-m .v2b-lead__p { margin-top: 8px; font-size: 14px; line-height: 1.55; -webkit-line-clamp: 3; }
  html.v2b-m .v2b-lead__ft { margin-top: 14px; padding-top: 0; gap: 10px; }
  html.v2b-m .v2b-lead__ft .v2b-av { width: 28px; height: 28px; font-size: 11px; }
  html.v2b-m .v2b-au { font-size: 13px; }
  html.v2b-m .v2b-read, html.v2b-m .v2b-lead:hover .v2b-read { height: auto; padding: 0; background: none; font-size: 0; color: var(--v2-acc); }   /* jen šipka */
  html.v2b-m .v2b-read .v2i { font-size: 18px; }
  html.v2b-m .v2b-lbl { margin-top: 28px; }
  html.v2b-m .v2b-grid { margin-top: 12px; display: flex; flex-direction: column; gap: 10px; }
  html.v2b-m .v2b-card { flex-direction: row; gap: 12px; padding: 12px; -webkit-tap-highlight-color: transparent; }
  html.v2b-m .v2b-card__img { width: 84px; height: 84px; flex: none; border-radius: 12px; background-image: repeating-linear-gradient(45deg, #2A3648 0 6px, #253042 6px 12px); }
  html.v2b-m .v2b-card__b { min-width: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
  html.v2b-m .v2b-card__m { font-size: 12px; }
  html.v2b-m .v2b-card__t { margin-top: 0; font-size: 15px; line-height: 1.35; overflow-wrap: anywhere; }
  html.v2b-m .v2b-more { margin-top: 16px; }
  html.v2b-m .v2b-morebtn { width: 100%; height: 48px; -webkit-tap-highlight-color: transparent; }
  html.v2b-m .v2b-empty { margin-top: 24px; }

  /* ── Článek (2) ── */
  html.v2b-m .v2b-art { padding: 24px 20px 40px; }
  html.v2b-m .v2b-art > .v2b-back { display: none; }   /* Zpět je v liště */
  html.v2b-m .v2b-head { margin: 0; max-width: none; }
  html.v2b-m .v2b-title { margin-top: 12px; font-size: 30px; line-height: 1.2; }
  html.v2b-m .v2b-by { margin-top: 16px; gap: 10px; }
  html.v2b-m .v2b-by .v2b-av { width: 36px; height: 36px; font-size: 13px; }
  html.v2b-m .v2b-by__n { font-size: 14px; }
  html.v2b-m .v2b-by__s { font-size: 12px; }
  html.v2b-m .v2b-by__acts { display: none; }   /* Sdílet je v liště, kopírování dole u štítků */
  html.v2b-m .v2b-hero { margin: 20px -20px 0; }
  html.v2b-m .v2b-hero img { height: 236px; border-radius: 0; }
  html.v2b-m .v2b-hero figcaption { margin: 8px 20px 0; max-width: none; font-size: 12.5px; }
  html.v2b-m .v2b-art .v2b-body { margin: 0; max-width: none; }
  html.v2b-m .v2b-lede { margin-top: 22px; font-size: 17px; line-height: 1.65; }
  html.v2b-m .v2b-prose { overflow-wrap: anywhere; }
  html.v2b-m .v2b-prose p, html.v2b-m .v2b-prose ul, html.v2b-m .v2b-prose ol { margin-top: 12px; font-size: 16px; line-height: 1.7; }
  html.v2b-m .v2b-prose ul, html.v2b-m .v2b-prose ol { padding-left: 22px; }
  html.v2b-m .v2b-prose > p:first-child { margin-top: 16px; }
  html.v2b-m .v2b-prose h2 { margin-top: 32px; font-size: 21px; line-height: 1.3; }
  html.v2b-m .v2b-hrow { margin-top: 32px; gap: 10px; }
  html.v2b-m .v2b-hrow h2 { margin: 0; }
  html.v2b-m .v2b-age { height: 26px; padding: 0 10px; font-size: 12.5px; }
  html.v2b-m .v2b-prose figure { margin-top: 20px; }
  html.v2b-m .v2b-prose figure img { border-radius: 12px; }
  html.v2b-m .v2b-prose blockquote { margin-top: 18px; padding: 12px 14px; }
  html.v2b-m .v2b-prose blockquote p { font-size: 16px; }
  html.v2b-m .v2b-sign { margin-top: 28px; font-size: 15px; }
  html.v2b-m .v2b-supbox { display: block; margin-top: 28px; padding: 18px; }
  html.v2b-m .v2b-supbox__h { font-size: 17px; }
  html.v2b-m .v2b-supbox__h .v2i { font-size: 18px; }
  html.v2b-m .v2b-supbox p { margin-top: 8px; font-size: 14px; }
  html.v2b-m .v2b-supbtn { margin-top: 14px; height: 48px; -webkit-tap-highlight-color: transparent; }
  html.v2b-m .v2b-note { margin-top: 8px; }
  html.v2b-m .v2b-tags { margin-top: 20px; }
  html.v2b-m .v2b-tag { height: 28px; }
  html.v2b-m .v2b-authbox { margin-top: 20px; padding: 18px; display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 0 12px; align-items: center; }
  html.v2b-m .v2b-authbox > .v2b-av { grid-row: 1 / span 2; width: 52px; height: 52px; font-size: 17px; }
  html.v2b-m .v2b-authbox > div { display: contents; }
  html.v2b-m .v2b-authbox__l { grid-column: 2; align-self: end; }
  html.v2b-m .v2b-authbox__n { grid-column: 2; align-self: start; font-size: 17px; }
  html.v2b-m .v2b-authbox p { grid-column: 1 / -1; margin-top: 12px; font-size: 14px; line-height: 1.6; }

  /* ── Podpora autora (3): spodní list – úchyt, avatar s nadpisem a křížkem v řádku, částky 2 × 2 ── */
  html.v2b-m .v2b-sup { align-items: flex-end; padding: 0; }
  html.v2b-m .v2b-sup__bg { cursor: pointer; }   /* iOS Safari jinak klepnutí na podklad do dokumentu nepošle */
  html.v2b-m .v2b-sup__box { width: 100%; max-height: 92vh; max-height: 92dvh; overflow-y: auto; overscroll-behavior: contain; border-width: 1px 0 0; border-radius: 32px 32px 0 0; padding: 31px 20px calc(28px + env(safe-area-inset-bottom, 0px)); box-shadow: 0 -20px 60px rgba(2,6,23,.6); }
  html.v2b-m .v2b-sup__box::before { content: ""; position: absolute; left: 50%; top: 10px; width: 40px; height: 5px; margin-left: -20px; border-radius: 999px; background: rgba(255,255,255,.3); }
  html.v2b-m .v2b-sup__tag { display: none; }
  html.v2b-m .v2b-sup__x { top: 36px; right: 20px; }
  html.v2b-m .v2b-sup__who { margin-top: 0; padding-right: 52px; }
  html.v2b-m .v2b-sup__who .v2b-av { width: 44px; height: 44px; font-size: 15px; }
  html.v2b-m .v2b-sup__who h2 { font-size: 22px; }
  html.v2b-m .v2b-sup__sub { font-size: 13px; }
  html.v2b-m .v2b-sup__p { margin-top: 12px; font-size: 14px; }
  html.v2b-m .v2b-sup__lbl { margin-top: 16px; }
  html.v2b-m .v2b-sup__lbl ~ .v2b-sup__lbl { margin-top: 14px; }
  html.v2b-m .v2b-amts { display: grid; grid-template-columns: 1fr 1fr; }
  html.v2b-m .v2b-msg { height: 72px; font-size: 16px; }   /* iOS by při menším písmu stránku přiblížil */
  html.v2b-m .v2b-pay { margin-top: 16px; -webkit-tap-highlight-color: transparent; }
  html.v2b-m .v2b-later { display: none; }   /* návrh: zavírá křížek, podklad nebo Esc */
  html.v2b-m .v2b-toast { bottom: calc(20px + env(safe-area-inset-bottom, 0px)); max-width: calc(100% - 32px); box-sizing: border-box; }

  /* ── Patička pod sebou ── */
  html.v2b-m .v2-footer__in { grid-template-columns: 1fr; padding: 28px 20px; gap: 14px; }
  html.v2b-m .v2-footer__col { flex-direction: row; flex-wrap: wrap; gap: 6px 14px; }
  html.v2b-m .v2-footer__col--r { align-items: flex-start; text-align: left; }
}
@media (max-width: 760px) and (hover: none) {   /* iOS drží :hover po klepnutí */
  html.v2b-m .v2b-lead:hover, html.v2b-m .v2b-card:hover { border-color: var(--v2-b); }
  html.v2b-m .v2b-card:hover .v2b-card__t { color: var(--v2-t2); }
}
