/* this is extracted from layout */
/* DEFINE COLOURS */

:root {
    --background-calculated: #FBA18B;
    --background-header-queried: #5B715B;
    --background-header-calculated: #CB715B;
    --background-good: #DDFFDD;
    --background-bad: #FFDDDD;
    --background-selected-hover: #909090;
    --background-available-hover: #e4e4e4;
    --background-mimic: #0CAF50;
    --text-muted: #777;
    --background-selectable-hover: #CACACA;

    /* raw colour var overrides */
    --black: black;
    --white: white;
    --background-midnightblue: midnightblue;
    --background-midnightblue-transparent: #19197033;

    /* Primary palette */
    --primary: #387552;
    --primary-light: #8986D9;
    --primary-dark: #6247AA;
    --primary-accent: #04AA6D;
    --primary-accent-light: #04AA6D88;
    --primary-accent-bg: #04AA6D55;

    /* Secondary palette */
    --secondary: var(--primary-light);
    --secondary-light: #b9b9Ea;
    --secondary-dark: #535186;
    --secondary-accent: #A594F9;

    /* Surface/background */
    --background: #fff;
    --background-light: #EAEAEA;
    --background-lighter: #f3f3f3;
    --background-grey: lightgrey;
    --background-blue: lightsteelblue;
    --background-green: forestgreen;
    --background-purple: #66339977;
    --background-warning: #eee8aaCC;
    --background-caution: #eee8aaFF;
    --background-safe: #20b2aa55;
    --background-danger: #dc143c55;
    --background-danger-solid: #dc143c99;
    --background-error: #db709366;
    --background-moved: #CB715B66;
    --background-skipped: rgba(163, 197, 215, 1);
    --background-created: rgba(138, 217, 142, 1);
    --background-replaced: rgba(255, 235, 0, 1);
    --background-moved-alt: rgba(205, 163, 215, 1);
    --background-error-alt: rgba(255, 122, 122, 1);

    /* Borders */
    --border-light: lightgrey;
    --border-grey: grey;
    --border-dark: darkslategrey;
    --border-warning: #eee8aaFF;
    --border-danger: #dc143c99;
    --border-accent: var(--primary-light);
    --border-green: green;
    --border-red: red;
    --border-yellow: yellow;

    /* Text */
    --text-main: #222;
    --text-light: #999;
    --text-grey: grey;
    --text-white: #fff;
    --text-black: #000;
    --text-accent: #5956A9;
    --text-danger: #dc143cEE;
    --text-success: var(--primary-accent);
    --text-warning: #cd5c5cDD;

    /* Icon colors */
    --icon-blue: #00bfffDD;
    --icon-flask: #ffAA50DD;
    --icon-trash: #cd5c5cDD;
    --icon-edit: #228b22DD;
    --icon-plus: #663399DD;
    --icon-check: #3cbc71DD;
    --icon-undo: #daa520DD;
    --icon-times: red;

    /* Misc */
    --input-bg: rgba(230, 230, 230, 10);
    --input-border: #DDDDDD;
    --input-success: #04AA6D65;
    --input-warning: #cd5c5c66;
    --input-danger: lightcoral;
    --input-prefilled: lightyellow;
    --input-disabled: lightgrey;
    --input-green: #4CAF50;
    --input-red: #AA1111;
    --input-red-hover: #7A1111;
    --input-blue: lightblue;
    --background-percentage: #22Ab2266;
    --background-aliquot: #a0a0a0;
    --border-aliquot: #444444;
    --background-error-traceback: #f8f9fa;
    --border-error-traceback: #ddd;
    --input-blue-hover: var(--primary-accent);
    --input-cancel: grey;
    --input-save: var(--primary-accent);
    --input-action: rgba(0, 255, 0, 0.6);
    --input-action-hover: rgba(0, 255, 0, 0.8);
    --input-action-disabled: rgba(0, 255, 0, 0.2);
    --input-delete: rgba(255, 0, 0, 0.6);
    --input-delete-hover: rgba(255, 0, 0, 0.8);
    --input-delete-disabled: rgba(255, 0, 0, 0.2);
    --input-update: rgba(255, 255, 0, 20%);
    --input-insert: rgba(0, 255, 0, 20%);
    --input-skipped: rgba(163, 197, 215, 0.8);
    --input-created: rgba(138, 217, 142, 0.8);
    --input-replaced: rgba(255, 235, 0, 0.8);
    --input-moved: rgba(205, 163, 215, 0.8);
    --input-error: rgba(255, 122, 122, 0.8);
    --input-cancel-bg: lightgrey;
    --input-save-bg: rgba(138, 217, 142, 1);
    --input-cancel-hover: grey;
    --input-save-hover: var(--primary-accent);
    --input-active: #C6C6C6;
}


/* @media (prefers-color-scheme: dark) { */
/* Some nice dark theme colours, but nwe need to map them */
/* :root {
        primary-100: #387552;
        primary-200: #4e8464;
        primary-300: #649376;
        primary-400: #7aa288;
        primary-500: #8fb19b;
        primary-600: #a5c0ae;
        surface-100: #292761;
        surface-200: #413b72;
        surface-300: #575182;
        surface-400: #6e6894;
        surface-500: #857fa5;
        surface-600: #9d97b6;
        surface-mixed-100: #36465d;
        surface-mixed-200: #4a586e;
        surface-mixed-300: #5f6b7f;
        surface-mixed-400: #757f90;
        surface-mixed-500: #8b93a2;
        surface-mixed-600: #a1a8b4;
    }
} */

header {
    width: 100% !important;
    text-align: left !important;
    position: fixed !important;
    top: 0 !important;
    z-index: 2 !important;
    background-color: var(--background) !important;
}

.page-container {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    margin-top: 20px;
    margin-left: 20px;
    max-height: calc(100vh - 30px - 50px - 50px) !important;
    margin-bottom: 30px !important;
    padding-bottom: 50px;
}

.sidebar {
    width: 130px !important;
    height: calc(100% - 50px - 30px) !important;
    position: fixed !important;
    left: 0 !important;
    top: 50px !important;
    z-index: 1 !important;
    background-color: var(--background) !important;
}

.page-information {
    flex: 1 !important;
    margin-left: 130px !important;
    max-width: calc(100vw - 130px) !important;
    width: calc(100% - 130px) !important;
    margin-bottom: 30px;
    padding-bottom: 50px;
}

footer {
    position: fixed !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 30px !important;
    background-color: var(--background) !important;
    font-size: 8px !important;
    z-index: 2 !important;
}

