.webtreemap-node {
  /* Required attributes. */
  position: absolute;
  overflow: hidden;   /* To hide overlong captions. */
  background: white;  /* Nodes must be opaque for zIndex layering. */
  border: solid 1px black;  /* Calculations assume 1px border. */

  /* Optional: CSS animation. */
  -webkit-transition: top    0.3s,
                      left   0.3s,
                      width  0.3s,
                      height 0.3s;
}

/* Optional: highlight nodes on mouseover. */
.webtreemap-node:hover {
  background: #eee;
}

/* Optional: Different background colors depending on symbol. */
.webtreemap-symbol-bss {
  background: #66C2A5;
}
.webtreemap-symbol-data {
  background: #FC8D62;
}
.webtreemap-symbol-read-only_data {
  background: #8DA0CB;
}
.webtreemap-symbol-code {
  background: #E78AC3;
}
.webtreemap-symbol-weak_symbol {
  background: #A6D854;
}
.webtreemap-symbol-bss.webtreemap-aggregate {
  background: #B3E2CD;
}
.webtreemap-symbol-data.webtreemap-aggregate {
  background: #FDCDAC;
}
.webtreemap-symbol-read-only_data.webtreemap-aggregate {
  background: #CBD5E8;
}
.webtreemap-symbol-code.webtreemap-aggregate {
  background: #F4CAE4;
}
.webtreemap-symbol-weak_symbol.webtreemap-aggregate {
  background: #E6F5C9;
}

#legend > * {
  border: solid 1px #444;
}

/* Optional: Different borders depending on level. */
.webtreemap-level0 {
  border: solid 1px #444;
}
.webtreemap-level1 {
  border: solid 1px #666;
}
.webtreemap-level2 {
  border: solid 1px #888;
}
.webtreemap-level3 {
  border: solid 1px #aaa;
}
.webtreemap-level4 {
  border: solid 1px #ccc;
}

/* Optional: styling on node captions. */
.webtreemap-caption {
  font-family: sans-serif;
  font-size: 11px;
  padding: 2px;
  text-align: center;
}

/* Optional: styling on captions on mouse hover. */
/*.webtreemap-node:hover > .webtreemap-caption {
  text-decoration: underline;
}*/
