:root{--stick:0px}
/* Library, login, checklist and stats pages only (the search page loads app.css alone). */
.tabs{--g:4px;display:flex;gap:var(--g);border-bottom:var(--b);margin-bottom:16px;overflow-x:auto}
.tabs a{padding:0 14px;text-decoration:none;color:var(--mu);border-bottom:2px solid transparent;white-space:nowrap}.tabs a[aria-selected=true]{color:var(--tx);border-color:var(--ac);font-weight:600}
.saved{list-style:none;padding:0;margin:0;display:grid;gap:12px}.saved-row,.settings,.panel{background:var(--sf);border:var(--b);border-radius:var(--r);padding:12px 16px}
.saved-row p{margin:8px 0}.rename{display:flex;gap:8px}.row-actions{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}.row-actions select{width:auto}
.settings,.panel{margin-bottom:16px}.weights{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.budget{height:14px}
.cset{margin:10px 0 18px}.lane{margin:6px 0}.lane-h{display:inline-flex;align-items:center;min-height:44px;font-size:.88rem;color:var(--ac);font-weight:600}
.cells,.rainbow{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.rainbow{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
.cell{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:var(--rs);border:1px dashed var(--ln);font-size:.85rem;min-width:0}
.cell b{font-size:.88rem}.cell.live{border:1px solid var(--ac);background:var(--as)}.cell select{min-height:44px;padding:4px 8px;margin-top:4px}
.cell:has(option[value=owned]:checked){border:2px solid var(--ok)}.cell:has(option[value=wanted]:checked){border:2px solid var(--wn)}
.cell .link{padding:0;min-height:44px;justify-content:flex-start;text-align:left}.mine{display:grid;gap:6px;margin-top:6px}
.heat{display:grid;gap:10px}.heat-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.heat-y{min-width:5.5em;font-weight:600;min-height:44px;display:inline-flex;align-items:center}
.hm{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;border-radius:var(--rs);text-decoration:none;font-size:.85rem;background:var(--sk)}
.h1{background:color-mix(in srgb,var(--ac) 22%,var(--sf))}.h2{background:color-mix(in srgb,var(--ac) 45%,var(--sf))}
.h3{background:color-mix(in srgb,var(--ac) 70%,var(--sf));color:var(--ai)}.h4{background:var(--ac);color:var(--ai)}
.login{max-width:360px;margin:12vh auto 0;text-align:center;display:grid;gap:10px;background:var(--sf);padding:28px;border-radius:var(--r);box-shadow:var(--sh)}
.login label{text-align:left;font-weight:600}.error{color:#c0392b;margin:0}
.res-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:12px}.res-head p{margin:0}
.bars{list-style:none;padding:0;margin:0;display:grid;gap:6px}.bars li{display:grid;grid-template-columns:8.5em 1fr 2.5em;gap:8px;align-items:center;font-size:.88rem}meter{width:100%;height:10px}
.specs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:4px 12px;font-size:.88rem}.specs dt{color:var(--mu)}.specs dd{margin:0;overflow-wrap:anywhere}
.bars meter{appearance:none;height:8px;border-radius:99px;background:var(--sk)}.bars meter::-webkit-meter-bar{height:8px;border:0;border-radius:99px;background:var(--sk)}.bars meter::-webkit-meter-optimum-value{border-radius:99px;background:var(--ac)}.bars meter::-moz-meter-bar{border-radius:99px;background:var(--ac)}
.pw{position:relative}.pw input{padding-right:76px}.pwt{position:absolute;right:4px;top:0;height:44px;padding:0 14px;border:0;border-radius:99px;background:none;color:var(--ac);font:inherit;font-weight:600;cursor:pointer}
.notfound{margin-top:12vh}
.more{margin:6px 0}.more>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:.85rem;color:var(--ac);font-weight:600}
