:root {
    --bg: #191C24;
    --menubg: #21252f;
    --dropbg: #474e62;
    --text: #fff;
    --text-mid: #a6a7ab;
    --text-dark: #191C24;
    --red: #ff0000;/* db141e */
    --green: #66ff33;
    --yellow: #fdb103;
    --blue: #0099ff;
    --hl: #00ffff;
    --hov: #393f4f;
    --hov-dark: #333a4c;
    --ttip: #fff;
    --border: #969eb0;
    --border-dark: #474e62;
    --sel: #393f4f;
    --sel-light: #d6d9df;
    --dbox: #2b303d;

    --tool: #717685;
    --bhov: #848ca1;
}

@font-face {
    font-family: "Roboto";
    src: url("../fonts/Roboto-Light.ttf") format("truetype");
}

@-webkit-keyframes fadeEffect {
    from {opacity: 0;}
    to {opacity: 1;}
}

@keyframes fadeEffect {
    from {opacity: 0;}
    to {opacity: 1;}
}

/* SCROLLBAR */
::-webkit-scrollbar {
    width: .5rem;
}

/* Track */
::-webkit-scrollbar-track {
    background: var(--menubg);
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--sel);
}

  /* Handle on hover */
  ::-webkit-scrollbar-thumb:hover {
    background: #474e62;
  }

  :root{
    scrollbar-color: #474e62 var(--menubg) !important;
  }
/* SCROLLBAR END */

::selection {
    color: var(--text);
    background: var(--tool);
}
/* For Mozilla Firefox */
::-moz-selection {
    color: var(--text);
    background: var(--tool);
}

#particles-js{
    position: absolute;
    width: 99%;
    height: 98%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    z-index: 5;
}

html {
    font-family: Roboto, sans-serif;
}

body {
    display: flex;
    flex-direction: row;
    gap: 0;
    min-width: 1910px;
    background: var(--bg);
    font-size: 14px;
    font-weight: 200;
    word-spacing: 2px;
    letter-spacing: 1px;
}

body.login-page {
    min-width: 1910px;
}

h1 {
    display: block;
    color: var(--text);
    cursor: default;
}

h1 span {
    color: var(--hl);
}

h2 {
    display: block;
    margin: 0;
    padding: .25rem 0 .25rem .5rem;
    width: calc(100% - .5rem);
    font-size: .9em;
    line-height: 1.2em;
    font-weight: 300;
    text-transform: uppercase;
    color: var(--text);
    background: var(--dbox);
    border-bottom: 0.05rem solid var(--border);
    cursor: default;
}

h3 {
    display: block;
    margin: 2rem 0 1rem 0;
    padding: 0 0 0 .25rem;
    width: calc(100% - .25rem);
    font-size: .9em;
    line-height: 1.2rem;
    font-weight: 400;
    text-transform: uppercase;
    color: var(--text);
    border-bottom: 0.05rem solid var(--border);
    cursor: default;
}

h3 span {
    text-transform: none;
}

h4 {
    display: block;
    margin: 0 0 .5rem;
    color: var(--text);
    cursor: default;
}

p {
    cursor: default;
    z-index: 1;
}

p, a {
    margin:0;
    line-height: 1.3rem;
    color: var(--text);
}

p.data-area {
    margin-bottom: 1rem;
    padding-left: 0 !important;
    text-transform: uppercase;
    font-size: 1rem !important;
    background: var(--bg);
    border-bottom: .005rem solid var(--border) !important;
}

th.data-area {
    font-size: 1rem !important;
}

.data-area .fa-id-badge, .data-area .fa-paperclip, .data-area .fa-file-export, .data-area .fa-clock, .data-area .fa-clipboard-list, .data-area .fa-bus-simple {
    padding: 0 !important;
    height: 1rem !important;
    width: 1rem !important;
}

.data-area .fa-clock , .data-area .fa-paperclip, .data-area .fa-clipboard-list{
    margin-left: 1rem !important;
}

.data-area .fa-file-export{
    margin-left: 4rem !important;
}

.data-area .fa-clock {
    height: .85rem !important;
    width: .85rem !important;
}

.data-area span.info-bar {
    float: none;
}

.data-area span.info-bar svg {
    margin: 0;
    vertical-align: baseline;
}

a {
    color: var(--text);
    text-decoration: none;
}

a.disabled {
    pointer-events: none;
}

.no-border {
    border: none !important;
}

.table tr.no-border {
    border: none;
}

.table tr.warning, dt.warning, dd.warning {
    background: #8b3329;
}

.table tr.advance-warning {
    background: #8f7001;
}

label {
    color: var(--text);
    font-size: .9em;
}

label.highlight {
    padding-left: 0.25rem;
    border-left: 0.25rem solid var(--hl);
}

.form {
    display: inline-block;
    margin: 0;
    width: 100%;
}
.form input.required, .form .ui.dropdown.required, .form label.required {
    border-color: #b9861e;
}

.sticky {
    display: inline-table;
    width: 100%;
    position: sticky;
    top: -1px;
    z-index: 1;
}

.right {
    float: right;
}

#right-menu {
    float: right;
    display: flex;
}

#right-menu svg {
    padding: 0.8rem 0 .25rem 0;
    margin-right: 2rem;
}

#right-menu a {
    padding: 0;
}

.svg-inline--fa {
    position: relative;
    padding: 0 0.813rem;
    width: 1.375rem;
    height: 1.375rem;
    text-align: center;
    color: var(--text);
}

.svg-inline--fa.fa-copy {
    padding-left: 0;
    width: .8rem !important;
    height: .8rem !important;
}

  /* dropdown menu */
  .dropdown-content {
    display: none;
    position: absolute;
    background-color: var(--dropbg);
    min-width: 8rem;
    z-index: 1;
  }

  .dropdown-content button {
    display: block;
    width: 100%;
    padding: .8rem 1rem;
    color: var(--text);
    background: var(--dropbg);
    text-decoration: none;
    border: none;
  }

  .dropdown-content button:hover {background-color: var(--sel);}
  
  .dropdown:hover .dropdown-content {display: block;}
  
  .dropdown:hover .dropbtn {color: var(--hl);}
/* top bar */
.top-bar {
    display: flex;
    margin-bottom: .125rem;
    height: 3rem;
    background: var(--menubg);
}

.search-section {
    display: flex;
    margin-bottom: 0.125rem;
    padding: 0.75rem;
    height: 1.5rem;
    background: var(--menubg);
}

.filter-section {
    display: flex;
    padding: 0.5rem;
    height: 2rem;
    gap: 2rem;
    width: 100%;
    background: var(--menubg);
}

div.icon.input {
    position: relative;
}

input#search-field {
    margin: 0;
    height: 1rem;
    width: 9rem;
}

.report-units .search-field {
    margin-top: 0;
    height: 1.2rem;
    width: 13.125rem;
}

.report-units .search-section {
    padding: 0 .5rem 1.25rem .5rem;
    background: none;
}

.report-units .icon.input svg.fa-magnifying-glass {
    height: 1.4rem;
}

div.icon input:not(.ui.dropdown .menu) > .input {
    padding: 0.2rem 2.3rem 0.2rem 0.3rem;
    width: 8rem;
}

.ui.dropdown svg.fa-magnifying-glass, .icon.input svg.fa-magnifying-glass {
    cursor: default;
    position: absolute;
    top: 0.25rem;
    right: 0;
    height: 1rem;
    width: 1rem;
    color: var(--dropbg);
}

span.text {
    font-size: 1em;
    font-weight: 400;
    color: var(--text);
}

#cal {
    height: 2rem;
    font-size: 1em;
    line-height: 2.1rem;
    border: none;
}

#time-range, #start-date {
    margin: 0 .5rem;
}

a#file-upload svg, a#assign-driver-cards-vehicles svg, a#assign-nfc-tags svg {
    cursor: pointer;
}

.top-bar a svg:hover, .top-bar svg.fa-chevron-down:hover {
    color: var(--hl);
}

.report-time-period svg.fa-chevron-down:hover {
    color: var(--hl);
    cursor: pointer;
}

.top-bar a.redD svg, .top-bar a.redV svg {
    border-bottom: .25rem solid var(--red);
}

.top-bar a.yellow svg {
    border-bottom: .25rem solid var(--yellow);
}

svg title {
    background-color: red;
}

svg:focus {
    outline: none;
}

/* CONTENT */
#content {
    display: flex;
    flex-direction: column;
    flex-grow: 100;
}

#content.dash {
    margin-top: 1rem;
    margin-left: 4.125rem;
}

#content.narrow {
    margin-left: 3.125rem;
}

#content.wide {
    margin-left: 3.125rem;
    flex-direction: row;
}

#content-grid {
    display: flex;
    flex-direction: row;
}

#content.wide #content-grid {
    flex-direction: column;
    overflow: hidden;
}

#content.wide #content-grid .filter-section{
    margin-bottom: 1rem;
}

/* DRIVERS */
#drivers-list-wrapper, #vehicles-list-wrapper {
    margin-left: 3.125rem;
    padding-right: 0.125rem;
    height: 100vh;
    width: 16.5rem;
}

#drivers-list, #vehicles-list {
    padding-right: 0.125rem;
    height: calc(100% - 5.25rem);
    overflow-x: hidden;
    overflow-y: scroll;
}

#drivers-list svg, #vehicles-list svg, #new-driver svg {
    padding: 0;
    height: .8rem;
    width: .8rem;
    padding-left: .35rem !important;
}
#drivers-list .vio-profile svg {
    margin-right: 0.25rem;
    padding: 0 !important;
    height: .9rem;
    width: .9rem;
    vertical-align: bottom;
    color: var(--text-dark);
}

#new-driver, #new-vehicle {
    margin-left: 4rem;
    padding: 0;
    cursor: pointer;
}

#drivers-list div.warning svg {
    padding-left: .5rem !important;
}

#drivers-list-nfc-tags, #nfc-tags-list {
    height: calc(100vh - 27rem);
    overflow-y: scroll;
    overflow-x: hidden;
}

#sort-tile {
    display: flex;
    flex-direction: row;
    margin-bottom: .125rem;
    padding: 0.55rem 0.45rem 0.25rem 0.45rem;
    background: var(--dbox);
    border-bottom: 0.005rem solid var(--border-dark);
}

#sort-tile .sort-option
{
    width: 12%;
    cursor: pointer
}

#sort-tile .sort-title
{
    width: 51%;
    color: var(--text);
    cursor: default;
}

#vehicles-list-wrapper #sort-tile .sort-title {
    width: 63%;
}

#sort-tile svg
{
    height: .8rem;
    width: .8rem;
}

#sort-tile .sort-option.active svg
{
    color: var(--hl);
}

.list-tile {
    display: none;
    position: relative;
    margin: 0 0.125rem 0.125rem 0;
    padding: 0.5rem 0;
    width: 100%;
    height: 3.3rem;
    background: var(--dbox);
    cursor: pointer;
}

.list-tile.visible {
    display: flex;
}

.list-tile.search-hidden, .calendar-row.search-hidden, label.search-hidden, label.filter-hidden {
    display: none !important;
}

.list-tile:hover {
    background: var(--sel);
}

.list-tile.selected {
    width: calc(100% - 0.25rem);
    background: var(--sel);
    border-left: 0.25rem solid var(--hl);
}

.circle {
    margin-left: 0.5rem;
    border-radius: 3%;
    height: 3.3rem;
    width: 3.3rem;
    background:#9fa9bb;
}

.list-tile.selected .circle {
    margin-left: 0.25rem;
}

.circle div.initials {
    margin: 0;
    padding-top: 0.05rem;
    padding-left: 2px;
    font-size: 1.1em;
    font-weight: 800;
    text-align: center;
}

.circle div.pnumber, .circle div.inumber {
    margin: 0;
    padding-top: 0.2rem;
    padding-left: 2px;
    height: .8rem;
    font-size: 0.8em;
    text-align: center;
}

.circle div.manufacturer {
    margin: 0;
    padding-top: 0.75rem;
    padding-left: 2px;
    font-size: .8em;
    text-align: center;
    font-weight: 800;
}

.vio-profile {
    padding: 0.22rem;
    text-align: center;
    font-size: .7em;
    border-radius: 3%;
}

.list-tile .driver-infos, .list-tile .vehicle-infos {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 8rem;
    letter-spacing: 0;
}

.list-tile .vehicle-infos {
    width: 9.7rem;
}

.list-tile div.last-name, .list-tile div.license-plate {
    margin: 0.5rem 0 0 0.5rem;
    font-size: 1em;
    color: var(--text);
    text-align: left;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.list-tile div.first-name, .list-tile div.card-number {
    margin: 0.25rem 0 0 0.5rem;
    font-size: .8em;
    color: var(--text);
    text-align: left;
}

.list-tile div.unit-manufacturer {
    margin: 0 0 0 0.5rem;
    font-size: .7em;
    color: var(--text);
}

.list-tile div.attention {
    position: absolute;
    margin-left: 0.5rem;
    bottom: 0;
    width: 4rem;
    border-bottom: 0.25rem solid var(--red);
}

.list-tile div.advanced-infos {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 3.5rem;
}

#vehicles-list .list-tile div.advanced-infos {
    width: 2.25rem;
}

.list-tile div.warning, .list-tile div.download {
    font-size: .8em;
    text-align: right;
    color: var(--text);
    align-self: flex-end;
}

.list-tile div.download.red {
    color: var(--red);
}

.list-tile div.download.yellow {
    color: var(--yellow);
}

/* TAB START */
.sub-menu {
    padding: 0 0.125rem;
    width: 10rem;
    display: flex;
    flex-flow: column;
    gap: 0.125rem;
    overflow: hidden;
}

.sub-menu.wide {
    margin-top: .25rem;
    width: 11.25rem;
}

  /* Style the buttons inside the tab */
  .sub-menu button, .popup-menu button {
    width: 100%;
    background: var(--dbox);
    border: none;
    cursor: pointer;
    padding: .5rem .5rem;
    transition: 0.25s;
    font-size: 1em;
    text-align: left;
    color: var(--text);
  }

  .sub-menu button:not(.sub-menu button.child-tab), .popup-menu button
  {
    border-left: 0.25rem solid var(--dbox)
  }

  /* Change background color of buttons on hover */
  .sub-menu button:hover:not(.sub-menu button.child-tab), .popup-menu button:hover {
    background-color: var(--sel);
    border-left: 0.25rem solid var(--sel);
  }

  .sub-menu button.child-tab:hover {
    background-color: var(--sel);
  }

  /* Create an active/current tablink class */
  .sub-menu button.active:not(.sub-menu button.child-tab), .popup-menu button.active {
    border-left: 0.25rem solid var(--hl);
    background-color: var(--sel);
  }

  .sub-menu button.child-tab {
    display: none;
    margin-left: 1rem;
    width: calc(100% - 1rem);
  }

  .sub-menu button.child-tab.active {
    display: none;
    margin-left: 1rem;
    width: calc(100% - 1rem);
    background-color: var(--sel);
    border-bottom: 0.125rem solid var(--hl);
  }

  .sub-menu #driver-communication {
    display: flex;
    flex-direction: row;
    gap: 0.125rem;
    margin-top: 1rem;
    width: 100%;
  }

