:root{--ink:#1d1d1b;--muted:#5b5b56;--line:#d9d6cf;--bg:#fbfaf7;--card:#fff;--accent:#0b5d6b;--warn:#8a4b00}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.wrap{max-width:46rem;margin:0 auto;padding:0 1rem}
a{color:var(--accent);overflow-wrap:break-word}
h1{font-size:1.6rem;line-height:1.25;margin:1.2rem 0 .6rem}
h2{font-size:1.2rem;line-height:1.3;margin:1.6rem 0 .5rem}
h3{font-size:1.05rem;margin:1rem 0 .4rem}
.site-header{border-bottom:1px solid var(--line);padding:.6rem 0}
.brand{font-weight:700;text-decoration:none;color:var(--ink)}
.site-nav{display:flex;flex-wrap:wrap;gap:.2rem .9rem;margin-top:.3rem;font-size:.95rem}
.site-footer{border-top:1px solid var(--line);margin-top:2.5rem;padding:1rem 0 2rem;font-size:.9rem;color:var(--muted)}
.quiet{color:var(--muted)}.small{font-size:.9rem}
.method,.note-box{border:1px solid var(--line);background:var(--card);padding:.6rem .9rem;margin:1rem 0}
.entries{list-style:none;padding:0;margin:0}
.entry{border-top:1px solid var(--line);padding:1rem 0}
.entry-head{display:flex;gap:.75rem;align-items:baseline}
.entry-head h2{margin:0}
.rank{font-weight:700;font-size:1.3rem;min-width:2.2rem}
.components{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.4rem;margin:.6rem 0}
.components div{border:1px solid var(--line);padding:.35rem .5rem;background:var(--card)}
.components dt{font-size:.8rem;color:var(--muted)}.components dd{margin:0;font-weight:600}
.calc{font-size:.9rem;color:var(--muted)}
.offers{list-style:none;padding:0;margin:.4rem 0}
.offer{border:1px solid var(--line);background:var(--card);padding:.5rem .7rem;margin:.4rem 0}
.offer p{margin:.2rem 0}
.disclosure{font-size:.85rem;color:var(--muted)}
.warning{color:var(--warn)}
.origin{border-left:3px solid var(--accent);padding:.3rem .8rem;margin:.8rem 0;background:var(--card)}
.badge{display:inline-block;font-size:.8rem;font-weight:700;border:1px solid var(--accent);padding:.05rem .4rem}
blockquote{margin:.4rem 0}
.sha,.url{font-family:ui-monospace,Menlo,monospace;font-size:.75rem;overflow-wrap:anywhere}
.image-placeholder{border:1px dashed var(--line);padding:2rem 1rem;text-align:center;color:var(--muted);margin:.8rem 0}
.unranked ul,.plain{padding-left:1.1rem}
.unranked li{margin:.3rem 0}
details.unranked-list summary{cursor:pointer}
details.unranked-list ul{padding-left:1.1rem;margin:.4rem 0}
dl.details{display:grid;grid-template-columns:minmax(7rem,auto) 1fr;gap:.2rem .8rem}
dl.details dt{color:var(--muted)}dl.details dd{margin:0;overflow-wrap:anywhere}
form label{display:block;margin:.5rem 0}
input,textarea{display:block;width:100%;max-width:30rem;font:inherit;padding:.35rem}
button{font:inherit;padding:.35rem .9rem;margin-top:.4rem}