html {
    font-size: 16px;
}

body {
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    display: flex;
    min-height: 100dvh;
}

.sidebar {
    width: 20%;
    background-color: #15284B;
    height: 100dvh;
    color: white;
    padding: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    max-width: 250px;
    position: relative;
}

.leaflet-top.leaflet-right {
    display: flex;
}

.leaflet-editing-icon:nth-child(2) {
    background-color: #CD9700 !important;
}

.reports-table textarea {
    width: calc(100% - 10px);
    height: calc(100% - 10px);
}

@media (min-width: 768px) {
    .leaflet-sidebar-right~.leaflet-control-container .leaflet-right {
        transition:right .35s !important;
    }
}

@media (min-width: 768px) and (max-width:991px) {
    .leaflet-sidebar-right~.leaflet-control-container .leaflet-right {
        right:315px
    }
}

@media (min-width: 992px) and (max-width:1199px) {
    body .leaflet-sidebar-right~.leaflet-control-container .leaflet-right {
        right:360px !important;
    }
}

@media (min-width: 1200px) {
    .leaflet-sidebar-right~.leaflet-control-container .leaflet-right {
        right:360px !important
    }
}

.leaflet-sidebar-right.collapsed~.leaflet-control-container .leaflet-right {
    right: 50px !important;
}

.leaflet-sidebar .sidebar-hidden {
    display: none !important;
}

.leaflet-control-attribution.leaflet-control {
    margin-right: 10px !important;
}

.sidebar {
    display: none;
}

.sidebar > a{
    text-align: center;
}

.sidebar.active {
    display: flex;
}

#review-questionnaires, #questionnaire-tenant-select {
    max-width: 150px;
}

label[for='questionnaire-tenant-select'],
label[for='review-questionnaires'] {
    flex-direction: column;
    gap: 5px !important;
    justify-content: left !important;
    align-items: start !important;
}

label[for='filter-deleted'] {
    flex-direction: row !important;
    width: 110px;
}

#menu {
    cursor: pointer;
    padding: 5px;
    font-size: 24px;
    padding-bottom: 10px;
}

.sidebar nav {
    flex-grow: 1;
}

.sidebar nav ul {
    list-style: none;
    padding: 0;
    width: 100%;
}

.sidebar nav li {
    margin-bottom: 4px;
    width: 100%;
}

.sidebar nav a {
    color: white;
    text-decoration: none;
    width: 100%;
    display: block;
    padding: 5px;
}

.sidebar nav li:hover, .sidebar nav li.selected {
    background-color: #213d72;
}

.main-content {
    width: 80%;
    height: 100dvh;
    overflow: auto;
    flex-grow: 1;
}

main {
    flex-grow: 1;
}

header {
    background-color: white;
    padding: 10px;
    padding-bottom: 0;
    color: black;
    position: sticky;
    top: 0;
    z-index: 2000;
    display: flex;
    flex-wrap: wrap;
    border-bottom: 2px solid lightgray;
    align-items: center;
}

header nav {
    border-top: 2px solid lightgray;
    min-width: calc(100% + 20px);
    margin-left: -10px;
    border-bottom: 2px solid lightgray;
    margin-bottom: -2px;
}

header nav a {
    text-decoration: none;
    padding: 10px 20px;
    display: inline-block;
    color: gray;
    font-weight: bold;
    border-bottom: 2px solid lightgray;
    margin-bottom: -2px;
}

header nav a:hover, header nav a.selected {
    color:#CD9700;
    border-bottom: 2px solid #CD9700;
}

.sidebar img:not(.detail-flag) {
    width: 110px;
    max-width: 100%;
}

header > a > i {
    color: black;
    font-size: 2em;
}

h1 { 
    margin: 0;
    letter-spacing: 2px;
    flex-grow: 1;
    padding-bottom: 10px;
}

h2 { 
    margin: 0;
    text-align: center;
    color: black;
    padding: 5px;
}

h1 a {
    text-decoration: none;
    color: black;
}

h3 {
    text-decoration: underline;
}

h4 {
    font-style: italic;
}

.table-wrapper {
    display: block !important;
    overflow-y: visible;
    overflow-x: visible;
    max-width: 100%;
}

.table-wrapper.show-down {
    overflow-x: visible;
}

.disposition-report-table, .colo-report-table, .dm-report-table {
    margin-top: 40px;
}

.dm-report-table .tail-select {
    max-width:  100px !important;
}

.disposition-report-table > tr > *:nth-child(8) {
    background-color: rgb(128, 204, 255);
}

.disposition-report-table > tr > *:nth-child(9) {
    background-color: rgb(138, 255, 196);
}

.bold {
    font-weight: bold !important;
}

/*.sortable-table-wrapper {
    min-height: 300px;
}*/

.list, table {
    display: table;
    width: 100%;
    margin: 10px 0;
}

.list {
    border-collapse: collapse;
    overflow: hidden;
    margin: 0;
    height: 100%;
}

th.sortable {
    cursor: pointer;
}

.list-row, tr {
    transition: background-color 0.2s;
}

.list-row {
    cursor: pointer;
}

.list-row td:last-child {
    cursor: initial;
}

.list-row td {
    height: 1px;
}

.list-row-dm-approved::before {
    content: "✔️ ";
}

.list-row td a {
    display: flex;
    height: 100%;
    flex-direction: column;
    width: 100%;
}

.list-row td.list-row-dms a {
    display: block;
}

.list-row-events div:not(:last-child) {
    margin-bottom: 5px;
}

.list-timeline {
    max-width: calc(100vw - 50px);
}

.sidebar.active + .main-content .list-timeline {
    max-width: calc(100vw - 305px);
}

td, th {
    text-align: left;
    height: 1px;
    padding: 8px;
    border-bottom: 2px solid lightgray;
    vertical-align: top;
}

td > a:not(.tda-cancel) {
    text-decoration: none;
    color: black;
    display: block;
    padding: 5px;
    position: relative;
}

td input[type="text"], td input[type="date"] {
    width: calc(100% - 14px);
}

td input[type="number"] {
    max-width: 70px;
}

.new-task-input:empty:not(:focus):before{
    content:attr(data-ph);
    color:grey;
    font-style:italic;
}

td:not(.task-td) .select-wrapper {
    width: 100%;
}

td select {
    width: 100%;
}

.select-wrapper {
    display: inline-block;
}

.details-column .select-wrapper {
    min-width: 0;
}

.select-dropdown {
    z-index: 10000 !important;
}