.dataTables_wrapper {
    position: relative;
    clear: both;
    padding-bottom: 50px;
}

#logged-in-user-display p,
#logged-in-user-display a {
    font-size: inherit;
}

#logged-in-user-display {
    position: absolute;
    margin-left: 130px;
}

.burger-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 9%;
}

.burger-icon {
    font-size: x-large;
}

.user-info {
    margin: 0;
    padding: 0 10px;
    color: var(--text-white);
}

.logout-link {
    margin: 0;
    padding: 0;
}

.title {
    display: flex;
    align-items: center;
}

.logo {
    width: 50px;
    padding: 0 5px;
}

.footer-table {
    width: 80%;
    margin: 0 auto;
    border-collapse: collapse;
    border: none;
    table-layout: fixed;
}

.footer-left,
.footer-center,
.footer-right,
.footer-version {
    text-align: left;
    color: var(--text-grey);
    color: var(--border-grey);
}

.footer-version {
    white-space: nowrap;
}

.footer-link {
    color: var(--text-grey);
}

/* below this is the normal css*/


header {
    position: absolute;
    top: -50px;
    text-align: center;
    width: 100%;
    display: flex;
    justify-content: space-between;
    border: 1px solid var(--border-yellow);
}

html,
body {
    height: 100%;
    margin: 0;
    display: flex;
    flex-direction: column;
}

body {
    font-family: Roboto, sans-serif;
    border-collapse: collapse;
    float: left;
    margin-top: 53px;
}

footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    height: 40px;
    /* Adjust based on the height of the footer */
    background-color: var(--white);
    font-size: 8px;
    z-index: 2;
    /* Ensure footer is above other elements */
}

a {
    font-size: medium;
}

div .flex-div {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sidebar {
    height: 120%;
    width: 12%;
    padding-top: 5px;
    padding-left: 5px;
    text-align: center;
}

.sidebar .current-page {
    border-radius: 5px;
    background-image: linear-gradient(45deg, var(--secondary), var(--secondary-light));
    /*background-color: var(--primary-light);*/
}

.sidebar .sidebar-icon-td {
    display: flex;
    justify-content: left;
    align-items: center;
    width: 100%;
}

.sidebar td:hover {
    font-weight: bolder;
    cursor: pointer;
}

.sidebar-icon-td i {
    color: var(--black)
}

.sidebar-icon-td p {
    margin: 0 0 0 15px;
}

.icon-container {
    width: 15px;
    /* Adjust as needed */
}

.label-container {
    flex-grow: 1;
}

.sidebar table {
    width: 100%;
    margin-left: 3%;
    border-radius: 3px;

}

.sidebar table {
    border: none;
    border-radius: 3px;

}

.sidebar-header {
    font-size: x-large;
    font-weight: bold;
}

.sidebar-dropdown {
    font-size: medium;
    font-weight: normal;
}

.sidebar-dropdown td {
    padding: 0
}

.sidebar-dropdown div {
    margin-left: 20%;
    text-align: left;
}

.page-brief {
    display: flex;
    justify-content: space-between;
    width: auto;
    align-items: flex-end;
    margin-top: 5px;
}

.page-brief div {
    border: 1px solid var(--border-grey);
    border-radius: 3px;
    font-size: x-small;
    width: auto;
    padding: 2px 4px 10px 4px;
    height: 20px;
    margin: 0 3px;
}

.page-brief .basic-brief,
.patient-sex,
.patient-DOB,
.patient-ethnicity,
.urinalysis-collection {
    background-color: var(--background-grey);
}

.page-brief .page-active {
    background-image: linear-gradient(45deg, var(--primary-accent), var(--primary-accent-light));
}

.page-active i {
    font-size: x-small;
}

.page-brief .page-archived {
    background-image: linear-gradient(45deg, var(--background-danger-solid), var(--background-danger));
}

.page-archived i {
    color: var(--text-danger);
    font-size: x-small;
}

div .notification-caution {
    background-color: var(--background-warning);
    border: 1px solid var(--border-warning);
    display: flex;
    justify-content: left;
    align-items: center;
}

div .notification-safe {
    background-color: var(--background-safe);
    border: 1px solid var(--background-safe);
    display: flex;
    justify-content: left;
    align-items: center;
}

.notification-caution i {
    font-size: small;
}

.notification-danger i {
    font-size: small;
}

.notification-safe i {
    font-size: small;
}

div .notification-danger {
    background-color: var(--background-danger);
    border: 1px solid var(--border-danger);
    display: flex;
    justify-content: left;
    align-items: center;
}

.notification-icon {
    width: 20px;
    text-align: center;
    margin-right: 5px;
}

div .notification-caution,
.notification-danger,
.notification-safe {
    width: 97%;
    margin-bottom: 3px;
    border-radius: 6px;
    font-size: small;
    font-weight: normal;
    padding: 2px 10px;
    text-align: left;
}

div .page-tabs {
    width: 97%;
    display: flex;
    justify-content: left;
    margin-top: 20px;
    border-bottom: 1px solid var(--background-light);
}

.tab-button,
.tab-button-selected {
    border-radius: 0;
    border: 1px solid var(--background-light);
    padding: 1px 10px;
    font-size: medium;
    color: var(--black)
}

div #patient-clinical-tab {
    overflow-x: auto;
    max-height: 450px;
    overflow-y: hidden;
}

div .timeline {
    position: relative;
    width: 100%;
    height: 3px;
    top: 170px;
    background-color: var(--midni);
}

div .timeline-date {
    width: 200px;
    height: 30px;
    position: relative;
    font-size: small;
}

.timeline-date div {
    text-align: left;
}

.timeline-date i {
    margin-left: -65%;
}

div .north-line {
    position: relative;
    scale: 150% 335%;
    bottom: 73%;
    color: var(--background-midnightblue);
}

div .south-line {
    top: 200%;
    position: relative;
    scale: 150% 335%;
    color: var(--background-midnightblue);
}

div .time-date-container,
.time-point-container {
    position: relative;
    left: 0;
    top: 0;
    display: flex;
    height: 400px;
}

div .time-date-container {
    top: -400px;
}

div.time-point {
    width: 200px;
    height: 100px;
    position: relative;
    text-align: left;
    font-size: small;
    display: flex;
    flex-wrap: wrap;
    padding: 3px;
    background-color: var(--background-midnightblue-transparent);
    border: 1px var(--background-midnightblue) wave;
    border-radius: 5px;
}