.sub-menu #driver-communication button {
    padding: 0.4rem 0 0.15rem 0;
    width: calc(100% - 0.125rem);
    border-left: none;
}

.sub-menu #driver-communication button svg {
    height: 1.25rem;
    width: 100%;
    padding: 0;
}

.sub-menu #driver-communication button svg.fa-square-whatsapp {
    color: #5ada16;
}

/* Style the tab content */
.tab-container {
    display: none;
    margin: 1rem 0 0 1rem;
    padding-right: 1rem;
    height: calc(100vh - 4.25rem);
    width: 100%;
    color: var(--text);
    overflow-x: hidden;
}

#content.wide .tab-container {
    height: calc(100vh - .25rem);
}

.tab-container.filter {
    margin-top: 0;
}

  .popup .tab-container {
    margin: 1rem 0 0 0;
  }

.tab-container.scroll {
    overflow-y: scroll !important;
}

  .tab-container.active, .sub-menu button.child-tab.visible {
    display: flex;
    flex-direction: column;
  }

  .tab-content {
    height: auto;
    width: 100%;
    -webkit-animation: fadeEffect 1s;
    animation: fadeEffect 1s;
  }

  .tab-sidebar {
    margin-left: .125rem;
    width: 15rem;
  }

  .tab-container p.date {
    width: 5rem;
    float: left;
    padding-top: 2.5rem;
    margin-right: 0.5rem;
  }

  .tab-container svg.zs {
    margin-bottom: 2rem;
  }

  #master-data.tab-container {
    margin-right: 1rem;
  }
/* TAB END */

/* DROPDOWN */
.ui.dropdown, label#cal {
    cursor: pointer;
    position: relative;
    display: flex;
    outline: none;
    text-align: left;
    background: var(--menubg);
}

.ui.dropdown .menu {
    cursor: auto;
    position: absolute;
    display: none;
    outline: none;
    top: 100%;
    width: -webkit-max-content;
    width: -moz-max-content;
    min-width: 100%;
    margin: 0em;
    padding: 0em 0em;
    background: var(--dropbg);
    font-size: 1em;
    text-shadow: none;
    text-align: left;
    z-index: 11;
    will-change: transform, opacity;
    border-radius: .375rem;
}

.ui.dropdown .scrolling.menu {
    display: block;
    position: static;
    overflow-y: auto;
    border: none;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    min-width: 100% !important;
    max-height: 20rem;
    width: auto !important;
    border-top: 1px solid var(--sel);
}

.ui.dropdown.dropdown .menu > .input {
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0.5rem;
    min-width: 10rem;
}

.ui.dropdown .menu > .divider {
    border-top: 1px solid var(--bg);
    height: 0em;
    margin: 0.5em 0em;
}

.ui.dropdown .menu > .header {
    margin: 0.75rem 0rem;
    padding: 0em 0.75rem;
    color: var(--text);
    font-size: 0.85em;
    font-weight: bold;
    text-transform: uppercase;
}

.ui.dropdown .menu > .item {
    position: relative;
    cursor: pointer;
    display: block;
    border: none;
    height: auto;
    text-align: left;
    border-top: none;
    line-height: 1em;
    color: var(--text);
    padding: 0.75rem !important;
    font-size: 1em;
    -webkit-touch-callout: none;
}

.ui.dropdown .menu > .item.selected {
background: var(--sel);
}

.ui.dropdown .menu > .item:hover {
    background: var(--sel);
    z-index: 13;
}

.ui.dropdown > .text {
    display: inline-block;
    padding: 0.2rem 0.3rem;
    width: 100%;
    -webkit-transition: none;
    transition: none;
    align-self: center;
}

.ui.dropdown > .ui.label.transition.visible {
    padding: 0.5rem 0.3rem;
    font-size: 1em;
}

.ui.dropdown .menu > .input:not(.transparent) input {
    padding: 0.5em 1em;
    margin: 0;
}

.ui.dropdown div.icon svg {
    top: 0.325rem;
    height: 1.25rem;
    width: 1.25rem;
}

.ui.dropdown.active .svg-inline--fa:not(div.icon svg), .ui.dropdown.highlight .svg-inline--fa:not(div.icon svg)  {
    color: var(--hl);
}

.ui.dropdown .svg-inline--fa, label .svg-inline--fa {
    padding: 0;
    height: 1rem;
    width: 1rem;
    align-self: center;
}

.ui.multiple.dropdown .svg-inline--fa {
    height: 1rem;
    width: 3rem;
}

.ui.dropdown.green {
    border-color: var(--green) !important
}

.ui.multiple.dropdown>.label~.text {
    display: none;
}

/* DROPDOWN END */

/* TABLES */

table {
    display: table;
    border-collapse: collapse;
    text-indent: initial;
    border-spacing: 0;
    box-sizing: border-box;
    border: none;
    white-space: nowrap;
}

table thead {
    display: table-header-group;
    background-color: var(--bg);
}

tbody {
    display: table-row-group;
    vertical-align: middle;
    border: none;
}

td, tr {
    vertical-align: middle;
}

.table {
    width: 100%;
}

.table.selectable tbody tr:not(.no-hover):hover {
background: var(--hov);
}

.table tbody tr:last-child {
    border: none;
}

.table th, .table td {
    display: inline-block;
    padding: 0.325rem 0.5rem;
    width: 5.75rem;
    text-align: left;
    font-weight: 300;
    font-size: .9em;
    line-height: 1.2em;
    color: var(--text);
    cursor: default;
}

.table.wide th, .table.wide td {
    width: 3.5rem;
    text-align: center;
}

.table th {
    text-transform: uppercase;
}

.table tr {
    display: table-row;
    border-bottom: 0.05rem solid var(--border-dark);
}

.table td.copy-field {
    cursor: pointer;
}

.table td:first-child svg {
    width: 100%;
}
.table.due-dates tr.advance-warning .id-card {
    color: var(--text);
 }
.table.due-dates tr.warning .pass {
   color: var(--text);
}

.table.due-dates td:first-child svg {
    width: auto;
    margin-right: .5rem;
    padding: 0;
    line-height: 2rem;
    vertical-align: bottom;
}

.due-dates svg.driver-card, .report-units svg.driver-card, .section svg.driver-card, svg.color.driver-card {
    color: #89e1ff;
}

.due-dates svg.driving-license, svg.color.driving-license {
    color: #ffbee7;
}

.due-dates svg.fa-diamond, svg.color.fa-diamond {
    color: #ff7300;
}

.due-dates svg.id-card, svg.color.id-card {
    color: #d8d8b0;
}

.due-dates svg.pass, svg.color.pass {
    color: #9d2a08;
}

.table .svg-inline--fa {
    height: 1rem;
    width: 1rem;
}

.red {
    color: var(--red)
}

.yellow {
    color: var(--yellow);
}

.blue {
    color: var(--blue)
}

svg rect:focus {
    outline: none;
}

svg .red {
    fill: var(--red);
    font-size: 1.1em;
}

.green {
    color: var(--green)
}

.overview-tab .table {
    margin: 0 0.5rem 1.5rem 0;
}

.overview-tab .table thead tr {
    background: var(--hov);
}

.overview-tab .table th, .overview-tab .table td {
    width: 10rem;
}

.overview-tab .table th:first-child, .overview-tab .table td:first-child {
    padding-left: .5rem;
    width: 12rem;
}

.overview-tab .table th:last-child, .overview-tab .table td:last-child {
    width: auto;
}

.overview-tab .table thead tr {
    border-bottom: 0.05rem solid var(--border);
}

#advanced-training {
    margin-bottom: 0;
}

#activities-details-tab .grid {
    margin: 0;
}

#activities-details-tab .grid .column:not(:last-child), #shifts-overview-tab .grid .column:not(:last-child) {
    padding-right: 1rem;
}

#activities-details-tab svg, #vehicle-activities svg {
    width: calc(100% - 5rem);
}

#activities-details-tab .tl-date-map svg, #vehicle-activities .tl-date-map svg {
    width: 1.25rem;
    padding-left: 0;
    cursor: pointer;
}

#activities-details-tab svg.fa-circle-chevron-right, #vehicle-activities svg.fa-circle-chevron-right {
    height: 1.15rem;
    width:1.15rem;
    transform: rotate(325deg);
}

#activities-details-tab .day-wrapper, #vehicle-activities .day-wrapper {
    padding: 1rem 1rem 0 1rem;
    height: auto;
    background-color: var(--menubg);
}

#activities-details-tab  .day-wrapper svg image,  #vehicle-activities .day-wrapper svg image {
    cursor: pointer;
}

#activities-details-tab .accordion-item-label, #vehicle-activities .accordion-item-label {
    margin-bottom: 1em;
    padding: 0 1em 1em 1em;
    background-color: var(--menubg);
}

#vehicle-activities .accordion-item-content {
    max-width: 65rem;
}

#activities-details-tab .accordion-item-content, #vehicle-activities .accordion-item-content {
    margin-left: .75rem;
}

#activities-details-tab .accordion input:checked ~ .accordion-item-content {
    padding: 0;
}

#activities-details-tab table {
    table-layout: fixed;
}

#activities-details-tab .driver-day-summary th, #activities-details-tab .driver-day-summary td {
    padding: 1%;
    width: 6.5%;
    text-align: center;
}

#activities-details-tab .driver-day-summary th:nth-child(8), #activities-details-tab .driver-day-summary td:nth-child(8) {
    width: 11.5%;
}

#activities-details-tab .driver-day-summary th:last-child, #activities-details-tab .driver-day-summary td:last-child {
    width: 25%;
    text-align: left;
}

#activities-details-tab .driver-card-insertions td, #activities-details-tab .driver-card-insertions th {
    padding: 1%;
    width: 7%;
}

#activities-details-tab .driver-card-insertions td:first-child, #activities-details-tab .driver-card-insertions th:first-child {
    width: 17%;
}

#activities-details-tab .driver-card-insertions td:nth-child(3), #activities-details-tab .driver-card-insertions th:nth-child(3) {
    width: 12%;
}

#activities-details-tab .driver-card-insertions td:nth-child(4), #activities-details-tab .driver-card-insertions th:nth-child(4) {
    width: 22%;
}

#activities-details-tab .driver-card-insertions td:nth-child(5), #activities-details-tab .driver-card-insertions th:nth-child(5) {
    width: 13%;
}

#activities-details-tab table.driver-card-insertions svg {
    padding: 0 .25rem 0 0;
    vertical-align: text-bottom;
}

#activities-details-tab table.driver-card-insertions svg.fa-rotate-180 {
    padding: 0 0 0 .25rem;
}

#activities-details-tab table.vehicle-activities td {
    display: inline-flex;
    flex-direction: column;
    width: 31%;
    padding: 1%;
}

#activities-details-tab table.vehicle-activities td div.activities {
    display: inline-flex;
    flex-direction: row;
    gap: 0.5rem;
    margin: 0 auto;
}

#activities-details-tab table.vehicle-activities td div.activities div {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: .25rem;
    color: var(--text-dark);
    letter-spacing: 0;
}

#activities-details-tab table.vehicle-activities td div.license-plate {
    margin-bottom: .5rem;
    border-bottom: 0.05rem solid var(--border-dark);
    text-align: center;
}

#activities-details-tab table.vehicle-activities td svg {
    width: auto;
    fill: var(--text-dark);
}

#activities-details-tab table.vehicle-activities td div.vehicle-work {
    background-color: var(--blue);
}

#activities-details-tab table.vehicle-activities td div.vehicle-driving {
    background-color: var(--red);
}

#activities-details-tab table.vehicle-activities td div.vehicle-available {
    background-color: var(--yellow);
}

#activities-details-tab table.vehicle-activities td div.vehicle-break {
    background-color: var(--green);
}
#activities-details-tab .violations-evaluation th, #activities-details-tab .violations-evaluation td {
    padding: 1%;
    width: 10%;
}

#activities-details-tab .violations-evaluation th:first-child, #activities-details-tab .violations-evaluation td:first-child {
    width: 14%;
}

#activities-details-tab .violations-evaluation th:nth-child(3), #activities-details-tab .violations-evaluation td:nth-child(3) {
    width: 8%;
}

#activities-details-tab .violations-evaluation th:last-child, #activities-details-tab .violations-evaluation td:last-child {
    width: 60.5%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: break-spaces;
}

#activities-details-tab .events-faults th:first-child, #activities-details-tab .events-faults td:first-child {
    width: 13.5%;
}

#activities-details-tab .events-faults th, #activities-details-tab .events-faults td {
    padding: 1%;
    width: 10%;
}

#activities-details-tab .events-faults th:nth-child(2), #activities-details-tab .events-faults td:nth-child(2) {
    width: 23.5%;
}

#activities-details-tab .events-faults th:last-child, #activities-details-tab .events-faults td:last-child {
    width: 45%;
    word-wrap: break-word;
    overflow-wrap: break-word;
    white-space: break-spaces;
}

#activities-details-tab .traffic-control th, #activities-details-tab .traffic-control td {
    padding: 1%;
    width: 10%;
}

#activities-details-tab .traffic-control th:nth-child(2), #activities-details-tab .traffic-control td:nth-child(2) {
    width: 13.5%;
}

#activities-details-tab .traffic-control th:nth-child(3), #activities-details-tab .traffic-control td:nth-child(3) {
    width: 21%;
}

#activities-details-tab .traffic-control th:last-child, #activities-details-tab .traffic-control td:last-child {
    width: 30%;
}

#activities-details-tab .traffic-control svg {
    padding: 0 .5rem 0 0;
    vertical-align: text-bottom;
}

#activities-list-tab svg.fa-circle-chevron-right {
    padding-bottom: 0 !important
}

.activities-table tr {
    display: flex;
    flex-direction: row;
}

.activities-table th, .activities-table td {
    padding: 1% !important;
    width: 12.2% !important;
}

#vehicle-activities .activities-table th, #vehicle-activities .activities-table td {
    padding: 1% !important;
    width: 9.5% !important;
}

#vehicle-activities .activities-table th:nth-child(8), #vehicle-activities .activities-table td:nth-child(8) {
    padding: 1% !important;
    width: 17.5% !important;
}

#act-list .activities-table th, #act-list .activities-table td {
    padding: 1% !important;
    width: 10.5% !important;
    text-align: left;
    font-size: 1em;
}

.activities-table {
    margin-bottom: 2rem;
}

.activities-table td:first-child svg {
    padding-left: 1rem;
    width: 1rem;
    height: 1rem;
    fill: var(--text);
}

.list-details td:first-child svg {
    padding-left: 1.5rem;
}

#activities-details-tab table svg, #activities-list-tab table svg, #act-weekly th svg, #driver-shifts-head .head-elements .cell svg, #vehicle-activities table svg {
    height: 1rem;
    width: 1rem;
    fill: var(--text);
    padding-bottom: 0.5rem;
}

