:root {
  --Main: #2275fc;
  --White: #fff;
  --Black: #111;
  --Heading: #111;
  --Body-Text: #575864;
  --22-c-55-e: #22C55E;
  --Style:#FF5200;
  --Palette-Green-500: #22C55E;
  --Palette-Blue-Gray-300: #CBD5E1;
  --Palette-Blue-Gray-200: #E2E8F0;
  --Palette-Blue-300: #93C5FD;
  --Palette-Blue-200: #BFDBFE;
  --Palette-Orange-400: #FB923C;
  --Palette-Red-400: #F87171;
  --Palette-Red-500: #EF4444;
  --Input:#ECF0F4;
  --Icon: #CBD5E1;
  --Note: #95989D;
  --Text-Holder: #858B93;
  --08091-b: #08091B;
  --Stroke: #ECF0F4;
  --bg-table: #f6f8fbcc;
  --bg-table-1: #F7FAFC;
  --backdrop: #F2F7FB;
  --hv-item: #EDF1F5;
}

/**
  * Name: Remos eCommerce Admin Dashboard HTML Template
  * Version: 1.0.1
  * Author: Themesflat
  * Author URI: http://www.themesflat.com
*/
/**

  	* Reset Browsers
    * General
	* Elements
  	* Forms
	* Typography
	* Extra classes
    * link style
    * themesflat-container

*/
/* Reset Browsers
-------------------------------------------------------------- */
html,
body,
div,
span,
object,
h1,
h2,
h3,
h4,
h5,
h6,
p,
pre,
a,
cite,
code,
em,
img,
q,
s,
small,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dt,
ol,
ul,
li,
fieldset,
form,
label,
table,
th,
td,
article,
footer,
header,
nav,
section,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font: inherit;
  vertical-align: baseline;
  font-family: inherit;
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
}

article,
footer,
header,
nav,
section {
  display: block;
}

html {
  font-size: 62.5%;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

html.has-chat-page {
  overflow-y: hidden;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  background: #F2F7FB;
  line-height: 1;
  padding: 0 !important;
}

article,
footer,
header,
main,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}


th,
td {
  font-weight: normal;
  text-align: left;
}


q:before,
q:after {
  content: "";
}


q {
  quotes: none;
}

a img {
  border: 0;
}

img {
  max-width: 100%;
  height: auto;
}

select {
  max-width: 100%;
}

