:root{--bg:#f6f6f7;--card:#fff;--ink:#16161a;--muted:#6b6b76;--line:#e6e6ea;--red:#e62117;--red2:#ffe9e7;--green:#0a7d38;--amber:#b25e00}
@media (prefers-color-scheme:dark){:root{--bg:#121214;--card:#1c1c20;--ink:#ececf1;--muted:#9a9aa6;--line:#2c2c33;--red2:#3a1715;--green:#3ccf7a;--amber:#f0a040}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:inherit}
main{max-width:1180px;margin:0 auto;padding:18px 16px 60px}
.top{display:flex;align-items:center;gap:18px;padding:10px 16px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;flex-wrap:wrap}
.top nav{display:flex;gap:4px;flex-wrap:wrap}
.top nav a{text-decoration:none;padding:6px 10px;border-radius:8px;color:var(--muted)}
.top nav a.on,.top nav a:hover{background:var(--red2);color:var(--ink)}
.brand{display:flex;align-items:center;gap:8px;font-weight:700;text-decoration:none}
.mark{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--red);color:#fff;font-weight:800}
.mark.sm{width:28px;height:28px;border-radius:8px;font-size:13px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:16px}
.card h2{margin:0 0 6px;font-size:19px}.card h3{margin:20px 0 8px;font-size:16px}
.head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.head h2{margin:0}.head>div{flex:1;min-width:180px}
.avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;background:var(--line)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:12px 0}
.stats div{background:var(--bg);border-radius:10px;padding:10px 12px}.stats b{display:block;font-size:20px}.stats span{color:var(--muted);font-size:13px}
.up{color:var(--green)}.down{color:var(--red)}
.muted{color:var(--muted)}.sm{font-size:13px}.mt{margin-top:14px}
.err{color:var(--red)}.flash{background:var(--red2);padding:10px 14px;border-radius:10px}
.btn{background:var(--red);color:#fff;border:0;border-radius:9px;padding:9px 14px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;display:inline-block}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.sm{padding:5px 9px;font-size:13px}
.inline{display:inline}
.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0}
.filters input:not([type=checkbox]),.filters textarea{flex:1;min-width:200px}
.stack{display:flex;flex-direction:column;gap:8px;max-width:640px}
input,textarea,select{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--line);border-radius:9px;padding:8px 10px}
.chk{display:flex;gap:6px;align-items:center;font-size:14px}
.tablewrap{overflow-x:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
th{font-size:12px;color:var(--muted);font-weight:600;white-space:nowrap}
td.num,th.num{text-align:right;white-space:nowrap}
td.thumb{width:96px}td.thumb img{width:96px;height:54px;object-fit:cover;border-radius:6px;display:block}
td.thumb.sm{width:48px}
td a{text-decoration:none}td a:hover{text-decoration:underline}
.score{display:inline-block;min-width:44px;padding:2px 6px;border-radius:6px;background:var(--bg);text-align:center;font-weight:600}
.score.hot1{background:#fff2cc;color:#7a5200}.score.hot2{background:#ffd8a8;color:#7a3a00}.score.hot3{background:var(--red);color:#fff}.score.cold{color:var(--muted)}
@media (prefers-color-scheme:dark){.score.hot1{background:#4a3a10;color:#ffd977}.score.hot2{background:#5a2e0a;color:#ffb070}}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.tab{padding:5px 10px;border:1px solid var(--line);border-radius:20px;text-decoration:none;font-size:13px}.tab.on{background:var(--ink);color:var(--card)}.sep{width:12px}
.bar{height:10px;background:var(--bg);border-radius:10px;overflow:hidden}.bar span{display:block;height:100%;background:var(--red)}
.bar.sm{display:inline-block;width:120px;height:8px;vertical-align:middle}
.ypp{background:var(--bg);border-radius:10px;padding:10px 14px;margin:10px 0}.ypp h3{margin:0 0 8px}
.login{max-width:360px;margin:12vh auto;display:flex;flex-direction:column;gap:12px;text-align:center}.login label{text-align:left;display:flex;flex-direction:column;gap:4px}
.login .mark{margin:0 auto}
