/* Watchlist marks: retain the existing 26px grid footprint and original artwork. */
.wl .wr > .cn {
  width:26px;
  height:26px;
  border-radius:50%;
  overflow:hidden;
  background:var(--p2);
  color:var(--dim);
  border:1px solid color-mix(in srgb,var(--l2) 68%,transparent);
  box-shadow:none;
}
.wl .wr > .cn.mz-logo img {
  display:block;
  border-radius:inherit;
  object-fit:contain;
  background:transparent;
}
/* Transparent artwork must not reveal the initials beneath it. Removing a
   failed image restores the existing text fallback without a script change. */
.wl .wr > .cn:has(> img) > span { visibility:hidden; }
.wl .wr > .cn.hot {
  background:var(--p2);
  color:var(--red);
  border-color:var(--rb);
  box-shadow:0 0 0 2px var(--ra);
}

/* Keep each instrument label intact; never make order tabs compete with it. */
.tk { container-name:mz-ticket; container-type:inline-size; }
.tk > #ot {
  height:auto;
  min-height:34px;
  flex-wrap:wrap;
  column-gap:0;
  row-gap:0;
}
.tk > #ot > button {
  flex:0 0 auto;
  height:34px;
  padding-inline:9px;
  white-space:nowrap;
}
.tk > #ot > .r {
  min-width:0;
  max-width:100%;
  min-height:28px;
  white-space:nowrap;
  flex:0 1 auto;
}
#tkSym {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#tkLev, #spr { flex:none; white-space:nowrap; }
@container mz-ticket (max-width:440px) {
  .tk > #ot > .r {
    flex-basis:100%;
    justify-content:flex-end;
    border-top:1px solid var(--l);
    padding-block:3px 4px;
  }
  .tk > #ot > button { flex:1 0 auto; padding-inline:8px; }
}
