:root{--paper: #f4f2ec;--paper2: #fbfaf6;--ink: #16213a;--ink2: #4a5570;--muted: #8a93ad;--pos: #1e7d3c;--pos-bg: #e2f1e6;--neg: #bf352c;--neg-bg: #f9e4e1;--zero: #8a93ad;--zero-bg: #eceae2;--mid: #bd7a06;--mid-bg: #faf0d9;--accent: #d97706;--mono: "JetBrains Mono", "SF Mono", Consolas, "Courier New", monospace}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:PingFang SC,Microsoft YaHei,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.65}.wrap{max-width:1180px;margin:0 auto;padding:28px 24px 56px}.hero{border:2px solid var(--ink);background:#fff;box-shadow:6px 6px 0 var(--ink);padding:26px 30px;margin-bottom:26px}.hero .kicker{display:inline-block;font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.12em;background:var(--ink);color:var(--paper);padding:3px 10px;margin-bottom:12px}.hero h1{font-size:27px;letter-spacing:-.5px}.hero h1 em{font-style:normal;color:var(--accent)}.hero-versus{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}@media(max-width:760px){.hero-versus{grid-template-columns:1fr}}.vs{border:2px solid var(--ink);padding:12px 16px;font-size:13.5px;color:var(--ink2);background:var(--paper2)}.vs b{color:var(--ink);display:block;font-size:14.5px;margin-bottom:4px}.vs.sell{box-shadow:4px 4px 0 var(--mid)}.vs.buy{box-shadow:4px 4px 0 var(--pos)}.identity{margin-top:16px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:2px dashed var(--ink);padding-top:14px;font-size:13.5px}.identity .who{font-family:var(--mono);font-weight:700;font-size:13px;border:1.5px solid var(--ink);background:var(--paper2);padding:3px 10px}.identity input{border:2px solid var(--ink);background:#fff;padding:5px 10px;font:inherit;font-size:13px;width:180px}.identity input:focus{outline:2px solid var(--accent);outline-offset:1px}.btn{display:inline-block;cursor:pointer;border:2px solid var(--ink);background:var(--ink);color:var(--paper);font:inherit;font-weight:700;font-size:13.5px;padding:8px 18px;box-shadow:3px 3px #16213a59}.btn:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:4px 4px #16213a59}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{background:#fff;color:var(--ink)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media(max-width:940px){.grid{grid-template-columns:1fr}}.card{border:2px solid var(--ink);background:#fff;box-shadow:4px 4px 0 var(--ink);display:flex;flex-direction:column}.v-static{padding:18px 22px 14px;border-bottom:2px solid var(--ink)}.v-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.v-head h2{font-size:20px}.v-head .plan{font-size:13px;color:var(--ink2)}.v-head .price{margin-left:auto;font-family:var(--mono);font-size:12px;font-weight:700;border:1.5px solid var(--ink);background:var(--paper2);padding:3px 8px}.v-gotchas{margin-top:12px;display:flex;flex-direction:column;gap:6px}.g-pill{display:flex;gap:9px;align-items:flex-start;border:1.5px solid;padding:6px 11px;font-size:12.8px}.g-pill .gl{font-weight:700;white-space:nowrap}.g-pill .gd{color:#3d465e}.g-high{background:var(--neg-bg);border-color:#e3b3ad}.g-high .gl{color:var(--neg)}.g-mid{background:var(--mid-bg);border-color:#e6cf9d}.g-mid .gl{color:var(--mid)}.v-verdict{margin-top:12px;font-size:13.5px;color:#3d465e;border-left:4px solid var(--accent);padding-left:10px}.v-cap{margin-top:8px;font-size:12.8px;color:#3d465e;border-left:4px solid var(--pos);padding-left:10px}.v-cap b{color:var(--ink);margin-right:6px}.v-links{margin-top:10px;font-size:12.5px;color:var(--muted)}.v-links a{color:var(--ink2);text-decoration:none;border-bottom:1px dotted var(--ink2)}.v-agg{padding:14px 22px;border-bottom:2px dashed var(--ink);background:var(--paper2)}.agg-head{display:flex;align-items:baseline;gap:12px}.agg-head .lbl{font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--pos)}.agg-mean{font-family:var(--mono);font-size:34px;font-weight:800;line-height:1}.agg-mean small{font-size:13px;font-weight:700;color:var(--muted)}.agg-n{font-family:var(--mono);font-size:12.5px;color:var(--ink2)}.agg-sync{margin-left:auto;font-size:12px;color:var(--mid);font-family:var(--mono)}.agg-empty{margin-top:6px;font-size:13.5px;color:var(--ink2)}.agg-error{margin-top:6px;font-size:13px;color:var(--neg)}.hist{display:flex;align-items:flex-end;gap:6px;margin-top:14px;height:86px}.hist .col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%}.hist .cnt{font-family:var(--mono);font-size:10.5px;font-weight:700;color:var(--ink2);line-height:1.2;min-height:13px}.hist .bar{width:100%;border:1.5px solid var(--ink);border-bottom:none;min-height:0}.hist .bar.neg{background:var(--neg)}.hist .bar.zero{background:var(--zero)}.hist .bar.pos{background:var(--pos)}.hist .sc{font-family:var(--mono);font-size:10px;color:var(--muted);margin-top:3px}.hist-axis{border-top:2px solid var(--ink);margin-top:-1px}.tagcloud{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px}.tagchip{font-size:12px;font-weight:600;border:1.5px solid var(--ink);background:#fff;padding:2px 9px}.tagchip .tc{font-family:var(--mono);color:var(--accent);font-weight:700;margin-left:4px}.v-actions{padding:12px 22px 0}.v-panel{display:none;padding:0 22px 16px}.v-panel.open{display:block}.panel-box{border:2px solid var(--ink);background:var(--paper2);box-shadow:3px 3px #16213a4d;padding:14px 16px}.panel-sec{margin-bottom:12px}.panel-sec>.pl{font-size:12.5px;font-weight:700;margin-bottom:6px}.panel-sec>.pl .req{color:var(--neg)}.score-row{display:flex;flex-wrap:wrap;gap:6px}.score-btn{cursor:pointer;font-family:var(--mono);font-weight:700;font-size:13px;border:2px solid var(--ink);background:#fff;padding:5px 0;width:52px;text-align:center}.score-btn:hover{transform:translate(-1px,-1px);box-shadow:2px 2px #16213a59}.score-btn.sel.neg{background:var(--neg);color:#fff}.score-btn.sel.zero{background:var(--zero);color:#fff}.score-btn.sel.pos{background:var(--pos);color:#fff}.chip{cursor:pointer;font-size:12.5px;font-weight:600;border:1.5px solid var(--ink);background:#fff;padding:3px 11px}.chip.on{background:var(--ink);color:var(--paper)}.freetag-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.freetag-row input{border:2px solid var(--ink);background:#fff;padding:4px 10px;font:inherit;font-size:12.5px;width:190px}.freetag-row input:focus{outline:2px solid var(--accent);outline-offset:1px}.ftag{font-size:12px;font-weight:600;border:1.5px solid var(--accent);background:var(--mid-bg);padding:2px 6px 2px 9px;display:inline-flex;align-items:center;gap:5px}.ftag .x{cursor:pointer;font-family:var(--mono);font-weight:700;color:var(--neg);border:none;background:none;font-size:12px;padding:0 2px}.hint{font-size:12px;color:var(--neg);margin-top:4px;min-height:16px}.panel-box textarea{width:100%;min-height:74px;resize:vertical;border:2px solid var(--ink);background:#fff;padding:8px 10px;font:inherit;font-size:13.5px}.panel-box textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.panel-foot{display:flex;align-items:center;gap:12px;margin-top:4px}.panel-foot .pow{font-size:12px;color:var(--ink2)}.v-list{padding:6px 22px 18px}.rev{border-top:1.5px dashed #c9cfdc;padding:12px 0 10px}.rev:first-child{border-top:none}.rev-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.score-badge{font-family:var(--mono);font-weight:800;font-size:13px;color:#fff;padding:1px 9px;border:1.5px solid var(--ink)}.score-badge.neg{background:var(--neg)}.score-badge.zero{background:var(--zero)}.score-badge.pos{background:var(--pos)}.discuss-badge{font-size:11.5px;font-weight:700;color:var(--ink2);border:1.5px dashed var(--muted);padding:1px 8px}.pending-badge{font-size:11.5px;font-weight:700;color:var(--mid);border:1.5px solid var(--mid);background:var(--mid-bg);padding:1px 8px}.rev-author{font-size:12.5px;font-weight:700}.rev-time{font-size:12px;color:var(--muted);font-family:var(--mono)}.rev-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.rev-body{margin-top:6px;font-size:13.8px;color:#2a3040;white-space:pre-wrap;word-break:break-word}.rev-empty{padding:14px 0 6px;font-size:13px;color:var(--muted)}footer.site{margin-top:30px;border:2px solid var(--ink);background:var(--ink);color:#dbe2f2;box-shadow:6px 6px #16213a4d;padding:20px 26px;font-size:12.8px;line-height:1.9}footer.site b{color:#ffd166}footer.site a{color:#ffd166;text-decoration:none;border-bottom:1px dotted #ffd166}footer.site .mono{font-family:var(--mono)}
