:root{--bg:#0b0d12;--panel:#131722;--panel2:#1a1f2e;--line:#262c3d;--text:#e8ebf2;--muted:#9aa3b5;--accent:#7c5cff;--accent2:#22d3ee;--good:#34d399;--warn:#fbbf24;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}
a{color:var(--accent2);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.disclosure-bar{background:#1b1530;border-bottom:1px solid #2d2350;color:#cbbcff;font-size:13px;text-align:center;padding:7px 12px}
header.nav{position:sticky;top:0;z-index:10;background:rgba(11,13,18,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
header.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:60px}
.logo{font-weight:800;font-size:20px;letter-spacing:-.02em;color:var(--text)}.logo span{background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;color:transparent}
nav a{color:var(--muted);margin-left:22px;font-size:14px;font-weight:500}nav a:hover{color:var(--text);text-decoration:none}
.hero{padding:64px 0 36px;background:radial-gradient(800px 300px at 20% 0%,rgba(124,92,255,.25),transparent),radial-gradient(600px 260px at 90% 10%,rgba(34,211,238,.15),transparent)}
.hero h1{font-size:46px;line-height:1.08;letter-spacing:-.03em;margin:0 0 14px;max-width:760px}
.hero p{color:var(--muted);font-size:18px;max-width:680px;margin:0}
.pill{display:inline-block;font-size:12px;font-weight:600;color:var(--accent2);background:rgba(34,211,238,.1);border:1px solid rgba(34,211,238,.3);padding:4px 10px;border-radius:99px;margin-bottom:16px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px}
.card .k{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.card .v{font-size:28px;font-weight:800;margin:4px 0}.card .s{font-size:13px;color:var(--muted)}
section{padding:40px 0}h2{font-size:28px;letter-spacing:-.02em;margin:0 0 6px}.sub{color:var(--muted);margin:0 0 20px}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;align-items:center}
select,input{background:var(--panel2);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:9px 12px;font-size:14px;font-family:inherit}
label.chk{font-size:14px;color:var(--muted);display:flex;gap:6px;align-items:center}
.tablewrap{overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);max-height:640px}
table{border-collapse:collapse;width:100%;font-size:14px}
th,td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
th{position:sticky;top:0;background:var(--panel2);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);cursor:pointer;user-select:none}
th:hover{color:var(--text)}th.sorted::after{content:" ▲";color:var(--accent2)}th.sorted.desc::after{content:" ▼"}
td.num{font-variant-numeric:tabular-nums;text-align:right}th.num{text-align:right}
tr:hover td{background:#171c29}.price{font-weight:700}.best{color:var(--good)}
.tag{font-size:11px;padding:2px 7px;border-radius:99px;background:rgba(251,191,36,.12);color:var(--warn);border:1px solid rgba(251,191,36,.3);margin-left:6px}
.note{color:var(--muted);font-size:12px;white-space:normal;min-width:220px;max-width:340px}
.calc{display:grid;grid-template-columns:1fr 1.1fr;gap:20px}
.calc .panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.field{margin-bottom:14px}.field label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.field select,.field input{width:100%}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.big{font-size:44px;font-weight:800;letter-spacing:-.02em}.big small{font-size:16px;color:var(--muted);font-weight:500}
.kv{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px dashed var(--line);font-size:14px}.kv span:first-child{color:var(--muted)}
.alts{margin-top:16px}.alts h4{margin:0 0 8px;font-size:14px}.alt{display:flex;justify-content:space-between;font-size:13px;padding:6px 0;border-bottom:1px solid var(--line)}
.btn{background:linear-gradient(90deg,var(--accent),#5b8cff);color:#fff;border:0;border-radius:10px;padding:10px 18px;font-weight:700;cursor:pointer;font-size:14px}
.news{background:linear-gradient(135deg,#1a1535,#0f1d2b);border:1px solid #2d2350;border-radius:20px;padding:30px;display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.news form{display:flex;gap:10px}.news input{min-width:260px}
.ok{color:var(--good);font-size:14px;margin-top:8px}
footer{border-top:1px solid var(--line);padding:30px 0 50px;color:var(--muted);font-size:13px;margin-top:30px}
.prose{max-width:780px}.prose h3{margin-top:28px}
.log{border-left:2px solid var(--line);padding-left:20px;margin-left:6px}
.log .entry{position:relative;margin-bottom:26px}.log .entry::before{content:"";position:absolute;left:-27px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--accent)}
.log .date{font-size:13px;color:var(--accent2);font-weight:600}.log ul{margin:6px 0;padding-left:18px;color:#cfd4df}
@media(max-width:860px){.cards{grid-template-columns:1fr 1fr}.calc{grid-template-columns:1fr}.hero h1{font-size:34px}nav a{margin-left:12px}}
.accuracy{background:rgba(251,191,36,.07);border:1px solid rgba(251,191,36,.28);color:#f3dca0;border-radius:12px;padding:10px 14px;font-size:13px;margin:0 0 14px}
.accuracy a{color:var(--warn);text-decoration:underline}
.updated{font-size:13px;color:var(--muted);margin:-2px 0 20px}
.footlinks a{margin-right:16px}

.newsform{flex:1;min-width:320px;max-width:560px}.nrow{display:flex;gap:10px}.nrow input{flex:1}
.alerts{margin-top:12px;font-size:14px;color:var(--muted)}.alerts summary{cursor:pointer;color:#cbbcff}
.tagbox{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 14px;margin-top:10px}.tagbox label{display:flex;gap:6px;align-items:center;font-size:13px;color:#cfd4df}.tagbox input{min-width:0}
.fine{font-size:12px;color:var(--muted);margin:10px 0 0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.news form.embeddable-buttondown-form{display:block}
.news .nrow input[type=email]{min-width:0;flex:1}
.news .tagbox input[type=checkbox]{min-width:0;width:auto;margin:0;accent-color:var(--accent)}
.news .btn{white-space:nowrap}
@media(max-width:860px){.tagbox{grid-template-columns:1fr 1fr}}

a.plain{color:var(--text)}a.btn.cta{display:inline-block;text-decoration:none}a.btn.cta:hover{filter:brightness(1.1)}

#fModel{max-width:100%}@media(max-width:600px){.filters select,.filters input[type=number]{flex:1 1 calc(50% - 10px);min-width:0}.filters #fModel{flex-basis:100%}}
