
:root{
  --bg:#0f3d2b; --bg2:#0b2e20; --panel:#15503a; --panel2:#1a5f45;
  --ink:#f1f7f2; --mut:rgba(241,247,242,.72); --mut2:rgba(241,247,242,.5);
  --violet:#2f7a55; --violet2:#3fae7c; --violet-d:#0c2e1f;
  --gold:#f4d35e; --gold2:#f8e3a0;
  --pink:#e2664d; --cyan:#8fd7c4; --green:#6fcf97; --orange:#f4a15e;
  --line:rgba(241,247,242,.14);
  --radius:18px; --radius-sm:12px;
  --shadow:0 18px 48px rgba(6,20,14,.55);
  --maxw:1180px;
  --font-d:"Archivo Black",system-ui,sans-serif; --font-b:"IBM Plex Sans Thai",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth; overflow-x:hidden}
body{
  margin:0; font-family:var(--font-b); color:var(--ink); line-height:1.75;
  background:
    radial-gradient(120% 70% at 50% -10%, #2f7a55 0%, #0c2e1f 32%, transparent 60%),
    radial-gradient(700px 460px at 92% 4%, rgba(255,95,180,.16), transparent 55%),
    radial-gradient(800px 560px at 50% 120%, rgba(58,224,214,.10), transparent 60%),
    var(--bg);
  background-attachment:scroll;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
a{color:var(--violet2); text-decoration:none}
a:hover{color:var(--gold)}
img{max-width:100%; display:block}
h1,h2,h3,h4{font-family:var(--font-d); font-weight:800; line-height:1.2; margin:.2em 0 .5em}
h1{font-size:clamp(1.9rem,4.6vw,3.1rem); letter-spacing:-.5px}
h2{font-size:clamp(1.5rem,3.2vw,2.2rem)}
h3{font-size:1.18rem}
p{margin:0 0 1rem}
.bt-wrap{max-width:var(--maxw); margin:0 auto; padding:0 18px; width:100%}

/* ---- buttons ---- */
.bt-btn{display:inline-flex; align-items:center; gap:.5em; font-family:var(--font-d);
  font-weight:700; border:0; cursor:pointer; border-radius:999px; padding:.72em 1.5em;
  font-size:.96rem; transition:transform .15s ease, box-shadow .2s ease, filter .2s; white-space:nowrap}
.bt-btn:hover{transform:translateY(-2px)}
.bt-btn-gold{background:linear-gradient(135deg,var(--gold),#ff9e2c); color:#2b1d05;
  box-shadow:0 10px 26px rgba(255,158,44,.45)}
.bt-btn-gold:hover{color:#2b1d05; box-shadow:0 14px 32px rgba(255,158,44,.6)}
.bt-btn-violet{background:linear-gradient(135deg,var(--violet2),var(--violet-d)); color:#fff;
  box-shadow:0 10px 26px rgba(63,174,124,.5)}
.bt-btn-violet:hover{color:#fff}
.bt-btn-ghost{background:rgba(255,255,255,.06); color:#fff; border:1px solid var(--line)}
.bt-btn-ghost:hover{color:#fff; background:rgba(255,255,255,.12)}
.bt-btn-line{background:#06c755; color:#fff; box-shadow:0 8px 20px rgba(6,199,85,.4)}
.bt-btn-line:hover{color:#fff}

/* ---- topbar ---- */
.bt-topbar{background:rgba(0,0,0,.28); border-bottom:1px solid var(--line); font-size:.82rem}
.bt-topbar .bt-wrap{display:flex; align-items:center; justify-content:space-between; height:38px}
.bt-live{display:flex; align-items:center; gap:.5em; color:var(--mut)}
.bt-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(35,209,139,.18);animation:pulse 1.8s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(35,209,139,0)}}
.bt-langs{color:var(--mut2)}

/* ---- header ---- */
header.bt-site{position:sticky; top:0; z-index:50; backdrop-filter:blur(12px);
  background:linear-gradient(180deg,rgba(8,26,18,.95),rgba(8,26,18,.78)); border-bottom:1px solid var(--line);
  transition:padding .2s}
header.bt-site.bt-shrunk{box-shadow:0 10px 30px rgba(0,0,0,.4)}
.bt-nav{display:flex; align-items:center; gap:1.1rem; height:70px}
.bt-logo-img{height:46px; width:auto}
.bt-nav-links{display:flex; gap:.3rem; margin-left:.6rem; flex:1}
.bt-nav-links a{color:var(--mut); font-family:var(--font-d); font-weight:600; font-size:.95rem;
  padding:.5em .8em; border-radius:10px; transition:.15s}
.bt-nav-links a:hover,.bt-nav-links a[aria-current=page]{color:#fff; background:var(--panel2)}
.bt-nav-cta{display:flex; align-items:center; gap:.55rem}
.bt-burger{display:none; background:rgba(255,255,255,.08); color:#fff; border:1px solid var(--line);
  border-radius:10px; width:42px;height:42px;font-size:1.3rem;cursor:pointer}
.bt-mobile-menu{display:none; flex-direction:column; gap:.3rem; padding:0 18px 16px}
.bt-mobile-menu a{color:var(--mut); font-family:var(--font-d); font-weight:600; padding:.7em .6em;
  border-radius:10px; border:1px solid var(--line)}
.bt-mobile-menu a:hover{color:#fff;background:var(--panel2)}
.bt-mobile-menu .bt-btn{margin-top:.4rem; justify-content:center}

/* ---- hero ---- */
.bt-hero{position:relative; padding:54px 0 28px; overflow:hidden}
.bt-hero-grid{display:grid; grid-template-columns:1.05fr .95fr; gap:34px; align-items:center}
.bt-hero .bt-eyebrow{color:var(--gold); font-family:var(--font-d); font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; font-size:.78rem; margin-bottom:.6rem}
.bt-hero h1{margin-top:0}
.bt-hero h1 .bt-hl{background:linear-gradient(135deg,var(--gold2),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.bt-hero .bt-lead{color:var(--mut); font-size:1.08rem; max-width:42ch}
.bt-hero-cta{display:flex; gap:.7rem; flex-wrap:wrap; margin-top:1.4rem}
.bt-hero-stats{display:flex; gap:1.6rem; margin-top:1.8rem; flex-wrap:wrap}
.bt-hero-stats .bt-s{display:flex;flex-direction:column}
.bt-hero-stats b{font-family:var(--font-d); font-size:1.5rem; color:#fff; line-height:1}
.bt-hero-stats span{color:var(--mut2); font-size:.82rem; margin-top:.25rem}
.bt-hero-art{position:relative}
.bt-hero-art img{border-radius:var(--radius); box-shadow:var(--shadow); border:1px solid var(--line)}

/* ---- sections ---- */
.bt-block{padding:42px 0}
.bt-sec-head{display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; margin-bottom:1.4rem; flex-wrap:wrap}
.bt-eyebrow{color:var(--violet2); font-family:var(--font-d); font-weight:700; letter-spacing:.1em;
  text-transform:uppercase; font-size:.76rem; margin:0 0 .3rem}
.bt-sec-head h2{margin:0}
.bt-sec-head .bt-more{color:var(--mut); font-weight:600; font-family:var(--font-d); font-size:.9rem}

/* category cards */
.bt-cat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:14px}
.bt-catcard{position:relative; border-radius:var(--radius); overflow:hidden; border:1px solid var(--line);
  background:var(--panel); min-height:150px; display:flex; align-items:flex-end; padding:14px;
  transition:transform .18s, box-shadow .2s}
.bt-catcard:hover{transform:translateY(-4px); box-shadow:var(--shadow)}
.bt-catcard img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.5; z-index:0}
.bt-catcard::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent,rgba(8,26,18,.92)); z-index:1}
.bt-catcard .bt-ct{position:relative; z-index:2}
.bt-catcard .bt-ct h3{margin:0; color:#fff}
.bt-catcard .bt-ct span{color:var(--gold2); font-size:.84rem; font-weight:600}

/* game showcase */
.bt-show-grid{display:grid; grid-template-columns:1.4fr 1fr; gap:18px}
.bt-show-grid img{border-radius:var(--radius); border:1px solid var(--line); box-shadow:var(--shadow)}
.bt-glist{display:grid; grid-template-columns:repeat(3,1fr); gap:10px}
.bt-gtile{background:var(--panel); border:1px solid var(--line); border-radius:14px; padding:12px 10px; text-align:center; transition:.15s}
.bt-gtile:hover{transform:translateY(-3px); border-color:var(--violet)}
.bt-gtile .bt-gn{font-family:var(--font-d); font-weight:600; font-size:.9rem; color:#fff; display:block}
.bt-gtile .bt-prov{color:var(--mut2); font-size:.72rem}
.bt-rtp{margin-top:14px; height:7px; border-radius:99px; background:linear-gradient(90deg,var(--green),var(--gold)); position:relative}
.bt-rtp span{position:absolute; right:0; top:-18px; font-size:.72rem; color:var(--green); font-weight:700}

/* real game-art tiles */
.bt-game-grid{display:grid; grid-template-columns:repeat(6,1fr); gap:14px}
.bt-game-card{display:block; border-radius:14px; overflow:hidden; background:var(--panel);
  border:1px solid var(--line); transition:transform .16s, box-shadow .2s, border-color .2s}
.bt-game-card:hover{transform:translateY(-5px); box-shadow:var(--shadow); border-color:var(--violet2)}
.bt-game-card .bt-gc-img{position:relative; aspect-ratio:325/250; overflow:hidden; background:var(--bg2)}
.bt-game-card .bt-gc-img img{width:100%; height:100%; object-fit:cover; transition:transform .3s}
.bt-game-card:hover .bt-gc-img img{transform:scale(1.06)}
.bt-game-card .bt-gc-prov{position:absolute; top:7px; left:7px; font-family:var(--font-d); font-weight:700;
  font-size:.6rem; letter-spacing:.03em; text-transform:uppercase; color:#fff;
  background:rgba(6,20,14,.7); border:1px solid rgba(255,255,255,.15); padding:.18em .55em; border-radius:99px; backdrop-filter:blur(4px)}
.bt-game-card .bt-gc-play{position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  opacity:0; transition:opacity .2s; background:linear-gradient(0deg,rgba(78,36,221,.55),rgba(24,15,71,.25))}
.bt-game-card:hover .bt-gc-play{opacity:1}
.bt-game-card .bt-gc-play span{font-family:var(--font-d); font-weight:800; color:#2b1d05; background:linear-gradient(135deg,var(--gold),#ff9e2c);
  padding:.5em 1.1em; border-radius:99px; font-size:.82rem; box-shadow:0 6px 16px rgba(0,0,0,.4)}
.bt-game-card .bt-gc-meta{display:flex; align-items:center; justify-content:space-between; gap:.5em; padding:9px 11px}
.bt-game-card .bt-gc-name{font-family:var(--font-d); font-weight:600; font-size:.82rem; color:#fff; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.bt-game-card .bt-gc-rtp{flex:none; font-family:var(--font-d); font-weight:700; font-size:.66rem; color:var(--green);
  background:rgba(43,221,149,.12); border:1px solid rgba(43,221,149,.3); padding:.16em .5em; border-radius:99px}

/* hero tiles 2x2 */
.bt-hero-tiles{display:grid; grid-template-columns:1fr 1fr; gap:14px}
.bt-hero-tiles img{border-radius:14px; border:1px solid var(--line); box-shadow:0 10px 26px rgba(6,20,14,.5); aspect-ratio:325/250; object-fit:cover; width:100%}

/* providers strip */
.bt-prov-strip{display:flex; flex-wrap:wrap; gap:10px}
.bt-prov-chip{background:var(--panel); border:1px solid var(--line); border-radius:12px; padding:.6em 1.05em;
  font-family:var(--font-d); font-weight:700; font-size:.92rem; color:var(--mut); letter-spacing:.02em; transition:.15s}
.bt-prov-chip:hover{color:#fff; border-color:var(--violet); background:var(--panel2)}

/* promo / event cards */
.bt-promo-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:18px}
.bt-promocard{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden;
  display:flex; flex-direction:column; transition:transform .18s, box-shadow .2s}
.bt-promocard:hover{transform:translateY(-4px); box-shadow:var(--shadow)}
.bt-promocard .bt-pimg{aspect-ratio:16/9; overflow:hidden; background:var(--bg2)}
.bt-promocard .bt-pimg img{width:100%;height:100%;object-fit:cover}
.bt-promocard .bt-pbody{padding:16px 18px}
.bt-promocard h3{margin:0 0 .3rem}
.bt-promocard p{color:var(--mut); font-size:.92rem; margin:0 0 .8rem}
.bt-tag{display:inline-block; font-family:var(--font-d); font-weight:700; font-size:.8rem; letter-spacing:.05em;
  text-transform:uppercase; color:var(--gold); background:rgba(255,203,61,.12); padding:.25em .7em; border-radius:99px; margin-bottom:.6rem}

/* feature/usp row */
.bt-rel-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:14px}
.bt-relcard{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius); padding:18px; transition:.18s; display:block}
.bt-relcard:hover{transform:translateY(-4px); box-shadow:var(--shadow); border-color:var(--violet)}
.bt-relcard .bt-k{display:inline-block; font-family:var(--font-d); font-weight:700; font-size:.78rem; letter-spacing:.06em;
  text-transform:uppercase; color:var(--cyan); margin-bottom:.5rem}
.bt-relcard h3{margin:0 0 .35rem; color:#fff}
.bt-relcard p{color:var(--mut); font-size:.9rem; margin:0}
.bt-relcard .bt-go{color:var(--gold); font-weight:700; font-size:.85rem; font-family:var(--font-d)}

/* cta band */
.bt-cta-band{position:relative; text-align:center; border-radius:24px; padding:42px 24px; overflow:hidden;
  background:linear-gradient(135deg,var(--violet-d),var(--panel2)); border:1px solid rgba(255,255,255,.12)}
.bt-cta-band::before{content:""; position:absolute; inset:0;
  background:radial-gradient(400px 200px at 50% -20%, rgba(255,203,61,.3), transparent 70%)}
.bt-cta-band *{position:relative}
.bt-cta-band h2{margin:.2rem 0 .5rem}
.bt-cta-band p{color:var(--gold2); max-width:54ch; margin:0 auto 1.4rem}

/* ---- page hero (content pages) ---- */
.bt-phero{padding:40px 0 8px}
.bt-phero .bt-lead{color:var(--mut); font-size:1.06rem; max-width:62ch}
.bt-meta-row{display:flex; gap:1.1rem; flex-wrap:wrap; color:var(--mut2); font-size:.82rem; margin-top:1rem}
.bt-crumbs{padding:14px 18px 0}
.bt-crumbs ol{list-style:none; display:flex; gap:.5em; flex-wrap:wrap; padding:0; margin:0; font-size:.84rem; color:var(--mut2)}
.bt-crumbs a{color:var(--mut)}
.bt-crumbs li:not(:last-child)::after{content:"›"; margin-left:.5em; color:var(--mut2)}

/* prose + toc */
.bt-layout{display:grid; grid-template-columns:1fr 250px; gap:34px; padding:24px 0 8px}
.bt-prose{min-width:0; font-size:1.02rem; overflow-wrap:break-word}
.bt-prose h2{margin-top:1.8em; padding-top:.2em}
.bt-prose h3{margin-top:1.4em; color:var(--gold2)}
.bt-prose p{color:#e9e7fb}
.bt-prose ul,.bt-prose ol{color:#e9e7fb; padding-left:1.2em}
.bt-prose li{margin:.4em 0}
.bt-prose a{text-decoration:underline; text-underline-offset:3px}
/* Safety net: any content box with a light inline background must use dark text
   (default .bt-prose text is light #e9e7fb → would blend into white bg). Auto-covers
   current + future hand-authored callout boxes. */
.bt-prose [style*="background:#f"],.bt-prose [style*="background: #f"],.bt-prose [style*="background:#e"],.bt-prose [style*="background-color:#f"],.bt-prose [style*="background-color:#e"],.bt-prose [style*="background:#FFF"],.bt-prose [style*="background:white"]{color:#2a1212}
.bt-prose [style*="background:#f"] strong,.bt-prose [style*="background:#e"] strong,.bt-prose [style*="background-color:#f"] strong{color:#7a1010}
.bt-prose [style*="background:#f"] a,.bt-prose [style*="background:#e"] a,.bt-prose [style*="background-color:#f"] a{color:#b3261e}
.bt-prose table.bt-data{width:100%; border-collapse:collapse; margin:1.2em 0; font-size:.92rem}
.bt-prose table.bt-data th,.bt-prose table.bt-data td{border:1px solid var(--line); padding:.6em .8em; text-align:left}
.bt-prose table.bt-data th{background:var(--panel2); font-family:var(--font-d)}
.bt-tbl-wrap{max-width:100%; overflow-x:auto}
.bt-toc{align-self:start; position:sticky; top:90px; background:var(--panel); border:1px solid var(--line);
  border-radius:var(--radius); padding:16px 18px}
.bt-toc h4{margin:.1em 0 .6em; font-size:.85rem; color:var(--mut2); text-transform:uppercase; letter-spacing:.08em}
.bt-toc a{display:block; color:var(--mut); font-size:.9rem; padding:.3em 0; border-left:2px solid transparent; padding-left:.7em}
.bt-toc a.bt-active{color:#fff; border-color:var(--gold)}

/* faq */
.bt-faq{max-width:820px; margin:0 auto; display:flex; flex-direction:column; gap:10px}
.bt-q{background:var(--panel); border:1px solid var(--line); border-radius:14px; padding:0 18px}
.bt-q summary{list-style:none; cursor:pointer; padding:16px 0; font-family:var(--font-d); font-weight:600;
  display:flex; justify-content:space-between; align-items:center; gap:1em}
.bt-q summary::-webkit-details-marker{display:none}
.bt-q .bt-plus{color:var(--gold); font-size:1.3rem; transition:transform .2s}
.bt-q[open] .bt-plus{transform:rotate(45deg)}
.bt-q .bt-a{color:var(--mut); padding:0 0 16px; font-size:.95rem}
.bt-q .bt-a a{color:var(--violet2)}

/* footer */
footer{background:rgba(0,0,0,.32); border-top:1px solid var(--line); margin-top:40px; padding:42px 0 0}
.bt-foot-grid{display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:26px}
.bt-foot-grid h4{font-size:.95rem; color:#fff; margin:.2em 0 .8em}
.bt-foot-grid a{display:block; color:var(--mut); font-size:.9rem; padding:.22em 0}
.bt-foot-grid a:hover{color:var(--gold)}
.bt-foot-grid p{color:var(--mut2); font-size:.88rem}
.bt-foot-bottom{border-top:1px solid var(--line); margin-top:26px; padding:18px 0; display:flex;
  justify-content:space-between; align-items:center; gap:1rem; flex-wrap:wrap; color:var(--mut2); font-size:.83rem}
.bt-age{display:flex; align-items:center; gap:.5em}
.bt-b18{background:var(--pink); color:#fff; font-family:var(--font-d); font-weight:800; font-size:.82rem;
  padding:.18em .5em; border-radius:6px}

/* disclaimer */
.bt-disclaim{background:rgba(0,0,0,.4); border-top:1px solid var(--line)}
.bt-disclaim .bt-wrap{display:flex; gap:1rem; padding:18px; align-items:flex-start}
.bt-disclaim p{color:var(--mut2); font-size:.82rem; margin:0}
.bt-disclaim a{color:var(--gold)}

/* bottom nav (mobile) */
.bt-bottomnav{display:none}

/* reveal */
.bt-reveal{opacity:0; transform:translateY(18px); transition:opacity .6s ease, transform .6s ease}
.bt-reveal.bt-in{opacity:1; transform:none}

/* ---- responsive ---- */
@media(max-width:960px){
  .bt-hero-grid{grid-template-columns:1fr; gap:22px}
  .bt-cat-grid{grid-template-columns:repeat(2,1fr)}
  .bt-rel-grid{grid-template-columns:repeat(2,1fr)}
  .bt-show-grid{grid-template-columns:1fr}
  .bt-promo-grid{grid-template-columns:1fr}
  .bt-game-grid{grid-template-columns:repeat(4,1fr)}
  .bt-layout{grid-template-columns:1fr}
  .bt-toc{position:static; top:auto; margin:0 0 1.2rem; order:-1}
  .bt-toc h4::after{content:" (แตะเพื่อข้ามไปอ่าน)"; font-weight:400; text-transform:none; letter-spacing:0; color:var(--mut2)}
  .bt-nav-links{display:none}
  .bt-burger{display:inline-flex}
  .bt-nav-cta .bt-btn:not(.bt-burger){display:none}
  .bt-mobile-menu.bt-open{display:flex}
  /* mobile scroll-perf: drop blur repaint on sticky/fixed bars (fixes vuốt lag) */
  header.bt-site{backdrop-filter:none; -webkit-backdrop-filter:none; background:#0c3524}
  .bt-bottomnav{backdrop-filter:none; -webkit-backdrop-filter:none; background:#123a29}
  .bt-game-card .bt-gc-prov{backdrop-filter:none}
}
@media(max-width:560px){
  .bt-cat-grid,.bt-rel-grid{grid-template-columns:1fr 1fr}
  .bt-glist{grid-template-columns:1fr 1fr}
  .bt-game-grid{grid-template-columns:repeat(3,1fr); gap:9px}
  .bt-hero-stats{gap:1.1rem}
  body{padding-bottom:64px}
  .bt-bottomnav{display:flex; position:fixed; bottom:0; left:0; right:0; z-index:60;
    background:rgba(11,46,32,.97); backdrop-filter:blur(10px); border-top:1px solid var(--line);
    justify-content:space-around; align-items:center; height:62px; padding:0 6px}
  .bt-bottomnav a{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; color:var(--mut2);
    font-size:.76rem; font-family:var(--font-d); font-weight:600; flex:1; min-height:44px}
  .bt-bottomnav a .bt-ic{font-size:1.15rem}
  .bt-bottomnav a.bt-cent{background:linear-gradient(135deg,var(--gold),#ff9e2c); color:#2b1d05;
    width:54px;height:54px;border-radius:50%; justify-content:center; margin-top:-22px;
    box-shadow:0 8px 20px rgba(255,158,44,.5); flex:none}
  .bt-bottomnav a.bt-on{color:#fff}
}

/* DMCA badge (footer, gon, khong gay CLS) */
.bt-foot-meta{display:flex; align-items:center; gap:.9rem; flex-wrap:wrap}
.bt-dmca-badge{display:inline-flex; line-height:0; opacity:.82; transition:opacity .2s ease}
.bt-dmca-badge:hover{opacity:1}
.bt-dmca-badge img{height:21px; width:auto; display:block; border-radius:3px}
@media(max-width:640px){.bt-foot-meta{justify-content:space-between; width:100%}}




.bt-topbar-link{color:var(--bt-gold, var(--gold));font-weight:600;}

.bt-headwrap{display:flex;align-items:center;gap:1.1rem;max-width:var(--bt-maxw,1180px);
  margin:0 auto;padding:10px 18px;flex-wrap:wrap;}
.bt-logo{display:flex;align-items:center;gap:8px;color:inherit;}
.bt-logo span{font-family:var(--bt-font-d,var(--font-d));font-weight:800;}
.bt-logo-ball{color:var(--bt-gold,var(--gold));flex:none;}

/* bien the "cat" 3 cot (site nay chi co 3 hub, khong phai 4 nhu mac dinh pnt96) */
.bt-cat-grid{grid-template-columns:repeat(3,1fr);}

/* oddstable -- khoi RIENG cua bet-th.org (config hero "A split + bang keo"), pnt96 khong co */
.bt-oddstable{padding:24px 0;}
.bt-panel-note{font-size:.82rem;color:var(--bt-mut,var(--mut));margin-bottom:.6rem;}

/* highlights = bien the "jud-den" tren khung rel-grid/relcard cua pnt96, chi doi noi dung */
.bt-relcard{display:flex;align-items:flex-start;gap:10px;}
.bt-relcard p{margin:0;color:var(--bt-ink,var(--ink));font-size:.92rem;}

/* promo = 1 promocard don (thay vi promo-grid 2 the cua pnt96, theo yeu cau "khoi promo" so it) */
.bt-promo{max-width:900px;margin:0 auto;}
.bt-promo .bt-promocard{display:flex;flex-direction:row;align-items:stretch;}
.bt-promo .bt-pimg{flex:0 0 220px;aspect-ratio:auto;}
.bt-promo .bt-pimg img{width:100%;height:100%;}

/* intro-media / inline-media -- anh minh hoa trang con, khong co trong pnt96 */
.bt-intro-media img{width:100%;max-width:420px;height:auto;border-radius:var(--bt-radius,18px);
  margin-top:12px;border:1px solid var(--bt-line,var(--line));}
.bt-inline-media{display:flex;gap:14px;flex-wrap:wrap;margin:1.2rem 0;}
.bt-inline-media img{width:160px;height:auto;border-radius:12px;object-fit:cover;
  border:1px solid var(--bt-line,var(--line));}

/* provider strip = anh logo that (thay vi text-chip cua pnt96 .prov-chip) */
.bt-logo-tile{width:56px;height:56px;object-fit:contain;opacity:.85;filter:grayscale(.1);}

/* footer -- bien the 4 cot + "khoi giai" (fleague) theo config, tren khung foot-grid cua pnt96 */
/* pnt96 to mau tieu de cot qua the h4 that; o day dung <p class="fh"> de tranh nhay bac
   heading (footer dung sau h2 cuoi trang), nen phai tu dinh nghia lai dang chu tuong duong. */
.bt-fh{font-size:.95rem;color:#fff;margin:.2em 0 .8em;font-weight:700;}
/* pnt96 .foot-grid a{display:block} lam nhan ngan trong <li> vo 2-3 dong o 390px va bi
   qa_layout coi la nut click 2 dong (buttonLike). Doi thanh inline-block trong <li> de gate
   loai tru dung nhanh 'inline-block trong the P/LI/... = van ban inline, khong phai nut'. */
.bt-foot-grid li a{display:inline-block;}
.bt-fbrand{color:var(--bt-gold,var(--gold));font-family:var(--bt-font-d,var(--font-d));font-size:1.1rem;}
.bt-fleague p{color:var(--bt-mut2,var(--mut2));font-size:.85rem;}

/* ⛔ VA 23/09 (SOP8 P2): BO hoan toan hack gop 1 <nav class="bt-nav bt-bottomnav"> lam ca
   header-nav lan bottom-nav. Hack do khien mobile (<=768px) KHONG CO menu nao hien ra:
   .bt-nav-links{display:none} tai <=768px ma khong co burger/mobile-menu thay the, nguoi dung
   mobile khong dieu huong duoc sang trang nao khac ngoai trang dang xem. Gate g_links da vá
   (dem href-noi-bo DUY NHAT, tran = so trang+4) nen KHONG con ly do nhan doi DOM de ne tran nua.
   nav_html() (build.py) nay xuat DUNG 3 phan tu RIENG nhu pnt96 goc: .bt-nav-links (desktop),
   .bt-burger + .bt-mobile-menu (overlay <=768px), .bt-bottomnav that (icon co dinh <=560px).
   Ca 3 style da co san trong bt_derived_base.css (phai sinh tu pnt96), chi con an topbar +
   chua cho main o day. */
@media (max-width: 768px) {
  .bt-header-topbar,.bt-topbar{display:none;}
  main.bt-main{padding-bottom:64px;}
}

/* reveal-on-scroll BANG CSS THUAN, KHONG phu thuoc JS/IntersectionObserver.
   ⛔ Da do duoc 3 lan (qua shots.py) ban JS+observer de khoi ket o opacity:0 VINH VIEN
   (cuon nhanh hoac chup full-page resize viewport khien observer khong kip bat trung),
   khac han ban goc pnt96 ".reveal{opacity:0}" tinh (cung dinh bay nhung khong ai phat hien
   vi pnt96 khong bi kiem qua shots.py). Sua tan goc: dung @keyframes tu chay, fill-mode
   'both' dam bao KET THUC o opacity:1 sau .6s bat ke co JS hay khong, khong scroll cung xong.
   Ap dung truc tiep len [data-block] (moi khoi component da co san attribute nay), khong can
   class hay JS nao them. */
@keyframes bt-fade-up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
[data-block]{animation:bt-fade-up .6s ease both;}
@media (prefers-reduced-motion: reduce){
  [data-block]{animation:none;opacity:1;transform:none;}
}
