/*
Theme Name:   WheelVerdict
Theme URI:    https://wheelverdict.com
Description:  Child theme cho site review thiết bị sim racing. Dựng trên GeneratePress. Bao gồm CPT review, hệ thống chấm điểm 4 tiêu chí, redirect affiliate và schema Review/Product.
Author:       WheelVerdict
Template:     generatepress
Version:      1.1.1
Text Domain:  wheelverdict
*/

/* =========================================================
   1. TOKENS
   ========================================================= */
:root{
  --wv-bg:#0D1014;
  --wv-panel:#161B21;
  --wv-panel-2:#1D242C;
  --wv-panel-3:#252D37;
  --wv-line:#2A323C;
  --wv-line-2:#39434F;
  --wv-text:#E7EBF0;
  --wv-text-2:#96A1AE;
  --wv-text-3:#6A7482;
  --wv-prose:#CFD6DE;
  --wv-accent:#FF4A21;
  --wv-accent-ink:#180804;
  --wv-accent-wash:rgba(255,74,33,.12);
  --wv-good:#3DD68C;
  --wv-good-wash:rgba(61,214,140,.12);
  --wv-warn:#F2B138;

  --wv-sans:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --wv-cond:"Barlow Condensed","Arial Narrow",sans-serif;
  --wv-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,monospace;

  --wv-max:1180px;
}

/* =========================================================
   2. RESET GENERATEPRESS WRAPPERS
   GP bọc nội dung trong .site-content / .content-area.
   Chúng ta tự lo layout nên gỡ padding và giới hạn của GP.
   ========================================================= */
body.wv-page{
  background:var(--wv-bg);
  color:var(--wv-text);
  font-family:var(--wv-sans);
  font-size:15px;
  line-height:1.62;
  -webkit-font-smoothing:antialiased;
}
body.wv-page .site-content,
body.wv-page .content-area,
body.wv-page .site-main,
body.wv-page .entry-content{
  padding:0;
  margin:0;
  max-width:none;
  width:100%;
}
body.wv-page .site-content{display:block}
body.wv-page .entry-content > *:first-child{margin-top:0}

.wv-wrap{max-width:var(--wv-max);margin:0 auto;padding:0 20px}

body.wv-page img{display:block;max-width:100%;height:auto}
body.wv-page a{color:inherit;text-decoration:none}
body.wv-page :focus-visible{outline:2px solid var(--wv-accent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){
  body.wv-page *{transition:none !important;animation:none !important}
}

/* =========================================================
   3. TYPOGRAPHY HELPERS
   ========================================================= */
.wv-eyebrow{
  font-family:var(--wv-mono);font-size:10.5px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--wv-accent);font-weight:600;
}
.wv-crumbs{
  font-family:var(--wv-mono);font-size:11px;color:var(--wv-text-3);letter-spacing:.06em;
}
.wv-crumbs a:hover{color:var(--wv-accent)}

.wv-score{
  font-family:var(--wv-cond);font-weight:700;font-variant-numeric:tabular-nums;
  display:inline-flex;align-items:baseline;gap:2px;line-height:1;
}
.wv-score .d{font-size:.5em;color:var(--wv-text-3);font-weight:500}

/* =========================================================
   4. SECTIONS
   ========================================================= */
.wv-sec{padding:44px 0;border-top:1px solid var(--wv-line)}
.wv-sec:first-of-type{border-top:none}
.wv-sec-head{display:flex;align-items:baseline;gap:16px;margin-bottom:20px;flex-wrap:wrap}
.wv-sec-head h2{
  font-family:var(--wv-cond);font-weight:700;font-size:30px;letter-spacing:.02em;
  text-transform:uppercase;margin:0;line-height:1;
}
.wv-sec-head .wv-more{
  margin-left:auto;font-family:var(--wv-mono);font-size:11.5px;color:var(--wv-text-2);
  border-bottom:1px solid var(--wv-line-2);padding-bottom:2px;
}
.wv-sec-head .wv-more:hover{color:var(--wv-accent);border-color:var(--wv-accent)}

/* =========================================================
   5. BUTTONS
   ========================================================= */