.time-point .north {
    align-items: flex-end;
}

.time-point .south {
    align-items: flex-start;
}

div .time-point-code {
    border: 1px solid var(--border-grey);
    border-radius: 3px;
    font-size: 10px;
    width: auto;
    padding: 4px;
    height: auto;
    max-height: 40px;
    margin: 0;
    background-color: var(--background-light);
    display: flex;
    align-items: center;
}

div .time-line-container {
    margin-top: 40px;
    width: 90%;
    margin-left: 5%;
    border-left: 2px solid var(--primary-light);
    height: 500px;
    overflow-y: scroll;
}

div .time-line-entry {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 80%;
    margin-bottom: 30px;
}

div .time-line-info {
    width: 75%;
    text-align: left;
}

div .time-line-date-container {
    display: flex;
    justify-content: left;
    align-items: center;
}

div .right-triangle {
    width: 0;
    height: 0;
    border-left: 15px solid var(--primary-light);
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
}

div .time-line-date {
    margin-left: 35px;
    font-weight: bold;

}

.tab-button {
    background-color: var(--background-light);
}

.tab-button-selected {
    background-color: var(--background-grey);
}

.tab-button:hover,
.tab-button-selected:hover {
    background-color: var(--background-grey);
    color: var(--black)
}

div .tab-information {
    margin-top: 6px;
    width: 97%;
    margin-bottom: 30px;
}

#patient-demographics-tab table {
    font-size: medium;
    width: 50%;
    margin-left: 25%;
    border-radius: 3px;
}

#patient-demographics-tab td {
    padding: 4px 5px;
    font-size: medium;
}

#patient-collections-tab td,
th {
    padding: 4px 5px !important;
}

#patient-demographics-tab .toggle-edit-td {
    font-size: small;
    text-align: right;
}

#patient-demographics-tab input[type="checkbox"] {
    width: 13px;
    height: 13px;
    margin: 0 10px;
}

#patient-demographics-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#patient-notes-tab .patient-notes {
    width: 100%;
    height: 400px
}

#patient-notes-tab textarea {
    width: 100%;
    height: 100%;
}

#patient-notes-tab textarea:focus {
    outline: none
}

#sample-notes-tab .sample-notes {
    width: 100%;
    height: 400px
}

#sample-notes-tab textarea {
    width: 100%;
    height: 100%;
}

#sample-notes-tab textarea:focus {
    outline: none
}

#add-collection-tab .section {
    margin-bottom: 20px;
}

#sample-details-tab-button .section {
    justify-content: space-between;
    width: 100%;
    align-items: center;
    border-bottom: 1px solid var(--background-light);
}

#add-collection-tab input[type="checkbox"] {
    width: 13px;
    height: 13px;
    margin: 0 10px;
}

.section-header {
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
    border-bottom: 1px solid var(--background-light);
}

.section-body {
    display: none;
    justify-content: space-between;
    width: 100%;
    margin-top: 15px;
}

.section-column {
    width: 46%;
}

.collection-notes {
    width: 100%;
    height: 150px;
}

.textarea-saved {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--primary-accent-bg);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

.textarea-unsaved {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--background-light);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

.textarea-failed {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--background-danger);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#add-collection-tab .collection-notes:focus {
    outline: none;
}

#add-collection-tab .action {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#add-collection-tab .edit {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--background-blue);
    color: var(--black);
}

#add-collection-tab .collection-logistics {
    padding-top: 8px;
}

#add-collection-tab .section-confirm {
    display: flex;
    justify-content: right;
    align-items: center;
    margin-top: 10px;
}

#add-collection-tab .section-confirm-button {
    padding: 3px 10px;
    border-radius: 3px;
    border: 1px solid var(--background-grey);
    background-color: var(--background-light);
    color: var(--black);
}

#patient-notes-tab .patient-notes-saved {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--primary-accent-bg);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#patient-notes-tab .patient-notes-unsaved {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--background-light);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#patient-notes-tab .patient-notes-failed {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--background-danger);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#patient-notes-tab .patient-notes-failed i {
    color: var(--text-danger);
}


#sample-notes-tab .sample-notes-saved {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--primary-accent-bg);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#sample-notes-tab .sample-notes-unsaved {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--background-light);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#sample-notes-tab .sample-notes-failed {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--background-danger);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#sample-notes-tab .sample-notes-failed i {
    color: var(--text-danger);
}

#add-patient-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
    margin-top: 10px;
}

#add-rack-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
    margin-top: 10px;
}

#add-patient-tab table {
    font-size: medium;
    width: 50%;
    margin-left: 25%;
    border-radius: 3px;
}

#add-rack-tab table {
    font-size: medium;
    width: 80%;
    margin-left: 10%;
    border-radius: 3px;
}

.page-brief .collection-vg-id {
    background-color: var(--background-grey);
}

#collection-details-tab input[type="checkbox"] {
    width: 13px;
    height: 13px;
    margin: 0 10px;
}

#collection-details-tab .section {
    margin-bottom: 20px;
}

#collection-details-tab .section-header {
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
    border-bottom: 1px solid var(--background-light);
}

#collection-details-tab .section-body {
    display: none;
    justify-content: space-between;
    width: 100%;
    margin-top: 15px;
}

#collection-details-tab .section-column {
    width: 46%;
}

#collection-details-tab .collection-notes {
    width: 100%;
    height: 150px;
}

#collection-details-tab .collection-notes:focus {
    outline: none;
}

#collection-details-tab .action {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#collection-details-tab .edit {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--background-blue);
    color: var(--black);
}

#collection-details-tab .collection-logistics {
    padding-top: 8px;
}

#collection-details-tab .section-confirm {
    display: flex;
    justify-content: right;
    align-items: center;
    margin-top: 10px;
}

#collection-details-tab .section-confirm-button {
    padding: 3px 10px;
    border-radius: 3px;
    border: 1px solid var(--background-grey);
    background-color: var(--background-light);
    color: var(--black);
}

#collection-details-tab .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--border-danger);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

#collection-aliquots-tab .selectable-tr:hover {
    background-color: var(--background-selectable-hover);
    cursor: pointer;
}

.add-aliquots-tab table {
    width: 50%;
    margin-left: 25%;
}

.add-aliquots-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
    margin-top: 10px;
}

#add-site-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
    margin-top: 10px;
}

#site-details-tab input[type="checkbox"] {
    width: 13px;
    height: 13px;
    margin: 0 10px;
}