#activities-details-tab table svg {
    padding-top: .25rem;
    padding-bottom: .25rem;
}

#fs-driving-license {
    margin-bottom: 4rem
}

div#vehicle-technical-data {
    min-width: 18rem;
    max-width: 33%;
}

#control-driving-license {
    margin-top: .5rem;
}

#driving-license-control .table th,
#driving-license-control .table td {
    width: calc(20% - 1rem);
    text-align: left;
}

span svg {
    margin: 0 1rem;
    height: 1rem;
    width: 1rem !important;
    fill: var(--text);
}

p span {
    float: right;
}

p span.birthdate {
    float: none;
    margin-left: 2rem;
}

th svg.violation {
    height: 2rem !important;
    width: 2.5rem !important;
}

th svg.vehicle {
    height: 2rem !important;
    width: 2rem !important;
}

#driver-overview-tab p, a {
    font-size: .9em;
    padding: 0.375rem .5rem;
    line-height: .9em;
}

#driver-overview-tab p:not(.no-border) {
    border-bottom: .005rem solid var(--border-dark);
}

#driver-overview-tab #overview-graph {
    width: 85%;
    cursor: default;
}

#driver-overview-tab #violations-legend {
    margin: 1rem 0 1rem 1.5rem;
}

#driver-overview-tab #overview-legend {
    display: flex;
    gap: 2rem;
    margin: 4rem 0 1.5rem 1.5rem;
}

#driver-overview-tab p.data-available {
    border-bottom: .25rem solid var(--green);
}

#driver-overview-tab p.no-data-available {
    border-bottom: .25rem solid var(--red);
}

#driver-overview-tab p.driver-present {
    border-bottom: .25rem solid var(--blue);
}

#driver-overview-tab p.not-relevant {
    border-bottom: .25rem solid #eeeeee;
}

#violations-graph svg text {
    cursor: default;
}

#driver-overview-tab g.hand, #driver-overview-tab text.hand {
    cursor: pointer;
}

#driver-overview-tab g.hand:hover circle.cls-2 {
    fill:#00FFFF;
}

#driver-overview-tab div.grid {
    margin-bottom: .5rem;
}

#driver-overview-tab div.grid.big-spacing {
    margin-bottom: 1rem;
}

.opened svg {
    color: var(--hl);
    transform: rotate(90deg) !important;
}

.table th.xtrawide, .table td.xtrawide {
    width: 9rem;
}

.table th.uwide, .table td.uwide {
    width: 25rem;
    text-align: left;
}

#act-weekly.table thead tr {
    height: 2.75rem;
    display: block;
    border-bottom: 0.005rem solid var(--border);
}

#act-weekly.table tr {
    border: none;
}

#act-weekly.table td:first-child {
    height: 2.55rem;
    width: calc(100% - 42rem);
    text-align: left;
}

#act-weekly.table th:first-child {
    padding: 0 1rem 1rem 0;
    width: calc(100% - 42rem);
    text-align: left;
}

#act-weekly.table td {
    padding: 0.375rem 0.5rem;
    vertical-align: bottom;
}

#act-weekly.table td:last-child{
    width: 12rem;
    text-align: left;
}

/* DRIVER SHIFTS START */
#driver-shifts-head, #driver-shifts-head .data-area {
    margin: 0;
    border-bottom: solid 0.005rem var(--border);
    background: var(--bg);
}

#driver-shifts-head .head-elements {
    display: flex;
    flex-direction: row;
    margin: 0.25rem 0;
    height: 2.5rem;
    text-transform: uppercase;
}

#driver-shifts-head div.top-border {
    border-top: 0.005rem solid var(--border);
}

#driver-shifts-head div.left-border {
    margin-left: .5%;
    padding-left: 0 !important;
    border-left: 0.005rem solid var(--border);
}

#driver-shifts-head div.right-border {
    margin-right: .5%;
    padding-right: 0 !important;
    border-right: 0.005rem solid var(--border);
}

#driver-shifts .shift .accordion-item {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

#driver-shifts .shift:hover {
    background: var(--hov);
}

#driver-shifts .accordion input:checked ~ .accordion-item-content {
    padding-right: 0;
    width: 100%;
    background: var(--bg);
}

#driver-shifts div.shift-details {
    width: calc(100% - 1rem);
    border-top: solid 0.005rem var(--border-dark);
}

#driver-shifts div.rest-time {
    width: 81%;
    padding-right: 19%;
    text-align: center;
    line-height: 2rem;
    border-bottom: solid 0.005rem var(--border-dark);
}

#driver-shifts div.cell, #driver-shifts-head .head-elements div.cell {
    display: inline-block;
    padding: .325rem .5%;
    font-weight: 300;
    font-size: .9em;
    line-height: 1.75em;
    cursor: default;
}

#driver-shifts-head .head-elements div.cell {
    line-height: 2.5em;
}

#driver-shifts label.w1, #driver-shifts-head .head-elements div.w1{
    width: 2%;
}

#driver-shifts div.w2, #driver-shifts-head .head-elements div.w2 {
    width: 10%;
}

#driver-shifts div.w3, #driver-shifts-head .head-elements div.w3 {
    width: 4%;
    text-align: center;
}

#driver-shifts div.w4, #driver-shifts-head .head-elements div.w4 {
    width: 24%;
}

#driver-shifts label.w1.accordion-item-label {
    padding: .325rem .5%;
    cursor: pointer;
}

#driver-shifts-head .head-elements .cell .svg-inline--fa {
    padding-left: 0;
    padding-right: 0;
    margin-left: .25rem;
}

#driver-shifts-head svg.fa-person-digging, #driver-shifts-head svg.fa-truck-moving {
    height: 1.35rem !important;
    width: 1.35rem !important;
}

div.shift-details .grid {
    border-bottom: solid 0.005rem var(--border-dark);
}

div.shift-graph {
    height: calc(100vh - 15rem);
    width:100%;
}
/* DRIVER SHIFTS END */

th svg, span svg {
    padding-bottom: 0.5rem;
}
#act-list.table tr.day-data {
    display: none;
}

#act-list.table tr {
    display: flex;
    flex-direction: row;
}

#act-list.table tr.week td {
    width: 100%;
    text-align: center;
}

#act-list th, #act-list td {
    width: 5.5rem;
}

#act-list th:nth-child(2) {
    line-height: 1.85rem;
}

#act-list th:last-child, #act-list td:last-child {
    padding-left: 0;
    width: auto;
    text-align: left;
}

#act-list td:nth-child(3), .list-details td:nth-child(3) {
    text-align: left;
}

#act-list thead tr {
    border-bottom: solid 0.005rem var(--border);
}

#act-list .week {
    line-height: 2rem;
    text-align: center;
    border-bottom: solid 0.005rem var(--border);
}

#act-list .week td {
    height: 2rem;
    line-height: 3rem;
}

#act-list .list-details {
    width: 70% !important;
    margin: 1rem 7rem;
    padding: 1rem !important;
    background: var(--dbox);
}

table#act-list .w3 {
    width: 3rem;
}

div.section {
    padding: 1rem;
    margin: 0 0 1rem 0;
    background: var(--dbox);
}

#activities-details-tab div.section h3 svg {
    width: 1rem;
    height: 1rem;
    padding: 0 .5rem 0 0;
    vertical-align: text-bottom;
}

.list-details h3 {
    margin: 1rem 0;
}

#act-list .list-details table {
    margin-bottom: 0;
}

.list-details thead, div.section thead {
    background: var(--dbox);
}

.week-details {
    padding: 0;
}

#act-weekly .week-details td:first-child
{
    height: 2rem;
    text-align: right;
    line-height: 2rem;
}

.week-details td{
    height: 2rem;
}

#act-weekly .week td 
{
    padding: 0 .5rem;
}

#act-weekly .week td:first-child
{
    height: 2rem;
    text-align: center;
    line-height: 3rem;
}

#act-weekly tr.week
{
    border-bottom: solid .05rem var(--border);
}

#act-weekly .week-details td:not(:first-child)
{
    line-height: 2rem;
    border-top: solid .05rem var(--border);
}

#ddd-history th, #ddd-history td {
    width:12%;
}

#ddd-history th:first-child, #ddd-history td:first-child {
    width:40%;
}

#ddd-history th:nth-child(2), #ddd-history td:nth-child(2) {
    width:20%;
}

#ddd-history th:last-child, #ddd-history td:last-child {
    width:7%;
}

#vehicle-data-popup .grid .column:not(:last-child) {
    padding-right: 10%;
}

#personal-data textarea, #vehicle-data textarea {
    margin-right: 0;
    padding-left: 0.5rem;
    height: 2rem;
    width: calc(100% - 1rem);
    border: none;
    border-bottom: 0.05rem solid var(--border-dark);
    background: transparent;
    resize: vertical;
}

#double-driving-staff {
    margin-top: 3rem
}

#double-driving-staff svg {
    margin: 0.875rem 2rem;
    width: 2rem;
    height: 2rem;
}

#double-driving-staff .button {
    margin: 1rem 0
}

div#double-driving-staff-data {
    display: flex;
    flex-direction: row;
    gap: 5%
}

div#double-driving-staff-data dt, div#double-driving-staff-data dd {
    height: 1.25rem;
}

#double-driving-staff-form input, #double-driving-staff-form label.checkbox {
    margin: 0;
}

#double-driving-staff-form input.half-length {
    float: left;
    width: calc((100% - 2.7rem) / 2);
    margin-right: 0.625rem;
}

#double-driving-staff-form label.fourth-length {
    float: left;
    width: calc((100% - 5.4rem) / 4);
    margin-right: 0.625rem;
}

#double-driving-staff-form
{
    padding: 0 .5rem;
    background: var(--menubg);
}

#double-driving-staff-form dt {
    width: calc(40% - .5rem);
}

#double-driving-staff-form dd {
    width: calc(60% - 1rem);
    overflow: visible;
}

#double-driving-staff-form dd .ui.dropdown .menu {
    margin-left: -.25rem;
}

div#double-driving-staff-data div.driver-data, div#double-driving-staff-data .form {
    width: 30%;
}

div#double-driving-staff-data .form .ui.dropdown {
    display: flex;
    margin: 0;
    padding: 0.2rem 0.3rem;
    height: 0.9rem;
    width: calc(100% - 1.35rem);
    border: 1px solid var(--dropbg);
    font-size: .9em;
}

div#double-driving-staff-data svg.fa-share {
    float:right
}

div#double-driving-staff-data svg.fa-share:hover {
    cursor: pointer;
    color: var(--hl);
}

#old-driver-cards {
    margin-top: 9rem;
}

#old-driver-cards-title {
    margin-top: 6.5rem;
}

#old-driving-licenses {
    margin-top: 9rem
}

#old-driving-licenses-title {
    margin-top: 5rem;
}

#old-driver-cards .accordion-item, #old-driving-licenses .accordion-item {
    background: var(--menubg);
}

#driver-master-data .accordion {
    margin: 1rem 0;
}

#driver-master-data h2 {
    float: left;
}

#driver-master-data #driver-groups-data, #driver-master-data #driver-locations-data {
    margin-top: 3rem;
}

#driver-master-data #locations-change-list {
    width: 100%;
}

#driver-master-data #update-driver-location label span.info {
    float: right;
    padding: 0.1rem;
}

#driver-master-data #update-driver-location svg {
    height: 0.8rem;
    width: 0.8rem;
    margin-right: 0.75rem;
}

#update-driver-location div.section, #update-vehicle-location div.section {
    width: 100%;
}

#update-vehicle-location div.checkboxText {
    display: inline-block;
    max-width: 27.75rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#update-vehicle-location label.checkbox {
    text-overflow: ellipsis;
    overflow-x: hidden;
    overflow-y: hidden;
}

.time-line {
    display: flex;
    flex-direction: row;
    margin-bottom: .5rem;
}

.time-line label:not(.checkbox) {
    line-height: 1.5rem;
}

.time-line label.checkbox {
    width: 4rem;
    margin: 0 0.25rem;
}

#violations-overview {
    display: flex;
    flex-direction: column;
    width: 100%;
}

#violations-overview div.grid, .login-page div.grid {
    margin: 0;
}

#driver-overview-tab div.grid {
    overflow-x: hidden;
}

.violation-list {
    height: calc(100vh - 12.125rem);
    overflow-y: scroll;
    background: var(--menubg);
}

.violation-tile.active {
    display: block;
}

.violation-tile.hidden, input.hidden, div.hidden, button.hidden, svg.hidden {
    display: none !important;
}

.violation-tile {
    display: none;
    margin: 1rem 0;
    border-bottom: 0.05rem solid var(--border-dark);
    padding: 0 0 0.25rem 0;
}

.violation-tile p, .violation-tile h4 {
    padding-left: .25rem;
}

.year-toggle {
    margin-right: 2rem !important;
}

.year-toggle span {
    background: var(--sel) !important;
}
/* TABLES END */

/* GRID START */
div.grid {
    display: flex;
    margin-bottom: 1rem;
    width: 100%;
}

div.grid.big-spacing {
    margin-bottom: 1.5rem;
}

div.grid.no-spacing {
    margin-bottom: 0;
}

.grid .column:not(:last-child) {
    padding-right: 2rem;
}

div.grid .column.one {
 width: 12.5%;
}

div.grid .column.two {
    width: 25%;
}

div.grid .column.three {
    width: 37.5%
}

div.grid .column.four {
    width: 50%;
}

div.grid .column.five {
    width: 62.5%;
}

div.grid .column.six {
    width: 75%;
}

div.grid .column.seven {
    width: 87.5%;
}

div.grid .column.eight {
    width: 100%;
}

div.grid .column.max.four {
    width: 50%;
    max-width: 44rem;
}

div.grid .column.min.four {
    min-width: 50%;
    flex-grow: 100;
}

/* GRID END */

/* FIELDS START */
form .fields {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 2rem;
    width: 100%;
}

form .fields label.title {
    margin: 0.75rem 0 0.35rem 0;
    display: block;
    width: 100%;
}

form .fields .field.one {
 width: 16.66%;
}

form .fields .field.two {
    width: 33.32%;
}

form .fields .field.three {
    width: 49.98%
}

form .fields .field.four {
    width: 66.64%;
}

form .fields .field.five {
    width: 83.3%;
}

form .fields .field.six {
    width: 99.96%;
}

.popup.double form .fields .field.one, .popup.triple form .fields .field.one {
    width: 7.5%;
}

.popup.double form .fields .field.two, .popup.triple form .fields .field.two {
    width: 15%;
}

.popup.double form .fields .field.three, .popup.triple form .fields .field.three {
    width: 22.5%
}

.popup.double form .fields .field.four, .popup.triple form .fields .field.four {
    width: 30%;
}

.popup.double form .fields .field.five, .popup.triple form .fields .field.five {
    width: 37.5%;
}

.popup.double form .fields .field.six, .popup.triple form .fields .field.six {
    width: 45%;
}

form .fields .field.margin {
    margin-right: 10%;
} 

