
.body-font {
	font-family: var(--tvwa-rt-font-body);
	font-weight: 400;
	font-size:12px;
}

body {
	font-family: var(--tvwa-rt-font-body);
	color: var(--tvwa-rt-color-text);
	background-color: var(--tvwa-rt-color-page-bg);
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	font-family: var(--tvwa-rt-font-heading);
	font-weight: 900;
	font-style: normal;
	text-transform: none;
	text-decoration: none;
}

.body-scroll-props {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: fixed;
}

@media (max-device-width : 767px),(max-device-height : 767px) {
	.body-scroll-props-mobile {
		/*height: 100vh;
		overflow: unset;
		position: unset;*/
	}
}


.tvLoginInfoBtnStyle {
	font-size: 13px;
	width:auto;
}

.tvLoginInfoDDStyle {
	max-width: 25px;
	font-size: 13px;
	background-color: var(--tvwa-rt-bs-warning-subtle-border);
}

.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    color: var(--tvwa-rt-color-text-strong);
    background-color: var(--tvwa-rt-bs-info-subtle-border);
}

.btn:focus {
  outline: none !important;
  box-shadow: none !important;
}

.btn.btn-xs {
    padding  : .25rem .4rem;
    font-size  : .875rem;
    line-height  : .5;
    border-radius : .2rem;
}

.btn-group-xs > .btn, .btn-xs {
    padding  : .25rem .4rem;
    font-size  : .875rem;
    line-height  : .5;
    border-radius : .2rem;
}

.w-auto {
	width: auto !important;
}

.tvwa-navbar-folder {
	background-color: var(--tvwa-rt-color-nav-bg);
}

.tvwa-navbar-item-container {
	padding-top: 0.20rem!important;
	padding-bottom: 0.20rem!important;
	padding-left: 0.50rem!important;
	padding-right: 0.50rem!important;
	vertical-align: middle;
	border-radius: .15rem!important;
	color: var(--tvwa-rt-color-nav-text) !important;
}

.tvwa-navbar-item-container:hover {
	color: var(--tvwa-rt-color-nav-active-text) !important;
}

.tvwa-navbar-item-container.active {
	font-weight: 700;
	color: var(--tvwa-rt-color-nav-active-text) !important;
}

.tvwa-navbar-item-container.tvwa-navbar-folder.active {
	color: var(--tvwa-rt-color-nav-active-text) !important;
}

.tvwa-navbar-item-container.folderItem {
	color: var(--tvwa-rt-color-nav-text) !important;
}

.tvwa-navbar-item-container.folderItem:hover {
	color: var(--tvwa-rt-color-nav-active-text) !important;
	background-color: var(--tvwa-rt-color-nav-bg);
}

.tvwa-navbar-item-container.folderItem.active {
	color: var(--tvwa-rt-color-nav-active-text) !important;
	background-color: var(--tvwa-rt-color-nav-active-bg) !important;
	font-weight: 700;
}

.tvwa-navbar-item {
	border-radius: .15rem!important;
	padding:.25rem;
	text-align: center;
	flex-wrap: nowrap;
	white-space: nowrap;
	word-break: keep-all;
	font-size:13.5px;
}


@media (min-device-width : 768px) {
	@media (max-device-width : 1024px) {
		.tvwa-navbar-item {
			font-size:11.5px !important;
		}
		.tvwa-navbar-item-container {
			margin-left: 2px;
			margin-right: 2px;
		}
	}
}

@media (max-device-width : 767px) {
	.tvwa-navbar-item-container {
		margin-top: 8px;
	}
	.tvwa-navbar-item {
		font-size:13.5px !important;
	}
}

.tvwa-hdr-bg {
	background-color: var(--tvwa-rt-color-page-bg);
}

.tvwa-ui-name {
	font-size:20px;
	font-weight: 600;
}

.tvwa-accent-text-color {
	color: var(--tvwa-rt-color-accent)!important
}

.tvwa-accent-text-boldest {
	font-weight: 900;
}


.tvwa-selectable-element {
	border: 1px dashed var(--tvwa-rt-color-selection-border);
	min-height: 20px;
	padding: 10px;
}

template.tvwa-template.tvwa-selectable-element {
	display: block;
	margin: 10px !important;
	border: 3px dashed var(--tvwa-rt-color-selection-border);
}

table.tvwa-selectable-element, thead.tvwa-selectable-element, tbody.tvwa-selectable-element, tr.tvwa-selectable-element {
	display: block;
}

