﻿

/* Set padding to keep content from hitting the edges */
.body-content {
    padding-left: 15px;
    padding-right: 15px;
    min-height: calc(95vh - 245px);
}

/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/
.dl-horizontal dt {
    white-space: normal;
}



/* Custom page footer */
.footer {
    padding-top: 19px;
    color: #777;
}

/* Custom container */
.container {
    margin: 0 auto;
    max-width: 1200px;
}
.containerBot, .containerBot a, .containerBot li, .containerBot li a {
    color: #ffffff;
}	
.containerBot {
    width: 100%;
    background: rgb(0, 166, 81);
    margin-top: 20px;
    margin-bottom: 0px;
    padding-top: 10px;
}

.list-unstyled > li.twitter {
    background: url(/img/bird-white-32.png);
    background-repeat: no-repeat;
    padding-left: 24px;
    background-position: 0 0;
    margin-bottom: 1px;
    vertical-align: middle;
}
   
#gritbins {
    width: 100%;
    text-align: center;
    font-weight: bold;
}

@media (min-width: 980px) {
    .span4 {
        width: 370px;
    }
    .span3 {
        width: 270px;
    }
    [class*="span"] {
        float: left;
        min-height: 1px;
        margin-left: 30px;
    }
}
@media (min-width: 540px) and (max-width: 979px) {
    [class*="span"] {
        float: left;
        min-height: 1px;
        margin-left: 20px;
    }
}

h1 {
    font-size: 31.5px;
    padding-bottom: 2px;
    padding-top: 2px;
}

h4 {
    color: #fff;
}
   

.image-tvv-logo {
    background-image: url(/img/Powered_by_TVV_mobile.png);
    width: 143px;
    height: 34px;
    margin-top: 20px;
    float: right;
}

.image-admin-tvv-logo {
    background-image: url(/img/TVV_logo_100.png);
    width: 100px;
    height: 57px;
    margin-top: 10px;
    margin-bottom:10px;
    float: left;
}

.image-roadsonline-logo {
    background-image: url(/img/RoadsOnline_Black_180x38.png);
    width: 180px;
    height: 38px;
    float: left;
    margin-top: 10px;
    padding-top: 15px;
    margin-bottom: 5px;
}

.image-white-tvv-logo {
    max-height: 75%;
    max-width: 50%;
    float: right;
    margin-top: 100px;
    filter: brightness(0) invert(1);
}
.strapline {
    clear: left;
    padding-top: 10px;
    padding-bottom: 10px;
}
.strapline-default {
    float: left;
    padding-top: 30px;
    padding-bottom: 10px;
    font-size: 24px;
    text-align: center;
    width: 60%;
}
.notification{
    margin:10px auto 10px auto;
    text-align:center;
    width:70%;
    padding:5px;
}

#info {
    position: absolute;
    z-index: 10;
   
    padding: 6px;
    font-size: 14px;
    top: -10em;
    display: none;
}

#map {
    height: 400px;
}
#smallmapcontainer #map {
    height: 200px;
}
#smallmapcontainer {   
    height:240px;
}
.easy-autocomplete {
    width: 100% !important;
}

    .easy-autocomplete input {
        width: 100%;
        max-width: 450px;
    }

.maxheightScroller {
    max-height: 350px;
    overflow-y: scroll;
}

@media (min-width: 768px) {
    .image-tvv-logo {
        background-image: url(/img/Powered_by_TVV.png);
        width: 190px;
        height: 46px;
    }
    .image-roadsonline-logo {
        background-image: url(/img/RoadsOnline_black-166x62.png);
        width: 162px;
        height: 62px;
        float: left;
        margin-top: 5px;
        margin-bottom: 5px;
    }
    #smallmapcontainer #map {
        height: 220px;
    }

    #map {
        height: 570px;
    }

    .easy-autocomplete {
        width: 450px !important
    }

    .easy-autocomplete input {
        width: 450px;
        max-width: 450px;
    }

    .form-wrapper {
        width: 500px;
    }
    .maxheightScroller {
        max-height: 570px;
        overflow-y: scroll;
    }
}



.searchbox {
    padding-top: 8px;
    padding-right: 5px;
}

#searchGritBin .btn-group {
    width: 100%;
}

.homepage-ttro-widget {
    width: 100%;
    border: 0px;
    height: 100vh
}