[type=color], [type=date], [type=datetime-local], [type=datetime], [type=email], [type=month], [type=number],
[type=password], [type=search], [type=tel], [type=text], [type=time], [type=url], [type=week], textarea, label.checkbox {
    display: block;
    margin: 0.25rem 0.75rem 0.25rem 0;
    padding: 0.2rem 0.3rem;
    height: .9rem;
    width: calc(100% - 1.35rem);
    border: 1px solid var(--dropbg);
    background-color: var(--menubg);
    font-size: .9em;
    font-weight: 400;
    color: var(--text);
}

input[disabled]:not(input[type="color"]), .ui.dropdown.disabled {
    opacity: .3;
}

[type=color] {
    height: 1.5rem;
}

label.checkbox.red {
    border: 0.05rem solid var(--red);
}

label.checkbox.green {
    border: 0.05rem solid var(--green);
}

dd [type=color] {
    margin: 0;
    padding: 0;
    height: 1rem;
    width: 3rem;
}

.field [type=text]:focus, .field [type=date]:focus {
    outline: 0;
    background-color: var(--hov);
    transition: border-color .25s ease-in-out;
}

input::-webkit-datetime-edit-day-field:focus,
input::-webkit-datetime-edit-month-field:focus,
input::-webkit-datetime-edit-year-field:focus {
    background-color: var(--sel);
    outline: none;
}

.checkbox {
    display: block;
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: #191C24;
    line-height: 1.1rem;
  }

/* Hide the browser's default checkbox */
.checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
  }

  /* Create a custom checkbox */
  .checkmark {
    float: left;
    height: .8rem;
    width: .8rem;
    margin-right: 0.25rem;
    background-color: #191C24;
    border: 0.005rem solid var(--border-dark);
  }

  .checkbox span.checkboxText {
    display: inline-block;
    max-width: 9.75rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .checkbox span.checkboxText.checkboxIcon {
    max-width: calc(100% - 2.25rem);
  }

  /* On mouse-over, add a grey background color */
  .checkbox:hover input ~ .checkmark {
    background-color: #393f4f;
  }

  /* When the checkbox is checked, add a blue background */
  .checkbox input:checked ~ .checkmark {
    background-color: #191C24;
  }

  .checkbox input:checked:hover {
    background-color: #393f4f;
  }

  /* Create the checkmark/indicator (hidden when not checked) */
  .checkmark:after {
    content: "";
    position: absolute;
    display: none;
  }
  
  /* Show the checkmark when checked */
  .checkbox input:checked ~ .checkmark:after {
    display: block;
  }
  
  /* Style the checkmark/indicator */
  .checkbox .checkmark:after {
    left: 0.6rem;
    top: 0.15rem;
    width: 0.25rem;
    height: 0.7rem;
    border: solid var(--hl);
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }

.checkbox span.fi {
    margin: 0 .2rem;
}

.checkbox.disabled {
    opacity: .4;
}

.field .ui.dropdown {
    display: flex;
    margin: 0.25rem 0.75rem 0.25rem 0;
    padding: 0.2rem 0.3rem;
    height: 0.9rem;
    width: calc(100% - 1.35rem);
    border: 1px solid var(--dropbg);
    font-size: .9em;
}

.field .ui.dropdown.active.visible {
    background-color: var(--hov);
}

.field .ui.dropdown .menu {
    left: 0;
    width: 100%;
    top: calc(100% + 0.05rem);
}

/* FIELDS END */

/* SVG START */
.st {
    fill: var(--text);
    font-size: .9em;
    cursor: default;
}

.tl {
    stroke:#fff;
    stroke-width:1;
}

.vc {
    fill: var(--text);
    font-size: 2.5em;
}

.om {
    fill: var(--text);
    font-size: 2.5em;
}

.t20 {
    stroke:#66ff33;
    stroke-width:8;
}

.t21 {
    stroke:var(--yellow);stroke-width:12;
}

.t22 {
    stroke:var(--blue);stroke-width:16;
}

.t23 {
    stroke:#ff0000;stroke-width:20;
}

.t24 {
    stroke:#a5a5a5;stroke-width:4;
}

.arrow {
    fill: var(--text);
}

.st.lp:hover, .st.dn:hover {
    fill: var(--hl);
}

#ls1:hover~#als1 {
    fill: var(--hl);
}
#ls1:hover~#tvu1 {
    fill: var(--hl);
}
#ls2:hover~#als2 {
    fill: var(--hl);
}
#ls2:hover~#tvu2 {
    fill: var(--hl);
}
#ls3:hover~#als3 {
    fill: var(--hl);
}
#ls3:hover~#tvu3 {
    fill: var(--hl);
}
#ls4:hover~#als4 {
    fill: var(--hl);
}
#ls5:hover~#als5 {
    fill: var(--hl);
}
#ls6:hover~#als6 {
    fill: var(--hl);
}
#ls7:hover~#als7 {
    fill: var(--hl);
}
#ls8:hover~#als8 {
    fill: var(--hl);
}
#ls9:hover~#als9 {
    fill: var(--hl);
}
#ls10:hover~#als10 {
    fill: var(--hl);
}

.ln {
    stroke:var(--bg);
    stroke-width:2;
}

.sd {
    height: 37px;
    fill:#535353;
}

.tvu {
    height: 37px;
    fill:transparent;
}

.t0 {
    height: 9px;
    fill:#66ff33;
}

.t1 {
    height: 13px;
    fill:var(--yellow);
}

.t2 {
    height: 17px;
    fill:var(--blue);
}

.t3 {
    height: 21px;
    fill:#ff0000;
}

.t4 {
    height: 4px;
    fill:#a5a5a5;
}

.break svg {
    border-bottom: .25rem solid #66ff33;
}

.available svg {
    border-bottom: .25rem solid var(--yellow);
}

.work svg {
    border-bottom: .25rem solid var(--blue);
}

.driving svg {
    border-bottom: .25rem solid #ff0000;
}

.unknown svg {
    border-bottom: .25rem solid #a5a5a5;
}

.ct0 {
    height: 33px;
    fill:#66ff33;
}

.ct1 {
    height: 33px;
    fill:var(--yellow);
}

.ct2 {
    height: 34px;
    fill:var(--blue);
}

.ct3 {
    height: 35px;
    fill:#ff0000;
}

.ct4 {
    height: 33px;
    fill:#a5a5a5;
}

.st0 {
    height: 15px;
    fill:#66ff33;
}

.st1 {
    height: 15px;
    fill:var(--yellow);
}

.st2 {
    height: 15px;
    fill:var(--blue);
}

.st3 {
    height: 15px;
    fill:#ff0000;
}

.st4 {
    height: 15px;
    fill:#a5a5a5;
}

.tl-date-map {
    width: 5rem;
    padding-top: 1.5rem;
    float: left;
    font-size: .8rem;
}
/* SVG END */

/* LOGIN */
#modules {
    max-width: 27rem;
}

#modules h1 {
    margin: 2rem 0 3rem 0.7rem;
}

.module-info {
    padding-left: .5rem;
    border-left: 0.2rem solid var(--hl);
}

.module-info ul {
    padding-left: 1rem;
    line-height: 1.5em;
    color: var(--text);
}

.module-description {
    margin-bottom: 3rem;
    padding-left: 0.7rem;
}

.module-description p {
    margin-bottom: 0.5rem;
    line-height: 1.1em;
    color: var(--text);
}

#login {
    margin: auto;
    width: 100%;
    max-width: 14rem;
    padding: 1rem 2rem;
    background: var(--sel);
    border-radius: 5px;
}

#login h2 {
    margin-bottom: 1rem;
    text-align: center;
    background: none;
    border: none;
}

#login input {
    margin-bottom: 0.75rem;
    height: 1.2rem;
    width: calc(100% - .6rem);
    color: var(--text-dark);
    background: var(--text);
}

#login-form {
    position: absolute;
    width: 18rem;
    height: 14rem;
    margin-top: 14rem;
    margin-left: calc((25% - 18rem)/2);
    z-index: 101;
}

#login-form a {
    padding: 0.375rem 2.125rem;
    line-height: 2.9em;
}

#login-page-banner {
    position: absolute; 
    bottom: calc((50vh - 12rem) / 2);
    left: 1rem;
    width: calc(100vw - 2rem);
    z-index: 100
}

.button {
    display: inline-block;
    padding: 0.125rem;
    text-align: center;
    font-weight: 400;
    cursor: pointer;
    border: none;
}

.button-primary {
    margin: 0 0 0 1rem;
    width: 6rem;
    font-size: .9em;
    line-height: 2em;
    letter-spacing: 1px;
    word-spacing: 2px;
    color: var(--text);
    background: var(--tool);
    border: none;
}

.button-primary.wide {
    width: 9rem;
}

.button-primary.wider {
    width: 8rem;
}

.button-primary.midwide {
    width: 10.5rem;
}

.button-primary.xtrawide {
    width: 15rem;
}

.button-primary:hover {
    background: var(--bhov);
}

#password-change {
    margin: 2rem auto;
    width: 15rem;
}

#password-change-text {
    margin: 10rem auto 0 auto;
    width: 36rem;
}

#password-change-text p {
    margin: 1rem 0;
    width: 100%;
    text-align: center;
}

#password-change-text h3 {
    text-align: center;
}

#password-change .button-primary {
    margin: 0;
}

#password-change [type=password] {
    margin: .25rem 0;
    width: calc(100% - .6rem);
}

/* ul */
ul {
    display: block;
    margin: 0;
    padding: 0;
    margin-block-start: 0;
    margin-block-end: 2em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 0;
    list-style-type: disc;
    color: var(--text);
}

ul li {
    display: list-item;
    margin: 0 0 1rem 0;
    padding: 0;
    text-align: -webkit-match-parent;
    list-style: none;
}

/* dl */
dl {
    display: inline-block;
    margin: 0 0 1rem 0;
    height: auto;
    width: 100%;
    color: var(--text);
}

dt, dd {
    display: block;
    flex-wrap: nowrap;
    align-content: space-between;
    justify-content: flex-start;
    align-items: center;
    gap: 0.25rem;
    float: left;
    margin: 0;
    padding: 0.25rem 0.25rem 0.25rem 0.5rem;
    height: 1rem;
    width: calc(50% - 1rem);
    font-size: .9em;
    line-height: 1.25em;
    border-bottom: .05rem solid var(--border-dark);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

dd {
    float: right;
    min-width: calc(50% - .5rem);
}

dt.no-border, dd.no-border {
    border: none;
}

dl.no-border dt, dl.no-border dd {
    border: none;
}

dl.no-border {
    border-bottom: .05rem solid var(--border-dark) !important;
}

dd .svg-inline--fa {
    padding: 0;
    width: 1.125rem;
    height: 1.125rem;
    vertical-align: text-bottom;
}

dd a {
    padding-left: 0;
}


dl#official-form-data dt{
    width: calc(62% - 1rem);
}

dl#official-form-data dd{
    width: calc(38% - 1rem);
    min-width: calc(38% - .5rem);
}


dl.violation-profile p {
    margin-left:.5rem;
}

.popup .working-time-condition {
    background: var(--dbox);
    padding-left: 2%;
    padding-bottom: 0.25rem;
}

.popup .working-time-condition label.title {
    margin: 0;
    padding: 0.75rem 0 0.35rem 0;
}

.popup .working-time-condition [type=text] {
    margin: 0.25rem 0.75rem 0 0;
}

.popup .high.working-time-condition {
    padding: 0 !important;
}

#work-and-social dl dt, #work-and-social dl dd {
    height: 2rem;
}

#work-and-social dl dt {
    width: calc(65% - 1rem);
    line-height: 2rem;
}

#work-and-social dl dd {
    width: calc(35% - 0.5rem);
    min-width: calc(35% - 0.5rem);
}

#work-and-social a {
    margin: 0 !important;
}

#overlay {
    display: none;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: var(--tool);
    width: 100%;
    height: 100%;
    opacity: 0.8;
    z-index: 100;
  }
  .popup {
    display: none;
    position: absolute;
    top: 1rem;
    left: calc((100vw - 35rem)/2);
    height: auto;
    width: 35rem;
    background: var(--bg);
    z-index: 200;
  }

  .popup.wide {
    width: 48rem;
    left: calc((100vw - 48rem)/2);
  }

  .popup.double, .popup.wider {
    width: 72rem;
    left: calc((100vw - 72rem)/2);
  }

  .popup.map {
    width: calc((100vw - 10rem));
    left: 5rem;
  }

  .popup.triple {
    width: 114rem;
    left: calc((100vw - 114rem)/2);
  }

  .popup-close {
    float: right;
    padding: .5rem .5rem 0 .5rem;
    color: var(--text);
    cursor: pointer;
  }

  .popup-content {
    padding: 1.25rem;
    min-height: 20rem;
  }

  .popup-content .grid.scroll {
    overflow-y: scroll;
    max-height: calc(100vh - 5rem);
  }

  .popup div.grid {
    margin: 0;
  }

  .popup .grid .column.hidden {
    display: none;
  }

  .popup-content h3 {
    background: var(--dbox);
    padding: 0.25rem;
    width: calc(100% - .5rem);
  }

  .popup-content textarea {
    max-width: 100%;
  }
  .popup-content p .button {
    margin: 1rem 0 0;
    padding-bottom: 0;
  }

  .popup-content p .button svg{
    padding-top: .125rem;
    height: 1rem;
  }

.popup .button-primary {
    margin: 0 1rem 1rem;
}

#message-popup, #alert-popup, #second-layer-message-popup {
    top: calc((100vh - 12rem)/2);
}

#second-layer-message-popup {
    background: var(--dropbg);
}

#message-popup .popup-content, #alert-popup .popup-content, #second-layer-message-popup .popup-content {
    padding: 1rem 1rem 2rem 1rem;
    min-height: 8rem;
}

#message-popup p, #alert-popup p, #second-layer-message-popup p {
    margin: 0 1rem;
    padding: 1rem 0 4rem 0;
    vertical-align: text-bottom;
    font-size: 1.1em;
}

#message-popup p span {
    float:none;
}

div.upload {
    display:inline-block;
    position:relative;
    height: auto;
    min-height: 11rem;
    width: 100%;
    color: var(--text);
}

div.upload input[type="file"] {
    position:absolute;
    display: inline-block;
    left:0;
    width: 12rem;
    height: 11rem;
    opacity: 0;
    cursor:pointer;
    z-index: 1000;
}

div.upload svg {
    width: 12rem;
    padding: 1.5rem 0 3.5rem 0;
    background: var(--dropbg);
    height: 6rem;
    color: var(--blue);
    border: 0.05rem dashed var(--blue);
}

div.upload p {
    position: absolute;
    top: 9rem;
    left: 0;
    width: 12rem;
    text-align: center;
}

div.upload span.file-names {
    width: calc(100% - 14rem);
    float: right;
    background: var(--dropbg);
    left: 13rem;
    padding: 0.5rem;
    height: 10.2rem;
    font-size: .9em;
    overflow-x: hidden;
    text-overflow: ellipsis;
}

div.upload #choose-files {
    display: none;
}