.details-column select {
    max-width: 100%;
}

/*.list-row:nth-child(2n+1), tr:nth-child(2n+1) {
    background-color: #15284b20;
}

.extended-rows .list-row:nth-child(4n+2), .extended-rows tr:nth-child(4n+2),
.extended-rows .list-row:nth-child(4n+3), .extended-rows tr:nth-child(4n+3) {
    background-color: #15284b20;
}

.extended-rows .list-row:nth-child(4n), .extended-rows tr:nth-child(4n),
.extended-rows .list-row:nth-child(4n+1), .extended-rows tr:nth-child(4n+1) {
    background-color: initial;
}

tr.force-white, tr.force-white + .extended-row {
    background-color: initial !important;
}

tr.force-blue, tr.force-blue + .extended-row {
    background-color: #15284b20 !important;
}*/

.list-row:not(:first-child):hover, tr:not(:first-child):hover {
    background-color: #15284b40 !important;
}

th {
    user-select: none;
    /*background-color: #15284b40 !important;*/
}

th input[type='date'] {
    display: block;
}

.list-row-flags a {
    flex-direction: row !important;
    height: initial;
    align-items: baseline;
    justify-content: initial !important;
}

/** use detail-flags alot, but list-row-flags is the one different class */
.list-row-flags img, .detail-flag {
    width: 20px;
    transition: opacity 0.2s;
    cursor: pointer;
    margin-left: 2px;
}

.ce-flag {
    cursor: text;
    vertical-align: middle;
}

input[type="checkbox"]:not(:checked) ~ span img {
    opacity: 0.4;
}

.detail-flag:hover {
    opacity: 1 !important;
}

.hidden, .hidden-filter, .colo-hidden, .hidden-page {
    display: none !important;
}

.invisible {
    visibility: hidden !important;
}

.colo-logo {
    width: 30px;
    background-color: white;
}

.big-logos .colo-logo {
    width: 60px;
}

.client-questions-caret {
    margin-right: 5px;
    font-size: 20px;
    user-select: none;
    cursor: pointer;
    vertical-align: middle;
}
.client-questions-caret +span {
    user-select: none;
    cursor: pointer;
    vertical-align: middle;
}

label[for='questionnaire-tenant-select'] .tail-select .select-dropdown ul li.dropdown-option:first-child::before {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pg0KPCEtLSBVcGxvYWRlZCB0bzogU1ZHIFJlcG8sIHd3dy5zdmdyZXBvLmNvbSwgR2VuZXJhdG9yOiBTVkcgUmVwbyBNaXhlciBUb29scyAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIGZpbGw9IiMwMDAwMDAiIHZlcnNpb249IjEuMSIgaWQ9IkNhcGFfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgDQoJIHdpZHRoPSI4MDBweCIgaGVpZ2h0PSI4MDBweCIgdmlld0JveD0iMCAwIDQ1LjQwMiA0NS40MDIiDQoJIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZD0iTTQxLjI2NywxOC41NTdIMjYuODMyVjQuMTM0QzI2LjgzMiwxLjg1MSwyNC45OSwwLDIyLjcwNywwYy0yLjI4MywwLTQuMTI0LDEuODUxLTQuMTI0LDQuMTM1djE0LjQzMkg0LjE0MQ0KCQljLTIuMjgzLDAtNC4xMzksMS44NTEtNC4xMzgsNC4xMzVjLTAuMDAxLDEuMTQxLDAuNDYsMi4xODcsMS4yMDcsMi45MzRjMC43NDgsMC43NDksMS43OCwxLjIyMiwyLjkyLDEuMjIyaDE0LjQ1M1Y0MS4yNw0KCQljMCwxLjE0MiwwLjQ1MywyLjE3NiwxLjIwMSwyLjkyMmMwLjc0OCwwLjc0OCwxLjc3NywxLjIxMSwyLjkxOSwxLjIxMWMyLjI4MiwwLDQuMTI5LTEuODUxLDQuMTI5LTQuMTMzVjI2Ljg1N2gxNC40MzUNCgkJYzIuMjgzLDAsNC4xMzQtMS44NjcsNC4xMzMtNC4xNUM0NS4zOTksMjAuNDI1LDQzLjU0OCwxOC41NTcsNDEuMjY3LDE4LjU1N3oiLz4NCjwvZz4NCjwvc3ZnPg==);
    background-size: contain;
    background-origin: content-box;
    padding: 10px;
}

label[for='question-is-exclusively-authorized'] {
    margin-left: 30px;
}

.is-me-button {
    margin-bottom: 5px !important;
}

.block-labels label {
    margin-left: 10px;
    margin-bottom: 4px;
}

.logo-error {
    background-color: rgba(255, 255, 255, 0.7);
    padding: 2px;
    border-radius: 2px;
}

.leaflet-tooltip {
    background-color: none !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    background-color: transparent !important;
    pointer-events: all !important;
    cursor: pointer !important;
}

.pagination-controls {
    position: sticky;
    bottom: 0;
    background-color: #f3f4f3;
    text-align: center;
    padding: 10px;
}

.project-list-wrapper .pagination-controls,
.task-table-wrapper .pagination-controls {
    display: flex;
    gap: 5px;
    justify-content: center;
    background-color: white;
}

.relative {
    position: relative;
}

.shown-block {
    display: block !important; 
}

#user-info, #login, #register {
    position: relative;
}

#user-info {
    display: flex;
    padding-bottom: 10px;
    margin-left:auto;
}

#user-menu > div:nth-child(2) {
    text-align: center;
}

#user-circle {
    background-image: url("/assets/images/default.png");
    display: inline-block;
    padding: 10px;
    border-radius: 50%;
    color: #15284B;
    font-weight: bold;
    width: 24px;
    height: 24px;
    line-height: 24px;
    cursor: pointer;
    position: relative;
    user-select: none;
    background-position: center;
    background-size: contain;
}

#user-text {
    margin-left: 10px;
    text-align: left;
    cursor: pointer;
    user-select: none;
}

#user-email {
    font-size: 12px;
    cursor: pointer;
    text-decoration: none;
}

#user-menu {
    position: absolute;
    bottom: -10px;
    transform: translate(-33.33%, 100%);
    background-color: white;
    color: black;
    width: 150%;
    padding: 10px 0;
    z-index: 2500;
    border: 2px solid lightgray;
}

#user-menu button {
    margin-right: 10px;
    margin-top: 10px;
    display: block;
    margin-left: auto;
}

