:root{--bg:#14161a;--panel:#1c1f25;--panel-edge:#2a2e37;--ink:#e8eaed;--ink-dim:#9aa1ac;--ink-faint:#6b727d;--green:#3fa66a;--amber:#d99b2e;--red:#cf4b45;--grey:#6b727d;--radius:10px}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font:15px/1.45 ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}main{max-width:1180px;margin:0 auto;padding:28px 20px 80px}.top{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px;display:flex}.wordmark{letter-spacing:.02em;margin:0;font-size:20px;font-weight:600}.wordmark span{color:var(--ink-faint);margin-left:10px;font-size:13px;font-weight:400}.freshness{color:var(--ink-dim);white-space:nowrap;font-size:13px}.freshness.stale{color:var(--amber);font-weight:600}.banner{border:1px solid var(--amber);color:var(--amber);border-radius:var(--radius);background:#d99b2e17;margin-bottom:18px;padding:10px 14px;font-size:13.5px}.banner.bad{border-color:var(--red);color:var(--red);background:#cf4b4517}.tabs{border-bottom:1px solid var(--panel-edge);gap:6px;margin-bottom:20px;display:flex}.tab{appearance:none;color:var(--ink-dim);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px 10px;font-size:14px}.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}.tab .count{color:var(--ink-faint);margin-left:6px;font-size:12.5px}.grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;display:grid}.tile{text-align:left;appearance:none;font:inherit;color:inherit;background:var(--panel);border:1px solid var(--panel-edge);border-radius:var(--radius);cursor:pointer;flex-direction:column;gap:10px;min-height:118px;padding:12px;display:flex;position:relative}.tile:hover{border-color:#3a404b}.tile.open{border-color:#4c5361}.tile.wip{color:var(--ink-dim);background:0 0;border-style:dashed;border-color:#333944}.tile-head{justify-content:space-between;align-items:center;display:flex}.mark{letter-spacing:.03em;color:#fff;border-radius:7px;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.tile.wip .mark{opacity:.55}.dot{border-radius:50%;flex:none;width:11px;height:11px}.dot.green{background:var(--green)}.dot.amber{background:var(--amber)}.dot.red{background:var(--red)}.dot.grey{background:var(--grey)}.tile-name{margin-top:auto;font-size:14.5px;font-weight:550}.tile-meta{color:var(--ink-dim);justify-content:space-between;align-items:center;gap:8px;font-size:12.5px;display:flex}.badge{background:var(--red);color:#fff;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700;position:absolute;top:-7px;right:-7px}.stalled{color:var(--ink-faint);font-size:12px}.expanded{background:var(--panel);border:1px solid var(--panel-edge);border-radius:var(--radius);grid-column:1/-1;padding:16px 18px}.expanded h2{align-items:center;gap:10px;margin:0 0 2px;font-size:16px;display:flex}.strip{color:var(--ink-dim);margin-bottom:14px;font-size:13px}.panels{border-top:1px solid var(--panel-edge);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;padding-top:14px;display:grid}.panel h3{letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 8px;font-size:11.5px;font-weight:600}.panel ul{flex-direction:column;gap:5px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.panel li{color:var(--ink-dim)}.panel a{color:var(--ink-dim);border-bottom:1px dotted #4a505b;text-decoration:none}.check{justify-content:space-between;gap:10px;display:flex}.check .ok{color:var(--green)}.check .bad{color:var(--red)}.check .skip{color:var(--ink-faint)}.empty{color:var(--ink-faint);font-size:13px}.reasons{margin:0 0 12px;padding:0;font-size:13px;list-style:none}.reasons li:before{content:"· ";color:var(--ink-faint)}.login{text-align:center;max-width:320px;margin:18vh auto 0}.login input{background:var(--panel);border:1px solid var(--panel-edge);border-radius:var(--radius);width:100%;color:var(--ink);font:inherit;text-align:center;letter-spacing:.3em;margin:14px 0 10px;padding:10px 12px}.login button{border:1px solid var(--panel-edge);border-radius:var(--radius);width:100%;color:var(--ink);font:inherit;cursor:pointer;background:#2c313a;padding:10px 12px}.login .error{color:var(--red);min-height:18px;font-size:13px}