div#upload-zip-files {
    margin: 0 auto;
    width: 40rem;
}

/* settings slider */
#temp-settings {
    position: absolute;
    right: 0;
    top: 3.125rem;
    height: calc(100% - 3.125rem);
    overflow-x: hidden; /* Needed for initial hidden state */
    z-index: 10;
}

#temp-settings > div {
    height: 100%;
    float: left;
}

#temp-settings-content {
    width: 30rem;
    margin-right: -30rem;
    background-color: var(--dropbg);
}

#temp-settings-content > p {
    padding: 10px;
}

#temp-settings-handle svg {
    padding: 0.8rem 1rem 0 3rem;
}

#temp-settings label.checkbox {
    background: var(--dropbg);
}

#temp-settings h3 {
    margin-top: 1rem;
}

/* output */
.report-settings label {
    display: block;
    margin: 0.25rem 0;
    padding: .2rem .3rem .4rem .3rem;
    width: calc(100% - .75rem);
    font-size: 1em;
    border-bottom: 0.05rem solid var(--border-dark);
}

#attestations label.checkbox, .report-units label.checkbox {
    margin-left: .5rem;
    text-overflow: ellipsis;
    overflow-x: hidden;
    overflow-y: hidden;
}

#generate-attestations-report .report-settings label.title {
    margin: 0;
    padding: .35rem .3rem 0 .3rem;
    border: none;
}

#generate-attestations-report .report-settings label.checkbox {
    margin: .05rem 0;
}

#generate-attestations-report input {
    width: calc(100% - .75rem);
}

#generate-attestations-report .report-settings .ui.dropdown {
    margin: .25rem 0;
}

#generated-attestations-reports, #generated-drivers-reports,
#generated-vehicles-reports, #generated-fleet-reports, #generated-official-forms-reports {
    max-height: calc(100vh - 21.75rem);
    overflow-y: scroll;
    overflow-x: hidden;
}

#generated-attestations-reports a, #generated-drivers-reports a,
#generated-vehicles-reports a, #generated-fleet-reports a, #generated-official-forms-reports a
{
    padding: 0;
}

#generated-drivers-reports label.checkbox, #generated-vehicles-reports label.checkbox, #generated-fleet-reports label.checkbox{
    margin: 0.25rem 0.25rem 0.25rem 0;
    width: 100%;
}

#generated-vehicles-reports span.checkboxText {
    max-width: calc(100% - 2rem);
}

#generated-fleet-reports span.checkboxText {
    max-width: calc(100% - 1.25rem);
}

.report-settings [type=text]
{
    width: calc(100% - .75rem);
}

.report-settings label input {
    margin-top: .1rem;
}

.report-settings .ui.dropdown, #cal-drivers, #cal-vehicles {
    margin: .25rem 0 1rem 0;
}

.report-settings .ui.dropdown {
    border: 0.005rem solid var(--border-dark);
}

.report-settings .ui.dropdown .svg-inline--fa {
    margin-right: 0.25rem;
}

#driver .report-settings .litepicker .container__days>div, .litepicker .container__days>a {
    width: 38px;
}

#driver .report-settings .show-week-numbers {
    --litepicker-month-width: 305px;
}

input[type='radio']:after {
    width: .7rem;
    height: .7rem;
    top: -1px;
    left: -1px;
    border-radius: .5rem;
    position: relative;
    background-color: var(--tool);
    content: '';
    display: inline-block;
    visibility: visible;
    border: 2px solid var(--bg);
}

input[type='radio']:checked:after {
    width: .7rem;
    height: .7rem;
    top: -1px;
    left: -1px;
    border-radius: .5rem;
    position: relative;
    background-color: var(--hl);
    content: '';
    display: inline-block;
    visibility: visible;
    border: 2px solid var(--bg);
}

p.report-group {
    margin-left: .25rem;
    font-size: .7rem;
}

.check-all.button-primary
{
    width: calc(100% - .6rem);
    margin: 0 0 1rem 0;
}

#generate-driver-report .button-primary
{
    position: relative;
    top: 15rem;
    width: calc(100% - .6rem);
    margin-bottom: -1rem;
}

.report-units {
    display: flex;
    flex-direction: column;
    margin: 0 0 0 3rem;
    width: 15.625rem;
}

.report-units svg {
    margin-right: .25rem;
    height: 1rem;
    width: .75rem;
    vertical-align: top;
}

.report-units div.scroll {
    max-height: calc(100vh - 10rem);
    overflow-x: hidden;
    overflow-y: scroll;
}

.report-units .hidden {
    display: none;
}

label.hidden {
    display: none;
}

input[name="creation_date"] {
    margin-bottom: 1.5rem;
}

#attestations table 
{
    width: 100%;
}

.driver-box {
    margin-bottom: .25rem;
    padding: 0.25rem;
    width: 100%;
    max-width: 17rem;
    background: var(--dbox);
    overflow-x: hidden;
}

.driver-box label.title {
    max-width: 17rem;
    overflow-x: hidden;
    text-overflow: ellipsis;
    display: block;
}


.driver-box label.checkbox {
    margin-left: .5rem;
}

/* digital clock */

#digital-clock {
    display: flex;
    flex-direction: row;
    margin-bottom: 1rem;
    width:100%;
}
#time{
    width: 12rem;
    font-family: "Roboto", 'sans-serif';
    font-size:3em;
}

#date {
    padding-top: 1.25rem;
    width: auto;
    letter-spacing:3px;
    font-size:1.5em;
    font-family: "Roboto",sans-serif;
    color:var(--text);
}

/* reports start */
.reports-wrapper {
    display: flex;
    flex-direction: row;
    width: 100%;
}

.reports-wrapper form:not(#driver-reports-tab form):not(#vehicle-reports-tab form) {
    display: flex;
    flex-direction: row;
}

.reports-wrapper .report-settings {
    display: flex;
    flex-direction: column;
    width: 20.2rem;
}

#fleet .reports-wrapper .report-settings {
    width: 41rem;
}

.reports-wrapper #report-type, .reports-wrapper #advanced-settings{
    margin-bottom: 3rem;
}

.reports-wrapper .report-buttons {
    display: flex;
    flex-direction: column;
    margin: 0 2.5rem;
    min-width: 14rem;
    max-width: 17rem;
}

.reports-wrapper .report-buttons svg {
    width: 1rem;
    padding: 0 0.5rem 0 0;
    vertical-align: middle;
}

#generated-drivers-reports {
    margin-bottom: 1rem;
    max-height: calc(100vh - 24rem);
}

#generated-drivers-reports .svg-inline--fa, #generated-vehicles-reports .svg-inline--fa, #generated-fleet-reports .svg-inline--fa {
    padding: 0 .5rem 0 1.5rem;
    width: 1.25rem;
}

#generated-drivers-reports .svg-inline--fa.fa-eye, #generated-vehicles-reports .svg-inline--fa.fa-eye, #generated-fleet-reports .svg-inline--fa.fa-eye {
    cursor: pointer;
}

#generated-drivers-reports table, #generated-vehicle-reports table, #generated-fleet-reports table {
    width: 100%;
}

#generated-drivers-reports table td:first-child,
#generated-vehicles-reports table td:first-child {
    max-width: 13rem;
}

#generated-fleet-reports table td:first-child {
    max-width: 9rem;
}

a.green svg {
    color: var(--green);
}

.preview-wrapper {
    position: absolute;
    left: 77rem;
    -moz-transform: scale(0.58);
    -moz-transform-origin: 0 0;
    transform: scale(0.58);
    -o-transform: scale(0.58);
    transform-origin: 0 0;
    -o-transform-origin: 0 0;
    -webkit-transform: scale(0.58);
    -webkit-transform-origin: 0 0;
}

@media only screen and (min-height: 1000px) and (max-height: 1300px) {
    .preview-wrapper {
        transform: scale(0.63);
        -moz-transform: scale(0.63);
        transform-origin: 0 0;
        -moz-transform-origin: 0 0;
        -o-transform: scale(0.63);
        -o-transform-origin: 0 0;
        -webkit-transform: scale(0.63);
        -webkit-transform-origin: 0 0;
    }
}

@media only screen and (min-height: 1300px) {
    .preview-wrapper {
        transform: scale(0.82);
        -moz-transform: scale(0.82);
        transform-origin: 0 0;
        -moz-transform-origin: 0 0;
        -o-transform: scale(0.82);
        -o-transform-origin: 0 0;
        -webkit-transform: scale(0.82);
        -webkit-transform-origin: 0 0;
    }

    div.shift-graph {
        height: calc(100vh - 30rem);
    }
}

.preview-wrapper.active {
    background: white;
}

.preview
{
    height: 1425px;
    width: 1010px;
    border: 0.05rem solid var(--border-dark);
}

.button-primary.report {
    width: 100%;
    margin: 0 0 1rem 0;
}

.report-actions {
    display: none;
    margin-top: .5rem;
}

.report-actions.visible {
    display: flex;
    flex-direction: column;
}
/* reports end */

/* dash cal */
#dashboard div.grid {
    margin-bottom: 0;
}

#dashboard.grid .dashboard-left.column:not(:last-child) {
    padding: 0;
    height: calc(100vh - 1rem);
}

#dashboard.grid .dashboard-right.column {
    padding: 0;
    height: calc(100vh - 1rem);
}

#dashboard.grid .column {
   padding-right: 1rem;
}

#dashboard div.grid .column {
    display: flex;
    flex-direction: column;
}

#dashboard h3 {
    margin: 0;
    padding: .125rem 0;
    text-align: center;
}

#dashboard h4 {
    padding-top: 0.75rem;
    font-size: .85em;
    font-weight: 400;
}

#dashboard-banner {
    height: 5.5rem;
    width: calc(100% - 3rem);
    padding: 0.5rem 1rem 0 1rem;
    background: var(--dbox);
    z-index: 1;
    font-size: .9em;
    line-height: 1.2em;
}

#dashboard-banner h3 {
    margin-bottom: 0.5rem;
    border-bottom: 0.005rem solid var(--border-dark);
    font-size: 1.2em;
    text-align: left;
}

#dashboard-banner span.holiday-date {
    display: inline-block;
    margin-bottom: 0.5rem;
    border-bottom: 0.125rem solid var(--red);
}

#dashboard-banner .slideshow {
    padding: 0 1rem;
    height: 4.5rem;
    width: calc(100% - 2rem);
    color: var(--text);
}

#dashboard-banner .slideshow .slide {
    width: calc(100% - 2rem);
}

#dashboard-calendar {
    height: calc(100% - 7rem);
    width: calc(100% - 1rem);
    padding: 1rem;
    background: var(--dbox);
    z-index: 1;
}

#dashboard #violations-graph {
    margin-right: 1rem;
    padding: 1rem;
    height: calc(33.3% - 3rem);
    background: var(--dbox);
}

#dashboard #violations-graph p {
    font-size: .85em;
    border-bottom: .05rem solid var(--border-dark);
}

.conspicuousness {
    margin-bottom: 1rem;
    padding: 1rem;
    width: calc(100% - 2rem);
    background: var(--dbox);
}

.conspicuousness h3 {
    text-align: left;
    border: none;
}

.conspicuousness p {
    font-size: .8em;
    line-height: .9em;
    letter-spacing: 0;
    color: var(--text-mid);
}
.conspicuousness a {
    padding: 0;
    font-size: .85em;
    line-height: 3em;
    cursor: default;
}
.conspicuousness a.red {
    padding-bottom: 0.15rem;
    line-height: 2.75em;
    color: var(--text);
    border-bottom: .125rem solid var(--red);
    cursor: pointer;
}
.conspicuousness a.blue {
    padding-bottom: 0.15rem;
    line-height: 2.75em;
    color: var(--text);
    border-bottom: .125rem solid var(--blue);
    cursor: pointer;
}
#downloads div.chart-wrapper
{
    width: 33.3%;
    height: 100%;
}

#downloads div.chart-wrapper-single
{
    width: 100%;
    height: 100%;
}

#downloads.single, #legend.single {
    margin: 0;
}

#chart, #chart2, #chart3, #chart4 {
    height: calc(100% - 1.5rem);
}
.conspicuousness .row {
    display: flex;
    flex-direction: row;
    padding: .5rem 0;
    height: 2.13rem;
    border-bottom: .05rem solid var(--border-dark);
}

.conspicuousness .svg-inline--fa {
    padding: .25rem 0.35rem;
    height: 1.75rem;
    color: var(--yellow);
}

.conspicuousness .description {
    width: 100%;
}

.conspicuousness .button-primary {
    margin: .5rem 0 0 0.5rem;
    width: 4rem;
    font-size: .8em;
    line-height: 1.8em;
    color: var(--text);
}

#violations-ratio, #downloads {
    margin: 1rem 1rem 0 0;
    padding: .5rem;
    height: calc(33.3% - 1.7rem);
    background: var(--dbox);
}

#downloads {
    height: calc(33.3% - 4.7rem);
    overflow: hidden;
    display: flex;
    flex-direction: row;
}

#legend {
    margin: 0 1rem 0 0;
    padding: .5rem calc(50% - 7.8rem);
    height: 1.45rem;
    overflow: hidden;
    display: flex;
    flex-direction: row;
    gap: 2rem;
    background: var(--dbox);
}

#legend p {
    height: 1rem;
    font-size: .85em;
    line-height: .85em;
}

#legend p.not-due {
    border-bottom: 0.25rem solid var(--green);
}
#legend p.due-soon {
    border-bottom: 0.25rem solid var(--yellow);
}
#legend p.overdue {
    border-bottom: 0.25rem solid var(--red);
}

#downloads div {
    margin: .25rem 0;
}

#downloads h4
{
    margin: 0;
    text-align: center;
    line-height: 0.5rem;
}

#downloads h4 svg
{
    color: var(--yellow);
}

#dashboard-info-popup .section {
    display: none;
    overflow: hidden;
    overflow-y: scroll;
    max-height: calc(100vh - 10rem);
}

#dashboard-info-popup .section.visible {
    display: block;
}

#dashboard button.red {
    border-bottom: .1rem solid var(--red);
    border-right: .1rem solid var(--red);
}

#dashboard button.blue {
    border-bottom: .1rem solid var(--blue);
    border-right: .1rem solid var(--blue);
}

#dashboard button:disabled {
    background: var(--bhov);
}

/* dash cal end */

/* assign popup */
#assign-driver-cards-vehicles-popup dt, #assign-driver-cards-vehicles-popup dd {
    height: 1.5rem;
    line-height: 2em;
}

#assign-driver-cards-vehicles-popup table thead {
    background:none;
}

#assign-driver-cards-vehicles-popup input {
    margin: 0;
    width: calc(100% - .7rem);
}

#assign-driver-cards-vehicles-popup .ui.dropdown {
    border: .005rem solid var(--yellow);
}

#assign-driver-cards-vehicles-popup .ui.dropdown .svg-inline--fa {
    padding: 0 .25rem;
}

dd.dropdown {
    overflow: visible;
}