@media (min-width: 768px) {

    .vertical-align {
        display: flex;
    }
            .navbar .nav li:first-child a {
                border-left: 0;
                border-radius: 3px 0 0 3px;
            }

    .navbar-collapse {
        padding-left: 0px;
    }




    #reportAGritBin {
        min-height: 200px;
        padding-bottom: 20px;
    }
    #searchGritBin .btn-group {
        width: 450px;
        max-width: 450px;
    }
    .homepage-ttro-widget {
        height: 440px;
    }
}


#title {
    float: left;
    margin-top: 0px !important;
    margin-bottom: 0px !important;
    border-top: 0px !important;
}

#mapPageTitleArea {
    margin-top: 20px;
    margin-bottom: 10px;
   
}

.slidecontainer {
    width: 100%;
}

#timeSlider{
    margin-top:40px;
}

.noselect {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome, Opera and Firefox */
}

.validation-error {
    color: red;
}

/* rotation animations */

@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.rotating {
    -webkit-animation: rotating 2s linear infinite;
    -moz-animation: rotating 2s linear infinite;
    -ms-animation: rotating 2s linear infinite;
    -o-animation: rotating 2s linear infinite;
    animation: rotating 2s linear infinite;
}

.vertical-align {
    align-items: center;
}

.navbar-nav > li > .dropdown-menu#TTRO{
    min-width:258px;
}

.ol-northarrow {
    z-index: 1;
    width: 42px;
    height: 66px;
    top: 60px;
    right: 0px;
    position: absolute;
}

.ol-northarrow img {
    width: inherit;
    height: inherit;
}

.breadcrumb{ padding-right: 0;}

.warning-message{
    padding:15px;
}

.nav-tabs li.active a:hover {
    color: #555 !important;
}

.nav-tabs li.active:hover {
    background-color: unset !important;
}

.nav-tabs li:hover {
    background-color: unset !important;
}

@media (min-width: 992px) {
    .container, .containerBot {
        width: unset;
    }
}

@media print {
    .alert-danger {
        border:0px;
    }
    .col-md-print-12 {
        width: 100% !important;
        flex: 0 0 100%;
    }
}

.admin-button-group {
    text-align: center;
    margin-bottom: 30px;
}

.admin-button-container {
    display: inline-block;
    width: 220px;
    text-align: center;
    margin: 10px;
}

.admin-button {
    width: 100%;
}

#map-icon-picker .map-icon-img {
    max-height: 60px;
    cursor: pointer;
}

#map-icon-picker .icon-choice.selected .map-icon-img {
    border: 2px solid #337ab7;
    box-shadow: 0 0 4px rgba(0, 0, 0, .4);
}

#map-icon-picker .icon-strip-container {
    white-space: nowrap;
}

/* =========================
   TRO dashboard (shared layout)
   ========================= */

.tro-dashboard-topbar {
    display: flex;
    align-items: center;
    gap: 40px;
    padding: 25px 0 10px;
}

.tro-dashboard-logo-wrap {
    flex: 0 0 180px;
}

.tro-dashboard-logo {
    max-width: 150px;
    height: auto;
}

.tro-dashboard-main {
    flex: 1;
}

.tro-dashboard-titlewrap {
    text-align: center;
    margin-bottom: 18px;
}

.tro-dashboard-title {
    margin: 0;
    color: var(--hl-purple);
    font-size: 30px;
    font-weight: 400;
}

.tro-dashboard-actions {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 50px;
}

.tro-dashboard-action {
    text-align: center;
}

    .tro-dashboard-action small {
        display: block;
        margin-top: 7px;
        color: #b7b7b7;
        font-size: 13px;
        font-style: italic;
        font-weight: 600;
    }

.tro-dashboard-search-action {
    width: 320px;
}

.tro-search__group {
    width: 320px;
}

.tro-search__input {
    max-width: none;
}

@media (max-width: 992px) {

    .tro-dashboard-topbar {
        flex-direction: column;
        text-align: center;
        gap: 15px;
    }

    .tro-dashboard-logo-wrap {
        flex: none;
    }

    .tro-dashboard-actions {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }

    .tro-dashboard-titlewrap {
        margin-bottom: 12px;
    }
}


/* =========================
   TRO dashboard table (shared structure)
   ========================= */

.tro-dashboard-table {
    width: 100%;
    margin-top: 20px;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0 8px;
}

    .tro-dashboard-table > thead > tr > th {
        border-bottom: 0 !important;
        border-top: 0 !important;
        vertical-align: middle !important;
        text-align: center;
        padding: 8px 10px;
    }

    .tro-dashboard-table > tbody > tr > td {
        border-top: 0 !important;
        vertical-align: middle !important;
        text-align: center;
        padding: 6px 10px;
    }