label {
    font-weight: bold;
    user-select: none;
    cursor: pointer;
}

.input-area {
    text-align: center;
    margin-top: 10px;
}

label[for="list-input"] {
    text-align: center;
    margin: 10px;
}

input, textarea, .faux-input, select, .ce {
    font-size: 16px;
    font-family: 'Montserrat', sans-serif;
    padding: 5px;
}

.ce {
    border: 1px solid black;
    border-radius: 2px;
    font-weight: normal;
    min-height: 50px;
    cursor: text;
    position: relative;
    padding-bottom: 30px;
    background-color: white;
    display: inline-block;
    width: calc(100% - 10px);
}

label[for="project-notes-wrapper"] {
    display: flex;
    margin-top: 5px;
    margin-top: 10px;
    width: 100%;
    vertical-align: top;
}

#project-notes-wrapper {
    margin-left: 10px;
}

.ce-wrapper {
    display: inline-block;
    position: relative;
    flex-grow: 1;
}

.home .ce-wrapper {
    width: 100%;
}

.ce-appendix {
    position: absolute;
    bottom: 5px;
    right: 5px;
    cursor: pointer;
}

.ce-flag-list {
    margin-right: 5px;
    display: inline-block;
}

.tab, .home, .me, .master, .tuesday, .approval, .profiles, .colo, .stripe, .upload, .calendar, .expired {
    margin: 10px;
}

.profiles tr {
    cursor: pointer;
}

.profiles-modal {
    padding: 10px;
}

.profiles-modal label > span {
    display: block;
}

.profiles-modal button {
    padding: 5px;
    margin-top: 10px;
    margin-left: auto;
    float: right;
    position: sticky;
    bottom: 10px;
}

.profiles-wide {
    width: 100%;
}

.profiles-wide textarea {
    width: 500px;
}

.profile-fields {
    gap: 20px;
    display: flex;
    flex-wrap: wrap;
}

