:root {
    --system-ui: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    --system-serif: "Apple Garamond", "Baskerville", "Times New Roman", "Droid Serif", "Times", "Source Serif Pro", serif;
    --system-mono: "SF Mono", "Monaco", "Inconsolata", "Fira Mono", "Droid Sans Mono", "Source Code Pro", monospace;
    --noboxcrm-accent-color: #f95d20;
    --noboxcrm-accent-hover: #ff5716;
    --noboxcrm-dark: #2a2a2a;
    --noboxcrm-background-color: #f1eeea;
}

* {
    padding: 0;
    margin: 0;
}

body {
    background-color: var(--noboxcrm-background-color);
    font-family: var(--system-ui);
    font-size: 0.8em;
    font-variant-numeric: tabular-nums;
    line-height: 1.75;
}

#verktygsfalt td {
    color: #fff;
}

a img {
    border: none;
}

summary {
    cursor: pointer;
}

/* tables */
table.tablesorter {
    background-color: #cdcdcd;
    margin: 10px 0 15px;
    width: 100%;
    text-align: left;
}

table.tablesorter thead tr th,
table.tablesorter tfoot tr th {
    background-color: var(--noboxcrm-dark);
    border: 1px solid #fff;
    font-size: 8pt;
    padding: 8px;
    color: #fff;
}

table.tablesorter thead tr .header {
    cursor: pointer;
}

table.tablesorter tbody td {
    color: #3d3d3d;
    padding: 4px;
    background-color: #fff;
    vertical-align: top;
}

table.tablesorter tbody tr.odd td {
    background-color: #f0f0f6;
}

table.tablesorter thead tr .headerSortDown,
table.tablesorter thead tr .headerSortUp {
    background-color: var(--noboxcrm-accent-color);
}

table.tablesorter tr a {
    color: #3d3d3d;
}

a {
    text-decoration: none;
    color: var(--noboxcrm-accent-color);
}

a:hover {
    text-decoration: underline;
}

.contact td {
    padding-left: 20px;
}

th,
td {
    text-align: left;
    font-size: 11px;
}

#site {
    display: flex;
    flex-direction: column;
    gap: 1.0rem;
    margin-inline: auto;
    margin-block: 2.5rem;
    padding: 0.5rem;
    max-width: 968px;
}


.content {
    background-color: #fff;
    border: 2px solid #e0dfdf;
    border-radius: 15px;
    padding: 1.0rem;
    text-align: left;
}

#login_form {
    display: flex;
    flex-direction: column;
    gap: 1.0rem;
}

.login_inputs {
    display: flex;
    flex-direction: row;
    gap: 1.0rem;
    justify-content: space-evenly;
}

.login_inputs input {
    border-radius: 5px;
}

.login_submit {
    border-radius: 5px;
    font-weight: 600;
    width: 100%;
    max-width: 200px;
    margin-inline: auto;
    padding: 0.5rem;
}

.form_group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    width: 100%;
}

/* Primary nav */
#burgermenu {
    display: none;
}

#nav {
    margin-block: 1.5rem 0;
    margin-inline: auto;
    width: 95%;
    max-width: 1600px;
}

#menu {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 0;
}

#nav ul li {
    border: 1px solid #e0dfdf;
    padding-block: 0.5rem;
    list-style-type: none;
    background-color: #999;
    margin-right: 3px;
}

#nav ul li:hover {
    background-color: #777;
}

#nav ul li a {
    color: #fff;
    padding: 12px 10px 10px;
    width: 100%;
}

#nav ul li a:hover {
    text-decoration: none;
}

#nav ul li#active {
    background-color: #000;
    font-weight: 600;
}

@media screen and (max-width:1024px) {
    #border {
        display: none;
    }

    #burgermenu {
        background: var(--noboxcrm-dark);
        display: flex;
        justify-content: space-between;
        padding: 0.5rem;
    }

    .burgermenu__header {
        all: initial;
        font-family: var(--system-ui);
        font-weight: 600;
    }

    .burgermenu__icon {
        color: #fff;
        cursor: pointer;
        width: 24px;
        height: 24px;
    }

    #nav {
        margin: 0;
        padding: 0;
        width: 100%;
    }

    #menu {
        display: flex;
        flex-direction: column;
        margin: 0;
    }

    #nav ul li {
        border-inline: 0;
        margin: 0;
    }

    #nav ul li a {
        display: block;
        font-weight: 600;
        padding: 0.25rem 0.75rem;
        width: 100%;
    }

    .nav__hidden {
        display: none;
    }

    .post {
        margin-top: 1.5rem;
    }

    .timereport-container {
        flex-direction: column;
        row-gap: 1rem;
    }

    .timereport-shortcuts {
        display: flex;
        flex-direction: column;
        justify-content: space-evenly;
        gap: 1.0rem;
        font-size: 0.75rem;
    }
}

