:root{
  --bg:#faf9f7; --ink:#1e2430; --muted:#6b7280; --line:#e6e3dd;
  --navy:#1f3864; --blue:#2e5496; --accent:#c45911;
  --sell:#c45911; --give:#2e7d5b; --both:#7b5ea8;
  --card:#ffffff; --chip:#f1efe9;
}
*{box-sizing:border-box}
body{margin:0;font-family:"Inter","Segoe UI","Sarabun",system-ui,sans-serif;
  background:var(--bg);color:var(--ink);line-height:1.5}
header{padding:22px 28px;border-bottom:1px solid var(--line);display:flex;
  align-items:baseline;gap:14px;flex-wrap:wrap}
header h1{font-size:20px;margin:0;color:var(--navy);letter-spacing:-.01em}
header .sub{color:var(--muted);font-size:13px}
.bar{margin-left:auto;display:flex;gap:10px;align-items:center}
select,button{font:inherit;border:1px solid var(--line);background:var(--card);
  border-radius:8px;padding:7px 12px;color:var(--ink);cursor:pointer}
button.primary{background:var(--navy);color:#fff;border-color:var(--navy)}
main{padding:24px 28px;max-width:1080px;margin:0 auto}
.meta{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.chip{background:var(--chip);border-radius:999px;padding:4px 12px;font-size:12px;color:#444}
.chip b{color:var(--navy)}
table{width:100%;border-collapse:collapse;background:var(--card);
  border:1px solid var(--line);border-radius:12px;overflow:hidden}
th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top;font-size:14px}
th{background:var(--navy);color:#fff;font-weight:600;font-size:12px;letter-spacing:.02em}
tr:last-child td{border-bottom:none}
.tag{display:inline-block;font-size:11px;font-weight:700;padding:2px 9px;border-radius:6px;color:#fff}
.tag.sell{background:var(--sell)} .tag.give{background:var(--give)} .tag.both{background:var(--both)}
.trigger{font-size:12px;color:var(--muted)}
.score{font-variant-numeric:tabular-nums;font-weight:700;color:var(--navy)}
.actions{display:flex;gap:6px}
.actions button{padding:5px 10px;font-size:12px;border-radius:6px}
.ok{color:var(--give);border-color:var(--give)} .no{color:#b23b3b;border-color:#b23b3b}
.status{font-size:11px;font-weight:700}
.status.pending_review{color:var(--accent)} .status.approved{color:var(--give)} .status.rejected{color:#b23b3b}
.empty{color:var(--muted);text-align:center;padding:60px 0}
.note{font-size:12px;color:var(--muted);margin-top:16px}
.authbox{display:flex;align-items:center;gap:8px}
.authbox .who{font-size:12px;color:var(--navy);font-weight:600;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.authbox button{padding:6px 10px;font-size:13px}