#dashboard-info-popup .accordion {
    overflow-y: scroll;
    max-height: calc(calc(100vh - 11rem)/2);
}

#new-driver-cards .table th:nth-child(2), #new-driver-cards .table td:nth-child(2),
#refused-driver-cards .table th:nth-child(2), #refused-driver-cards .table td:nth-child(2){
   width: 22rem;
}

#assign-driver-cards-vehicles-popup #new-driver-cards-vehicles {
    max-height: calc(100vh - 4rem);
    overflow-y: scroll;
}
#assign-driver-cards-vehicles-popup .table{
width: calc(100% - 1rem);
margin: .5rem .5rem 2rem .5rem ;
}
#assign-driver-cards-vehicles-popup .table th, #assign-driver-cards-vehicles-popup .table td {
    width: 11rem;
    color: var(--text);
}

#assign-driver-cards-vehicles-popup .table th:first-child, #assign-driver-cards-vehicles-popup .table td:first-child {
    width: 2rem;
}

#assign-driver-cards-vehicles-popup label.checkbox {
    background: none;
    border: none
}

#new-driver-cards-wrapper, #refused-driver-cards-wrapper,
#new-vehicles-wrapper, #refused-vehicles-wrapper {
    background: var(--menubg);
}

div.select-company {
    width: 25rem;
}

:focus-visible {
    outline: none;
}

/* switch start */
.switch {
    position: relative;
    display: block;
    margin-top: .5rem;
    width: 30px;
    height: 18px;
  }

  .switch-wrapper.short .switch {
    margin: 0;
    height: 14px;
  }

  .switch-wrapper {
    display: flex;
    flex-direction: row;
    gap: .25rem;
}

.switch-wrapper .title {
    height: 2rem;
    line-height: 2.1rem;
}

.switch-wrapper.short .title {
    height: .9rem;
    line-height: .9rem;
    font-size: .8em;
}

  .switch input {
    opacity: 0;
    width: 0;
    height: 0;
  }

  .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--border-dark);
    -webkit-transition: .4s;
    transition: .4s;
  }

  .slider:before {
    position: absolute;
    content: "";
    height: 12px;
    width: 12px;
    left: 3px;
    bottom: 3px;
    background-color: var(--text);
    -webkit-transition: .4s;
    transition: .4s;
  }

  .switch-wrapper.short .slider:before {
    height: 8px;
  }

  input:checked + .slider:before {
    background-color: var(--hl);
  }

  input:checked + .slider:before {
    -webkit-transform: translateX(12px);
    -ms-transform: translateX(12px);
    transform: translateX(12px);
  }
  /* switch end */

  /* toggle start */
/* The switch - the box around the slider */
.toggle {
    position: relative;
    display: inline-block;
    margin: 0 .25rem;
    padding: 0.2rem 0.3rem;
    width: 4rem;
    height: .9rem;
    border: 0.05rem solid var(--dropbg);
    color: var(--text);
  }
  
  /* Hide default HTML checkbox */
  .toggle input {
    opacity: 0;
    width: 0;
    height: 0;
  }
  
  /* The slider */
  .toggle .check {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--menubg);
    -webkit-transition: .2s;
    transition: .2s;
  }

.toggle span {
    line-height: 1.2rem;
    padding-left: 1rem;
}

  .toggle input:checked + .check {
    border: 0.05rem solid var(--green);
  }
  /* toggle end */

  #user-administration-tab .button-primary, #groups-tab .button-primary,
  #locations-tab .button-primary, #work-profiles-tab .button-primary, #violation-profiles-tab .button-primary{
    margin: 1rem .8rem 1rem 0;
  }

  .work-profile-data span.right {
    width: 50%;
  }

  #administration-groups label.checkbox {
    width: 25rem;
  }

  #administration-groups label.checkbox .checkmark, #user-list label.checkbox .checkmark {
    float: right;
  }

#administration-groups label.checkbox .checkmark::after, #user-list label.checkbox .checkmark::after {
  float: right;
  right: 0.85rem;
  left: auto;
}

.buttons-group {
    display: flex;
    flex-direction: row;
}

.permissions label.checkbox {
    margin: 0;
    border: none;
    background: none;
  }

.table.permissions th, .table.permissions td {
    width: 11.25rem;
    padding: 0.125rem 0.175rem;
    text-align: left;
    word-spacing: 1px;
    letter-spacing: 0;
  }

.table.permissions tr {
    border: none;
  }

.dot {
    position: absolute;
    height: 0.313rem;
    width: 0.313rem;
    top: 0.9rem;
    left: 2.2rem;
    background-color: var(--red);
    border-radius: 50%;
    display: inline-block;
}

.status-dot {
    margin-left: 1rem;
    height: 0.5rem;
    width: 0.5rem;
    border-radius: 50%;
    display: inline-block;
}

.status-dot.red {
    background-color: var(--red);
}

.status-dot.green {
    background-color: var(--green);
}

.status-dot.yellow {
    background-color: var(--yellow);
}

.dot.yellow, .main-menu li .tag.yellow
{
    background-color: var(--yellow);
}

/* speed data */
#speed-data-wrapper
{
    display: flex;
    flex-direction: row;
    gap: 3rem;
}

#speed-data-wrapper form {
    width: 20.125rem;
}

#speed-data-wrapper input {
    margin: 1rem 0;
width: calc(100% - 0.675rem);
}

#speed-data-wrapper .litepicker {
    padding: 1rem 0;
    min-height: 14.5rem;
}

#speed-table thead {
    background: var(--dbox);
}

#speed-table tbody {
    display: block;
    height: 19.7rem;
    overflow-y: scroll;
    background: var(--dbox);
}

#speed-table.table {
    width: 18rem;
}

#speed-table.table td {
    width: 7.75rem;
    background: var(--dbox);
}

#speed-table.table th:last-child, #speed-table.table td:last-child {
    padding-left: .5rem;
}

#speed-data-chart {
    padding: 1rem 0.5rem;
    background: var(--dbox);
}

/* info */
#info {
    margin: 0 2rem 0 5rem;
    width: calc(100% - 7rem);
}
#info h3 {
    margin-top: .5rem;
}

#info h1 {
    margin-bottom: 5.35rem;
}

#info .column.four dl {
    width: 46.5rem;
}

#info .column.four {
    margin: 0 calc(100% - 46.5rem)/2;
}

#info .column.four h2 {
    width: 46rem;
    margin-top: 2rem;
}

#info-user {
    width: 100%;
    margin: 3.75rem calc((100% - 47rem)/2);
}

#info-user .table {
    width: auto;
}

/* loader */
#tab-loader{
    display: none;
    position: absolute;
    top: 3rem;
    right: 0;
    bottom: 0;
    padding-top: 5rem;
    width: calc(100% - 30.5rem);
    background: var(--bg);
    z-index: 100;
}

#tab-loader.revert {
    top: calc(100vh - 30rem);
}

.loader {
    margin: 0 auto;
    width: 3.5rem;
}

.loader .circle {
    width: 3rem;
    height: 3rem;
    border: .25rem solid #f3f3f3; /* Light grey */
    border-top: .25rem solid #3498db;
    border-radius: 50%;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

#tab-loader.active {
    display: flex;
}

/* tooltip */
.tippy-box[data-theme~='tg']{background-color:var(--hov);color:var(--ttip);letter-spacing:0;border-radius:5;border:1px solid var(--border)}.tippy-box[data-theme~='tg']::after{background-color:var(--hov)}.tippy-box[data-theme~='tg'][data-placement^='top']>.tippy-arrow::before{border-top-color:var(--ttip)}.tippy-box[data-theme~='tg'][data-placement^='bottom']>.tippy-arrow::before{border-bottom-color:var(--ttip)}

/* main menu */
.main-menu{position:absolute;display:flex;flex-direction:column;top:0;bottom:0;left:0;padding-top:4rem;height:100%;width:3rem;font-size:1.1em;background-color:var(--menubg);transition:width 206ms .3s ease;overflow-x:hidden;overflow-y:hidden;box-sizing:border-box;z-index:100}.main-menu ul,.main-menu li{display:inline-block;list-style:none;outline:0;margin:0;padding:0}.main-menu>ul{height:100%;width:100%;margin-top:5rem;overflow-y:auto;overflow-x:hidden}.main-menu li{margin:.625rem 0;width:15rem}.main-menu li:hover{background-color:var(--hov)}.main-menu li.active svg.svg-inline--fa{padding:0 .813rem 0 .563rem;border-left:.25rem solid var(--hl)}.main-menu li .tag{background-color:var(--red);color:var(--text);padding:.1rem .5em;border-radius:2em;margin-left:auto;margin-right:.75em}.main-menu li a{position:relative;display:flex;padding:.825rem 0;width:100%;align-items:center;vertical-align:middle;white-space:nowrap;color:var(--text);text-decoration:none}.main-menu .svg-inline--fa, .main-menu .language span{padding:0 .813rem;width:1.375rem;height:1.375rem;text-align:center;color:var(--text);z-index:9999}.main-menu .language span{height:1rem}.bottom-menu{position:absolute;display:block!important;bottom:2.5rem;width:100%}.main-menu .info{bottom:7rem}.main-menu .administration{bottom:11.5rem}.main-menu .language{bottom:16rem}input.hamburger{display:none}input.hamburger:checked ~ nav.main-menu{height:100vh}input.hamburger:checked ~ nav.main-menu{width:15rem}input.hamburger:checked ~ label>i{background-color:transparent;transform:rotate(90deg)}input.hamburger:checked ~ label>i:before{transform:translate(-50%,-50%) rotate(45deg)}input.hamburger:checked ~ label>i:after{transform:translate(-50%,-50%) rotate(-45deg)}input.hamburger:checked ~ label close{color:var(--text);width:100%}input.hamburger:checked ~ label open{color:var(--menubg);width:0}label.hamburger{position:fixed;display:block;height:1.4rem;top:1.5rem;left:.8rem;width:1.4rem;z-index:9999}label.hamburger:hover{cursor:pointer}label.hamburger text close,label.hamburger text open{text-transform:uppercase;text-align:center;position:absolute;transform:translateY(24px);text-align:center;overflow:hidden;transition:width .25s .35s,color .45s .35s;font-size:6px}label.hamburger text close{color:var(--text);right:0;width:0}label.hamburger text open{color:var(--text);width:100%}label.hamburger>i{position:absolute;width:100%;height:2px;top:50%;background-color:var(--text);pointer-events:auto;transition-duration:.35s;transition-delay:.35s}label.hamburger>i:before,label.hamburger>i:after{position:absolute;display:block;width:100%;height:2px;left:50%;background-color:var(--text);content:"";transition:transform .35s;transform-origin:50% 50%}label.hamburger>i:before{transform:translate(-50%,-7px)}label.hamburger>i:after{transform:translate(-50%,7px)}


/* accordion */
.accordion {
    overflow: hidden;
}

.accordion input {
    display: none;
}

.accordion-item {
    width: 100%;
    overflow: hidden;
}
.accordion-item-label {
    display: flex;
    justify-content: start;
    gap: 0.5rem;
    padding: 1em;
    cursor: pointer;
}

.accordion .fa-chevron-right {
    height: .9rem;
    width: .9rem;
}

.accordion-item-content {
    max-height: 0;
    padding: 0 1em;
}

.accordion-item-content h3 {
    margin: 0;
}

.accordion input:checked + .accordion-item-label svg.fa-circle-chevron-right,
.accordion input:checked + .accordion-item-label svg.fa-chevron-right {
   transform: rotate(90deg) !important;
   color: var(--hl);
}
.accordion input:checked ~ .accordion-item-content {
    max-height: 100%;
    padding: 1em;
}

.popup .accordion-item-label {
    display: block;
    margin-bottom: 1rem;
    font-size: 1em;
    line-height: 1.1em;
    background: var(--dbox);
}

.accordion-item-label span {
    padding: 0.1rem 0.5em;
    margin-left: auto;
    margin-right: 0.85em;
    background-color: var(--red);
    color: var(--text);
    border-radius: 2em;
}

.popup .accordion-item-label:hover {
    background: var(--dropbg);
}

.popup .accordion-item-label svg.fa-chevron-right {
    float: right;
}

.popup .accordion input:checked + .accordion-item-label {
   background: var(--sel);
}

#dashboard-info-popup h2 {
    margin: 1rem 0;
}

#dashboard-info-popup label .svg-inline--fa {
    margin-right: 0.25rem;
    height: 0.9rem;
    width: 1.1rem;
}

#dashboard-info-popup .accordion-item a {
    float: left;
    margin-right: 1rem;
    padding: 0.8rem 0.5rem;
    height: 100%;
    border-right: 1px solid var(--border);
    background: var(--dropbg);
}

#dashboard-info-popup .accordion-item a svg {
    height: 1.1rem;
    width: 1.1rem;
}

#dashboard-info-popup .accordion-item a:hover svg {
    color: var(--red);
}

#dashboard-info-popup ul li {
    padding: 0.25rem 0 0.25rem 0.5rem;
    border-bottom: 0.05rem solid var(--border-dark);
}

#dashboard-info-popup .active-list, #dashboard-info-popup .inactive-list {
    display: none;
}

#dashboard-info-popup .active-list.visible, #dashboard-info-popup .inactive-list.visible {
    display: block;
}

#driver-card-validity li:hover, #driving-license-validity li:hover, #birthdays li:hover,
#vehicle-lock li:hover, #tacho-calibration li:hover, #adr-certificate-validity li:hover,
#dqc-validity li:hover, #drivers-checks li:hover, #drivers-nfc li:hover, #drivers-no-nfc li:hover{
    background: var(--hov);
    cursor: pointer;
}

#access-denied {
    margin: 2rem 0 0 5rem;
}

#error-page {
    position: absolute;
    margin-top: 7rem;
    width: 50%;
    text-align: right;
    z-index: 6;
}
#error-page h1 {
    margin: 5.5rem 20rem 1.5rem 0;
}
#error-page a, #error-page p {
    margin: 1.5rem 20rem 1.5rem 0;
    font-size: 1.2em;
}

#error-page a {
background: #fff;
color: #000;
-webkit-box-shadow: 2px 1px 3px 0px rgba(66,66,66,0.88);
box-shadow: 2px 1px 3px 0px rgba(66,66,66,0.88);
border: 1px solid #666;
}

#app-users-tab a {
    display: block;
    margin-bottom: 4rem;
}

#app-users-form .table {
    margin-bottom: 1rem;
}

#app-users-form .table td {
    padding: 0rem 0.5rem;
}

#app-users-form .table th:first-child, #app-users-form .table td:first-child {
    width: 2rem;
}

#app-users-form .table td:first-child label, #create-app-keys-form .table td:first-child label{
    border: none;
    background: none;
}

#app-users-form .table th:nth-child(2), #app-users-form .table td:nth-child(2) {
    width: 3rem;
}