/* General
-------------------------------------------------------------- */
body,
button,
input,
select,
textarea {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  color: var(--Body-Text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
  overflow-y: auto;
}

img {
  height: auto;
  max-width: 100%;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

p {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: var(--Body-Text);
}

strong,
b,
cite {
  font-weight: bold;
}


cite,
em,
i {
  font-style: italic;
}

sup,
sub {
  font-size: 75%;
  height: 0;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

small {
  font-size: 75%;
}

code,
tt,
var,
pre {
  margin: 20px 0;
  padding: 4px 12px;
  background: #f5f5f5;
  border: 1px solid #e0e0e0;
  overflow-x: auto;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  hyphens: none;
  border-radius: 0;
  height: auto;
}

svg,
svg path {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

/* Elements
-------------------------------------------------------------- */
html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

hr {
  margin-bottom: 20px;
  border: dashed 1px #ccc;
}

/* List */
ul,
ol {
  padding: 0;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
}

li {
  list-style: none;
}

ul li,
ol li {
  padding: 0;
}

dt {
  font-weight: bold;
}


.disable {
  text-decoration: line-through;
  filter: alpha(opacity=50);
  opacity: 0.5;
}

/* Table */
table,
th,
td {
  border: 1px solid #343444;
}

table {
  border-collapse: separate;
  border-spacing: 0;
  border-width: 1px 0 0 1px;
  margin: 0 0 30px;
  table-layout: fixed;
  width: 100%;
}


th,
td {
  font-weight: normal;
  text-align: left;
}

th {
  border-width: 0 1px 1px 0;
  font-weight: bold;
}

td {
  border-width: 0 1px 1px 0;
}

th,
td {
  padding: 8px 12px;
}

/* Media */

object,
video {
  margin-bottom: 20px;
  max-width: 100%;
  vertical-align: middle;
}


p > object,
p > video {
  margin-bottom: 0;
}

/* Forms
-------------------------------------------------------------- */
/* Fixes */
button,
input {
  line-height: normal;
}

button,
input,
select,
textarea {
  font-size: 100%;
  line-height: inherit;
  margin: 0;
  vertical-align: baseline;
}

input,
textarea,
select {
  font-size: 14px;
  max-width: 100%;
  background: #fff;
  /* Removing the inner shadow on iOS inputs */
}

textarea {
  overflow: auto;
  /* Removes default vertical scrollbar in IE6/7/8/9 */
  vertical-align: top;
  /* Improves readability and alignment in all browsers */
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: button;
  border: 0;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/* Remove chrome yellow autofill */
input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #f7f7f7 inset;
}

/* Reset search styling */

/* Placeholder color */
::-webkit-input-placeholder {
  color: #171412;
}

::-moz-placeholder {
  color: #171412;
  opacity: 1;
}

/* Since FF19 lowers the opacity of the placeholder by default */

/* Typography
-------------------------------------------------------------- */
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "Inter", sans-serif;
  color: var(--Heading);
  margin: 0;
  font-weight: 700;
  text-rendering: optimizeLegibility;
}

h1, .h1 {
  font-size: 100px;
  line-height: 132px;
}

h2, .h2 {
  font-size: 60px;
  line-height: 79px;
}

h3, .h3 {
  font-size: 24px;
  line-height: 37px;
}

h4, .h4 {
  font-size: 22px;
  line-height: 31px;
}

h5, .h5 {
  font-size: 20px;
  line-height: 28px;
}

h6, .h6 {
  font-size: 18px;
  line-height: 25px;
}

/* Extra classes
-------------------------------------------------------------- */
.hidden {
  display: none;
}

.block {
  display: block;
}

.absolute {
  position: absolute;
}

.fixed {
  position: fixed !important;
}

.flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

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

.justify-between {
  justify-content: space-between;
}

.items-center {
  align-items: center;
}

.flex-wrap {
  flex-wrap: wrap;
}

.text-center {
  text-align: center;
}

.gap10 {
  gap: 10px !important;
}

.gap14 {
  gap: 14px !important;
}

.gap20 {
  gap: 20px !important;
}

.mt-3 {
  margin-top: 3px !important;
}

.mt-4 {
  margin-top: 4px !important;
}

.mb-1 {
  margin-bottom: 1px !important;
}

.mb-2 {
  margin-bottom: 2px !important;
}

.mb-3 {
  margin-bottom: 3px !important;
}

.mb-4 {
  margin-bottom: 4px !important;
}

.mb-6 {
  margin-bottom: 6px !important;
}

.mb-8 {
  margin-bottom: 8px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-14 {
  margin-bottom: 14px !important;
}

.mb-16 {
  margin-bottom: 16px !important;
}

.mb-12 {
  margin-bottom: 12px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-24 {
  margin-bottom: 24px !important;
}

.mb-27 {
  margin-bottom: 27px !important;
}

.w-full {
  width: 100% !important;
}

.h-full {
  height: 100%;
}

.tf-color {
  color: var(--Main) !important;
}

.tf-color-1 {
  color: var(--Style) !important;
}

#wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  height: 100%;
}

/* link style
-------------------------------------------------------------- */
a {
  text-decoration: none;
  color: var(--Heading);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
a:hover, a:focus {
  color: var(--Main);
  text-decoration: none;
  outline: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

/* themesflat-container
-------------------------------------------------------------- */
.themesflat-container {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-right: 0;
  padding-left: 0;
  width: 1200px;
  max-width: 100%;
}
.themesflat-container .row {
  margin-left: -15px !important;
  margin-right: -15px !important;
}
.themesflat-container .row > * {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

.themesflat-container.full {
  width: 100%;
}

.text-tiny {
  color: var(--Note);
  font-size: 12px;
  line-height: 15px;
}

.body-title {
  color: var(--Heading);
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
}

.body-title-2 {
  color: var(--Heading);
  font-size: 14px;
  font-weight: 600;
  line-height: 17px;
}
.body-title-2 span {
  color: var(--Style);
}

.body-text {
  color: var(--Body-Text);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}

.wg-user {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: start;
  width: 170px;
  gap: 14px;
  text-align: start;
}
.wg-user .image {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
}
.wg-user .image img {
  border-radius: 50%;
}

.wg-box {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  padding: 24px;
  flex-direction: column;
  gap: 24px;
  border-radius: 12px;
  background: var(--White);
  box-shadow: 0px 4px 24px 2px rgba(20, 25, 38, 0.05);
}

.product-item {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding-right: 5px;
}
.product-item .image {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  padding: 5px;
  border-radius: 10px;
  background: #EFF4F8;
}
.product-item .image.small {
  width: 36px;
  height: 36px;
  padding: 4px;
}
.product-item .image.no-bg {
  padding: 0;
  background-color: unset;
}
.product-item .name a {
  line-height: 17px;
}
.product-item .name a:hover {
  color: var(--Main) !important;
}
.product-item .text-tiny {
  line-height: 20px;
}
.product-item:hover {
  background-color: var(--hv-item) !important;
  border-radius: 10px;
}

.block-available {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  height: 24px;
  padding: 2px 8px;
  gap: 10px;
  border-radius: 4px;
  background: #F0FDF4;
  color: var(--22-c-55-e);
  font-size: 12px;
  font-weight: 500;
}

.block-warning {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: start;
  width: fit-content;
  padding: 13px 15px;
  gap: 10px;
  border-radius: 12px;
  background: #FFF2ED;
  color: #FF5200;
}
.block-warning i {
  font-size: 24px;
}
.block-warning div {
  color: #FF5200;
}

.wg-pagination {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: start;
  flex-wrap: wrap;
  gap: 9px;
}
.wg-pagination li {
  min-width: 40px;
  text-align: center;
  color: var(--08091-b);
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
}
.wg-pagination li a {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  gap: 10px;
  border-radius: 50%;
  color: var(--08091-b);
}
.wg-pagination li a i {
  font-size: 18px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.wg-pagination li:hover a, .wg-pagination li.active a {
  background: var(--Main);
  color: #fff !important;
}
.wg-pagination li:hover i, .wg-pagination li.active i {
  color: #fff !important;
}
.wg-pagination li:last-child a, .wg-pagination li:first-child a {
  border: 1px solid var(--Stroke);
  width: 42px;
  height: 42px;
}

.breadcrumbs a .text-tiny {
  color: var(--Body-Text);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.breadcrumbs a:hover .text-tiny {
  color: var(--Main);
}
.breadcrumbs i {
  font-size: 14px;
  color: var(--Body-Text);
}

.user-item {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.user-item .image {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  border-radius: 10px;
  overflow: hidden;
}
.user-item .body-text {
  color: var(--Heading);
}
.user-item .name a {
  line-height: 17px;
}
.user-item .name a:hover {
  color: var(--Main) !important;
}
.user-item .text-tiny {
  line-height: 20px;
}

.wg-social {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  gap: 8px;
}
.wg-social li a {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(148, 163, 184, 0.1019607843);
  font-size: 18px;
  color: #BCC6D1;
}
.wg-social li:hover a, .wg-social li.active a {
  color: var(--Main);
}

/*#line-chart-1,*/
/*#line-chart-2,*/
/*#line-chart-3,*/
/*#line-chart-4,*/
/*#line-chart-5,*/
/*#line-chart-6,*/
/*#line-chart-7,*/
/*#line-chart-8,*/
/*#line-chart-9,*/
/*#line-chart-10,*/
/*#line-chart-11,*/
/*#line-chart-12,*/
/*#line-chart-13,*/
/*#line-chart-14,*/
/*#line-chart-15,*/
/*#line-chart-16,*/
/*#line-chart-17,*/
/*#line-chart-18,*/
/*#line-chart-19,*/
/*#line-chart-20,*/
/*#line-chart-21,*/
/*#line-chart-22 {*/
/*  min-height: unset !important;*/
/*}*/

.header {
  position: absolute;
  z-index: 10;
  top: 30px;
  width: 100%;
}

.header-dashboard {
  position: fixed;
  top: 0;
  right: 0;
  width: calc(100% - 280px);
  height: 80px;
  padding: 15px 13px 15px 30px;
  background: var(--White);
  box-shadow: 0px 4px 24px 0px rgba(20, 25, 38, 0.05);
  z-index: 19;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.header-dashboard .wrap {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  height: 100%;
}
.header-dashboard .wrap .header-left {
  width: 100%;
  max-width: 780px;
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: 15px;
}
.header-dashboard .wrap .header-left > a {
  display: none;
}
.header-dashboard .wrap .header-left .button-show-hide {
  font-size: 24px;
  color: #94A3B8;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  transform: rotate(180deg);
  display: none;
}
.header-dashboard .wrap .header-grid {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  gap: 20px;
}
.header-dashboard .wrap .header-item {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(203, 213, 225, 0.3);
}
.header-dashboard .wrap .header-item i {
  font-size: 20px;
  color: var(--Heading);
}

.tf-button {
  width: max-content;
  height: 50px;
  padding: 15px 22px;
  color: #FFF;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  border: 1px solid var(--Main);
  border-radius: 12px;
  background-color: var(--Main);
  background-size: 100%;
  overflow: hidden;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.tf-button:hover {
  color: var(--Main);
  background-color: #FFF;
}
.tf-button:hover span {
  color: #FFF !important;
}
.tf-button i {
  font-size: 20px;
}
.tf-button.style-1 {
  color: var(--Main);
  background-color: var(--White);
}
.tf-button.style-1:hover {
  color: #FFF;
  background-color: var(--Main);
}
.tf-button.style-2 {
  color: #575864;
  background-color: #FFF;
  border-color: var(--Input);
}
.tf-button.style-2:hover {
  color: #FFF;
  background-color: var(--Main);
}
.tf-button.w180 {
  width: 180px;
}

form {
  position: relative;
}
form.form-search .button-submit {
  position: absolute;
  top: 15px;
  right: 22px;
}
form.form-search .button-submit button {
  padding: 0;
  border: 0;
  font-size: 20px;
  color: var(--Heading);
}
form.form-search .button-submit button i {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
form.form-search .button-submit button:hover i {
  color: var(--Main);
}
form.form-style-2 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
form.form-style-2 > * {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  gap: 30px;
}
form.form-style-2 > * .left {
  width: 100%;
  max-width: 368px;
}
form textarea,
form input[type=text],
form input[type=password],
form input[type=date],
form input[type=month],
form input[type=number],
form input[type=email],
form input[type=url],
form input[type=tel],
form input[type=color] {
  outline: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  width: 100%;
  padding: 14px 22px;
  font-size: 14px;
  font-family: "Inter", sans-serif;
  font-weight: 400;
  line-height: 20px;
  background-color: transparent;
  border: 1px solid var(--Input);
  border-radius: 12px;
  color: var(--Heading);
  overflow: hidden;
  margin-bottom: 0;
}
form textarea::placeholder,
form input[type=text]::placeholder,
form input[type=password]::placeholder,
form input[type=date]::placeholder,
form input[type=month]::placeholder,
form input[type=number]::placeholder,
form input[type=email]::placeholder,
form input[type=url]::placeholder,
form input[type=tel]::placeholder,
form input[type=color]::placeholder {
  font-size: 14px;
  font-family: "Inter", sans-serif;
  font-weight: 400;
  line-height: 20px;
  color: var(--Text-Holder);
}
form button,
form input[type=button],
form input[type=reset],
form input[type=submit] {
  padding: 14px 22px;
  font-size: 14px;
  font-family: "Inter", sans-serif;
  font-weight: 400;
  line-height: 20px;
  background-color: transparent;
  border: 1px solid var(--Input);
  border-radius: 12px;
  color: var(--Heading);
  overflow: hidden;
  display: inline-block;
  -webkit-appearance: none;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
}
form button:hover,
form input[type=button]:hover,
form input[type=reset]:hover,
form input[type=submit]:hover {
  color: var(--primary);
}
form textarea {
  height: 200px !important;
}

fieldset {
  margin-bottom: 0px;
  width: 100%;
}

.select {
  position: relative;
}
.select::after {
  position: absolute;
  content: "\e934";
  right: 22px;
  top: 50%;
  font-family: "icomoon";
  font-size: 18px;
  color: var(--Body-Text);
  pointer-events: none;
  -webkit-transition: 0.25s all ease;
  -o-transition: 0.25s all ease;
  transition: 0.25s all ease;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}

select {
  border: none;
  outline: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  width: 100%;
  padding: 14px 22px;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  background-color: transparent;
  border: 1px solid var(--Input);
  border-radius: 12px;
  color: var(--Heading);
  margin-bottom: 0px;
  position: relative;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -ms-appearance: none;
}
select option {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: var(--Heading);
  background: var(--backdrop);
  text-transform: capitalize;
  cursor: pointer;
}

.layout-wrap .section-content-right {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.layout-wrap .section-content-right .main-content {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  padding-top: 80px;
  padding-left: 280px;
  background: #F2F7FB;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.layout-wrap .section-content-right .main-content .main-content-inner {
  padding: 30px;
  flex-grow: 1;
}
.layout-wrap .section-content-right .main-content .main-content-inner .main-content-wrap {
  width: 100%;
  margin: auto;
}
.layout-wrap .section-content-right .main-content .bottom-page {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 8px 24px 24px;
  gap: 10px;
  background: var(--White);
  box-shadow: 0px 4px 24px 2px rgba(20, 25, 38, 0.05);
}
.layout-wrap .section-content-right .main-content .bottom-page i {
  font-size: 16px;
  color: var(--Style);
}
.layout-wrap .section-content-right .main-content .bottom-page a {
  color: var(--Main);
}
.layout-wrap .section-content-right .main-content .bottom-page a:hover {
  color: var(--Style);
}
.layout-wrap.full-width .section-content-right .main-content {
  padding-left: 0;
}
.layout-wrap.full-width .section-content-right .header-dashboard {
  width: 100%;
  padding-left: 30px !important;
}


.button-dark-light {
  cursor: pointer;
}

/*.jvectormap-label {*/
/*  position: absolute;*/
/*  display: none;*/
/*  border: solid 1px #CDCDCD;*/
/*  -webkit-border-radius: 3px;*/
/*  -moz-border-radius: 3px;*/
/*  border-radius: 3px;*/
/*  background: #292929;*/
/*  color: white;*/
/*  font-family: sans-serif, Verdana;*/
/*  font-size: smaller;*/
/*  padding: 3px;*/
/*}*/

/*.jvectormap-zoomin,*/
/*.jvectormap-zoomout {*/
/*  position: absolute;*/
/*  bottom: 10px;*/
/*  -webkit-border-radius: 3px;*/
/*  -moz-border-radius: 3px;*/
/*  background: transparent;*/
/*  padding: 2px;*/
/*  color: white;*/
/*  width: 40px;*/
/*  height: 40px;*/
/*  cursor: pointer;*/
/*  line-height: 10px;*/
/*  text-align: center;*/
/*  overflow: hidden;*/
/*  border-radius: 8px;*/
/*}*/
/*.jvectormap-zoomin::before,*/
/*.jvectormap-zoomout::before {*/
/*  position: absolute;*/
/*  display: -webkit-box;*/
/*  display: -moz-box;*/
/*  display: -ms-flexbox;*/
/*  display: -webkit-flex;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  width: 40px;*/
/*  height: 40px;*/
/*  top: 0;*/
/*  left: 0;*/
/*  border-radius: 8px;*/
/*  font-family: "icomoon";*/
/*  border: 1px solid rgba(35, 119, 252, 0.1);*/
/*  background: #E9F2FF;*/
/*  font-size: 20px;*/
/*  color: var(--Main);*/
/*}*/

/*.jvectormap-zoomin {*/
/*  left: 10px;*/
/*}*/
/*.jvectormap-zoomin::before {*/
/*  content: "\ea35";*/
/*}*/

/*.jvectormap-zoomout {*/
/*  left: 55px;*/
/*}*/
/*.jvectormap-zoomout::before {*/
/*  content: "\ea36";*/
/*}*/

/*#usa-vectormap {*/
/*  height: 268px;*/
/*  border-radius: 14px;*/
/*  overflow: hidden;*/
/*}*/

.offcanvas {
  width: 530px;
  border: none;
  padding: 30px;
  gap: 24px;
}

@keyframes ping {
  75%, 100% {
    transform: scale(2);
    opacity: 0;
  }
}
@keyframes spin {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.layout-wrap .section-menu-left {
  position: fixed;
  width: 280px;
  min-width: 280px;
  height: 100%;
  left: 0;
  z-index: 20;
  box-shadow: 0px 0px 24px 2px rgba(20, 25, 38, 0.05);
  padding-top: 81px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: start;
  flex-direction: column;
  flex-shrink: 0;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.layout-wrap .section-menu-left::before {
  position: absolute;
  inset: 0;
  content: "";
  background: var(--White);
}
.layout-wrap .section-menu-left > .box-logo {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
  padding: 14px 20px 13px 20px;
  width: 280px;
  border-bottom: 1px solid #F2F7FB;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 5;
}
.layout-wrap .section-menu-left .section-menu-left-wrap {
  width: 100%;
  overflow-y: auto;
  position: relative;
  z-index: 5;
}
.layout-wrap .section-menu-left .section-menu-left-wrap::-webkit-scrollbar {
  width: 3px;
}
.layout-wrap .section-menu-left .center {
  padding: 20px;
  width: 100%;
}
.layout-wrap .section-menu-left .center .center-heading {
  color: #BDC7D3;
  font-size: 12px;
  font-weight: 700;
  line-height: 15px;
  text-transform: uppercase;
  margin-bottom: 10px;
  padding-left: 14px;
}
.layout-wrap .section-menu-left .center .center-item {
  margin-bottom: 20px;
}
.layout-wrap .section-menu-left .center .menu-list {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
}
.layout-wrap .section-menu-left .center .menu-item {
  -webkit-transition: all 0.6s ease;
  -moz-transition: all 0.6s ease;
  -ms-transition: all 0.6s ease;
  -o-transition: all 0.6s ease;
  transition: all 0.6s ease;
}
.layout-wrap .section-menu-left .center .menu-item a {
  padding: 14px;
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 10px;
}
.layout-wrap .section-menu-left .center .menu-item a .icon {
  width: 20px;
  height: 20px;
}
.layout-wrap .section-menu-left .center .menu-item a .icon svg,
.layout-wrap .section-menu-left .center .menu-item a .icon i {
  font-size: 20px;
  color: #111111;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.layout-wrap .section-menu-left .center .menu-item a .text {
  color: #111111;
  font-size: 14px;
  font-weight: 600;
  line-height: 17px;
  text-transform: capitalize;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.layout-wrap .section-menu-left .center .menu-item a.active::after,
.layout-wrap .section-menu-left .center .menu-item a.active i,
.layout-wrap .section-menu-left .center .menu-item a.active .text, .layout-wrap .section-menu-left .center .menu-item a:hover::after,
.layout-wrap .section-menu-left .center .menu-item a:hover i,
.layout-wrap .section-menu-left .center .menu-item a:hover .text {
  color: var(--Main) !important;
}
.layout-wrap .section-menu-left .center .menu-item a.active svg path, .layout-wrap .section-menu-left .center .menu-item a:hover svg path {
  stroke: var(--Main) !important;
}
.layout-wrap .section-menu-left .center .menu-item.has-children {
  position: relative;
  transition-delay: 0.3s;
}
.layout-wrap .section-menu-left .center .menu-item.has-children::after {
  position: absolute;
  content: "\e934";
  top: 15px;
  right: 14px;
  color: #111111;
  font-size: 16px;
  font-family: "icomoon";
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
}
.layout-wrap .section-menu-left .center .menu-item.has-children .sub-menu {
  display: none;
  margin-top: 16px;
  padding-left: 44px;
  margin-bottom: 16px;
  width: 240px;
  overflow-x: auto;
}
.layout-wrap .section-menu-left .center .menu-item.has-children .sub-menu::-webkit-scrollbar {
  width: 3px;
}
.layout-wrap .section-menu-left .center .menu-item.has-children .sub-menu .sub-menu-item:not(:last-child) {
  margin-bottom: 16px;
}
.layout-wrap .section-menu-left .center .menu-item.has-children .sub-menu a {
  padding: 0;
  position: relative;
}
.layout-wrap .section-menu-left .center .menu-item.has-children .sub-menu a .text {
  color: #575864;
}
.layout-wrap .section-menu-left .center .menu-item.has-children .sub-menu a::before {
  position: absolute;
  content: "";
  top: 6px;
  left: -17px;
  width: 6px;
  height: 6px;
  border: 1px solid #CBD5E1;
  transform: rotate(45deg);
}
.layout-wrap .section-menu-left .center .menu-item.has-children .sub-menu a.active::before {
  border-color: var(--Main);
}
.layout-wrap .section-menu-left .center .menu-item.has-children.active > a {
  border-radius: 12px;
  background: rgba(35, 119, 252, 0.1);
}
.layout-wrap .section-menu-left .center .menu-item.has-children.active > a i,
.layout-wrap .section-menu-left .center .menu-item.has-children.active > a .text {
  color: var(--Main);
}
.layout-wrap .section-menu-left .center .menu-item.has-children.active > a::after {
  position: absolute;
  content: "";
  top: 7px;
  left: -24px;
  width: 8px;
  height: 34px;
  background-color: var(--Main);
  border-radius: 8px;
}
.layout-wrap .section-menu-left .center .menu-item.has-children.active::after {
  top: 14px;
  transform: rotate(180deg);
  color: var(--Main) !important;
}
.layout-wrap .section-menu-left .center .menu-item.has-children.active > .sub-menu {
  display: block;
}
.layout-wrap .section-menu-left .center .menu-item:not(.has-children).active {
  background-color: rgba(35, 119, 252, 0.1);
  border-radius: 12px;
}
.layout-wrap .section-menu-left a {
  position: relative;
}
.layout-wrap .section-menu-left .button-show-hide {
  position: relative;
  font-size: 24px;
  color: #94A3B8;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.layout-wrap .section-menu-left .button-show-hide i {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.layout-wrap .section-menu-left .button-show-hide:hover i {
  color: var(--Main);
}
.layout-wrap .section-menu-left .bot {
  width: 100%;
  padding: 20px 20px 30px 20px;
}
.layout-wrap .section-menu-left .bot .wrap {
  padding: 16px 16px 9px 16px;
  border-radius: 12px;
  border: 1px solid #F2F7FB;
}
.layout-wrap .section-menu-left .bot h6 {
  color: #111111;
}
.layout-wrap .section-menu-left .bot .text {
  color: #575864;
  font-size: 12px;
  font-weight: 400;
  line-height: 15px;
  margin-top: 8px;
}
.layout-wrap .section-menu-left .sidebar-bottom-menu {
  margin-top: 14px;
  padding: 10px 12px 12px 12px;
  border-radius: 10px;
  border: 1px solid #E4ECF6;
  background: #FFFFFF;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.layout-wrap .section-menu-left .sidebar-bottom-menu .menu-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.layout-wrap .section-menu-left .sidebar-bottom-menu .menu-item a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 8px;
  min-height: 36px;
  background: transparent;
}
.layout-wrap .section-menu-left .sidebar-bottom-menu .menu-item a .icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.layout-wrap .section-menu-left .sidebar-bottom-menu .menu-item a .icon i {
  font-size: 18px;
}
.layout-wrap .section-menu-left .sidebar-bottom-menu .menu-item a .icon i::before {
  font-size: 18px;
}
.layout-wrap .section-menu-left .sidebar-bottom-menu .menu-item a .text {
  font-size: 12px;
  line-height: 1.3;
}
.layout-wrap .section-menu-left .sidebar-bottom-menu .menu-item a:hover {
  background: rgba(34, 117, 252, 0.08);
}
.layout-wrap.full-width .section-menu-left {
  left: -100%;
}
.layout-wrap.full-width .section-menu-left > .box-logo {
  left: -100%;
  border-bottom: 0;
  padding: 14px 20px;
  background-color: #fff;
}
.layout-wrap.full-width .button-show-hide {
  transform: rotate(180deg);
}
.layout-wrap.full-width .header-dashboard .button-show-hide {
  display: block;
}
.layout-wrap.full-width .header-dashboard .button-show-hide i {
  color: var(--Main);
}

.popup-wrap {
  width: auto;
  height: auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: 14px;
  border: none;
  background: var(--secondary);
  text-align: center;
  position: relative;
}
.popup-wrap.type-header > .dropdown > .dropdown-toggle {
  cursor: pointer;
  padding: 0;
  overflow: unset;
  background: none;
  border: none;
}
.popup-wrap.type-header > .dropdown > .dropdown-toggle::after {
  display: none;
}
.popup-wrap.type-header > .dropdown > .dropdown-toggle:focus {
  outline: none;
  outline-offset: 0;
  box-shadow: none;
}
.popup-wrap > .dropdown > .dropdown-menu.show {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  padding: 16px;
  margin-top: 20px !important;
  margin-bottom: 20px !important;
  gap: 24px;
  border-radius: 14px;
  border: none;
  background: var(--White);
  box-shadow: 0px 4px 24px 2px rgba(20, 25, 38, 0.1);
}
.popup-wrap > .dropdown > .dropdown-menu.show h6 {
  padding-bottom: 14px;
  border-bottom: 1px solid #EDF1F5;
  border-bottom: 1px solid var(--Stroke);
}
.popup-wrap.user .dropdown-menu.show {
  width: 188px;
  margin-top: 19px !important;
}
.popup-wrap.user .dropdown-menu.show .user-item {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: start;
  height: 20px;
  gap: 10px;
  border-radius: 12px;
}
.popup-wrap.user .dropdown-menu.show .user-item .icon i {
  font-size: 20px;
  color: var(--Icon);
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.popup-wrap.user .dropdown-menu.show .user-item .body-title-2 {
  flex-grow: 1;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.popup-wrap.user .dropdown-menu.show .user-item .number {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 24px;
  padding: 2px 8px;
  gap: 10px;
  border-radius: 50%;
  background: #F0FDF4;
  color: var(--22-c-55-e);
  font-size: 12px;
  font-weight: 500;
  line-height: 12px;
}
.popup-wrap.user .dropdown-menu.show .user-item:hover .body-title-2 {
  color: var(--Main);
}
.popup-wrap.user .dropdown-menu.show .user-item:hover .icon i {
  color: var(--Main);
}

.dropdown.default > .dropdown-toggle {
  padding: 0;
  overflow: hidden;
  background: none;
  border: none;
  outline: none;
  box-shadow: none;
  height: unset;
}
.dropdown.default > .dropdown-toggle::after {
  display: none;
}
.dropdown.default > .dropdown-menu {
  margin-top: 15px !important;
  min-width: 120px;
  background-color: var(--White);
  border: 0;
  padding: 0;
  box-shadow: 0px 1px 2px 0px rgba(255, 255, 255, 0.1) inset, 0px 8px 22px 0px rgba(4, 8, 16, 0.3);
}
.dropdown.default > .dropdown-menu a {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  font-size: 14px;
  padding: 8px 16px;
}
.dropdown.default > .dropdown-menu a:hover {
  color: var(--Main);
}

.wg-table {
  overflow-x: auto !important;
}
.wg-table::-webkit-scrollbar {
  height: 4px;
}
.wg-table::-webkit-scrollbar-thumb {
  background: var(--Note);
  border-radius: 10px;
}
.wg-table .table-title {
  justify-content: space-between;
}
.wg-table.table-all-category > * {
  min-width: 1515px;
}
.wg-table.table-all-category ul.table-title {
  padding: 12px;
  border-radius: 12px;
  background: var(--bg-table);
}
.wg-table.table-all-category ul.table-title li {
  width: 100%;
}
.wg-table.table-all-category ul.table-title li:first-child {
  width: 430px;
  flex-shrink: 0;
}
.wg-table.table-all-category ul.table-title li:last-child {
  width: 110px;
  flex-shrink: 0;
}
.wg-table.table-all-category .product-item {
  padding: 12px;
  border-radius: 12px;
}
.wg-table.table-all-category .product-item .body-text {
  color: var(--Heading);
}
.wg-table.table-all-category .product-item > .flex > div {
  width: 100%;
}
.wg-table.table-all-category .product-item > .flex > div:first-child {
  width: 366px;
  flex-shrink: 0;
}
.wg-table.table-all-category .product-item > .flex > div:last-child {
  width: 110px;
  flex-shrink: 0;
}
.wg-table.table-all-category .product-item:nth-child(2n+1) {
  background: var(--bg-table);
}

.dark-theme {
  --White: #1E293B;
  --Heading: #94A3B8;
  --Input: #324055;
  --Body-Text: #FFFFFF;
  --Note: #95989D;
  --Stroke: #283548;
  --bg-table: #28354852;
  --bg-table-1: #28354852;
  --hv-item: #ffffff24;
  background: #0F172A;
}
.dark-theme .button-dark-light i::before {
  content: "\ea00";
}
.dark-theme .form-search .button-submit button {
  color: #94A3B8;
}
.dark-theme .header-dashboard .wrap .header-item {
  background: rgba(203, 213, 225, 0.1019607843);
}
.dark-theme .section-content-right .main-content {
  background: #0F172A;
}
.dark-theme .wg-pagination li a {
  border-color: #283548;
  color: #94A3B8;
}
.dark-theme .product-item .image {
  background: transparent;
}
.dark-theme .product-item svg path {
  stroke: #fff;
}
.dark-theme .block-available {
  background: #2A4432;
}
.dark-theme .select::after {
  color: #94A3B8;
}
.dark-theme .section-menu-left {
  background-color: #1E293B;
}
.dark-theme .section-menu-left > .box-logo {
  border-bottom-color: #283548;
}
.dark-theme .section-menu-left .center-heading {
  color: #BDCFD3;
}
.dark-theme .section-menu-left .menu-item a .icon i {
  color: #94A3B8 !important;
}
.dark-theme .section-menu-left .menu-item a .icon svg path {
  stroke: #94A3B8;
}
.dark-theme .section-menu-left .menu-item a .text {
  color: #fff !important;
}
.dark-theme .section-menu-left .menu-item.has-children .sub-menu a .text {
  color: #94A3B8;
}
.dark-theme .section-menu-left .menu-item.has-children::after {
  color: #94A3B8 !important;
}
.dark-theme .section-menu-left .bot .wrap {
  border-color: #283548;
}
.dark-theme .section-menu-left .bot .wrap h6 {
  color: #fff;
}
.dark-theme .section-menu-left .bot .wrap .text {
  color: #94A3B8;
}
.dark-theme .section-menu-left .sidebar-bottom-menu {
  border-color: #283548;
  background: rgb(30, 41, 59);
}
.dark-theme .section-menu-left .sidebar-bottom-menu .menu-item a {
  background: rgba(148, 163, 184, 0.1);
}
.dark-theme .section-menu-left .sidebar-bottom-menu .menu-item a:hover {
  background: rgba(148, 163, 184, 0.2);
}
.dark-theme .dropdown-menu {
  box-shadow: 0px 4px 24px 2px rgba(20, 25, 38, 0.8) !important;
}
.dark-theme .tf-button {
  border: 0;
}
.dark-theme .tf-button:hover {
  background-color: rgba(34, 117, 252, 0.8);
  color: #fff;
}
.dark-theme .tf-button.style-1 {
  background-color: #fff;
}
.dark-theme .tf-button.style-1:hover {
  background-color: #2275fc;
}

@media (max-width: 991px) {
  .dark-theme .layout-wrap.full-width .box-logo {
    background-color: #1E293B;
  }
}
.layout-wrap {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (max-width: 1440px) {
  
  .wg-box {
    padding: 24px 15px;
  }
}
@media (max-width: 1200px) {
  .form-style-2 .left {
    max-width: 150px !important;
  }
  .header-user {
    width: unset;
  }
  .header-user > div:last-child {
    display: none;
  }
}
@media (max-width: 991px) {
  .layout-wrap.full-width .section-menu-left {
    left: 0;
  }
  .layout-wrap.full-width .section-menu-left .button-show-hide {
    transform: rotate(0deg);
  }
  .layout-wrap.full-width .section-menu-left .box-logo {
    left: 0;
  }
  .layout-wrap.full-width .section-content-right .header-dashboard {
    padding-left: 15px !important;
  }
  .layout-wrap .section-menu-left {
    left: -100%;
  }
  .layout-wrap .section-menu-left .button-show-hide {
    transform: rotate(180deg);
  }
  .layout-wrap .section-menu-left .box-logo {
    background-color: #fff;
    border-color: #fff;
    left: -100%;
  }
  .layout-wrap .section-content-right .main-content {
    padding-left: 0 !important;
  }
  .layout-wrap .section-content-right .main-content .main-content-inner {
    padding-left: 15px;
    padding-right: 15px;
  }
  .layout-wrap .section-content-right .header-dashboard {
    width: 100% !important;
    padding-left: 15px !important;
    left: 0 !important;
  }
  .layout-wrap .section-content-right .header-dashboard .wrap .button-show-hide {
    display: block;
  }
  .layout-wrap .section-content-right .header-dashboard .wrap .form-search {
    display: none;
  }
  .layout-wrap .section-content-right .header-dashboard .wrap .header-left > a {
    display: block;
  }
  
  .layout-wrap .section-content-right .header-dashboard .wrap .header-grid > .user,
  .layout-wrap .section-content-right .header-dashboard .wrap .header-grid > .button-dark-light {
    display: none;
  }
}
@media (max-width: 767px) {
  .form-style-2 > * {
    flex-wrap: wrap;
  }
  .form-style-2 .left {
    max-width: unset !important;
  }
}
/* компактные утилиты для левой колонки */

/* общий тонкий список как у сабменю темы */
.menu-thin { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }

.row-wrapper { position: relative; display: grid; grid-template-columns: 1fr auto; align-items: center; }
.row-item {
  display: flex; align-items: center; gap: 8px;
  width: 100%; padding: 8px 10px;
  background: transparent; border: 1px solid transparent; border-radius: 8px;
  color: inherit; text-align: left; cursor: pointer;
}
.row-item:hover { background: rgba(255,255,255,.04); }
.row-active { background: rgba(64, 58, 237, 0.08); border-color: rgba(58, 88, 237, 0.35); box-shadow: 0 0 0 1px rgba(58, 94, 237, 0.22) inset; }

.row-text {
  display: inline-block; max-width: 100%;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

/* иконки из набора темы уже стилизованы, просто уменьшаем визуально */
.row-item i { font-size: 14px; line-height: 1; }

/* мини-кнопки действий */
.btn-xxs {
  background: none; border: none; padding: 4px; line-height: 1;
  color: var(--text-muted, #9aa0b4); cursor: pointer;
}
.btn-xxs:hover { color: var(--accent-600, #2275fc); }

/* блок действий справа показываем по hover, на мобилках всегда видим */
.row-actions { display: none; gap: 4px; align-items: center; }
.row-wrapper:hover .row-actions { display: inline-flex; }
@media (max-width: 991px) { .row-actions { display: inline-flex; } }

.rename-input {
  width: 140px; max-width: 46vw;
  background: var(--surface, rgb(75, 145, 253));
  border: 1px solid var(--border, #2A2B37);
  color: inherit; padding: 4px 6px; border-radius: 6px; margin-right: 4px;
}

/* пустые состояния */
.muted-empty {
  padding: 6px 8px; color: var(--text-muted, #9aa0b4); font-size: 12px;
}
/*----------------------------*/
/* убедимся, что элементы списка кликабельны поверх любых overlay из темы */
.section-menu-left .sub-menu .row-item,
.section-menu-left .sub-menu .row-actions button {
  pointer-events: auto;
}
.rename-form.hidden {
  display: none;
}

.rename-form {
  display: inline-flex;
  gap: 4px;
  align-items: center;
}
.rename-form.hidden { display: none; }
.rename-form { display: inline-flex; gap: 4px; align-items: center; }



/* Chat layout */

.chat-messages {
  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative;
}

.chat-footer {
  background: var(--surface);
  padding: 10px;
}

.chat-message {
  display: flex;
  margin-bottom: 8px;
}

.chat-message-user {
  justify-content: flex-end;
}
.chat-message-assistant {
  justify-content: flex-start;
}

.bubble {
  max-width: 75%;
  padding: 10px 14px;
  border-radius: 16px;
  font-size: 14px;
  line-height: 1.4;
}

.bubble-user {
  background: linear-gradient(180deg, var(--accent-500), var(--accent-700));
  color: #fff;
  box-shadow: var(--glow);
  border-bottom-right-radius: 4px;
}

.bubble-assistant {
  background: var(--input);
  color: var(--fg);
  border: 1px solid var(--border);
  border-bottom-left-radius: 4px;
}


/* === Chat layout full-bleed === */
:root { --app-header: 56px; }

html.has-chat-page .layout-wrap .section-content-right {
  min-block-size: 100vh;
  display: flex;
  flex-direction: column;
}

html.has-chat-page .layout-wrap .section-content-right .main-content {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-block-size: 0;
}

html.has-chat-page .layout-wrap .section-content-right .main-content .main-content-inner {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-block-size: 0;
  padding: 30px 30px 0;
  overflow: hidden;
  --main-content-padding: 30px;
}

html.has-chat-page .layout-wrap .section-content-right .main-content .main-content-inner .main-content-wrap {
  flex: 1 1 auto;
  display: flex;
  min-block-size: 0;
  margin: 0;
}

html.has-chat-page .chat-page {
  flex: 1 1 auto;
  display: flex;
  min-block-size: 0;
  inline-size: 100%;
  block-size: calc(100vh - var(--app-header) - var(--main-content-padding, 0px));
  max-block-size: calc(100vh - var(--app-header) - var(--main-content-padding, 0px));
  overflow: hidden;
}

@supports (height: 100dvh) {
  html.has-chat-page .chat-page {
    block-size: calc(100dvh - var(--app-header) - var(--main-content-padding, 0px));
    max-block-size: calc(100dvh - var(--app-header) - var(--main-content-padding, 0px));
  }
}

#current-thread.chat-root,
#current-thread {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-block-size: 0;
  block-size: 100%;
}

.chat-surface {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-block-size: 0;
  inline-size: 100%;
  block-size: 100%;
  max-block-size: 100%;
  background: var(--surface);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: hidden;
}

.chat-messages {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-block-size: 0;
  block-size: 100%;
  max-block-size: 100%;
  background: var(--surface);
  gap: 0;
  overflow: hidden;
}

.chat-empty-state {
  flex: 1 1 auto;
  min-block-size: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  color: var(--text-muted, #6c757d);
}

.messages-scroll {
  flex: 1 1 auto;
  min-block-size: 0;
  overflow-y: auto;
  padding: 24px 28px 16px;
  display: flex;
  flex-direction: column;
  scrollbar-gutter: stable;
}

#messages-top-anchor,
#messages-sentinel {
  flex: 0 0 auto;
}

#messages-list {
  flex: 0 0 auto;
  margin-block-start: auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.chat-footer {
  margin-block-start: auto;
  padding: 12px 28px 28px;
  background: var(--surface);
  display: flex;
  align-items: center;
}

.chat-footer form {
  display: flex;
  gap: 12px;
  inline-size: 100%;
}

.chat-footer .form-control {
  flex: 1 1 auto;
  min-inline-size: 0;
}

/* вспомогательные */
.rename-form.hidden { display: none; }
.chat-header .rename-input { height: 28px; }


.chat-root {
  display: flex;
  flex-direction: column;
  min-block-size: 0;
}
#messages {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
}
.chat-footer {
  flex-shrink: 0;
}

/* спрятать любые oob-фрагменты, если они вдруг попадут в центральный DOM */
#current-thread [hx-swap-oob] { display: none !important; }



/* утилиты темы (если их нет) */
.flex { display:flex; }
.flex-col { flex-direction: column; }
.items-center { align-items: center; }
.justify-between { justify-content: space-between; }
.gap10 { gap:10px; }
.mb-12 { margin-bottom:12px; }
.mt-auto { margin-top:auto; }


/* ===== Billing page layout fix ===== */
/* Существенно: сужаем только страницу тарифов, остальные не трогаем */
.billing-page .themesflat-container.full {
  max-width: 1120px;      /* комфортная ширина для 3 колонок */
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
}
@media (min-width: 1600px) {
  .billing-page .themesflat-container.full { max-width: 1240px; }
}

/* ===== Современный вид карточек ===== */
.billing-card {
  position: relative;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  border-radius: 16px; /* wg-box уже имеет бордер и фон темы, просто усилим эффекты */
  overflow: hidden;
}
/* Акцентная линия сверху */
.billing-card::after {
  content: "";
  position: absolute; inset: 0 0 auto 0; height: 3px;
  background: linear-gradient(90deg, var(--Main, #2275FC), #8AA3FF);
  opacity: .9;
}
.billing-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 32px rgba(0,0,0,.24);
  border-color: rgba(255,255,255,.16);
}

/* Небольшая шлифовка типографики */
.billing-card .body-title-2 { letter-spacing: .2px; }
.billing-card .body-text { color: var(--text-muted, #9aa0b4); }

/* Бейдж для «популярного» варианта цены */
.pill-main {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 2px 8px; border-radius: 999px; margin-left: 6px;
  font-weight: 600; font-size: 12px; line-height: 1;
  color: var(--accent-400, #5c87ff);
  background: rgba(92,135,255,.12);
  border: 1px solid rgba(92,135,255,.35);
}

/* ===== Прайс-блоки внутри карточки ===== */
.price-box {
  border-radius: 12px;
  background: var(--input, rgba(255,255,255,.03)); /* чуть темнее, чем фон карточки */
  border: 1px solid var(--border, rgba(255,255,255,.08));
  transition: border-color .2s ease, background-color .2s ease;
}
.price-box:hover {
  border-color: rgba(255,255,255,.18);
  background: rgba(255,255,255,.04);
}

/* Левая часть цены: аккуратная типографика и «не рыжая» палитра */
.price-left {
  display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap;
  min-width: 0;
}
.price-amount { font-size: 18px; font-weight: 700; color: var(--fg, #e9ecf5); }
.price-currency, .price-period { color: var(--text-muted, #9aa0b4); font-weight: 500; }

/* Кнопка не ломает ряд и не «сползает» на узких экранах */
.price-box .tf-button { white-space: nowrap; }

/* мелкие утилиты, если вдруг их нет в теме */
.gap10 { gap: 10px; }
.mt-auto { margin-top: auto; }

/* ===== Только страница тарифов ===== */
.billing-page .main-content-wrap,
.billing-page .themesflat-container.full {
  max-width: 1120px;     /* комфортно для 3 колонок */
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
}

/* Чуть ровнее «гаттеры» внутри сетки темы, чтобы ничего не уезжало вправо/вниз */
.billing-page .row { margin-left: -10px; margin-right: -10px; }
.billing-page .row > [class*="col-"] { padding-left: 10px; padding-right: 10px; }

/* Заголовок плана — немного «сегодня» */
.plan-title {
  display: inline-flex; align-items: center; gap: 8px;
  font-weight: 800; letter-spacing: .2px;
  color: var(--Heading, #fff);
}
.plan-title::after {
  content: ""; width: 8px; height: 8px; border-radius: 999px;
  background: var(--Main, #2275FC);
  box-shadow: 0 0 0 4px rgba(34,117,252,.12);
}

/* Современный список фич/лимитов */
.features-modern {
  list-style: none; margin: 0; padding: 10px 0 0;
  display: grid; gap: 8px;
  border-top: 1px dashed var(--border, rgba(255,255,255,.12));
}
.features-modern li {
  display: flex; align-items: center; gap: 10px;
  color: var(--fg, #dfe3ee);
}
.features-modern li::before {
  content: ""; flex: 0 0 16px; height: 16px; border-radius: 50%;
  border: 2px solid var(--accent-400, #5c87ff);
  background: radial-gradient(circle at 50% 50%, rgba(92,135,255,.35) 0 45%, transparent 46%);
  box-shadow: 0 0 0 2px rgba(92,135,255,.12);
}
.features-modern b { color: var(--Heading, #fff); }

/* ===== 1) Ровная сетка карточек только на странице тарифов ===== */
.billing-page .main-content-wrap,
.billing-page .themesflat-container.full {
  max-width: 1120px;          /* комфортная ширина под 3 колонки */
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
}

/* Перехватываем «row» темы и делаем аккуратную грид-сетку только здесь */
.billing-page .row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;                  /* одинаковые зазоры без «съезжаний» вниз/вправо */
  margin: 0;                  /* убираем отрицательные отступы сетки темы */
}
.billing-page .row > [class*="col-"] {
  width: auto; max-width: none; padding: 0; /* обнуляем влияние col-классов */
}

/* ===== 2) Цена + кнопка: ничего не наезжает ===== */
.price-box .flex { align-items: center; }
.price-left {
  flex: 1 1 auto;
  min-width: 0;
  display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap;
}
.price-amount { font-size: 18px; font-weight: 700; color: var(--fg, #e9ecf5); }
.price-currency, .price-period { color: var(--text-muted, #9aa0b4); font-weight: 500; }

/* Кнопка фиксированной стороны, не сжимается и не перекрывает цену */
.price-box form { flex: 0 0 auto; }
.price-box .tf-button { white-space: nowrap; flex-shrink: 0; }

/* Чуть уплотним внутренности price-box, чтобы на маленьких ширинах всё дышало */
@media (max-width: 420px) {
  .price-box .flex { gap: 8px; }
}
/* ===== Subscriptions page ===== */
.subscriptions-page .subs-row {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  padding-bottom: 8px;
  scroll-snap-type: x mandatory;
  scrollbar-gutter: stable both-edges;
}
.subscriptions-page .subs-row::-webkit-scrollbar { height: 8px; }
.subscriptions-page .subs-row::-webkit-scrollbar-thumb {
  background: var(--border, rgba(255,255,255,.14));
  border-radius: 999px;
}

.subscriptions-page .subs-card {
  flex: 0 0 auto;
  min-width: 280px;
  max-width: 360px;
  scroll-snap-align: start;
  border-radius: 16px;
  border: 1px solid var(--border, rgba(255,255,255,.08));
  background: var(--surface, rgba(255,255,255,.02));
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.subscriptions-page .subs-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgba(0,0,0,.22);
  border-color: rgba(255,255,255,.16);
}



/* Заголовок плана / бейджи */
.plan-title {
  font-weight: 800; letter-spacing: .2px; color: var(--Heading, #fff);
  display: inline-flex; align-items: center; gap: 8px;
}
.plan-title::after {
  content: ""; width: 8px; height: 8px; border-radius: 999px;
  background: var(--Main, #2275FC);
  box-shadow: 0 0 0 4px rgba(34,117,252,.12);
}
.pill-main {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 2px 8px; border-radius: 999px;
  font-weight: 600; font-size: 12px; line-height: 1;
  color: var(--accent-400, #5c87ff);
  background: rgba(92,135,255,.12);
  border: 1px solid rgba(92,135,255,.35);
}
.pill-muted {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 2px 8px; border-radius: 999px; font-size: 12px;
  color: var(--text-muted, #9aa0b4);
  background: rgba(154,160,180,.12);
  border: 1px solid rgba(154,160,180,.25);
}

/* Современный список фич/дат */
.features-modern {
  list-style: none; margin: 0; padding: 10px 0 0;
  display: grid; gap: 8px;
  border-top: 1px dashed var(--border, rgba(255,255,255,.12));
}
.features-modern li {
  display: flex; align-items: center; gap: 10px;
  color: var(--fg, #dfe3ee);
}
.features-modern b { color: var(--Heading, #fff); }

/* Пустые состояния */
.muted-empty {
  padding: 6px 8px; color: var(--text-muted, #9aa0b4); font-size: 12px;
}

/* ========= Subscriptions: pretty horizontal scroll ========= */
.subscriptions-page .subs-row {
  /* плавность и приятная инерция */
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;

  /* мягкие «затемнённые» края при скролле */
  -webkit-mask-image: linear-gradient(to right,
      transparent 0, #000 24px,
      #000 calc(100% - 24px), transparent 100%);
          mask-image: linear-gradient(to right,
      transparent 0, #000 24px,
      #000 calc(100% - 24px), transparent 100%);
}

/* Firefox */
.subscriptions-page .subs-row {
  scrollbar-width: thin; /* auto | thin | none */
  scrollbar-color: rgba(92,135,255,.65) transparent; /* thumb | track */
}

/* WebKit */
.subscriptions-page .subs-row::-webkit-scrollbar {
  height: 10px;
}
.subscriptions-page .subs-row::-webkit-scrollbar-track {
  background: linear-gradient(180deg,
    transparent 0,
    rgba(255,255,255,.04) 20%,
    rgba(255,255,255,.04) 80%,
    transparent 100%);
  border-radius: 999px;
}
.subscriptions-page .subs-row::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: linear-gradient(90deg, #5c87ff, #2275fc);
  box-shadow: inset 0 0 0 2px rgba(0,0,0,.2);
}
.subscriptions-page .subs-row::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(90deg, #7b9cff, #4a8aff);
}

/* чуть больше «воздуха» под скроллбар */
.subscriptions-page .subs-row { padding-bottom: 12px; }


/* ===== Knowledge (База знаний) ===== */
.knowledge-page .themesflat-container.full{
  max-width: 1120px;
  margin-left: auto; margin-right: auto;
  padding-left: 16px; padding-right: 16px;
}
@media (min-width:1600px){
  .knowledge-page .themesflat-container.full{ max-width:1240px; }
}

/* таблица в стиле "All category", но ровнее на узких ширинах */
.kb-table .table-title > li{ flex: 1 1 0; }
.kb-table .table-title > li:first-child{ flex: 2 1 0; }
.kb-table .flex.flex-column{ gap: 10px; }

/* пункт списка */
.kb-table .product-item{
  display: grid;
  grid-template-columns: 56px 1fr;
  align-items: center;
  gap: 14px;
  padding: 10px;
  border-radius: 12px;
  transition: background-color .15s ease, border-color .15s ease;
  border: 1px solid var(--border, rgba(255,255,255,.08));
  background: var(--panel, rgba(255,255,255,.02));
}
.kb-table .product-item:hover{
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.12);
}

/* круглая иконка */
.kb-icon{
  width: 40px; height: 40px; border-radius: 999px;
  display: grid; place-items: center;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, var(--Main, #2275FC), #8AA3FF);
  box-shadow: 0 2px 10px rgba(34,117,252,.35);
  user-select: none;
}
.kb-icon.small{ width: 36px; height: 36px; font-size: 14px; }

/* “Открыть” прячем на очень узких */

/* выравнивание контента строки файла/категории */
.kb-table .product-item > .flex{
  min-width: 0;
}
.kb-table .product-item .name .body-title-2{
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

/* форма поиска ужимается красиво */
.knowledge-page .form-search{
  display: flex; align-items: center; gap: 8px;
  margin: 0;
}
.knowledge-page .form-search fieldset.name{ margin: 0; }
.knowledge-page .form-search input{
  width: 260px;
}
@media (max-width: 640px){
  .knowledge-page .form-search input{ width: 180px; }
}

/* База знаний — плитки категорий */
.knowledge-page .category-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px;
  list-style: none;
  padding: 0; margin: 0;
}
.knowledge-page .category-tile {
  display: flex; align-items: center; gap: 12px;
  padding: 12px 14px;
  border-radius: 12px;
  background: var(--input, rgba(255,255,255,.03));
  border: 1px solid var(--border, rgba(255,255,255,.08));
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.knowledge-page .category-tile:hover {
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.18);
  box-shadow: 0 12px 24px rgba(0,0,0,.22);
}
.knowledge-page .category-tile i { font-size: 18px; }

/* style.css */
.knowledge-page .row-click a { text-decoration: none; }
.knowledge-page .row-click { cursor: pointer; }
.knowledge-page .row-click:hover { background: rgba(255,255,255,.025); border-radius: 10px; }


/* ==== Knowledge: компактные отступы и контейнер ==== */
.main-content.knowledge-page .main-content-inner{
  /* было 30px глобально, делаем аккуратнее для базы знаний */
  padding: 16px 0 24px;
}
.main-content.knowledge-page .main-content-wrap{
  /* «контейнер» как в вашем примере с themesflat-container.full */
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 16px;
}
@media (min-width:1600px){
  .main-content.knowledge-page .main-content-wrap{ max-width:1240px; }
}


/* ===== Knowledge (База знаний): аккуратная таблица ===== */

/* шапка таблицы — ровные колонки даже на узких */
.kb-table .table-title > li{ flex: 1 1 0; }
.kb-table .table-title > li:first-child{ flex: 2 1 0; }
.kb-table .flex.flex-column{ gap: 10px; }

/* пункт списка (используем ваш .product-item + легкий «карточный» вид) */
.kb-table .product-item{
  display: grid;
  grid-template-columns: 56px 1fr;
  align-items: center;
  gap: 14px;
  padding: 10px;
  border-radius: 12px;
  transition: background-color .15s ease, border-color .15s ease;
  border: 1px solid var(--border, rgba(0,0,0,.08));
  background: var(--panel, rgba(0,0,0,.02));
}
.kb-table .product-item:hover{
  background: rgba(0,0,0,.04);
  border-color: rgba(0,0,0,.12);
}

/* выравнивание и усечение длинных имён */
.kb-table .product-item > .flex{ min-width: 0; }
.kb-table .product-item .name .body-title-2{
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

/* поисковая форма ужимается красиво (если она есть вверху страницы) */
.knowledge-page .form-search{
  display: flex; align-items: center; gap: 8px; margin: 0;
}
.knowledge-page .form-search fieldset.name{ margin: 0; }
.knowledge-page .form-search input{ width: 260px; }
@media (max-width: 640px){
  .knowledge-page .form-search input{ width: 180px; }
}

/* helper: скрыть второстепенные элементы на очень узких экранах */

/* === KB: выравнивание колонок (иконка | имя | тип | размер) === */
.kb-table .table-title{
  display: grid;
  grid-template-columns: 56px 1fr 120px 120px; /* иконка | имя | тип | размер */
  align-items: center;
  gap: 0;               /* чтобы не влияло старое flex-gap */
  margin-bottom: 10px;  /* визуально ближе к списку */
}
/* Пустая ячейка под колонку иконки в шапке */
.kb-table .table-title::before{ content: ""; }
.kb-table .table-title > li{ margin: 0; } /* на всякий случай обнулим отступы */

/* Строка файла: такая же сетка из 4 колонок */
.kb-table .product-item{
  display: grid;
  grid-template-columns: 56px 1fr 120px 120px;
  align-items: center;
  gap: 14px;            /* расстояние между колонками и иконкой */
  padding: 10px;
}

/* Ячейка с иконкой */
.kb-table .product-item .image{
  grid-column: 1;
  justify-self: center; /* центрируем иконку в своей колонке */
}

/* Блок справа (name / ext / size) раскладываем на 3 колонки,
   и растягиваем на оставшиеся 3 колонки общей сетки */
.kb-table .product-item > .flex{
  grid-column: 2 / -1;
  display: grid;
  grid-template-columns: 1fr 120px 120px; /* имя | тип | размер */
  align-items: center;
  gap: 20px;
}

/* Имя файла не «выпирает» */
.kb-table .product-item .name{ min-width: 0; }
.kb-table .product-item .name .body-title-2{
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

/* Чуть сжимаем колонки на очень узких экранах */
@media (max-width: 520px){
  .kb-table .table-title,
  .kb-table .product-item { grid-template-columns: 48px 1fr 96px 96px; }
  .kb-table .product-item > .flex{ grid-template-columns: 1fr 96px 96px; gap: 12px; }
}


/* ===== Knowledge > Category list: ровные колонки ===== */
.kb-table .table-all-category > * { min-width: unset; }

/* одна и та же сетка для шапки и строк */
.kb-row {
  display: grid !important;                 /* перебиваем flex из базовых стилей */
  grid-template-columns: 56px 1fr 96px 96px;/* иконка | имя | тип | размер */
  align-items: center;
  gap: 12px;
}

/* шапка таблицы тоже на гриде */
.kb-table .table-title {
  display: grid !important;
  grid-template-columns: 56px 1fr 96px 96px;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border-radius: 12px;
  background: var(--bg-table);
}
.kb-table .table-title li { width: auto !important; margin: 0; }

/* строка файла — карточка на гриде */
.kb-table .product-item.kb-row {
  display: grid !important;
  grid-template-columns: 56px 1fr 96px 96px;
  padding: 10px 12px;
}

/* имя файла: максимум 2 строки, остальное обрезаем */
.kb-name{
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal;
}

/* тип/размер — не переносятся (компактнее) */
.kb-type, .kb-size { white-space: nowrap; }

/* на узких экранах слегка сжимаем служебные колонки */
@media (max-width: 640px){
  .kb-row,
  .kb-table .table-title,
  .kb-table .product-item.kb-row{
    grid-template-columns: 40px 1fr 74px 84px;
    gap: 10px;
  }
}

/* гасим автоматические ширины «all-category», чтобы не ломали сетку */
.kb-table .table-all-category .product-item > .flex > div { width: auto !important; }


/* === KB: выравнивание таблицы файлов (4 колонки) === */
.kb-row {
  display: grid !important;                /* перекрываем display:flex у .product-item */
  grid-template-columns: 56px 1fr 120px 120px;  /* Иконка | Имя | Тип | Размер */
  column-gap: 14px;
  align-items: center;
}

/* Шапка таблицы */
.kb-table .table-title.kb-row {
  display: grid !important;
  grid-template-columns: 56px 1fr 120px 120px;
  column-gap: 14px;
}
.kb-table .table-title.kb-row li { display:flex; align-items:center; }

/* Строка файла (перепривязываем ячейки к колонкам грида) */
.product-item.kb-row > .image { grid-column: 1; }
.product-item.kb-row > .name  { grid-column: 2; min-width:0; }
.product-item.kb-row > .kb-type { grid-column: 3; }
.product-item.kb-row > .kb-size { grid-column: 4; }

/* Имя — до 2 строк, затем обрезка */
.kb-name{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 1.25;
}

/* Тип/Размер — не ломаем на много строк */
.kb-type, .kb-size { white-space: nowrap; }

/* На узких экранах немного ужимаем последние колонки */
@media (max-width: 640px){
  .kb-row{
    grid-template-columns: 40px 1fr 90px 90px;
  }
}

/* ===== KB: ровная сетка и фиксированный порядок колонок ===== */
.kb-row{
  display: grid !important;
  grid-template-columns: 56px 1fr 120px 120px;        /* Icon | Name | Type | Size */
  grid-template-areas: "icon name type size";
  column-gap: 14px;
  align-items: center;
}

/* Шапка: крепим элементы к нужным областям */
.kb-icon-h { grid-area: icon; }
.kb-name-h { grid-area: name; display:flex; align-items:center; }
.kb-type-h { grid-area: type; display:flex; align-items:center; }
.kb-size-h { grid-area: size; display:flex; align-items:center; }

/* Строки: крепим ячейки к тем же областям */
.product-item.kb-row > .image    { grid-area: icon; }
.product-item.kb-row > .name     { grid-area: name; min-width:0; }
.product-item.kb-row > .kb-type  { grid-area: type; white-space: nowrap; }
.product-item.kb-row > .kb-size  { grid-area: size; white-space: nowrap; }

/* Имя файла — максимум 2 строки */
.kb-name{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  line-height: 1.25;
}

/* Узкие экраны: слегка ужимаем правые колонки */
@media (max-width: 640px){
  .kb-row{
    grid-template-columns: 40px 1fr 90px 90px;
  }
}


/* ===== Knowledge — Access Denied ===== */
.kb-denied{
  max-width: 720px;
  margin: 0 auto;
}

.kb-card{
  border: 1px solid var(--Stroke);
  background: var(--White);
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 4px 24px 2px rgba(20,25,38,.05);
}

.kb-hero{
  display: flex; align-items: center; gap: 12px;
  margin-bottom: 12px;
}

.kb-title{
  font-size: 18px; line-height: 24px; font-weight: 700;
  color: var(--Heading); margin-bottom: 4px;
}

.kb-subtitle{ color: var(--Body-Text); }

.kb-icon{
  width: 40px; height: 40px; border-radius: 999px;
  display: grid; place-items: center;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(135deg, var(--Main), #8AA3FF);
  box-shadow: 0 2px 10px rgba(34,117,252,.35);
  user-select: none;
}
.kb-icon.small{ width: 36px; height: 36px; font-size: 14px; }

/* преимущества */
.kb-perks{
  display: grid; gap: 8px;
  margin-top: 8px;
}
.kb-perks li{
  display: flex; gap: 8px; align-items: flex-start;
  color: var(--Body-Text); font-size: 14px; line-height: 20px;
}
.kb-perks i{ font-size: 16px; color: var(--Main); }

/* кнопки */
.kb-actions{
  display: flex; gap: 10px; flex-wrap: wrap;
  margin-top: 14px;
}
.kb-actions .tf-button{ height: 44px; padding: 10px 16px; }

/* адаптив */
@media (max-width: 640px){
  .kb-card{ padding: 18px; }
  .kb-title{ font-size: 16px; line-height: 22px; }
}

/* (на всякий случай) базовый отступ для knowledge-page чуть компактнее */
.knowledge-page .main-content-wrap{
  padding-top: 6px; /* компактнее, чем по умолчанию */
}

/* ===== Knowledge → категории строками вместо карточек ===== */
.knowledge-page .category-grid{
  /* из grid в вертикальный список */
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* убираем "карточность" элемента */
.knowledge-page .category-grid .category-card{
  padding: 0;
  margin: 0;
  background: transparent;
  box-shadow: none;
  border: 0;
}

/* каждая категория — одна строка-«плитка» с иконкой слева и названием справа */
.knowledge-page .category-grid .category-tile{
  display: grid;
  grid-template-columns: 40px 1fr; /* иконка | название */
  align-items: center;
  gap: 14px;

  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid var(--border, rgba(255,255,255,.08));
  background: var(--panel, rgba(255,255,255,.02));
  transition: background-color .15s ease, border-color .15s ease, transform .15s ease;
}

/* ховер — лёгкий акцент, без «подъёма» карточки */
.knowledge-page .category-grid .category-tile:hover{
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.12);
}

/* иконка папки */
.knowledge-page .category-grid .category-tile .icon-folder{
  width: 40px; height: 40px;
  display: grid; place-items: center;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--Main, #2275FC), #8AA3FF);
  color: #fff;
  box-shadow: 0 2px 10px rgba(34,117,252,.35);
  font-size: 16px;
}

/* текст — переносится максимум на 2 строки */
.knowledge-page .category-grid .category-tile .body-title-2{
  margin: 0;
  line-height: 1.25;
  display: -webkit-box;
  -webkit-line-clamp: 2;          /* до двух строк */
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* компактнее на совсем узких экранах */
@media (max-width: 480px){
  .knowledge-page .category-grid .category-tile{
    grid-template-columns: 36px 1fr;
    padding: 10px 12px;
    gap: 10px;
  }
  .knowledge-page .category-grid .category-tile .icon-folder{
    width: 36px; height: 36px; font-size: 14px;
  }
}

/* Promo input compact */

/* ===== Settings → Security ===== */
.settings-page .security-card{
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border-radius: 14px;
  border: 1px solid var(--border, rgba(255,255,255,.08));
  background: var(--panel, rgba(255,255,255,.02));
  transition: background-color .15s ease, border-color .15s ease, transform .15s ease;
}
.settings-page .security-card:hover{
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.12);
}

.settings-page .security-icon{
  width: 44px; height: 44px;
  border-radius: 999px;
  display: grid; place-items: center;
  color: #fff;
  background: linear-gradient(135deg, var(--Main, #2275FC), #8AA3FF);
  box-shadow: 0 2px 10px rgba(34,117,252,.35);
  flex: 0 0 44px;
}

.settings-page .security-info{
  flex: 1 1 auto;
  min-width: 0;
}
.settings-page .security-info .body-title-2{
  margin-bottom: 2px;
}
.settings-page .muted{
  color: var(--muted, #9aa4b2);
}

.settings-page .security-hint{
  color: var(--muted, #9aa4b2);
}

@media (max-width: 640px){
  .settings-page .security-card{
    flex-wrap: wrap;
  }
  .settings-page .security-card .tf-button{
    width: 100%;
    justify-content: center;
  }
}

/* ==== Modern Scrollbars (глобально) ==== */
:root{
  --scrollbar-size: 10px;
  --scrollbar-track: rgba(255,255,255,.06);     /* фон дорожки */
  --scrollbar-thumb: rgba(255,255,255,.28);     /* ползунок */
  --scrollbar-thumb-hover: rgba(255,255,255,.38);
  --scrollbar-corner: transparent;
}

/* Firefox */
*{
  scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track);
  scrollbar-width: thin; /* auto | thin | none */
}

/* Chromium/WebKit */
::-webkit-scrollbar{ width: var(--scrollbar-size); height: var(--scrollbar-size); }
::-webkit-scrollbar-track{
  background: var(--scrollbar-track);
  border-radius: 999px;
}
::-webkit-scrollbar-thumb{
  background: var(--scrollbar-thumb);
  border-radius: 999px;
  border: 2px solid var(--scrollbar-track); /* аккуратная “внутренняя” тень */
}
::-webkit-scrollbar-thumb:hover{ background: var(--scrollbar-thumb-hover); }
::-webkit-scrollbar-corner{ background: var(--scrollbar-corner); }

/* Поведение прокрутки и мобильная инерция */
html{ scroll-behavior: smooth; }
*{ -webkit-overflow-scrolling: touch; }