.opts {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.opts label {
    align-items: center;
    display: inline-flex;
}

.opts label span {
    margin-right: 5px;
}

.create-folder-link button {
    padding: 5px;
    margin-top: 10px;
}

.create-folder-link label {
    display: block;
    margin-top: 10px;
}

.stripe div {
    margin-bottom: 15px;
}

.stripe a {
    font-size: 16px;
}

.tuesday-mini {
    font-size: 12px;
}

.tuesday-hide {
    margin-bottom: 10px;
    float: right;
}

.home, .master, .areas, .colo {
    position: relative;
}

.colo a {
    display: block;
    margin: auto;
    text-align: center;
    font-size: 125%;
}

.details-columns {
    max-width: 1000px;
    margin: auto;
}

.details-columns-3 {
    max-width: initial;
}

.details-column {
    width: calc(50% - 5px);
    display: inline-block;
    vertical-align: top;
}

.details-column-3 {
    width: calc(33% - 6.67px);
}

.details-column:first-child {
    margin-right: 10px;
}

.details-column-3:last-child {
    margin-left: 10px;
}

.details-column label {
    display: flex;
    margin-top: 5px;
    align-items: center;
}

.details-column label > span, .details-column .checkbox-header {
    flex-grow: 1;
}

label[for='details-approved-dms'] {
    align-items: center;
    justify-content: end;
}

.details-column label[for='details-approved-dms'] > span {
    flex-grow: initial;
}

.navigation-tools .checkbox-header {
    margin-right: 5px;
}

.toast {
    position: fixed;
    z-index: 4000;
    top: 10%;
    padding: 10px;
    font-size: 14px;
    background-color: white;
    color: black;
    border-radius: 10px;
    opacity: 0;
    transition: opacity 0.5s, transform 0.5s;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    border: 2px solid lightgray;
    cursor: pointer;
}

.toast-shown {
    opacity: 1;
}

.checkbox-section {
    position: relative;
    display: flex;
}

.checkbox-section.inline {
    display: block;
}

.checkbox-section.inline > .checkbox-header {
   margin-right: 5px;
}

.checkbox-section.modified {
    display: inline-block;
}

.project-list-wrapper, .task-table-wrapper {
    overflow-y: hidden;
    display: flex;
    flex-direction: column;
    height: calc(100vh - 130px) !important;
}

.task-table-wrapper {
    height: calc(100vh - 140px) !important;
}

.list-row {
    position: relative;
}

.list-row:not(.undo-padding) td {
    padding-bottom: 380px;
}

.list-timeline {
    width: 100%;
    height: 380px;
    position: absolute;
    bottom: 0;
    left: 0;
}

.list-timeline .timeline-wrapper > *:not(.timeline) {
    display: none;
}

.list-timeline .timeline-wrapper > .timeline {
    height: 350px;
    max-height: 350px;
    margin: 10px;
}

.project-list-wrapper label[for='list-checkbox'] {
    margin-right: 10px;
}

.project-list-wrapper label[for='list-my-notes'] {
    margin-left: 10px;
}

.project-list-wrapper .table-wrapper,
.task-table-wrapper .table-wrapper {
    overflow: auto !important;
    margin: 10px 0;
    height: 100%;
}

.checkbox-header {
    margin: 0;
    font-weight: bold;
    font-size: 16px;
}

.checkbox-value {
    border: 1px solid black;
    padding: 5px;
    border-radius: 2px;
    cursor: pointer;
    user-select: none;
    margin-left: 10px;
    position: relative;
    min-width: 130px;
    margin-left: auto;
    padding-right: 35px;
    min-height: 18.75px;
    margin-top: 5px;
    background-color: white;
    color: black;
    font-family: 'Montserrat', sans-serif;
}

.checkbox-value::after {
    width: 0;
    height: 0;
    display: block;
    position: absolute;
    right: 15px;
    bottom: 22px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f107";
}

.checkbox-value > .checkbox-list {
    display: none;
    position:absolute;
    background-color: white;
    border: 1px solid black;
    border-top: none;
    max-height: 200px;
    overflow: auto;
    width: 100%;
    z-index: 2;
    background-color: white;
    bottom: 0;
    transform: translateY(100%);
    left: -1px;
    bottom: -1px;
}

.checkbox-value.selected > .checkbox-list {
    display: block;
}

.checkbox-list > label {
    display: block;
    font-size: 14px;
    font-weight: normal;
    user-select: none;
    cursor: pointer;
    padding: 5px;
}

.checkbox-section.inline label  {
    display: inline-block;
    padding: 0;
}

.checkbox-list > label > span {
    vertical-align: top;
    margin-right: 5px;
}

.timeline {
    position: relative;
    border: 2px solid lightgray;
    height: 700px;
    width: calc(100% - 8px);
    overflow-x: auto;
    overflow-y: auto;
}

.line-wrapper {
    position: absolute;
    top: calc(50% - 2px);
}

.line {
    width: calc( 100% - 80px ); /* match js */
    height: 4px;
    background-color: black;
    position: absolute;
    left: 40px;
}

.dot {
    border-radius: 50%;
    background-color: black;
    width: 10px;
    height: 10px;
    position: absolute;
    top: calc( 50% - 5px );
    transform: translateX(-50%);
}

.date-dot {
    background-color: grey;
}

.date-label, .event-label, .date-previewer {
    position: absolute;
    transform: translateX(-50%);
    font-size: 12px;
    max-width: 7%;
    text-align: center;
}

.date-label {
    top: 5px;
    color: grey;
}

.today-date-label {
    color: #CD9700;
    text-decoration: underline;
}

.today-dot {
    background-color: #CD9700;
}

.event-label {
    top: calc(50% + 10px);
    transform: translateX(-50%);
    cursor: pointer;
    user-select: none;
}

.event-note {
    font-size: 75%;
    font-style: italic;
}

/*div.event-label-position-1 {
    transform: translate(-50%, 100%);
}

div.event-label-position-2 {
    top: calc(50% - 10px);
    transform: translate(-50%, -100%);
}

div.event-label-position-3 {
    top: calc(50% - 10px);
    transform: translate(-50%, -200%);
}*/

.date-previewer {
    top: calc(50% + 10px);
    color: #15284B;
}

.moving {
    opacity: 0.2;
}

button, .button-link {
    font-size: 16px;
    background-color: #15284B;
    cursor: pointer;
    transition: 0.2s;
    text-align: center;
    color: white;
    border: none;
    border-radius: 8px;
}

button i, .button-link i {
    color: white;
}

button:hover, .button-link:hover {
    background-color: #213d72;
}

.button-subtle {
    background-color: transparent !important;
    color: black;
    font-size: 10pt;
}

.my-deals-quick-box {
    background-color: rgb(216, 216, 216);
    padding: 5px;
    margin: 5px 0;
}

.my-deals-quick-box a {
    margin: 5px;
    font-size: 90%;
    text-decoration: none;
}

.quick-dead, .quick-sold, .quick-procurement {
    display: none !important;
}

.quick-precon {
    background-color: purple;
    background-color: rgb(197, 0, 197);
}

.quick-precon {
    background-color: rgb(117, 77, 1);
}
.quick-precon:hover {
    background-color: rgb(180, 117, 0);
}

.quick-construction {
    background-color: green;
}
.quick-construction:hover {
    background-color: rgb(0, 175, 0);
}

.quick-disposition {
    background-color: rgb(0, 88, 146);
}
.quick-disposition:hover {
    background-color: rgb(51, 168, 247);
}

.sm-wrapper > div {
    margin-left: 20px;
}

.sm-wrapper > div > button {
    margin-top: 10px;
    margin-right: 10px;
}

.timeline-table table {
    min-width: 1600px;
}

.client-questions h4 {
    margin-top: 0 !important;
}

.help-colo h4 {
    margin-bottom: 0 !important;
}

.timeline-wrapper button, .lock-button {
    margin-left: 5px;
    width: 40px;
    height: 40px;
    margin-bottom: 5px;
}

.timeline-wrapper table button, .task-table-wrapper button {
    margin-left: 0;
    margin-bottom: 0;
    height: calc(100% - 4px);
    width: initial;
}

.task-table-wrapper button {
    margin-left: 5px;
}

.timeline-wrapper label {
    vertical-align: top;
}

.right-float {
    float: right;
}

.messages, .my-notifications-wrapper {
    border: 2px solid lightgray;
    padding: 20px;
    max-width: 1000px;
    margin: auto;
    position: relative;
}

.messages-list {
    height: 350px;
    overflow: auto;
}

.my-notifications {
    height: 350px;
    max-height: 350px;
    overflow: auto;
}

.match-matrix {
    max-width: 275px;
    overflow: auto;
}

/* Leaflet sidebar */

.leaflet-sidebar-header, .leaflet-sidebar-tabs>li.active, .leaflet-sidebar-tabs>ul>li.active {
    background-color: #15284B !important;
}

.leaflet-sidebar-right {
    width: 350px ;
    max-width: 350px !important;
    z-index: 1001 !important;
}

.leaflet-sidebar-pane.active {
    display: flex !important;
    flex-direction: column !important;
}

.leaflet-sidebar-content > *:not(.active) {
    display: none !important;
}

.leaflet-sidebar-content > * {
    font: 16px Montserrat, sans-serif;
}

.match-box {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    gap: 10px;
}

.match-box .match {
    gap: 0 !important;
    flex-direction: column;
}

.match-filters {
    margin: 20px 10px;
}

label[for='filter-plots'] {
    flex-direction: row !important;
    align-items: center !important;
}

/* End Leaflet sidebar */

.lease-checkbox {
    margin-right: 5px;
}

.leaflet-popup, .leaflet-tooltip {
    transition: none !important;
}

.match-box button, .agree-modal button, .leaflet-popup-content button, .confidentiality-modal button {
    padding: 5px;
    margin: 5px 5px 0 5px;
}

.button-link {
    padding: 10px;
    display: inline-block;
}

.ma-left-five {
    margin-left: 5px;
}

.leaflet-popup-content button {
    margin-left: 0;
    font-size: 100%;
}

.margin-five {
    margin-top: 5px;
}

.match-box h4,h5,h6 {
    margin: 0;
}

.match-filters button, .request-new-button {
    padding: 5px;
}

.agree-modal-buttons, .confidentiality-modal-buttons {
    margin-left: auto;
    text-align: right;
}

.match-box .match {
    display: flex;
    gap: 10px;
    cursor: pointer;
    padding-bottom: 10px;
    border-bottom: 2px solid lightgray;
}

.match-box .match:last-child {
    border-bottom: 0;
}

.match-box > .match > div:nth-child(2) {
    flex-grow: 1;
}

.message {
    display: flex;
    margin: 10px 0;
}

.message-user {
    background-color: #CD9700;
    padding: 10px;
    border-radius: 50%;
    color: #15284B;
    font-weight: bold;
    width: 24px;
    height: 24px;
    line-height: 24px;
    text-align: center;
    margin-right: 10px;
    background-position: center;
    background-size: contain;
    min-width: 24px;
}

.message-initials {
    text-align: center;
    margin-right: 10px;
    font-weight: bold;
    font-size: 12px;
}

.message-body {
    flex-grow: 1;
}

.message-date, .notification-date, .notification-project, .notification-type, .match-date {
    font-size: 12px;
    color: grey;
    font-style: italic;
    flex-shrink: 0;
}

.notification-project, .notification-type {
    margin-right: 5px;
}

.navigation-tools {
    display: flex;
    border-bottom: 2px solid lightgray;
    padding-bottom: 5px;
    align-items: center;
}

.radio-button-section label {
    display: inline-block !important;
}

.input-box {
    display: flex;
    position: relative;
}

.messages label {
    flex-grow: 1;
    display: flex;
}

.messages label:nth-child(2) {
    flex-grow: 0;
    margin-top: 4px;
}

.messages label > span {
    align-self: center;
    margin-right: 10px;
}

.messages textarea, .messages .ce-wrapper {
    flex-grow: 1;
}

.send-button, .private-button, .file-upload-button {
    margin-left: 10px;
    min-width: 40px;
}

.suggestions {
    position: absolute;
    background-color: white;
    border: 2px solid lightgray;
    z-index: 3;
    font-weight: normal;
}

.suggestion {
    padding: 10px;
    cursor: pointer;
    transition: 0.2s;
}

.suggestion.selected {
    background-color: #c5c9d2;
}

.tagged {
    font-weight: bold;
}

tt {
    text-decoration: underline;
    font-family: 'Montserrat', sans-serif;
}

.clickable {
    cursor: pointer;
    user-select: none;
}

.float-table-wrapper {
    overflow-y: visible;
    overflow-x: visible;
}

#notification-list {
    border-bottom: 2px solid lightgray;
    margin-bottom: 10px;
    max-height: 300px;
    overflow: auto;
}

