/*
Theme Name: Hair Dryer Best
Theme URI: https://hairdryerbest.com
Description: Custom minimal, fast, SEO-first theme for Hair Dryer Best. No framework, no bloat — system fonts, hand-tuned CSS, conversion-focused review components.
Author: Hair Dryer Best
Version: 1.0
Tested up to: 7.0
Requires PHP: 8.0
License: GNU GPLv2 or later
Text Domain: hdb
*/

/* ===== tokens ===== */
:root{
  --accent:#e64980; --accent-dk:#c2255c; --ink:#16202c; --muted:#5b6470;
  --line:#e6e9ee; --bg:#ffffff; --soft:#f6f8fb; --good:#2f9e44; --max:760px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);
  font:17px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3{line-height:1.25;color:var(--ink)}
h1{font-size:2rem;margin:.2em 0 .4em}
h2{font-size:1.5rem;margin:1.7em 0 .5em;padding-bottom:.25em;border-bottom:2px solid var(--accent)}
h3{font-size:1.2rem;margin:1.35em 0 .4em}
p,ul,ol{margin:0 0 1.05em}
ul,ol{padding-left:1.3em}
li{margin:.3em 0}

/* ===== layout ===== */
.wrap{max-width:var(--max);margin:0 auto;padding:0 18px}
body.home .wrap,body.archive .wrap,body.search .wrap,body.blog .wrap{max-width:1100px}
.site-header{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:50}
.hd{display:flex;align-items:center;justify-content:space-between;max-width:1080px;margin:0 auto;padding:12px 18px}
.brand{font-weight:800;font-size:1.15rem;color:var(--ink);text-decoration:none;white-space:nowrap}
.brand b{color:var(--accent)}
.nav .menu{display:flex;flex-wrap:wrap;gap:2px 6px;list-style:none;margin:0;padding:0;align-items:center}
.nav .menu li{list-style:none;margin:0}
.nav .menu a{color:var(--ink);font-size:.92rem;font-weight:600;text-decoration:none;
  padding:7px 11px;border-radius:8px;display:inline-block;line-height:1;transition:background .12s,color .12s}
.nav .menu a:hover{color:var(--accent);background:var(--soft);text-decoration:none}
.nav .menu .current-cat>a,.nav .menu .current-menu-item>a,
.nav .menu .current-post-parent>a,.nav .menu .current-menu-parent>a{color:var(--accent);background:var(--soft)}
/* all pages: stack + center brand and menu (consistent header everywhere) */
.hd{flex-direction:column;justify-content:center;text-align:center;gap:8px}
.brand{font-size:1.3rem}
.nav{width:100%}
.nav .menu{justify-content:center}
.site-main{padding:28px 0 40px}
.site-footer{border-top:1px solid var(--line);background:var(--soft);color:var(--muted);
  font-size:.86rem;margin-top:40px}
.site-footer .wrap{padding:24px 18px;max-width:1080px}
.site-footer a{color:var(--muted)}
.foot-links{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;margin-bottom:4px}
.foot-links a{font-weight:600;color:var(--ink)}
.foot-links a:hover{color:var(--accent);text-decoration:none}

/* ===== article ===== */
.post-title{font-size:2.05rem;margin:.1em 0 .3em}
.meta-line{color:var(--muted);font-size:.86rem;margin-bottom:1.2em}
.breadcrumb{font-size:.8rem;color:var(--muted);margin:0 0 1em}
.breadcrumb a{color:var(--muted)}
/* tables scroll horizontally inside wrapper instead of crushing columns on mobile */
.cmpc-tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1.3em 0;
  border:1px solid var(--line);border-radius:10px}
