html.wait, html.wait * { cursor: wait !important; }

body {
  font-family: Verdana, Geneva, sans-serif;
  margin: 0;
  background-color: #DDD;
}

h1 {
  font-size: 145%;
}
h2 {
  font-size: 130%;
}

p {
  font-size: 90%;
}

a {
  color: #333;
  text-decoration: none;
  border-bottom: 1px dotted gray;
}
a:hover {
  color: black;
  border-bottom: 1px solid gray;
}

a.icon {
  border: 0;
}

button {
  cursor: pointer;
  padding: 6px 14px;
  font-family: 'Roboto', sans-serif;
  border-radius: 6px;
  user-select: none;
  touch-action: manipulation;
}
button.primary {
  border: none;

  color: #fff;
  background-color: #367AF6;
  background-origin: border-box;
  box-shadow: 0px 0.5px 1.5px rgba(54, 122, 246, 0.25), inset 0px 0.8px 0px -0.25px rgba(255, 255, 255, 0.2);
}
button.primary:hover,
button.primary:focus {
  background-color: #07c;
}
button.primary:focus {
  box-shadow: 0 0 0 4px rgba(0, 149, 255, .15);
}
button.image {
  border: none;
  background-color: transparent;
}
button.image img {
  max-width: 1.5rem;
  vertical-align: bottom;
}
.btn-sm {
  padding: 2px 6px;
  font-size: x-small;
}

img.icon { width: 1.4em; }
img.info { width: 16px; }

fieldset {
  margin-top: 1em;
}

legend {
   font-size: x-small;
}

dt {
  font-weight: bold;
  margin-top: 0.8em;
}

ul.nobullet {
  list-style-type: none;
  padding-left: 0;
}

.flex, .d-flex { display: flex; }
.d-inline { display: inline; }
.space-between { justify-content: space-between; }
.hidden { display: none; }
.text-right { text-align: right; }
.w-60 { width: 60%; }
.w-40 { width: 40%; }
.mb-1 { margin-bottom: .25rem !important; }
.mt-2 { margin-top: 0.5em; }
.mt-3 { margin-top: 1em; }

.errorlist { list-style: none; padding-left: 0 !important; }
.errorlist li {
  padding: .75rem 1.25rem;
  margin-bottom: 1rem;
  border-radius: .25rem;
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}
ul.messages { list-style-type: none; padding-left: 0; }
ul.messages li { padding: 0.8em; }
ul.messages li.success { background-color: #5ec45e; }

p.site-message {
    padding: 1em;
    border-radius: 5px;
    background-color: #ffb30070;
}

input:disabled+label {
  color: #ccc;
}

div#global {
  margin-left: auto;
  margin-right: auto;
  min-width: 800px;
  width: 80%;
  background-color: white;
}

div#main {
  padding: 0px 18px;
}

div#header_bar {
  color: white;
  background-repeat: no-repeat;
  background-image: url("../img/menu_back.jpg");
}
div#header_bar a {
  color: white;
}
div#header_bar li {
  display: inline;
  padding: 1em 0.5em;
}
div#header_bar li:hover, div#header_bar li:hover a {
  color: #333;
  background-color: white;
  opacity: 0.85;
}
#test_bar {
  text-align: center;
  background: red;
  color: yellow;
  font-weight: bold;
  position: sticky;
  top: 0;
}

div#logo {
  float: right;
  background-color: white;
}
div#logo img { width: 250px; padding: 10px; }

ul#main_menu {
  list-style-type: none;
  margin: 0;
  padding: 1em 0;
}

#loggedin {
  float:right;
  clear:right;
  font-style: italic;
  font-size: x-small;
}

form.registration > div { margin-bottom: 0.5em; }
form.registration label { display: block; }

#page-title {
  margin: 0;
  padding: 1em 0;
}
#page-title h1 {
  font-size: 108%;
  margin: 0;
  padding: 0.5em 0;
  clear: both;
}

div.icons {
  margin-top: 0.1em;
  float: right;
  clear: right;
}

div.columns2 {
  float:left;
  width: 48%;
}

div.field-row {
  margin-top: 0.6em;
  clear: both;
}

div.field-box {
  float:left;
  width: 350px; /*48%;*/
}

span.field-label {
  background-color: #eee;
  padding: 2px;
}
span.field-value, div.field-value {
  font-family: monospace;
  margin-left: 1em;
}
span.field-help, div.map_help, .helptext {
  font-style: italic;
  font-size: 80%;
  color: gray;
}

