:root {

  --header-height: 7vh;
  --header-min-height: 50px;
  --bottom-height: 90px;
  --footer-height: 4vh;

  --sidebar-bg: #495057;
  --sidebar-text: #fff;
  --sidebar-text-rgb: 255,255,255;
  --sidebar-width: 270px;
  --dis-sidebar-width: -270px;

  --group-data-bg: var(--bs-body-bg);
  --group-data-name: var(--bs-secondary-color);
  --group-data-text: var(--bs-body-color);
  --group-data-color: var(--bs-primary);
  --group-data-head-text: var(--bs-body-bg);

}

header {
  height: var(--header-height);  
  min-height:var(--header-min-height);
  max-height: var(--header-min-height);
}

.main-logo {
  /*filter: var(--fil-white);*/
  font-family: 'Inter','Sarabun', sans-serif !important;
}

.overflow-hidden {
  overflow: hidden;
}
.w-full {
  width: 100%;
}
.w-fill {
  width: -webkit-fill-available;
}
.max-w-full {
  max-width: 100%;
}
.h-full {
  /*height: 100%;*/
  height: calc(100vh - var(--header-height) - var(--footer-height));
  min-height: calc(100vh - var(--header-min-height) - var(--footer-height));
  max-height: calc(100vh - var(--header-min-height) - var(--footer-height));
}
.h-fill {
  /*height: 100%;*/
  height: calc(100vh - var(--footer-height));
  min-height: calc(100vh - var(--footer-height));
  max-height: calc(100vh - var(--footer-height));
}
.flex {
  display: flex;
}
.-z-0, .z-0 {
  z-index: 0;
}
.relative {
  position: relative;
}
.flex-1 {
  flex: 1 1 0%;
}
.flex {
  display: flex;
}
.list-gp {
  margin-bottom: 0.5rem;
}
.list-gp-item {
  border-bottom: 1px solid rgba(204, 204, 204, 0.2);
  line-height: 2.5rem;
}
.btn-link { text-decoration: none !important;}

.tool-left { 
  width: 260px;
  padding: 0.5rem!important;
  flex-shrink: 0!important;
  overflow-x: hidden!important;
  transition: width 0.3s ease-in-out;
}

.tool-left.collapsed {
  width: 90px;
}

.collapse-button {
  padding: 0.5rem;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.5)
}
.flow-y-auto {
  overflow-y: auto;
}
.flow-y-scroll {
  overflow-y: scroll;
}



/*----Nav Menu-----*/
.main-nav {
  box-shadow: rgba(0, 0, 0, 0.08) 0px 1px 12px;
  background: #fff;
  z-index: 100;
} 
.main-nav .navbar-nav{
  justify-content: center;
}
.main-nav .navbar-nav .nav-link,.main-nav .navbar-expand-lg .navbar-nav .nav-link {
  /*color: var(--col-white);*/
  font-weight: 500;
  padding: 0.5rem 0.7rem 0.2rem 0.7rem ;
  margin-top: -0.5rem;
}
.main-nav .nav-link {position: relative;}
.main-nav .nav-link::before {transition: all 0.2s;}
.main-nav .nav-link:hover::before, .main-nav .nav-link.active::before {
  content: '';
  height: 2px;
  width: 50%;
  background: var(--bs-primary);
  position: absolute;
  bottom: 0;
  left: 25%;
}


.dropend .dropdown-toggle {
  color: var(--bs-primary);
  margin-left: 1em;
}

.nav-pills {
  --bs-nav-pills-border-radius: var(--bs-border-radius);
  --bs-nav-pills-link-active-color: var(--bs-color-primary);
  --bs-nav-pills-link-active-bg: var(--bs-primary);
}

.pagination .page-item:focus , .pagination .page-link:focus{
  outline: none !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
}

/*=============POLICE=================*/

