.gw { display: grid; gap: var(--cds-gap-xl); font-family: var(--font-anthropic-sans); color: var(--color-fg); }
  .gw b { font-weight: var(--cds-font-weight-medium); }
  .gw h1, .gw h2, .gw h3 { margin: 0; text-wrap: balance; }
  .gw p { margin: 0; }
  .gw-head { display: grid; gap: var(--cds-gap-xs); }
  .gw-title { font-family: var(--font-anthropic-serif); font-weight: 400; font-size: var(--cds-font-size-title); }
  .gw-take { font-size: var(--cds-font-size-body); max-width: 70ch; }
  .gw-stale { color: var(--color-warn); font-size: var(--cds-font-size-body); }

  .gw-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 11rem), 1fr)); gap: var(--cds-gap-md); }
  .gw-tile { display: grid; align-content: start; gap: var(--cds-gap-xs); background: var(--color-panel); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: var(--cds-pad-lg); min-width: 0; }
  .gw-label { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }
  .gw-big { font-family: var(--font-anthropic-serif); font-weight: 400; font-size: calc(var(--cds-font-size-title) * 1.5); line-height: 1.1; font-variant-numeric: tabular-nums; min-height: 1.1em; }
  .gw-mid { font-family: var(--font-anthropic-serif); font-weight: 400; font-size: var(--cds-font-size-heading); font-variant-numeric: tabular-nums; min-height: 1.3em; }
  .gw-note { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }

  .gw-card { display: grid; gap: var(--cds-gap-md); background: var(--color-panel); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); padding: var(--cds-pad-lg); min-width: 0; }
  .gw-card-head { display: grid; gap: var(--cds-gap-xs); }
  .gw-card-head h2, .gw-card > h2 { font-size: var(--cds-font-size-heading); font-weight: var(--cds-font-weight-medium); }
  .gw-card-head p, .gw-foot { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); max-width: 80ch; }
  .gw-pair { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 24rem), 1fr)); gap: var(--cds-gap-md); }

  .gw-scroll { overflow-x: auto; min-width: 0; }
  .gw-tall { max-height: 28rem; overflow-y: auto; }
  .gw-table { width: 100%; border-collapse: collapse; font-size: var(--cds-font-size-body); font-variant-numeric: tabular-nums; }
  .gw-table th { position: sticky; top: 0; background: var(--color-panel); text-align: left; font-size: var(--cds-font-size-caption); font-weight: var(--cds-font-weight-medium); color: var(--color-fg-muted); padding: var(--cds-pad-xs) var(--cds-pad-sm); border-bottom: 1px solid var(--color-border-line); white-space: nowrap; }
  .gw-table td { padding: var(--cds-pad-sm); border-bottom: 1px solid var(--color-border-line); vertical-align: top; }
  .gw-items tbody tr { cursor: pointer; }
  .gw-items tbody tr:hover, .gw-items tbody tr:focus-visible { background: color-mix(in srgb, var(--color-fg) 5%, transparent); }
  .gw-items tbody tr:focus-visible { outline: 2px solid var(--color-fg); outline-offset: -2px; }
  .gw-id, .gw-nowrap { white-space: nowrap; }
  .gw-strong { font-weight: var(--cds-font-weight-medium); min-width: 12rem; }
  .gw-muted { color: var(--color-fg-muted); }
  .gw-text { min-width: 16rem; }
  .gw-table a { color: inherit; text-underline-offset: 2px; }
  .gw-table a:focus-visible { outline: 2px solid var(--color-fg); }

  .gw-l1 { color: var(--color-fg-muted); }
  .gw-l2 { color: var(--color-fg); }
  .gw-l3 { color: var(--color-warn); }
  .gw-l4 { color: var(--color-bad); }
  .gw-l5 { color: var(--cds-chart-status-critical); }
  .gw-pill { display: inline-block; padding: 0 var(--cds-pad-xs); border: 1px solid currentColor; border-radius: var(--cds-radius); font-weight: var(--cds-font-weight-medium); white-space: nowrap; }
  .gw-pill.gw-l5 { background: var(--cds-chart-status-critical); border-color: transparent; color: var(--color-bg); }
  .gw-underway { color: var(--cds-chart-status-critical); font-weight: var(--cds-font-weight-medium); white-space: nowrap; }
  .gw-watching { color: var(--color-fg-muted); white-space: nowrap; }
  .gw-prob { min-width: 7rem; }
  .gw-track { height: 0.375rem; margin-top: var(--cds-gap-xs); border-radius: var(--cds-radius); background: var(--cds-chart-grid); overflow: hidden; }
  .gw-fill { height: 100%; background: currentColor; border-radius: var(--cds-radius); }
  .gw-up { color: var(--color-bad); }
  .gw-down { color: var(--color-ok); }
  .gw-flat { color: var(--color-fg-muted); }
  .gw-g-good { color: var(--color-ok); font-weight: var(--cds-font-weight-medium); }
  .gw-g-fair { color: var(--color-warn); font-weight: var(--cds-font-weight-medium); }
  .gw-g-poor { color: var(--color-bad); font-weight: var(--cds-font-weight-medium); }
  .gw-g-none { color: var(--color-fg-muted); }
  .gw-past { color: var(--color-fg-muted); }

  .gw-search { width: min(100%, 24rem); font: inherit; font-size: var(--cds-font-size-body); padding: var(--cds-pad-xs) var(--cds-pad-sm); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); background: var(--color-bg); color: var(--color-fg); }
  .gw-search:focus-visible { outline: 2px solid var(--color-fg); }
  .gw-empty { font-size: var(--cds-font-size-caption); color: var(--color-fg-muted); }

  .gw-multiples { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); gap: var(--cds-gap-md); min-height: 9rem; }
  .gw-mini { position: relative; display: grid; gap: var(--cds-gap-xs); min-width: 0; padding: var(--cds-pad-sm); border: 1px solid var(--color-border-line); border-radius: var(--cds-radius); }
  .gw-mini-head { font-size: var(--cds-font-size-caption); display: flex; gap: var(--cds-gap-xs); min-width: 0; }
  .gw-mini-head span:last-child { color: var(--color-fg-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .gw-mini svg { display: block; overflow: visible; }
  .gw-mini text { font-family: var(--font-anthropic-sans); font-size: var(--cds-font-size-caption); fill: var(--color-fg-muted); }
  .gw-mini .gw-end { fill: currentColor; font-weight: var(--cds-font-weight-medium); }
  .gw-tip { position: absolute; pointer-events: none; background: var(--cds-surface-popover); border: 1px solid var(--cds-border); border-radius: var(--cds-radius); box-shadow: var(--cds-shadow-popover); padding: var(--cds-pad-xs) var(--cds-pad-sm); font-size: var(--cds-font-size-caption); white-space: nowrap; z-index: 2; }
  .gw-tip-when { color: var(--cds-text-secondary); }
  .gw-tip-note { white-space: normal; max-width: 16rem; color: var(--cds-text-secondary); }

  .gw-method { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: var(--cds-gap-lg); font-size: var(--cds-font-size-body); }
  .gw-method > div { display: grid; align-content: start; gap: var(--cds-gap-sm); }
  .gw-method h3 { font-size: var(--cds-font-size-body); font-weight: var(--cds-font-weight-medium); }
  .gw-method p { color: var(--color-fg-muted); }
  .gw-legend { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--cds-gap-xs); }

  .gw-index-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: var(--cds-gap-lg); }
  .gw-index-head .gw-card-head { flex: 1 1 22rem; min-width: 0; }
  .gw-figs { display: flex; flex-wrap: wrap; gap: var(--cds-gap-xl); }
  .gw-fig { display: grid; gap: var(--cds-gap-xs); min-width: 8rem; }
  .gw-swatch { display: inline-block; width: 0.75rem; height: 0.1875rem; border-radius: var(--cds-radius); margin-right: var(--cds-gap-xs); vertical-align: middle; background: var(--color-fg-muted); }
  .gw-index-chart { position: relative; min-height: 15rem; }
  .gw-index-chart svg { display: block; }
  .gw-index-chart text { font-family: var(--font-anthropic-sans); font-size: var(--cds-font-size-caption); fill: var(--color-fg-muted); }
  .gw-index-chart .gw-end { font-weight: var(--cds-font-weight-medium); }
  .gw-us { border-color: color-mix(in srgb, var(--cds-chart-status-critical) 45%, var(--color-border-line)); }
  .gw-exp-direct { color: var(--cds-chart-status-critical); font-weight: var(--cds-font-weight-medium); white-space: nowrap; }
  .gw-exp-indirect { color: var(--color-warn); white-space: nowrap; }
  .gw-exp-low { color: var(--color-fg-muted); white-space: nowrap; }

  [data-dash-source-state=empty] { color: transparent; }
  [data-dash-source-state=refreshing] { opacity: .5; transition: opacity var(--cds-dur-slow); }
  @media (max-width: 720px) { .gw-wide { display: none; } }