.notification {
    color: black;
    text-decoration: none;
    text-align: left;
    display: block;
    margin: 10px;
    margin-top: 0;
    border-left: 2px solid lightgray;
    padding-left: 3px;
}

.notification a {
    text-decoration: none;
}

.my-notifications .notification {
    color: black;
    display: flex;
}

#user-menu .notification-text {
    overflow: hidden;
}

.my-notifications .notification-text {
    flex-grow: 1;
}

.notification.not-seen {
    border-left: 2px solid red;
}

#user-circle #user-notifications {
    background-color: red;
    color: white;
    border-radius: 50%;
    position: absolute;
    min-width: 20px;
    height: 20px;
    right: -3px;
    bottom: -3px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
}

#notifications-discussion, #notifications-details, #notifications-journal {
    background-color: red;
    color: white;
    border-radius: 50%;
    min-width: 20px;
    height: 20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    line-height: 20px;
    display: inline-block;
    vertical-align: bottom;
    margin-left: 5px;
    text-align: center;
}

.documents td > a {
    padding: 5px;
}

.documents td > button {
    margin: 5px;
}

.documents td > button:not(:first-child) {
    margin-left: 0;
}

.dragged-over {
    border: 4px dashed black !important;
}

.is-dir {
    font-weight: bold;
}

.documents h3 > button {
    margin-right: 5px;
    padding: 0;
    width: 40px;
    height: 40px;
}

.documents h3 > button a {
    color: black;
    text-decoration: none;
    display: block;
    height: 100%;
    width: 100%;
    line-height: 38px;
}

.add-folder-button {
    margin-left: 5px;
    width: 40px;
    height: 40px;
}

.details table {
    margin-top: 0;
}

.redirect { 
    margin: auto;
    text-align: center;
    padding: 10px;
    font-size: 24px;
}

.project-notice {
    font-style: italic;
    color: grey;
}

.edit-box {
    position: absolute;
    top: 50%;
    transform: translate( -50%, -50% );
    border: 1px solid black;
    padding: 5px;
    background-color: white;
    text-align: center;
}

.edit-box-first-line {
    display: flex;
    align-items: center;
    justify-content: center;
}

.edit-box input {
    cursor: pointer;
}

.edit-box label {
    display: block;
}

.completed-set {
    font-size: 12px;
    display: inline-block;
    vertical-align: top;
}

.list-row-note {
    min-width: 500px;
    max-width: 500px;
}

.list-row-note > label {
    display: flex;
    flex-direction: column;
}

.list-row-note textarea {
    width: calc(100% - 10px);
    min-height: 80px;
}

.list-row-note .ce {
    max-height: 400px;
    overflow: auto;
}

.sort-ascending::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f106";
    margin-right: 5px;
}

.sort-descending::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f107";
    margin-right: 5px;
}

#me {
    float: left;
    margin-left: 10px !important;
    width: 40px;
    height: 40px; /* standard for buttons unless in a flex row or table */
}

#login, #register {
    margin-bottom: 10px;
}

#register {
    margin-right: 5px;
}

#type-select {
    width: 206px;
}

.authorization-inputs {
    flex-direction: column;
    font-size: 11pt;
}

label[for='question-ft-only'], label[for='question-st'] {
    font-size: 11pt;
    gap: 0 !important;
}

label[for='question-ft-only'] input, label[for='question-st'] input {
    min-height: 20px;
    min-width: 20px;
}

#logout, #login, #register {
    height: 40px; /* standard for buttons unless in a flex row or table */
}

#logout {
    width: 40px;
}

.image-holder {
    display: flex;
    flex-wrap: wrap;
    overflow: hidden;
    max-height: calc(100dvh - 62px);
}

.image-holder div {
    width: 25%;
    height: 250px;
    background-size: cover;
    background-position: center;
}

.image-holder video {
    opacity: 0.5;
    width: 100vw;
    height: 100dvh;
    object-fit: cover;
}

.loom-video {
    margin-top: 10px;
}

td button {
    margin-left: 5px;
}

input[type="checkbox"],input[type="radio"] {
    accent-color:#15284B;
    border-radius: 8px;
    width: 20px;
    height: 20px;
}

label > input[type="checkbox"] ~ span, label > input[type="radio"] ~ span  {
    vertical-align: middle;
}

input[type='checkbox'], input[type='radio'], select {
    cursor: pointer;
    vertical-align: middle;
}