input[type="checkbox"].custom-control-input.tvwa-selectable-element {
	position: static !important;
	z-index: initial !important;
	opacity: initial !important;
}

input[type=checkbox]:after {
  content: " ";
  background-color: var(--tvwa-rt-color-selection-checkbox-bg);
  display: inline-block;
  visibility: visible;
}


input[type="checkbox"].custom-control-input.tvwa-selectable-element.tvwa-selectable-element.mouseover:after {
	content: "--";
	background-color: var(--tvwa-rt-color-selection-active) !important;
	display: inline-block;
}

input[type="checkbox"].custom-control-input.tvwa-selectable-element.tvwa-selectable-element.current-selection:after {
	content: "--";
	background-color: var(--tvwa-rt-color-selection-active) !important;
	display: inline-block;
}

input[type="checkbox"].custom-control-input.tvwa-selectable-element.tvwa-selectable-element.mouseover + label.custom-control-label {
	border: 2px dashed var(--tvwa-rt-color-selection-active) !important;
}

input[type="checkbox"].custom-control-input.tvwa-selectable-element.tvwa-selectable-element.current-selection + label.custom-control-label {
	border: 2px solid var(--tvwa-rt-color-selection-active) !important;
}

.tvwa-selectable-element.mouseover {
	border: 2px dashed var(--tvwa-rt-color-selection-active) !important;
}

.tvwa-selectable-element.current-selection {
	border: 2px solid var(--tvwa-rt-color-selection-active) !important;
	
}