.tro-stage-main-header {
    width: 260px;
    font-size: 24px;
    font-style: italic;
    font-weight: 700;
    text-align: center !important;
    vertical-align: middle !important;
    line-height: 1.2;
}

.tro-stage-col-header {
    font-size: 16px;
    font-weight: 700;
    white-space: nowrap;
}

.tro-stage-group-header {
    font-size: 16px;
    font-weight: 700;
    position: relative;
    padding-bottom: 10px !important;
}

.tro-stage-group-label {
    position: relative;
    display: inline-block;
}

.tro-stage-sub-header {
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    padding-top: 16px !important;
    position: relative;
}

.tro-stage-area {
    text-align: right !important;
    font-size: 16px;
    white-space: nowrap;
    padding-right: 20px !important;
}

.tro-stage-data-row td {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}

.tro-stage-viewall {
    width: 110px;
}

.tro-dashboard-table .btn {
    white-space: nowrap;
}

.tro-approval-panel > .panel-body,
.tro-awaiting-panel > .panel-body {
    background-color: #fcf8e3;
}

.tro-approval-divider {
    margin: 16px 0;
    border-top: 2px solid rgba(255,255,255,0.7);
}

.tro-btn-resend {
    background-color: #337ab7;
    border-color: #2e6da4;
    color: #fff;
}

    .tro-btn-resend:hover,
    .tro-btn-resend:focus {
        background-color: #286090;
        border-color: #204d74;
        color: #fff;
    }

    .tro-btn-resend .glyphicon {
        margin-right: 6px;
    }

.tro-awaiting-title {
    display: block;
    margin-bottom: 6px;
    font-size: 20px;
}

.tro-awaiting-text {
    margin-bottom: 8px;
}

.tro-awaiting-meta {
    margin-bottom: 0;
}

.tro-title-display {
    font-weight: 600;
    font-size: 18px;
    margin: 0;
    padding-top: 7px; 
    letter-spacing: 1px;
}

/* =========================
   TRO Consultation Styling
   ========================= */

.tro-consultation-title {
    margin: 10px 0 12px 0;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    color: #000;
}

.tro-consultation-description {
    margin: 0 0 15px 0;
    text-align: center;
    white-space: pre-line;
    color: #000;
}

.tro-consultation-description-wrap {
    margin-bottom: 10px;
}

.tro-consultation-export-panel {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 16px 20px;
    margin: 20px 0 25px 0;
    background: #fff8e8;
    border: 1px solid #f1d27a;
    border-left: 5px solid #F1B933;
    border-radius: 4px;
}

.tro-consultation-export-title {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin-bottom: 2px;
}

.tro-consultation-export-subtitle {
    font-size: 14px;
    color: #555;
    margin: 0;
}

.tro-consultation-export-btn {
    background-color: #F1B933;
    border-color: #F1B933;
    color: #fff !important;
    font-weight: 600;
}

    .tro-consultation-export-btn:hover,
    .tro-consultation-export-btn:focus,
    .tro-consultation-export-btn:active {
        background-color: #d9a31e;
        border-color: #d9a31e;
        color: #fff !important;
    }

@media (max-width: 767px) {
    .tro-consultation-export-panel {
        flex-direction: column;
        align-items: flex-start;
    }
}


/*//TRO - Word/PDF Consultation//*/
.status-select {
    font-weight: 600;
    padding-left: 35px !important;
    background-repeat: no-repeat;
    background-position: 10px center;
    background-size: 14px 14px;
}

.tro-action-row {
    margin-top: 15px;
    padding-top: 10px;
}

/* Support */
.status-support {
    color: #2e7d32 !important;
    border-color: #2e7d32 !important;
}

/* Object */
.status-object {
    color: #c62828 !important;
    border-color: #c62828 !important;
}

/* Comment */
.status-comment {
    color: #f9a825 !important;
    border-color: #f9a825 !important;
    background-image: url("data:image/svg+xml;utf8,<svg fill='%23f9a825' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M12.146 0.146a.5.5 0 0 1 .708 0l3 3a.5.5 0 0 1 0 .708l-9.5 9.5L3 14l.646-3.354 9.5-9.5z'/></svg>");
}

.accordion-button {
    color: black;
    cursor: pointer;
}

.tro-file-list {
    margin-bottom: 15px;
}

.tro-file-row {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 10px;
}

.tro-file-badge {
    min-width: 92px;
    text-align: center;
    margin-top: 2px;
}