#app-users-form .table th:nth-child(3), #app-users-form .table td:nth-child(3),
#app-users-form .table th:nth-child(4), #app-users-form .table td:nth-child(4),
#app-users-form .table th:nth-child(5), #app-users-form .table td:nth-child(5),
#create-app-keys-form .table th:nth-child(3), #create-app-keys-form .table td:nth-child(3),
#create-app-keys-form .table th:nth-child(4), #create-app-keys-form .table td:nth-child(4),
#create-app-keys-form .table th:nth-child(5), #create-app-keys-form .table td:nth-child(5) {
    width: 10rem;
}

#app-users-form h3 {
    margin: 0 0 2rem 0;
    text-transform: none;
}

#app-users-tab h3 {
    margin: 0 0 2rem 0;
}

#create-app-keys-form h3 {
    margin: 0 0 1rem 0;
}

#create-app-keys-form .table {
    margin-bottom: 1rem;
}

#create-app-keys-form .table th:nth-child(5), #create-app-keys-form .table td:nth-child(5) {
    width: 32rem;
}

#app-keys-create-popup .popup-content .grid.scroll {
    max-height: calc(100vh - 7rem);
}

#app-keys-create-popup.popup .button-primary {
    margin: 1rem 1rem 1rem;
}

.wsel {
    width: 1000px;
    height: 200px;
}

.sel {
    width: 100px;
    height: 100px;
    padding: 10px;
    background-color: red;
}









.driver-tile {
    display: flex;
    flex-direction: row;
    height:40px;
    width: 15.75%;
    background: var(--dbox);
}

.driver-tile .w1, .head-tile .w1 {
    border-left:1px solid var(--border-dark);
    border-right:1px solid var(--border-dark);
    border-bottom:1px solid var(--border-dark);
    width:18%;
    line-height: 2rem;
    padding: 2%;
    font-size: .9em;
}

.driver-tile .w2, .head-tile .w2 {
    border-bottom:1px solid var(--border-dark);
    width:74%;
    line-height: 2rem;
    padding: 2%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .9em;
}

.driver-tile .w2 span {
    display: inline-block;
    margin-right: 0.25rem;
    width: 0.25rem;
    height: 1em;
}

#drivers-calendar .driver-tile p {
    height: 1.75rem;
    line-height: 1.75rem;
    color: var(--text-dark);
    text-align: center;
}

#drivers-calendar .driver-tile svg.driver-data {
    padding: 0.25rem 0;
}

#drivers-calendar, #drivers-mwl-overview {
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 9rem);
    width: 100%;
    overflow-y: scroll;
    background: var(--sel);
}

#drivers-calendar #calendar-head {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    background: var(--sel);
}

#calendar-head .calendar-row {
    border-bottom:1px solid var(--border);
}

#calendar-body .calendar-row:hover .driver-tile {
    background: var(--tool);
}

#calendar-body .calendar-row .driver-data {
    color: var(--dbox);
    cursor: pointer;
}

#calendar-body .calendar-row:hover .driver-data {
    color: var(--text);
}

#calendar-head .month-name {
    padding: 0 .25rem;
    line-height: 1.8em;
}

#calendar-head label {
    float: left;
    font-size: 1em;
}

#calendar-head #sort-tile {
    padding: 0;
}

#calendar-head #aza-sort {
    margin: 0 4rem 0 .5rem
}

#driver-names-wrap {
    width: 15.75%;
}

#drivers-calendar .calendar-row, #drivers-mwl-overview .mwl-row{
    display: flex;
    flex-direction: row;
    width:100%;
}

#drivers-calendar #calendar-body .calendar-row, #drivers-mwl-overview #calendar-body .mwl-row{
    display: none;
    width:100%;
}

#drivers-calendar #calendar-body .calendar-row.visible {
    display: flex;
    flex-direction: row;
}

.mwl-row .w3 {
    display: flex;
    flex-direction: column;
    border-right:1px solid var(--border-dark);
    border-bottom:1px solid var(--border-dark);
    width:9%;
    height: 39px;
    padding: 0;
    line-height: 2em;
    text-align: center;
    user-select: none; -o-user-select: none; -moz-user-select: none; -khtml-user-select: none; -webkit-user-select: none; -ms-user-select:none;
}


.calendar-row .w3 .odt {
    height: 33%;
}

.calendar-row .w30 {
    border-right:1px solid var(--border-dark);
    border-bottom:1px solid var(--border-dark);
    width:1374px;
    height: 29px;
    padding: 5px 0 5px 5px;
    cursor: pointer;
}

.calendar-row .w31 {
    border-right:1px solid var(--border-dark);
    border-bottom:1px solid var(--border-dark);
    width:1420px;
    height: 29px;
    padding: 5px 0 5px 5px;
    cursor: pointer;
}

.calendar-row .w3 {
    border-right:1px solid var(--border-dark);
    border-bottom:1px solid var(--border-dark);
    width:2.66%;
    height: 29px;
    padding: 5px 0;
    font-size: .7em;
    text-align: center;
    user-select: none; -o-user-select: none; -moz-user-select: none; -khtml-user-select: none; -webkit-user-select: none; -ms-user-select:none;
    cursor: pointer;
}

.calendar-row .w3 svg {
    float: right;
    height: 0.8rem;
    padding: 0;
}

#drivers-calendar #calendar-body.info .w3 {
    display: none !important;
}

.calendar-row .w3.divider, #calendar-head .month-name {
    border-left:1px solid var(--border);
}

.calendar-row.w30 .w3 {
    width:2.75%;
}

.calendar-row.w29 .w3 {
    width:2.85%;
}

.calendar-row.w28 .w3 {
    width:2.95%;
}

.calendar-row .w3.selected {
    color: var(--text-dark);
    background: var(--sel-light);
}

#drivers-calendar #calendar-head .we {
    color: var(--hl) !important;
}
.calendar-row .we {
    background: var(--hov-dark);
}

#calendar-head .calendar-row .w3 {
    height: 15px;
}

#calendar-head .calendar-row .w3.hover {
    background: var(--tool);
}

.head-tile {
    display: flex;
    height: 26px;
    background: var(--dbox);
}

#drivers-mwl-overview .head-tile {
    height: 100%;
}

#drivers-mwl-overview .head-tile .w1, #drivers-mwl-overview .head-tile .w2 {
    line-height: 2em;
}
.head-tile .w1, .head-tile .w2 {
    line-height: 1.5em;
}

.head-tile svg {
    height: 0.7rem;
    padding: 0;
}

.head-tile .right {
    text-align: right;
}

.tt1 {
    background: #7a9dab !important;
}

.tt2 {
    background: #7a9dab !important;
}

.tt3 {
    background: #1c7f9d !important;
}

.tt4, .tt5, .tt6 {
    background: #099f61c2 !important;
}

#overview-legend {
    height: 1.75rem;
    margin: 0 0 1rem 0;
}

#overview-legend .switch-wrapper {
    float: inline-start;
}

#overview-legend .switch-wrapper label.title {
    font-size: 1em;
}

#overview-legend p.vacation {
    float: right;
    border-bottom: .25rem solid #7a9dab;
}

#overview-legend p.sickness {
    float: right;
    margin: 0 2rem;
    border-bottom: .25rem solid #1c7f9d;
}

p#drivers-off {
    display: inline-flex;
    margin-right: 0.5rem;
    line-height: 1.75em;
    float: right;
    color: var(--yellow);
    word-spacing: 0px;
}

p#drivers-off svg {
    padding: 0 .5rem 0 0 ;
    color: var(--yellow);
}


/* calendar overview  */
#month-wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
    max-height: calc(100vh - 7.5rem);
    overflow-y: scroll;
}

.month-calendar {
    display: flex;
    flex-direction: column;
    flex: 1 0 30%;
    background: var(--hov);
    border-top: 1px solid var(--border-dark);
    border-left: 1px solid var(--border-dark);
}

.month-calendar .month-name {
    padding: 0.25rem 1rem;
    text-align: center;
    border-bottom: 1px solid var(--border);
    text-transform: uppercase;
}

.month-calendar .week-day-names, .month-calendar .calendar-row {
    display: flex;
    flex-direction: row;
}

.month-calendar .week-day-names .we, .month-calendar .calendar-row .we {
    color: var(--yellow) !important;
}

.month-calendar .calendar-row .we span {
    color: var(--text) !important;
}

.month-calendar .week-day-names {
    border-bottom: 1px solid var(--border);
}

.month-calendar .week-day-names .day-name, .month-calendar .calendar-row .calendar-day {
    height: 2rem;
    width: 14.2%;
    text-align: center;
    border-right: 1px solid var(--border-dark);
    border-bottom: 1px solid var(--border-dark);
    font-size: .7em;
}

.month-calendar .week-day-names .day-name {
    height: 1rem;
    line-height: 1.75em;
}

.month-calendar .calendar-row .calendar-day {
    height: 3.75rem;
}

.calendar-day .number, .calendar-day .day-info {
    height: 1.5rem;
}

.calendar-day .day-info span
{
    display: inline-block;
    margin: 0 5% .1rem 5%;
    width: 90%;
    line-height: 1.25em;
    cursor: default;
}

.calendar-day .day-info span.u {
    background: #7a9dab;
}

.calendar-day .day-info span.s {
    background: #1c7f9d;
}

#working-times-tab .search-section {
    float: left;
    margin: .25rem 0;
    padding: 0;
    background: none;
}

#working-times-tab .search-section #search-field {
    width: 11rem;
}

#working-times-tab .search-section #new-driver {
    margin: 0 2rem;
}

div.divider {
    border-top: 1px solid var(--border-dark);
    height: 0;
    margin: 1.5em 0 0 0;
}

#driver-data-zema-popup .popup-menu {
    display: flex;
    flex-direction: row;
    gap: 1.5rem;
    width: 100%;
}


p.whatsapp-head {
    margin: 1rem 0 1.5rem 0;
}

p.whatsapp-head svg {
    margin-right: 0.5rem;
    padding: 0.1rem;
    vertical-align: bottom;
    color: #53cc60;
}

div#message-samples, div#email-samples {
    display: flex;
    flex-direction: row;
    gap: 1.45rem;
    flex-wrap: wrap;
}

div.message-icon {
    margin-top: 1.5rem;
    padding: 1rem 0.5rem;
    height: 4rem;
    width: 6rem;
    background: var(--menubg);
    color: var(--text);
    text-align: center;
    border-radius: 0.5rem;
}

div.message-icon:hover {
    background: var(--hov);
    cursor: pointer;
}

div.message-icon svg {
    height: 3rem;
    width: 4.5rem;
}

div#driver-send-message, div#driver-send-email {
    margin:2rem 0
}


