th .checkbox-value, td .checkbox-value {
    margin-left: 0;
    width: 100%;
    margin-top: 0;
}

.custom-events-line {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

.me .navigation-tools {
    justify-content: right;
}

.navigation-tools .checkbox-value {
    margin-top: 0;
    margin-left: 5px;
}

.navigation-tools .checkbox-header span {
    display: flex;
    height: 100%;
    align-items: center;
}

.hide-checkbox, .drag-checkbox {
    float: right;
}

.timeline-button,.quick-task-button, .promote-button, .coordinates-button, .site-plans-button,.camera-button, .colo-button,.master-button, .user-button, .print-list-button, .download-button, .profiles .add-button, .areas-button, .all-button {
    display: inline-block;
    margin-left: 0;
    width: 40px;
    height: 40px;
    vertical-align: top;
    margin-top: 5px;
}

.master-button, .print-list-button, .download-button {
    position: absolute;
    top: 0;
    right: 0;
    margin-top: 0;
}

.user-button, .profiles .add-button {
    position: absolute;
    top: 0;
    right: 45px;
    margin-top: 0;
}

.areas-button {
    position: absolute;
    top: 0;
    right: 90px;
    margin-top: 0;
}

.all-button {
    position: absolute;
    top: 0;
    right: 135px;
    margin-top: 0;
}

.quick-task-button, .promote-button, .coordinates-button, .site-plans-button, .camera-button, .colo-button {
    margin-right: 5px;
}

.timeline-button,.coordinates-button, .site-plans-button, .camera-button, .colo-button, .master-button, .user-button, .print-list-button, .maps-button, .areas-button, .all-button {
    padding: 0;
}

.timeline-button a,.coordinates-button a, .open-link-button a, .site-plans-button a,.camera-button a, .colo-button a, .master-button a, .user-button a, .print-list-button a, .areas-button a, .all-button a {
    color: black;
    display: flex;
    height: 100%;
    flex-direction: column;
    justify-content: center;
    text-decoration: none;
}

.maps-button a {
    display: block;
    padding: 1px 6px;
}

.modal, .dying-modal {
    display: block;
    position: fixed;
    top: 50%;
    transform: translate( -50%, -50% );
    left: 50%;
    background-color: white;
    opacity: 0;
    transition: opacity 0.5s;
    max-height: 80%;
    overflow: auto;
    max-width: 100vw;
    box-sizing: border-box;
    z-index: 250;
    border: 2px solid lightgray;
    min-width: 1200px;
    min-width: min(1200px, 100vw);
}

.modal > div, .dying-modal > div {
    padding: 20px;
}

.modal > div::after, .dying-modal > div::after {
    clear: both;
    content: " ";
    display: block;
}

.modal-shown, .dying-modal .modal-shown {
    opacity: 1;
}

.next-projected, .display-until {
    font-size: 14px;
    font-weight: bold;
    font-style: italic;
    text-align: right;
}

.copy-date-business-button {
    margin-right: 25px;
}

.can-be-important {
    cursor: pointer;
    user-select: none;
}

.red {
    color: red;
}

.important::before {
    content: "!";
    color: red;
    font-size: 30px;
    font-weight: bold;
    display: block;
    margin-top: 7px;
    line-height: 30px;
    margin-right: 5px;
    font-style: normal;
}

.actions-td {
    white-space: nowrap;
}

.contract-td { 
    height: initial;
}

.contract-td select {
    width:400px;
}

.contract-td button {
    height: initial !important;
}

.flex {
    display: flex;
}

.grow {
    flex-grow: 1;
}

label[for^="note-input"] {
    display: flex;
}

textarea[id^="note-input"] {
    flex-grow: 1;
}

.contract-td ~ td {
    vertical-align: top;
}

.contract-td + td + td button {
    max-height: 31px;
}

.more-hidden {
    max-height: 100px;
    overflow: hidden;
}

.notification hr {
    margin: 2px 0 ;
}

.show-more {
    font-size: 70%;
    text-align: center;
}

.task-td {
    min-width: 500px;
}

.task-td > label {
    vertical-align: top;
}

.task-td .ce-wrapper {
    width: calc(100% - 20px) !important;
}

.task-td .ce {
    min-height: 21px !important;
    padding-bottom: 5px !important;
}

.task-td .ce-appendix {
    display: none !important;
}

.task-td select, .contact-person-div select {
    width: 20px;
}

.contact-person-div select {
    margin-left: -20px;
}

.contact-remove-button {
    position: absolute;
    top:20px; 
    right: 20px;
    padding: 10px !important;
    margin: 0 !important;
}

.contact-person-div > label > span:first-child {
    width: 70px;
}

.contact-person-div {
    border:1px solid black;
    padding: 20px;
    position: relative;
}

label[for="documents-upload-file"] {
    display: table;
    overflow: hidden;
}

label[for="documents-search"] {
    display: inline-block;
    margin-top: 20px;
}

label[for="project-lat"] input, label[for="project-lng"] input {
    width: 110px;
}

label[for="project-filepath"] {
    flex-grow: 1;
    display: flex;
    align-items: center;
}

label[for="project-filepath"] input {
    flex-grow: 1;
    margin-left: 5px;
}

#site-display {
    display: flex;
    margin-top: 20px;
    border: 4px solid #CD9700;
}

#site-display > div {
    width: 25%;
    height: 200px;
    background-position: center;
    background-size: cover;
}

#map, .map {
    height: 350px;
}

#areas-map, #plots-map {
    width: 100%;
    height: calc(100dvh - 66px);
}

.ls-inputs {
    display: flex;
    flex-direction: column;
    gap: 5px;
    margin-top: 5px;
}

.ls-inputs label span {
    display: inline-block;
    width: 50px;
}

.ls-inputs label input {
    font-size: 12px;
}

.timeline-on-label {
    display: block;
    margin-bottom: 10px;
}

.date-filter-section input {
    width: 160px;
}

tr.hidden + .extended-row, tr.hidden-filter + .extended-row,
tr.hidden-page + .extended-row {
    display: none !important;
}

textarea[id^="task-note"] {
    width: calc(100% - 10px);
}

.timeline-changes {
    margin-top: 10px;
}

label[for^="timeline-change-start"] {
    margin-right: 5px;
}

label[for="topic-input"] {
    margin-bottom: 5px;
}

label[for="topic-input"] span {
    width: 77px;
}

.colo-brand .colo-projects, .colo-brand-ls .colo-projects {
    display: none !important;
}