/* End of primary nav */

.content_box {
    float: left;
    margin: 0 35px 0 0;
}

table.information {
    border: 1px solid #cdcdcd;
    margin: 10px 0 15px;
    font-size: 10pt;
    text-align: left;
}

table.information_bold {
    border: 2px solid #000;
    margin: 10px 0 15px;
    font-size: 10pt;
    text-align: left;
}

table.information thead tr th,
table.information_bold thead tr th {
    background-color: #e6eeee;
    font-size: 10pt;
    padding: 4px;
}

table.information tbody td,
table.information_bold tbody td {
    color: #3d3d3d;
    padding: 4px;
    background-color: #fff;
    vertical-align: top;
}

table.information th,
table.information_bold th {
    padding: 4px;
    font-size: 1em;
}

label {
    font-weight: 600;
}

input[type=submit] {
    background: var(--noboxcrm-accent-color);
    border: 1px solid #d8440a;
    color: #fff;
    cursor: pointer;
    font-size: 12px;
    padding: 6px 10px 8px;
}

input[type=submit]:hover {
    background: var(--noboxcrm-accent-hover);
}

input[type=button] {
    background: var(--noboxcrm-dark);
    border: 1px solid #111;
    margin-left: 10px;
    color: #fff;
    cursor: pointer;
    font-size: 12px;
    padding: 6px 10px 8px;
}



#search_result_ort {
    background-color: #f0f0f0;
}

#search_result p,
#search_result_ort p {
    border-bottom: 1px solid #fff;
    padding: 8px 0;
    margin: 0;
}

#search_result p:hover,
#search_result_ort p:hover {
    background: #e0e0e0;
}

#search_result a,
#search_result_ort a {
    color: #000;
}

input[type="text"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="date"],
input[type="datetime-local"],
textarea {
    background-color: #fff;
    border: 1px solid #e0e0e0;
    padding: 6px 4px 8px;
}

select {
    width: 210px;
    padding: 3px;
    -webkit-appearance: none;
    appearance: none;
}

@media screen and (max-width:800px) {
    .login_inputs {
        display: flex;
        flex-direction: column;
    }

}

.clear {
    clear: both;
}

#page-wrap,
.wrapper {
    width: 95%;
    max-width: 1600px;
    margin: 0 auto;
    text-align: left;
    overflow: auto;
}

#border {
    background: var(--noboxcrm-dark);
    width: 100%;
}

#border_content {
    margin-inline: auto;
    max-width: 1600px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

#verktygsfalt {
    display: block;
    color: #fff;
    margin: 1.0rem;
    white-space: nowrap;
    min-width: 300px;
}

#verktygsfalt h2 {
    color: #fff;
    font-size: 20px;
    border-bottom: 0;
    margin-top: 10px;
}

#verktygsfalt p {
    position: absolute;
    font-size: 9px;
    margin-top: 39px;
    margin-left: 9px;
}

#chart_container {
    margin-block: 1.0rem;
}

.timereport-container {
    display: flex;
    column-gap: 2.0rem;
    align-items: start;
    margin-bottom: 5.0rem;
}

.timereport-form {
    flex: 1 1 auto;
    width: 100%;
}

.timereport-shortcuts {
    display: flex;
    flex: 1 1 auto;
    justify-content: space-evenly;
    gap: 2.5rem;
    flex-wrap: wrap;
    font-size: 0.75rem;
}

.timereport-section {
    display: flex;
    flex-direction: column;
    flex: 0 0 225px;
    gap: 2.5rem;
    min-width: 400px;
}

#verktygsfalt ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#verktygsfalt ul li {
    width: 50px;
    text-align: center;
}

#verktygsfalt ul li img {
    padding-bottom: 4px;
}

