/* =====================================================================
   THẦY PHONG VŨ – Giao diện toàn site
   Tông màu: tím – đen – vàng ánh kim (chiêm tinh, bói toán, tâm linh)
   Nạp sau Flatsome (flatsome-main) cho mọi trang, bài viết, danh mục.
   ===================================================================== */
:root, body {
  --pg-bg0: #05030f;
  --pg-bg1: #120a2e;
  --pg-bg2: #22134f;
  --pg-card: rgba(255, 255, 255, 0.04);
  --pg-card-2: rgba(255, 255, 255, 0.07);
  --pg-line: rgba(232, 199, 125, 0.28);
  --pg-line-soft: rgba(255, 255, 255, 0.11);
  --pg-gold: #e8c77d;
  --pg-gold-2: #f8e6b4;
  --pg-gold-deep: #b8932f;
  --pg-violet: #b48cff;
  --pg-violet-2: #d7c3ff;
  --pg-purple: #7c3aed;
  --pg-text: #ece6fb;
  --pg-muted: #b3a7d6;
  --pg-serif: "Playfair Display", "Times New Roman", Georgia, serif;
  --pg-metal: linear-gradient(100deg, #b8932f 0%, #f8e6b4 28%, #e8c77d 50%, #fff3cf 66%, #c9a24a 100%);
  --pg-gold-btn: linear-gradient(135deg, #f8e6b4 0%, #e8c77d 45%, #b8932f 100%);

  /* Biến màu của Flatsome */
  --primary-color: #b48cff;
  --fs-color-primary: #b48cff;
  --fs-color-secondary: #e8c77d;
  --fs-color-alert: #e8c77d;
  --fs-color-success: #9fe3b5;
  --fs-experimental-link-color: #e8c77d;
  --fs-experimental-link-color-hover: #f8e6b4;
}

/* =====================================================================
   NỀN & CHỮ CƠ BẢN
   ===================================================================== */
html { background: var(--pg-bg0); }
body, #wrapper, #main, .page-wrapper, .content-area, .blog-wrapper { background-color: transparent; color: var(--pg-text); }
#wrapper {
  background:
    radial-gradient(70% 40% at 15% 0%, rgba(124, 58, 237, 0.30), transparent 60%),
    radial-gradient(50% 35% at 90% 15%, rgba(232, 199, 125, 0.10), transparent 60%),
    radial-gradient(60% 40% at 50% 100%, rgba(124, 58, 237, 0.18), transparent 60%),
    linear-gradient(180deg, var(--pg-bg1) 0%, var(--pg-bg0) 45%, #0a0620 100%);
  background-attachment: scroll;
}
#main { position: relative; }
#main::before {
  content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0; opacity: .45;
  background-image:
    radial-gradient(1.4px 1.4px at 8% 12%, #fff 60%, transparent 61%),
    radial-gradient(1px 1px at 22% 48%, #fff 60%, transparent 61%),
    radial-gradient(1.8px 1.8px at 37% 22%, #fff 60%, transparent 61%),
    radial-gradient(1px 1px at 58% 66%, #fff 60%, transparent 61%),
    radial-gradient(1.5px 1.5px at 74% 14%, #fff 60%, transparent 61%),
    radial-gradient(1.2px 1.2px at 88% 52%, #fff 60%, transparent 61%),
    radial-gradient(1px 1px at 12% 82%, #fff 60%, transparent 61%),
    radial-gradient(1.4px 1.4px at 47% 90%, #fff 60%, transparent 61%),
    radial-gradient(1px 1px at 93% 86%, #fff 60%, transparent 61%),
    radial-gradient(1.2px 1.2px at 66% 38%, rgba(232,199,125,.95) 60%, transparent 61%),
    radial-gradient(1px 1px at 30% 70%, rgba(232,199,125,.95) 60%, transparent 61%),
    radial-gradient(1.3px 1.3px at 80% 74%, rgba(180,140,255,.95) 60%, transparent 61%);
  background-size: 900px 900px;
}
#main > * { position: relative; z-index: 1; }
::selection { background: var(--pg-gold); color: #1d1400; }

body, p, li, td, th, dd, dt, .entry-content, .entry-summary { color: var(--pg-text); }
h1, h2, h3, h4, h5, h6, .heading-font { font-family: var(--pg-serif); color: var(--pg-gold-2); text-transform: none; letter-spacing: .01em; }
strong, b { color: var(--pg-gold-2); }
a { color: var(--pg-gold); }
a:hover { color: var(--pg-gold-2); }
hr, .is-divider { background-color: var(--pg-gold); }
.is-divider { background: linear-gradient(90deg, var(--pg-gold), transparent); }
.is-divider.small, .entry-divider.small { background: linear-gradient(90deg, var(--pg-gold), rgba(232,199,125,.1)); }
blockquote { color: var(--pg-violet-2); border-left: 3px solid var(--pg-gold); background: var(--pg-card); padding: 14px 18px; border-radius: 0 12px 12px 0; font-family: var(--pg-serif); font-style: italic; }
code, pre { background: rgba(6,3,22,.7); color: var(--pg-gold-2); border: 1px solid var(--pg-line-soft); }
.uppercase, .is-xsmall, .is-small { letter-spacing: .05em; }
.badge-outline .badge-inner { border-color: var(--pg-gold); color: var(--pg-gold-2); }
.badge-inner { background: rgba(6,3,22,.8); }

/* Chữ vàng ánh kim */
.tpv-metal,
.page-title .entry-title, .archive-page-header .page-title, .entry-header .entry-title,
.section-title-main, .post-title, .widget-title, .footer-widgets .widget-title,
.entry-content h2:not(.tpv-card__title):not(.ftwp-heading-target), .page-wrapper > .row-main > .col > h2,
.wp-block-heading, .yarpp-related h3, .tpv-tarot .tpv-title {
  background: var(--pg-metal);
  -webkit-background-clip: text; background-clip: text;
  color: transparent !important; -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(0,0,0,.35));
}
.entry-content h2.ftwp-heading, .entry-content h2.dau-muc-chi-so { background: var(--pg-metal); -webkit-background-clip: text; background-clip: text; color: transparent !important; -webkit-text-fill-color: transparent; }

/* =====================================================================
   HEADER & MENU
   ===================================================================== */
.header, .header-wrapper, .header-main, .header-bottom, .header-bg-color, .header-bg-container, .stuck .header-main, .header.show-on-scroll {
  background-color: rgba(7, 4, 22, 0.94) !important;
}
.header-wrapper { border-bottom: 1px solid var(--pg-line); box-shadow: 0 10px 40px rgba(0,0,0,.45); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.header-wrapper.stuck { border-bottom-color: rgba(232,199,125,.45); }
.header-main .top-divider { border-top: 0; }
.header-bottom { border-top: 1px solid var(--pg-line-soft); }
#logo img, .header_logo { filter: drop-shadow(0 0 12px rgba(232,199,125,.25)); }
#logo { width: auto !important; max-width: 320px; }
#logo img { max-height: 64px !important; width: auto; }
.stuck #logo img { max-height: 52px !important; }
.header-nav-main.nav > li > a, .header-nav .nav-top-link, .nav > li > a, .header-button .button, .nav-dropdown > li > a, .nav-sidebar > li > a {
  color: var(--pg-gold-2) !important; font-family: var(--pg-serif); font-weight: 600; letter-spacing: .04em; text-transform: none; font-size: 1rem;
}
.nav-uppercase > li > a { text-transform: none; }
.nav > li > a:hover, .nav > li.active > a, .nav > li.current-menu-item > a, .nav > li.current_page_parent > a, .nav-dropdown > li > a:hover { color: #fff !important; }
.nav-line-bottom > li > a:before, .nav-line-grow > li > a:before, .nav-line > li > a:before, .nav-box > li > a:hover, .nav-pills > li > a:hover, .nav-box > li.active > a, .nav-pills > li.active > a { background-color: var(--pg-gold) !important; }
.nav > li.current-menu-item > a::after, .header-nav-main.nav > li.active > a::after {
  content: ""; display: block; height: 2px; margin-top: 2px; background: var(--pg-metal); border-radius: 2px;
}
.nav-dropdown { background: rgba(10, 6, 32, 0.98) !important; border: 1px solid var(--pg-line) !important; border-radius: 12px; box-shadow: 0 20px 50px rgba(0,0,0,.6); padding: 10px 0; }
.nav-dropdown li a, .nav-dropdown .nav-column li a, .nav-dropdown > li > a { color: var(--pg-text) !important; border-color: var(--pg-line-soft) !important; font-size: .95rem; }
.nav-dropdown li a:hover { color: var(--pg-gold-2) !important; background: rgba(232,199,125,.08); }
.nav-dropdown .nav-dropdown-col > a, .nav-dropdown li.nav-dropdown-col > a { color: var(--pg-gold) !important; }
.nav-dropdown-has-arrow .nav-dropdown:before { border-bottom-color: rgba(10,6,32,.98) !important; }
.nav-dropdown-has-arrow .nav-dropdown:after { border-bottom-color: var(--pg-line) !important; }
.header .icon-menu, .header .icon-search, .header .icon-user, .header .icon-shopping-cart, .header .icon-shopping-basket, .header .icon-shopping-bag, .header .icon-angle-down, .header .header-button .icon-menu, .header .nav > li > a > i { color: var(--pg-gold-2) !important; }
.header .cart-icon strong { border-color: var(--pg-gold); color: var(--pg-gold-2); }
.header .cart-icon strong:after { border-color: var(--pg-gold); }
.header-divider { border-color: var(--pg-line-soft) !important; }
.header .nav-divider { border-color: var(--pg-line-soft); }
.header-search-form-wrapper, .header .searchform-wrapper { color: var(--pg-text); }

/* Ô tìm kiếm */
.searchform .flex-col input[type="search"], .searchform input.search-field, .searchform-wrapper input, input[type="search"] {
  background: rgba(6,3,22,.6) !important; color: var(--pg-text) !important; border: 1px solid var(--pg-line-soft) !important; border-radius: 999px 0 0 999px; box-shadow: none;
}
.searchform .ux-search-submit, .searchform .submit-button, .searchform button.icon { background: var(--pg-gold-btn) !important; color: #2a1d05 !important; border: 0 !important; border-radius: 0 999px 999px 0; }
.searchform .ux-search-submit i { color: #2a1d05 !important; }
.live-search-results, .autocomplete-suggestions { background: rgba(10,6,32,.98) !important; border: 1px solid var(--pg-line) !important; color: var(--pg-text); border-radius: 12px; }
.autocomplete-suggestion { color: var(--pg-text); border-color: var(--pg-line-soft) !important; }
.autocomplete-suggestion:hover, .autocomplete-selected { background: rgba(232,199,125,.1) !important; }

/* Menu di động (off-canvas) */
.mobile-sidebar, .off-canvas-left .mfp-content, .off-canvas-right .mfp-content, .off-canvas-center .mfp-content, .off-canvas:not(.off-canvas-center) .mfp-content, .off-canvas .mfp-content.mfp-with-anim {
  background: linear-gradient(180deg, #120a2e, #05030f) !important; color: var(--pg-text) !important; box-shadow: 0 0 60px rgba(0,0,0,.6);
}
.off-canvas .mfp-close, .mfp-close { color: var(--pg-gold-2) !important; }
.nav-sidebar > li, .nav-sidebar > li > ul > li, .nav-vertical > li, .nav-vertical > li + li, .nav-vertical-fly-out > li + li { border-color: var(--pg-line-soft) !important; }
.nav-sidebar li a, .nav-sidebar > li > a, .nav-vertical > li > a, .nav-vertical li li a, .mobile-sidebar .nav > li > a { color: var(--pg-gold-2) !important; }
.nav-sidebar li a:hover, .nav-vertical li.active > a { color: #fff !important; background: rgba(232,199,125,.08); }
.nav-sidebar li.active > a, .nav-vertical > li.active > a { color: var(--pg-gold) !important; }
.sidebar-menu .social-icons a { color: var(--pg-gold-2); border-color: var(--pg-line) !important; }
.mobile-sidebar .searchform-wrapper input { border-radius: 999px 0 0 999px; }
.toggle { color: var(--pg-gold) !important; }

/* =====================================================================
   FOOTER
   ===================================================================== */
.footer-wrapper { background: #04020d; border-top: 1px solid var(--pg-line); }
.footer-widgets, .footer-widgets.dark, .footer-1, .footer-2, .footer-widgets .row.dark { background: linear-gradient(180deg, #0a0620 0%, #04020d 100%) !important; color: var(--pg-text) !important; border: 0; }
.footer-widgets .widget-title, .footer-widgets .widget .widget-title, .footer-widgets h3 { font-family: var(--pg-serif); text-transform: none; letter-spacing: .02em; font-size: 1.1rem; }
.footer-widgets .widget, .footer-widgets .widget p, .footer-widgets .widget li, .footer-widgets .textwidget { color: var(--pg-muted) !important; }
.footer-widgets a, .footer-widgets .widget a, .dark .widget a { color: var(--pg-gold) !important; }
.footer-widgets a:hover { color: var(--pg-gold-2) !important; }
.footer-widgets .is-divider { background: linear-gradient(90deg, var(--pg-gold), transparent) !important; }
.absolute-footer, .absolute-footer.dark { background: #04020d !important; color: var(--pg-muted) !important; border-top: 1px solid var(--pg-line-soft); }
.absolute-footer a, .footer-nav a, .copyright-footer, .footer-text { color: var(--pg-muted) !important; }
.absolute-footer a:hover, .footer-nav a:hover { color: var(--pg-gold-2) !important; }
.copyright-footer strong { color: var(--pg-gold) !important; }
.footer-nav.links > li > a { text-transform: none; }
.footer-wrapper .img-inner.dark, .footer-wrapper .img-inner { background: transparent; }
.footer-wrapper .stack .img img { opacity: .9; border-radius: 10px; }
.back-to-top { background: var(--pg-gold-btn) !important; color: #2a1d05 !important; border: 0 !important; box-shadow: 0 8px 24px rgba(232,199,125,.3); }
.back-to-top i { color: #2a1d05 !important; }

/* =====================================================================
   NÚT & FORM (toàn site)
   ===================================================================== */
.button, button, input[type="submit"], input[type="button"], .wp-block-button__link {
  font-family: var(--pg-serif); text-transform: none; letter-spacing: .02em; font-weight: 700;
}
.button.primary, .button.alert, .button.secondary, .button.success, .button:not(.is-outline):not(.is-link):not(.is-underline):not(.tpv-btn):not(.tpv-veil__skip):not(.plain):not(.icon),
input[type="submit"]:not(.tpv-btn), .wp-block-button__link, .wpcf7-submit, .tpv-tarot .tpv-btn-primary {
  background: var(--pg-gold-btn) !important; color: #2a1d05 !important; border: 0 !important; border-radius: 999px !important;
  box-shadow: 0 10px 30px rgba(232,199,125,.22), inset 0 1px 0 rgba(255,255,255,.5);
  transition: transform .25s ease, box-shadow .25s ease;
}
.button.primary:hover, .button.alert:hover, .button.secondary:hover, input[type="submit"]:not(.tpv-btn):hover, .wp-block-button__link:hover {
  transform: translateY(-2px); box-shadow: 0 16px 40px rgba(232,199,125,.36), inset 0 1px 0 rgba(255,255,255,.6); color: #1d1400 !important;
}
.button.is-outline { border: 1px solid var(--pg-gold) !important; color: var(--pg-gold-2) !important; background: rgba(255,255,255,.03) !important; border-radius: 999px !important; }
.button.is-outline:hover { background: rgba(232,199,125,.12) !important; color: #fff !important; }
.button.is-link, .button.is-underline { color: var(--pg-gold) !important; }
.button.icon, .button.icon.circle { border-color: var(--pg-gold) !important; color: var(--pg-gold-2) !important; background: transparent !important; }
.header .button { box-shadow: none; }

input[type="text"]:not(.tpv-input), input[type="email"]:not(.tpv-input), input[type="tel"]:not(.tpv-input), input[type="number"]:not(.tpv-input),
input[type="password"], input[type="url"], input[type="date"], select:not(.tpv-input), textarea, .select2-container .select2-choice, .select2-container .select2-selection {
  background-color: rgba(6, 3, 22, 0.6) !important; color: var(--pg-text) !important; border: 1px solid var(--pg-line-soft) !important; border-radius: 10px; box-shadow: none !important;
  transition: border-color .25s, box-shadow .25s;
}
input:not(.tpv-input):focus, select:not(.tpv-input):focus, textarea:focus { border-color: var(--pg-gold) !important; box-shadow: 0 0 0 4px rgba(232,199,125,.16) !important; outline: none; }
input::placeholder, textarea::placeholder { color: rgba(179,167,214,.55) !important; }
select:not(.tpv-input) {
  color-scheme: dark; -webkit-appearance: none; appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'><path d='M1 1l6 6 6-6' fill='none' stroke='%23e8c77d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>") !important;
  background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 14px 9px !important; padding-right: 36px;
}
select:not(.tpv-input) option { color: #1a1233; background: #fff; }
label, legend { color: var(--pg-gold-2); font-family: var(--pg-serif); font-weight: 600; }
fieldset { border-color: var(--pg-line-soft); }
input[type="checkbox"], input[type="radio"] { accent-color: var(--pg-gold); }

/* Nền hồng/trắng cứng trong form kinh dịch, xem bói hàng ngày, tình duyên */
.col-inner[style*="background-color:rgb(255, 232, 232)"], .col-inner[style*="background-color: rgb(255, 232, 232)"] {
  background-color: var(--pg-card) !important; border: 1px solid var(--pg-line-soft); border-radius: 16px;
}
p[style*="color: red"], p[style*="color:red"], span[style*="color: red"], span[style*="color:red"], strong[style*="color: red"] { color: var(--pg-gold) !important; font-family: var(--pg-serif); }
h1[style*="color:#f00"], h1[style*="color: #f00"] { color: #ff9a9a !important; font-size: 1.2rem; }
.row-box-shadow-1 > .col > .col-inner, .row-box-shadow-2 > .col > .col-inner, .row-box-shadow-3 > .col > .col-inner, .box-shadow-1, .box-shadow-2, .box-shadow-3 {
  background: var(--pg-card) !important; border: 1px solid var(--pg-line-soft); border-radius: 16px; box-shadow: 0 14px 40px rgba(0,0,0,.35) !important;
}
.col-inner[style*="background-color:rgba(10, 6, 32"], .col-inner[style*="background-color: rgba(10, 6, 32"] { border: 1px solid var(--pg-line); border-radius: 18px; backdrop-filter: blur(6px); }

/* =====================================================================
   SECTION / TIÊU ĐỀ (Flatsome UX Builder)
   ===================================================================== */
.section-title { margin-bottom: .6em; }
.section-title b { border-color: var(--pg-line) !important; opacity: 1; }
.section-title-main { font-family: var(--pg-serif); font-size: clamp(1.3rem, 2.8vw, 1.75rem); font-weight: 700; text-transform: none; letter-spacing: .01em; }
.section-title-normal { border-bottom: 1px solid var(--pg-line-soft); }
.section-title-normal span { border-bottom-color: var(--pg-gold) !important; }
.section-title-container + p { color: var(--pg-muted); }
.section-bg-overlay { display: none; }
.dark, .dark p, .dark li, .dark .section-title-main, .dark h2, .dark h3 { color: var(--pg-text); }
.gap-element { opacity: 0; }

/* Tiêu đề trang (page_header) & lưu trữ */
.page-title { background: transparent; border-bottom: 1px solid var(--pg-line); }
.page-title-inner { padding-top: 34px; padding-bottom: 26px; }
.page-title .entry-title, .archive-page-header .page-title {
  font-family: var(--pg-serif); font-weight: 700; font-size: clamp(1.7rem, 4vw, 2.7rem); letter-spacing: .01em; line-height: 1.2; display: inline-block; padding: 0 .35em; text-transform: none;
}
.page-title .title-wrapper, .archive-page-header .col { position: relative; }
.page-title .title-wrapper::before, .archive-page-header .col::before {
  content: "✦"; display: block; color: var(--pg-gold); font-size: 1rem; letter-spacing: .5em; margin-bottom: 6px; text-shadow: 0 0 12px rgba(232,199,125,.7);
}
.page-title .title-wrapper::after, .archive-page-header .col::after {
  content: ""; display: block; width: min(320px, 60%); height: 1px; margin: 14px auto 0; background: linear-gradient(90deg, transparent, var(--pg-gold), transparent);
}
.page-title .title-breadcrumbs, .page-title .breadcrumbs { color: var(--pg-muted); }
.archive-page-header { border-bottom: 1px solid var(--pg-line); margin-bottom: 20px; padding-bottom: 10px; }
.archive-page-header .taxonomy-description { color: var(--pg-muted); }
.page-title.dark .entry-title, .page-title.light .entry-title { -webkit-text-fill-color: transparent; }

/* =====================================================================
   NỘI DUNG BÀI VIẾT / TRANG
   ===================================================================== */
.entry-content, .page-wrapper > .row-main > .col { font-size: 1.02rem; line-height: 1.8; }
.entry-content h2, .page-wrapper > .row-main > .col > h2 { font-size: clamp(1.4rem, 3vw, 1.9rem); font-weight: 700; margin: 2em 0 .8em; padding-left: 18px; position: relative; line-height: 1.3; }
.entry-content h2::before, .page-wrapper > .row-main > .col > h2::before { content: ""; position: absolute; left: 0; top: .2em; bottom: .2em; width: 3px; border-radius: 3px; background: var(--pg-metal); }
.entry-content h3, .page-wrapper > .row-main > .col > h3 { color: var(--pg-violet-2); font-size: 1.22rem; margin: 1.5em 0 .6em; }
.entry-content h4 { color: var(--pg-gold); font-size: 1.05rem; text-transform: uppercase; letter-spacing: .06em; }
.entry-content ul:not([class]) li::marker, .page-wrapper > .row-main > .col > ul li::marker { color: var(--pg-gold); content: "✦  "; }
.entry-content ol:not([class]) li::marker { color: var(--pg-gold); font-weight: 700; }
.entry-content ul:not([class]), .entry-content ol:not([class]) { padding-left: 1.4em; margin-left: 0; }
.entry-content ul:not([class]) li, .entry-content ol:not([class]) li { margin-bottom: .6em; }
.entry-content img, .entry-image img, .wp-block-image img { border-radius: 14px; }
.entry-content figure figcaption, .wp-caption-text { color: var(--pg-muted); font-style: italic; }
.entry-content table, .entry-content table td, .entry-content table th { border-color: var(--pg-line-soft); color: var(--pg-text); }
.entry-content table th { background: rgba(232,199,125,.1); color: var(--pg-gold-2); }
.entry-content table tr:nth-child(even) td { background: rgba(255,255,255,.02); }
/* Bảng biểu đồ thần số học trong bài viết */
table.bieudo { margin: 1em auto; border-collapse: separate !important; border-spacing: 4px !important; background: rgba(232,199,125,.14); border: 1px solid var(--pg-line) !important; border-radius: 14px; padding: 4px; }
table.bieudo td.bieudo, td.bieudo { background: rgba(8,5,26,.75); border: 0 !important; border-radius: 9px; height: 64px; min-width: 64px; text-align: center !important; font-family: var(--pg-serif); font-size: 1.35rem; font-weight: 700; color: var(--pg-gold-2) !important; text-shadow: 0 0 12px rgba(232,199,125,.5); }
td.bieudo strong { color: var(--pg-gold-2); }
.entry-content .dau-muc-chi-so { margin-top: 1.6em; }

/* Bài đơn: header, meta, tác giả, chia sẻ, điều hướng */
.entry-header .entry-category a, .entry-meta, .entry-meta a, .posted-on, .byline, .post-meta, .entry-date { color: var(--pg-muted) !important; }
.entry-meta a:hover { color: var(--pg-gold-2) !important; }
.entry-category a { color: var(--pg-gold) !important; letter-spacing: .12em; }
.entry-header .entry-title { font-size: clamp(1.6rem, 3.6vw, 2.4rem); }
.entry-image .badge.post-date .badge-inner { background: rgba(6,3,22,.85) !important; border: 1px solid var(--pg-gold) !important; color: var(--pg-gold-2); }
footer.entry-meta { color: var(--pg-muted); border-top: 1px solid var(--pg-line-soft); border-bottom: 0; padding-top: 14px; }
.author-box, .entry-author { background: var(--pg-card); border: 1px solid var(--pg-line-soft); border-radius: 16px; padding: 18px; }
.author-box .blog-author-image img, .avatar { border-radius: 50%; border: 2px solid var(--pg-gold); }
.author-box .author-name, .entry-author h5, .entry-author h4, .author-box h5 { color: var(--pg-gold-2); font-family: var(--pg-serif); }
.blog-share .is-divider { background: linear-gradient(90deg, transparent, var(--pg-gold), transparent); }
.social-icons .button.icon, .share-icons .button.icon { border-color: var(--pg-line) !important; color: var(--pg-gold-2) !important; background: var(--pg-card) !important; }
.social-icons .button.icon:hover { background: var(--pg-gold-btn) !important; color: #2a1d05 !important; border-color: transparent !important; }
.next-prev-nav, .flex-row.next-prev-nav.bt.bb, .bt, .bb { border-color: var(--pg-line-soft) !important; }
.next-prev-nav a, .navigation-post a { color: var(--pg-gold) !important; }
.next-prev-nav .hide-for-small { color: var(--pg-muted); }
.next-prev-nav .flex-col a:hover { color: var(--pg-gold-2) !important; }
.entry-content .wp-block-quote, .entry-content .has-background { background: var(--pg-card) !important; color: var(--pg-text) !important; }

/* Bài liên quan (YARPP) */
.yarpp-related { margin-top: 30px; padding: 20px; border: 1px solid var(--pg-line-soft); border-radius: 16px; background: var(--pg-card); }
.yarpp-related h3 { font-family: var(--pg-serif); font-size: 1.25rem; margin-bottom: 12px; }
.yarpp-related ol, .yarpp-related ul { margin: 0; padding-left: 1.2em; }
.yarpp-related li { margin-bottom: .5em; color: var(--pg-muted); }
.yarpp-related li::marker { color: var(--pg-gold); }
.yarpp-related a { color: var(--pg-gold-2); text-decoration: none; }
.yarpp-related a:hover { color: #fff; }
.yarpp-thumbnail { background: var(--pg-card) !important; border: 1px solid var(--pg-line-soft) !important; border-radius: 12px; }
.yarpp-thumbnail-title { color: var(--pg-gold-2) !important; }

/* Danh mục / lưu trữ: danh sách bài */
.blog-archive article.post, .post-list article { background: var(--pg-card); border: 1px solid var(--pg-line-soft); border-radius: 18px; padding: 22px; margin-bottom: 26px; transition: border-color .3s, transform .3s; }
.blog-archive article.post:hover { border-color: var(--pg-line); transform: translateY(-2px); }
.blog-archive article .entry-title { font-size: 1.45rem; }
.blog-archive article .entry-title a { color: inherit; }
.entry-summary p { color: var(--pg-muted); }
.more-link, .entry-summary .button { margin-top: 8px; }
.row-divided > .col + .col:not(.large-12), .row-divided > .col-fit + .col { border-left: 1px solid var(--pg-line-soft); }
.blog-wrapper.blog-archive .archive-page-header .page-title.uppercase { text-transform: none; }

/* Phân trang */
.nav-pagination li a, .nav-pagination li span, .page-numbers li a, .page-numbers li span, .wpdiscuz-comment-pagination a { border-color: var(--pg-line) !important; color: var(--pg-gold-2) !important; background: var(--pg-card); border-radius: 999px !important; }
.nav-pagination li a:hover, .nav-pagination li .current, .page-numbers .current { background: var(--pg-gold-btn) !important; color: #2a1d05 !important; border-color: transparent !important; }

/* =====================================================================
   THẺ BÀI VIẾT (blog_posts / box)
   ===================================================================== */
.has-shadow { box-shadow: none; }
.has-shadow > .col > .col-inner, .has-shadow .box:not(.box-overlay):not(.box-shade), .has-shadow.box:not(.box-overlay):not(.box-shade), .dark .has-shadow.box:not(.box-overlay):not(.box-shade), .box-shadow-1, .box-shadow-2, .box-shadow-3 { background-color: var(--pg-card) !important; }
.has-shadow > .col > .col-inner { border: 1px solid var(--pg-line-soft); border-radius: 16px; overflow: hidden; transition: border-color .3s, transform .3s, box-shadow .3s; }
.has-shadow > .col:hover > .col-inner { border-color: var(--pg-line); transform: translateY(-3px); box-shadow: 0 18px 40px rgba(0,0,0,.45), 0 0 30px rgba(232,199,125,.08); }
.box-blog-post .box-text, .box-badge .box-text, .box-normal .box-text, .box-bounce .box-text, .box-push .box-text, .box-vertical .box-text { background-color: transparent !important; color: var(--pg-text); }
.box-image { background: #0a0620; }
.box-blog-post .box-image img { opacity: .92; transition: opacity .3s, transform .5s; }
.box-blog-post:hover .box-image img { opacity: 1; }
.post-title { font-family: var(--pg-serif); font-weight: 700; font-size: 1.02em; line-height: 1.35; text-transform: none !important; }
.box-text .is-divider { height: 2px; margin: .6em 0; }
.box-text .from_the_blog_excerpt, .box-text .post-meta, .box-text p { color: var(--pg-muted); font-size: .92em; }
.box-badge .badge-inner { background: var(--pg-gold) !important; color: #2a1d05 !important; border: 0; }
.box-badge .badge-inner .post-date-day, .box-badge .badge-inner .post-date-month { color: #2a1d05; }
.box-text .post-title a { color: inherit; }
.box-badge .box-text .post-title, .box-text .post-title.is-xsmall { color: var(--pg-gold-2); background: none; -webkit-text-fill-color: initial; }
.box-overlay .box-text, .box-shade .box-text { color: #fff !important; }
.box-overlay .box-text .post-title { color: #fff !important; background: none; -webkit-text-fill-color: initial; }
.box-image .image-cover { border-radius: 0; }
.is-selected .box, .box.has-hover:hover .box-text { background-color: transparent !important; }

/* =====================================================================
   SIDEBAR & WIDGET
   ===================================================================== */
.widget { margin-bottom: 28px; padding: 18px; background: var(--pg-card); border: 1px solid var(--pg-line-soft); border-radius: 16px; }
.widget-title, .widget .widget-title, .widget .wp-block-heading { font-family: var(--pg-serif); text-transform: none; letter-spacing: .02em; font-size: 1.1rem; }
.widget .is-divider { background: linear-gradient(90deg, var(--pg-gold), transparent); height: 2px; }
.widget ul li, .widget_recent_entries li, .wp-block-latest-posts li { border-color: var(--pg-line-soft) !important; color: var(--pg-muted); }
.widget a, .widget li a, .wp-block-latest-posts__post-title, .recent-blog-posts a { color: var(--pg-gold-2) !important; }
.widget a:hover, .wp-block-latest-posts__post-title:hover { color: #fff !important; }
.recent-blog-posts { border-color: var(--pg-line-soft) !important; }
.recent-blog-posts-li + .recent-blog-posts-li .recent-blog-posts { border-top: 1px dashed var(--pg-line-soft); }
.recent-blog-posts .post-date .badge-inner { border: 1px solid var(--pg-gold) !important; border-radius: 12px; }
.recent-blog-posts .post-date-day, .recent-blog-posts .post-date-month { color: #fff; }
.widget_search .searchform input { border-radius: 999px 0 0 999px; }
.widget_categories li a, .widget_tag_cloud a { color: var(--pg-gold-2) !important; }
.tagcloud a, .widget_tag_cloud a { background: var(--pg-card); border: 1px solid var(--pg-line-soft); border-radius: 999px; padding: 4px 12px; margin: 0 6px 6px 0; display: inline-block; font-size: .85rem !important; }
.widget_calendar table, .widget_calendar caption { color: var(--pg-text); }
.widget select { width: 100%; }
.post-sidebar .widget:last-child { margin-bottom: 0; }

/* =====================================================================
   MỤC LỤC (Fixed TOC)
   ===================================================================== */
#ftwp-container, .ftwp-in-post #ftwp-container, .ftwp-widget, #ftwp-container-outer .ftwp-wrap {
  background: rgba(10,6,32,.96) !important; color: var(--pg-text) !important; border: 1px solid var(--pg-line) !important; border-radius: 14px; box-shadow: 0 16px 40px rgba(0,0,0,.5) !important;
}
#ftwp-header, .ftwp-header, #ftwp-header-title, .ftwp-header-title { background: rgba(232,199,125,.1) !important; color: var(--pg-gold-2) !important; font-family: var(--pg-serif); border-radius: 14px 14px 0 0; }
#ftwp-contents a, .ftwp-list a, .ftwp-anchor { color: var(--pg-text) !important; }
#ftwp-contents a:hover, .ftwp-anchor:hover, .ftwp-active > .ftwp-anchor, .ftwp-anchor.ftwp-active { color: var(--pg-gold-2) !important; }
.ftwp-list, .ftwp-list-nest { color: var(--pg-muted) !important; }
.ftwp-list .ftwp-item::marker, .ftwp-list li::marker { color: var(--pg-gold); }
#ftwp-header-control, .ftwp-header-control, .ftwp-colexp { color: var(--pg-gold) !important; }
#ftwp-container .ftwp-icon-number { color: var(--pg-gold) !important; }

/* =====================================================================
   BÌNH LUẬN wpDiscuz
   ===================================================================== */
#wpdcom, #wpdcom .wpd-comment-text, #wpdcom .wpd-comment-text p, #wpdcom .wpd-thread-info, #wpdcom .wpd-form-head .wpd-auth, #wpdcom .wpd-login,
#wpdcom .wpd-thread-filter .wpd-filter, #wpdcom .wpd-vote-result, #wpdcom .wpd-reply-button, #wpdcom .wpd-form-foot label, #wpdcom .wpdiscuz-subscribe-form-intro,
#wpdcom .wpdiscuz-subscribe-form-option, #wpdcom .wpd-sbs-toggle, #wpdcom .wpd-load-more-submit, #wpdcom .wpd-comment-date, #wpdcom .wpd-thread-info::before, #wpdcom .wpd-form-foot .wpd-form-row .wpd-form-col-right { color: var(--pg-text); }
#wpdcom .wpd-comment-date, #wpdcom .wpd-vote-result, #wpdcom .wpd-thread-info { color: var(--pg-muted); }
#wpdcom .wpd-comment-author, #wpdcom .wpd-comment-author a, #wpdcom .wpd-thread-info.wpd-active, #wpdcom .wpd-filter.wpd-active, #wpdcom .wpd-sbs-toggle i { color: var(--pg-gold-2) !important; }
#wpdcom .wpd-blog-guest .wpd-comment-author, #wpdcom .wpd-blog-guest .wpd-comment-author a { color: var(--pg-gold-2) !important; }
#wpdcom .wpd-form-head { border-bottom: 1px solid var(--pg-line); }
#wpdcom .wpd-thread-head { border-bottom: 1px solid var(--pg-line-soft); }
#wpdcom .wpd-thread-info.wpd-active { border-bottom-color: var(--pg-gold); }
#wpdcom .wpd-form-wrap, #wpdcom .wpd-comment-wrap { background: var(--pg-card); border: 1px solid var(--pg-line-soft); border-radius: 16px; padding: 16px 18px; margin-bottom: 14px; }
#wpdcom.wpd-layout-2 .wpd-comment .wpd-comment-wrap { border-left: 1px solid var(--pg-line-soft); }
#wpdcom.wpd-layout-2 .wpd-comment .wpd-comment-right { border-left: 0; }
#wpdcom .wpd-comment-header { border-bottom: 0; }
#wpdcom .wpd-avatar img { border-color: var(--pg-gold) !important; border-radius: 50%; }
#wpdcom .wpd-comment-footer { border-top: 1px dashed var(--pg-line-soft); }
#wpdcom .wpd-vote-up, #wpdcom .wpd-vote-down, #wpdcom .wpd-reply-button i, #wpdcom .wpd-comment-share i { color: var(--pg-muted); }
#wpdcom .wpd-vote-up:hover, #wpdcom .wpd-reply-button:hover { color: var(--pg-gold-2); }
#wpdcom .wpd-editor-wraper, #wpdcom .wpd-textarea-wrap, #wpdcom .ql-editor, #wpdcom .ql-container, #wpdcom .wpdiscuz-item input, #wpdcom .wpd-form-row input, #wpdcom .wpdiscuz-subscribe-form-email input {
  background-color: rgba(6, 3, 22, 0.6) !important; color: var(--pg-text) !important; border-color: var(--pg-line-soft) !important; border-radius: 10px;
}
#wpdcom .ql-editor.ql-blank::before, #wpdcom input::placeholder { color: rgba(179,167,214,.55) !important; }
#wpdcom .wpd-editor-toolbar, #wpdcom .ql-toolbar { background: rgba(255,255,255,.04) !important; border-color: var(--pg-line-soft) !important; }
#wpdcom .ql-toolbar .ql-stroke { stroke: var(--pg-muted); }
#wpdcom .ql-toolbar .ql-fill { fill: var(--pg-muted); }
#wpdcom .wpd-field-icon, #wpdcom .wpd-editor-char-counter { color: var(--pg-muted); }
#wpdcom .wpd-prim-button, #wpdcom .wpdiscuz-subscribe-form-button input, #wpdcom .wpd-load-more-submit { background: var(--pg-gold-btn) !important; color: #2a1d05 !important; border: 0 !important; border-radius: 999px !important; font-weight: 700; }
#wpdcom .wpd-secondary-button, #wpdcom .wpd-thread-filter .wpd-filter { background: transparent; }
#wpdcom .wpd-secondary-button { border: 1px solid var(--pg-line) !important; color: var(--pg-gold-2) !important; border-radius: 999px !important; }
#wpdcom .wpd-comment-label { background: var(--pg-gold) !important; color: #2a1d05 !important; }
#wpdcom .wpd-blog-administrator .wpd-comment-author, #wpdcom .wpd-blog-administrator .wpd-comment-author a { color: var(--pg-gold) !important; }
#wpdcom .wpd-comment-text a { color: var(--pg-gold); }
#wpdcom .wpd-social-login, #wpdcom .wc_social_plugin_wrapper { color: var(--pg-muted); }
.wpdiscuz_top_clearing { height: 10px; }
#comments .comment-reply-title, #comments .comments-title, .comment-form label { color: var(--pg-gold-2); }
.comment-form input[type="submit"] { background: var(--pg-gold-btn) !important; color: #2a1d05 !important; }

/* =====================================================================
   POPUP MAKER, THÔNG BÁO, KHÁC
   ===================================================================== */
.pum-container, .pum-theme-default-theme .pum-container, .pum-theme-lightbox .pum-container, .pum-theme-enterprise-blue .pum-container, .pum-theme-hello-box .pum-container, .pum-theme-cutting-edge .pum-container, .pum-theme-framed-border .pum-container, .pum-theme-floating-bar .pum-container {
  background: linear-gradient(180deg, #160d3a, #07051a) !important; color: var(--pg-text) !important; border: 1px solid var(--pg-line) !important; border-radius: 18px !important; box-shadow: 0 30px 80px rgba(0,0,0,.6) !important;
}
.pum-container .pum-title, .pum-container h1, .pum-container h2, .pum-container h3 { color: var(--pg-gold-2) !important; font-family: var(--pg-serif); }
.pum-container .pum-content, .pum-container .pum-content p, .pum-container .pum-content li { color: var(--pg-text) !important; }
.pum-container .pum-content a { color: var(--pg-gold) !important; }
.pum-container .pum-close, .pum-theme-default-theme .pum-container .pum-close { background: var(--pg-gold-btn) !important; color: #2a1d05 !important; border: 0 !important; border-radius: 999px !important; }
.pum-overlay { background: rgba(5, 3, 15, 0.85) !important; }

/* Ad Inserter / quảng cáo: giữ nguyên, chỉ bo góc khối */
.code-block { background: transparent; }

/* Alert trong plugin tra cứu (giữ đồng bộ) */
.tpv-alert { padding: 16px 20px; border-radius: 14px; border: 1px solid rgba(255,154,154,.45); background: rgba(255,120,120,.12); color: #ffe1e1; }

/* Không đè lên các tiêu đề nhỏ trong báo cáo thần số học (tsh-ui.css) */
.tpv-tsh .tpv-prose h2, .tpv-tsh .tpv-prose h3, .tpv-tsh .tpv-prose h4 {
  font-size: 1.02rem; margin: 1.4em 0 .6em; padding-left: 12px; letter-spacing: .06em; text-transform: uppercase; background: none; -webkit-text-fill-color: initial; color: var(--pg-gold) !important; filter: none;
}
.tpv-tsh .tpv-prose h3 { color: var(--pg-violet-2) !important; font-size: .95rem; }
.tpv-tsh .tpv-prose h2::before, .tpv-tsh .tpv-prose h3::before { display: none; }
.tpv-tsh .tpv-sub { font-size: 1.12rem; margin: 1.5em 0 .6em; color: var(--pg-gold-2); }
.tpv-tsh .tpv-sub.is-now { color: #fff; }
.tpv-tsh p, .tpv-tsh li { font-size: 1rem; line-height: 1.7; }
.tpv-tsh .tpv-btn--primary { border-radius: 999px !important; }
.tpv-tsh .tpv-label, .tpv-tsh legend.tpv-label { color: var(--pg-gold-2); }
/* Không đè lên form/nút của trang Tarot (đã có giao diện riêng) */
.tpv-tarot .button, .tpv-tarot button:not(.tpv-btn-primary) { background: initial; }

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
@media (max-width: 849px) {
  .page-title-inner { padding-top: 22px; padding-bottom: 16px; }
  .blog-archive article.post { padding: 16px; }
  .widget { padding: 14px; }
  #logo { max-width: 220px; }
  #logo img { max-height: 48px !important; }
}

/* =====================================================================
   IN ẤN
   ===================================================================== */
@media print {
  html, body, #wrapper, #main { background: #fff !important; color: #000 !important; }
  #main::before { display: none; }
  .header-wrapper, .footer-wrapper, .widget, #wpdcom { display: none !important; }
  p, li, td { color: #000 !important; }
  h1, h2, h3 { color: #000 !important; background: none !important; -webkit-text-fill-color: initial !important; }
}
