/* 
 * Copyright (c) 2021-2024 SigScalr, Inc.
 *
 * This file is part of SigLens Observability Solution
 *
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

* {
    box-sizing: border-box;
}

:root {
    --complete-bg-img: url(../assets/check-icon-black.svg);
    --save-btn-img: url(../assets/save-icon.svg);
    --dashboard-btn-img: url(../assets/dashbaord-white-icon.svg);
    --alerting-btn-img: url(../assets/alerting-white-icon.svg);
    --download-btn-img: url(../assets/download-icon-dark.svg);
    --show-record-btn-img: url(../assets/show-record-btn-dark.svg);
    --border-shadow: var(--shadow-1);
    --code-input-box-color: var(--black-1);
    --qb-input-box-color: var(--black-2);
    --qb-box-bg: var(--black-1);
    --cross-button: var(--white-0);
    }

[data-theme='light'] {
    --complete-bg-img: url(../assets/check-icon-light.svg);
    --save-btn-img: url(../assets/save-icon-light.svg);
    --dashboard-btn-img: url(../assets/dashboard-btn-light.svg);
    --alerting-btn-img: url(../assets/alerting-btn-light.svg);
    --download-btn-img: url(../assets/download-icon-light.svg);
    --show-record-btn-img: url(../assets/show-record-btn-light.svg);
    --border-shadow: var(--shadow-2);
    --code-input-box-color: var(--white-1);
    --qb-input-box-color: var(--white-1);
    --qb-box-bg: var(--white-0);
    --cross-button: var(--purple-3);
    }
#query-language-btn, #query-mode-btn{
    margin-left: 0px;
    width: 93px;
    height: 32px;
    border-radius: 5px;
    padding: 7px;
    margin-right: 6px;
}
#filter-container {
    margin: 0;
    background-color: var(--top-bar-bg-color-regular);
    display: flex;
    flex-wrap: wrap;
    border-radius: 5px;
    height: auto;
    width: fit-content;
}
#add-logs-to-db-btn,
#alert-from-logs-btn{
    height: 30px;
}
#avail-fields-btn {
    height: 30px;
    font-family: "DINpro", Arial, sans-serif;
    font-size: 14px;
    padding: 0 20px;
}
#progress-div{
    margin-top: -3px;
    margin-bottom: 8px;
}
.sidebar-icon{
    z-index: 1;
}
.dashboard-box{
    height: 100vh;
    padding: 10px 20px;
}

input.form-control {
    background: var(--code-input-box-color) !important;
}
.ui-autocomplete {
    width: 200px;
}

.group-by-reminder {
    background-color: var(--border-btn-color);
    color: var(--text-color);
    border-radius: 5px;
    width: 200px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    height: 40px;
    font-size: 16px;
    margin: 0 10px 0 50px;
}

.group-by-box {
    display: flex;
    flex-direction: row;
    width: 100%;
}

.tags-input {
    display: flex;
    flex-direction: row;
    position: relative;
    border: 1px solid #ccc;
    border-radius: 4px;
    width: 570px;
}

.filter-box ul {
    list-style: none;
    margin: 0px;
    flex: 1;
    flex-wrap: wrap;
    height: auto;
    overflow-x: auto;
    padding-left: 5px;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.filter-box ul::-webkit-scrollbar {
    height: 0;
}

.filter-box li {
    display: flex;
    flex-direction: row;
    color: var(--text-color);
    padding: 0px 5px;
    margin-right: 5px;
    height: 30px;
    align-items: center;
    white-space: nowrap;
    font-size: 14px;
}

.tags-input input[type="text"] {
    border: none;
    outline: none;
    height: 40px;
}

.filter-box input[type="text"]:focus {
    outline: none;
}

.delete-button {
    border: none;
    color: var(--cross-button);
    background: none;
    font-size: 22px !important;
    margin-left: 3px;
    margin-bottom: 2px;
}

.display-rule {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 10px;
}

.func-input {
    width: 500px;
}

.column-input {
    width: 500px;
}

.tags-list {
    display: flex;
    flex-direction: row;
}

.filter-box {
    border: 1px solid var(--border-btn-color);
    min-height: 32px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
    cursor: text;
}

.builder-div{
    background-color: var(--drop-down-btn-bg-regular);
    padding: 4px 6px;
    height: 32px;
    border: solid var(--border-btn-color);
    border-width: 1px 0.5px;
}

.completed,
.cancel-enter{
    padding: 0px;
    margin: 0 4px 0 0;
    height: 26px;
    min-width: 26px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    background-color: var(--default-tab);
    color: var(--text-color);
}

.symbol,
.value-first,
.column-first {
    min-width: 120px;
    height: 30px;
    color: var(--text-color) !important;
    margin-right: 5px;
}

.symbol,
.value-first,
.column-first {
    border: 1px solid var(--border-switch);
}

.add-third {
    margin: -1px;
}

.filter-con {
    position: relative;
    min-width: 300px;
    display: inline-block;
}

.column-third {
    width: 100% !important;
    height: 30px;
    margin-right: 10px;
}

.third-box {
    width: 100%;
    border-radius: 0 5px 5px 0;
}

.add-filter {
    position: absolute;
    border: 1px solid var(--border-btn-color);
    border-radius: 2px;
    height: 37px;
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 0 4px;
    background: var(--code-input-box-color);
    visibility: hidden;
    z-index: 100;
    font-size: 16px;
}

.ui-autocomplete {
    max-height: 170px !important;
    overflow-y: scroll;
    overflow-x: hidden;
    border-radius: 3px !important;
    font-size: 14px !important;
    scrollbar-width: none;
    -ms-overflow-style: none;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}

.ui-menu {
    width: 120px !important;
    font-size: 14px !important;
}
  
.ui-state-hover,
.ui-state-active,
.ui-state-focus {
    color: #ffffff;
    text-decoration: none;
    background-color: #2D69BC;
    cursor: pointer;
    height: 34px;
}

.ui-menu-item .ui-menu-item-wrapper {
    background: var(--ui-widget-bg-color);
    color: var(--text-color);
}

.ui-menu.ui-widget.ui-widget-content.ui-autocomplete.ui-front{
    width: max-content!important;
    min-width: 120px;
    border: 1px solid var(--ui-widget-border-color);
}

.ui-tabs-tab {
    border-radius: 10px;
}
#custom-code-tab.ui-widget.ui-widget-content{
    width: 100% !important;
}
.custom-code-tab {
    border: 0 !important;
    font-size: 14px;
    background-color: var(--bg-color);
}

.ui-tabs .ui-tabs-panel {
    padding: 0 !important;
    width: 100%;
    border: none;
}

.ui-tabs ui-tabs-nav li {
    margin-left: 17px !important;
    width: 121px;
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.query-text {
    height: 40px;
    width: 100%;
}

.search-img {
    background-image: url("../assets/search-img.svg");
    height: 32px;
    width: 32px;
    background-color: var(--purple-2);
    background-repeat: no-repeat;
    background-size: 50%;
    background-position: center;
    border-radius: 5px;
    cursor: pointer;
    border: none;
}
.run-filter-btn {
    background-image: url("../assets/search-img.svg");
    height: 32px;
    width: 32px;
    background-color: var(--purple-2);
    background-repeat: no-repeat;
    background-size: 50%;
    background-position: center;
    border-radius: 0 5px 5px 0;
}

.cancel-search {
    background-image: url("../assets/close_white.svg") !important;
}
.run-filter-btn:hover,
#run-filter-btn.active,
.search-img:hover,
.search-img.active{
    background-color: var(--btn-hover-or-click-bg-color);
}
.run-filter-btn:focus{
    border-radius: 0 5px 5px 0;
}
.query-box {
    padding: 8px 24px 0 24px;
    display: flex;
    flex-direction: row;
}

.tab-list {
    margin-left: auto !important;
    margin-bottom: 6px !important;
    width: 94px;
    height: 26px;
    border-radius: 5px;
    background: var(--alert-background);
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.dropdown-box {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.tab-li {
    height: 34px;
    border-radius: 5px;
}

.tab-li-query {
    width: 125px;
}

.tab-li-code {
    width: 80px;
}

.ui-state-default {
    background-color: var(--default-tab) !important;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    border: none !important;
}

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
    color: var(--border-switch) !important;
}

.ui-tabs .ui-tabs-nav .ui-state-active {
    background: var(--tab-active-background) !important;
    border: 1px solid var(--purple-1) !important;
    cursor: pointer;
}

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
    color: var(--text-color) !important;
    padding: 2px 5px !important;
}

.ui-state-hover {
    background-color: rgba(99, 71, 217, 0.15);
    border: 1px solid var(--purple-1);
}

.ui-tabs .ui-tabs-nav li {
    margin: 0;
    background: var(--myOrg-input) !important;
    height: 20px;
    font-size: 12px;
}
.tab-chart-list .tab-li{
    margin: 0;
    background: var(--myOrg-input) !important;
    height: 22px !important;
    font-size: 14px !important;
    margin-top: 2px !important;
}
.ui-tabs .ui-tabs-nav .ui-tabs-anchor{
    padding: 2px 5px;
    outline: none;
    text-decoration: none;
}

.disabled-tab {
    pointer-events: none;
    opacity: 0.5;
}

#index-btn,
#date-picker-btn {
    padding: 0;
    font-size: 14px;
    margin-left: 5px;
}

#index-btn {
    width: 119px;
    padding: 10px;
    justify-content: space-between;
}

.completed,
.cancel-enter {
    border: 1px solid var(--border-switch);
}

.cancel-enter{
    font-size: 20px !important;
    padding-bottom: 3px;
}

.form-control,
.dropdown-toggle {
    border: 1px solid var(--border-btn-color) !important;
    font-size: 14px;
}

.form-control {
    border-radius: 5px 0 0 5px !important;
    border-right: 0;
    height: 32px;
}

.filter-info {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

.query-text,
.group-by-reminder,
.ui-widget,
#filter-input.form-control{
    font-family: "DINpro", Arial, sans-serif !important;
}
textarea.form-control#filter-input{
    min-height: 32px;
    box-sizing: border-box;
    resize: none; 
    overflow: hidden; 
    transition: height 0.3s ease;
    padding-top: 4px;
    background-color: var(--top-bar-bg-color-regular);
    color: var(--text-color) !important;
    line-height: 21px;
    position: relative;
    width: 100%;
}
textarea.form-control:focus{
    box-shadow: none;
    box-shadow: var(--box-shadow);
    border-bottom: 2px solid var(--purple-2) !important;
}
#filter-input.form-control.expanded, textarea.form-control.expanded {
    white-space: pre-wrap;
    overflow-y: auto;
}
#textarea-ellipsis {
    position: absolute;
    bottom: 2px;
    right: 8px;
    font-weight: 600;
    color: var(--black-5);
    padding: 0 4px;
    pointer-events: none;
    z-index: 2;
    display: none;
    font-size: 22px;
    font-family: auto;
    letter-spacing: 1px;
}
    
.ui-widget{
    height: auto;
    width: auto;
    padding: 0px;
}

.ui-autocomplete::-webkit-scrollbar {
    width: 0;
}
.ui-dialog-title{
    font-size: 18px;
}
.completed{
    background-image: var(--complete-bg-img);
    background-repeat: no-repeat;
    background-size: 47%;
    background-position: center;
}
.select-box{
    border-color: var(--purple-1);
}
#available-indexes{
    width: 210px;
    overflow-x: hidden;
    overflow-y: auto;
    transform: translate3d(0px, 42px, 0px);
    scrollbar-width: none; /* firefox */
    -ms-overflow-style: none;/* IE 10+ */
}
#available-indexes::-webkit-scrollbar {
    display: none;
    /* Chrome Safari */
}
.dropdown-menu{
    min-width: 0;
    padding: 0;
}
.index-dropdown-item{
    width: 182px;
}
.saveq-btn{
    background-image: var(--save-btn-img);
}
.add-logs-to-db-btn{
    background-image: var(--dashboard-btn-img);
}
.alert-from-logs-btn{
    background-image: var(--alerting-btn-img);
}
.download-all-logs-btn{
    background-image: var(--download-btn-img);
    margin-right: 10px;
}
.show-record-intro-btn{
    background-image: var(--show-record-btn-img);
    position: relative;
    border-radius: 5px;
    height: 40px;
}
.below-btn-img{
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: center;
    height: 30px;
    width: 30px;
    border: 1px solid var(--border-btn-color);
}