#bordermenu {
    margin: 1.0rem;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    gap: 1.0rem;
}

#bordermenu ul {
    display: flex;
    flex-direction: row;
    gap: 25px;
    list-style: none;
    margin: 0;
    padding: 0;
}

#bordermenu ul li {
    background: var(--noboxcrm-accent-color);
    padding: 10px;
    border: 1px solid #e0dfdf;
}

#bordermenu ul li a {
    text-decoration: none;
    color: #fff;
}

#bordermenu ul li.white {
    background: #fff;
}

#bordermenu ul li.white a {
    color: #000;
}

#logo {
    float: right;
    width: 200px;
    margin-top: 16px;
    margin-bottom: 20px;
}

h1,
h2,
h3 {
    font-family: var(--system-serif);
    font-weight: normal;
    margin: 0 0 20px 0;
}

h1 {
    font-size: 22px;
    padding-bottom: 4px;
    border-bottom: 4px solid var(--noboxcrm-accent-color);
}

h2 {
    font-size: 18px;
    padding-bottom: 4px;
    border-bottom: 2px solid var(--noboxcrm-accent-color);
}

h3 {
    font-weight: bold;
    font-size: 14px;
    border-bottom: 1px solid var(--noboxcrm-accent-color);
    margin: 0;
    padding: 0;
}

ul,
ol {
    margin: 0 0 10px 20px;
}

.post {
    background: #fff;
    clear: both;
    border: 1px solid #dcdbdb;
    margin-inline: 1.0rem;
    padding: 20px 25px;
    overflow-x: auto;
}

/* END screen media */
@media print {
    .do-not-print {
        display: none;
    }

    #comments {
        page-break-before: always;
    }

    body {
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.4;
        word-spacing: 1.1pt;
        letter-spacing: 0.2pt;
        font-family: var(--system-serif);
        color: #000;
        background: none;
        font-size: 12pt;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-family: var(--system-ui);
    }

    h1 {
        font-size: 19pt;
    }

    h2 {
        font-size: 17pt;
    }

    h3 {
        font-size: 15pt;
    }

    h4,
    h5,
    h6 {
        font-size: 12pt;
    }

    code {
        font: 10pt Courier, monospace;
    }

    blockquote {
        margin: 1.3em;
        padding: 1em;
    }

    img {
        display: block;
        margin: 1em 0;
    }

    a img {
        border: none;
    }

    table {
        margin: 1px;
        text-align: left;
    }

    th {
        border-bottom: 1px solid #333;
        font-weight: bold;
    }

    td {
        border-bottom: 1px solid #333;
    }

    th,
    td {
        padding: 4px 10px 4px 0;
    }

    caption {
        background: #fff;
        margin-bottom: 2em;
        text-align: left;
    }

    thead {
        display: table-header-group;
    }

    tr {
        page-break-inside: avoid;
    }

    a {
        text-decoration: none;
        color: #000;
    }

}

/* END print media */
@media screen and (max-width:600px) {
    #border {
        justify-content: flex-end;
    }

    #verktygsfalt {
        display: none;
    }

    #bordermenu {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .company__searchbox__filters__grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-column-gap: 1.0rem;
        grid-row-gap: 2.0rem;
    }

    .company__flex__row {
        display: flex;
        flex-direction: column;
        gap: 2.0rem;
        margin-top: 2.0rem;
    }
}

.noboxcrm__action_button {
    background-color: var(--noboxcrm-accent-color);
    border: 0;
    border-radius: 5px;
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-weight: 500;
    padding: 0.5rem;
    white-space: nowrap;
}

.noboxcrm__action_button--danger {
    background-color: red;
    font-weight: 600;
}

.noboxcrm__action_button_dark {
    background-color: var(--noboxcrm-dark);
}

/* company_show.php specific parts */
.company__sectionbox {
    border: 1px solid #cdcdcd;
    font-size: 0.65rem;
    display: flex;
    flex-direction: column;
    gap: 2.0rem;
    padding: 0.5rem;
    overflow: auto;
    margin-bottom: 1.0rem;
}

.company__searchbox__content {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 1.0rem;
}

.company__searchbox__content h3 {
    all: initial;
}

.company__searchbox__textfields {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    align-items: stretch;
    gap: 1.0rem;
}

.company__searchbox__textfields__full_width {
    display: block;
    max-width: 475px;
    width: 90%;
}