#site-details-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
    margin-top: 10px;
}

#site-notes-tab .site-notes {
    width: 100%;
    height: 400px
}

#site-notes-tab textarea {
    width: 100%;
    height: 100%;
}

#site-notes-tab textarea:focus {
    outline: none
}

#site-notes-tab .site-notes-saved {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--primary-accent-bg);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#site-notes-tab .site-notes-unsaved {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--background-light);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#site-notes-tab .site-notes-failed {
    display: flex;
    justify-content: space-between;
    font-size: medium;
    align-items: center;
    background-color: var(--background-danger);
    padding: 2px 8px;
    border: 1px solid var(--background-grey);
    border-radius: 3px;
    margin-bottom: 3px
}

#site-notes-tab .site-notes-failed i {
    color: var(--text-danger);
}

#urilyzer-verify-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#urilyzer-verify-tab .section-confirm {
    display: flex;
    justify-content: right;
    align-items: center;
    margin-top: 10px;
}

#urilyzer-verify-tab .section-confirm-button {
    padding: 3px 10px;
    border-radius: 3px;
    border: 1px solid var(--background-grey);
    background-color: var(--background-light);
    color: var(--black);
}

#htz-verify-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#htz-verify-tab .section-confirm {
    display: flex;
    justify-content: right;
    align-items: center;
    margin-top: 10px;
}

#htz-verify-tab .section-confirm-button {
    padding: 3px 10px;
    border-radius: 3px;
    border: 1px solid var(--background-grey);
    background-color: var(--background-light);
    color: var(--black);
}

#create-experiment-tab #experiment-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 20px;
}

#experiment-info .experiment-name {
    width: 270px
}

#experiment-info input {
    width: 100%
}

#experiment-info .label {
    text-align: left;
    font-weight: bold;
    margin-bottom: 5px;
}

#experiment-info .experiment-start-date {
    width: 150px
}

#create-experiment-tab #experiment-description {
    margin-top: 20px;
    display: block;
    width: 100%;
    text-align: left;
    font-weight: bold;
}

#experiment-info textarea {
    width: 100%;
}

#experiment-info textarea:focus {
    outline: none;
}

#create-experiment-tab #experiment-submit {
    width: 100%;
    margin-top: 5px;
}

#experiment-submit button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#sample-request-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#sample-request-tab .section-confirm {
    display: flex;
    justify-content: right;
    align-items: center;
    margin-top: 10px;
}

#sample-request-tab .section-confirm-button {
    padding: 3px 10px;
    border-radius: 3px;
    border: 1px solid var(--background-grey);
    background-color: var(--background-light);
    color: var(--black);
}

#sample-request-tab textarea {
    width: 100%;
}

#sample-request-tab textarea:focus {
    outline: none;
}

#experiment-info-tab input[type="checkbox"] {
    width: 13px;
    height: 13px;
    margin: 0 10px;
}

#experiment-description-tab textarea {
    width: 100%;
    height: 100%;
}

#experiment-description-tab textarea:focus {
    outline: none;
}

#experiment-info-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#request-info-tab input[type="checkbox"] {
    width: 13px;
    height: 13px;
    margin: 0 10px;
}

#requested-samples-tab button.action {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
    margin-top: 15px;
    float: right
}

#request-info-tab button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#end-experiment-div button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#end-experiment-div {
    display: flex;
    justify-content: left;
    align-items: center;
}

#end-experiment-buttons button.confirm {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#experiment-end-date-div {
    width: 45%;
    justify-content: space-between;
    align-items: center;
}

#end-experiment-buttons button.cancel {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--background-light);
    color: var(--black);
}

#end-experiment-buttons button.cancel:hover {
    background-color: var(--background-grey);
}

#end-experiment-inputs input[type="date"] {
    border-top: none;
    border-left: none;
    border-right: none;
}

#request-complete-button-div button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

#request-complete-button-div {
    display: flex;
    justify-content: left;
    align-items: center;
}


button.post-button {
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    background-color: var(--primary-accent-light);
    color: var(--black);
}

table {
    text-align: left;
    border: 1px solid var(--input-border);
    border-radius: 3px;
}

table.rounded {
    border-radius: 3px;
}

table.alternate tr:nth-child(odd) {
    background-color: var(--background-lighter);
}

table.nested-table {
    margin: 15px;
}

table.input {
    font-size: larger;
}

table td input {
    border-top: none;
    border-right: none;
    border-left: none
}

table td select {
    border: none;
    border-radius: 3px;
    background-color: var(--background-grey);
    padding-left: 10px;
}

table td select:hover {
    background-color: var(--border-grey);
    cursor: pointer;
}

table td textarea {
    border: 1px solid var(--background-grey);
    /*border-radius: 10px;*/
    padding: 6px 10px;
}

table td input:focus {
    outline: none;
}

td,
th {
    padding: 4px;
}

td {
    font-size: medium;
}

th {
    padding-top: 3px;
    padding-bottom: 3px;
    text-align: left;
    color: var(--text-black);
    background-color: var(--background-blue);
    /*background-color: var(--primary-light);*/
}

th.queried {
    background-color: var(--primary-accent);
}

td.queried {
    text-align: center;
}

th.calculated {
    background-color: var(--background-calculated);
}

td.calculated {
    text-align: center;
}

th.header-csv {
    text-align: center;
    background-color: var(--secondary-dark);
}

th.header-queried {
    text-align: center;
    background-color: var(--background-header-queried);
}

th.header-calculated {
    text-align: center;
    background-color: var(--background-header-calculated);
}

tr.skip {
    background-color: var(--background-error-alt);
}

tr.create-new {
    background-color: var(--background-green);
}

tr.overwrite-existing {
    background-color: var(--background-blue);
}


button.delete {
    background-color: var(--input-red);
    border: 2px solid var(--border-dark);
    color: var(--text-white);
    padding: 3px 10px;
    display: block;
    margin: auto;
    width: 80%;
}

.patient-delete {
    background-color: var(--input-red);
    border: 1px solid var(--border-dark);
    color: var(--white);
}

.patient-delete:hover {
    background-color: var(--input-red-hover);
    color: var(--white);
}

button.edit {
    padding: 3px 10px;
    display: block;
    margin: auto;
    width: 80%;
}

button.float_to_centre {
    margin-top: 20px;
    width: 33%;
}


button:hover {
    color: var(--white);
}

button.delete:hover {
    background-color: var(--input-red-hover);
    color: var(--white);
}



.dataTables_length select {
    width: auto;
}