.below-btn-img:hover,
.add-con:hover,
.cancel-enter:hover,
.completed:hover{
    background-color: var(--drop-down-btn-bg-hover);
}
.run-filter-btn{
    height: 32px;
    border-radius: 0 5px 5px 0;
    border: none;
}
.filter-container {
    display: flex;
    background-color: var(--top-bar-bg-color-regular);
}
.search-bar-container{
    width: 100%;
}
.show-record-popup{
    display: none;
}
div.show-record-popup {
    width: 404px;
    height: auto !important;
    padding: 0 !important;
    margin: 0 0 20px 30px !important;
}
.ui-dialog-buttonpane{
    position: relative;
    height: 65px;
}
.cancel-record-btn{
    position: absolute;
    right: 0;
    background: var(--component-bg-color) !important;
}
.cancel-record-btn:hover{
    background: var(--component-bg-color-hover) !important;
}
.ag-theme-mycustomtheme .ag-root-wrapper{
    border: 1px solid var(--border-btn-color);
}

.ag-row,
.measureAggGrid .ag-row-even,
.LogResultsGrid .ag-row-even{
    background-color: var(--default-tab) !important;
}
.ag-row::after,
.LogResultsGrid .ag-row-even::after{
    content: '';
    position: absolute;
    left: 10px;
    width: calc(100% - 20px);
    height: 1px;
    background-color: var(--panel-table-line-color);
    bottom: 0;
}
.aggregations{
    color: var(--black-5) !important;
    margin-left: 10px;
}
.ag-header-viewport{
    border-bottom: 1px solid var(--panel-table-line-color);
}
.stop-search {
    background-color: var(--border-btn-color);
    opacity: 0.5; 
    cursor: not-allowed; 
}
.stop-search:hover{
    background-color: var(--border-btn-color);
}
.custom-chart-tab{
    position: relative;
    height: 100%;
    background: none;
    display: none;
}
.tab-chart-list{
    height: 30px;
    border-radius: 5px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 150px;
    margin-right: 10px !important;
    background-color: var(--myOrg-input);
    margin-left: -5px !important; 
}
#logs-view-controls {
    left: 155px;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
}
#tabs-chart,
#showTable{
    display: none;
    margin: 10px 0 0 0;
}
.tab-content-size{
    height: 100%;
}
.column-chart {
    width: 100%;
    height: calc(100% - 80px);
    overflow: hidden;
    border: 1px solid var(--search-input-border);
    box-shadow: var(--box-shadow);
    border-radius: 10px;
    padding: 10px;
    background: var(--black1-to-white0)
}
.show-table{
    height: calc(100% - 58px);
}
.hide-graph{
    display: none;
    height: calc(100% - 58px);
}
.hide-graph-text{
    display: flex;
    height: calc(100% - 58px);
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-size: 24px;
    font-weight: var(--fw-500);
    color: var(--empty-response-text-color);
    width: 100%; 
    height: 90%;
    margin-bottom: 50px;
    border: 1px solid var(--search-input-border);
    box-shadow: var(--box-shadow);
    border-radius: 10px;
    background: var(--black1-to-white0)
}

