:root{--bg:#121212;--panel:#1a1a1a;--line:#2e2e2e;--text:#ededed;--muted:#8c8c8c;--red:#e03434;--red-bg:#2a1111;--green:#2fb35a;--green-bg:#0f2a17;--accent:#ff7a1a;--accent-hover:#ff9245;--accent-bg:#2b1a0d}*{box-sizing:border-box}body{margin:0;font:15px/1.4 system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text)}header{display:flex;align-items:center;gap:16px;padding:12px 20px;background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap}header h1{font-size:18px;margin:0}header nav{display:flex;gap:12px;margin-left:auto}header nav a{color:var(--muted);text-decoration:none}header nav a.active,header nav a:hover{color:var(--text)}.conn{width:10px;height:10px;border-radius:0;background:var(--red)}.conn.on{background:var(--green)}main{padding:20px;max-width:1400px;margin:0 auto}h2{font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:24px 0 10px;display:flex;gap:10px}h2 .count{color:var(--text)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.tile{border:3px solid var(--red);background:var(--red-bg);border-radius:0;padding:8px;text-align:center;transition:.2s;-webkit-user-select:none;user-select:none}.tile.done{border-color:var(--green);background:var(--green-bg)}.tile img,.tile .noimg{width:100%;aspect-ratio:1;object-fit:contain;display:block;border-radius:0}.tile .noimg{background:#0003}.tile .name{margin-top:6px;font-size:13px;font-weight:600;overflow-wrap:anywhere}.clickable .tile{cursor:pointer}.clickable .tile:hover{transform:translateY(-2px)}.stats{display:flex;gap:10px;flex-wrap:wrap}.stat{background:var(--panel);border:1px solid var(--line);border-radius:0;padding:12px 16px;min-width:130px}.stat .label{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em}.stat .value{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums}.stat.big .value{font-size:40px}.bar{height:6px;background:var(--red-bg);border-radius:0;margin-top:6px;overflow:hidden}.bar i{display:block;height:100%;background:var(--green);transition:width .3s}input,select,button{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:0;padding:7px 10px}button{background:var(--accent);border-color:var(--accent);cursor:pointer}button.ghost{background:none;border-color:var(--line)}button.danger{background:none;border-color:var(--red);color:#ff8a8a}.card{background:var(--panel);border:1px solid var(--line);border-radius:0;padding:16px;margin-bottom:16px}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}table{width:100%;border-collapse:collapse}td{padding:6px 8px;border-top:1px solid var(--line);vertical-align:middle}td img{width:40px;height:40px;object-fit:contain}.chip{display:inline-flex;gap:6px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:0;padding:4px 6px 4px 12px}.chip button{padding:0 7px;border-radius:0}.empty{color:var(--muted);padding:20px 0}header{border-bottom:2px solid var(--accent)}header h1{text-transform:uppercase;letter-spacing:.12em}header nav a.active{color:var(--accent)}h2{border-left:3px solid var(--accent);padding-left:8px}button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button.ghost:hover{background:var(--accent-bg)}button.danger:hover{background:var(--red-bg)}input:focus,select:focus{outline:none;border-color:var(--accent)}.stat{border-top:2px solid var(--accent)}button:not(.ghost):not(.danger){color:#121212;font-weight:600}.value>span,.clock{font-variant-numeric:tabular-nums;color:var(--muted)}.value>span.running,.clock.running{color:var(--accent)}.timer-bar{margin-top:12px}.clock{font-size:28px;font-weight:700;margin-right:8px;min-width:130px}button:disabled{opacity:.35;cursor:default}.card{overflow-x:auto}.cat-icon{width:22px;height:22px;object-fit:contain;vertical-align:middle;flex:none}h2{align-items:center}h2 .cat-icon{width:26px;height:26px}.stat .label{display:flex;align-items:center;gap:6px}.cat-pick{cursor:pointer;display:inline-flex}.cat-blank{display:inline-flex;align-items:center;justify-content:center;border:1px dashed var(--line);color:var(--muted);font-size:14px}.cat-pick:hover .cat-icon{outline:1px solid var(--accent)}.muted{color:var(--muted)}.tile .got{margin-top:2px;font-size:12px;font-variant-numeric:tabular-nums;color:var(--green)}