.tvwa-data-table, .tvwa-embed-form {
	min-height: 200px;
	width: 100%;
}
.tvwa-data-table-ph {
	background-image: url("../icons/table-svgrepo-com.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position:relative;
	width: 100%;
	height: 200px;
	z-index: 10;
}
.tvwa-data-table-ph-overlay, .tvwa-embed-form-ph-overlay, .tvwa-ai-agent-ph-overlay {
	position: absolute;
	z-index: 11;
	background-color: var(--tvwa-rt-color-placeholder-overlay-bg);
	left:0px; top: 0px;
	width: 100%;
	height: 200px;
}

.tvwa-embed-form-ph {
	background-image: url("../icons/form-icon-svgrepo-com.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position:relative;
	width: 100%;
	height: 200px;
	z-index: 10;
}
.tvwa-ai-agent-ph {
	background-image: url("../icons/sparkles-svgrepo-com.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position:relative;
	width: 100%;
	height: 200px;
	z-index: 10;
}


.tvwa-form-main, .tvwa-form-status-ok, .tvwa-form-status-err {
	display: none;
}

/*
 * Bound controls do not have to use Bootstrap's form-control classes. Keep
 * Bootstrap's validation styling when they do, and provide validation-only
 * styling for custom controls when they do not.
 */
input[data-tvcrud-fld].is-valid:not(.form-control):not(.form-check-input):not(.custom-control-input),
select[data-tvcrud-fld].is-valid:not(.form-control):not(.custom-select),
textarea[data-tvcrud-fld].is-valid:not(.form-control) {
	border-color: var(--tvwa-rt-bs-success);
}

input[data-tvcrud-fld].is-valid:not(.form-control):not(.form-check-input):not(.custom-control-input):focus,
select[data-tvcrud-fld].is-valid:not(.form-control):not(.custom-select):focus,
textarea[data-tvcrud-fld].is-valid:not(.form-control):focus {
	border-color: var(--tvwa-rt-bs-success);
	box-shadow: 0 0 0 .2rem rgba(40, 167, 69, .25);
}

input[data-tvcrud-fld].is-invalid:not(.form-control):not(.form-check-input):not(.custom-control-input),
select[data-tvcrud-fld].is-invalid:not(.form-control):not(.custom-select),
textarea[data-tvcrud-fld].is-invalid:not(.form-control) {
	border-color: var(--tvwa-rt-bs-danger);
}

input[data-tvcrud-fld].is-invalid:not(.form-control):not(.form-check-input):not(.custom-control-input):focus,
select[data-tvcrud-fld].is-invalid:not(.form-control):not(.custom-select):focus,
textarea[data-tvcrud-fld].is-invalid:not(.form-control):focus {
	border-color: var(--tvwa-rt-bs-danger);
	box-shadow: 0 0 0 .2rem rgba(220, 53, 69, .25);
}

input[type="checkbox"][data-tvcrud-fld].is-valid:not(.form-control):not(.form-check-input):not(.custom-control-input),
input[type="radio"][data-tvcrud-fld].is-valid:not(.form-control):not(.form-check-input):not(.custom-control-input) {
	outline: 2px solid var(--tvwa-rt-bs-success);
	outline-offset: 2px;
}

input[type="checkbox"][data-tvcrud-fld].is-invalid:not(.form-control):not(.form-check-input):not(.custom-control-input),
input[type="radio"][data-tvcrud-fld].is-invalid:not(.form-control):not(.form-check-input):not(.custom-control-input) {
	outline: 2px solid var(--tvwa-rt-bs-danger);
	outline-offset: 2px;
}

input[data-tvcrud-fld].is-valid:not(.form-control):not(.form-check-input):not(.custom-control-input) ~ .valid-feedback,
select[data-tvcrud-fld].is-valid:not(.form-control):not(.custom-select) ~ .valid-feedback,
textarea[data-tvcrud-fld].is-valid:not(.form-control) ~ .valid-feedback,
input[data-tvcrud-fld].is-invalid:not(.form-control):not(.form-check-input):not(.custom-control-input) ~ .invalid-feedback,
select[data-tvcrud-fld].is-invalid:not(.form-control):not(.custom-select) ~ .invalid-feedback,
textarea[data-tvcrud-fld].is-invalid:not(.form-control) ~ .invalid-feedback {
	display: block;
}

.tvwa-template-area, .tvwa-template {
	display: none;
}

.tvwa-spacer {
	width: 100%;
}

.tvwa-block-box {
}

.tvwa-block-box-overflow-auto {
	overflow-x: auto !important;
    overflow-y: auto !important;
}

.tvwa-block-box-overflow-scroll {
	overflow-x: scroll !important;
    overflow-y: scroll !important;
}

.tvwa-block-box-overflow-clip {
	overflow-x: clip !important;
    overflow-y: clip !important;
}

.tvwa-block-box-overflow-hidden {
	overflow-x: hidden !important;
    overflow-y: hidden !important;
}


.tvwa-canvas {

}

.tvwa-canvas-w100 {
	width: 100% !important;
}

.tvwa-canvas-h100 {
	height: 100% !important;
}

.tvwa-files-drop-area {
	
}

.tvwa-files-drop-area.tv-drag-enter {
	background-color: transparent !important;
}

.tvwa-files-drop-area-row {
	cursor: pointer !important;
	min-height: 170px;
	background-color: var(--tvwa-rt-color-drop-area-bg);
}

.tvwa-files-drop-area-row.tv-drag-enter-row {
	border-style: dashed;
	border-color: var(--tvwa-rt-color-text-strong);
	background-color: var(--tvwa-rt-color-drop-area-active-bg) !important;
}

.pre-scrollable {
	overflow-y: auto !important;
}

.tvwa-boz-p1 {
	width: 133px !important;
	position: fixed !important;
	bottom: 10px !important;
	right: 5px !important;
	height: 29px !important;
	z-index: 100000000000 !important;
	background: var(--tvwa-rt-color-powered-by-bg) !important;
	border-radius: var(--tvwa-rt-radius-powered-by) !important;
	border: 0px solid var(--tvwa-rt-color-powered-by-border) !important;
}

.tvwa-boz-p1c1 {
	position: absolute;
	width: 100%;
	height: 100%;
}

.tvwa-boz-p1c2 {
	width: 100%;
	height: 100%;
	position: absolute;
}

.tvwa-boz-p1c1c1 {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	height: 100%;
	padding: 0 7px;
	box-sizing: border-box;
}

.tvwa-boz-p1c1c1c1 {
	width: 50px !important;
	height: auto !important;
	display: block;
	background-color: #e6f5f7;
	padding: 2px 3px 2px 5px;
	border-radius: 4px;
}

.tvwa-boz-p1c1c1c2 {
	color: var(--tvwa-rt-color-powered-by-text);
	font-size: 12px;
	font-family: var(--tvwa-rt-font-powered-by);
	font-weight: bold;
	white-space: nowrap;
}

.tvwa-ai-agent-mainContParent {
	border: 1px solid var(--tvwa-rt-color-border);
	/*max-width: 1024px;*/
}

.tvwa-ai-agent-mainCont {
	min-height: 300px;
}

.tvwa-ai-agent-toolbar {
	text-align: center;
	flex-shrink: 0;
	padding-left: 0.2rem;
	padding-right: 0.2rem;
	padding-top: 0.6rem;
	background-color: var(--tvwa-rt-color-ai-agent-toolbar-bg);
	border-bottom: 1px solid var(--tvwa-rt-color-border);
}

.tvwa-ai-agent-title {

}

.tvwa-ai-agent-newBtn {

}

.tvwa-ai-agent-listBtn {

}

.tvwa-ai-agent-refreshBtn {

}

.tvwa-ai-agent-chatTitle {

}

.tvwa-ai-agent-chatPrevCont {

}

.tvwa-ai-agent-chatPrevBtn {

}


.tvwa-ai-agent-chatContParent {
	padding-top: 1rem;
	padding-bottom: 1rem;
	text-align: center;
	flex-grow: 1;
	overflow: auto;
	overscroll-behavior: contain;
}

.tvwa-ai-agent-chatBox {
	text-align: center;
	flex-shrink: 0;
	padding-left: 1rem;
	padding-right: 1rem;
	padding-bottom: 0.25rem;
}

.tvwa-ai-agent-chatBoxInput {

}

.tvwa-ai-agent-chatBoxBtn {

}


.tvwa-ai-agent-userMsgCont {
	padding-bottom: 0.5rem!important;
	margin-top: 0.5rem!important;
}

.tvwa-ai-agent-userMsgRow {
	margin-left: 0!important;
	margin-right: 0!important;
}

.tvwa-ai-agent-userMsgCol {
	background-color: var(--tvwa-rt-color-user-message-bg);
	border-radius: var(--tvwa-rt-radius-pill) !important;
	padding-bottom: 0.5rem!important;
	padding-top: 0.5rem!important;
}

.tvwa-ai-agent-statusMsgCont {
	padding-bottom: 0.5rem!important;
	margin-top: 0.5rem!important;
}

.tvwa-ai-agent-statusMsgProgRow {
	margin-left: 0!important;
	margin-right: 0!important;
}

.tvwa-ai-agent-statusMsgProgCol {
	padding-bottom: 0.5rem!important;
	padding-top: 0.5rem!important;
}

.tvwa-ai-agent-statusMsgRow {
	margin-left: 0!important;
	margin-right: 0!important;
}

.tvwa-ai-agent-statusMsgCol {
	padding-bottom: 0.5rem!important;
	padding-top: 0.5rem!important;
}

.tvwa-ai-agent-sysMsgCont {
	padding-bottom: 0.5rem!important;
	margin-top: 0.5rem!important;
}

.tvwa-ai-agent-sysMsgRow, .tvwa-ai-agent-sysHdrRow {
	margin-left: 0!important;
	margin-right: 0!important;
}

.tvwa-ai-agent-sysMsgCol, .tvwa-ai-agent-sysHdrCol {
	padding-bottom: 0.5rem!important;
	padding-top: 0.5rem!important;
}

.tvwa-ai-agent-sysMsgCol table {
    border-collapse: collapse;
    border: 1px solid var(--tvwa-rt-color-border-muted);
    width: 100%;
    background-color: var(--tvwa-rt-color-surface);
}

.tvwa-ai-agent-sysMsgCol table th,
.tvwa-ai-agent-sysMsgCol table td {
    border: 1px solid var(--tvwa-rt-color-border-muted);
    padding: 8px;
    text-align: left;
}

.tvwa-ai-agent-sysMsgCol table tbody tr:hover {
    background-color: var(--tvwa-rt-color-ai-agent-table-hover-bg);
}

.tvwa-ai-agent-file-loading {
}

.tvwa-ai-agent-image-container {
	max-width: 75%;
}

.tvwa-ai-agent-image {
}

.tvwa-ai-agent-floatWindow {
	position: absolute;
	border: 1px solid var(--tvwa-rt-color-border-strong);
	z-index: 1031;
	background-color: var(--tvwa-rt-color-ai-agent-float-bg);
}

.tvwa-ai-agent-floatButton {
	width: 48px !important;
	height: 48px !important;
	position: fixed !important;
	bottom: 50px !important;
	right: 29px !important;
	z-index: 1030 !important;
	cursor: pointer !important;
}

.tvwa-ai-agent-disclaimer {
	font-weight: bold;
	color: var(--tvwa-rt-color-ai-agent-disclaimer-text);
	font-size:11px;
}

.tvwa-ai-agent-promptCategory {
	font-weight: bold;
}

.tvwa-ai-agent-promptItem {
	cursor: pointer;
	background-color: var(--tvwa-rt-color-ai-agent-prompt-bg);
	border-radius: var(--tvwa-rt-radius-prompt) !important;
	padding: .5rem !important;
	white-space: normal !important;
}