body { font-family: 'Sarabun', sans-serif; background-color: #f0f2f5; }
.stat-card { transition: transform 0.2s; }
.stat-card:hover { transform: translateY(-3px); }
.table-custom thead { background-color: #003366; color: white; }
.bg-icon { color: #003366; opacity: 0.1; position: absolute; right: 20px; bottom: 10px; font-size: 3rem; }
.amount-text { font-weight: bold; color: #dc3545; }
@media print { .btn-print { display: none; } }

.nodeBox{
    border:1px solid #ddd;
    border-radius:8px;
    padding:10px;
    background:white;
    width:220px;
    box-shadow:0 2px 6px rgba(0,0,0,0.1);
    cursor: pointer;
}

  .section-title {font-size: 1.25rem; font-family:'Kanit', sans-serif; }
  .node-entry { background: #ffffff; background:rgb(243, 243, 243); border-radius: 10px; transition: 0.3s; }
  .stats-badge { color: #007bff; font-weight: bold; }
  #otherNetworkInput { display: none; } /* ซ่อนช่องกรอก "อื่นๆ" ไว้ก่อน */

  /*Graph Network*/
  .tooltip-title { border-bottom: 1px solid #eee; font-weight: bold; margin-bottom: 5px; color: #0d6efd; }
  #main-container { width: 100%; height: 80vh; min-height: 400px; }

/*==============================*/


/*----gp----*/
  .gp-item-main {
    grid-template-rows: auto;
    display: grid; 
    gap: 10px;
    justify-items: stretch;
    align-items: stretch;
    grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
  }
  .gp-item-main .gp-item{ 
    text-align: center;
    border: 1px solid rgba(204, 204, 204, 0.2) ;
    border-radius: 5px;
    cursor: pointer;
    background: rgba(0,0,0,0.1);
  }
  .gp-item-main .gp-item img { width: 30px; padding: 0.5rem 0;}
  .gp-item-main .gp-item .txt { font-size: 0.60rem;}

  .form-field {margin-bottom: var(--g5); }
  .form-field>label:first-child { display: inline-block; width: 25%; vertical-align: top; font-weight: 500; cursor: text;}
  .form-field>input, .form-field>textarea, .form-field>select{ width: 73%;}
  .form-field input[type="checkbox"],  .form-field input[type="radio"] { /*width: 20px;*/ margin-right: 5px;}
  /*.form-field div { display: block;}*/
  
  .form-field .error-message { margin-left: 25%;}
  
  .form-checkbox input{ width:fit-content;}

  .form-block {
    /*padding: 0.75rem!important;*/
    margin-bottom: 0.75rem!important;
    box-shadow: 0 .05rem .15rem rgba(0,0,0,.1)!important;
    background-color: var(--bs-body-bg);
    border-radius: .25rem;
    /*border-left:4px #fff solid;*/
    position: relative;
    cursor: move;
  }

  .form-active, .edit-form-container .form-block{ 
    /*border-left:4px var(--bs-primary) solid;*/
    box-shadow: 0 .15rem .35rem rgba(0,0,0,.45)!important;
  }
  .form-active::after, .edit-form-container .form-block::after {
    content: '⠿';
    color: rgba(0, 0, 0, 0.25) !important;
    position: absolute;
    top: 50%;
    right: 4px;
    transform: translateY(-50%);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='currentColor' class='bi bi-grip-vertical' viewBox='0 0 30 30'%3E%3Cpath d='M7 2a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM7 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM7 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-3 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-3 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0z'/%3E%3C/svg%3E");
    filter: invert(92%) sepia(0%) saturate(13%) hue-rotate(164deg) brightness(89%) contrast(92%) !important;
    background-size: 40px;
  }

  /*.form-active .form-active-edit, .edit-form-container .form-active-edit {display: none;}*/
  .form-block::after {
    content: '⠿';
    color: rgba(0, 0, 0, 0.0);
    position: absolute;
    top: 50%;
    right: 4px;
    transform: translateY(-50%);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' fill='currentColor' class='bi bi-grip-vertical' viewBox='0 0 30 30'%3E%3Cpath d='M7 2a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM7 5a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zM7 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-3 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm-3 3a1 1 0 1 1-2 0 1 1 0 0 1 2 0zm3 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0z'/%3E%3C/svg%3E");
    filter: invert(100%) sepia(0%) saturate(7450%) hue-rotate(52deg) brightness(96%) contrast(110%);
    background-size: 40px;
  }

  .form-block:hover::after {
    /*color: rgba(0, 0, 0, 0.25);-*/
    filter: invert(92%) sepia(0%) saturate(13%) hue-rotate(164deg) brightness(89%) contrast(92%);
  }
  .form-active-del {
    padding: 5px;
    /*box-shadow: 0 .15rem .35rem rgba(0,0,0,.45);
    background-color: #fff;*/
    background-color: var(--bs-danger);
    color: #fff;
    border-radius: 5px;
    width: 35px;
    height: 35px;
    text-align: center;
    position: absolute;
    top: 0px;
    right: -45px;
    cursor: pointer;
  }
  .form-active-edit {
    padding: 5px;
    /*box-shadow: 0 .15rem .35rem rgba(0,0,0,.45);
    background-color: #fff;*/
    background-color: var(--sidebar-bg);
    color: var(--sidebar-text);
    border-radius: 5px;
    width: 35px;
    height: 35px;
    text-align: center;
    position: absolute;
    top: 0;
    right: -40px;
    cursor: pointer;
  }
  /*.form-move {
    color: rgba(0, 0, 0, 0.25);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }

  .ml--12 { margin-left: -12px;}
  */
  
  @media only screen and (min-width: 1px) and (max-width: 640px){
  .form-field>label:first-child {display:block; width:fit-content;}
  .form-field label { display:inline-block; width:fit-content;}
  .form-field>input, .form-field>textarea, .form-field>select{ width: 100%;}
  .form-field .error-message { margin-left: 0%;}
  .form-checkbox input{ width:auto;}
  }

.card {
  box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important;
  border: none;
}

.f-vw {
  font-size: calc(0.75rem + 1.0vw)!important;
}

.collapsed .f-vw {
  font-size: 0.95rem !important;
}

/* Steps Progress Bar */
.progressbar {
  padding-bottom: 10px;
  max-width: 500px;
}

ol.steps {
  display: flex;
  list-style: none;
  text-align: center;
  counter-reset: milestones; /* init counter */

  /* design */
  width: 100%;
  margin: 0;
  padding: 0;
}

ol.steps li {
  flex-grow: 1;
  flex-basis: 0;
  margin: 0;
  padding: 0;
  position: relative;
  z-index: 1;

  /* design */
  line-height: 1.em;
  font-size: 0.85rem;
}

ol.steps a {
  display: block;
  text-decoration: none;
}

ol.steps a::before,
ol.steps a::after {
  display: block;
  font-size: 1.0em;
  box-sizing: border-box;
}

/* circle */
ol.steps a::before {
  border-radius: 50%;
  text-decoration: none;

  /* add counter */
  content: counter(milestones);
  counter-increment: milestones;

  /* design */
  width: 2em;
  height: 2em;
  line-height: 2em;
  margin: 0 auto 0.5em;
}

/* connecting line */
ol.steps a::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 0;
  border: 0;

  /* design */
  left: 50%;
  top: 1em;
  border-bottom-width: 0.2em;
  margin-top: -0.25em;
}
/* don't show for last element */
ol.steps li:last-child a::after {
  display: none;
}

/* Colors */
ol.steps a,
ol.steps a:visited {
  color: var(--bs-body-color);
}

/* finished milestone - default */
ol.steps a::before {
  color: var(--bs-body-color);
  background-color: var(--bs-primary);
  box-shadow: inset 0 0 0 0.1em var(--bs-primary);
}
ol.steps a::after {
  border-bottom-style: solid;
  border-color: var(--bs-primary);
}

/* current milestone */
ol.steps li.current a {
  font-weight: 600;
  color: var(--bs-primary);
}
ol.steps li.current a::before {
  color: var(--bs-body-color);
  /*background-color: #fcfcfa;*/
  background-color: var(--bs-primary);
  box-shadow: inset 0 0 0 0.1em var(--bs-primary);
}
ol.steps li.current a::after {
  border-style: dashed;
  border-color: var(--bs-primary);
}

/*ol.steps li a::after {
  border-style: dashed;
  border-color: #ccc;
}*/

/* unfinished milestone */
ol.steps li.current ~ li a::before {
  color: #707070;
  background-color: #e7e7e3;
  box-shadow: inset 0 0 0 0.1em #d4d4d4;
}
ol.steps li.current ~ li a::after {
  /*border-bottom-style: none;*/
  border-color: #e7e7e3;
}

/*---table-manager---*/

/* .table-striped>tbody>tr:nth-of-type(odd)>* {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-gray-100)var(--bs-table-striped-bg);
}*/ 

.table-container .action{
  text-align: right;
  min-width: 150px;
}
.table-container .action a {
  color: var(--bs-body-color);
}

@media only screen and (min-width: 1px) and (max-width: 640px){
  .table-container table{
    max-width: 100%;
    border-collapse: collapse;
  }
  .table-container {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}


/*----main data-----*/
.main-data, .h-full {background-color: var(--main-bg)}    
.main-data { 
  min-width: calc(100% - var(--sidebar-width));
  /*width: 100vw;*/

  /*#main*/
  flex-basis: 0;
  flex-grow: 1;
  min-width: 0;
  height: 100%;
  flex-direction: row;
  position: relative;
  /*display: flex;*/
  margin: 0;
  padding: 0;
}
.main-content {
  height: calc( (100vh - var(--header-height)) - var(--footer-height)) !important; 
  min-width: 200px;
}
.main-chat {
  height: calc( (100vh - var(--header-height) - var(--footer-height)) - var(--bottom-height)) !important; /*height: 70vh;*/ 
}
.chat-bottom { 
  position: sticky; 
  bottom: 0; 
  width: -webkit-fill-available;
  width: 100%;
  height: var(--bottom-height);
  background-color: var(--bs-body-bg);
}
.text-prompt {
  max-height: 200px; height: 62px; resize: none; overflow-y: hidden;
}


/*---scrollbar---*/
div, nav{
  scrollbar-width: thin;
}
div::-webkit-scrollbar-track, nav::-webkit-scrollbar-track
{
	/*-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);*/
	border-radius: 10px;
  background-color: var(--col-bggrey);
}

div::-webkit-scrollbar, nav::-webkit-scrollbar
{
	width: 7px;
  height: 7px;
	background-color: var(--bs-body-bg);
}

div::-webkit-scrollbar-thumb, nav::-webkit-scrollbar-thumb
{
	border-radius: 10px;
  background-color: var(--col-bggrey);
	/*background-color: rgba(var(--bs-body-color-rgb),0.2);*/
}

div:hover::-webkit-scrollbar-thumb, nav:hover::-webkit-scrollbar-thumb
{
	border-radius: 10px;
	background-color: rgba(var(--bs-body-color-rgb),0.2);
}

div.sidebar {
  scrollbar-width: thin;
  scrollbar-color: var(--sidebar-bg) var(--sidebar-bg) !important;
}
div.sidebar::-webkit-scrollbar {
  scrollbar-width: thin;
  background-color: var(--sidebar-bg);
}
div.sidebar:hover {
  scrollbar-color: rgba(255,255,255,.3) var(--sidebar-bg) !important;
}
div.sidebar:hover::-webkit-scrollbar {
  background-color: var(--sidebar-bg) ;
}
div.sidebar-list::-webkit-scrollbar-track
{
	/*-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.0);*/
	border-radius: 0px;
	background-color: var(--sidebar-bg);
}

div.sidebar-list::-webkit-scrollbar, div.sidebar::-moz-scrollbar
{
	width: 7px;
	background-color: #fff;
}

div.sidebar-list::-webkit-scrollbar-thumb
{
	border-radius: 0px;
	background-color: var(--sidebar-bg);
}

div.sidebar-list:hover::-webkit-scrollbar-thumb
{
	border-radius: 10px;
	background-color: rgba(255,255,255,.3);
  border: var(--sidebar-bg) 1px solid;
}


/*----Side Bar Resize----*/

#sidebar {
  height: 100%;
  position: relative;
  /*margin: 0;*/
  padding: 0;
  box-sizing: border-box;
  /*background: lightgray;
  border: 2px solid darkgray;*/
  
  /*min-width: 0;*/
}

#resizer {
  flex-basis: 17px;
  position: relative;
  z-index: 2;
  cursor: col-resize;
  padding: 0 5px;
  /*border-left: 1px solid rgba(255, 255, 255, 0.05);
  border-right: 1px solid rgba(0, 0, 0, 0.4);*/
  background: rgba(0, 0, 0, 0.0);
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  /*filter: brightness(75%);*/
}
#resizer:hover {
  background: var(--sidebar-bg);
  opacity: 0.2;
}

/*#main {
  flex-basis: 0;
  flex-grow: 1;
  min-width: 0;
  background: lightblue;
  height: 100%;
  flex-direction: row;
  position: relative;
  display: flex;
  margin: 0;
  padding: 0;
}*/

/*----Side Bar----

https://colorlib.com/wp/template/bootstrap-sidebar-05*/

.wrapper {
  /*width: 100%;*/

  /*#container*/
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  position: relative;
  display: flex;
  overflow: hidden;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.sidebar {
  height: 100%;
  position: relative;
  
  /*min-width: var(--sidebar-width);
  max-width: var(--sidebar-width);*/
  background: var(--sidebar-bg);
  color: var(--sidebar-text);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  /*height: calc(100vh - var(--header-height) - var(--footer-height));*/
  width: var(--sidebar-width);
  max-width: 1020px;
}
.sidebar-list {
  overflow-x: hidden;
  overflow-y: scroll;
  scrollbar-width: thin;
  height: calc(100vh - var(--header-height) - var(--footer-height));
  min-height: calc(100vh - var(--header-min-height) - var(--footer-height));
  max-height: calc(100vh - var(--header-min-height) - var(--footer-height));
}
.sidebar .h6 {
  color: #fff;
}
.sidebar li.active {
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 7px;
}

.sidebar label.f1 { color: rgba(var(--sidebar-text-rgb),0.5) ;}
.sidebar.active {
  margin-left: var(--dis-sidebar-width);
  flex-basis: var(--sidebar-width) !important;
}
.sidebar ul.components {
  padding: 0;
}
.sidebar ul li {
  font-size: var(--f2);
}
.sidebar ul li>ul {
  margin-left: 10px;
}
.sidebar ul li>ul li {
  font-size: var(--f1);
}
.sidebar ul li {
  padding: 10px 0;
  display: block;
}
.list-unstyled li{
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.list-hover li {
  padding-left: 5px !important;
  padding-right: 5px !important;
 }
.list-hover li:hover {
 background: rgba(0, 0, 0, 0.08);
 border-radius: 7px;
 padding-left: 5px;
 padding-right: 5px;
 cursor: pointer;
}

.sidebar ul li>ul {
  margin-left: 10px;
}
.sidebar ul li ul {
  margin-top: 10px;
  padding-left: 0;
}
.sidebar ul li ul li:last-child { border-bottom: none;}
.sidebar ul li ul li {
  padding: 5px 0 ;
  margin-left: 20px;
}
.sidebar ul li>ul li {
  font-size: 14px;
  padding: 5px 0;
}
.sidebar a, .sidebar ul li a {
  color: var(--sidebar-text);
  text-decoration: none;
}
.sidebar ul li a:hover {
  color: var(--sidebar-text);
}
.sidebar ul li.active>a {
  background: transparent;
  color: var(--sidebar-text);
}
/*@media only screen and (min-width: 1px) and (max-width: 667px){
  :root {
    --bottom-height: 160px;
  }
}*/

/* Add this to your custom CSS file */
.stepper-vertical {
  list-style: none;
  padding-left: 0;
  position: relative;
}

.stepper-vertical::before {
  content: '';
  position: absolute;
  top: 0;
  left: 20px; /* Adjust for circle position */
  width: 2px;
  height: 100%;
  background-color: #dee2e6; /* Bootstrap light gray */
}

.step-item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 2rem;
  position: relative;
  padding-left: 40px; /* Space for icon */
}

.step-icon {
  position: absolute;
  left: 10px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: #dee2e6;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  z-index: 1;
}

.step-item.active .step-icon {
  background-color: #0d6efd; /* Bootstrap primary blue */
}

.step-item.done .step-icon {
  background-color: #198754; /* Bootstrap success green */
}

.step-item.done::before {
  background-color: #198754; /* Green line for completed steps */
}

.step-item.done .step-icon {
  content: '✓'; /* Use checkmark for done */
  font-size: 12px;
}


@media (max-width: 991.98px) {
  .main-data { width: 100%;}
  .sidebar {
      /*margin-left: calc(62px + var(--dis-sidebar-width)) !important;*/
      margin-left: var(--dis-sidebar-width) !important;
      position: absolute !important;
      z-index: 10 !important;
  }
  .sidebar.active {
      margin-left: 0 !important;
  }
}

  
.sidebar .custom-menu {
  display: inline-block;
  position: absolute;
  top: 20px;
  right: 0;
  margin-right: -30px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  z-index: 10;
}
@media (prefers-reduced-motion: reduce) {
  .sidebar .custom-menu {
      -webkit-transition: none;
      -o-transition: none;
      transition: none;
  }
}
.sidebar .custom-menu .btn {
  /*width: 60px;
    height: 60px;
    border-radius: 50%;*/
  position: relative;
}
.sidebar .custom-menu .btn i {
  margin-left: 15px;
  font-size: 14px;
}
.sidebar.active .custom-menu .btn i::before {
  transform: rotateY(180deg);
}
.sidebar .custom-menu .btn.btn-primary {
  background: transparent;
  border-color: transparent;
}
.sidebar .custom-menu .btn.btn-primary:after {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: '';
  /*-webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        background: var(--sidebar-bg);
        border-radius: 10px; */
}
.sidebar .custom-menu .btn.btn-primary:hover, .sidebar .custom-menu .btn.btn-primary:focus {
  background: transparent !important;
  border-color: transparent !important;
}

.sidebar .line-toggle {
  fill: var(--sidebar-bg);
  pointer-events: all;
}
.sidebar .btn-toggle {
  stroke: hsla(0, 0%, 100%, .15);
}
.sidebar .caret {
  align-self: center;
  position: absolute;
  color: #fff;
  font-size: 20px;
  top: 35%;
  left: -7%;
}
a[data-toggle="collapse"] {
  position: relative;
}


@media (max-width: 991.98px) {
  .sidebarCollapse span {
      display: none;
  }
}

/*---------grid-----------*/

.form-group .img {
  overflow: hidden;
  aspect-ratio: 1 / 1;
  background-color: rgba(var(--bs-body-color-rgb),0.2);
  border: 3px solid var(--bs-body-bg);
  display: flex;
  justify-content: center;
  align-items: center;
  height: 80px;
}

.form-group .img img {
  width: 100%;
  height: 100%;
  transition: transform .5s ease;
  object-fit: cover;
}

.range-label {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;  
}
.range-text {
  margin-top: 0.25rem;
  font-size: .875em;
  color: var(--group-data-name); 
}


@media (min-width: 576px){
.form-range-0 .range-label, .form-range-0 .range-text {
  /*flex: 0 0 auto;*/
  width: 100%;
}

.form-range-1 .range-label, .form-range-1 .range-text {
  flex: 0 0 auto;
  width: 8.33333333%;
}
.form-range-1 .range-div {
  flex: 0 0 auto;
  width: 91.66666667%;
}

.form-range-2 .range-label, .form-range-2 .range-text {
  flex: 0 0 auto;
  width: 16.66666667%;
}
.form-range-2 .range-div {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.form-range-3 .range-label, .form-range-3 .range-text {
  flex: 0 0 auto;
  width: 25%;
}
.form-range-3 .range-div {
  flex: 0 0 auto;
  width: 75%;
}

.form-range-4 .range-label, .form-range-4 .range-text {
  flex: 0 0 auto;
  width: 33.33333333%;
}
.form-range-4 .range-div {
  flex: 0 0 auto;
  width: 66.66666667%;
}

.form-range-5 .range-label, .form-range-5 .range-text {
  flex: 0 0 auto;
  width: 41.66666667%;
}
.form-range-5 .range-div {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.form-range-half .form-group {
  flex: 0 0 auto;
  width: 50%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
}

.form-range-third .form-group {
  flex: 0 0 auto;
  width: 33.33333333%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
}
}
/*------List Search--------*/
.datepicker {z-index: 10000 !important;}
.form-range-row {
  display: grid;
  /*--bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-.5 * var(--bs-gutter-x));
  margin-left: calc(-.5 * var(--bs-gutter-x));*/
} 
.search-field {
  gap: 0.5rem 1rem!important;
  align-items: center!important;
}
.search-field .group-data {
  padding: 0;
  margin: 0;
  display: contents;
  border: 0;
}
.search-field .form-select, .search-field .form-control{
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: .875rem;
  border-radius: var(--bs-border-radius-sm);
}

.search-field .input-group>.btn, .search-field .input-group>.form-control, .search-field .input-group>.form-select, .search-field .input-group>.input-group-text {
  padding: 0.25rem 0.5rem;
  font-size: .875rem;
  border-radius: var(--bs-border-radius-sm);
}

.search-field .range-label {
  padding-top: 0.25rem!important;
  padding-bottom: 0.25rem!important;
  flex: 0 0 auto;
  width: auto;
}

.search-field .range-div {
  flex: 1 0 0%;
  width: 100%;
}

.search-field .form-group {
  --bs-gutter-x: 0.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(1.5 * var(--bs-gutter-x));
  /*margin-left: calc(-.5 * var(--bs-gutter-x));*/
  padding-bottom: 0;
}
.search-field .form-group>* {
  max-width: 100%;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  margin-top: var(--bs-gutter-y);
}

.search-field .dropdown-menu .form-group {
  display: block;
  padding-bottom: 0.5rem;
}

.search-advanced {
  margin-top: 0.5rem;
}

.search-button {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  /*display: flex;*/
  flex-wrap: wrap;
  /*margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-.5 * var(--bs-gutter-x));
  margin-left: calc(-.5 * var(--bs-gutter-x));*/
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;  
}

.search-button>* {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  /*padding-left: calc(var(--bs-gutter-x) * .5);*/
  margin-top: var(--bs-gutter-y);
}

.search-button .search-btn {
 /*width: 120px;*/
 width: 100%;
 display: block;
 padding: 0 0.25rem;
 text-align: center;
}

.search-button .search-btn button{
  padding: 0.25rem 1.5rem;
}

.search-button .search-btn-advanced {
 /*width: 110px;*/
 width: 100%;
 display: block;
 flex: 1 0 0%;
 text-align: center;
 margin-bottom: 0.25rem;
}

.search-button .search-btn-advanced button{
  padding-left: 3px;
}

.search-button .search-btn-advanced a[aria-expanded="false"] button::after{
  content: '\F282';
  font-family: "bootstrap-icons";
  padding-left: 5px;
  vertical-align: middle;
}

.search-button .search-btn-advanced a[aria-expanded="true"] button::after{
  content: '\F286';
  font-family: "bootstrap-icons";
  padding-left: 5px;
  vertical-align: middle;
}


@media (min-width: 576px){
  .search-field>.group-data {
    display: flex;
  }

  .search-field .range-div, .search-field .form-group{
      flex: 1 0 0%;
  }
  
  .search-field .form-group>* {
    width: auto;
  }

  .search-button .search-btn {
    text-align: right;
    margin-right: 1rem;
    width: auto;
    /*display: flex;*/
    float: right;
    
   }

   .search-button .search-btn-advanced {
    /*display: flex;*/
    text-align: left;
    width: auto;
    margin-bottom: 0rem;
    float: left;
   }
}

/*------group-data--------*/

.card-body>div:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
.group-data {
  /*border-bottom: var(--bs-gray-200) 1px dashed;*/
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  margin-bottom: 0.5rem;
}
.group-data .title {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  font-size: 1rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
}


/*------swiper slide--------*/
.swiper {
  background-color: #fff;
  width: 100%;
  height: 100%;
}

.swiper-slide {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-slide img {
  display: block;
  width: 90px;
  /*height: 100%;*/
  object-fit: cover;
  overflow: hidden;
  aspect-ratio: 3 / 4;
  max-width: 300px;
}

.slide-item {
  box-sizing: content-box;
  min-height: 200px;
  position: relative;
  margin: 1rem;
  text-align: left;
}

.swiper .subdetail {
  --bs-text-opacity: 1;
  color: rgba(0,0,0,.5)!important;
  padding-right: 0.5rem!important;
  padding-left: 0rem!important;
  padding-bottom: 0.75rem!important;
  font-size: var(--f1);
  text-align: left; 
}

.list-row {
  border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important;
  margin-right: 0!important;
  margin-left: 0!important;
  padding: 0.5rem 0;
  color: var(--bs-body-color);
}
.list-row>div {
  margin: 0 0.25rem!important;
  vertical-align: middle;
}
.list-row .id { 
  width: 30px;
  text-align: center;
  padding: 0;
}
.list-row .subdetail {
  --bs-text-opacity: 1;
  color: rgba(0,0,0,.5)!important;
  padding-right: 0.5rem!important;
  padding-left: 0.5rem!important;
  font-size: var(--f1);
  text-align: left; 
}
.list-group .subdetail {
  --bs-text-opacity: 1;
  color: rgba(0,0,0,.5)!important;
  padding-right: 0.5rem!important;
  padding-left: 0.5rem!important;
  font-size: var(--f1);
  text-align: right;
  width: 110px;
}



/*------create------*/
.form-group {
  padding-bottom: 0.5rem;
}




@media only screen and (min-width: 641px) and (max-width: 810px){
  .product-block>div {
    max-width: 308px !important;
    margin: 0 auto;
  }
}



footer .row {
    --bs-gutter-x: 0rem;
}
footer {
  height: var(--footer-height);
  background: var(--bs-body-bg);
  color: var(--bs-body-color);
}
footer a {
  color: var(--bs-body-color);
}


@media only screen and (min-width: 641px) {
  
}

@media only screen and (min-width: 1px) and (max-width: 640px){
  .tool-left { 
    width: 25vw;
  }

  .gp-item-main {
    grid-template-columns: auto;
    grid-template-rows: auto;
    display: grid; 
    gap: 10px;
    justify-items: stretch;
    align-items: stretch;
  }
  /*.form-move {
    top: 25%;
  }*/

  .form-active::after, .form-block::after ,.edit-form-container .form-block::after{
    /*top: 25%;*/
    top: 30px;
  }

  .form-active-del {
    right: 8%;
    top: 3px;
    z-index: 10;
    box-shadow: none;
    background: none;
    color: var(--bs-danger);
  }
  .form-active-edit {
    right: 5%;
    top: 10px;
    z-index: 10;
    box-shadow: none;
    background: none;
    color: var(--sidebar-bg);
  }

  .main-progress {
    padding: 0 10px;
    font-size: small;
  }

  .list-row>div {
    margin: 0 !important;
  }
  .list-row .subdetail {
    padding-left: calc(var(--bs-gutter-x) * .5) !important;
    padding-right: 0 !important;
  }
  .list-row .name {
    margin-left: 0px !important;
  }
  .list-row .view {
    margin-left: 30px !important;
  }

  .main-picture .img{
    -ms-flex: 126px 0;
    flex: 126px 0;
  }


  .h-full {
    /* height: 100%; */
    height: calc(100vh - var(--header-height) - (var(--footer-height)*2));
    min-height: calc(100vh - var(--header-min-height) - (var(--footer-height)*2));
    max-height: calc(100vh - var(--header-min-height) - (var(--footer-height)*2));
  }
  .main-content {
    height: calc( (100vh - var(--header-height)) - (var(--footer-height)*2)) !important; 
  }
  .main-chat {
    height: calc(((100vh - var(--header-height)) - (var(--footer-height)*2)) - var(--bottom-height)) !important; /*height: 70vh;*/ 
  }

  footer {
    height: calc(var(--footer-height)*2);
  }
}


@media only screen and (min-width: 641px) and (max-width: 1200px){
  .form-active-del {
    right: -40px;
  }
  .form-active-edit {
    right: -40px;
  }
  /*.form-block {
    width: 97%;
  }*/
}



@media only screen and (min-width: 1px) and (max-width: 640px){

  .scroll-x {
    position: relative;
    overflow-x: scroll;
    padding-right: calc(var(--bs-gutter-x) * 0);
    padding-left: calc(var(--bs-gutter-x) * 0);
  }
  .scroll-x table { min-width: 600px;}
  .scroll-x th:first-child {
    padding-left: calc(var(--bs-gutter-x) * .5); 
    background: rgb(255, 255, 255);
    background: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 70%, rgba(0,0,0,0.06) 100%);
  }
  .sticky-col {
    position: -webkit-sticky;
    position: sticky;
    background-color: white !important;
    width: 170px;
    min-width: 170px;
    max-width: 170px;
    left: 0px;
  }

  /*----FAQ----*/
  .accordion {
      --bs-accordion-btn-padding-x: 0.25rem;
      --bs-accordion-btn-padding-y: 1rem;
      --bs-accordion-body-padding-x: 0.25rem;
      --bs-accordion-body-padding-y: 1rem;
  }
}

@media print {
  div.sidebar {
    display: none;
  }
  .h-full, .wrapper, .main-data, .main-content {
    height: max-content !important;
    min-height: max-content !important;
    max-height: max-content !important;
    background: #fff !important;
    color: #000 !important;
  }
}