.company__searchbox__textfields>div>label {
    display: block;
    margin-bottom: 0.5rem;
}

.company__searchbox__textfields__date-inputs {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.company__searchbox__filters {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    margin-top: 1.5rem;
}

.company__searchbox__filters__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 1.0rem;
    grid-row-gap: 2.0rem;
}

.company__searchbox__filters__checkbox {
    display: flex;
    gap: 1.0rem;
}

.company__searchbox__searchhint {
    position: absolute;
    display: none;
    z-index: 1000;
    background-color: #f0f0f0;
    border: 1px solid #ccc;
    width: 443px;
    padding-left: 5px;
    cursor: pointer;
}

.company__flex__row {
    display: flex;
    justify-content: space-between;
}

.company__website__row {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
}


.company__website__header__row {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 0.75rem;
}

.company__website__header__row h3 {
    border-bottom: none;
    font-size: 1.0rem;
}

.company__website__header__row__icons {
    display: flex;
    align-items: center;
    gap: 1.0rem;
}

.company__website__header__row__icon {
    width: 32px;
    text-align: center;
}

.company__website__table {
    border-spacing: 0;
}

.company__website__table td,
.company__website__table th {
    padding-block: 0.5rem;
    padding-inline: 0.5rem;
    vertical-align: baseline;
}

.company__website__table tfoot td {
    font-weight: 600;
    padding-block: 1.0rem;
}

.company__website__table__icon {
    display: flex;
}

.company__website__table-striped tr:nth-child(even) {
    background-color: #fafafa;
}

.company__website__table-bordered {
    border-bottom: 1px solid #ccc;
}

.company__website__table progress {
    width: 123px;
    height: 12px;
    border-radius: 5px;
    -webkit-appearance: none;
}

/* Normal, Chrome and Safari */
.company__website__table progress::-webkit-progress-value {
    background-color: var(--noboxcrm-accent-color);
}

/* Normal,Firefox */
.company__website__table progress::-moz-progress-bar {
    background-color: var(--noboxcrm-accent-color);
}

/* Normal, Chrome and Safari */
.company__website__table progress.produktion_klar::-webkit-progress-value {
    background-color: dodgerblue;
}

/* Normal,Firefox */
.company__website__table progress.produktion_klar::-moz-progress-bar {
    background-color: dodgerblue;
}

/* Klar att fakturera, Chrome and Safari */
.company__website__table progress.att_fakturera::-webkit-progress-value {
    background-color: purple;
}

/* Klar att fakturera, Firefox */
.company__website__table progress.att_fakturera::-moz-progress-bar {
    background-color: purple;
}

/* Fakturerad, Chrome and Safari */
.company__website__table progress.fakturerad::-webkit-progress-value {
    background-color: green;
}

/* Fakturerad, Firefox */
.company__website__table progress.fakturerad::-moz-progress-bar {
    background-color: green;
}

@media screen and (max-width:900px) {
    .company__searchbox__content {
        flex-direction: column;
    }

    .company__searchbox__textfields__date-inputs {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 0.5rem;
    }

}

/* utrustning*.php specific parts */
.equipment__edit__form {
    display: flex;
    flex-direction: column;
}

.equipment__edit__form__checkbox {
    border: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 1.0rem;
}

.equipment__edit__form__inline-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 1.0rem;
}

.equipment__edit__form__checkbox label {
    margin-left: 0.5rem;
}

.equipment__edit__form label,
.equipment__edit__form input,
.equipment__edit__form select {
    display: block;
}


.equipment__edit__form input:not([type=checkbox]):not([type=submit]),
.equipment__edit__form select {
    box-sizing: border-box;
    border: 1px solid var(--noboxcrm-background-color);
    border-radius: 5px;
    margin-bottom: 1.0rem;
    padding: 0.5rem;
    width: 100%;
}

.service_icon {
    text-align: center;
}

.service_icon img, .service_icon svg {
    margin-inline: auto;
    vertical-align: middle;
    cursor: pointer;
}

.timereport__list {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    margin-inline: 0;
    list-style-type: none;
}

.hidden {
    display: none;
}

table.activity_log {
    width: 100%;
}

table.activity_log td {
    padding-block: 1rem;
    padding-inline: 0.5rem;
    vertical-align: top;
}