.cmpc-tablewrap::-webkit-scrollbar{height:8px}
.cmpc-tablewrap::-webkit-scrollbar-thumb{background:#c9d2dd;border-radius:8px}
.entry table{border-collapse:collapse;width:100%;min-width:560px;margin:0;font-size:.95rem}
.entry th,.entry td{border:1px solid var(--line);padding:9px 11px;text-align:left;vertical-align:top}
.entry th{background:var(--soft);font-weight:700;white-space:nowrap}
.entry tbody tr:nth-child(even){background:#fafbfd}

/* article list bullets: clean accent markers (no default black discs) */
.entry ul{list-style:none;padding-left:1.45em}
.entry ul>li{position:relative;padding-left:.15em}
.entry ul>li::before{content:"";position:absolute;left:-1.05em;top:.62em;
  width:.46em;height:.46em;background:var(--accent);border-radius:2px;transform:rotate(45deg)}
.entry ol{padding-left:1.4em}
.entry ol>li::marker{color:var(--accent);font-weight:700}

/* ===== components: disclosure / verdict / best-buy / CTA ===== */
.cmpc-disc{font-size:.82rem;color:var(--muted);background:var(--soft);
  border-left:4px solid var(--accent);padding:9px 13px;margin:0 0 1.4em;border-radius:7px}
.cmpc-verdict,.entry > p:first-of-type:has(strong){}
.cta-amz{display:inline-block;background:var(--accent);color:#fff!important;font-weight:800;
  text-decoration:none;padding:12px 24px;border-radius:9px;margin:8px 0 16px;
  box-shadow:0 2px 8px rgba(31,111,235,.28);transition:background .15s,transform .05s}
.cta-amz:hover{background:var(--accent-dk);text-decoration:none;transform:translateY(-1px)}
.cta-amz span{font-weight:500;opacity:.85;font-size:.8rem;margin-left:4px}

/* best-buy comparison box (award/best-for/price/CTA — NO star ratings) */
.cmpc-bb{margin:1.6em 0}
.cmpc-card{display:grid;grid-template-columns:1fr auto;gap:10px 16px;align-items:center;
  border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:11px;
  padding:14px 16px;margin-bottom:12px;box-shadow:0 1px 5px rgba(0,0,0,.05)}
.cmpc-badge{display:inline-block;background:var(--accent);color:#fff;font-size:.7rem;font-weight:800;
  text-transform:uppercase;letter-spacing:.03em;padding:3px 9px;border-radius:999px;margin-bottom:6px}
.cmpc-name{font-weight:700;font-size:1.03rem}
.cmpc-meta{font-size:.86rem;color:var(--muted);margin-top:3px}
.cmpc-price{color:var(--good);font-weight:700;margin-left:6px}

/* ===== cards grid (home / archive) ===== */
.hero{text-align:center;padding:40px 20px 30px;margin:0 0 8px;
  background:linear-gradient(180deg,var(--soft),#fff);border-radius:14px;border:1px solid var(--line)}
.hero h1{font-size:2.1rem;margin:0}
.hero p{color:var(--muted);max-width:600px;margin:.5em auto 0;font-size:1.05rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:24px 0}
.card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;
  transition:box-shadow .15s,transform .05s}
.card:hover{box-shadow:0 6px 20px rgba(0,0,0,.08);transform:translateY(-2px)}
.card a{color:inherit}
.card .thumb{aspect-ratio:16/9;background:linear-gradient(135deg,var(--accent),#0b3c8c) center/cover no-repeat;
  display:flex;align-items:center;justify-content:center;padding:10px}
.card .thumb span{color:#fff;font-weight:800;font-size:.95rem;text-align:center;letter-spacing:.01em;
  text-shadow:0 1px 2px rgba(0,0,0,.25);line-height:1.25}
.card .thumb.has-img span{display:none}
.card .body{padding:14px 16px}
.card .cat{font-size:.72rem;font-weight:700;text-transform:uppercase;color:var(--accent);letter-spacing:.03em}
.card h3{margin:.3em 0;font-size:1.08rem}
.card .ex{font-size:.88rem;color:var(--muted);margin:0}

@media(max-width:600px){
  body{font-size:16px;line-height:1.65}
  .wrap{padding:0 15px}
  h1,.post-title{font-size:1.55rem}
  h2{font-size:1.3rem}
  h3{font-size:1.12rem}
  .hero{padding:24px 14px}
  .hero h1{font-size:1.5rem}
  .hero p{font-size:.98rem}
  .cmpc-card{grid-template-columns:1fr}
  .cmpc-card .cmpc-cta,.cmpc-card .cta-amz{justify-self:stretch;text-align:center}
  .cta-amz{display:block;text-align:center;padding:13px 18px}
  .hd{flex-wrap:wrap;gap:6px 0;padding:10px 14px}
  .brand{font-size:1.12rem;white-space:nowrap}
  /* nav becomes a single swipeable row (no cramped wrapping) */
  .nav{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
    margin:0 -14px;padding:2px 14px;scrollbar-width:none}
  .nav::-webkit-scrollbar{display:none}
  .nav .menu{flex-wrap:nowrap;gap:2px 4px;width:max-content}
  .nav .menu a{font-size:.88rem;padding:6px 10px;white-space:nowrap}
  .grid{gap:16px}
  .site-footer{text-align:center}
  .foot-links{justify-content:center;gap:8px 16px}
  .entry table{font-size:.9rem}
  .entry th,.entry td{padding:8px 9px}
}