.dataTables_length label {
    margin-left: 10px;
    margin-top: 6px;
}

.paginate_button {
    padding: 4px 13px !important;
}

table input {
    font-size: inherit;
    width: 97.3%;
}

select {
    font-size: inherit;
    width: 97.3%;
}

input.add {
    margin-top: 20px;
    width: 33%;
    background-color: var(--input-green);
    border: 2px solid var(--input-green);
    color: var(--white);
    padding: 10px 32px;
    font-size: larger;
    cursor: pointer;
    border-radius: 12px;
    /* ALign submit button under the table, would inherit from the form, but not an inline element thing apparently? */
    float: inherit;
}

button.edit {
    background-color: var(--input-blue);
    border: 2px solid var(--black);
    color: var(--black);
    padding: 10px 32px;
    font-size: inherit;
    cursor: pointer;
    border-radius: 12px;
    width: auto;
    float: right;
}

input.verify {
    background-color: var(--input-green);
    border: 2px solid var(--input-green);
    color: var(--white);
    padding: 10px 32px;
    font-size: inherit;
    cursor: pointer;
    border-radius: 12px;
    width: 50%;
    float: right;
}

div.verify {
    width: 80%;
}

div.float_to_centre {
    text-align: center;
    font-size: inherit;
}

div.footer {
    float: left;
    padding: 10px;
    margin-top: 15px;
    margin-right: 10px;
    border: solid #666666;
}

div.good {
    background-color: var(--background-good);
}

div.bad {
    background-color: var(--background-bad);
}

div.split_table {
    column-count: 2;
    column-gap: 20px;
}

pre {
    border: solid #666666;
    padding: 10px;
}

.dotted-line {
    border-bottom: 2px dotted var(--black);
}

.collection-input {
    width: 69%;
    margin-left: 4%;
    text-align: right;
}

.collection-label {
    width: 27%;
    text-align: left;
}

.collection-missing-patient {
    width: 100%;
}

.collection-missing-box {
    background-color: var(--input-danger);
    border-radius: 15px;
    border: 2px solid var(--border-red);
    height: 100%;
    margin-bottom: -10px;
}

button.unclickable {
    opacity: 0.5;
    /* Make the button appear greyed out */
    filter: grayscale(100%);
    /* Apply a greyscale filter */
}

button.clickable {
    opacity: 1;
    /* Make the button appear normal */
    filter: grayscale(0%);
    /* Remove the greyscale filter */
}

select.unclickable {
    opacity: 0.8;
    /* Make the button appear greyed out */
    filter: grayscale(100%);
    /* Apply a greyscale filter */
}

.secondary-field {
    background-color: var(--input-bg);
    color: var(--black);
    font-size: medium;
}

.input-table th {
    width: 33%;
}

.non-table-td {
    border: none;
}

th.blank-th {
    background-color: var(--white);
    color: var(--black);
}

tr.blank-border {
    border: none !important;
    /*border-left: none !important;*/
    /*border-right: none !important;*/
    /*border-bottom: none !important;*/
}

.td-warning {
    background-color: var(--input-warning);
    font-weight: bold;
    color: var(--black)
}

.td-danger {
    background-color: var(--input-danger);
    font-weight: bold;
}

.th-nested-table {
    background-color: var(--input-blue);

}

body a {
    text-decoration: none;
}

a .no-decoration {
    text-decoration: none;
    color: var(--black)
}

.no-decoration p {
    color: var(--black)
}

.disabled {
    pointer-events: none;
    background: var(--input-disabled);
}

#clinical-check {
    height: 20px;
    width: 20px;
    cursor: pointer
}

.navbar {
    overflow: hidden;
    background-image: linear-gradient(90deg, var(--primary-dark), var(--secondary-accent));
    /*background-color: var(--primary-light);*/
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 6px 4px;
    /*border-bottom: 2px solid var(--border-grey);*/
    z-index: 999;
}

.navbar a {
    color: var(--text-white);
    text-decoration: none;
    font-size: x-large;
}

.burger-selected {
    padding-left: 5px;
    padding-right: 5px;
}

.burger-selected i {
    color: var(--black)
}

.burger-available {
    padding-left: 5px;
    padding-right: 5px;
}

.burger-available i {
    color: var(--white);
}

.nav-help-button {
    padding: 4px 12px 4px 12px;
    color: var(--text-accent);
    background-color: var(--background);
    border: none;
    font-size: medium;
    border-radius: 10px;
}

.nav-help-button:hover {
    background-color: var(--input-disabled);
    color: var(--black)
}

.title {
    color: var(--white);
    margin-bottom: 0;
}

input[readonly] {
    background-color: var(--input-bg);
    cursor: default;
    border: none;
    color: var(--border-grey);
    border-radius: 3px;
    padding: 2px 6px;
}

pre.success {
    color: var(--border-green);
}

pre.fail {
    color: var(--border-red);
}

.action-delete {
    background-color: var(--input-delete);
}

button.action-size {
    border: none;
    border-radius: 3px;
    padding: 4px 12px 4px 12px;
    font-size: medium;
    cursor: pointer;
}

button.action-delete {
    background-color: var(--input-delete);
    color: var(--black);

}

.action-delete:hover {
    background-color: var(--input-delete-hover);
    color: var(--black);
}

.action-delete:disabled {
    background-color: var(--input-delete-disabled);
    ;
    color: var(--black);
}

button.action-submit {
    background-color: var(--input-action);
    color: var(--black);
}

.action-submit:hover {
    background-color: var(--input-action-hover);
    color: var(--black);
}

button.action-submit:disabled {
    background-color: var(--input-action-disabled);
    color: var(--black);
}

.action-update {
    background-color: var(--input-update);
}

.action-insert {
    background-color: var(--input-insert);
}

.reset-history-filter {
    font-size: small;
    color: var(--black);
    background-color: var(--input-disabled);
    border: 1px solid var(--black);
    padding: 4px 12px 4px 12px;
}

.reset-history-filter:hover {
    background-color: var(--border-grey);
}

td.time-column {
    background-color: var(--input-bg);
    font-weight: bold;
}

td.success {
    background-color: var(--input-success);
}

.add-button {
    display: inline;
    width: 300px;
    background-color: var(--input-save);
    float: right
}

#clinical-radio-div input[type="radio"] {
    display: inline;
    width: 33%;
    margin-left: -10px;
    margin-right: 10px
}