fieldset {
    border: 0;
}

legend {
    font-weight: 500;
}

footer {
    margin-block: 10rem 1rem;
    font-size: 0.75rem;
    text-align: center;
}

.text-hint {
    font-size: 0.85rem;
    color: #666;
}

/* jCalendar */

table.jCalendar {
    border: 1px solid #000;
    background: #aaa;
    border-collapse: separate;
    border-spacing: 2px;
}

table.jCalendar th {
    background: #333;
    color: #fff;
    font-weight: bold;
    padding: 3px 5px;
}

table.jCalendar td {
    background: #ccc;
    color: #000;
    padding: 3px 5px;
    text-align: center;
}

table.jCalendar td.other-month {
    background: #ddd;
    color: #aaa;
}

table.jCalendar td.today {
    background: #666;
    color: #fff;
}

table.jCalendar td.selected {
    background: #f66;
    color: #fff;
}

table.jCalendar td.selected.dp-hover {
    background: #f33;
    color: #fff;
}

table.jCalendar td.dp-hover,
table.jCalendar tr.activeWeekHover td {
    background: #fff;
    color: #000;
}

table.jCalendar tr.selectedWeek td {
    background: #f66;
    color: #fff;
}

table.jCalendar td.disabled,
table.jCalendar td.disabled.dp-hover {
    background: #bbb;
    color: #888;
}

table.jCalendar td.unselectable,
table.jCalendar td.unselectable:hover,
table.jCalendar td.unselectable.dp-hover {
    background: #bbb;
    color: #888;
}

div.dp-popup {
    position: relative;
    background: #ccc;
    font-size: 10px;
    font-family: arial, sans-serif;
    padding: 2px;
    width: 171px;
    line-height: 1.2em;
}

div#dp-popup {
    position: absolute;
    z-index: 199;
}

div.dp-popup h2 {
    font-size: 12px;
    text-align: center;
    margin: 2px 0;
    padding: 0;
}

a#dp-close {
    font-size: 11px;
    padding: 4px 0;
    text-align: center;
    display: block;
}

a#dp-close:hover {
    text-decoration: underline;
}

div.dp-popup a {
    color: #000;
    text-decoration: none;
    padding: 3px 2px 0;
}

div.dp-popup div.dp-nav-prev {
    position: absolute;
    top: 2px;
    left: 4px;
    width: 100px;
}

div.dp-popup div.dp-nav-prev a {
    float: left;
}

div.dp-popup div.dp-nav-prev a,
div.dp-popup div.dp-nav-next a {
    cursor: pointer;
}

div.dp-popup div.dp-nav-prev a.disabled,
div.dp-popup div.dp-nav-next a.disabled {
    cursor: default;
}

div.dp-popup div.dp-nav-next {
    position: absolute;
    top: 2px;
    right: 4px;
    width: 100px;
}

div.dp-popup div.dp-nav-next a {
    float: right;
}

div.dp-popup a.disabled {
    cursor: default;
    color: #aaa;
}

div.dp-popup td {
    cursor: pointer;
}

div.dp-popup td.disabled {
    cursor: default;
}

/* Time report */

input[type="range"]#slider {
    width: 100%;
    display: block;
    margin-bottom: 4px;
}

#time-settings {
    padding: 20px;
    margin: auto;
}

#time-settings .fieldsets {
    display: grid;
    grid-template-columns: 270px 330px;
    gap: 20px;
}

#time-settings legend {
    white-space: nowrap;
}

#time-settings img {
    display: block;
    margin: auto;
}

#time-settings h2 {
    margin-bottom: 20px;
}

#time-settings fieldset {
    display: flex;
    align-items: center;
    padding: 20px;
}

#time-settings fieldset div {
    margin-right: 20px;
}

#sub-project {
    display: flex;
    margin-bottom: 10px;
    font-style: italic;
    color: #ccc;
    height: 20px;
}

#container a img {
    display: none;
    width: 18px;
    height: 18px;
}

#container.showIcons a img {
    display: inline;
}

#container a:hover {
    text-decoration: none;
}

#container.blackLinks a {
    color: #000;
}

@media screen and (max-width: 768px) {
    #time-settings .fieldsets {
        display: flex;
        flex-direction: column;
    }
}

.time__warning {
  font-weight: bold;
  color: red;
  white-space: nowrap;
}