button .fa-colo {
    width: 20px;
    display: block;
    margin: auto;
}

nav .fa-colo {
    width: 20px !important;
    vertical-align: middle;
}

label[for="area-project-select"] {
    display: block;
}

label[for="area-project-select"] .tail-select {
    max-width: 150px;
    vertical-align: middle;
}

#area-project-select {
    max-width: 150px;
}

#area-notes-input {
    display: block;
}

.message-topic {
    font-size: 14px;
    font-weight: bold;
    cursor: pointer;
}

.message-share-button, .message-delete-button {
    margin-left: 5px;
}

#project-day {
    margin-bottom: 5px;
}

.home .input-area .checkbox-section.inline {
    vertical-align: middle;
}

.master .timeline-wrapper button:not(.view-changes-button):not(.view-table-button) {
    margin-left: 0;
    margin-right: 5px;
}

.status-div {
    padding-bottom: 10px;
    font-weight: bold;
    text-decoration: underline;
}

.contact-box {
    margin-left: 10px;
}

.contact-box button {
    padding: 3px;
    margin: 3px;
}

.description-div {
    margin-bottom: 10px;
    font-style: italic;
    font-size: 14px;
}

.login-modal {
    min-width: initial;
    max-width: min(80vw, 500px);
}

.login-modal label {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.login-modal label span {
    flex-grow: 1;
    padding-right: 10px;
}

.login-modal button {
    height: 40px;
    display: block;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
}

.login-modal a {
    width: 100%;
    text-align: center;
    display: block;
}

.login-modal h3 {
    margin-top: 0;
    text-align: center;
}

.login-modal label[for="trust"] {
    display: block;
    width: 100%;
    text-align: center;
}

.login-modal .login-form > div {
    margin-bottom: 10px;
}

.tutorial-modal {
    max-width: 500px;
    min-width: 500px;
    z-index: 2000;
}

.slides {
    margin-bottom: 10px;
    text-align: center;
}

.slide {
    height: 250px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.slide-controls button:nth-child(2) {
    float: right;
} 

.areas {
    gap: 10px;
    height: calc(100dvh - 66px);
    margin: 0;
}

.areas > button, .areas > .credits {
    position: absolute;
    top: 0;
    right: 0;
    font-weight: bold;
}

.credits button {
    display: inline-block;
    margin-left: 5px;
    padding: 5px;
}

.add-modal, .agree-modal, .confidentiality-modal {
    min-width: 0;
    z-index: 2000;
}

.timeline-modal {
    z-index: 2000;
}

.areas > button {
    display: none !important;
}

.leaflet-control-layers {
    max-height: 200px;
    overflow: auto;
}

.leaflet-control-layers-scrollbar {
    overflow-y: initial !important;
    overflow-x: initial !important;
    padding-right: 0 !important;
}

.client-questions, .match-box-wrapper, .bulk-wrapper, .agree-form, .profile-form { 
    display: flex;
    gap: 10px;
    width: 95%;
    margin-top: 20px;
}

.client-questions .checkbox-section > div {
    max-width: 50%
}

.match-box-wrapper {
    margin-bottom: 20px;
}

.match-box-wrapper.no-bottom {
    margin-bottom: 0px;
}

.bulk-wrapper {
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    margin-top: 10px;
}

.match-box-wrapper > div {
    padding: 10px;
    padding-top: 0;
}

.client-questions > div {
    padding: 10px;
    padding-top: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex-grow: 1;
}

.client-questions > div > h4 {
    margin-bottom: 10px;
    margin-top: 10px;
}

.client-questions > div > label, .client-questions > div > div, .agree-form label {
    display: flex;
    align-items: center;
    justify-content: left;
    gap: 10px;
}

.agree-form label {
    padding: 2px;
}

.highlight-red-border {
    border: 5px solid red;
    padding: 3px;
}

.pass-opt {
    color: green;
}

.bad-pass-opt {
    color: red;
}

.pass-opt::before {
    font-family: "Font Awesome 5 Free";
    content: "\f00c";
    margin-right: 5px;
    font-weight: 900;
}

.bad-pass-opt::before {
    font-family: "Font Awesome 5 Free";
    content: "\f00d";
    margin-right: 5px;
    font-weight: 900;
}

.client-questions .tenant-details-box {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: max(200px, calc(50% - 5px));
}

.agree-form label.left-label {
    justify-content: left;
    padding-bottom: 3px;
    gap: initial;
}

.client-questions > div > label[for="question-drive-thru"],
.client-questions > div > label[for="question-double-drive-thru"],
.client-questions > div > label[for="question-freestanding"],
.client-questions > div > label[for="question-inline"],
.client-questions > div > label[for="question-endcap"] {
    justify-content: start;
}

.bulk-instructions {
    font-size: 70%;
}

.colo-brand .sidebar li:nth-child(1), .colo-brand .sidebar li:nth-child(2), .colo-brand .sidebar li:nth-child(3), 
.colo-brand .sidebar li:nth-child(5),
 .colo-brand h1 a:first-child, .colo-brand h1 span:nth-child(2),
.colo-brand #user-menu > button:nth-child(3),
.colo-brand .pdc-login, .colo-brand .sidebar, .colo-brand #menu, html:not(.colo-brand):not(.colo-brand-ls) #register {
    display: none !important;
}

.colo-brand-ls .sidebar li:nth-child(1), .colo-brand-ls .sidebar li:nth-child(2), .colo-brand-ls .sidebar li:nth-child(3), 
.colo-brand-ls .sidebar li:nth-child(4), .colo-brand-ls .sidebar li:nth-child(6),
 .colo-brand-ls h1 a:first-child, .colo-brand-ls h1 span:nth-child(2),
.colo-brand-ls #user-menu > button:nth-child(3), .colo-brand-ls .image-holder,
.colo-brand-ls .pdc-login, .colo-brand-ls .sidebar, .colo-brand-ls #menu {
    display: none !important;
}

.colo-brand header,.colo-brand-ls header {
    background-color: #15284B !important;
    color: white !important;
}

.colo-brand h1 a,.colo-brand-ls h1 a {
    color: white !important;
}

.native .sidebar nav li:not(:nth-child(1),:nth-child(2)), .native .areas-button, .native .project-list-wrapper + div,
.native .details-numbers, .native .details-project-properties {
    display: none !important;
}

.native .all-button {
    right: 90px;
}

.small-text {
    font-size: 75%;
}

.small-italic-text {
    font-size: 85%;
    font-style: italic;
}