.unique-warning {
    text-align: center;
    border: var(--border-grey) 1px inset;
    background-color: var(--input-danger);
    color: var(--black);
    height: 30px
}

.urinalysis-tables {
    width: 800px;
    display: inline-block;
    vertical-align: top;
    margin-bottom: 100px;
    padding-right: 130px;
    text-align: left;
}

.pop-up-warning {
    text-align: center;
    border: var(--background-grey) 1px solid;
    background-color: var(--background-moved);
    color: var(--black);
    border-radius: 5px;
}

.left-freezer-container {
    height: 100%;
    width: 20%;
    margin-right: 50px;
    text-align: center;
}

.right-freezer-container {
    height: 100%;
    width: 20%;
    margin-left: 50px;
    text-align: center;
}

.storage-container {
    width: 99%;
    height: auto;
    display: flex;
    justify-content: space-between;
}

.storage-interface-container {
    width: 90%;
    height: 550px;
}

.back-div {
    width: 100%;
    height: 9%;
    margin-bottom: 10px;
}

.back-button {
    background-color: var(--primary-accent);
    float: unset;
    height: 100%;
    border-radius: 10px;
    padding: 0 20px;
    border: none;
}

.storage-interface {
    width: 100%;
    margin-top: 0;
    height: 85%;
}

.freezer {
    height: 550px;
    width: 100%;
    text-align: center;
}

.freezer-top {
    background-color: var(--background-green);
    width: 100%;
    height: 40px;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    border-left: 2px outset var(--border-green);
    border-right: 2px outset var(--border-green);
    border-top: 2px outset var(--border-green);
}

.freezer-bottom {
    background-color: var(--background-green);
    width: 100%;
    height: 40px;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    border-left: 2px outset var(--border-green);
    border-right: 2px outset var(--border-green);
    border-bottom: 2px outset var(--border-green);

}

.freezer-body {
    background-color: var(--background-grey);
    /*border: 2px outset var(--black);*/
    height: 450px;
    width: 100%;
}

.freezer-body button {
    color: var(--black);
    background-color: var(--background-grey);
    border-radius: 0;
    border-left: 2px outset var(--black);
    border-right: 2px outset var(--black);
    width: 100%;
    height: 450px;
    font-weight: bold;
    font-family: Dialog, sans-serif;
    font-size: x-large;
}

.freezer-body button:hover {
    background-color: var(--background-purple);
}

.draw {
    height: 15%;
    width: 80%;
    background-color: var(--background-grey);
    border: 2px outset var(--black);
    margin-left: 10%;
}

.draw-button {
    width: 100%;
    height: 100%;
    border: 2px outset var(--black);
    background-color: var(--background-grey);
    border-radius: 0;
    font-weight: bold;
    font-family: Dialog, sans-serif;
    font-size: larger;
    color: var(--black)
}

.draw-button:hover {
    background-color: var(--background-purple);
}

.shelf {
    display: inline-block;
    width: 19%;
    height: 20%;
    background-color: var(--background-grey);
    border: 2px outset var(--black);
}

.shelf-button {
    border: 2px outset var(--black);
    background-color: var(--background-grey);
    color: var(--black);
    width: 100%;
    height: 100%;
    font-weight: normal;
    font-family: Dialog, sans-serif;
    font-size: small;
    border-radius: 0;
}

.shelf-button:hover {
    background-color: var(--background-purple);
}

.box {
    display: inline-block;
    ;
    width: 25%;
    height: 25%;
    border: 2px outset var(--black);
    background-color: var(--background-grey);
    margin-bottom: 5%;
}

.box-button {
    border: 2px outset var(--black);
    background-color: var(--background-grey);
    color: var(--black);
    width: 100%;
    height: 100%;
    font-weight: bold;
    font-family: Dialog, sans-serif;
    font-size: large;
    border-radius: 0;
}

.box-button:hover {
    background-color: var(--background-purple);
}

.rack-container {
    padding: 5px;
    display: flex;
    justify-content: center;
    display: block;
}

.rack-warning {
    border-radius: 5px;
    border: 1px solid var(--border-danger);
    background-color: var(--background-danger);
}

.rack-container-96 {
    display: grid;
    grid-template-columns: 30px repeat(12, 1fr);
    grid-template-rows: 20px repeat(8, 1fr);
    border: 2px solid var(--black);
    padding: 10px;
    margin-bottom: 20px;
}

.rack-container-48 {
    display: grid;
    grid-template-columns: 30px repeat(8, 1fr);
    grid-template-rows: 20px repeat(6, 1fr);
    border: 2px solid var(--black);
    padding: 10px;
    margin-bottom: 20px;
    width: 87%;
}

.tube {
    width: 50px;
    height: 50px;
    border-radius: 5000px;
    border: 1px solid var(--black);
    box-shadow: 0 0 4px 0 var(--black);
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--secondary);

}


.tube:hover {
    border: 2px solid var(--background-purple);
}

.inner-tube {
    width: 70%;
    height: 70%;
    border-radius: 5000px;
    border: 1px solid var(--black);
    z-index: 0;
}

.sample-patient-summary {
    width: 100%;
}

.information-div {
    height: 100%;
    width: 30%;
    margin-right: 15px;
    text-align: center;
}

.collection-tab-selected {
    width: 48%;
    background-color: var(--border-grey);
    border: 2px inset var(--black);
    border-radius: 0;

}

.collection-tab-available {
    width: 48%;
    background-color: var(--background-grey);
    border: 2px outset var(--black);
    border-radius: 0;
}

.collection-tab-selected:hover {
    color: var(--black);
    background-color: var(--background-selected-hover);
}

.collection-tab-available:hover {
    color: var(--black);
    background-color: var(--background-available-hover);
}

.collection-storage-container {
    width: 100%;
    height: 450px;
    display: none;
}

.rack-information-table {
    width: 40%;
}

.collection-flex-div {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}

.check-clinical-th {
    width: 52%;
    border-left: 2px solid var(--secondary-dark);
    border-bottom: 2px solid var(--secondary-dark);
    border-top: 2px solid var(--secondary-dark);
}

.check-clinical-td {
    border-right: 2px solid var(--secondary-dark);
    border-bottom: 2px solid var(--secondary-dark);
    border-top: 2px solid var(--secondary-dark);
}

.mini-clinical-table {
    border: none;
    width: 97.3%;
}

.mini-clinical-table td {
    border: none;
}

.mini-clinical-disease {
    width: 27%;
}

.mini-clinical-type {
    width: 68%;
}

