:root {
  --color-bg-0: rgb(202, 216, 228);
  --color-bg-1: hsl(209, 36%, 86%);
  --color-bg-2: hsl(224, 44%, 95%);
  --color-theme-1: #1e075f;
  --color-theme-2: #4075a6;
  --color-text: rgba(0, 0, 0, 0.7);
  --column-width: 42rem;
  --column-margin-top: 4rem;
}

h4 {
  -webkit-margin-before: 0.6em;
  -webkit-margin-after: 0.25em;
  border-top: thin solid lightgrey;
}

table {
  border: none;
  width: 100%;
}

table.tophat {
  border: none;
  border-top: 1px solid lightgrey;
  width: 100%;
}

th {
  font-size: small;
  text-align: center;
}

td {
  vertical-align: middle;
}

td.top {
  vertical-align: top;
}

td.centered {
  text-align: center;
  vertical-align: middle;
}

.table {
  background-color: white;
  color: black;
}

.table th {
  background-color: silver;
  color: black;
}

.table tr {
  transition: background 0.2s ease-in;
}

.table tr:nth-child(even) {
  background: silver;
}

.clicktable tr:nth-child(even) {
  background: silver;
}

label input {
  text-align: right;
  width: 100%;
}
input[type='number'] {
  text-align: end;
  margin-left: 5px;
  width: 50px;
}

input[id='name'] {
  min-width: 180px;
  width: 50%;
  font-size: x-large;
}

span[id='name'] {
  font-size: x-large;
}

.textpanel {
  padding-right: 18px;
  display: block;
  text-align: end;
  background-color: white;
  min-width: 40px;
  min-height: 18px;
}

span.attributelabel {
  text-align: right;
}

label.attributelabel {
  text-align: right;
  display: inline-block;
}

input.attributelabel {
  text-align: right;
}

.smaller {
  font-size: x-small;
}

.prompt {
  font-size: small;
}

.maxwidth {
  width: 100%;
}

.widecolumn {
  min-width: 300;
  width: 100%;
  vertical-align: top;
}

.narrowcolumn {
  min-width: 200;
  width: 30%;
}

.hidden {
  display: none;
}

.onecolumn {
  columns: 1;
}

.twocolumn {
  columns: 2;
}

.no-close .ui-dialog-titlebar-close {
  display: none;
}

.boxed {
  border: darkslategray;
  border-width: thin;
  border-style: solid;
  padding: 1px;
}

div.boxed h4 {
  -webkit-margin-before: 0.25em;
  -webkit-margin-after: 0.25em;
  border-top: none;
}

.rosteritem a {
  font-size: small;
}
.rosteritem a:hover {
  text-decoration: underline;
}

div#composer {
  padding-top: 10px;
}

.menu a:hover {
  text-decoration: underline;
}

.menu span {
  padding: 6px 10px 6px 10px;
  border: 1px solid black;
  color: darkslateblue;
}

.menu span.selected {
  background-color: white;
}

.ui-widget {
  font-size: smaller;
}

a {
  cursor: pointer;
}

@media print {
  body {
    margin: 2mm 2mm 2mm 2mm;
    min-height: 100vh;
  }
  .menu {
    display: none;
  }
  .noprint {
    display: none;
  }
  .printonly {
    display: inherit;
  }
  .twocolumnexceptprint {
    columns: 1;
  }
  .note {
    font-size: smaller;
  }
  .attack {
    font-size: smaller;
  }
  .quality {
    font-size: smaller;
  }
  .drawback {
    font-size: smaller;
  }
  .table {
    background-color: white;
    color: black;
  }

  .table th {
    background-color: white;
    color: black;
  }

  .table tfoot tr td {
    font-size: small;
    text-align: center;
    background-color: white;
    color: black;
  }

  /* .table tr {
    transition: background 0.2s ease-in;
  } */

  .table tr:nth-child(even) {
    background: silver;
  }

  .clicktable tr:nth-child(even) {
    background: silver;
  }
}

@media screen {
  body {
    min-height: 100vh;
    margin: 8px;
    background-attachment: fixed;
    background-color: var(--color-bg-1);
    background-size: 100vw 100vh;
    background-image: radial-gradient(50% 50% at 50% 50%, rgba(255, 255, 255, 0.75) 0%, rgba(255, 255, 255, 0) 100%),
      linear-gradient(180deg, var(--color-bg-0) 0%, var(--color-bg-1) 15%, var(--color-bg-2) 50%);
  }

  div.menu {
    display: flex;
  }

  .printonly {
    display: none;
  }
  .twocolumnexceptprint {
    columns: 2;
  }
  .selectlist {
    overflow-y: scroll;
    overflow-x: hidden;
    height: 180px;
  }
  .clicktable tr:hover {
    background: silver;
    cursor: pointer;
  }
  .table tr:hover {
    background: silver;
  }
  .note {
    font-size: smaller;
  }
  .quality {
    font-size: smaller;
  }
  .attack {
    font-size: smaller;
  }
  .drawback {
    font-size: smaller;
  }
}
