/* ChristianAppReviews.com — core stylesheet (M0 shell + design tokens).
   Tokens transcribed from design_handoff_christianappreviews/README.md §Design Tokens. */

:root{
  /* Warm editorial palette (design_handoff_homepage / app_listing / submit_app). */
  --bg:#F4EFE5; --sidebar:#F4EFE5; --surface:#FCFAF4; --input-bg:#FFFDF9;
  --ink:#211D16; --ink-2:#25211A; --ink-hover:#322D24; --body-ink:#3D382F;
  --slate:#5C5448; --muted:#8A8173; --dark-muted:#A89E8E;
  --hair:rgba(37,33,26,.10); --hair2:rgba(37,33,26,.14); --hair3:#ECE3D2; --hair4:rgba(37,33,26,.045);
  --accent:#7A5E86; --accent-light:#B492BC; --accent-bg:#F1EAF1; --accent-bd:rgba(122,94,134,.34);
  --amber:#C0902B; --star-track:#DDD4C4;
  --green-t:#3F6B4E; --green-bg:#E7EFE3;
  --freemium-t:#5C5448; --freemium-bg:#ECE5D8;
  --paid-t:#5C5448; --paid-bg:#ECE5D8;
  --warm-grad:linear-gradient(150deg,#F3E9D6,#F7F1E5);
  --dark-band:#221E18; --footer-bg:#1C1915;
  --shadow-card:0 1px 2px rgba(37,33,26,.04);
  --shadow-card-hover:0 6px 20px rgba(37,33,26,.06);
  --shadow-modal:0 30px 80px rgba(0,0,0,.35);
  --sidebar-w:248px; --header-h:60px;
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--bg); color:var(--ink);
  font-family:'Hanken Grotesk',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none;}
::selection{background:#E3D5BE;}
h1,h2,h3{font-family:'Newsreader',Georgia,serif;font-weight:600;letter-spacing:-.01em;}
.serif{font-family:'Newsreader',Georgia,serif;}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace;}

/* ---- App frame: fixed sidebar + flexible main column ---- */
.car-app{display:flex;min-height:100vh;}
.car-side{
  flex:none;width:var(--sidebar-w);background:var(--sidebar);
  border-right:1px solid var(--hair);height:100vh;position:sticky;top:0;
  overflow-y:auto;padding:24px 16px 28px;
}
.car-main{flex:1;display:flex;flex-direction:column;min-width:0;}

/* ---- Sidebar categories ---- */
.car-side-label{
  font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.5px;
  text-transform:uppercase;color:var(--muted);padding:6px 12px 12px;
}
.car-cat{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:9px 12px;border-radius:9px;font-size:14px;font-weight:500;color:var(--slate);
  border:1px solid transparent;transition:background .16s ease,color .16s ease;
}
.car-cat:hover{background:var(--hair4);color:var(--ink);}
.car-cat.is-active{background:var(--surface);color:var(--ink);font-weight:600;border:1px solid var(--hair);}
.car-cat .count{font-family:'JetBrains Mono',monospace;font-size:10px;color:var(--muted);}