.tro-file-main {
    flex: 1;
    min-width: 0;
}

    .tro-file-main a {
        word-break: break-word;
    }

.tro-edit-file-btn {
    margin-left: 5px;
}

/* =========================
   TRO Conversation History
   ========================= */

.conversation-history-container {
    border: 1px solid #ddd;
    padding: 15px;
    max-height: 400px;
    overflow-y: scroll;
    background-color: #f9f9f9;
}

.conversation-entry {
    margin-bottom: 20px;
    padding: 14px 16px;
    border: 1px solid #dcdcdc;
    border-radius: 4px;
    background-color: #eeeeee;
}

    .conversation-entry.tro-team {
        margin-left: 45px;
        background-color: #dff0d8;
        border-color: #c7e5bd;
    }

    .conversation-entry.consultee {
        background-color: #eeeeee;
    }

    .conversation-entry.no-conversation {
        background-color: white;
    }

.conversation-entry-header {
    margin-bottom: 10px;
}

.conversation-entry-date {
    font-size: 12px;
    color: #555;
    font-weight: normal;
}

.conversation-entry-status {
    margin-top: 10px;
    font-weight: bold;
}

.conversation-status-badge {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 3px;
    font-weight: bold;
    font-size: 12px;
    color: white !important;
    line-height: 1.2;
}

.conversation-status-support {
    background-color: #5cb85c;
}

.conversation-status-object {
    background-color: #d9534f;
}

.conversation-status-comment {
    background-color: #777;
}

/* =========================
   TRO List Layout
   ========================= */

.tro-list-toolbar {
    margin-bottom: 18px;
}

.tro-list-actions {
    display: flex;
    gap: 6px;
    margin-bottom: 14px;
}

.tro-list-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 16px;
    align-items: center;
}

    .tro-list-filters .filter-chip {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        margin: 0;
    }

    .tro-list-filters .filter-label {
        margin: 0;
    }

    .tro-list-filters .bootstrap-select {
        width: 200px !important;
    }

    .tro-list-filters #ShownLocalAuthorities + .bootstrap-select {
        width: 240px !important;
    }

    .tro-list-filters .bootstrap-select .dropdown-menu {
        min-width: 240px;
    }

.tro-list-search-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 18px 0 22px;
}

.tro-list-search {
    display: flex;
    width: 100%;
    max-width: 320px;
}

.tro-list-search-input {
    flex: 1;
    width: 1%;
    max-width: none;
    height: 34px;
    border-radius: 4px 0 0 4px;
}

.tro-list-search-button {
    flex: 0 0 42px;
    width: 42px;
    height: 34px;
    border-radius: 0 4px 4px 0;
}

.tro-list-search-help {
    margin-top: 6px;
    font-size: 12px;
    font-style: italic;
    font-weight: 600;
    color: #999;
}

@media (max-width: 767px) {
    .tro-list-actions,
    .tro-list-filters {
        justify-content: center;
    }

        .tro-list-filters .filter-chip {
            width: 100%;
            justify-content: center;
        }

        .tro-list-filters .bootstrap-select,
        .tro-list-filters #ShownLocalAuthorities + .bootstrap-select {
            width: 100% !important;
            max-width: 360px;
        }

    .tro-list-search {
        max-width: 100%;
    }
}

/* =========================
   TRO Pagination
   ========================= */

.tro-page .dataTables_wrapper .dataTables_paginate .paginate_button {
    border-radius: 50% !important;
    min-width: 34px;
    height: 34px;
    padding: 7px 10px !important;
    margin: 0 3px;
    border: 1px solid #ddd !important;
    background: #fff !important;
    color: #333 !important;
}

    .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button.current,
    .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
        background: #e6e6e6 !important;
        border-color: #ccc !important;
        color: #333 !important;
    }

    .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button.previous,
    .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button.next {
        border: none !important;
        background: transparent !important;
        border-radius: 4px !important;
        color: #333 !important;
    }

        .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button.previous.disabled,
        .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button.next.disabled {
            color: #999 !important;
        }

    .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
        background: #f2f2f2 !important;
        border-color: #ccc !important;
        color: #333 !important;
    }

    .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button.previous:not(.disabled):hover,
    .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button.next:not(.disabled):hover {
        background: transparent !important;
        font-weight: bold;
        color: #333 !important;
    }

    .tro-page .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
        background: transparent !important;
        border-color: transparent !important;
        font-weight: normal !important;
        cursor: default !important;
    }