:root{--bg:#f6f8fa;--card:#fff;--ink:#1a2332;--muted:#5b6b7c;--brand:#0b5cad;--brand2:#083f77;--accent:#0e8a5f;--line:#dde4ec;--warn:#fff7e6;--warnb:#e6b800}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6}
a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}
.container{max-width:960px;margin:0 auto;padding:0 16px}
header.site{background:linear-gradient(135deg,var(--brand2),var(--brand));color:#fff;padding:14px 0}
header.site .container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.logo{font-size:1.25rem;font-weight:800;color:#fff}.logo span{color:#8fd0ff}
nav.top a{color:#dbeaff;margin-left:14px;font-size:.92rem}
main{padding:28px 0 40px}
h1{font-size:1.7rem;margin-bottom:6px}
h2{font-size:1.2rem;margin:26px 0 10px}
.sub{color:var(--muted);margin-bottom:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:18px;margin-bottom:18px}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px;text-align:center}
.stat .v{font-size:1.15rem;font-weight:700;color:var(--brand2)}
.stat .l{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
table.glance{width:100%;border-collapse:collapse}
table.glance td{padding:8px 10px;border-bottom:1px solid var(--line);font-size:.95rem}
table.glance td:first-child{color:var(--muted);width:45%}
.disclaimer{background:var(--warn);border-left:4px solid var(--warnb);border-radius:6px;padding:12px 14px;font-size:.88rem;margin:20px 0}

.related{display:flex;flex-wrap:wrap;gap:8px}
.related a{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:6px 14px;font-size:.88rem}
.grid-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.grid-links a{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:9px 12px;font-size:.9rem}
.searchbox{display:flex;gap:8px;margin:18px 0}
.searchbox input{flex:1;padding:11px 14px;border:1px solid var(--line);border-radius:8px;font-size:1rem}
.datestamp{font-size:.78rem;color:var(--muted);margin-top:8px}
footer.site{background:#12203a;color:#b9c6d9;padding:28px 0;margin-top:30px;font-size:.88rem}
footer.site a{color:#8fd0ff}
footer.site h4{color:#fff;margin-bottom:8px;font-size:.95rem}
.footer-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}
#cookie-banner{position:fixed;bottom:0;left:0;right:0;background:#12203a;color:#fff;padding:14px 16px;display:none;z-index:999;font-size:.9rem}
#cookie-banner .container{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#cookie-banner button{padding:8px 18px;border:0;border-radius:6px;font-weight:700;cursor:pointer}
#cookie-accept{background:var(--accent);color:#fff}#cookie-decline{background:#3a4a63;color:#fff}
form.contact input,form.contact textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;margin-bottom:10px;font-size:.95rem;font-family:inherit}
form.contact button{background:var(--brand);color:#fff;border:0;border-radius:8px;padding:10px 22px;font-weight:700;cursor:pointer}
@media(max-width:600px){h1{font-size:1.35rem}.stat-grid{grid-template-columns:repeat(2,1fr)}}
.breadcrumb{font-size:.85rem;color:var(--muted);margin-bottom:14px}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px}
.breadcrumb li+li:before{content:"›";margin:0 6px;color:var(--muted)}
.affiliate-disclosure{font-size:.8rem;color:var(--muted)}
footer.site .affiliate-disclosure{color:#8fa0b8}
.ad-slot{min-height:0}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin-bottom:8px}
.faq summary{font-weight:600;cursor:pointer}
table.rank{width:100%;border-collapse:collapse;margin:14px 0}
table.rank th{text-align:left;padding:8px 10px;border-bottom:2px solid var(--line);font-size:.85rem;color:var(--muted)}
table.rank td{padding:8px 10px;border-bottom:1px solid var(--line);font-size:.92rem}
.note{color:var(--muted);font-size:.85rem;margin-top:14px}

.amz-block{margin:22px 0}
.amz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.amz-card{background:linear-gradient(160deg,#fff,#fdf9f2);border:1px solid #f0d9b0;
  border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px;
  transition:transform .15s,box-shadow .15s,border-color .15s;color:#111}
.amz-card:hover{transform:translateY(-3px);border-color:#ff9900;
  box-shadow:0 8px 20px rgba(255,153,0,.22)}
.amz-card p{font-size:.85rem;color:#555;margin:0;flex:1}
.amz-badge{align-self:flex-start;background:#232f3e;color:#ff9900;font-weight:700;
  font-size:.68rem;letter-spacing:.06em;padding:3px 8px;border-radius:4px}
.amz-title{font-weight:700;line-height:1.3}
.amz-cta{margin-top:auto;display:block;text-align:center;font-weight:700;
  color:#111;background:linear-gradient(180deg,#ffd814,#ff9900);
  border-radius:8px;padding:10px 12px;text-decoration:none;min-height:44px;box-sizing:border-box}
.amz-inline{color:#b45309;text-decoration:underline;
  text-decoration-color:#f59e0b;text-underline-offset:2px;font-weight:600}
