#combat-sheet, #combat-sheet-zones {
  padding-bottom: 10.5mm;

  .textbox {
    flex-wrap: wrap;

    h3 {
      margin-bottom: 1mm;
    }

    &.life-points h3 {
      margin-bottom: 4mm;
    }
  }

  .upper {
    display: flex;
    align-items: center;
    width: 100%;

    .combat-techniques {
      margin-right: 12mm;
      flex: 1 1 auto;
    }

    td {
      &.name, &.value {
        font: 500 11px/1 Alegreya Sans;
      }

      &.value {
        font: bold 11px/1 Alegreya Sans;
      }

      &.at, &.pa {
        font: 400 11px/1 Alegreya Sans;
      }

      &.primary, &.ic {
        font: 11px/1 "Alegreya SC";
      }

      &.at {
        border-right: 0.3mm solid grey;
      }
    }

    th, td {
      &.primary, &.ic, &.value, &.at, &.pa {
        text-align: center;
      }

      &.ic, &.value {
        width: 12mm;
      }

      &.primary {
        width: 14mm;
      }

      &.at, &.pa {
        width: 8mm;
      }

      &.routine {
        width: 3mm;
      }

      &.name {
        padding: 0 1mm;
        width: 34mm;
      }

      &:nth-child(2n+1), &:last-child {
        background: rgba(0, 0, 0, 0.1);
      }
    }

    .life-points {
      width: 92mm;
      display: flex;
      flex-direction: column;

      > div {
        flex: none;
        display: flex;

        &:not(.life-points-first) {
          padding-left: 12mm;
        }
      }

      .box {
        text-align: center;
      }
    }

    .life-points-first, .life-points-second {
      .labelbox {
        flex-direction: column-reverse;
        align-items: flex-start;

        .box {
          width: 100%;
        }
      }

      .labelbox:last-child {
        flex: 1 1 auto;
      }
    }

    .life-points-first {
      .labelbox:first-child {
        width: 10mm;
        margin-right: 2mm;
        font: bold 21px/9.4mm Alegreya Sans;
        letter-spacing: 0.05em;
      }

      label {
        font: bold 9px Alegreya Sans;
        padding-bottom: 1mm;
      }
    }

    .life-points-second {
      margin: 1mm 0;

      .box {
        height: 1cm;
        width: 100%;
      }
    }

    .tiers {
      margin-top: 2mm;
      font: bold 10px/5mm Alegreya;
      white-space: pre-wrap;
      letter-spacing: 0;
      height: 5mm;

      .box {
        width: 10mm;
        height: 5mm;
        margin-right: 2mm;
        font: 500 11px/1 Alegreya Sans;
        display: flex;
        justify-content: center;
        align-items: center;
      }
    }
  }

  .lower {
    flex: 1 1 auto;
    display: flex;
    flex-wrap: wrap;
    position: relative;
    align-content: space-between;
    margin-top: 4mm;

    > div {
      flex: none;
    }

    .shields, .status {
      width: 84mm;
      margin-left: 6mm;
    }

    .armor, .activatable-list {
      width: 102mm;
    }

    th {
      text-align: center;
    }

    .shields {
      td {
        &.mod {
          font: bold 11px/1 Alegreya Sans;
        }
      }

      th, td {
        &.name {
          width: 28mm;
          max-width: 28mm;
        }
      }
    }

    .armor th, .armor td {
      &.weight {
        width: auto;
      }

      &.loss {
        background: rgba(0, 0, 0, 0.1);
      }
    }

    td.zone + .zone {
      border-left: 0.3mm solid grey;
    }

    .armor-zones {
      .enc, .weight {
        background: rgba(0, 0, 0, 0.1);
      }

      .add-penalties {
        background: transparent;
      }
    }

    td {
      &.at, &.pa, &.damage, &.ranged, &.pro, &.enc, &.add-penalties {
        font: bold 11px/1 Alegreya Sans;
      }

      &.at, &.pro {
        border-right: 0.3mm solid grey;
      }

      &.name, &.combat-technique, &.where, &.damage-bonus, &.mod, &.reach, &.range, &.weight, &.reload-time, &.ammunition, &.str {
        font: 400 11px/1 Alegreya Sans;
      }

      &.name, &.combat-technique {
        padding: 0 1mm;
      }
    }

    th, td {
      &:not(.name):not(.combat-technique) {
        text-align: center;
      }

      &.at-mod, &.pa-mod, &.at, &.pa, &.bf, &.loss, &.pro, &.enc, &.str, &.st {
        width: 8mm;
      }

      &.damage-bonus, &.damage, &.reload-time {
        width: 22mm;
      }

      &.reach, &.range, &.ranged, &.weight, &.ammunition {
        width: 16mm;
      }

      &.zone {
        width: 4mm;
      }

      &.name, &.combat-technique {
        width: 34mm;
      }

      &.name {
        max-width: 34mm;
        text-overflow: ellipsis;
        overflow: hidden;
        white-space: nowrap;
      }

      &.name, &.damage-bonus, &.mod, &.at, &.pa, &.reload-time, &.ranged, &.ammunition, &.add-penalties, &.where, &.bf {
        background: rgba(0, 0, 0, 0.1);
      }
    }
  }

  .status {
    display: flex;
    border-top: 0.3mm solid grey;
    align-items: flex-start;

    > div {
      flex: none;
      display: flex;
      flex-direction: column;

      &:not(:last-child) {
        border-right: 0.3mm solid grey;
      }

      &.status-tiers {
        flex: none;
        width: 36mm;
      }

      &.status-effects {
        width: 24mm;
        flex: none;
      }

      > div, > header {
        flex: none;
        display: flex;
        height: 4.5mm;

        span, h4 {
          flex: 1 1 auto;
          padding: 0 1mm;
          white-space: nowrap;
          text-overflow: ellipsis;
          overflow: hidden;
        }

        > div {
          width: 4.35mm;
          padding: 0.5mm;
          flex: none;

          &:nth-child(2), &:nth-child(4) {
            background: rgba(0, 0, 0, 0.1);
          }
        }
      }

      > header {
        border-bottom: 0.3mm solid grey;

        h4 {
          font: bold 13px/4.5mm "Alegreya SC";
          letter-spacing: 0;
          text-transform: none;
          color: black;
        }

        div {
          font: bold 10px/4.5mm Alegreya;
          text-align: center;
          padding: 0 0.5px;
        }
      }

      > div {
        border-bottom: 0.15mm solid grey;

        span {
          font: 500 11px/4.5mm Alegreya Sans;
        }

        > div > div {
          border: 0.75pt solid black;
          height: 100%;
          width: 100%;
          background-color: white;
        }
      }
    }
  }
}
