.tvbn-wrap{max-width:1152px;margin:30px auto;padding:26px;background:#faf8f2;border:1px solid #555;font-family:Arial,sans-serif;box-sizing:border-box}.tvbn-wrap *{box-sizing:border-box}.tvbn-wrap h2{text-align:center}.tvbn-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.tvbn-grid label{font-weight:700}.tvbn-grid input,.tvbn-grid select{width:100%;padding:10px;margin-top:6px;border:1px solid #aaa;background:#fff}.tvbn-wrap>form>button[type=submit]{display:block;margin:20px auto 8px;padding:12px 28px;font-weight:700}.tvbn-wrap #tvbn-msg{text-align:center}@media(max-width:700px){.tvbn-grid{grid-template-columns:1fr}}
/* Renderer checkpoint R4: immutable Chart Model -> 3:4 chart */
.tvbn-render{--water:#000;--wood:#006400;--earth:#FFA500;--fire:#FF0000;--metal:#0000CC;position:relative;width:min(100%,1152px);aspect-ratio:3/4;margin:24px auto;background:#fff;border:4px solid #000;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);font-family:Arial,Helvetica,sans-serif;color:#000;box-sizing:border-box;overflow:hidden}.tvbn-house,.tvbn-center{box-sizing:border-box;background:#fff}.tvbn-house{position:relative;border:1px solid #000;padding:8px 8px 34px 54px;overflow:hidden;font-size:13px}.tvbn-house header{position:relative;min-height:26px;text-align:center}.tvbn-house header strong{font-size:15px;font-weight:700}.tvbn-house header em{font-style:normal}.branch-stem{position:absolute;left:-48px;top:0;font-size:12px}.tieu-han{position:absolute;right:0;top:0;font-size:12px}.tvbn-main-stars{text-align:center;min-height:24px;margin:6px 0}.star{font-weight:700;line-height:1.22;white-space:normal}.star.main{font-size:18px;line-height:1.18}.star.water{color:var(--water)}.star.wood{color:var(--wood)}.star.earth{color:var(--earth)}.star.fire{color:var(--fire)}.star.metal{color:var(--metal)}.tvbn-star-block{display:grid;grid-template-columns:1fr 1fr;column-gap:5px}.tvbn-star-block.luu{margin-top:5px}.tvbn-star-block .right{text-align:left}.age-years{position:absolute;left:5px;top:34px;width:43px;font-size:9px;line-height:1.25}.ay-head,.ay{display:grid;grid-template-columns:18px 1fr;column-gap:2px}.tvbn-house footer{position:absolute;left:7px;right:7px;bottom:6px;font-size:11px}.tvbn-house footer span{margin-right:9px}.tvbn-house footer b{float:right}.tvbn-center{grid-column:2/4;grid-row:2/4;border:1px solid #000;padding:20px 28px;position:relative;overflow:hidden;color:#0645ad}.tvbn-center .watermark{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);font-size:280px;color:#777;opacity:.05;pointer-events:none}.tvbn-center .brand{text-align:center;color:#f00;font-size:23px;font-weight:700}.tvbn-center .slogan,.tvbn-center .contact,.tvbn-center .social{text-align:center;font-weight:700}.tvbn-center .social{font-size:11px;margin:5px 0}.tvbn-center .social a{margin:0 5px;color:#0645ad;text-decoration:none}.tvbn-center h3{text-align:center;color:#f00;font-size:21px;margin:12px 0 10px}.tvbn-center dl{display:grid;grid-template-columns:112px 1fr;gap:5px 8px;margin:0;position:relative;z-index:1;font-size:13px}.tvbn-center dt{font-weight:700}.tvbn-center dd{margin:0}.tvbn-center dd.code{color:#f00;font-weight:700}.seal-placeholder{position:absolute;right:14px;top:14px;width:58px;height:58px}.tvbn-b5{grid-area:1/1}.tvbn-b6{grid-area:1/2}.tvbn-b7{grid-area:1/3}.tvbn-b8{grid-area:1/4}.tvbn-b4{grid-area:2/1}.tvbn-b9{grid-area:2/4}.tvbn-b3{grid-area:3/1}.tvbn-b10{grid-area:3/4}.tvbn-b2{grid-area:4/1}.tvbn-b1{grid-area:4/2}.tvbn-b0{grid-area:4/3}.tvbn-b11{grid-area:4/4}@media(max-width:760px){.tvbn-render{width:1152px;max-width:none}.tvbn-chart-viewport{overflow:auto;touch-action:pan-x pan-y}}
/* Renderer checkpoint R5: layout contract / readable growth */
.tvbn-render{overflow:visible;grid-template-rows:auto auto auto auto;aspect-ratio:3/4;min-height:1536px;align-items:stretch}
.tvbn-house{min-width:0;min-height:360px;padding:10px 10px 38px 58px;overflow:visible;font-size:14px;line-height:1.2}
.tvbn-house header{min-height:30px}.tvbn-house header strong{font-size:16px}.branch-stem,.tieu-han{font-size:12px}
.star.main{font-size:20px}.star{font-size:15px;overflow-wrap:anywhere}.tvbn-star-block{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:7px;row-gap:0}
.age-years{width:47px;font-size:10px}.ay-head,.ay{grid-template-columns:19px 1fr;column-gap:3px}
.tvbn-house footer{font-size:12px}.tvbn-center{min-height:720px;overflow:visible;padding:24px 30px}.tvbn-center dl{font-size:14px;grid-template-columns:118px minmax(0,1fr)}
@media(max-width:760px){.tvbn-chart-viewport{overflow:auto}.tvbn-render{min-width:1152px;width:1152px}}
/* Renderer checkpoint R6: responsive viewport, zoom, fullscreen, PNG and print/PDF */
.tvbn-chart-shell{margin:20px auto;max-width:1152px}.tvbn-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:0 0 12px}.tvbn-toolbar button{margin:0;padding:8px 12px;cursor:pointer}.tvbn-zoom-label{min-width:52px;text-align:center;font-weight:700}.tvbn-chart-viewport{width:100%;overflow:auto;background:#fff}.tvbn-chart-stage{position:relative;width:100%;min-width:0}.tvbn-chart-stage>.tvbn-render{margin:0;transform-origin:top left}.tvbn-chart-viewport:fullscreen{padding:16px;background:#fff;overflow:auto}.tvbn-chart-viewport:fullscreen .tvbn-render{margin:0}
@page{size:A4 portrait;margin:9mm}
@media print{body.tvbn-printing *{visibility:hidden!important}.tvbn-printing .tvbn-chart-shell,.tvbn-printing .tvbn-chart-shell *{visibility:visible!important}.tvbn-printing .tvbn-toolbar{display:none!important}.tvbn-printing .tvbn-chart-shell{position:absolute;left:0;top:0;width:192mm;max-width:192mm;margin:0}.tvbn-printing .tvbn-chart-viewport{overflow:visible}.tvbn-printing .tvbn-chart-stage{width:192mm!important;height:auto!important}.tvbn-printing .tvbn-render{width:192mm!important;min-width:0!important;height:256mm!important;min-height:256mm!important;transform:none!important;margin:0 auto!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}}
.tvbn-instruction{margin:.25rem 0 1rem}.tvbn-leap{display:flex;gap:.55rem;align-items:center}.tvbn-leap input{width:auto}.tvbn-wrap #tvbn-confirm{margin:.75rem 0;font-weight:700}.tvbn-wrap #tvbn-msg{margin:.65rem 0}
/* R9 final visual assets */
.tvbn-center .social{display:flex;justify-content:center;align-items:center;gap:8px;margin:6px 0}.tvbn-center .social a{display:inline-flex;margin:0}.tvbn-center .social img{display:block;width:20px;height:20px}.tvbn-seal{position:absolute;right:14px;top:14px;width:58px;height:58px;object-fit:contain}.seal-placeholder{display:none}
/* RC2: live WordPress layout hardening. Keep the logical chart at 1152×1536 and scale the whole chart. */
body.tvbn-chart-page #secondary,body.tvbn-chart-page .widget-area{display:none!important}
body.tvbn-chart-page #primary,body.tvbn-chart-page .content-area{width:100%!important;max-width:none!important;float:none!important}
body.tvbn-chart-page .site-content .ast-container,body.tvbn-chart-page .site-content>.ast-container{max-width:1240px!important;padding-left:20px!important;padding-right:20px!important}
body.tvbn-chart-page .entry-content{max-width:none!important}
.tvbn-wrap{width:100%;max-width:1200px}
.tvbn-chart-shell{width:100%;max-width:1152px;overflow:visible}
.tvbn-chart-viewport{width:100%;overflow:hidden;background:#fff}
.tvbn-chart-viewport.is-pannable{overflow:auto}
.tvbn-chart-stage{position:relative;width:100%;min-width:0;margin:0 auto}
.tvbn-chart-stage>.tvbn-render{width:1152px!important;min-width:1152px!important;max-width:none!important;margin:0!important;transform-origin:top left!important}
.tvbn-render{overflow:visible!important;word-break:normal!important;overflow-wrap:normal!important}
.tvbn-render .star,.tvbn-render .tvbn-house,.tvbn-render .tvbn-center{word-break:normal!important;overflow-wrap:normal!important}
.tvbn-render .star{hyphens:none!important}
@media(max-width:760px){body.tvbn-chart-page .site-content .ast-container,body.tvbn-chart-page .site-content>.ast-container{padding-left:8px!important;padding-right:8px!important}.tvbn-chart-viewport{overflow:hidden}.tvbn-chart-viewport.is-pannable{overflow:auto}}
/* RC5 Thiên Bàn refinements: larger Yin-Yang watermark and larger seal at bottom-right. */
.tvbn-center .watermark{font-size:390px;opacity:.05;z-index:0}
.tvbn-center .tvbn-seal{right:18px;top:auto;bottom:18px;width:116px;height:116px;z-index:2}
.tvbn-center .brand,.tvbn-center .slogan,.tvbn-center .contact,.tvbn-center .social,.tvbn-center h3,.tvbn-center dl{position:relative;z-index:1}
/* RC6: center the complete Heaven Board information block as one unit.
   Labels and values stay left-aligned in two columns; only the whole block is centered. */
.tvbn-center dl{width:max-content;max-width:100%;margin-left:auto;margin-right:auto;grid-template-columns:118px minmax(250px,auto)}

/* RC7: highlight the viewed year in Đại hạn and Tiểu hạn age/year axis. */
.tvbn-house footer .dai-van{display:inline-flex;align-items:center;gap:10px;margin-right:9px;font-size:18px;font-weight:700;color:#000;line-height:1.05;padding:2px 6px;border:2px solid transparent;border-radius:999px}
.tvbn-house footer .dai-van i{font-style:normal;font-weight:700;color:#000}
.tvbn-house footer .dai-van.is-current{border-color:#f00}
.age-years .ay.is-view-year span{color:#f00;font-weight:700;border:1.5px solid #f00;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;min-width:17px;padding:0 2px;line-height:1.15}

/* RC8: Đại hạn functional palaces + tam hợp/xung chiếu guides */
.tvbn-render .dai-aspects{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;overflow:visible}
.tvbn-render .dai-aspects line{stroke:#6b7280;stroke-width:.12;vector-effect:non-scaling-stroke;opacity:.32}
.tvbn-house{z-index:auto}
.tvbn-center{z-index:4}
.tvbn-house header,.tvbn-house .tvbn-main-stars,.tvbn-house .tvbn-star-block,.tvbn-house .age-years,.tvbn-house .dai-palace,.tvbn-house footer{position:relative;z-index:3}
.tvbn-house .dai-palace{position:absolute;left:54px;right:8px;bottom:31px;text-align:center;color:#0000FF;font-size:13px;font-weight:700;line-height:1.1}
.tvbn-house footer{z-index:3}

/* RC10: keep Đại hạn functional palace on the existing bottom row. */
.tvbn-house footer{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:5px}
.tvbn-house footer .dai-van{justify-self:start;margin-right:0}
.tvbn-house footer .dai-palace{position:static;left:auto;right:auto;bottom:auto;justify-self:center;align-self:center;text-align:center;color:#0000FF;font-size:16px;font-weight:700;line-height:1.05}
.tvbn-house footer>b{float:none;justify-self:end}
/* Guide lines use the exact same current Đại hạn branch as the red Đại hạn marker; keep them subtle. */
.tvbn-render .dai-aspects line{stroke-width:.09;opacity:.20}

/* RC11: print the native 1152×1536 chart as one uniformly scaled 3:4 block on A4. */
@media print{
 .tvbn-printing .tvbn-chart-shell{position:absolute!important;left:0!important;top:0!important;width:192mm!important;height:256mm!important;max-width:none!important;margin:0!important;overflow:visible!important}
 .tvbn-printing .tvbn-chart-viewport{width:192mm!important;height:256mm!important;overflow:visible!important}
 .tvbn-printing .tvbn-chart-stage{position:relative!important;width:192mm!important;height:256mm!important;overflow:visible!important}
 .tvbn-printing .tvbn-render{position:absolute!important;left:0!important;top:0!important;width:1152px!important;min-width:1152px!important;max-width:none!important;height:1536px!important;min-height:1536px!important;margin:0!important;transform:scale(.62992126)!important;transform-origin:top left!important;grid-template-rows:repeat(4,384px)!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 .tvbn-printing .tvbn-house{min-height:0!important}
 .tvbn-printing .tvbn-center{min-height:0!important}
}

/* RC12: horizontal Tuổi/Năm block + exact Heaven Board perimeter anchors. */
.tvbn-house{
 padding:10px 10px 86px 10px;
 overflow:hidden;
}
.tvbn-house .branch-stem{left:0;white-space:nowrap}
.tvbn-house .tieu-han{right:0;white-space:nowrap}
.tvbn-house .age-years{
 position:absolute;
 left:7px;
 right:7px;
 top:auto;
 bottom:43px;
 width:auto;
 height:34px;
 font-size:11px;
 line-height:1;
 z-index:3;
}
.tvbn-house .age-years .ay-row{
 display:grid;
 grid-template-columns:28px repeat(8,minmax(0,1fr));
 align-items:center;
 width:100%;
 min-height:16px;
 column-gap:0;
}
.tvbn-house .age-years .ay-label{
 justify-self:start;
 font-size:11px;
 line-height:1;
 white-space:nowrap;
}
.tvbn-house .age-years .ay-value{
 justify-self:center;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-width:0;
 padding:1px 2px;
 border:1.5px solid transparent;
 border-radius:999px;
 white-space:nowrap;
 line-height:1;
 color:#000;
}
.tvbn-house .age-years .ay-ages .ay-value{font-size:11px}
.tvbn-house .age-years .ay-years .ay-label{font-size:7.7px}
.tvbn-house .age-years .ay-years .ay-value{font-size:7.7px}
.tvbn-house .age-years .ay-value.is-view-year{
 color:#f00;
 font-weight:700;
 border-color:#f00;
}
/* Neutralize the old vertical-axis highlight selector. */
.tvbn-house .age-years .ay.is-view-year span{border:0;padding:0;color:inherit;font-weight:inherit}
.tvbn-house footer{
 left:7px;
 right:7px;
 bottom:6px;
 min-height:29px;
 align-items:center;
}
.tvbn-house footer .dai-palace{
 font-size:11.2px;
 line-height:1;
 white-space:nowrap;
 color:#0000FF;
 font-weight:700;
}
/* The guide SVG sits above palace/Heaven-Board backgrounds, while text and markers remain above it. */
.tvbn-render .dai-aspects{z-index:2}
.tvbn-center{z-index:1}
.tvbn-center .brand,.tvbn-center .slogan,.tvbn-center .contact,.tvbn-center .social,.tvbn-center h3,.tvbn-center dl,.tvbn-center .tvbn-seal,.tvbn-center .watermark{position:relative;z-index:3}
.tvbn-house header,.tvbn-house .tvbn-main-stars,.tvbn-house .tvbn-star-block,.tvbn-house .age-years,.tvbn-house footer{z-index:3}

/* RC13: hard-anchor the palace bottom stack and the Thiên Bàn seal. */
.tvbn-house footer{
 position:absolute;
 left:7px;
 right:7px;
 bottom:6px;
 z-index:3;
}
.tvbn-house .age-years{
 position:absolute;
 left:7px;
 right:7px;
 top:auto;
 bottom:43px;
 z-index:3;
}
/* The seal is independent of the Thiên Bàn content flow: always bottom-right of the central board. */
.tvbn-center .tvbn-seal{
 position:absolute;
 right:18px;
 bottom:18px;
 top:auto;
 width:116px;
 height:116px;
 object-fit:contain;
 z-index:3;
}

/* RC14: larger horizontal Tuổi/Năm typography. Tuổi +25% from RC13; Năm = 80% of Tuổi. */
.tvbn-house .age-years .ay-ages .ay-label,
.tvbn-house .age-years .ay-ages .ay-value{font-size:13.75px}
.tvbn-house .age-years .ay-years .ay-label,
.tvbn-house .age-years .ay-years .ay-value{font-size:11px}
\n\n/* RC15: same guide layer on web/export and one-page centered A4 print. */
.tvbn-render .dai-aspects{z-index:5!important;display:block!important;visibility:visible!important;opacity:1!important}
.tvbn-render .dai-aspects line{opacity:.20}
.tvbn-house header,.tvbn-house .tvbn-main-stars,.tvbn-house .tvbn-star-block,.tvbn-house .age-years,.tvbn-house footer,
.tvbn-center .brand,.tvbn-center .slogan,.tvbn-center .contact,.tvbn-center .social,.tvbn-center h3,.tvbn-center dl,.tvbn-center .tvbn-seal,.tvbn-center .watermark{z-index:6}
@page{size:A4 portrait;margin:0}
@media print{
 html,body{width:210mm!important;height:297mm!important;margin:0!important;padding:0!important}
 body.tvbn-printing{margin:0!important;padding:0!important}
 .tvbn-printing .tvbn-chart-shell{position:absolute!important;left:9mm!important;top:8mm!important;width:192mm!important;height:256mm!important;max-width:none!important;margin:0!important;overflow:visible!important}
 .tvbn-printing .tvbn-chart-viewport,.tvbn-printing .tvbn-chart-stage{width:192mm!important;height:256mm!important;margin:0!important;overflow:visible!important}
 .tvbn-printing .tvbn-render{position:absolute!important;left:0!important;top:0!important;width:1152px!important;min-width:1152px!important;max-width:none!important;height:1536px!important;min-height:1536px!important;margin:0!important;transform:scale(.62992126)!important;transform-origin:top left!important;grid-template-rows:repeat(4,384px)!important}
}


/* RC16: make the approved Đại hạn guides actually visible on screen. Geometry unchanged. */
.tvbn-render .dai-aspects line{
  stroke:#6b7280!important;
  stroke-width:1px!important;
  vector-effect:non-scaling-stroke;
  opacity:.28!important;
}

/* RC16 print: size the chart directly in physical A4 units; do not compound the web transform. */
@page{size:A4 portrait;margin:0!important}
@media print{
  html,body{width:210mm!important;height:297mm!important;margin:0!important;padding:0!important;overflow:hidden!important}
  body.tvbn-printing *{visibility:hidden!important}
  .tvbn-printing .tvbn-chart-shell,.tvbn-printing .tvbn-chart-shell *{visibility:visible!important}
  .tvbn-printing .tvbn-toolbar{display:none!important}
  .tvbn-printing .tvbn-chart-shell{
    position:fixed!important;left:9mm!important;top:8mm!important;
    width:192mm!important;height:256mm!important;max-width:none!important;
    margin:0!important;padding:0!important;overflow:visible!important;
  }
  .tvbn-printing .tvbn-chart-viewport,.tvbn-printing .tvbn-chart-stage{
    position:relative!important;width:192mm!important;height:256mm!important;
    margin:0!important;padding:0!important;overflow:visible!important;
  }
  .tvbn-printing .tvbn-render{
    position:absolute!important;left:0!important;top:0!important;
    width:1152px!important;min-width:1152px!important;max-width:none!important;
    height:1536px!important;min-height:1536px!important;margin:0!important;
    transform:none!important;transform-origin:top left!important;
    zoom:0.62992126!important;
    grid-template-rows:repeat(4,384px)!important;
    print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important;
  }
}
\n\n/* RC17: one print chart only, preserve approved guide SVG, and keep A4 3:4 geometry. */
@page{size:A4 portrait;margin:0!important}
@media print{
  html,body{width:210mm!important;height:297mm!important;margin:0!important;padding:0!important;overflow:hidden!important}
  body.tvbn-printing *{visibility:hidden!important}
  body.tvbn-printing .tvbn-chart-shell,body.tvbn-printing .tvbn-chart-shell *{visibility:visible!important}
  body.tvbn-printing .tvbn-toolbar{display:none!important}
  body.tvbn-printing .tvbn-chart-shell{
    position:fixed!important;left:9mm!important;top:8mm!important;
    width:192mm!important;height:256mm!important;max-width:none!important;
    margin:0!important;padding:0!important;overflow:hidden!important;
    break-inside:avoid!important;page-break-inside:avoid!important;
  }
  body.tvbn-printing .tvbn-chart-viewport,
  body.tvbn-printing .tvbn-chart-stage{
    position:relative!important;width:192mm!important;height:256mm!important;
    margin:0!important;padding:0!important;overflow:hidden!important;
    break-inside:avoid!important;page-break-inside:avoid!important;
  }
  body.tvbn-printing .tvbn-render{
    position:absolute!important;left:0!important;top:0!important;
    width:1152px!important;min-width:1152px!important;max-width:none!important;
    height:1536px!important;min-height:1536px!important;margin:0!important;
    transform:scale(.62992126)!important;transform-origin:top left!important;
    zoom:1!important;grid-template-rows:repeat(4,384px)!important;
    print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important;
  }
  body.tvbn-printing .tvbn-render .dai-aspects{
    display:block!important;visibility:visible!important;opacity:1!important;z-index:5!important;
  }
  body.tvbn-printing .tvbn-render .dai-aspects line{
    stroke:#6b7280!important;stroke-width:1px!important;opacity:.38!important;
    vector-effect:non-scaling-stroke!important;
  }
}
\n\n/* RC18: print exactly one live chart. JS temporarily moves it to body as .tvbn-print-root. */
@page{size:A4 portrait;margin:0!important}
@media print{
  html,body{width:210mm!important;height:297mm!important;margin:0!important;padding:0!important;overflow:hidden!important}
  body.tvbn-printing > *:not(.tvbn-print-root){display:none!important}
  body.tvbn-printing > .tvbn-print-root{display:block!important;visibility:visible!important;position:absolute!important;left:9mm!important;top:8mm!important;width:192mm!important;height:256mm!important;margin:0!important;padding:0!important;overflow:hidden!important}
  body.tvbn-printing > .tvbn-print-root *{visibility:visible!important}
  body.tvbn-printing > .tvbn-print-root .tvbn-toolbar{display:none!important}
  body.tvbn-printing > .tvbn-print-root .tvbn-chart-viewport,
  body.tvbn-printing > .tvbn-print-root .tvbn-chart-stage{position:relative!important;width:192mm!important;height:256mm!important;margin:0!important;padding:0!important;overflow:hidden!important}
  body.tvbn-printing > .tvbn-print-root .tvbn-render{position:absolute!important;left:0!important;top:0!important;width:1152px!important;min-width:1152px!important;max-width:none!important;height:1536px!important;min-height:1536px!important;margin:0!important;transform:scale(.62992126)!important;transform-origin:top left!important;zoom:1!important;grid-template-rows:repeat(4,384px)!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
  body.tvbn-printing > .tvbn-print-root .dai-aspects{display:block!important;visibility:visible!important;opacity:1!important;z-index:5!important}
  body.tvbn-printing > .tvbn-print-root .dai-aspects line{stroke:#6b7280!important;stroke-width:1px!important;opacity:.38!important;vector-effect:non-scaling-stroke!important}
}

/* RC22: compact hạn summary. One Đại hạn per row; only the age and the digit 7 are red for Hội 7. */
.tvbn-center .limit-alerts{position:absolute;left:24px;right:150px;bottom:18px;z-index:6;color:#000;font-size:10.5px;line-height:1.3;font-weight:700;max-height:142px;overflow:hidden}
.tvbn-center .limit-line{color:#000;font-weight:700;margin-top:2px;white-space:nowrap;max-width:100%}
.tvbn-center .limit-line.limit-wrap{white-space:normal;line-height:1.22;margin-top:2px;margin-bottom:2px}
.tvbn-center .limit-dai,.tvbn-center .limit-item,.tvbn-center .limit-sep{color:#000;font-weight:700}
.tvbn-center .limit-sep{margin:0 1px}
.tvbn-center .limit-number{display:inline-flex;align-items:center;justify-content:center;color:#000;font-weight:700;line-height:1.05}
.tvbn-center .limit-number.hot{color:#f00;border:1.5px solid #f00;border-radius:999px;padding:1px 4px;font-weight:700}
.tvbn-center .limit-number.year{color:#000;border:0;padding:0;font-weight:700}
.tvbn-center .limit-count-hot{color:#f00;font-weight:700}
.tvbn-house footer .dai-van small{font-size:9px;font-weight:700;white-space:nowrap}


/* RC23: TLS + stricter 6/7 Sát alerts. */
.tvbn-center .tvbn-tls{position:absolute;top:10px;right:12px;z-index:8;color:#000;font-size:12px;line-height:1;font-weight:700;white-space:nowrap}


/* RC24: compact lime highlights + full website URL + larger Zalo number. */
.tvbn-render .star.tvbn-star-highlight{display:table;width:auto;max-width:100%;padding-left:2px;padding-right:2px}
.tvbn-center .contact .contact-zalo-number{font-size:1.5em;font-weight:700}


/* RC25: true text-width lime highlight + visibly 1.5x Zalo number. */
.tvbn-render .star.tvbn-star-highlight{display:block;width:auto;max-width:none;padding:0;background:transparent!important}
.tvbn-render .star.tvbn-star-highlight .tvbn-star-highlight-text{display:inline-block;width:auto;max-width:100%;padding:0 2px;line-height:1.22}
.tvbn-center .contact{display:flex;justify-content:center;align-items:baseline;gap:4px;white-space:nowrap}
.tvbn-center .contact .contact-zalo-number{font-size:150%!important;font-weight:700!important;line-height:1!important}


/* RC28: Thập Cát Tinh — compact blue outline, preserving elemental text color. */
.tvbn-render .star.tvbn-cat-star{display:block;width:auto;max-width:none;padding:0}
.tvbn-render .star.tvbn-cat-star .tvbn-cat-star-text{display:inline-block;width:auto;max-width:100%;padding:0 3px;line-height:1.22;border:1.5px solid #0066FF;border-radius:4px;background:transparent}

/* BN2: dedicated Bộ Ngành Heaven Board layout.
   Keep the Yin-Yang watermark out of document flow and reserve the lower-right seal area.
   Hạn alert data is intentionally not rendered in this separate thematic chart. */
.tvbn-center{overflow:hidden!important;padding:22px 28px 150px!important}
.tvbn-center .watermark{
 position:absolute!important;
 left:50%!important;
 top:50%!important;
 right:auto!important;
 bottom:auto!important;
 transform:translate(-50%,-50%)!important;
 margin:0!important;
 line-height:1!important;
 font-size:390px!important;
 z-index:0!important;
 pointer-events:none!important;
}
.tvbn-center .brand,.tvbn-center .slogan,.tvbn-center .contact,.tvbn-center .social,.tvbn-center h3,.tvbn-center dl{position:relative!important;z-index:6!important}
.tvbn-center dl{font-size:13px!important;gap:4px 8px!important}
.tvbn-center .limit-alerts{display:none!important}
.tvbn-center .tvbn-seal{position:absolute!important;right:18px!important;bottom:18px!important;top:auto!important;width:116px!important;height:116px!important;z-index:7!important}


/* BN3: restore 6/7 Sát Đại hạn–Tiểu hạn statistics in Thiên Bàn.
   Keep them in the lower-left safe area, clear of personal info and the seal. */
.tvbn-center .limit-alerts{display:block!important;position:absolute!important;left:24px!important;right:150px!important;bottom:18px!important;z-index:8!important;color:#000!important;font-size:10.5px!important;line-height:1.3!important;font-weight:700!important;max-height:142px!important;overflow:hidden!important}
.tvbn-center .limit-line{color:#000!important;font-weight:700!important;margin-top:2px!important;white-space:nowrap;max-width:100%}
.tvbn-center .limit-line.limit-wrap{white-space:normal!important;line-height:1.22!important;margin-top:2px!important;margin-bottom:2px!important}
.tvbn-center .limit-dai,.tvbn-center .limit-item,.tvbn-center .limit-sep{color:#000!important;font-weight:700!important}
.tvbn-center .limit-number.hot{color:#f00!important;border:1.5px solid #f00!important;border-radius:999px!important;padding:1px 4px!important;font-weight:700!important}
.tvbn-center .limit-number.year{color:#000!important;border:0!important;padding:0!important;font-weight:700!important}
.tvbn-center .limit-count-hot{color:#f00!important;font-weight:700!important}