.sidebar #menu {
    position: absolute;
    right: 10px;
}

.help-colo {
    display: flex;
    flex-direction: column;
    padding: 10px;
    gap: 5px;
}

.terms {
    font-family: "Times New Roman", "serif";
    height: 70vh;
    overflow: auto;
    margin: 10px;
    border:  none;
    width: calc(100% - 20px);
}

label[for='independent-contractor'] {
    text-align: right;
    margin-bottom: 10px;
    display: block;
}

.iframe-buttons {
    margin-left: auto;
    text-align: right;
}

.terms-button, .download-terms-button {
    padding: 5px;
    display: inline-block;
    margin-left: 5px;;
}

tr.is-dm {
    font-weight: bold;
    cursor: pointer;
}

.padded-button {
    padding: 5px;
}

#question-parking-spaces, #question-parking-spaces-max,
#question-locations-operated, #question-years-in-business {
    width: 100px;
}


#question-rent-min, #question-rent-max,
#question-land-cost-min, #question-land-cost-max {
    width: 85px;
}

.agree-form {
    display: flex;
    flex-direction: column;
    padding: 5px;
}

.blue-select .select-dropdown {
    background-color: #e9f2ff !important;
}

.match-filters, .match-filters > div {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
}

.match-filters select {
    max-width: 200px;
}

.match-child {
    font-size: 80%;
    margin-left: 20px;
}

.gotocolo {
    padding: 5px;
    margin-left: 10px;
}

.red-button {
    background-color: rgb(131, 0, 0);
}

.red-button:hover {
    background-color: rgb(149, 0, 0);
}

.agree-form .block-labels label span {
    width: 60px;
}

.client-questions .checkbox-needs {
    flex-wrap: wrap;
}

.client-questions .checkbox-split {
    justify-content: space-between;
    align-items: start;
}

.client-questions h5 {
    margin-bottom: 0;
    margin-top:0;
}

.match-filters label, .client-questions .checkbox-section,
.profile-form label,
.client-questions label[for='question-parking-spaces'],
.client-questions label[for='question-rent-min'], 
.client-questions label[for='question-land-cost-min'], 
.client-questions label[for='question-space'],
.client-questions label[for='question-acres'] {
    gap: 5px;
    display: flex;
    align-items: start;
    flex-direction: column;
    justify-content: left;
}

label[for="user-show-for"] {
    width: 100%;
    flex-direction: row;
    align-items: center;
}

.clickable {
    cursor: pointer;
}

.contact-div {
    margin-top: 10px;
}

.contact-div a {
    display: block;
}

.company-all {
    margin-top: 20px;
}

.company-all a {
    display: block;
}

.promoted {
    background-color: rgb(202, 255, 202);
}

.input-area ~ .checkbox-section {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 20px;
}

.input-area + .checkbox-section ~.checkbox-section {
    margin-top: 10px;
}

.documents td {
    vertical-align: middle;
}

.path-div {
    font-size: 75%;
    font-style: italic;
}

li.primary {
    font-weight: bold !important;
}

.feedback-form-wrapper, .profile-form {
    margin: 10px;
    margin-top: 20px;
    flex-direction: column;
}

.feedback-form h5 {
    margin-top: 20px;
}

.feedback-form textarea {
    width: calc(100% - 20px);
    height: 300px;
}

.feedback-form button, .padding-button {
    padding: 5px;
}

.feedback-form label {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 5px;
    margin-bottom: 10px;
}

.watermark, .watermark-left {
    width: 50px;
    position: absolute;
    top: -80px;
    right: 15px;
    z-index: 400;
    opacity: 0.8;
}

.watermark-left {
    right: initial !important;
    left: 15px;
    top: -30px;
}

.tutorial-video-outer {
    max-width: 800px;
}

.tutorial-video {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
    max-width: 800px;
}

.tutorial-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.bpFab {
    display: none !important;
}

iframe[name="webchat"] {
    bottom: 15px;
    right: 60px;
}

@media only screen and (max-width: 600px) {
    header nav  a {
        width: 100%;
    }
    header h1 {
        font-size: 16px;
        padding: 5px;
        padding-bottom: 10px;
    }
    header nav, #user-info {
        display: none;
    }
    header nav.active:not(.hidden) {
        display: block;
    }
    #user-info.active:not(.hidden) {
        display: flex;
    }
    #menu {
        display: inline-block;
    }
    .sidebar-text {
        display: none !important;
    }
    .details-column {
        width: 100%;
        display: inline-block;
        vertical-align: top;
    }
    .details-column:last-child {
        margin-left: 0;
    }
    .details-column select {
        max-width: 185px;
    }
    header > a {
        display: none;
    }
    .custom-events-line {
        flex-direction: column;
    }
    .custom-events-line > button {
        max-width: 40px;
        align-self: flex-end;
    }
    button:not(.tail-select button) {
        min-width: 40px;
        min-height: 40px;
    }
    .timeline-wrapper table button, .task-table-wrapper button {
        height: initial;
    }
    textarea {
        width: 1px;
    }
    .navigation-tools {
        flex-direction: column;
    }
    .my-notifications .notification {
        flex-direction: column;
    }
    .input-area > * {
        display: block;
    }
    .home .input-area > .checkbox-section {
        margin-top: 10px;
    }
    .coordinates-button {
        margin-left: 0;
        margin-top: 5px;
    }
    .image-holder {
        display: block;
    }
    .image-holder div {
        width: 100%;
    }
    #login, #register {
        display: block;
    }
    .documents td > button:not(:first-child) {
        margin-left: 5px;
        margin-top: 0;
    }
    .copy-date-button, .copy-date-business-button {
        margin-bottom: 5px !important;
    }
    #site-display > div {
        display: none;
    }
    #site-display > div:first-child {
        display: block;
        width: 100%;
    }
    .leaflet-top.leaflet-right {
        flex-direction: column;
    }
    .leaflet-top.leaflet-right .tail-select {
        max-width: 175px;
    }
}

@media print {
    footer {
        display: none;
    }
    .tuesday {
        position: absolute;
        top: 0;
        left: 0;
        background-color: white;
        margin: 0;
        padding: 10px;
        width: calc(100% - 20px);
        height: 100dvh;
    }
    .tuesday-hide {
        display: none;
    }
    .sidebar {
        display: none !important;
    }
    .main-content {
        height: initial !important;
    }
    table {
        table-layout: fixed !important;
        break-inside: auto;
    }
}