:root,:root[data-theme=dark]{--bg:#0d0f11;--bg-elev:#16191d;--bg-card:#181c21;--border:#262b31;--border-hi:#3a444c;--text:#e9edf0;--text-dim:#98a2ab;--text-mute:#69727b;--accent:#14b8a6;--accent-ink:#04120f;--green:#34d399;--amber:#fbbf24;--red:#f87171;--shadow:0 1px 2px rgba(0,0,0,.4)}:root[data-theme=light]{--bg:#f5f6f6;--bg-elev:#fff;--bg-card:#fff;--border:#e4e7ea;--border-hi:#c4ccd2;--text:#16191c;--text-dim:#566069;--text-mute:#8a929a;--accent:#0d9488;--accent-ink:#fff;--green:#059669;--amber:#b45309;--red:#dc2626;--shadow:0 1px 2px rgba(16,24,32,.06)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:radial-gradient(1100px 560px at 84% -14%,color-mix(in srgb,var(--accent) 13%,var(--bg)) 0,var(--bg) 56%);background-attachment:fixed;color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh;transition:background-color .2s,color .2s}a{color:inherit;text-decoration:none}svg{display:inline-block;vertical-align:middle;flex-shrink:0}.wrap{max-width:1180px;margin:0 auto;padding:24px 20px 70px}.topbar{gap:8px}.brand,.topbar{display:flex;align-items:center}.brand{gap:10px;font-size:20px;font-weight:800;letter-spacing:-.02em}.brand svg{color:var(--accent)}.nav{display:flex;gap:4px;margin-left:22px}.navlink{padding:8px 14px;border-radius:9px;font-size:14px;font-weight:600;color:var(--text-dim)}.navlink:hover{color:var(--text);background:var(--bg-elev)}.navlink.on{color:var(--text);background:var(--bg-card);border:1px solid var(--border-hi)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:12px}.live{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--green)}.live .dot{width:8px;height:8px;border-radius:50%;background:var(--green);animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--green) 50%,transparent)}70%{box-shadow:0 0 0 8px transparent}to{box-shadow:0 0 0 0 transparent}}.themebtn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;transition:color .15s,border-color .15s}.themebtn:hover{color:var(--text);border-color:var(--border-hi)}.subtitle{color:var(--text-dim);margin:10px 0 22px;font-size:14px}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:20px}.stat{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow)}.stat .k{font-size:26px;font-weight:800;letter-spacing:-.02em}.stat .l{color:var(--text-mute);font-size:12px;margin-top:4px;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:6px}.stat .l svg{width:14px;height:14px}.filterbar{gap:10px;flex-wrap:wrap;background:var(--bg-elev);border:1px solid var(--border);border-radius:14px;padding:12px;margin-bottom:24px}.field,.filterbar{display:flex;align-items:center}.field{gap:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:0 12px;color:var(--text-mute)}.field.search{flex:1 1;min-width:200px}.field input{background:transparent;border:none;padding:10px 0;width:100%}.field input,.select{outline:none;color:var(--text);font-size:14px}.select{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:10px 12px;cursor:pointer}.field:focus-within,.select:focus{border-color:var(--accent)}.checkfield{display:flex;align-items:center;gap:8px;color:var(--text-dim);font-size:14px;cursor:pointer;padding:0 4px}.checkfield input{accent-color:var(--accent);width:16px;height:16px}.btn{background:var(--accent);color:var(--accent-ink);border:none;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:700;cursor:pointer}.btn:hover{filter:brightness(1.08)}.btn.ghost{background:transparent;border:1px solid var(--border);color:var(--text-dim);font-weight:600}.btn.ghost:hover{background:var(--bg-card);color:var(--text);filter:none}.sec-row{justify-content:space-between}.sec,.sec-row{display:flex;align-items:center}.sec{gap:8px;font-size:17px;margin:6px 0 14px}.sec svg{color:var(--text-dim)}.count{font-size:13px;color:var(--text-mute);border:1px solid var(--border);border-radius:999px;padding:2px 9px;font-weight:600}.count,.toggle{background:var(--bg-elev)}.toggle{gap:3px;border:1px solid var(--border);border-radius:10px;padding:3px}.tg,.toggle{display:inline-flex}.tg{align-items:center;gap:6px;padding:6px 12px;border-radius:7px;font-size:13px;color:var(--text-dim)}.tg:hover{color:var(--text)}.tg.on{background:var(--accent);color:var(--accent-ink)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:14px;gap:14px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow);transition:border-color .15s,transform .15s}.card:hover{border-color:var(--border-hi);transform:translateY(-2px)}.card .row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.card .title{font-weight:700;font-size:15px;line-height:1.3}.brandtag{color:var(--text-mute);font-size:12px;text-transform:capitalize;margin-top:3px}.score{min-width:52px;text-align:center;border-radius:10px;padding:6px 4px;font-weight:800;border:1px solid var(--border)}.score .n{font-size:20px;line-height:1}.score .u{font-size:10px;color:var(--text-mute)}.pill.high,.score.high{background:color-mix(in srgb,var(--green) 15%,transparent);border-color:color-mix(in srgb,var(--green) 42%,transparent);color:var(--green)}.pill.mid,.score.mid{background:color-mix(in srgb,var(--amber) 15%,transparent);border-color:color-mix(in srgb,var(--amber) 42%,transparent);color:var(--amber)}.pill.low,.score.low{background:color-mix(in srgb,var(--text-mute) 15%,transparent);color:var(--text-dim)}.price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.price .now{font-size:22px;font-weight:800;letter-spacing:-.02em}.price.big .now{font-size:32px}.discount{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px}.discount.pos{background:color-mix(in srgb,var(--green) 15%,transparent);color:var(--green)}.discount.neg{background:color-mix(in srgb,var(--red) 13%,transparent);color:var(--red)}.median{color:var(--text-mute);font-size:12px}.reasons{display:flex;flex-wrap:wrap;gap:6px}.reason{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-dim);background:var(--bg-elev);border:1px solid var(--border);padding:3px 8px;border-radius:6px}.reason.warn{color:var(--red);border-color:color-mix(in srgb,var(--red) 32%,transparent)}.meta{display:flex;justify-content:space-between;color:var(--text-mute);font-size:12px;border-top:1px solid var(--border);padding-top:10px;margin-top:auto}.loc,.meta{align-items:center}.loc{display:inline-flex;gap:5px}.dot-sep{width:3px;height:3px;border-radius:50%;background:var(--text-mute);margin:0 6px;display:inline-block}.viewbtn{display:inline-flex;align-items:center;gap:4px;color:var(--accent);font-weight:600;font-size:13px}.card:hover .viewbtn{text-decoration:underline}.empty{color:var(--text-mute);text-align:center;padding:60px;border:1px dashed var(--border);border-radius:14px}.tablewrap{overflow-x:auto;border:1px solid var(--border);border-radius:14px;background:var(--bg-card)}.market{width:100%;border-collapse:collapse;font-size:13px;min-width:720px}.market th{text-align:left;color:var(--text-mute);font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:11px;background:var(--bg-elev);position:-webkit-sticky;position:sticky;top:0}.market td,.market th{padding:12px 14px;border-bottom:1px solid var(--border)}.market tr:last-child td{border-bottom:none}.market tbody tr:hover td{background:var(--bg-elev)}.market .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.market .mdl{text-transform:capitalize;color:var(--text)}.market .strong{font-weight:700}.market .dim{color:var(--text-mute)}.market .good{color:var(--green);font-weight:700}.market .bad{color:var(--red);font-weight:700}.market .site-cell,.market .site-col{border-left:1px solid var(--border)}.market .site-cell{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.market .site-cell.cheap{background:color-mix(in srgb,var(--green) 12%,transparent);color:var(--green);font-weight:700}.pill{display:inline-block;min-width:30px;text-align:center;padding:2px 8px;border-radius:6px;font-weight:800;font-size:12px;border:1px solid var(--border)}.modellink{color:var(--accent)}.modellink:hover{text-decoration:underline}.listtable .mdl{max-width:320px}.back{color:var(--text-dim);font-size:14px;display:inline-block;margin-bottom:18px}.back:hover{color:var(--text)}.detail-grid{display:grid;grid-template-columns:1.6fr 1fr;grid-gap:16px;gap:16px;align-items:start}.panel{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:22px;box-shadow:var(--shadow)}.detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.detail-head h1{margin:0;font-size:22px;letter-spacing:-.02em}.detail .price.big{margin-bottom:14px}.kv{margin:18px 0 0;flex-direction:column}.kv,.kv>div{display:flex}.kv>div{gap:14px;padding:11px 0;border-top:1px solid var(--border)}.kv dt{color:var(--text-mute);font-size:13px;width:110px;flex-shrink:0}.kv dd{margin:0;font-size:14px;display:flex;align-items:center;gap:6px}.kv .strong{font-weight:700}.kv .good{color:var(--green)}.kv .bad{color:var(--red)}.market-kv>div:first-child{border-top:none}.dim{color:var(--text-mute)}.source-note{display:flex;gap:10px;align-items:flex-start;margin-top:20px;padding:12px 14px;background:color-mix(in srgb,var(--amber) 10%,transparent);border:1px solid color-mix(in srgb,var(--amber) 28%,transparent);border-radius:10px;font-size:12.5px;color:var(--text-dim);line-height:1.5}.source-note svg{color:var(--amber);margin-top:2px}.pricebar{margin-top:20px}.pricebar .track{position:relative;height:8px;background:linear-gradient(90deg,var(--green),var(--amber),var(--red));border-radius:999px;opacity:.8}.pricebar .mark{top:-4px;width:4px;height:16px;background:var(--text);border-radius:2px;box-shadow:0 0 0 2px var(--bg-card)}.pricebar .mark,.pricebar .med{position:absolute;transform:translateX(-50%)}.pricebar .med{top:-2px;width:2px;height:12px;background:var(--text-mute)}.pricebar .scale{display:flex;justify-content:space-between;color:var(--text-mute);font-size:11px;margin-top:8px}@media (max-width:820px){.detail-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.field.search{min-width:100%}.nav{margin-left:8px}}