/* ---- Header ---- */
.car-header{
  position:sticky;top:0;z-index:20;height:var(--header-h);
  display:flex;align-items:center;gap:14px;padding:0 56px;
  background:rgba(244,239,229,.85);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--hair);
}
.car-logo{display:flex;align-items:center;gap:9px;font-weight:700;letter-spacing:-.3px;font-size:16px;}
.car-logo .mark{width:30px;height:30px;border-radius:9px;display:block;flex:none;}
.car-logo .tld{color:var(--dark-muted);font-weight:500;}
.car-spacer{flex:1;}
.car-icon-btn{
  width:38px;height:38px;border-radius:10px;border:1px solid var(--hair);background:var(--surface);
  display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);
}
.car-avatar{width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--bg);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:12px;}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-size:14px;border-radius:10px;padding:10px 16px;cursor:pointer;border:1px solid transparent;white-space:nowrap;transition:background .16s ease,box-shadow .16s ease,transform .16s ease;}
.btn-dark{background:var(--ink);color:#fff;}
.btn-dark:hover{background:var(--ink-hover);}
.btn-white{background:var(--surface);color:var(--ink);border-color:var(--hair);}
.btn-white:hover{border-color:rgba(37,33,26,.28);}
.btn-accent{background:var(--accent);color:#fff;}
.btn-accent:hover{background:#6b5176;}

/* ---- Pills / chips ---- */
.pill{display:inline-flex;align-items:center;gap:6px;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.4px;border-radius:20px;padding:6px 12px;}
.pill-green{color:var(--green-t);background:var(--green-bg);}

/* ---- Content column ---- */
.car-content{width:100%;max-width:1180px;margin:0 auto;padding:0 56px;}
.car-narrow{max-width:760px;}

/* ---- Hero ---- */
.car-hero{text-align:center;padding:48px 0 8px;}
.car-hero h1{font-size:50px;font-weight:800;letter-spacing:-1.8px;line-height:1.05;margin:18px auto 10px;max-width:780px;}
.car-hero p.sub{font-size:17px;color:var(--slate);max-width:600px;margin:0 auto 22px;}
.car-searchbar{display:flex;gap:8px;align-items:center;background:var(--surface);border:1px solid var(--hair2);border-radius:13px;padding:7px 7px 7px 18px;max-width:620px;margin:0 auto;box-shadow:var(--shadow-card);}
.car-searchbar input{flex:1;border:0;outline:0;font-size:15px;font-family:inherit;background:transparent;color:var(--ink);}
.car-searchbar input::placeholder{color:var(--dark-muted);}

/* Two-column editorial hero (homepage) */
.car-hero2{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding:60px 0 56px;}
.car-hero2 .eyebrow{display:flex;align-items:center;gap:9px;font-family:'JetBrains Mono',monospace;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#8A8173;margin-bottom:22px;}
.car-hero2 .eyebrow::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none;}
.car-hero2 h1{font-size:60px;line-height:1.02;letter-spacing:-.02em;font-weight:500;color:#211D16;margin:0 0 18px;}
.car-hero2 h1 em{font-style:italic;}
.car-hero2 .sub{font-size:17px;line-height:1.55;color:var(--slate);max-width:440px;margin:0 0 24px;}
.car-spot{background:var(--warm-grad);border:1px solid var(--hair);border-radius:18px;padding:28px;}
.car-spot .spot-name{font-family:'Newsreader',Georgia,serif;font-size:23px;font-weight:600;color:#211D16;}
@media(max-width:980px){.car-hero2{grid-template-columns:1fr;gap:30px;padding:40px 0 28px;}.car-hero2 h1{font-size:42px;}.car-hero2 .sub,.car-hero2 .car-searchbar{max-width:none;}}

/* ---- Footer ---- */
.car-footer{margin-top:auto;background:var(--footer-bg);color:#C9C1B4;padding:52px 0 30px;}
.car-footer .cols{display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between;}
.car-footer h4{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.5px;color:var(--dark-muted);text-transform:uppercase;margin:0 0 12px;}
.car-footer a{display:block;color:#c7cedb;font-size:13.5px;padding:4px 0;}
.car-footer a:hover{color:#fff;}
.car-footer .tagline{color:#9aa3b4;font-size:13.5px;max-width:240px;line-height:1.6;}
.car-footer .bottom{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.10);margin-top:32px;padding-top:18px;color:#7d8aa3;font-size:12.5px;}

/* ---- ToolCard (reusable across Home, Browse, Toolbox) ---- */
.car-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.car-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.car-card{position:relative;display:flex;flex-direction:column;gap:12px;background:var(--surface);border:1px solid var(--hair);border-radius:18px;padding:18px;cursor:pointer;box-shadow:var(--shadow-card);transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease;}
.car-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px);border-color:rgba(37,33,26,.22);}
.car-card-top{display:flex;align-items:flex-start;gap:13px;}
.car-card-icon{flex:none;width:48px;height:48px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;font-family:'JetBrains Mono',monospace;letter-spacing:-.4px;}
.car-card-name{font-weight:700;font-size:17px;color:var(--ink);letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.car-verified{flex:none;width:15px;height:15px;border-radius:50%;background:var(--accent);color:#fff;font-size:9px;display:flex;align-items:center;justify-content:center;line-height:1;}
.car-pick{flex:none;display:flex;align-items:center;gap:4px;font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.3px;color:var(--accent);background:var(--accent-bg);border:1px solid var(--accent-bd);padding:4px 7px;border-radius:7px;}
.car-stars{position:relative;display:inline-block;font-size:12px;line-height:1;letter-spacing:1.5px;font-family:'JetBrains Mono',monospace;}
.car-stars .base{color:var(--star-track);}
.car-stars .fill{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:var(--amber);}
.car-card-desc{font-size:13.5px;line-height:1.5;color:var(--slate);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:60px;}
.car-divider{height:1px;background:var(--hair3);}
.car-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.car-price{font-weight:700;font-size:11.5px;padding:4px 9px;border-radius:7px;}
.car-price-free{color:var(--green-t);background:var(--green-bg);}
.car-price-freemium{color:var(--freemium-t);background:var(--freemium-bg);}
.car-price-paid{color:var(--paid-t);background:var(--paid-bg);}
.car-plat{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:500;color:var(--muted);background:transparent;border:1px solid var(--hair2);padding:3px 7px;border-radius:6px;}
.car-card-churches{font-size:11.5px;color:var(--muted);white-space:nowrap;}

/* ---- Section headers + segmented controls ---- */
.car-sec{margin:40px 0;}
.car-sec-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap;}
.car-sec-head h2{font-size:24px;font-weight:800;letter-spacing:-.6px;margin:0;}
.car-seg{display:inline-flex;background:#EDE6D9;border:0;border-radius:11px;padding:4px;gap:3px;}
.car-seg a{font-size:13px;font-weight:600;color:#7A7264;padding:7px 14px;border-radius:8px;}
.car-seg a.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px rgba(37,33,26,.12);}

/* ---- Category cards (browse-by-category) ---- */
.car-catcard{display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--hair);border-radius:16px;padding:16px;transition:box-shadow .16s ease,transform .16s ease;}
.car-catcard:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px);}
.car-catcard .tile{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;background:var(--accent-bg);}
.car-catcard .nm{font-weight:700;font-size:15px;}
.car-catcard .meta{font-size:12px;color:var(--muted);}

/* ---- Filter pills (browse) ---- */
.car-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.car-fpill{font-size:13px;font-weight:700;color:var(--slate);background:var(--surface);border:1px solid var(--hair);border-radius:20px;padding:7px 14px;cursor:pointer;}
.car-fpill.is-active{background:var(--ink);color:#fff;border-color:var(--ink);}

/* ---- Trust band ---- */
.car-trust{background:var(--dark-band);color:var(--bg);border-radius:22px;padding:52px;margin:44px 0;}
.car-trust .eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.5px;color:var(--dark-muted);text-transform:uppercase;}
.car-trust h2{font-size:26px;font-weight:800;letter-spacing:-.6px;margin:10px 0 24px;max-width:560px;}
.car-trust .figs{display:flex;flex-wrap:wrap;gap:32px;margin-bottom:28px;}
.car-trust .fig b{display:block;font-size:34px;font-weight:800;letter-spacing:-1px;}
.car-trust .fig.amber b{color:var(--amber);}
.car-trust .fig span{font-size:12.5px;color:#9aa3b4;}
.car-trust .pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.car-trust .pillar{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:16px;}
.car-trust .pillar h3{font-size:15px;margin:0 0 6px;}
.car-trust .pillar p{font-size:13px;color:#c7cedb;margin:0;line-height:1.5;}

/* ---- FAQ accordion ---- */
.car-faq{max-width:780px;margin:0 auto;}
.car-faq details{background:var(--surface);border:1px solid var(--hair);border-radius:14px;padding:4px 18px;margin-bottom:10px;}
.car-faq summary{list-style:none;cursor:pointer;font-weight:700;font-size:15.5px;padding:14px 0;display:flex;justify-content:space-between;align-items:center;}
.car-faq summary::-webkit-details-marker{display:none;}
.car-faq summary::after{content:'+';color:var(--muted);font-size:20px;}
.car-faq details[open] summary::after{content:'\2013';}
.car-faq p{color:var(--slate);font-size:14.5px;line-height:1.6;margin:0 0 16px;}

/* ---- Listing detail ---- */
.car-crumb{padding:28px 0 0;display:flex;gap:9px;align-items:center;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.04em;color:var(--dark-muted);}
.car-crumb a:hover{color:var(--slate);}
.car-crumb .cur{color:var(--slate);}
.car-listing-hero{display:flex;gap:26px;align-items:flex-start;padding:26px 0 30px;}
.car-listing-icon{width:94px;height:94px;border-radius:22px;font-size:34px;flex:none;box-shadow:0 8px 24px rgba(37,33,26,.12);}
.car-listing-body{display:grid;grid-template-columns:1fr 320px;gap:44px;align-items:start;padding-bottom:72px;}
.car-rail{position:sticky;top:84px;display:flex;flex-direction:column;gap:16px;}
.car-rail-card{background:var(--surface);border:1px solid var(--hair);border-radius:16px;padding:22px;}
.car-rail-label{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#9A9183;margin-bottom:16px;}
.car-rail-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:6px 0;}
.car-rail-row .k{color:var(--muted);} .car-rail-row .v{color:var(--body-ink);font-weight:600;text-align:right;}
.car-tabs{display:flex;gap:28px;justify-content:flex-start;border-bottom:1px solid var(--hair2);margin:0 0 28px;}
.car-tabs a{padding:0 0 14px;font-weight:600;font-size:15px;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;}
.car-tabs a.is-active{color:var(--ink);border-bottom-color:var(--accent);}
@media(max-width:980px){.car-listing-body{grid-template-columns:1fr;gap:24px;}.car-listing-hero{flex-direction:column;gap:16px;}}
.car-histobar{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--slate);margin:4px 0;}
.car-histobar .track{flex:1;height:8px;border-radius:5px;background:var(--hair3);overflow:hidden;}
.car-histobar .bar{height:100%;background:var(--amber);}
.car-review{background:var(--surface);border:1px solid var(--hair);border-radius:14px;padding:16px;margin-bottom:12px;}
.car-review.pinned{border-color:var(--hair);border-left:3px solid var(--accent);background:var(--surface);}
.car-review .reply{margin:12px 0 0 24px;padding:12px 14px;background:var(--surface);border:1px solid var(--hair);border-radius:10px;}
.car-tag{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.4px;padding:3px 7px;border-radius:6px;background:var(--accent-bg);color:var(--accent);}

/* ---- Forms (contact/submit) ---- */
.car-field{display:block;margin-bottom:14px;}
.car-field label{display:block;font-size:13px;font-weight:700;margin-bottom:6px;}
.car-field input,.car-field textarea,.car-field select{width:100%;border:1px solid var(--hair2);border-radius:11px;padding:13px 15px;font-family:inherit;font-size:14.5px;color:var(--ink-2);background:var(--input-bg);outline:none;transition:border-color .15s ease;}
.car-field input:focus,.car-field textarea:focus,.car-field select:focus{border-color:var(--accent);}
.car-field input::placeholder,.car-field textarea::placeholder{color:var(--dark-muted);}
.car-field textarea{min-height:120px;resize:vertical;}

/* ---- Empty state ---- */
.car-empty{background:var(--surface);border:1px dashed var(--hair2);border-radius:16px;padding:32px;text-align:center;color:var(--slate);}

/* ---- Entrance animation (transform only — never flashes blank) ---- */
.crfade{animation:crFade .36s cubic-bezier(.2,.8,.2,1) both;}
@keyframes crFade{from{transform:translateY(8px);}to{transform:translateY(0);}}

/* ---- Responsive: collapse sidebar on small screens ---- */
@media (max-width:880px){
  .car-side{display:none;}
  .car-hero h1{font-size:34px;letter-spacing:-1px;}
  .car-content{padding:0 18px;}
}

/* ---- Developer dashboard (M3) ---- */
.car-dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.car-dash-row{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;align-items:flex-start;}

/* ---- M4 Submit / Promote checkout ---- */
.car-paywrap{display:flex;gap:24px;align-items:flex-start;}
.car-form-col{flex:1;min-width:0;}
.car-checkout{flex:none;width:340px;}
.car-plan{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--hair);border-radius:12px;padding:12px 14px;cursor:pointer;margin-bottom:10px;}
.car-plan input{accent-color:var(--accent);margin-top:3px;}
.car-plan.is-sel{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-bd);}
.car-checkpill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--hair);border-radius:20px;padding:7px 12px;font-size:13px;font-weight:700;color:var(--slate);background:var(--surface);cursor:pointer;}
.car-checkpill input{accent-color:var(--accent);}
.car-prodgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.car-prod{display:block;position:relative;border:1px solid var(--hair);border-radius:14px;padding:16px;cursor:pointer;background:var(--surface);}
.car-prod input{position:absolute;opacity:0;pointer-events:none;}
.car-prod.is-sel{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-bd);}
.car-dur{display:flex;gap:6px;background:#eef1f5;border-radius:10px;padding:4px;}
.car-dur label{flex:1;text-align:center;padding:8px 0;border-radius:8px;font-size:13px;font-weight:700;color:var(--slate);cursor:pointer;}
.car-dur label input{position:absolute;opacity:0;pointer-events:none;}
.car-dur label.is-sel{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-card);}
.car-adlabel{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#8a5a12;background:#f7eedd;padding:3px 8px;border-radius:20px;flex:none;}

/* ---- M5 AI Tool Finder modal ---- */
.car-modal{position:fixed;inset:0;z-index:60;background:rgba(14,22,38,.46);backdrop-filter:blur(3px);display:none;align-items:flex-start;justify-content:center;padding:7vh 20px 20px;}
.car-modal.is-open{display:flex;animation:crOverlay .2s ease;}
.car-modal-panel{width:100%;max-width:640px;background:var(--bg);border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden;display:flex;flex-direction:column;max-height:86vh;max-height:86dvh;animation:crPop .26s cubic-bezier(.2,.8,.2,1);}
.car-modal-head{display:flex;align-items:center;gap:11px;padding:18px 22px;background:var(--surface);border-bottom:1px solid var(--hair);}
.car-modal-mark{width:30px;height:30px;border-radius:9px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;flex:none;}
.car-modal-x{width:30px;height:30px;border-radius:8px;background:#f1f4f9;border:0;color:var(--muted);cursor:pointer;font-size:14px;flex:none;}
.car-modal-x:hover{background:var(--hair);}
.car-modal-body{padding:22px;overflow-y:auto;flex:1;}
.car-modal-foot{display:flex;align-items:center;gap:10px;padding:14px 18px;background:var(--surface);border-top:1px solid var(--hair);}
.car-finder-input{flex:1;height:44px;padding:0 16px;background:#f1f4f9;border:1px solid var(--hair);border-radius:12px;font:inherit;font-size:14px;color:var(--ink);}
.car-finder-send{flex:none;width:44px;height:44px;border-radius:12px;background:var(--ink);color:#fff;border:0;font-size:18px;cursor:pointer;}
.car-finder-send:disabled{opacity:.5;cursor:default;}
.car-finder-chips{display:flex;flex-wrap:wrap;gap:8px;}
.car-finder-chip{font-size:12.5px;color:var(--slate);background:var(--surface);border:1px solid var(--hair);border-radius:18px;padding:7px 13px;cursor:pointer;}
.car-finder-chip:hover{border-color:var(--accent);color:var(--accent);}
.car-finder-msg{margin-bottom:16px;}
.car-finder-msg.user{display:flex;justify-content:flex-end;}
.car-finder-msg.user .bubble{max-width:80%;background:var(--ink);color:#fff;font-size:14px;line-height:1.45;padding:11px 15px;border-radius:14px 14px 4px 14px;}
.car-finder-msg.ai{display:flex;gap:10px;}
.car-finder-msg.ai .ic{flex:none;width:28px;height:28px;border-radius:8px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;}
.car-finder-msg.ai .txt{font-size:14px;line-height:1.5;color:#3a4252;align-self:center;}
.car-finder-results{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;}
.car-finder-card{display:block;background:var(--surface);border:1px solid var(--hair);border-radius:14px;padding:15px 16px;text-decoration:none;color:inherit;}
.car-finder-card:hover{border-color:var(--accent);box-shadow:0 8px 22px rgba(20,27,43,.08);}
.car-finder-card .top{display:flex;align-items:center;gap:12px;}
.car-finder-card .ic{width:42px;height:42px;border-radius:12px;font-weight:800;font-size:16px;display:flex;align-items:center;justify-content:center;flex:none;}
.car-finder-card .nm{font-weight:700;font-size:15.5px;color:var(--ink);}
.car-finder-card .rt{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:1px;color:var(--amber);margin-left:4px;}
.car-finder-card .row{display:flex;gap:6px;align-items:center;margin-top:4px;}
.car-finder-card .pr{font-weight:700;font-size:10.5px;color:var(--green-t);background:var(--green-bg);padding:3px 8px;border-radius:20px;}
.car-finder-card .pl{font-size:11.5px;color:var(--muted);}
.car-finder-card .why{display:flex;align-items:flex-start;gap:8px;margin-top:12px;background:var(--accent-bg);border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.45;color:#2c3e66;}
@keyframes crPop{from{opacity:0;transform:translateY(14px) scale(.985);}to{opacity:1;transform:translateY(0) scale(1);}}
@keyframes crOverlay{from{opacity:0;}to{opacity:1;}}

/* ---- Responsive grid collapse ---- */
@media (max-width:1100px){ .car-grid-4,.car-dash-stats{grid-template-columns:repeat(2,1fr);} }
@media (max-width:880px){ .car-paywrap{flex-direction:column;} .car-checkout{width:100%;} }
@media (max-width:820px){ .car-grid,.car-grid-4,.car-trust .pillars,.car-dash-stats{grid-template-columns:1fr;} .car-dash-row{grid-template-columns:1fr;} .car-prodgrid{grid-template-columns:1fr;} .car-an-2col{grid-template-columns:1fr!important;} }

/* ---- Phone header: keep it to one compact 60px row (no wrapping / overflow) ---- */
@media (max-width:560px){
  .car-header{padding:0 12px;gap:8px;}
  .car-header .btn{padding:8px 12px;font-size:13px;}
  .car-header-submit{display:none;}   /* secondary CTA — also in the footer */
  .car-logo{font-size:15px;}
  .car-logo .tld{display:none;}
}

/* ---- Community Pulse popup ---- */
.car-pulse{position:fixed;inset:0;z-index:70;background:rgba(14,22,38,.46);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;padding:20px;}
.car-pulse.is-open{display:flex;animation:crOverlay .2s ease;}
.car-pulse [hidden]{display:none!important;}
.car-pulse-panel{position:relative;width:100%;max-width:430px;background:var(--surface);border-radius:20px;box-shadow:var(--shadow-modal);padding:30px 26px 24px;text-align:center;animation:crPop .26s cubic-bezier(.2,.8,.2,1);max-height:90vh;max-height:90dvh;overflow-y:auto;}
.car-pulse-x{position:absolute;top:12px;right:12px;width:30px;height:30px;border-radius:8px;background:#f1f4f9;border:0;color:var(--muted);cursor:pointer;font-size:13px;}
.car-pulse-x:hover{background:var(--hair);}
.car-pulse-emoji{font-size:34px;line-height:1;margin-bottom:8px;}
.car-pulse-h{font-weight:800;font-size:18px;letter-spacing:-.3px;color:var(--ink);margin-bottom:6px;}
.car-pulse-q{font-size:16px;line-height:1.45;color:var(--ink);font-weight:600;margin-bottom:16px;}
.car-pulse-q strong{font-weight:800;}
.car-pulse-typeahead{position:relative;text-align:left;margin-bottom:8px;}
.car-pulse-input{width:100%;border:1px solid var(--hair2);border-radius:11px;padding:12px 14px;font-size:15px;color:var(--ink);background:var(--surface);outline:none;}
.car-pulse-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg);}
.car-pulse-suggest{position:absolute;left:0;right:0;top:calc(100% + 4px);background:var(--surface);border:1px solid var(--hair);border-radius:11px;box-shadow:var(--shadow-card-hover);overflow:hidden;z-index:2;max-height:240px;overflow-y:auto;}
.car-pulse-sug{display:flex;align-items:center;gap:10px;width:100%;border:0;background:var(--surface);padding:9px 12px;cursor:pointer;text-align:left;font-size:14px;color:var(--ink);}
.car-pulse-sug:hover,.car-pulse-sug.is-active{background:var(--hair4);}
.car-pulse-sug .ic{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex:none;}
.car-pulse-sug .nm{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.car-pulse-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;}
.car-pulse-skip{background:none;border:0;color:var(--muted);font-size:13.5px;font-weight:600;cursor:pointer;padding:8px 4px;}
.car-pulse-skip:hover{color:var(--slate);}
.car-pulse-app{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:14px;}
.car-pulse-app .ic{width:54px;height:54px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;}
.car-pulse-app .nm{font-weight:800;font-size:16px;color:var(--ink);letter-spacing:-.3px;}
.car-pulse-choices{display:flex;flex-direction:column;gap:9px;margin-top:4px;}
.car-pulse-choice{width:100%;border:1px solid var(--hair2);background:var(--surface);border-radius:12px;padding:13px 16px;font-size:15px;font-weight:700;color:var(--ink);cursor:pointer;transition:border-color .14s ease,background .14s ease,transform .12s ease;}
.car-pulse-choice:hover{border-color:var(--accent);background:var(--accent-bg);}
.car-pulse-choice:active{transform:scale(.99);}
.car-pulse-choice.is-used{border-color:var(--accent-bd);background:var(--accent-bg);color:var(--accent);}
.car-pulse-reasons{margin-top:16px;padding-top:14px;border-top:1px solid var(--hair);}
.car-pulse-reasons .lbl{font-size:13px;font-weight:700;color:var(--slate);margin-bottom:10px;}
.car-pulse-reasons .lbl span{color:var(--muted);font-weight:500;}
.car-pulse-reasons .chips{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin-bottom:8px;}
.car-pulse-reason{font-size:12.5px;font-weight:700;color:var(--slate);background:var(--surface);border:1px solid var(--hair2);border-radius:20px;padding:7px 13px;cursor:pointer;}
.car-pulse-reason:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-bg);}

/* "Why some would pass" reason rollup (de-biased pulse reasons, on the Reviews tab) */
.car-reason-row{display:flex;align-items:center;gap:10px;margin-bottom:7px;font-size:13px;}
.car-reason-row .lbl{flex:none;width:140px;color:var(--slate);font-weight:600;}
.car-reason-row .track{flex:1;height:8px;background:var(--hair3);border-radius:5px;overflow:hidden;}
.car-reason-row .bar{display:block;height:100%;background:var(--amber);border-radius:5px;}
.car-reason-row .pct{flex:none;width:34px;text-align:right;color:var(--muted);font-weight:700;}
@media (max-width:560px){ .car-reason-row .lbl{width:104px;} }

/* "% would use again" pulse badge on a listing */
.car-pulse-stat{display:inline-flex;align-items:center;gap:8px;border-radius:12px;padding:8px 14px;font-size:13.5px;font-weight:700;}
.car-pulse-stat .pct{font-size:16px;font-weight:800;letter-spacing:-.3px;}
.car-pulse-stat .n{font-weight:600;opacity:.8;}
.car-pulse-stat.good{color:var(--green-t);background:var(--green-bg);}
.car-pulse-stat.ok{color:#9a6a00;background:#fdf3e0;}
.car-pulse-stat.low{color:#b42318;background:#fdecec;}
.car-pulse-stat.none{color:var(--muted);background:var(--hair4);font-weight:600;}

/* ===================== Admin console (multi-page /admin) ===================== */
.car-adm{display:flex;min-height:100vh;background:var(--bg);}
.car-adm-side{
  flex:none;width:var(--sidebar-w);background:var(--sidebar);border-right:1px solid var(--hair);
  height:100vh;position:sticky;top:0;overflow-y:auto;padding:20px 14px 24px;display:flex;flex-direction:column;
}
.car-adm-brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:16px;color:var(--ink);letter-spacing:-.3px;padding:6px 10px 16px;}
.car-adm-brand .mark{width:28px;height:28px;border-radius:8px;background:var(--ink);color:var(--bg);display:flex;align-items:center;justify-content:center;font-family:'Newsreader',Georgia,serif;font-size:16px;}
.car-adm-brand-sub{color:var(--accent);font-weight:700;}
.car-adm-nav{display:flex;flex-direction:column;gap:2px;}
.car-adm-navlink{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 12px;border-radius:9px;font-size:14px;font-weight:500;color:var(--slate);border:1px solid transparent;transition:background .16s ease,color .16s ease;}
.car-adm-navlink:hover{background:var(--hair4);color:var(--ink);}
.car-adm-navlink.is-active{background:var(--surface);color:var(--ink);font-weight:700;border-color:var(--hair);}
.car-adm-badge{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;background:var(--accent);color:#fff;border-radius:20px;padding:1px 7px;min-width:18px;text-align:center;}
.car-adm-viewsite{margin-top:auto;padding:14px 12px 0;font-size:12.5px;color:var(--muted);font-weight:600;}
.car-adm-viewsite:hover{color:var(--ink);}
.car-adm-main{flex:1;display:flex;flex-direction:column;min-width:0;}
.car-adm-top{position:sticky;top:0;z-index:20;height:var(--header-h);display:flex;align-items:center;gap:14px;padding:0 32px;background:rgba(244,239,229,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--hair);}
.car-adm-top-title{font-weight:800;font-size:18px;letter-spacing:-.4px;color:var(--ink);}
.car-adm-top-right{margin-left:auto;display:flex;align-items:center;gap:12px;}
.car-adm-who{font-size:13px;color:var(--slate);font-weight:600;}
.car-adm-content{flex:1;padding:26px 32px 60px;max-width:1080px;width:100%;}
.car-adm-flash{border-radius:12px;padding:11px 14px;font-weight:700;margin-bottom:16px;font-size:14px;}
.car-adm-flash.ok{background:var(--green-bg);color:var(--green-t);}
.car-adm-flash.err{background:#fdecec;color:#b42318;}

/* Admin sign-in screen */
.car-adm-login{min-height:72vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;}
.car-adm-login-card{background:var(--surface);border:1px solid var(--hair);border-radius:18px;padding:30px 28px;width:100%;max-width:380px;box-shadow:var(--shadow-card);}
.car-adm-login-brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:15px;color:var(--ink);margin-bottom:16px;}
.car-adm-login-brand .mark{width:26px;height:26px;border-radius:7px;background:var(--ink);color:var(--bg);display:flex;align-items:center;justify-content:center;font-family:'Newsreader',Georgia,serif;}
.car-adm-login-brand span{color:var(--accent);}
.car-adm-login-card h1{font-size:24px;font-weight:800;letter-spacing:-.5px;margin:0 0 4px;}
.car-adm-login-card .sub{color:var(--slate);font-size:13.5px;margin:0 0 18px;}

@media (max-width:880px){
  .car-adm{flex-direction:column;}
  .car-adm-side{width:auto;height:auto;position:static;border-right:none;border-bottom:1px solid var(--hair);flex-direction:column;padding:14px;}
  .car-adm-nav{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:4px;padding-bottom:4px;}
  .car-adm-navlink{white-space:nowrap;}
  .car-adm-viewsite{margin-top:8px;padding-top:8px;}
  .car-adm-top{padding:0 16px;}
  .car-adm-content{padding:20px 16px 48px;}
}

/* ============================================================================
   "Best X apps" comparison pages (/best, /best/<slug>) + homepage feature.
   Warm editorial palette, reusing the site tokens. Namespaced .cmp-* / .best-*.
   ============================================================================ */

/* ---- Detail page head ---- */
.cmp-eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:8px;margin:2px 0 12px;}
.cmp-eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);display:inline-block;}
.cmp-h1{font-size:40px;line-height:1.08;font-weight:600;letter-spacing:-.01em;margin:0 0 10px;}
.cmp-h1 em{font-style:italic;color:var(--accent);}
.cmp-sub{color:var(--slate);font-size:16px;line-height:1.55;max-width:680px;margin:0 0 6px;}
.cmp-trust{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:12px 0 26px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.cmp-trust b{color:var(--slate);}

/* ---- Category note (for "different jobs, not head-to-head" categories) ---- */
.cmp-catnote{background:var(--accent-bg);border:1px solid var(--accent-bd);border-radius:12px;padding:12px 16px;margin:0 0 22px;font-size:13.5px;line-height:1.55;color:#1f2937;}

/* ---- Award cards (imagery-forward: icon + medal, why lives in the title tooltip) ---- */
.cmp-awards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:0 0 30px;}
.cmp-award{background:var(--surface);border:1px solid var(--hair);border-radius:14px;padding:14px 16px;display:flex;align-items:center;gap:13px;min-width:0;}
.cmp-award .awd-media{position:relative;width:52px;height:52px;flex:none;}
.cmp-award .awd-media img{width:52px;height:52px;border-radius:14px;object-fit:cover;display:block;}
.cmp-award .awd-mark{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:20px;font-family:'JetBrains Mono',monospace;}
.cmp-award .awd-medal{position:absolute;right:-8px;bottom:-8px;width:26px;height:26px;font-size:14px;background:var(--surface);border:1px solid var(--hair);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px rgba(0,0,0,.1);}
.cmp-award .awd-txt{min-width:0;}
.cmp-award .tag{font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);line-height:1.35;}
.cmp-award .win{font-family:'Newsreader',Georgia,serif;font-size:18px;font-weight:600;margin-top:3px;line-height:1.2;}

/* ---- Comparison matrix ---- */
.cmp-tablecard{background:var(--surface);border:1px solid var(--hair);border-radius:18px;overflow:hidden;}
.cmp-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.cmp-table{border-collapse:collapse;width:100%;min-width:640px;font-size:14px;}
.cmp-table thead th{background:var(--warm-grad);border-bottom:1px solid var(--hair2);vertical-align:bottom;padding:16px 14px;text-align:left;}
.cmp-table thead th.cmp-rowlab{width:230px;min-width:180px;}
.cmp-apphead{display:flex;flex-direction:column;gap:2px;}
.cmp-apphead .ic{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;font-family:'JetBrains Mono',monospace;margin-bottom:6px;}
.cmp-appname{font-family:'Newsreader',Georgia,serif;font-size:17px;font-weight:600;color:var(--ink);}
.cmp-apptier{font-size:11.5px;color:var(--muted);}
.cmp-scorenum{font-family:'Newsreader',Georgia,serif;font-size:22px;font-weight:600;margin-top:9px;color:var(--ink);}
.cmp-scorenum small{font-size:12px;color:var(--muted);font-weight:400;font-family:inherit;}
.cmp-bar{height:6px;border-radius:4px;background:var(--hair3);margin-top:5px;overflow:hidden;max-width:120px;}
.cmp-bar>span{display:block;height:100%;background:var(--accent);border-radius:4px;}
.cmp-rankchip{display:inline-block;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent-bd);background:var(--accent-bg);border-radius:999px;padding:2px 8px;margin-top:9px;width:fit-content;}
.cmp-rankchip.sp{color:#8a5a12;border-color:#e5d3b0;background:#f7eedd;}
.cmp-rankchip.win{color:#8a5a12;border-color:#ecd9a8;background:linear-gradient(135deg,#faf0d6,#f3e3b8);font-weight:700;}

/* Fast-track checkout: the "what you'll be compared on" panel flows in two columns on desktop */
.inc-rowcols{columns:2;column-gap:28px;}
@media (max-width:640px){.inc-rowcols{columns:1;}}

/* Winner column: tinted header + a big #1 medallion pinned top-right of the th */
.cmp-table thead th.cmp-win-col{background:linear-gradient(180deg,#fbf4e0,#f7edd4);position:relative;}
.cmp-winnum{position:absolute;top:12px;right:12px;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Newsreader',Georgia,serif;font-size:22px;font-weight:700;color:#7a4e0e;background:linear-gradient(135deg,#f8e3ab,#eccb7d);box-shadow:0 2px 8px rgba(138,90,18,.28);}

.cmp-table tbody th{font-weight:600;text-align:left;padding:11px 14px;border-bottom:1px solid var(--hair);color:var(--ink-2);background:var(--hair4);}
.cmp-table tbody td{padding:11px 14px;border-bottom:1px solid var(--hair);border-left:1px solid var(--hair);vertical-align:top;color:var(--body-ink);}
.cmp-table tbody tr:last-child th,.cmp-table tbody tr:last-child td{border-bottom:none;}
.cmp-grouprow th{background:var(--accent-bg);font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);}
.cmp-lead{background:rgba(122,94,134,.06);}
.cmp-sp-col{background:#fbf5ea;}
.cmp-yes{color:var(--green-t);font-weight:700;}
.cmp-no{color:var(--dark-muted);font-weight:700;}
.cmp-q{color:var(--amber);font-weight:700;cursor:help;}
.cmp-note{color:var(--muted);font-size:12px;display:block;margin-top:2px;}
.cmp-note.inline{display:inline;margin-left:4px;}

.cmp-pill{display:inline-block;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;color:#fff;}
.cmp-pill.human{background:#3F6B4E;}
.cmp-pill.tts{background:#C0902B;}
.cmp-pill.own{background:#3F6FB0;}
.cmp-pill.none{background:#9a938a;}

.cmp-foot{background:var(--warm-grad);border-top:1px solid var(--hair);padding:14px 16px;font-size:12.5px;color:var(--slate);line-height:1.55;}
.cmp-foot b{color:var(--ink);}
.cmp-legend{display:flex;flex-wrap:wrap;gap:16px;margin:16px 2px 0;font-size:12.5px;color:var(--muted);}
.cmp-legend b{color:var(--ink);}

/* ---- Rubric ---- */
.cmp-method{margin-top:30px;background:var(--surface);border:1px solid var(--hair);border-radius:18px;padding:22px 24px;}
.cmp-method h2{font-size:20px;font-weight:800;letter-spacing:-.4px;margin:0 0 6px;}
.cmp-method p{font-size:13.5px;color:var(--slate);margin:0 0 16px;max-width:760px;line-height:1.6;}
.cmp-weights{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;}
.cmp-w{border:1px solid var(--hair);border-radius:12px;padding:11px 13px;background:var(--input-bg);}
.cmp-w .pct{font-family:'Newsreader',Georgia,serif;font-size:20px;color:var(--accent);font-weight:600;}
.cmp-w .nm{font-size:13.5px;font-weight:700;margin-top:1px;}
.cmp-w .ds{font-size:12px;color:var(--muted);line-height:1.45;margin-top:2px;}

/* ---- Paid-inclusion CTA ---- */
.cmp-cta{margin-top:30px;background:var(--dark-band);color:#fff;border-radius:18px;padding:26px 26px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;}
.cmp-cta .txt{flex:1;min-width:260px;}
.cmp-cta h3{color:#fff;font-size:22px;font-weight:800;letter-spacing:-.4px;margin:0 0 6px;}
.cmp-cta p{color:#cfc7b8;font-size:14px;line-height:1.55;margin:0;}
.cmp-cta .price{font-family:'Newsreader',Georgia,serif;font-size:34px;font-weight:600;color:#fff;line-height:1;}
.cmp-cta .price small{font-size:14px;color:#a89e8e;font-weight:400;font-family:'Hanken Grotesk',sans-serif;}
.cmp-cta .act{display:flex;flex-direction:column;gap:8px;align-items:flex-start;}
.cmp-cta .fine{font-size:12px;color:#a89e8e;}

/* ---- FAQ (reuses .car-faq look via local block) ---- */
.cmp-faq details{background:var(--surface);border:1px solid var(--hair);border-radius:12px;padding:14px 16px;margin-bottom:10px;}
.cmp-faq summary{font-weight:700;font-size:15px;cursor:pointer;list-style:none;}
.cmp-faq summary::-webkit-details-marker{display:none;}
.cmp-faq p{color:var(--slate);font-size:14px;line-height:1.6;margin:10px 0 0;}

/* ---- /best hub cards ---- */
.best-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.best-card{display:flex;flex-direction:column;gap:12px;background:var(--surface);border:1px solid var(--hair);border-radius:16px;padding:20px;transition:box-shadow .16s ease,transform .16s ease;}
.best-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px);}
.best-card .cat{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);}
.best-card h3{font-size:20px;font-weight:800;letter-spacing:-.4px;margin:0;}
.best-card .win{display:flex;align-items:center;gap:10px;margin-top:2px;}
.best-card .win .ic{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;font-family:'JetBrains Mono',monospace;}
.best-card .win .nm{font-weight:700;font-size:14.5px;}
.best-card .win .sc{font-size:12.5px;color:var(--muted);}
.best-card .meta{font-size:12.5px;color:var(--muted);margin-top:auto;}

/* ---- Homepage feature strip ---- */
.cmp-featurewrap{background:var(--surface);border:1px solid var(--hair);border-radius:18px;overflow:hidden;}
.cmp-featurehead{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border-bottom:1px solid var(--hair);flex-wrap:wrap;}
.cmp-podium{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hair);}
.cmp-podium a{background:var(--surface);padding:16px;display:flex;flex-direction:column;gap:6px;text-align:center;align-items:center;}
.cmp-podium a:hover{background:var(--hair4);}
.cmp-podium .rk{font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);}
.cmp-podium .ic{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;font-family:'JetBrains Mono',monospace;}
.cmp-podium .nm{font-weight:700;font-size:14px;}
.cmp-podium .sc{font-family:'Newsreader',Georgia,serif;font-size:18px;font-weight:600;color:var(--accent);}

@media (max-width:820px){
  .cmp-h1{font-size:32px;}
  .best-grid{grid-template-columns:1fr;}
  .cmp-cta{flex-direction:column;align-items:flex-start;gap:16px;}
}

/* ============================================================ */
/* Enriched tool pages (editorial details) — car-ed-*           */
/* Sections render only when their car_tool_details field has   */
/* data; a listing without a details row shows the classic page.*/
/* ============================================================ */
.car-ed-score{text-align:center;}
.car-ed-score .num{font-family:'Newsreader',Georgia,serif;font-size:50px;font-weight:700;line-height:1;color:var(--ink);}
.car-ed-score .num small{font-size:19px;color:var(--muted);font-weight:400;}
.car-ed-score .of{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:6px;}
.car-ed-score .ec{display:inline-flex;align-items:center;gap:6px;margin-top:12px;background:var(--warm-grad);color:#8a6320;border:1px solid #e6d4a8;border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:700;}
.car-ed-score .rank{margin-top:11px;font-size:13px;color:var(--muted);}
.car-ed-score .rank b{color:var(--ink);}
.car-ed-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 22px;}
.car-ed-tile{background:var(--surface);border:1px solid var(--hair);border-radius:13px;padding:13px 15px;box-shadow:var(--shadow-card);}
.car-ed-tile .k{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;}
.car-ed-tile .v{font-family:'Newsreader',Georgia,serif;font-size:22px;font-weight:700;margin-top:3px;}
.car-ed-tile .v small{font-size:12.5px;color:var(--muted);font-weight:400;font-family:'Hanken Grotesk',sans-serif;}
.car-ed-h{font-family:'Newsreader',Georgia,serif;font-size:21px;font-weight:600;letter-spacing:-.01em;margin:30px 0 12px;}
.car-ed-gallery{display:flex;gap:14px;overflow-x:auto;padding-bottom:6px;}
.car-ed-gallery figure{flex:none;margin:0;}
.car-ed-gallery img{height:300px;width:auto;max-width:170px;object-fit:cover;border-radius:16px;border:1px solid var(--hair);background:var(--surface);display:block;}
.car-ed-gallery figcaption{font-size:12px;color:var(--muted);margin-top:6px;max-width:170px;line-height:1.4;}
.car-ed-verdict{background:var(--surface);border:1px solid var(--hair);border-radius:16px;padding:20px 22px;box-shadow:var(--shadow-card);}
.car-ed-verdict p{margin:0 0 12px;font-size:15px;line-height:1.7;color:var(--body-ink);}
.car-ed-verdict p:last-child{margin-bottom:0;}
.car-ed-pull{border-left:3px solid var(--accent);padding:4px 0 4px 14px;margin:16px 0 0;font-family:'Newsreader',Georgia,serif;font-size:18px;color:var(--ink);}
.car-ed-bars{display:grid;grid-template-columns:1fr 1fr;gap:13px 32px;}
.car-ed-bar .top{display:flex;justify-content:space-between;font-size:13.5px;margin-bottom:5px;}
.car-ed-bar .top b{font-weight:600;color:var(--ink);}
.car-ed-bar .top span{color:var(--muted);}
.car-ed-bar .track{height:8px;border-radius:6px;background:var(--star-track);overflow:hidden;}
.car-ed-bar .fill{height:100%;border-radius:6px;background:linear-gradient(90deg,var(--accent-light),var(--accent));}
.car-ed-feat{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.car-ed-fcard{background:var(--surface);border:1px solid var(--hair);border-radius:13px;padding:15px;box-shadow:var(--shadow-card);}
.car-ed-fcard .fi{width:34px;height:34px;border-radius:9px;background:var(--accent-bg);display:grid;place-items:center;font-size:17px;margin-bottom:8px;}
.car-ed-fcard h4{margin:0 0 4px;font-family:'Hanken Grotesk',sans-serif;font-size:14.5px;font-weight:700;}
.car-ed-fcard p{margin:0;font-size:13px;color:var(--muted);line-height:1.5;}
.car-ed-pc{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.car-ed-pcbox{background:var(--surface);border:1px solid var(--hair);border-radius:14px;padding:17px 19px;box-shadow:var(--shadow-card);}
.car-ed-pcbox h3{font-family:'Hanken Grotesk',sans-serif;font-size:15px;margin:0 0 8px;font-weight:700;}
.car-ed-pcbox ul{margin:0;padding:0;list-style:none;}
.car-ed-pcbox li{position:relative;padding:6px 0 6px 24px;font-size:14px;line-height:1.5;border-bottom:1px solid var(--hair4);}
.car-ed-pcbox li:last-child{border-bottom:none;}
.car-ed-pros h3{color:var(--green-t);}
.car-ed-pros li::before{content:"\2713";position:absolute;left:0;color:var(--green-t);font-weight:700;}
.car-ed-cons h3{color:#b1493f;}
.car-ed-cons li::before{content:"\2013";position:absolute;left:2px;color:#b1493f;font-weight:700;}
.car-ed-bf{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.car-ed-bf .b{background:var(--surface);border:1px solid var(--hair);border-radius:14px;padding:17px 19px;}
.car-ed-bf h3{font-family:'Hanken Grotesk',sans-serif;font-size:15px;margin:0 0 7px;font-weight:700;}
.car-ed-bf p{margin:0;font-size:14px;color:var(--body-ink);line-height:1.6;}
.car-ed-price{background:var(--surface);border:1px solid var(--hair);border-radius:14px;padding:18px 20px;box-shadow:var(--shadow-card);display:flex;gap:22px;align-items:center;flex-wrap:wrap;}
.car-ed-price .tag{font-family:'Newsreader',Georgia,serif;font-size:28px;font-weight:700;}
.car-ed-price .desc{flex:1;min-width:240px;font-size:14px;color:var(--body-ink);line-height:1.6;}
.car-ed-cmp-wrap{overflow-x:auto;}
table.car-ed-cmp{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--hair);border-radius:14px;overflow:hidden;font-size:14px;box-shadow:var(--shadow-card);}
table.car-ed-cmp th,table.car-ed-cmp td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--hair);}
table.car-ed-cmp tr:last-child td{border-bottom:none;}
table.car-ed-cmp thead th{background:var(--input-bg);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;}
table.car-ed-cmp td.lbl{font-weight:700;}
table.car-ed-cmp .winner{background:var(--accent-bg);}
.car-ed-faq details{background:var(--surface);border:1px solid var(--hair);border-radius:12px;padding:2px 16px;margin-bottom:10px;box-shadow:var(--shadow-card);}
.car-ed-faq summary{cursor:pointer;padding:12px 0;font-weight:600;font-size:14.5px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:10px;}
.car-ed-faq summary::-webkit-details-marker{display:none;}
.car-ed-faq summary::after{content:"+";color:var(--accent);font-size:20px;flex:none;}
.car-ed-faq details[open] summary::after{content:"\2013";}
.car-ed-faq .a{margin:0 0 14px;font-size:14px;color:var(--body-ink);line-height:1.6;}
.car-ed-rel{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.car-ed-rcard{background:var(--surface);border:1px solid var(--hair);border-radius:13px;padding:14px;box-shadow:var(--shadow-card);display:flex;gap:11px;align-items:center;color:inherit;}
.car-ed-rcard:hover{box-shadow:var(--shadow-card-hover);}
.car-ed-rcard .rn{font-weight:600;font-size:13.5px;line-height:1.2;color:var(--ink);}
.car-ed-rcard .rs{font-size:11.5px;color:var(--muted);margin-top:2px;}
@media(max-width:860px){
  .car-ed-tiles{grid-template-columns:repeat(2,1fr);}
  .car-ed-bars,.car-ed-pc,.car-ed-bf,.car-ed-feat,.car-ed-rel{grid-template-columns:1fr;}
}
