:root{--bg: #0e1116;--panel: #161b22;--panel2: #1c232d;--border: #2a323d;--text: #e6edf3;--muted: #8b96a3;--accent: #6ea8fe;--michael: #f0883e;--stephen: #58a6ff;--claude: #bc8cff;--unassigned: #6b7684;--todo: #6b7684;--in_progress: #d29922;--blocked: #f85149;--done: #3fb950}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 -apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.app{width:100%;margin:0;padding:14px 20px 20px;display:flex;flex-direction:column;height:100vh}html,body,#root{height:100%}#root{overflow:hidden}.topbar{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px}.brand{font-size:20px;font-weight:700;letter-spacing:.2px}.brand .logo{color:var(--accent);margin-right:6px}.brand .sub{color:var(--muted);font-weight:500;font-size:15px;margin-left:4px}.toggle{display:flex;gap:6px}.toggle button{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:6px 14px;cursor:pointer;font-weight:600}.toggle button.on{background:var(--accent);color:#06101f;border-color:var(--accent)}.toggle .ghost{padding:6px 10px}.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:10px}.filters select,.filters input,.addform select,.addform input,.list select,.card select{background:var(--panel2);color:var(--text);border:1px solid var(--border);border-radius:7px;padding:6px 8px;font-size:13px}.chk{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}button.ghost{background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:7px;padding:6px 10px;cursor:pointer}button.ghost:hover{color:var(--text)}.stats{display:flex;gap:10px;align-items:center;margin:14px 0;flex-wrap:wrap}.stat{background:var(--panel);border:1px solid var(--border);border-radius:9px;padding:6px 12px;display:flex;gap:8px;align-items:baseline}.stat b{font-size:17px}.stat span{color:var(--muted);font-size:12px}.stat.michael b{color:var(--michael)}.stat.stephen b{color:var(--stephen)}.stat.claude b{color:var(--claude)}.stat.unassigned b{color:var(--unassigned)}.stats .divider{width:1px;height:22px;background:var(--border)}.error{background:#2d1517;border:1px solid #5c2226;color:#ffb3b3;padding:8px 12px;border-radius:8px;margin:10px 0}.addbar{margin:12px 0}.add{background:var(--accent);color:#06101f;border:none;border-radius:8px;padding:7px 16px;font-weight:700;cursor:pointer}.addform{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:10px}.addform input{min-width:220px;flex:1}main{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.board{flex:1 1 auto;min-height:0;display:flex;gap:12px;overflow:auto;padding-bottom:8px;align-items:flex-start}.col{background:var(--panel);border:1px solid var(--border);border-radius:12px;min-width:232px;max-width:252px;flex:0 0 auto;max-height:100%;display:flex;flex-direction:column}.col-head{padding:9px 11px;font-weight:700;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex:0 0 auto}.badge{background:var(--panel2);color:var(--muted);border-radius:20px;padding:1px 9px;font-size:12px}.col-body{padding:9px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1 1 auto;min-height:0}.card{background:var(--panel2);border:1px solid var(--border);border-left:3px solid var(--todo);border-radius:9px;padding:9px 10px}.card.s-in_progress{border-left-color:var(--in_progress)}.card.s-blocked{border-left-color:var(--blocked)}.card.s-done{border-left-color:var(--done);opacity:.6}.card-top{display:flex;gap:7px;align-items:flex-start}.card .title{font-size:13px}.card.s-done .title{text-decoration:line-through}.prio{width:8px;height:8px;border-radius:50%;margin-top:5px;flex:0 0 auto;background:var(--muted)}.prio-high{background:var(--blocked)}.prio-med{background:var(--in_progress)}.prio-low{background:var(--muted)}.proj-tag{color:var(--muted);font-size:11px;margin-top:6px}.card-controls{display:flex;gap:6px;margin-top:9px}.card-controls select{flex:1;font-size:12px}.as-michael{border-color:var(--michael)!important}.as-stephen{border-color:var(--stephen)!important}.as-claude{border-color:var(--claude)!important}.st-in_progress{color:var(--in_progress)}.st-blocked{color:var(--blocked)}.st-done{color:var(--done)}.st-todo{color:var(--muted)}.list-wrap{flex:1 1 auto;min-height:0;overflow:auto;border-radius:12px}.list{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:hidden}.list th{text-align:left;padding:10px 12px;color:var(--muted);font-size:12px;border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.4px;position:sticky;top:0;background:var(--panel);z-index:1}.list td{padding:8px 12px;border-bottom:1px solid var(--border)}.list tr.s-done .t-title{text-decoration:line-through;color:var(--muted)}.list tr:hover{background:var(--panel2)}.t-title{font-size:13px;max-width:480px}.muted{color:var(--muted)}.pad{padding:30px}.empty{text-align:center;color:var(--muted);padding:60px 20px}.empty code{background:var(--panel2);padding:2px 7px;border-radius:5px;color:var(--accent)}