.mini-clinical-delete {
    padding: 1px 13px 1px 13px;
    background-color: var(--input-disabled);
    border: 1px solid var(--black);
    float: right;
    color: var(--black);
    border-radius: 8px;
}

.mini-clinical-delete:hover {
    background-color: var(--background);
    color: var(--black);
}

.help {
    background-color: var(--secondary-light);
    color: var(--black);
    padding: 3px;
    width: auto;
    border-radius: 0;
    border: 2px solid var(--background-grey);
    height: 30px;
    text-align: start;
}

.help-container {
    position: fixed;
    width: 97.5%;
    left: 1%;
    top: 12%;
    height: 87%;
    background-color: var(--background);
    color: var(--black);
    border-radius: 20px;
    border: 2px solid var(--primary-light);
    z-index: 998;
    text-align: left;
    padding: 20px;
    display: None;
}

.help-examples {
    color: var(--black);
    width: 100%;
}

.help-examples th {
    background-color: var(--background-blue);
}

.help-examples td {
    background-color: var(--background);
}

.help-description,
.help-actions {
    margin-bottom: 10px;
    width: 100%;
}

.help-actions td {
    border: none;
}

table.help-actions td.center-text {
    text-align: center;
}

table.help-actions td.set-width-5 {
    width: 5%;
}

table.help-actions td.set-width-10 {
    width: 10%;
}

.help-title {
    margin-top: -13px;
}

div.dt-control-mimic {
    background-color: var(--background-mimic);
    color: var(--white);
    font-size: small;
    border: none;
    border-radius: 100%;
    width: 20px;
    height: 20px;
    text-align: center;
    margin-left: 25%;
}

.vg-prefix {
    display: flex;
    align-items: center;
    width: 100%;
    background: var(--background);
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 2px solid #DDDDDDDD;
    padding-left: 0.5rem;
    overflow: hidden;
    font-family: sans-serif;
}

.vg-prefix .prefix {
    font-weight: 300;
    font-size: 14px;
    color: var(--text-light);
}

.vg-prefix .prefix-select {
    background-color: var(--white);
    border: none;
    font-weight: 300;
    font-size: 14px;
    color: var(--text-muted);
    direction: rtl;
    width: auto;
}

.vg-prefix input {
    flex-grow: 1;
    font-size: 14px;
    background: var(--background);
    border: none;
    outline: none;
    padding: 0.2rem;
}

.decode-failure {
    width: 50px;
    height: 50px;
    border-radius: 5000px;
    border: 1px solid var(--black);
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--border-red);
}

.decode-failure:hover {
    border: 2px solid #FFaaAA;
}

.inner-tube:hover {
    border: 1px solid var(--black);
}

.shelf-percentage {
    height: 95%;
    background-color: var(--background-percentage);
    position: relative;
    bottom: 64px;
    left: 2px
}

.row-percentage {
    height: 96%;
    background-color: var(--background-percentage);
    position: relative;
    bottom: 88px;
    left: 2px
}

.box-percentage {
    height: 97%;
    background-color: var(--background-percentage);
    position: relative;
    bottom: 111px;
    left: 2px
}

.shelf-percentage {
    cursor: pointer
}

.row-percentage:hover {
    cursor: pointer
}

.box-percentage:hover {
    cursor: pointer
}

.htz-verify-errors {
    text-align: left;
    background-color: var(--background-error);
    border: 1px solid #7A111166;
    border-radius: 10px;
    width: 80%;
    padding: 6px
}

.urilyzer-verify-errors {
    text-align: left;
    background-color: var(--background-error);
    border: 1px solid #7A111166;
    border-radius: 10px;
    width: 80%;
    padding: 6px;
    margin-bottom: 15px;
}

.urilyzer-verify-button {
    background-color: var(--primary-accent);
    border: 2px solid var(--border-dark);
    color: var(--white);
    padding: 3px 10px;
    display: block;
    width: 100%;
    border-radius: 10px;
}

.aliquot-add {
    position: relative;
    left: -15px;
    padding: 0 7px 0 7px;
    border-radius: 300px;
    background-color: var(--background-aliquot);
    border: 1px solid var(--border-aliquot);
}

.aliquot-add:hover {
    background-color: var(--border-aliquot);
    border: var(--background-aliquot);
}

.aliquot-remove {
    position: relative;
    right: -15px;
    padding: 0 9px;
    border-radius: 300px;
    background-color: var(--background-aliquot);
    border: 1px solid var(--border-aliquot);
}

.aliquot-remove:hover {
    background-color: var(--border-aliquot);
    border: var(--background-aliquot);
}

.aliquot-row {
    border: 1px solid var(--background-grey);
}

.search-box-tr {
    border: none;
}

.search-box-tr th {
    background-color: var(--white);
    border: none;
    color: var(--black);
}

.search-box-tr input[readonly] {
    margin-top: 25px;
}

.filter-div {
    width: 100%;
    height: 50%
}

.filter-div input {
    width: 100%
}

.exact-div {
    height: 25px;
    min-width: fit-content;
    display: flex;
}

.exact-div input {
    position: relative;
    left: 2%
}

.exact-div label {
    position: relative;
    left: 7%
}

.dropdown-filter {
    height: 50px;
    display: flex;
    align-items: flex-end;
}

.tab-container {
    display: flex;
    width: 101vw;
    margin: 15px 0 20px 0;
    position: relative;
    left: -2.7%;
    border-bottom: 2px solid var(--border-green);
}

.gooey-tab {
    background-color: var(--border-green);
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    width: 100px;
    margin-left: 5px;
}

.search-tab {
    background-color: var(--background-blue);
    margin-left: 5px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    width: 100px;
}

.gooey-tab:hover {
    cursor: pointer;
    color: var(--white);
}

.search-tab:hover {
    cursor: pointer;
    color: var(--white);
}

.range-filter {
    width: 100%;
    padding-top: 15px
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    pointer-events: all;
    width: 8px;
    height: 8px;
    background-color: var(--background);
    border-radius: 50%;
    box-shadow: 0 0 0 1px var(--input-active);
    cursor: pointer;
}

input[type=range]::-moz-range-thumb {
    -webkit-appearance: none;
    pointer-events: all;
    width: 8px;
    height: 8px;
    background-color: var(--background);
    border-radius: 50%;
    box-shadow: 0 0 0 1px var(--input-active);
    cursor: pointer;
}

input[type=range]::-webkit-slider-thumb:hover {
    background: #f7f7f7;
}

