:root{--bg:#fafaf9;--fg:#1c1917;--muted:#78716c;--line:#e7e5e4;--accent:#1d4ed8;--ok:#15803d;--bad:#b91c1c;--dirty:#fef3c7}
*{box-sizing:border-box}body{margin:0;font:14px/1.4 system-ui,sans-serif;background:var(--bg);color:var(--fg)}
header{display:flex;gap:16px;align-items:center;padding:8px 16px;border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap}
header a{color:var(--fg);text-decoration:none}header a.on{font-weight:600;color:var(--accent)}
header .sp{flex:1}header form{display:inline}main{padding:12px 16px}
button,.btn{font:inherit;padding:5px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;cursor:pointer}
button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}button:disabled{opacity:.5}
table.t{border-collapse:collapse;width:100%;background:#fff}table.t th,table.t td{border-bottom:1px solid var(--line);padding:4px 8px;text-align:left;vertical-align:top}
.num{text-align:right;font-variant-numeric:tabular-nums}.up{color:var(--bad)}.down{color:var(--ok)}.muted{color:var(--muted)}
.msg{padding:6px 10px;border-radius:6px;margin:6px 0;background:#eff6ff}.msg.error{background:#fee2e2}.msg.success{background:#dcfce7}
#kg-grid{height:calc(100vh - 150px);border:1px solid var(--line)}.tabulator-cell.dirty{background:var(--dirty)!important}
.toolbar{display:flex;gap:8px;align-items:center;margin-bottom:8px;flex-wrap:wrap}
#kg-panel{white-space:pre-wrap;font-size:13px;max-height:30vh;overflow:auto}
fieldset{border:1px solid var(--line);border-radius:8px;margin:8px 0;padding:8px 12px;background:#fff}
label{display:inline-block;margin:4px 12px 4px 0}input,select,textarea{font:inherit;padding:4px}
.errorlist{color:var(--bad);background:#fee2e2;padding:6px 10px 6px 24px;border-radius:6px}
tr.stale td{background:var(--warn-bg,#fdecea)}main a.on{font-weight:600}
/* ScrapingBee test prices (Rakuten): comparison only, not used for pricing */
.tabulator-cell.sb{background:#fff4d6}.sb-tag{display:inline-block;background:#fff4d6;border:1px solid #e6c36a;border-radius:3px;padding:0 4px;font-size:12px}
