/* care-ratings: one small stylesheet, mobile-first, no framework */
:root{--ink:#16232b;--muted:#5a6b75;--line:#dfe6ea;--bg:#f6f8f9;--card:#fff;--brand:#0f5b5c;--brand-2:#e7f2f1;--accent:#c2410c;--good:#15803d;--good-bg:#e8f5ec;--bad:#b42318;--bad-bg:#fdecea;--warn:#a15c07;--warn-bg:#fff4e0;--star:#e8a317;--radius:10px;--max:1080px;
font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);line-height:1.55;-webkit-text-size-adjust:100%}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);font-size:17px}
a{color:var(--brand);text-underline-offset:2px}
a:hover{color:#0a3f40}
h1,h2,h3{line-height:1.25;margin:0 0 .5em}
h1{font-size:1.75rem}
h2{font-size:1.3rem}
h3{font-size:1.05rem;margin:0}
p{margin:.4em 0 .9em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9}
.muted{color:var(--muted)}.small{font-size:.9rem}.tiny{font-size:.78rem}.nowrap{white-space:nowrap}
.lead{font-size:1.05rem;color:#2c3d47}
.eyebrow{text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;color:var(--brand);font-weight:600;margin:0 0 .3em}

/* header */
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.header-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding-top:10px;padding-bottom:6px}
.logo{display:flex;align-items:center;gap:8px;font-weight:700;font-size:1.15rem;color:var(--ink);text-decoration:none}
.header-search{display:flex;flex:1 1 260px;max-width:420px;position:relative}
.header-search input{flex:1;min-width:0;padding:9px 12px;border:1px solid var(--line);border-radius:8px 0 0 8px;font-size:1rem}
.header-search button{padding:9px 14px;border:0;background:var(--brand);color:#fff;border-radius:0 8px 8px 0;font-size:.95rem;cursor:pointer}
.nav{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px;font-size:.92rem;scrollbar-width:none}
.nav a{white-space:nowrap;color:#2c3d47;text-decoration:none}.nav a:hover{color:var(--brand);text-decoration:underline}

/* layout */
main{padding-top:14px;padding-bottom:40px}
.page-head{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:16px}
.section{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin:16px 0}
.crumbs ol{list-style:none;padding:0;margin:0 0 10px;display:flex;flex-wrap:wrap;gap:6px;font-size:.85rem;color:var(--muted)}
.crumbs li+li::before{content:"›";margin-right:6px}
.asof{font-size:.82rem;color:var(--muted);margin:.6em 0 0}

/* hero + search */
.hero{text-align:center;padding:28px 12px 18px}
.hero h1{font-size:2rem;max-width:760px;margin:0 auto .4em}
.search{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0;position:relative}
.search input{flex:1 1 240px;padding:11px 12px;border:1px solid #c9d4da;border-radius:8px;font-size:1rem}
.search select{padding:10px;border:1px solid #c9d4da;border-radius:8px;font-size:1rem;background:#fff;max-width:100%}
.search button[type=submit],.btn{padding:11px 18px;background:var(--brand);color:#fff;border:0;border-radius:8px;font-size:1rem;cursor:pointer}
.search.big{max-width:760px;margin:16px auto}
.linkish{background:none;border:0;color:var(--brand);text-decoration:underline;cursor:pointer;font-size:.92rem;padding:4px}
.suggest{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.12);z-index:20;list-style:none;margin:4px 0 0;padding:4px;text-align:left}
.suggest a{display:block;padding:8px 10px;border-radius:6px;text-decoration:none;color:var(--ink)}
.suggest a:hover,.suggest a.active{background:var(--brand-2)}
.suggest small{display:block;color:var(--muted)}

/* stars + scores */
.stars{color:var(--star);letter-spacing:1px;white-space:nowrap;font-size:1.05rem}
.stars .off{color:#d6dde1}
.stars .num{color:var(--ink);font-weight:600;margin-left:6px;letter-spacing:0;font-size:.92rem}
.stars.none{color:var(--muted);font-size:.85rem;letter-spacing:0}
.scorebox{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;margin:12px 0;padding:12px;background:var(--brand-2);border-radius:8px}
.score-main{display:flex;gap:12px;align-items:center}
.score-main .stars{font-size:1.5rem}
.subscores{list-style:none;padding:0;margin:0;display:grid;gap:4px}
.subscores li{display:flex;justify-content:space-between;gap:12px;font-size:.92rem}
.flags{list-style:none;padding:0;margin:8px 0;display:flex;flex-wrap:wrap;gap:6px}
.flag{font-size:.82rem;font-weight:600;padding:3px 9px;border-radius:999px;cursor:help}
.flag.bad{background:var(--bad-bg);color:var(--bad)}.flag.warn{background:var(--warn-bg);color:var(--warn)}.flag.good{background:var(--good-bg);color:var(--good)}
.pill{font-size:.78rem;font-weight:600;padding:2px 8px;border-radius:999px;white-space:nowrap}
.pill.better{background:var(--good-bg);color:var(--good)}.pill.worse{background:var(--bad-bg);color:var(--bad)}.pill.similar{background:#eef1f3;color:#44545d}
.sev{display:inline-block;min-width:1.6em;text-align:center;font-weight:700;border-radius:4px;padding:0 4px}
.sev-ij{background:var(--bad);color:#fff}.sev-harm{background:var(--bad-bg);color:var(--bad)}.sev-pot{background:var(--warn-bg);color:var(--warn)}.sev-min{background:#eef1f3}

/* cards */
.cards{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.card{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;background:#fff}
.card h3 a{text-decoration:none}.card h3 a:hover{text-decoration:underline}
.card p{margin:.2em 0}
.card-score{text-align:right;min-width:120px;display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.rank{color:var(--muted);margin-right:6px;font-weight:500}
.card-ad{list-style:none}

/* tables */
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font-size:.93rem}
th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}
thead th{background:#f1f5f7;font-size:.82rem;text-transform:uppercase;letter-spacing:.03em;color:#44545d}
tbody th{font-weight:500}
table.measures td:nth-child(n+2){white-space:nowrap}
table.compare td.best{background:var(--good-bg);font-weight:600}
.help{cursor:help;color:var(--muted)}

/* charts (server-rendered SVG) */
.chart{margin:8px 0 14px}
.chart svg{width:100%;max-width:620px;height:auto;display:block}
.chart .cl{font-size:13px;fill:#33434c}
.chart .cv{font-size:13px;fill:#16232b;font-weight:600}
.chart .bar{fill:#9cc3c2}.chart .bar.hi{fill:var(--brand)}
.chart figcaption{font-size:.82rem;color:var(--muted)}

/* misc blocks */
.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px 18px;margin:0}
.facts div{border-bottom:1px solid var(--line);padding-bottom:6px}
.facts dt{font-size:.8rem;color:var(--muted)}.facts dd{margin:0;font-weight:500}
.stats{list-style:none;padding:0;margin:0 0 10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.stats li{background:var(--brand-2);border-radius:8px;padding:12px}
.stats strong{display:block;font-size:1.5rem}.stats span{font-size:.85rem;color:#33434c}
.cols{columns:3 200px;column-gap:24px;list-style:none;padding:0;margin:0}
.cols li{break-inside:avoid;padding:2px 0}
.links{padding-left:1.1em}.links li{margin:6px 0}
.tiles{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.tiles a{display:flex;flex-direction:column;gap:4px;height:100%;padding:14px;border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:var(--ink);background:#fff}
.tiles a:hover{border-color:var(--brand)}
.typeswitch{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.typeswitch a,.typeswitch span{font-size:.85rem;padding:4px 10px;border-radius:999px;border:1px solid var(--line);text-decoration:none}
.typeswitch .on{background:var(--brand);color:#fff;border-color:var(--brand)}
.faq details{border-bottom:1px solid var(--line);padding:8px 0}
.faq summary{cursor:pointer;list-style:none}.faq summary h3{display:inline;font-size:1rem}
.trust{padding-left:1.1em}.trust li{margin:8px 0}
.guide-list{list-style:none;padding:0}.guide-list li{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin:10px 0}
.prose{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px;max-width:820px}
.prose table{margin:12px 0}
.prose li{margin:4px 0}
.static{max-width:820px}
.ai-note{border-left:3px solid var(--brand);padding-left:12px;margin-top:10px}

/* ads: reserved space avoids layout shift (CLS) */
.ad{margin:16px auto;text-align:center;min-height:100px;max-width:100%}
.ad-top{min-height:120px}
.ad-label{display:block;font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.ad-placeholder{display:flex;align-items:center;justify-content:center;border:1px dashed #c9d4da;border-radius:8px;color:#9aa8b0;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;background:repeating-linear-gradient(45deg,#fafbfc,#fafbfc 10px,#f4f6f8 10px,#f4f6f8 20px)}

/* footer */
.site-footer{background:#0f2a2b;color:#d7e4e4;padding:28px 0 20px;margin-top:30px;font-size:.92rem}
.site-footer a{color:#cfe8e6}
.site-footer .muted{color:#a9bfbf}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:16px}
.footer-grid ul{list-style:none;padding:0;margin:8px 0}.footer-grid li{margin:4px 0}

@media (min-width:760px){
  h1{font-size:2.05rem}
  .page-head,.section{padding:22px 26px}
}
@media (max-width:520px){
  .card{flex-direction:column}
  .card-score{align-items:flex-start;text-align:left}
  .hero h1{font-size:1.6rem}
}