input[type=range]::-webkit-slider-thumb:active {
    box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;
    -webkit-box-shadow: inset 0 0 3px #387bbe, 0 0 9px #387bbe;
}

input[type="range"] {
    -webkit-appearance: none;
    appearance: none;
    height: 2px;
    width: 8%;
    position: absolute;
    background-color: var(--input-active);
    pointer-events: none;
}

.rangeNumber {
    width: 45px;
    height: 20px;
    text-align: center;
    -webkit-appearance: textfield
}

div.icon-div {
    border-radius: 300px;
    width: 35px;
    height: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: x-large;
    margin-top: 6px;
}

div .add-collection-icon-div {
    width: 4%;
    height: 35px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: x-large;
    margin: 0 5px 0 0;
}

#add-collection-tab .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--background-danger-solid);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

#requested-samples-tab .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--background-danger-solid);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

.add-aliquots-tab .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--background-danger-solid);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

.warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--background-danger-solid);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
    margin-bottom: 5px;
    /* Add this line */
}

.duplicate {
    border: 2px solid var(--border-red);
}

.prefilled {
    border: 2px solid var(--input-prefilled);
}


#add-aliquots-buttons-div {
    display: flex;
    justify-content: right;
    padding-right: 10px;
    width: 50%;
    margin-left: 25%
}

#urilyzer-verify-tab .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--border-danger);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

#sample-request-tab .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--background-danger-solid);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

#add-patient-tab .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--border-danger);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

#editable-demographics-table .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--border-danger);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

#create-experiment-tab .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--background-danger-solid);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

#editable-experiment-info-table .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--background-danger-solid);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
}

#end-experiment-form .warning-div {
    background-color: var(--background-danger);
    border: 1px solid var(--background-danger-solid);
    font-size: small;
    text-align: left;
    padding: 2px 10px;
    border-radius: 5px;
    width: 97%;
    margin-bottom: 10px;
}


i {
    color: var(--border-grey);
    font-size: large;
}

i:hover {
    cursor: pointer;
    color: var(--black)
}

.fa-eye {
    color: var(--icon-blue)
}

.fa-flask {
    color: var(--icon-flask)
}

.fa-trash {
    color: var(--text-warning)
}

.fa-edit {
    color: var(--icon-edit)
}

.fa-plus {
    color: var(--icon-plus)
}

.fa-check-circle {
    color: var(--icon-check)
}

.fa-undo {
    color: var(--icon-undo);
}

.fa-times-circle {
    color: var(--border-red);
}

.fa-circle-exclamation {
    color: var(--border-red)
}

.icon-anchor {
    font-size: large;
    color: var(--border-grey);
    display: flex;
    justify-content: center;
}

div.title-one {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: auto;
}

div.title-two {
    width: 7%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.dt-additional-info-list {
    margin: 0;
    font-size: small;
    padding-left: 2%
}

div.dt-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.embedded-table {
    width: auto;
}

.embedded-table th {
    background-color: var(--background-light);
    font-weight: bold;
    color: var(--black);
    font-size: small;
}

.embedded-table td.bold {
    text-align: left;
    min-width: 100px;
    padding: 0 10px !important;
    height: 30px !important;
    color: var(--text-black);
    font-size: small;
    font-weight: bold;
}

div.title-div {
    margin-bottom: 30px;
    text-align: left;
    display: flex;
    justify-content: space-between;
}

.embedded-table td {
    min-width: 100px;
    padding: 0 10px !important;
    height: 30px !important;
    font-size: small;
    text-align: right;
}

tr.even {
    background-color: var(--background-lighter) !important;
}

div.login-img {
    scale: 0.95;
    width: 45%;
    display: flex;
    justify-content: center;
    left: 0
}

.login-div {
    width: 45%;
    text-align: left;
    display: flex;
    align-items: center;
}

.login-table {
    width: 100%;
    border: none !important;
}

.login-table td {
    border: none;
}

.login-input {
    border-top: none;
    border-left: none;
    border-right: none
}

.login-input:focus {
    outline: none;
}

.login-check {
    border-radius: 100% !important;
}

.action-skipped:nth-of-type(even) {
    background-color: var(--input-skipped);
}

.action-created:nth-of-type(even) {
    background-color: var(--input-created);
}

.action-replaced:nth-of-type(even) {
    background-color: var(--input-replaced);
}

.action-moved:nth-of-type(even) {
    background-color: var(--input-moved);
}

.action-error:nth-of-type(even) {
    background-color: var(--input-error);
}

/*  */

.action-skipped:nth-of-type(odd) {
    background-color: var(--background-skipped);
}

.action-created:nth-of-type(odd) {
    background-color: var(--background-created);
}

.action-replaced:nth-of-type(odd) {
    background-color: var(--background-replaced);
}

.action-moved:nth-of-type(odd) {
    background-color: var(--background-moved-alt);
}

.action-error:nth-of-type(odd) {
    background-color: var(--background-error-alt);
}

.action-cancel {
    background-color: var(--background-grey);
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    color: var(--black);
    margin-top: 10px;
}

.action-save {
    background-color: var(--background-created);
    padding: 3px 10px;
    border-radius: 3px;
    border: none;
    color: var(--black);
    margin-top: 10px;
}

button.action-cancel:hover {
    background-color: var(--border-grey);
}

button.action-save:hover {
    background-color: var(--primary-accent);

}

.tab-information {
    position: relative;
}

/*for the rack_scan visualisation*/
#rack-visualisation {
    width: 90%;
    height: auto;
    margin: 0 auto;
    min-width: fit-content;
}

/* set static widths of the cols in the input form tables */
div[id^="sample_type_"] table td.secondary-field {
    width: 35%;
}

div[id^="sample_type_"] table td {
    width: 55%;
}

.error-traceback {
    max-width: 90%;
    background-color: var(--background-error-traceback);
    border: 1px solid var(--border-error-traceback);
    padding: 1rem;
    overflow-x: auto;
    white-space: pre-wrap;
    word-wrap: break-word;
}

.alert {
    position: relative;
    margin-left: 150px;
    transition: margin-left 0.3s ease;
    width: calc((100% - 130px) * 0.97);
}


#notifications .notification-alert {
    margin-left: 0 !important;
    width: 100% !important;
    margin-bottom: 5px;
    font-size: medium;
    border-radius: 5px;
    padding: 2px 10px;
    margin-left: 0;
    width: 100%;
}

.notification-container {
    width: 97%;
    margin-bottom: 40px;
}

div.datatable {
    width: 97%;
}