/* Primitive component styles — ported from prototype.css */ /* ─── Tags / chips ─── */ .tag { display: inline-flex; align-items: center; gap: 4px; padding: 1px 6px; border-radius: 3px; background: var(--tag-bg); color: var(--ink-2); font-family: var(--mono); font-size: 10px; font-weight: 500; white-space: nowrap; } .tag.accent { background: var(--accent); color: var(--accent-on); } .tag.host { background: var(--tag-host-bg); color: var(--tag-host-fg); } .tag.ok { background: var(--ok-bg); color: var(--ok); } .tag.warn { background: var(--warn-bg); color: var(--warn); } .tag.err { background: var(--err-bg); color: var(--err); } .tag.dashed { background: transparent; border: 1px dashed var(--ink-4); cursor: pointer; color: var(--ink-3); } .tag.outline { background: transparent; border: 1px solid var(--rule); } .tag.click { cursor: pointer; } .tag.click:hover { filter: brightness(1.08); } [data-theme="dark"] .tag.click:hover { filter: brightness(1.2); } /* ─── Tool dot ─── */ .tooldot { display: inline-block; width: 8px; height: 8px; border-radius: 2px; flex: none; } /* ─── Sparkline ─── */ .spark { stroke: var(--ink-2); stroke-width: 1.2; fill: none; } .spark.accent { stroke: var(--accent); stroke-width: 1.4; } /* ─── Dot status ─── */ .statusdot { width: 8px; height: 8px; border-radius: 99px; flex: none; } .statusdot.ok { background: var(--ok); } .statusdot.warn { background: var(--warn); } .statusdot.err { background: var(--err); } /* ─── Empty state ─── */ .empty { padding: 60px 20px; text-align: center; color: var(--ink-3); font-size: 12px; } .empty .glyph { font-family: var(--mono); font-size: 28px; color: var(--ink-4); margin-bottom: 8px; } /* ─── Sub-bar row ─── */ .sub { display: flex; align-items: center; gap: 8px; padding: 6px 14px; border-bottom: 1px solid var(--rule-2); background: var(--paper-3); font-size: 11px; flex: none; position: relative; } .sub .sub-right { margin-left: auto; display: flex; align-items: center; gap: 8px; }