.slideshow {
    position: relative;
    width: 100%;
    height: 220px;
  }
  
  .slideshow .slide {
    position: absolute;
    width: 100%;
    height: 100%;
    transition: opacity 0.4s, visibility 0.4s;
    visibility: hidden;
    opacity: 0;
  }
  
  .slideshow .slide.is-active {
    visibility: visible;
    opacity: 1;
  }
  
  .slideshow .slide img {
    display: block;
    width: 730px;
    height: 220px;
    object-fit: cover;
    margin: 0 auto;
  }
  
  .slideshow .prev,
  .slideshow .next {
    cursor: pointer;
    user-select: none;
    position: absolute;
    font-size: 5em;
    color: #fff;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
  }
  
  .slideshow .prev {
    right: auto;
  }

  .preview-section .header, .attestation-of-activities  {
    max-width: 44rem;
  }

  .official-form-sheet {
    max-width: 45rem;
    max-height: 100%;
    overflow: hidden;
  }

  .table.reports {
    display: block;
    max-width: 57.5rem;
    max-height: calc(100vh - 20rem);
    overflow-x: hidden;
    overflow-y: scroll;
    font-size: .7em;
  }

  .table.reports.driver-violations {
    max-height: calc(100vh - 28rem);
  }

  .table.reports tr {
    height: 1rem;
  }

  .table.reports tr.odd{background-color:var(--hov)}
  .table.reports th,.table.reports td{display:table-cell;padding:0 2px;vertical-align:inherit;text-align:left;border-right:1px solid #ddd;width:41px}
  .table.reports th.ra,.table.reports td.ra{text-align:right}
  .table.reports th.la,.table.reports td.la{text-align:left}
  .table.reports tr.empty td{border:none}
  .table.reports.used-vehicles th:first-child{width:67px}
  .table.reports.used-vehicles td:first-child{padding-left:26px}
  .table.reports.used-vehicles th:nth-child(2),.table.reports.used-vehicles td:nth-child(2){width:100px}
  .table.reports.used-vehicles th:nth-child(3),.table.reports.used-vehicles td:nth-child(3){width:136px}
  .table.reports.used-vehicles th:nth-child(4),.table.reports.used-vehicles td:nth-child(4),
  .table.reports.used-vehicles th:nth-child(5),.table.reports.used-vehicles td:nth-child(5){width:156px}
  .table.reports.used-vehicles th:nth-child(6),.table.reports.used-vehicles td:nth-child(6),
  .table.reports.used-vehicles th:nth-child(7),.table.reports.used-vehicles td:nth-child(7){width:86px}
  .table.reports.used-vehicles th:last-child,.table.reports.used-vehicles td:last-child{width:75px}
  .table.reports.used-vehicles td span{background-color:#ffff00; color: var(--text-dark)}

  .table.reports tr.total{font-weight:600;background:#ccc}
  .table.reports tr.total td{color: var(--text-dark)}
  
  .table.reports.driver-shifts th:first-child,.table.reports.driver-shifts td:first-child{padding-left:8px;width:34px}
  .table.reports.driver-shifts th:nth-child(2),.table.reports.driver-shifts td:nth-child(2),
  .table.reports.driver-shifts th:nth-child(3),.table.reports.driver-shifts td:nth-child(3){width:140px}
  .table.reports.driver-shifts th:nth-child(4),.table.reports.driver-shifts td:nth-child(4),.table.reports.driver-shifts th:nth-child(5),
  .table.reports.driver-shifts td:nth-child(5),.table.reports.driver-shifts th:nth-child(6),.table.reports.driver-shifts td:nth-child(6),
  .table.reports.driver-shifts th:nth-child(8),.table.reports.driver-shifts td:nth-child(8){width:58px}
  .table.reports.driver-shifts th:nth-child(7),.table.reports.driver-shifts td:nth-child(7){width:98px}
  .table.reports.driver-shifts th:nth-child(9),.table.reports.driver-shifts td:nth-child(9){width:115px}
  .table.reports.driver-shifts th:last-child,.table.reports.driver-shifts td:last-child{width:85px}


  .table.reports.driver-violations th,.table.reports.driver-violations td{width:53px}
  .table.reports.driver-violations td{padding:20px 2px}
  .table.reports.driver-violations th:first-child,.table.reports.driver-violations td:first-child{padding-left:7px;width:26px}
  .table.reports.driver-violations th:nth-child(2),.table.reports.driver-violations td:nth-child(2){width:83px}
  .table.reports.driver-violations th:last-child,.table.reports.driver-violations td:last-child{padding:0 2px;width:455px;word-spacing: 0;text-wrap: wrap;}
  .table.reports.all-violations{margin-top:50px;width:300px;float:right}
  .table.reports.all-violations td{padding:0 2px}.table.reports.all-violations td:first-child{padding-left:8px;width:240px}
  .table.reports.all-violations td:last-child{width:43px}

  .table.reports.license-controls th,.table.reports.license-controls td{width:160px}
  .table.reports.license-controls th:first-child,.table.reports.license-controls td:first-child{padding-left:8px;width:35px}
  .table.reports.license-controls th:nth-child(4),.table.reports.license-controls td:nth-child(4){width:170px}
  .table.reports.license-controls th:nth-child(5),.table.reports.license-controls td:nth-child(5){width:80px}
  .table.reports.license-controls th:last-child,.table.reports.license-controls td:last-child{width:259px}

  .table.reports.missing-license-controls th,.table.reports.missing-license-controls td,
  .table.reports.drivers-with-nfc-tag th,.table.reports.drivers-with-nfc-tag td
  {width:130px}
  .table.reports.missing-license-controls th:first-child,.table.reports.missing-license-controls td:first-child,
  .table.reports.drivers-with-nfc-tag th:first-child,.table.reports.drivers-with-nfc-tag td:first-child
  {padding-left:8px;width:220px}

  .table.reports.drivers-without-nfc-tag th,.table.reports.drivers-without-nfc-tag td
  {width:190px}
  .table.reports.drivers-without-nfc-tag th:first-child,.table.reports.drivers-without-nfc-tag td:first-child
  {padding-left:8px;width:220px}


  .table.reports.last-dc-download th, .table.reports.last-dc-download td {width:45px}
  .table.reports.last-dc-download th:nth-child(2), .table.reports.last-dc-download td:nth-child(2),
  .table.reports.last-dc-download th:nth-child(4), .table.reports.last-dc-download td:nth-child(4) {width:130px}
  .table.reports.last-dc-download th:nth-child(3), .table.reports.last-dc-download td:nth-child(3) {width:300px}

  .table.reports.last-vehicle-download th, .table.reports.last-vehicle-download td {width:140px}
  .table.reports.last-vehicle-download th:first-child, .table.reports.last-vehicle-download td:first-child,
  .table.reports.last-vehicle-download th:nth-child(5), .table.reports.last-vehicle-download td:nth-child(5) {width:45px}

  .table.reports.unknown-times th,.table.reports.unknown-times td{width: 44rem;}

  .table.reports.unknown-vehicles th,.table.reports.unknown-vehicles td{width:195px}
  .table.reports.unknown-vehicles td:first-child{padding-left:20px;width:177px}
  .table.reports.unknown-vehicles th:nth-child(2),.table.reports.unknown-vehicles td:nth-child(2){width:495px}

  .table.reports.used-driver-cards th,.table.reports.used-driver-cards td{width:41px}
  .table.reports.used-driver-cards th:first-child{width:67px}
  .table.reports.used-driver-cards td:first-child{padding-left:26px}
  .table.reports.used-driver-cards th:nth-child(2),.table.reports.used-driver-cards td:nth-child(2){width:261px}
  .table.reports.used-driver-cards th:nth-child(3),.table.reports.used-driver-cards td:nth-child(3),
  .table.reports.used-driver-cards th:nth-child(4),.table.reports.used-driver-cards td:nth-child(4){width:146px}
  .table.reports.used-driver-cards th:nth-child(5),.table.reports.used-driver-cards td:nth-child(5){width:86px}
  .table.reports.used-driver-cards th:nth-child(6),.table.reports.used-driver-cards td:nth-child(6){width:86px}
  .table.reports.used-driver-cards th:last-child,.table.reports.used-driver-cards td:last-child{width:75px; white-space: break-spaces;}
  .table.reports.used-driver-cards td span{background-color:#ffff00; color: var(--text-dark)}

  .table.reports.unknown-drivers th, .table.reports.unknown-drivers td{width:165px};
  .table.reports.unknown-drivers th:first-child{width:330px}
  .table.reports.unknown-drivers td:first-child{padding-left:20px;width:312px}
  .table.reports.unknown-drivers th:nth-child(3), .table.reports.unknown-drivers td:nth-child(3){width:285px}
  .table.reports.unknown-drivers th:last-child, .table.reports.unknown-drivers td:last-child{width:100px}

  div#tacho-maintenance-data, div#fleet-ef-data, div#fleet-so-data, div#driver-shifts-violations-data {
    max-height: calc(100vh - 12rem);
    overflow-y: scroll;
  }

  .table.reports.tacho-maintenance {
    margin: .25rem 0 .5rem 0;
    overflow-y: hidden;
  }

  #fleet-ef-data .events-and-faults, #fleet-so-data .speeding-offences  {
    margin: .5rem 0 2rem 0;
    overflow-y: hidden;
  }

  .table.reports.tacho-data {
    margin: .25rem 0 1.5rem 0;
    overflow-y: hidden;
  }

  .table.reports.tacho-maintenance th, .table.reports.tacho-maintenance td,
  .table.reports.tacho-data th, .table.reports.tacho-data td{width:92px}
  .table.reports.tacho-maintenance th:nth-child(2), .table.reports.tacho-maintenance td:nth-child(2){width:105px !important}
  .table.reports.tacho-maintenance th:nth-child(3), .table.reports.tacho-maintenance td:nth-child(3){width:155px !important}
  .table.reports.tacho-maintenance th:last-child, .table.reports.tacho-maintenance td:last-child{width:312px !important}

  .table.reports.events-and-faults th, .table.reports.events-and-faults td {width:110px}
  .table.reports.events-and-faults th:first-child, .table.reports.events-and-faults td:first-child{width:150px !important}
  .table.reports.events-and-faults th:nth-child(2), .table.reports.events-and-faults td:nth-child(2){width:55px !important}
  .table.reports.events-and-faults th:nth-child(5), .table.reports.events-and-faults td:nth-child(5){width:280px !important}
  .table.reports.events-and-faults th:last-child, .table.reports.events-and-faults td:last-child{width:40px !important}

  .table.reports.speeding-offences th, .table.reports.speeding-offences td {width:120px}
  .table.reports.speeding-offences th:first-child, .table.reports.speeding-offences td:first-child{width:250px !important}
  .table.reports.speeding-offences th:nth-child(2), .table.reports.speeding-offences td:nth-child(2){width:75px !important}
  .table.reports.speeding-offences th:nth-child(5), .table.reports.speeding-offences td:nth-child(5){width:90px !important}
  .table.reports.speeding-offences th:last-child, .table.reports.speeding-offences td:last-child{width:90px !important}

  .table.reports.mileage-summary th, .table.reports.mileage-summary td {width:135px}
  .table.driver-validities {
    margin-bottom: 2rem;
    overflow: hidden;
  }
  .table.reports.driver-validities th, .table.reports.driver-validities td {width:200px; border: none;}

  .table.reports.country-codes th, .table.reports.country-codes td {width:135px; padding: 0 .25rem;}
  div.fleet-country-codes {
    max-height: calc(100vh - 15rem);
    overflow-x: hidden;
    overflow-y: scroll;
  }

  div.fleet-country-codes .table.reports.country-codes {
    overflow-y: visible;
    max-height: fit-content;
  }

  .reports.table.driver-shifts-violations {
    margin: .5rem 0;
    overflow-y: hidden;
  }

  .reports.table.driver-shifts-violations th, .reports.table.driver-shifts-violations td {
    border: none;
  }

  #drivers .preview-section {
    max-width: calc(100% - 61rem);
  }

  #vehicles .preview-section {
    max-width: calc(100% - 57.5rem);
  }

  .preview-section h1 {
    font-size: 1.5rem;
  }

.preview-section dl {
    width: 35rem;
}

.preview-section dd {
    width: 22.5rem;
    font-size: .8em;
}

.preview-section dt {
    width: 11rem;
    font-size: .8em;
}

.preview-section p {
    font-size: .8em;
}

.merged-reports {
    margin-bottom: 1rem;
}









.official-form-sheet h2 {
    background: transparent;
    border: none;
}
.official-form-sheet table{display:table;width:100%;border-collapse:separate;box-sizing:border-box;text-indent:initial;border-spacing:0}
.official-form-sheet table tr{display:flex;line-height:14px;border:1px solid;border-bottom:none}
.official-form-sheet table tbody tr:last-child{border-bottom:1px solid;}
.official-form-sheet table tr.tall{height:35px}
.official-form-sheet table th,.official-form-sheet table td{display:inline-block;padding:0 2px;vertical-align:inherit;text-align:left;border-right:1px solid;width:50%}
.official-form-sheet table td{padding:1px 2px}
.official-form-sheet table th:last-child,.official-form-sheet table td:last-child{border:none}
.official-form-sheet table th.wide,.official-form-sheet table td.wide{width:100% !important}
.official-form-sheet table th p{margin: 3px 0;font-size: 14px;font-weight: 400;}
.official-form-sheet #departure-control th{width:40%;border:none}
.official-form-sheet #departure-control td{width:33%}
.official-form-sheet #departure-control td p{float:left; width: 82%;}
.official-form-sheet #vehicle-data tbody tr {height: 40px;}
.official-form-sheet #vehicle-data #first-line td{width:30%}
.official-form-sheet #vehicle-data #first-line td:nth-child(2){width:40%}
.official-form-sheet #vehicle-data #second-line td{width:25%}
.official-form-sheet #vehicle-data #third-line td{width:33%}
.official-form-sheet #vehicle-data td .one {
    float: left;
    margin: 0 8px;
    padding-top: 20px;
}
.official-form-sheet #vehicle-data td .two, .official-form-sheet #vehicle-data td .two-row {
    float: left;
    display: flex;
    flex-direction: column;
    margin: 0 8px;
    padding-top: 4px;
}
.official-form-sheet #vehicle-data td .two-row {
    flex-direction: row;
    padding-top: 21px;
}
.official-form-sheet td svg {
    height: 14px;
    width: 14px;
    fill: var(--text);
}
.official-form-sheet p {
    line-height: 1rem;
    white-space: normal;
}
.official-form-sheet p svg {
    height: 16px;
    width: 16px;}
.official-form-sheet p.right { text-align: right }
.official-form-sheet #daily-control-sheet svg {
    float: right;
    height: 16px;
    width: 16px;
}
.official-form-sheet p.bold {
    font-weight: 800;
}

.official-form-sheet #vehicle-data p.bold
{
    font-size: 11px;
    padding: 6px;
}
.official-form-sheet #daily-control-sheet #first-line td{width:23%}
.official-form-sheet #daily-control-sheet #first-line td:first-child{width:31%}

.official-form-sheet #daily-control-sheet .hours {border-top:none}
.official-form-sheet #daily-control-sheet .hours td{padding-top: 0;width:45px}
.official-form-sheet #daily-control-sheet .hours td:first-child{width:113px}

.official-form-sheet #daily-control-sheet .time-line td{width:11.5px;padding: 2px 0}
.official-form-sheet #daily-control-sheet .time-line td:first-child{width:117px; display: flex; flex-direction: row;}
.official-form-sheet #daily-control-sheet .time-line p {width:75%}
.official-form-sheet #daily-control-sheet .total p {width:90%}
.official-form-sheet #daily-control-sheet .time-line svg, .official-form-sheet #daily-control-sheet .total svg {float:right}
.official-form-sheet #daily-control-sheet .no-border {border:none}
.official-form-sheet #daily-control-sheet .bottom-border{border:none; border-bottom: 1px solid}
.official-form-sheet #daily-control-sheet .right, .official-form-sheet #daily-control-sheet .right td {text-align: right;}

.official-form-sheet #daily-control-sheet tr.places td {padding: 3px 0;}
.official-form-sheet #daily-control-sheet tr.total {border-top: none;}
.official-form-sheet #daily-control-sheet .border-top {border-top: 1px solid !important;}
.official-form-sheet #daily-control-sheet .total td{width:141px; padding: 3px 2px;}
.official-form-sheet #daily-control-sheet .total td:nth-child(3) {width:115px}
.official-form-sheet #daily-control-sheet .total td:nth-child(4) {width:30px}
.official-form-sheet #daily-control-sheet .total td:nth-child(5) {width:103px;display: flex; flex-direction: row;}
.official-form-sheet #daily-control-sheet .total td:last-child{width:160px;}
.official-form-sheet #footer p {margin-top:3px;font-size:9px}
.official-form-sheet #footer svg {
    width: 12px; height: 12px
}
.official-form-sheet .time-line {
    max-height: 1rem;
}
.official-form-sheet #daily-control-sheet tr:last-child td:first-child{width:67%}
.official-form-sheet #daily-control-sheet tr:last-child td:last-child{width:33%}
.official-form-sheet div.box{float: right;margin-right: 10px;width:16px; height:16px;border: 1px solid}

.attestation-of-activities h1,.attestation-of-activities h2,.attestation-of-activities h3{display: block;margin:0;padding:0;font-weight: 400;text-transform: uppercase;font-size: 11px;line-height: 12px; text-align: center; background: transparent;border: none;}
.attestation-of-activities p{display: block;margin: 0; padding: 0 15px;font-size:10px;line-height: 18px}
.attestation-of-activities p span{font-weight: 600; float:none}
.attestation-of-activities p span.space{padding-left:34px}
.attestation-of-activities p span.space-long{padding-left:25px}
.attestation-of-activities p.space-up{margin-top:10px}
.attestation-of-activities h3{font-weight: 600}input{margin:0 10px 0 0; padding: 0}
.attestation-of-activities h4{display: block;margin:0;padding:6px 0;font-size:11px;line-height: 15px;font-weight:400;text-align: center}
.attestation-of-activities h5{display: block;margin: 0; padding: 8px 15px;font-size:11px;line-height: 15px}
.attestation-of-activities span.up{font-size: 11px;vertical-align: super}
.attestation-of-activities #header{padding: 25px 45px 15px}
.attestation-of-activities #content, #footer{display: block;width: 100%;padding:0}
.attestation-of-activities #content{padding-bottom:5px;border:1px solid #fff}
.attestation-of-activities #footer{padding-top:2px;}
.attestation-of-activities #footer p{padding: 2px 15px}
.attestation-of-activities #notes{margin: 0 20px}
.attestation-of-activities #notes p{padding:0}
.attestation-of-activities #notes p span.space-long{padding-left:50px}
.attestation-of-activities div.line{margin:5px 0;width: 40%; border-top:1px solid #fff}
.attestation-of-activities #country p{padding: 5px 8px 0 20px;font-family: Arial, Helvetica, sans-serif; font-size: 40px; line-height: 40px; color: #808080}
.attestation-of-activities p span.left{float: left}
.attestation-of-activities p span.right{float:right}

#map { height: calc(100vh - 10rem); width: calc(100vw - 12rem) }
.leaflet-popup {
    min-width: 14rem;
}
.leaflet-popup-content {
    min-width: 15rem;
    text-align: left;
}
.leaflet-popup-tip
{
    display: none;
}

i.icon.delete:before{
    font-family: 'Font Awesome\ 5 Free';
    content: "\f057";
    font-style: normal;
    margin-left: .25rem;
}