.wv-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--wv-cond);font-weight:600;font-size:17px;letter-spacing:.05em;
  text-transform:uppercase;padding:11px 20px;border:1px solid var(--wv-accent);
  color:var(--wv-accent);transition:background .15s,color .15s;
}
.wv-btn:hover{background:var(--wv-accent);color:var(--wv-accent-ink)}
.wv-btn--solid{background:var(--wv-accent);color:var(--wv-accent-ink)}
.wv-btn--solid:hover{background:#ff6440;border-color:#ff6440;color:var(--wv-accent-ink)}
.wv-btn small{
  font-family:var(--wv-mono);font-size:10px;letter-spacing:.08em;
  opacity:.75;text-transform:none;
}

/* =========================================================
   6. CARDS
   ========================================================= */
.wv-grid{display:grid;gap:16px}
.wv-grid--4{grid-template-columns:repeat(4,1fr)}
.wv-grid--3{grid-template-columns:repeat(3,1fr)}
.wv-grid--2{grid-template-columns:repeat(2,1fr)}
@media(max-width:980px){
  .wv-grid--4,.wv-grid--3{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .wv-grid--4,.wv-grid--3,.wv-grid--2{grid-template-columns:1fr}
}

.wv-card{
  background:var(--wv-panel);border:1px solid var(--wv-line);
  display:flex;flex-direction:column;transition:border-color .15s;
}
.wv-card:hover{border-color:var(--wv-line-2)}
.wv-card__thumb{
  aspect-ratio:16/10;position:relative;overflow:hidden;
  border-bottom:1px solid var(--wv-line);
  background:radial-gradient(120% 90% at 50% 20%,#2B333D 0%,#171C22 60%,#12161B 100%);
}
.wv-card__thumb img{width:100%;height:100%;object-fit:cover}
.wv-card__badge{
  position:absolute;left:0;top:0;background:var(--wv-accent);color:var(--wv-accent-ink);
  font-family:var(--wv-mono);font-size:10px;font-weight:600;letter-spacing:.1em;
  padding:3px 8px;text-transform:uppercase;z-index:2;
}
.wv-card__body{padding:13px 14px 15px;display:flex;flex-direction:column;gap:7px;flex:1}
.wv-card__line{display:flex;align-items:center;justify-content:space-between;gap:10px}
.wv-card__brand{
  font-family:var(--wv-mono);font-size:10.5px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--wv-text-3);
}
.wv-card__line .wv-score{font-size:22px;color:var(--wv-accent)}
.wv-card h3{
  font-family:var(--wv-cond);font-weight:600;font-size:20px;line-height:1.12;
  margin:0;letter-spacing:.01em;
}
.wv-card p{margin:0;font-size:13.5px;color:var(--wv-text-2);line-height:1.5}
.wv-card__foot{
  margin-top:auto;padding-top:9px;border-top:1px solid var(--wv-line);
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  font-family:var(--wv-mono);font-size:11px;color:var(--wv-text-3);
}
.wv-card__foot .wv-go{color:var(--wv-accent)}

/* =========================================================
   7. HOME
   ========================================================= */
.wv-hero{
  display:grid;grid-template-columns:1.25fr 1fr;
  border:1px solid var(--wv-line);background:var(--wv-panel);margin:26px 0 0;
}
@media(max-width:840px){.wv-hero{grid-template-columns:1fr}}
.wv-hero__art{
  position:relative;min-height:290px;
  background:radial-gradient(130% 100% at 30% 10%,#333C48 0%,#1A2027 55%,#12161B 100%);
}
.wv-hero__art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.wv-hero__txt{padding:26px 28px 28px;display:flex;flex-direction:column;gap:13px}
.wv-hero__txt h1{
  font-family:var(--wv-cond);font-weight:700;font-size:clamp(30px,4.2vw,42px);
  line-height:1.02;margin:0;text-transform:uppercase;letter-spacing:.01em;
  text-wrap:balance;
}
.wv-hero__txt p{margin:0;color:var(--wv-text-2);font-size:15px}
.wv-hero__score{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.wv-hero__score .wv-score{font-size:52px;color:var(--wv-accent)}
.wv-verdict-tag{
  font-family:var(--wv-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--wv-good);background:var(--wv-good-wash);padding:4px 9px;
}
.wv-verdict-tag--warn{color:var(--wv-warn);background:rgba(242,177,56,.12)}

.wv-tiles{
  display:grid;grid-template-columns:repeat(5,1fr);gap:1px;
  background:var(--wv-line);border:1px solid var(--wv-line);
}
@media(max-width:900px){.wv-tiles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.wv-tiles{grid-template-columns:repeat(2,1fr)}}
.wv-tile{
  background:var(--wv-panel);padding:16px 14px;display:flex;flex-direction:column;gap:3px;
  transition:background .15s;
}
.wv-tile:hover{background:var(--wv-panel-2)}
.wv-tile__t{
  font-family:var(--wv-cond);font-weight:600;font-size:19px;
  text-transform:uppercase;letter-spacing:.02em;
}
.wv-tile__c{font-family:var(--wv-mono);font-size:11px;color:var(--wv-text-3)}

.wv-budget{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
@media(max-width:900px){.wv-budget{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.wv-budget{grid-template-columns:1fr}}
.wv-bud{
  border:1px solid var(--wv-line);background:var(--wv-panel);padding:16px 15px;
  display:flex;flex-direction:column;gap:5px;
}
.wv-bud__amt{
  font-family:var(--wv-cond);font-weight:700;font-size:27px;
  color:var(--wv-accent);line-height:1;
}
.wv-bud__lb{
  font-family:var(--wv-mono);font-size:11px;letter-spacing:.09em;
  text-transform:uppercase;color:var(--wv-text-3);
}
.wv-bud p{margin:0;font-size:13px;color:var(--wv-text-2)}

.wv-tool{
  border:1px solid var(--wv-line);
  background:linear-gradient(100deg,var(--wv-panel) 0%,var(--wv-panel-2) 100%);
  padding:26px 28px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;
}
@media(max-width:760px){.wv-tool{grid-template-columns:1fr}}
.wv-tool h3{
  font-family:var(--wv-cond);font-weight:700;font-size:27px;text-transform:uppercase;
  margin:0 0 7px;letter-spacing:.02em;
}
.wv-tool p{margin:0;color:var(--wv-text-2);max-width:56ch}

/* =========================================================
   8. TAXONOMY HUB
   ========================================================= */
.wv-hub-head{padding:30px 0 22px;border-bottom:1px solid var(--wv-line)}
.wv-hub-head h1{
  font-family:var(--wv-cond);font-weight:700;font-size:clamp(32px,5vw,46px);
  text-transform:uppercase;margin:8px 0 10px;line-height:1;letter-spacing:.01em;
}
.wv-hub-head p{margin:0;color:var(--wv-text-2);max-width:70ch}
.wv-hub-stats{display:flex;gap:26px;flex-wrap:wrap;margin-top:18px}
.wv-hub-stats div{display:flex;flex-direction:column}
.wv-hub-stats .k{
  font-family:var(--wv-mono);font-size:10.5px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--wv-text-3);
}
.wv-hub-stats .v{
  font-family:var(--wv-cond);font-weight:700;font-size:24px;
  font-variant-numeric:tabular-nums;
}

.wv-filterbar{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  padding:14px 0;border-bottom:1px solid var(--wv-line);margin-bottom:22px;
}
.wv-filterbar .lbl{
  font-family:var(--wv-mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--wv-text-3);
}
.wv-pills{display:flex;gap:6px;flex-wrap:wrap}
.wv-pill{
  font-family:var(--wv-mono);font-size:11.5px;padding:5px 11px;
  border:1px solid var(--wv-line-2);color:var(--wv-text-2);
}
.wv-pill:hover{color:var(--wv-text)}
.wv-pill.is-on{border-color:var(--wv-accent);color:var(--wv-accent);background:var(--wv-accent-wash)}
.wv-sort{margin-left:auto;display:flex;align-items:center;gap:8px}
.wv-sort select{
  font-family:var(--wv-mono);font-size:11.5px;background:var(--wv-panel);
  color:var(--wv-text);border:1px solid var(--wv-line-2);padding:5px 9px;
}

.wv-pagination{
  display:flex;gap:6px;flex-wrap:wrap;margin:32px 0 0;
  font-family:var(--wv-mono);font-size:12px;
}
.wv-pagination .page-numbers{
  border:1px solid var(--wv-line-2);padding:6px 12px;color:var(--wv-text-2);
}
.wv-pagination .page-numbers.current{
  border-color:var(--wv-accent);color:var(--wv-accent);background:var(--wv-accent-wash);
}

/* =========================================================
   9. SINGLE REVIEW
   ========================================================= */
.wv-rev-head{padding:26px 0 0}
.wv-rev-title{
  font-family:var(--wv-cond);font-weight:700;font-size:clamp(34px,5.4vw,52px);
  text-transform:uppercase;line-height:1;margin:10px 0 12px;letter-spacing:.01em;
  text-wrap:balance;
}
.wv-rev-meta{
  display:flex;gap:14px;flex-wrap:wrap;font-family:var(--wv-mono);font-size:11px;
  color:var(--wv-text-3);letter-spacing:.05em;text-transform:uppercase;
}
.wv-tier{
  border:1px solid var(--wv-line-2);padding:2px 8px;color:var(--wv-text-2);
}
.wv-tier--hands-on{border-color:var(--wv-good);color:var(--wv-good)}

.wv-rev-grid{
  display:grid;grid-template-columns:1.3fr 1fr;gap:24px;margin:22px 0 0;align-items:start;
}
@media(max-width:900px){.wv-rev-grid{grid-template-columns:1fr}}
.wv-rev-art{
  border:1px solid var(--wv-line);min-height:300px;position:relative;overflow:hidden;
  background:radial-gradient(130% 100% at 40% 15%,#333C48 0%,#1A2027 55%,#12161B 100%);
}
.wv-rev-art img{width:100%;height:100%;object-fit:cover}

.wv-scorebox{border:1px solid var(--wv-line);background:var(--wv-panel)}
.wv-scorebox__top{
  padding:18px 20px;display:flex;align-items:center;gap:18px;
  border-bottom:1px solid var(--wv-line);
}
.wv-scorebox__top .wv-score{font-size:60px;color:var(--wv-accent)}
.wv-scorebox__lines{display:flex;flex-direction:column;gap:3px}
.wv-scorebox__lines .k{
  font-family:var(--wv-mono);font-size:10.5px;letter-spacing:.13em;
  text-transform:uppercase;color:var(--wv-text-3);
}
.wv-scorebox__lines .v{
  font-family:var(--wv-cond);font-weight:600;font-size:21px;
  text-transform:uppercase;color:var(--wv-good);
}
.wv-scorebox__lines .v.is-warn{color:var(--wv-warn)}
.wv-subs{padding:6px 20px 14px}
.wv-sub{
  display:grid;grid-template-columns:1fr auto;gap:4px 12px;
  padding:9px 0;border-bottom:1px solid var(--wv-line);
}
.wv-sub:last-child{border-bottom:none}
.wv-sub .k{font-size:13.5px;color:var(--wv-text-2)}
.wv-sub .v{
  font-family:var(--wv-mono);font-weight:600;font-size:13.5px;
  font-variant-numeric:tabular-nums;
}
.wv-sub .track{grid-column:1/-1;height:3px;background:var(--wv-panel-3)}
.wv-sub .track i{display:block;height:100%;background:var(--wv-accent)}
.wv-sub.is-hi .track i{background:var(--wv-good)}
.wv-ctas{
  padding:14px 20px 18px;display:grid;grid-template-columns:1fr 1fr;gap:9px;
  border-top:1px solid var(--wv-line);
}
.wv-ctas.is-single{grid-template-columns:1fr}
@media(max-width:420px){.wv-ctas{grid-template-columns:1fr}}
.wv-disclose{
  padding:0 20px 16px;font-family:var(--wv-mono);font-size:10.5px;
  color:var(--wv-text-3);line-height:1.5;margin:0;
}

.wv-rev-body{
  display:grid;grid-template-columns:200px 1fr;gap:34px;margin-top:44px;align-items:start;
}
@media(max-width:900px){.wv-rev-body{grid-template-columns:1fr;gap:24px}}
.wv-toc{position:sticky;top:20px;border-left:2px solid var(--wv-line);padding-left:14px}
@media(max-width:900px){
  .wv-toc{position:static;border-left:none;border-top:1px solid var(--wv-line);padding:14px 0 0}
}
.wv-toc__h{
  font-family:var(--wv-mono);font-size:10.5px;letter-spacing:.13em;
  text-transform:uppercase;color:var(--wv-text-3);margin-bottom:9px;
}
.wv-toc a{display:block;padding:4px 0;font-size:13.5px;color:var(--wv-text-2)}
.wv-toc a:hover{color:var(--wv-accent)}

.wv-prose{max-width:68ch}
.wv-prose h2{
  font-family:var(--wv-cond);font-weight:700;font-size:27px;text-transform:uppercase;
  letter-spacing:.02em;margin:34px 0 12px;line-height:1.1;
  scroll-margin-top:24px;
}
.wv-prose h3{
  font-family:var(--wv-cond);font-weight:600;font-size:21px;
  margin:26px 0 10px;line-height:1.15;
}
.wv-prose > h2:first-child{margin-top:0}
.wv-prose p{margin:0 0 14px;color:var(--wv-prose)}
.wv-prose ul,.wv-prose ol{margin:0 0 14px;padding-left:20px;color:var(--wv-prose)}
.wv-prose li{margin-bottom:6px}
.wv-prose li::marker{color:var(--wv-text-3)}
.wv-prose a{color:var(--wv-accent);text-decoration:underline;text-underline-offset:2px}
.wv-prose blockquote{
  margin:20px 0;padding:14px 18px;border-left:3px solid var(--wv-line-2);
  color:var(--wv-text-2);
}

.wv-verdictbox{
  border:1px solid var(--wv-accent);background:var(--wv-accent-wash);
  padding:18px 20px;margin:0 0 26px;
}
.wv-verdictbox__h{
  font-family:var(--wv-mono);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--wv-accent);margin-bottom:7px;
}
.wv-verdictbox p{margin:0;color:var(--wv-text);font-size:15.5px}

.wv-pc{
  display:grid;grid-template-columns:1fr 1fr;gap:1px;
  background:var(--wv-line);border:1px solid var(--wv-line);margin:24px 0;
}
@media(max-width:600px){.wv-pc{grid-template-columns:1fr}}
.wv-pc > div{background:var(--wv-panel);padding:16px 18px}
.wv-pc h4{
  font-family:var(--wv-mono);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;margin:0 0 10px;
}
.wv-pc__pro h4{color:var(--wv-good)}
.wv-pc__con h4{color:var(--wv-warn)}
.wv-pc ul{margin:0;padding-left:17px;font-size:14px}
.wv-pc li{margin-bottom:6px;color:var(--wv-prose)}
.wv-pc__pro li::marker{color:var(--wv-good)}
.wv-pc__con li::marker{color:var(--wv-warn)}

.wv-tblwrap{overflow-x:auto;border:1px solid var(--wv-line);background:var(--wv-panel)}
.wv-specs{width:100%;border-collapse:collapse;font-size:14px;margin:0}
.wv-specs th,.wv-specs td{
  text-align:left;padding:9px 12px;border-bottom:1px solid var(--wv-line);
}
.wv-specs th{
  font-family:var(--wv-mono);font-size:10.5px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--wv-text-3);font-weight:500;width:42%;
}
.wv-specs td{
  font-family:var(--wv-mono);font-variant-numeric:tabular-nums;font-size:13px;
  color:var(--wv-text);
}
.wv-specs tr:last-child th,.wv-specs tr:last-child td{border-bottom:none}

.wv-authorbox{
  border:1px solid var(--wv-line);background:var(--wv-panel);padding:18px 20px;
  margin:30px 0 0;display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;
}
.wv-avatar{
  width:52px;height:52px;background:var(--wv-panel-3);border:1px solid var(--wv-line-2);
  display:grid;place-items:center;font-family:var(--wv-cond);font-weight:700;
  font-size:20px;color:var(--wv-accent);
}
.wv-authorbox__n{
  font-family:var(--wv-cond);font-weight:600;font-size:20px;
  text-transform:uppercase;letter-spacing:.02em;
}
.wv-authorbox p{margin:5px 0 0;font-size:13.5px;color:var(--wv-text-2)}
.wv-authorbox a{color:var(--wv-accent);text-decoration:underline}

/* =========================================================
   10. NEWSLETTER
   ========================================================= */
.wv-news{
  border:1px solid var(--wv-line);background:var(--wv-panel);padding:26px 28px;
  display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;
}
@media(max-width:760px){.wv-news{grid-template-columns:1fr}}
.wv-news h3{
  font-family:var(--wv-cond);font-weight:700;font-size:26px;
  text-transform:uppercase;margin:0 0 6px;letter-spacing:.02em;
}
.wv-news p{margin:0;color:var(--wv-text-2);max-width:52ch}

/* =========================================================
   11. EMPTY STATE
   ========================================================= */
.wv-empty{
  border:1px dashed var(--wv-line-2);padding:34px 24px;text-align:center;
  color:var(--wv-text-2);font-family:var(--wv-mono);font-size:13px;
}

/* =========================================================
   12. ADMIN COLUMN (score) — chỉ dùng trong wp-admin
   ========================================================= */
.column-wv_score{width:80px;text-align:right;font-variant-numeric:tabular-nums}

/* =========================================================
   13. KHUNG SITE — header, nav, footer của GeneratePress
   GeneratePress dựng header/nav/footer riêng, không nằm trong
   template của theme con. Không style ở đây thì phần khung
   vẫn trắng trong khi nội dung nền tối.
   ========================================================= */

/* Nền tối áp cho toàn site, không chỉ các trang do theme con dựng. */
body{
  background:var(--wv-bg);
  color:var(--wv-text);
  font-family:var(--wv-sans);
}

.site-header,
.main-navigation,
.site-footer{
  background-color:var(--wv-panel);
}
.site-header{border-bottom:1px solid var(--wv-line)}
.main-navigation{border-top:1px solid var(--wv-line)}
.site-footer{border-top:1px solid var(--wv-line)}

/* Tên site */
.site-branding .main-title a,
.site-branding .main-title a:visited{
  color:var(--wv-text);
  font-family:var(--wv-cond);
  font-weight:700;
  letter-spacing:.01em;
  text-transform:uppercase;
}
.site-branding .main-title a:hover{color:var(--wv-accent)}
.site-description{
  color:var(--wv-text-3);
  font-family:var(--wv-mono);
  font-size:11.5px;
  letter-spacing:.1em;
  text-transform:uppercase;
}

/* Menu chính */
.main-navigation .main-nav ul li a{
  color:var(--wv-text-2);
  font-family:var(--wv-cond);
  font-weight:600;
  font-size:17px;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li.current-menu-item > a,
.main-navigation .main-nav ul li.current-menu-parent > a{
  color:var(--wv-text);
  background-color:transparent;
  box-shadow:inset 0 -2px 0 var(--wv-accent);
}
.main-navigation ul ul{
  background-color:var(--wv-panel-2);
  border:1px solid var(--wv-line);
}
.main-navigation .menu-toggle,
.main-navigation .menu-bar-items{color:var(--wv-text-2)}
.main-navigation .menu-toggle:hover{color:var(--wv-accent)}

/* Ô tìm kiếm trên menu */
.main-navigation .navigation-search input[type="search"]{
  background-color:var(--wv-bg);
  color:var(--wv-text);
}

/* Footer */
.site-info{
  color:var(--wv-text-3);
  font-family:var(--wv-mono);
  font-size:12px;
}
.site-info a,.site-info a:visited{color:var(--wv-text-2)}
.site-info a:hover{color:var(--wv-accent)}
.footer-widgets{background-color:var(--wv-panel)}
.footer-widgets .widget-title{
  font-family:var(--wv-mono);font-size:10.5px;letter-spacing:.13em;
  text-transform:uppercase;color:var(--wv-text-3);
}
.footer-widgets a,.footer-widgets a:visited{color:var(--wv-text-2)}
.footer-widgets a:hover{color:var(--wv-accent)}

/* =========================================================
   14. TRANG THƯỜNG — About, How We Review, Contact…
   Các trang này do GeneratePress render, không qua template
   của theme con, nên cần style riêng để đọc được trên nền tối.
   ========================================================= */
body:not(.wv-page) .separate-containers .inside-article,
body:not(.wv-page) .separate-containers .comments-area,
body:not(.wv-page) .separate-containers .page-header,
body:not(.wv-page) .separate-containers .paging-navigation,
body:not(.wv-page) .one-container .site-content{
  background-color:var(--wv-panel);
  border:1px solid var(--wv-line);
}

body:not(.wv-page) .entry-title,
body:not(.wv-page) .page-title{
  font-family:var(--wv-cond);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.01em;
  line-height:1.05;
  color:var(--wv-text);
  text-wrap:balance;
}
body:not(.wv-page) .entry-title a{color:var(--wv-text)}

body:not(.wv-page) .entry-content{
  color:var(--wv-prose);
  max-width:72ch;
  font-size:16px;
  line-height:1.7;
}
body:not(.wv-page) .entry-content h2{
  font-family:var(--wv-cond);font-weight:700;text-transform:uppercase;
  letter-spacing:.02em;color:var(--wv-text);margin-top:36px;line-height:1.12;
}
body:not(.wv-page) .entry-content h3,
body:not(.wv-page) .entry-content h4{
  font-family:var(--wv-cond);font-weight:600;color:var(--wv-text);
  margin-top:28px;line-height:1.2;
}
body:not(.wv-page) .entry-content a{
  color:var(--wv-accent);text-decoration:underline;text-underline-offset:2px;
}
body:not(.wv-page) .entry-content li::marker{color:var(--wv-text-3)}
body:not(.wv-page) .entry-content strong{color:var(--wv-text)}
body:not(.wv-page) .entry-content blockquote{
  border-left:3px solid var(--wv-accent);
  background:var(--wv-panel-2);
  color:var(--wv-text-2);
  padding:14px 18px;
}
body:not(.wv-page) .entry-content code{
  background:var(--wv-panel-2);color:var(--wv-text);
  font-family:var(--wv-mono);font-size:.87em;padding:1px 5px;border-radius:2px;
}
body:not(.wv-page) .entry-content hr{border-color:var(--wv-line)}

/* Bảng trong trang thường — trang How We Review có bảng thang điểm */
body:not(.wv-page) .entry-content table{
  border-collapse:collapse;width:100%;font-size:14.5px;
  display:block;overflow-x:auto;
}
body:not(.wv-page) .entry-content th,
body:not(.wv-page) .entry-content td{
  border:1px solid var(--wv-line);padding:9px 12px;text-align:left;
}
body:not(.wv-page) .entry-content th{
  background:var(--wv-panel-2);color:var(--wv-text);
  font-family:var(--wv-mono);font-size:11px;letter-spacing:.08em;
  text-transform:uppercase;font-weight:600;
}

/* Sidebar và widget */
.sidebar .widget{
  background-color:var(--wv-panel);
  border:1px solid var(--wv-line);
  color:var(--wv-text-2);
}
.sidebar .widget .widget-title{color:var(--wv-text)}
.sidebar .widget a,.sidebar .widget a:visited{color:var(--wv-text-2)}
.sidebar .widget a:hover{color:var(--wv-accent)}

/* Form và nút mặc định của WordPress */
input[type="text"],input[type="email"],input[type="url"],
input[type="search"],input[type="password"],textarea,select{
  background-color:var(--wv-bg);
  color:var(--wv-text);
  border:1px solid var(--wv-line-2);
}
input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,
input[type="search"]:focus,input[type="password"]:focus,textarea:focus{
  border-color:var(--wv-accent);
  color:var(--wv-text);
}
button,html input[type="button"],input[type="reset"],input[type="submit"],
.button,.wp-block-button__link{
  background-color:var(--wv-accent);
  color:var(--wv-accent-ink);
  font-family:var(--wv-cond);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.04em;
}
button:hover,input[type="submit"]:hover,.button:hover,.wp-block-button__link:hover{
  background-color:#ff6440;
  color:var(--wv-accent-ink);
}

/* =========================================================
   15. FIX footer — GeneratePress đặt nền trắng thẳng lên
   .site-info qua CSS inline của Customizer, nên nền đặt ở
   .site-footer bị đè. Selector dưới có specificity cao hơn.
   ========================================================= */
.site-footer .site-info,
.site-footer .footer-bar,
.site-footer .inside-site-info,
.site-footer .inside-footer-widgets{
  background-color:var(--wv-panel);
  color:var(--wv-text-3);
}
.site-footer .site-info a,
.site-footer .site-info a:visited{color:var(--wv-text-2)}
.site-footer .site-info a:hover{color:var(--wv-accent)}

/* Header cũng chống đè tương tự, phòng khi Customizer đổi màu. */
.site-header .inside-header{background-color:transparent}
