/* Bluff Parlor – közös tipográfia és tagolás (2026-11-03). EGYETLEN forrás: a hub linkeli, a szerveroldali oldalak (blog, katalógus, jogi oldalak) beágyazzák (server/seo-pages.js, server/blog.js).
   Szabályok: törzs = Inter (jól olvasható, modern), címek = Plus Jakarta Sans 700/800 (nyitott, geometrikus, magyar ékezetekkel); az Orbitron csak a logóban és a „18+” jelvényben marad.
   Cikk: 18 px / 1.75, olvasható oszlop (~760 px), bevezető bekezdés kiemelve, h2 = vonallal és színes sávval elválasztott szakasz, tartalomjegyzék, szép GYIK és forráslista. */
:root { --font-head: 'Plus Jakarta Sans', 'Inter', 'Segoe UI Variable Display', 'Segoe UI', system-ui, sans-serif; }
.bt-article, .bl-center article, .bl-toc { --ty-acc: var(--tc, var(--accent, var(--acc, #7fe3ff))); }   /* a kiemelő szín a téma / rovat színe */

/* címek az egész oldalon (a témás hero-címek – pl. a Póker arany Playfair-e – saját szabályukkal felülírják) */
h1, h2, h3, h4 { font-family: var(--font-head); }
h1, h2 { letter-spacing: -.012em; word-spacing: .04em; text-wrap: balance; }
h3, h4 { letter-spacing: -.005em; word-spacing: .03em; }

/* ---------- cikk: olvasható oszlop ---------- */
.bl-body, .bt-body { max-width: 760px; margin: 0 auto; font-size: 18px; line-height: 1.75; color: #e9eef8; font-feature-settings: 'cv11', 'ss01'; }
.bl-body p, .bt-body p, .bl-body li, .bt-body li { color: #e3e9f5; }
.bl-body p, .bt-body p { margin: 0 0 1.15em; }
.bl-body > p:first-child, .bt-body > p:first-child { font-size: 1.14em; line-height: 1.65; color: #f7faff; }   /* bevezető bekezdés */
.bl-body strong, .bt-body strong { color: #fff; font-weight: 700; }
.bl-body a, .bt-body a { text-decoration-thickness: 1px; text-underline-offset: 3px; }
.bl-body ul, .bl-body ol, .bt-body ul, .bt-body ol { margin: 0 0 1.3em; padding-left: 1.4em; }
.bl-body li, .bt-body li { margin: .5em 0; padding-left: .2em; }
.bl-body li::marker, .bt-body li::marker { color: var(--ty-acc); font-weight: 700; }
.bl-body blockquote, .bt-body blockquote { margin: 1.4em 0; padding: 12px 18px; border-left: 4px solid var(--ty-acc); background: rgba(255, 255, 255, .05); border-radius: 0 12px 12px 0; color: #f1f5ff; }
.bl-body blockquote p, .bt-body blockquote p { margin: 0; }
.bl-body code, .bt-body code { font-size: .92em; padding: 2px 6px; border-radius: 6px; background: rgba(255, 255, 255, .09); }
.bl-body hr, .bt-body hr { border: 0; border-top: 1px solid rgba(255, 255, 255, .14); margin: 2.2em 0; }

/* ---------- szakaszcímek: vonal + színes sáv ---------- */
.bl-body h2, .bt-body h2, .bl-center article > h2, .bt-article > h2 {
  position: relative; margin: 2.3em 0 .65em; padding-top: 1.15em; border-top: 1px solid rgba(255, 255, 255, .13);
  font-size: clamp(24px, 3vw, 31px); line-height: 1.2; font-weight: 800; color: #fff; scroll-margin-top: 96px;
}
.bl-body h2::before, .bt-body h2::before, .bl-center article > h2::before, .bt-article > h2::before { content: ''; position: absolute; top: -2px; left: 0; width: 72px; height: 3px; border-radius: 3px; background: var(--ty-acc); }
.bl-body > h2:first-child, .bt-body > h2:first-child { margin-top: .4em; }
.bl-body h3, .bt-body h3 { margin: 1.8em 0 .5em; font-size: clamp(19px, 2.2vw, 22px); line-height: 1.3; font-weight: 700; color: #fff; scroll-margin-top: 96px; }
.bl-body h3::before, .bt-body h3::before { content: '▸ '; color: var(--ty-acc); }

/* ---------- tartalomjegyzék ---------- */
.bl-toc { max-width: 760px; margin: 1.6em auto 2em; padding: 16px 22px 14px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 14px; background: rgba(255, 255, 255, .045); }
.bl-toc > b { display: block; font: 800 12px var(--font-head); letter-spacing: .1em; text-transform: uppercase; color: var(--ty-acc); }
.bl-toc ol { margin: 10px 0 0; padding-left: 1.3em; columns: 2; column-gap: 28px; font-size: 15.5px; line-height: 1.4; }
.bl-toc li { margin: 0 0 7px; break-inside: avoid; color: #cdd7e8; }
.bl-toc li::marker { color: var(--ty-acc); font-weight: 700; }
.bl-toc a { color: #e6edf9; text-decoration: none; }
.bl-toc a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 640px) { .bl-toc ol { columns: 1; } }

/* ---------- GYIK (details), forráslista, meta ---------- */
.bl-center article details, .bt-article details { margin: 10px 0; border: 1px solid rgba(255, 255, 255, .15); border-radius: 12px; background: rgba(255, 255, 255, .045); padding: 0; transition: border-color .2s, background .2s; }
.bl-center article details[open], .bt-article details[open] { border-color: var(--ty-acc); background: rgba(255, 255, 255, .07); }
.bl-center article summary, .bt-article summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 14px 18px; font: 700 16.5px/1.4 var(--font-head); color: #fff; }
.bl-center article summary::-webkit-details-marker, .bt-article summary::-webkit-details-marker { display: none; }
.bl-center article summary::after, .bt-article summary::after { content: '+'; flex: none; width: 26px; height: 26px; display: grid; place-items: center; border-radius: 50%; background: rgba(255, 255, 255, .1); font-size: 18px; line-height: 1; color: var(--ty-acc); }
.bl-center article details[open] summary::after, .bt-article details[open] summary::after { content: '–'; }
.bl-center article details p, .bt-article details p { margin: 0; padding: 0 18px 16px; color: #dfe6f3; line-height: 1.7; }
.bl-src { padding-left: 1.2em; }
.bl-src li { margin: 6px 0; font-size: 15px; line-height: 1.5; color: #cdd7e8; }
.bl-meta { color: #b3bfd1; font-size: 14.5px; }
.bl-table { font-size: 15.5px; }
.bl-table th { font: 700 13px var(--font-head); letter-spacing: .05em; text-transform: uppercase; color: #cfe3ff; }

/* ---------- általános olvashatóság: jogi / katalógus oldalak, kártyák ---------- */
.doc p, .doc li { line-height: 1.75; }
.doc h2 { margin-top: 2em; font-size: clamp(22px, 2.6vw, 28px); }
@media (max-width: 760px) { .bl-body, .bt-body { font-size: 17px; line-height: 1.72; } }

/* a cikk további szakaszai (GYIK, forrás…) ugyanabban az olvasható oszlopban, mint a törzs */
.bl-center article > h2, .bl-center article > details, .bl-center article > .bl-src, .bt-article > h2, .bt-article > details, .bt-article > .bt-src { max-width: 760px; margin-left: auto; margin-right: auto; }