/* Position-relative container for query-input bar */
.position-relative {
    position: relative;
    width: 100%;
}

/* Clear query button styles */
#clear-query-btn {
    /* Position the button */
    position: absolute;
    top: 45%; /* Adjust vertically */
    right: 10px; /* Adjust horizontally */
    transform: translateY(-50%);

    /* Button appearance */
    background-color: transparent;
    color: rgb(111, 108, 123); /* R111 G108 B123 */
    font-family: "DINpro", Arial, sans-serif;
    font-weight: lighter;
    font-size: 20px;
    border: none;
    cursor: pointer;
    padding: 0;
    margin: 0;
}

  
.ui-autocomplete > li > div {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: normal;
    height: 34px;
    white-space: nowrap;
    display: flex;
    align-items: center;
}
  
.ui-state-hover,
.ui-state-active,
.ui-state-focus {
    color: #ffffff !important;
    text-decoration: none;
    background-color: var(--purple-2) !important;
    cursor: pointer;
    height: 34px;
    border: none !important;
    outline: none;
}
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button{
    font-family: "DINpro", Arial, sans-serif;    
    font-size: 14px;
}
.query-builder-container{
    box-shadow: 0px 2px 8px 0px var(--border-shadow);
    border-radius: 5px;
    padding: 10px 10px 14px 10px;
    background-color: var(--qb-box-bg);
    margin: 10px 0px;
}
[data-theme='dark'] .query-builder-container{
    box-shadow: none;
}
#filter-box-1{
    border-radius: 5px 0 0 5px;
}
#filter-box-1 li{
    background-color: var( --selected-filter-yellow);
}

#filter-box-2 li{
    background-color: var(--selected-filter-blue);
}

#filter-box-3 li{
    background-color: var( --selected-filter-red);
}
#initial-response{
    width: 100%;
    margin-top: 15%;    
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 24px;
    text-align: center;
    padding: 40px;
    border-radius: 5px;
    color: var(--empty-response-text-color);
    display: none;
}
#empty-response{
    display: none;
}
#query-language-options, #query-mode-options{
    width: 93px;
    padding: 0px;
    padding-top: 0px;
    position: relative;
    font-size: 12px !important;
    background: var(--index-drop-down-box-bg-color);
    padding: 0px 5px 5px 5px;
    border: 1px solid var(--timepicker-border-color);
}

#query-language-btn span, #query-mode-btn span{    
    display: block;
    font-size: 12px !important;
}