.db_view {
  font-family: monospace;
  font-size: 70%;
  color: gray;
  margin: 3px;
}

div.editable {
  border: 1px solid red;
  padding: 3px;
}

div.editable textarea {
  width: 100%;
  border: 1px solid gray;
}

.error {
  color: red;
}
.pointer, div.togglable, summary {
  cursor: pointer;
}
div.togglable + div {
  display: none;
  margin-left: 0.6em;
}

.blocktitle {
  background-color: #eee;
}

div.bearb {
  font-style: italic;
  font-size: 80%;
}

div.input_choice {
  display: flex;
  align-items:flex-start;
  gap: 6px;
  min-height: 22px;
}
div.input_choice label { padding-top: 3px; }

span.num_choices {
  font-size: 11px;
}
img.clear_choices {
  width: 10px;
  display: none;
}

.methode { margin: 0.5em 0; }
.methode > div { padding-left: 1em; }

div.perim_choice.selected > div.togglable {
  color: red;
}

.perimeter-block {
  margin: 0.5em 0;
}

.grp_selector {
  margin: 0 2em;
}

div.view-details {
  display: none;
  font-size: 80%;
  margin-bottom: 1em;
}
div.groupment-details { font-size: 80%; margin-bottom: 1em; }

#form_to_check { padding: 0.6em; border: 1px solid #ccc; border-radius: 5px; background-color: #eee; }
#id_to_check_comment { height: 3em; }

table.numbers {
  border: thin solid #6495ed;
  border-collapse: collapse;
  font-size: 80%;
}
table.numbers th, table.numbers td {
  border: thin solid #6495ed;
  padding: 5px;
}
table.numbers td.hardsep {
  border-top-width: medium;
}
table.numbers th {
  background-color: #eee;
  position: sticky;
  top: 0;
}
table.numbers td.sf {
  border-left: 2px dotted #ccc;
}
table.numbers td.minim, table.numbers th.minim {
  opacity: 0.7;
  font-weight: normal;
  font-style: italic;
}

table.monospace td { font-family: monospace; }

table.properties {
  border: thin solid #ccc;
  border-collapse: collapse;
  font-size: 75%;
}
table.properties th, table.properties td {
  border: thin solid #ccc;
  padding: 3px;
}
table.properties th {
  text-align: right;
  text-transform: capitalize;
}

table.edition th {
  vertical-align: top;
  text-align: right;
  padding-top: 5px;
}

table.tablesorter thead tr .tablesorter-header {
  background-image: url("../img/ice-unsorted.gif");
  background-position: right center;
  background-repeat: no-repeat;
  cursor: pointer;
  padding-right: 16px;
}
table.tablesorter thead tr .tablesorter-headerSortUp,
table.tablesorter thead tr .tablesorter-headerSortDown {
  background-color: #aaa;
}
table.tablesorter thead tr .tablesorter-headerSortUp.aggr,
table.tablesorter thead tr .tablesorter-headerSortDown.aggr {
  background-color: #FF9F9F !important;
}
table.tablesorter thead tr .tablesorter-headerSortUp {
  background-image: url("../img/ice-asc.gif");
}
table.tablesorter thead tr .tablesorter-headerSortDown {
  background-image: url("../img/ice-desc.gif");
}

#data_grid .sf_abs { display: none; }
#data_grid .v_none { font-style: italic; }

#inventory_form #id_remarks { width: 100%; height: 4em; }
#inventory_form #id_operators { width: 100%; }

div#footer {
  clear: both;
  font-size: 80%;
  font-style: italic;
  margin-top: 1em;
  padding: 8px;
  background-color: #E3E3E3;
}

/* Tabs */
ul.tabs {
  position:relative;
  width: 100%;
  list-style:none;
  line-height:1em;
  padding:0;
  margin:0.4em 0;
}
ul.tabs li:not([hidden]) { display: inline; }
ul.tabs li {
  width: 15em;
  padding: 5px;
  text-align: center;
  font-weight: bold;
  border: 1px solid #666666;
  color: #777;
  background-color: white;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  border-bottom: 1px solid #ddd;
  cursor: pointer;
}
ul.tabs li a {
  color: #999;
  text-decoration: none;
}
ul.tabs li.active, ul.tabs li.active a {
  background-color: #eee;
  border-bottom: medium none white !important;
  color: black;
  cursor: default;
}

#graphmain canvas {
  max-height: 480px;
  background-color: #F3F6EC;
  margin-bottom: 1em;
}

.layer-switcher {
  top: 4.5em !important;
  right: auto !important;
  left: 0.5em !important;
}
