/* ---------------------------------------------------------
    * Name: Grocery
    * Version: 1.0.1
    * Author: Themesflat
    * Author URI: http://themesflat.com 

	* Abstracts variable

    * Reset css styles

    * Settings
        * theme settings

    * Components
        * alert
        * avatar
        * badge
        * button group
        * button
        * card
        * carousel
        * chart
        * divider
        * dropdown
        * form
        * header
        * image box
        * menubar
        * modal
        * preloader
        * progressbar
        * radio button
        * range slider
        * spinner
        * stepper
        * switch
        * tabs
        * timeline
        * toast
        * treeview

    * widget

    * Pages
        * boarding
        * account
        * home 
        * profile
        * chat
        * order

 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
:root {
  --surface: #f5f5f5;
  --white: #fff;
  --primary: #e55223;
  --primary-bold: #5b2400;
  --primary-btn: #e55223;
  --secondary: #787982;
  --secondary2: #b9bac3;
  --success: #1e7f11;
  --success2: #54b24c;
  --danger: #e10000;
  --warning: #ff8a00;
  --info: #a70267;
  --light: #e7e7e7;
  --dark: #1b325f;
  --disable: #d3b7a5;
  --green: #143d33;
  --green2: #c7f464;
  --orange: #ff9c2e;
  --orange2: #fa6900;
  --orange3: #f9cdad;
  --pink: #fe4365;
  --purple: #542437;
  --blue: #606dfa;
  --blue2: #a7dbd8;
  --blue3: #4ecdc4;
  --blue4: #036564;
  --dark2: #031634;
  --bg-ip: #f7f7f7;
  --shadow: 0px 15px 20px 0px rgba(201, 106, 40, 0.44);
  --shadow2: 0px 1px 4px 0px rgba(0, 0, 0, 0.07) inset;
  --shadow3: 0px 4px 16px 0px rgba(0, 0, 0, 0.08);
  --shadow-box: 0px 8px 30px 0px rgba(0, 0, 0, 0.06);
  --text-gray: #f3f3f3;
  --dot: #6c6c78;
  --text: #6f7582;
  --text-2: #c9cbce;
  --text-3: #343434;
  --text-4: #d3d5da;
  --text-5: #abadb2;
  --line: #e5e5e5;
  --line-2: #d9d9d9;
  --line-3: #dbdbdb;
  --line-rgba: rgba(255, 255, 255, 0.1);
  --backdrop: rgb(21, 21, 21);
  --bg-progress: rgba(21, 21, 21, 0.15);
  --rgba-primary: rgba(135, 59, 10, 0.1);
  --rgba-success: rgba(30, 127, 17, 0.1);
  --rgba-danger: rgba(225, 0, 0, 0.1);
  --rgba-warning: rgba(255, 138, 0, 0.1);
  --rgba-info: rgba(167, 2, 103, 0.1);
  --rgba-dark: rgba(27, 50, 95, 0.1);
  --rgba-disable: rgba(135, 59, 10, 0.1);
  --liner-primary: linear-gradient(270deg, #e17e3e 0%, #873b0a 100%);
  --linner-1: linear-gradient(180deg, rgba(135, 59, 10, 0) 47.91%, #2e1200 100%);
  --onSurface: #151515;
  --primary-hover: #d54313;
  --success-hover: #19770c;
  --danger-hover: #b30808;
  --warning-hover: #e37d05;
  --info-hover: #91045a;
  --light-hover:#d0caca;
  --dark-hover:#15294f;
  --disable-hover:#c4a896;
}

/*---------- Reset css styles ----------- */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

::-webkit-scrollbar {
  display: none;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

body {
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
caption,
canvas,
center,
cite,
code,
dd,
del,
details,
dfn,
dialog,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
form,
footer,
header,
hgroup,
h1,
h2,
h3,
h4,
h5,
h6,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
tt,
table,
tbody,
textarea,
tfoot,
thead,
time,
tr,
th,
td,
u,
ul,
var,
video {
  font-size: 100%;
  vertical-align: baseline;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
  hyphens: none;
  quotes: none;
}

figure {
  margin: 0;
}

:focus {
  outline: 0;
}

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

img {
  border: 0;
  -ms-interpolation-mode: bicubic;
  vertical-align: middle;
}

legend {
  white-space: normal;
}

button,
input,
select,
textarea {
  font-size: 100%;
  margin: 0;
  max-width: 100%;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

button,
input {
  line-height: normal;
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  line-height: 1;
  cursor: pointer;
  /* Improves usability and consistency of cursor style between image-type 'input' and others */
  -webkit-appearance: button;
  /* Corrects inability to style clickable 'input' types in iOS */
  border: none;
}

input[type=checkbox],
input[type=radio] {
  padding: 0;
  /* Addresses excess padding in IE8/9 */
}

input[type=search] {
  -webkit-appearance: textfield;
  /* Addresses appearance set to searchfield in S5, Chrome */
}

input[type=search]::-webkit-search-decoration {
  /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
  -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
  border: 0;
  padding: 0;
}

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

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

body {
  font-family: "Inter Tight", sans-serif;
  font-size: 16px;
  line-height: 21px;
  font-weight: 400;
  background-color: var(--white);
  color: var(--secondary);
  min-height: 100vh;
  width: 100%;
}

a {
  text-decoration: none;
  outline: none;
  color: var(--onSurface);
  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;
}
a:hover, a:focus, a.active {
  text-decoration: none;
  outline: none;
  color: var(--onSurface);
}

ul,
ol {
  padding: 0;
}

img {
  width: 100%;
  height: 100%;
}

b,
strong {
  font-weight: 700;
}

h1 {
  font-size: 34px;
  line-height: 41px;
}

h2 {
  font-size: 28px;
  line-height: 34px;
}

h3 {
  font-size: 24px;
  line-height: 36px;
}

h4 {
  font-size: 20px;
  line-height: 25px;
}

h5 {
  font-size: 18px;
  line-height: 22px;
}

h6 {
  font-size: 16px;
  line-height: 21px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--onSurface);
  font-weight: 600;
}
button {
  border: none;
}

button,
input[type=button],
input[type=reset],
input[type=submit] {
  padding: 12px 40px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  font-size: 16px;
  font-weight: 600;
  line-height: 21px;
}

select,
textarea,
input[type=text],
input[type=password],
input[type=datetime],
input[type=datetime-local],
input[type=date],
input[type=month],
input[type=time],
input[type=week],
input[type=number],
input[type=email],
input[type=url],
input[type=search],
input[type=tel],
input[type=color] {
  width: 100%;
  font-size: 16px;
  font-weight: 400;
  line-height: 21px;
  padding: 16px 20px;
  border-radius: 12px;
  border: 1px solid var(--line);
  color: var(--onSurface);
  background-color: var(--white);
}

textarea {
  height: 140px;
  resize: none;
}

form label {
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  color: var(--secondary);
  margin-bottom: 8px;
}

textarea:focus,
input[type=text]:focus,
input[type=password]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=time]:focus,
input[type=week]:focus,
input[type=number]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=tel]:focus,
input[type=color]:focus {
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  border-color: var(--onSurface);
}

textarea::placeholder,
input::placeholder {
  color: var(--secondary2);
}

textarea,
input[type=text],
input[type=submit],
input[type=password],
input[type=datetime],
input[type=datetime-local],
input[type=date],
input[type=month],
input[type=time],
input[type=week],
input[type=number],
input[type=email],
input[type=url],
input[type=search],
input[type=tel],
input[type=color] {
  -webkit-appearance: none;
  text-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -o-box-shadow: none;
  box-shadow: none;
}

dl dt {
  font-size: 16px;
  line-height: 22.4px;
  font-weight: 700;
}

code {
  color: var(--primary-btn);
}

.tf-container {
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
  box-sizing: border-box;
}

.mw-wrapper {
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}

.list-style {
  list-style: disc;
  padding-left: 20px;
}

.text-caption {
  font-size: 12px;
  line-height: 18px;
}

.text-lg {
  font-size: 18px;
  line-height: 22px;
}

.text-md-start {
  font-size: 13px;
  line-height: 18.2px;
}

.text-sm-start {
  font-size: 12px;
  line-height: 16px;
}

.text-sm {
  font-size: 10px;
  line-height: 13px;
}

.fs-16 {
  font-size: 16px;
}

.fs-18 {
  font-size: 18px;
}

.fs-20 {
  font-size: 20px;
}

.fs-22 {
  font-size: 22px;
}

.fw-3 {
  font-weight: 300;
}

.fw-4 {
  font-weight: 400;
}

.fw-normal,
.fw-5 {
  font-weight: 500 !important;
}

.fw-6 {
  font-weight: 600;
}

.fw-7 {
  font-weight: 700;
}

.fw-italic {
  font-style: italic;
}

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

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

.mt-6 {
  margin-top: 6px;
}

.mt-8 {
  margin-top: 8px;
}

.mt-10 {
  margin-top: 10px;
}

.mt-12 {
  margin-top: 12px;
}

.mt-14 {
  margin-top: 14px;
}

.mt-15 {
  margin-top: 15px;
}

.mt-16 {
  margin-top: 16px;
}

.mt-18 {
  margin-top: 18px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-24 {
  margin-top: 24px;
}

.mt-26 {
  margin-top: 26px;
}

.mt-30 {
  margin-top: 30px;
}

.mt-32 {
  margin-top: 32px;
}

.mt-35 {
  margin-top: 35px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-45 {
  margin-top: 45px;
}

.mt-60 {
  margin-top: 60px;
}

.mt-70 {
  margin-top: 70px;
}

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

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

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

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

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

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

.mb-18 {
  margin-bottom: 18px;
}

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

.mr--16 {
  margin-right: -16px;
}

.mr--20 {
  margin-right: -20px;
}

.mb--50 {
  margin-bottom: -50px;
}

.m--16 {
  margin-left: -16px;
  margin-right: -16px;
}

.p-10 {
  padding: 10px;
}

.p-12 {
  padding: 12px;
}

.p-16 {
  padding: 16px;
}

.pt-12 {
  padding-top: 12px;
}

.pt-14 {
  padding-top: 14px;
}

.pt-16 {
  padding-top: 16px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pt-30 {
  padding-top: 30px;
}

.pt-40 {
  padding-top: 40px;
}

.pt-45 {
  padding-top: 44px;
}

.pt-50 {
  padding-top: 50px;
}

.pt-60 {
  padding-top: 60px;
}

.pt-65 {
  padding-top: 65px;
}

.pb-4 {
  padding-bottom: 4px !important;
}

.pb-8 {
  padding-bottom: 8px;
}

.pb-10 {
  padding-bottom: 10px;
}

.pb-12 {
  padding-bottom: 12px !important;
}

.pb-14 {
  padding-bottom: 14px;
}

.pb-16 {
  padding-bottom: 16px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pl-20 {
  padding-left: 20px;
}

.pl-40 {
  padding-left: 40px;
}

.pb-24 {
  padding-bottom: 24px;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pb-60 {
  padding-bottom: 60px !important;
}

.pb-72 {
  padding-bottom: 72px;
}

.pb-80 {
  padding-bottom: 80px;
}

.pb-200 {
  padding-bottom: 200px;
}

.p-16 {
  padding: 16px;
}

.py-16 {
  padding-top: 16px;
  padding-bottom: 16px;
}

.py-12 {
  padding-top: 12px;
  padding-bottom: 12px;
}

.px-16 {
  padding-left: 16px;
  padding-right: 16px;
}

.p-18 {
  padding: 18px;
}

.p-20 {
  padding: 20px;
}

.p-0 {
  padding: 0;
}

.bg-primary {
  background-color: var(--primary) !important;
}

.bg-white {
  background-color: var(--white) !important;
}

.bg-success {
  background-color: var(--success) !important;
}

.bg-danger {
  background-color: var(--danger) !important;
}

.bg-warning {
  background-color: var(--warning) !important;
}

.bg-info {
  background-color: var(--info) !important;
}

.bg-light {
  background-color: var(--light) !important;
}

.bg-dark {
  background-color: var(--dark) !important;
}

.bg-disabled {
  background-color: var(--disable) !important;
}

.bg-surface {
  background-color: var(--surface);
}

.bg-secondary {
  background-color: #e5e5e5 !important;
}

.text-white {
  color: var(--white) !important;
}

.text-black {
  color: var(--onSurface) !important;
}

.text-primary {
  color: var(--primary) !important;
}

.text-primary2 {
  color: var(--primary-btn);
}

.text-secondary {
  color: var(--secondary) !important;
}

.text-secondary2 {
  color: var(--secondary2) !important;
}

.text-onSurface {
  color: #151515 !important;
}

.text-success {
  color: var(--success) !important;
}

.text-danger {
  color: var(--danger) !important;
}

.text-warning {
  color: var(--warning) !important;
}

.text-info {
  color: var(--info) !important;
}

.text-light {
  color: var(--light) !important;
}

.text-dark {
  color: var(--dark) !important;
}

.text-muted {
  color: var(--text-4) !important;
}

.text-blue {
  color: var(--blue) !important;
}

.text-1 {
  color: var(--text);
}

.text-2 {
  color: var(--text-2);
}

.text-3 {
  color: var(--text-3);
}

.text-5 {
  color: var(--text-5);
}

.opacity-5 {
  opacity: 0.5;
}

.line-top {
  border-top: 1px solid var(--line) !important;
}

.line-bt {
  border-bottom: 1px solid var(--line) !important;
}

.line-bt-dashed {
  border-bottom: 1px dashed var(--line) !important;
}

.line-bt2 {
  border-bottom: 1px solid var(--line-rgba) !important;
}

.line-bt3 {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.line-bt4 {
  border-bottom: 1px solid rgba(17, 17, 17, 0.1) !important;
}

.line4-bt {
  border-bottom: 4px solid #f5f5f5;
}

.line-r {
  border-right: 1px solid #e5e5e5;
}

.line-4 {
  height: 4px;
  background-color: #eef0f3;
}

.grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.grid-3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

.grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.grid-5 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}

.gap-4 {
  gap: 4px !important;
}

.gap-6 {
  gap: 6px !important;
}

.gap-8 {
  gap: 8px !important;
}

.gap-10 {
  gap: 10px;
}

.gap-12 {
  gap: 12px;
}

.gap-14 {
  gap: 14px;
}

.gap-16 {
  gap: 16px;
}

.gap-20 {
  gap: 20px;
}

.gap-25 {
  gap: 25px;
}

.lr-radius {
  border-radius: 12px 12px 0px 0px;
}

.lr-wrapper {
  margin-left: -20px;
  margin-right: -20px;
}

.radius-14 {
  border-radius: 14px;
}

.mh-full {
  min-height: 100vh;
}

.rolate-90 {
  transform: rotate(90deg);
}

.radius-8 {
  border-radius: 8px;
}

.radius-12 {
  border-radius: 12px;
}
 
.radius-20 {
  border-radius: 20px;
}

.lr-radius-20 {
  border-radius: 20px 20px 0px 0px;
}

.app-content {
  padding: 71px 0px 65px;
}
.app-content.style-1 {
  padding-top: 0;
}
.app-content.style-2 {
  padding-bottom: 0px;
}
.app-content.style-3 {
  padding-top: 70px;
}
.app-content.style-4 {
  padding-top: 60px;
}
.app-content.style-5 {
  padding-top: 0;
  padding-bottom: 160px;
}
.app-content.style-6 {
  padding-bottom: 80px;
}
.app-content.style-7 {
  padding-bottom: 96px;
}

.overflow-auto {
  overflow: auto;
}

/*------------ Settings ----------------- */
/*------------ theme settings -------------- */
.modal-themes-color {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 20px 25px;
}
.modal-themes-color .color-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 4px;
}
.modal-themes-color .color-item .check-color {
  display: none;
}
.modal-themes-color .color-item label {
  width: 55px;
  height: 55px;
  border-radius: 999px;
  position: relative;
  display: block;
}
.modal-themes-color .color-item label::after {
  content: "\e976";
  position: absolute;
  top: 50%;
  left: 50%;
  display: none;
  transform: translate(-50%, -50%);
  font-family: "icomoon";
  font-weight: 900;
  font-size: 16px;
  color: #fff;
}
.modal-themes-color .color-item input:checked + label:after {
  display: block;
}
.modal-themes-color input[value=theme-primary] + label {
  background-color: #873b0a;
}
.modal-themes-color input[value=theme-green] + label {
  background-color: #378c4c;
}
.modal-themes-color input[value=theme-orange] + label {
  background-color: #ff9c2e;
}
.modal-themes-color input[value=theme-blue] + label {
  background-color: #69d2e7;
}
.modal-themes-color input[value=theme-blue-2] + label {
  background-color: #a7dbd8;
}
.modal-themes-color input[value=theme-orange-2] + label {
  background-color: #fa6900;
}
.modal-themes-color input[value=theme-pink] + label {
  background-color: #fe4365;
}
.modal-themes-color input[value=theme-orange-3] + label {
  background-color: #f2949c;
}
.modal-themes-color input[value=theme-purple] + label {
  background-color: #9b72f2;
}
.modal-themes-color input[value=theme-green-2] + label {
  background-color: #04d9b2;
}
.modal-themes-color input[value=theme-blue-3] + label {
  background-color: #4ecdc4;
}
.modal-themes-color input[value=theme-dark] + label {
  background-color: #6f91a6;
}

#sidebar .icon-close {
  position: absolute;
  right: 10%;
  top: 5%;
  color: var(--white);
  font-size: 32px;
}

.modal-sidebar {
  width: 300px;
}
.modal-sidebar .sidebar-header {
  background-color: var(--primary);
  padding: 15px;
  display: flex;
  gap: 16px;
  align-items: center;
}
.modal-sidebar .sidebar-header .sidebar-logo {
  width: 80px;
  height: 80px;
  flex-shrink: 0;
}
.modal-sidebar .sidebar-header p {
  font-weight: 600;
  color: #fff;
}
.modal-sidebar .sidebar-content {
  padding: 30px 15px;
  height: 100vh;
  overflow-x: hidden;
  background: var(--white);
  scrollbar-width: thin;
  scrollbar-color: #ffffff;
}
.modal-sidebar .sidebar-content .nav-mode {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.modal-sidebar .sidebar-content .nav-mode .icon {
  font-size: 20px;
  color: var(--text-4);
}
.modal-sidebar .sidebar-content .nav-mode span {
  font-size: 16px;
  font-weight: 700;
  line-height: 22.4px;
  flex-grow: 1;
}
.modal-sidebar .sidebar-content .nav-mode .cus-sw {
  line-height: 0;
}

.modal-second {
  width: 280px;
}

.nav-link-item {
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
  padding: 0;
  color: var(--onSurface);
}
.nav-link-item::after {
  position: absolute;
  font-family: "icomoon";
  content: "\e935";
  right: 0;
  color: var(--text-3);
  font-size: 16px;
  font-weight: 700;
}
.nav-link-item span {
  font-size: 16px;
  font-weight: 600;
  line-height: 22.4px;
}
.nav-link-item .icon {
  font-size: 20px;
  color: var(--text-4);
}
.nav-link-item.not-link::after {
  display: none;
}

.sub-menu li {
  padding-top: 14px;
  padding-left: 28px;
}
.sub-menu .sub-menu-children {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 500;
  line-height: 20px;
}
.sub-menu .sub-menu-children i {
  font-size: 12px;
  color: var(--text-4);
}

/*------------ Components ---------------- */
/*------------ header ---------------- */
.header {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 8px 15px 12px;
  position: relative;
  min-height: 48px;
}
.header .icon {
  height: 24px;
  width: 24px;
  display: flex;
  align-items: center;
}
.header .left {
  position: absolute;
  left: 20px;
  top: 8px;
}
.header .left .icon {
  font-size: 18px;
  color: var(--onSurface);
  font-weight: 500;
}
.header .right {
  position: absolute;
  right: 20px;
  top: 8px;
}
.header .right .icon {
  font-size: 22px;
  color: var(--text-4);
}
.header .right .icon-home {
  font-size: 24px;
}
.header.absolute {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  max-width: 1024px;
  margin: 0 auto;
  background: transparent;
  z-index: 5;
}
.header.absolute .left .icon,
.header.absolute .right .icon {
  color: #fff;
}

.header-style2 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 16px 20px;
  height:153px;
}
.header-style2 .inner-right {
  display: flex;
  align-items: center;
  gap: 10px;
}
.header-style2 .location svg {
  flex-shrink: 0;
}

.fixed-top {
  position: fixed;
  top: 0;
  z-index: 1020;
  max-width: 1024px;
  margin: 0 auto;
  left: 0;
  right: 0;
  background-color: var(--white);
}

.header-search {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 20px 12px;
  min-height: 48px;
  gap: 20px;
}
.header-search .icon {
  height: 24px;
  width: 24px;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header-search .left .icon {
  font-size: 14px;
  color: var(--onSurface);
}
.header-search .right .icon {
  font-size: 22px;
  color: var(--text-4);
}

.header-setting {
  padding: 10px 20px;
}
.header-setting .header-content {
  display: flex;
  align-items: center;
  gap: 10px;
}
.header-setting .header-content .icon path {
  fill: var(--primary);
}
.header-setting .header-content .left {
  display: flex;
  gap: 10px;
}
.header-setting .header-content .left .title {
  flex-grow: 1;
  font-weight: 700;
  color: var(--primary);
}
.header-setting .header-content .right {
  display: flex;
  align-items: center;
  gap: 14px;
}

.header-map {
  position: relative;
  z-index: 10;
  top: 80px;
}

/*------------ tabs ---------------- */
.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.fade:not(.show) {
  opacity: 0;
}

.fade {
  transition: opacity 0.15s linear;
}

.nav-tabs {
  border-bottom: 0;
}

.nav-item .nav-link {
  font-weight: 600;
}
.nav-item .nav-link.active {
  background: var(--white);
  color: var(--surface);
  border-color: var(--line);
  border-bottom-color: transparent;
}
.nav-item .nav-link.disabled {
  color: var(--text-4);
}
.nav-item .nav-link:hover {
  border-color: transparent;
}

.nav-item .nav-link {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 6px;
}
.nav-item .nav-link.active {
  color: var(--onSurface);
  border-bottom: 2px solid var(--primary);
}
.nav-item .nav-link.active svg path {
  fill: var(--primary-btn);
}

.product-tabs {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
}
.product-tabs.style2 {
  border-bottom: 0;
}

.tab-3-item {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-bottom: 1px solid var(--line);
}
.tab-3-item .nav-item .nav-link {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 8px;
}

.service-tab {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  padding-right: 16px;
  margin-right: -16px;
}
.service-tab .nav-item {
  font-size: 14px;
  font-weight: 600;
  line-height: 18px;
}
.service-tab .nav-item .nav-link {
  padding-bottom: 4px;
}
.service-tab .nav-item .nav-link.active {
  border-width: 1px;
}

.tf-categories .nav-pills .nav-link {
  color: var(--secondary);
  font-size: 14px;
  font-weight: 600;
  line-height: 18px;
  background-color: var(--surface);
  border-bottom: 1px solid var(--line);
  border-radius: 0;
  padding: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  white-space: nowrap;
  gap: 8px;
}
.tf-categories .nav-pills .nav-link img {
  width: 40px;
  height: 40px;
}
.tf-categories .nav-pills .nav-link.active {
  background-color: var(--white);
  color: var(--onSurface);
}
.tf-categories .tab-content {
  width: 100%;
  position: sticky;
  top: 48px;
  padding: 16px;
}

/*------------ button ---------------- */
.tf-btn {
  padding: 12px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  font-weight: 600;
}
.tf-btn.inline {
  width: auto;
}
.tf-btn.btn-lg {
  padding: 20px;
}
.tf-btn.btn-md {
  padding: 14px;
}
.tf-btn.btn-sm {
  padding: 7px 12px;
  border-radius: 4px;
}
.tf-btn.primary {
  background: var(--primary);
  border: 1px solid var(--primary);
  color: #fff;
}
.tf-btn.primary:hover {
  background: var(--primary-hover);
}
.tf-btn.surface {
  background: var(--surface);
  border: 1px solid var(--surface);
}
.tf-btn.secondary {
  background: var(--white);
  border: 1px solid var(--line);
  color: var(--primary);
}
.tf-btn.secondary:hover {
  color: #fff;
  background: var(--primary);
  border-color: var(--primary);
}
.tf-btn.success {
  background: var(--success);
  border: 1px solid var(--success);
  color: #fff;
}
.tf-btn.success:hover {
  background: var(--success-hover);
}
.tf-btn.danger {
  background: var(--danger);
  border: 1px solid var(--danger);
  color: #fff;
}
.tf-btn.danger:hover {
  background: var(--danger-hover);
}
.tf-btn.warning {
  background: var(--warning);
  border: 1px solid var(--warning);
  color: #fff;
}
.tf-btn.warning:hover {
  background: var(--warning-hover);
}
.tf-btn.info {
  background: var(--info);
  border: 1px solid var(--info);
  color: #fff;
}
.tf-btn.info:hover {
  background: var(--info-hover);
}
.tf-btn.light {
  background: var(--light);
  border: 1px solid var(--light);
  color: #151515;
}
.tf-btn.light:hover {
  background: var(--light-hover);
}
.tf-btn.dark {
  background: var(--dark);
  border: 1px solid var(--dark);
  color: #fff;
}
.tf-btn.dark:hover {
  background: var(--dark-hover);
}
.tf-btn.disable {
  background: var(--disable);
  border: 1px solid var(--disable);
  color: #fff;
}
.tf-btn.disable:hover {
  background: var(--disable-hover);
}
.tf-btn.light-btn-primary {
  background: var(--rgba-primary);
  border: 1px solid transparent;
  color: var(--primary);
}
.tf-btn.light-btn-primary:hover {
  background: var(--primary);
  color: #fff;
}
.tf-btn.light-btn-success {
  background: var(--rgba-success);
  border: 1px solid transparent;
  color: var(--success);
}
.tf-btn.light-btn-success:hover {
  background: var(--success);
  color: #fff;
}
.tf-btn.light-btn-danger {
  background: var(--rgba-danger);
  border: 1px solid transparent;
  color: var(--danger);
}
.tf-btn.light-btn-danger:hover {
  background: var(--danger);
  color: #fff;
}
.tf-btn.light-btn-warning {
  background: var(--rgba-warning);
  border: 1px solid transparent;
  color: var(--warning);
}
.tf-btn.light-btn-warning:hover {
  background: var(--warning);
  color: #fff;
}
.tf-btn.light-btn-info {
  background: var(--rgba-info);
  border: 1px solid transparent;
  color: var(--info);
}
.tf-btn.light-btn-info:hover {
  background: var(--info);
  color: #fff;
}
.tf-btn.light-btn-dark {
  background: var(--rgba-dark);
  border: 1px solid transparent;
  color: var(--dark);
}
.tf-btn.light-btn-dark:hover {
  background: var(--dark);
  color: #fff;
}
.tf-btn.outline-btn-primary {
  background: var(--white);
  border: 1px solid var(--primary);
  color: var(--primary);
}
.tf-btn.outline-btn-primary:hover {
  background: var(--primary);
  color: #fff;
}
.tf-btn.outline-btn-success {
  background: var(--white);
  border: 1px solid var(--success);
  color: var(--success);
}
.tf-btn.outline-btn-success:hover {
  background: var(--success);
  color: #fff;
}
.tf-btn.outline-btn-danger {
  background: var(--white);
  border: 1px solid var(--danger);
  color: var(--danger);
}
.tf-btn.outline-btn-danger:hover {
  background: var(--danger);
  color: #fff;
}
.tf-btn.outline-btn-warning {
  background: var(--white);
  border: 1px solid var(--warning);
  color: var(--warning);
}
.tf-btn.outline-btn-warning:hover {
  background: var(--warning);
  color: #fff;
}
.tf-btn.outline-btn-info {
  background: var(--white);
  border: 1px solid var(--info);
  color: var(--info);
}
.tf-btn.outline-btn-info:hover {
  background: var(--info);
  color: #fff;
}
.tf-btn.outline-btn-light {
  background: var(--white);
  border: 1px solid var(--light);
  color: var(--onSurface);
}
.tf-btn.outline-btn-light:hover {
  background: var(--light);
}
.tf-btn.outline-btn-dark {
  background: var(--white);
  border: 1px solid var(--dark);
  color: var(--dark);
}
.tf-btn.outline-btn-dark:hover {
  background: var(--dark);
  color: #fff;
}
.tf-btn.btn-square {
  border-radius: 0;
}
.tf-btn.line {
  border: 1px solid #e5e5e5;
}
.tf-btn.icon {
  color: var(--onSurface);
  font-weight: 600;
  border: 1px solid #e5e5e5;
  padding: 13px;
}
.tf-btn.icon .img-icon {
  width: 20px;
  height: 20px;
}
.tf-btn.icon .icon {
  font-size: 20px;
}
.tf-btn.icon .icon.icon-tw {
  color: #03a9f4;
}
.tf-btn.icon .icon.icon-x {
  color: var(--onSurface);
}

.lg-zoom-in {
  display: none;
}

.btn-direction {
  padding: 8px 12px 8px 8px;
  border-radius: 100px;
  background-color: #f5f5f5;
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  color: #e55223;
}

.btn-slider {
  width: 32px;
  height: 32px;
  border: 1px solid #e5e5e5;
  border-radius: 100px;
  display: inline-block;
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn-showmore {
  color: var(--primary-btn);
  display: inline-flex;
  font-weight: 700;
  gap: 8px;
}
.btn-showmore svg path {
  stroke: var(--primary-btn);
}

.btn-find {
  width: 16px;
  height: 16px;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}

.btn-add {
  width: 40px;
  height: 40px;
  border-radius: 40px;
  background-color: var(--primary);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.btn-add:hover {
  color: var(--white);
}
.btn-add.style-1 {
  background-color: var(--rgba-disable);
  color: var(--primary);
}
.btn-add.style-2 {
  background-color: var(--white);
  border: 1px solid var(--line);
  color: var(--text-4);
  font-size: 16px;
}

.btn-accept {
  border-radius: 20px;
  font-size: 14px;
  font-weight: 700;
  line-height: 140%;
  background-color: var(--primary);
  padding: 6px 16px;
  color: var(--white);
}
.btn-accept.style-1 {
  background-color: var(--white);
  border: 1px solid var(--line);
  font-weight: 400;
  color: var(--onSurface);
}
.btn-accept.style-2 {
  background-color: var(--rgba-disable);
  color: var(--primary);
}

.btn-checkin {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  border: 1px solid var(--line);
}

.btn-social {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.btn-social:hover {
  color: #fff;
}
.btn-social.twitter {
  background: #03a9f4;
}
.btn-social.x-social {
  background: #151515;
}
.btn-social.instagram {
  background: linear-gradient(45deg, #fee411 11.93%, #fedb16 15.62%, #fec125 21.73%, #fe983d 29.55%, #fe5f5e 38.65%, #fe2181 47.46%, #9000dc 82.98%), #03a9f4;
}
.btn-social.telegram {
  background: #039be5;
}
.btn-social.line {
  background: #00c200;
}
.btn-social.sm {
  width: 34px;
  height: 34px;
  font-size: 16px;
}
.btn-social.md {
  width: 38px;
  height: 38px;
  font-size: 16px;
}
.btn-social.lg {
  width: 42px;
  height: 42px;
  font-size: 20px;
}
.btn-social.rounded {
  border-radius: 10px !important;
}
.btn-social.circle {
  border-radius: 999px !important;
}

.tf-loading {
  width: auto;
  display: inline-flex;
  gap: 10px;
  font-size: 16px;
  font-weight: 600;
  line-height: 21px;
  color: var(--text-5);
}
.tf-loading .spinner-circle .spinner-child::before {
  background-color: var(--text-5);
}

.btn-fixed {
  position: fixed;
  left: 0px;
  right: 0px;
  bottom: 54px;
  z-index: 100;
  background: var(--white);
  padding: 10px 20px 30px;
  border-radius: 20px;
  max-width: 1024px;
  margin: 0 auto;
}
.btn-fixed.style-2 {
  bottom: 0;
  padding-bottom: 20px;
}
.btn-fixed.style-3 {
  bottom: 0;
  padding-bottom: 20px;
  background: transparent;
}

.btn-search {
  border: 1px solid var(--line);
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  font-size: 22px;
  color: var(--text-4);
}

.btn-filter {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line);
}

.btn-cart {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--primary);
  border-radius: 99px;
}
.btn-cart svg {
  margin-right: 1px;
}

.cart-product {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50px;
  background: rgba(21, 21, 21, 0.4);
  backdrop-filter: blur(8px);
}
.cart-product.style2 {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(8px);
}
.cart-product.style2 .badge-icon {
  margin-left: -4px;
}

.btn-apply {
  padding: 10px 16px;
  width: auto;
}

/*------------ dropdown ---------------- */
.dropdown-menu {
  padding: 20px;
  background: var(--white);
  border-radius: 10px;
  box-shadow: var(--shadow3);
  border-color: transparent;
  min-width: 114px;
  z-index: 1010;
}
.dropdown-menu .dropdown-item {
  display: flex;
  gap: 10px;
  align-items: center;
  color: var(--onSurface);
}
.dropdown-menu .dropdown-item .icon {
  color: var(--text-4);
  font-size: 20px;
}
.dropdown-menu .dropdown-item:active {
  background-color: var(--white);
}
.dropdown-menu .dropdown-item:hover {
  background-color: transparent;
}

.dropdown .dropdown-toggle:after {
  content: none;
}
.dropdown .dropdown-menu .dropdown-item {
  padding: 0;
  color: var(--onSurface);
  font-weight: 500;
  font-size: 14px;
}
.dropdown .dropdown-menu .dropdown-item:not(:last-child) {
  padding-bottom: 10px;
}
.dropdown .dropdown-menu .dropdown-divider {
  margin: 0px 0px 10px;
  border-color: var(--line);
}
.dropdown .dropdown-menu.full {
  min-width: 100%;
}
.dropdown.style-2 .dropdown-menu .dropdown-header {
  font-size: 16px;
  font-weight: "Inter Tight", sans-serif;
  color: var(--onSurface);
  font-weight: 700;
}
.dropdown.style-2 .dropdown-menu .top {
  padding-bottom: 10px;
}
.dropdown.style-2 .dropdown-menu .top .dropdown-header {
  padding: 0;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}
.dropdown.style-2 .dropdown-menu .top .dropdown-item {
  padding-top: 10px;
}
.dropdown.style-2 .dropdown-menu .bottom .dropdown-header {
  padding: 0;
  padding-top: 10px;
  border-top: 1px solid var(--line);
}
.dropdown.style-2 .dropdown-menu .bottom .dropdown-item {
  padding-top: 10px;
}
.dropdown.style-3 .dropdown-menu {
  padding: 10px 0px;
  border: 0;
}
.dropdown.style-3 .dropdown-menu .dropdown-item {
  padding: 8px 20px;
}
.dropdown.style-3 .dropdown-menu .dropdown-item.active {
  background: var(--rgba-primary);
}
.dropdown.style-3 .dropdown-menu .dropdown-item.disable {
  color: var(--text);
}
.dropdown.dropup .dropdown-toggle:after {
  content: "\e915";
  font-family: "icomoon";
  border: 0;
  font-size: 16px;
  font-weight: 400;
  margin: 0;
}
.dropdown.dropend .dropdown-toggle:after {
  content: "\e913";
  font-family: "icomoon";
  border: 0;
  font-size: 16px;
  font-weight: 400;
  margin: 0;
}
.dropdown.dropstart .dropdown-toggle::before {
  content: "\e912";
  font-family: "icomoon";
  border: 0;
  font-size: 16px;
  font-weight: 400;
  margin: 0;
}
.dropdown .btn-dropdown:after {
  content: "\e916";
  font-family: "icomoon";
  border: 0;
  font-size: 16px;
  font-weight: 400;
  margin: 0;
}

.btn-dropdown:after {
  content: "\e916";
  font-family: "icomoon";
  border: 0;
  font-size: 16px;
  font-weight: 400;
  margin: 0;
}

.min-w-auto {
  min-width: auto;
}

/*------------ button group ---------------- */
.btn-group > .tf-btn:not(:last-child):not(.btn-split) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > :not(.btn) + .tf-btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group > .btn-split:first-child, .btn-group.btn-group > .btn-group.btn-group:not(:last-child) > .tf-btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group .btn-split {
  width: auto;
  padding: 16px 8px;
  background: var(--primary-bold);
}
.btn-group .tf-btn {
  border-color: transparent;
}
.btn-group .tf-btn:hover {
  background: var(--primary-bold);
  color: var(--white);
}

.btn-group-vertical .tf-btn {
  border-color: transparent;
  font-size: 14px;
  font-weight: 600;
  line-height: 21px;
}
.btn-group-vertical .tf-btn:hover {
  background: var(--primary-bold);
  color: var(--white);
}

.btn-group-vertical > .tf-btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .tf-btn-group:not(:last-child) > .tf-btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .tf-btn ~ .tf-btn {
  border-radius: 0;
}

.btn-group-vertical > .tf-btn:last-child {
  border-bottom-right-radius: 14px;
  border-bottom-left-radius: 14px;
}

.round-14 {
  border-radius: 14px;
}

/*------------ range slider ---------------- */
.noUi-horizontal {
  height: 6px;
}

.noUi-target {
  border: 0;
}

.noUi-base .noUi-connects {
  border-radius: 999px;
  background-color: var(--line);
}

.noUi-connect {
  background-color: var(--primary);
}

.noUi-horizontal .noUi-handle,
.noUi-vertical .noUi-handle {
  height: 24px;
  width: 24px;
  border-radius: 50px;
  border: 2px solid var(--primary);
  background-color: var(--white);
  box-shadow: unset;
  top: -10px;
  cursor: pointer;
}
.noUi-horizontal .noUi-handle::before, .noUi-horizontal .noUi-handle::after,
.noUi-vertical .noUi-handle::before,
.noUi-vertical .noUi-handle::after {
  content: none;
}

.slider-tooltip-default .noUi-tooltip {
  border-radius: 8px;
  border-color: var(--line);
  line-height: 14px;
  margin-bottom: 4px;
}
.slider-tooltip-default .noUi-tooltip::after {
  content: "Km";
}

.box-pricing .noUi-handle-lower::after,
.box-pricing .noUi-handle-upper::after {
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  color: var(--onSurface);
  font-family: "Inter Tight", sans-serif;
  top: 100%;
  left: 0;
  margin-top: 2px;
}
.box-pricing .noUi-handle-lower::after {
  content: "Min";
}
.box-pricing .noUi-handle-upper::after {
  content: "Max";
}

html:not([dir=rtl]) .noUi-horizontal .noUi-handle {
  right: -8px;
}

/*------------ form ---------------- */
.form-control {
  border-color: transparent;
}
.form-control:focus {
  box-shadow: unset;
  border-color: var(--onSurface) !important;
  background-color: var(--white);
}
.form-control::placeholder {
  color: var(--secondary2);
}

.input-icon {
  position: relative;
}
.input-icon .form-control {
  padding-left: 50px;
  border-radius: 12px;
  border-color: var(--line);
}
.input-icon .icon {
  position: absolute;
  top: 19px;
  left: 20px;
  font-size: 22px;
  color: var(--text-4);
}
.input-icon .box-view-hide .show-pass,
.input-icon .box-view-hide .show-pass2,
.input-icon .box-view-hide .show-pass3,
.input-icon .box-view-hide .show-pass4 {
  top: 20px;
  right: 20px;
}
.input-icon .ip-textarea {
  padding-left: 20px;
}

.input-fill .form-control {
  background: var(--bg-ip);
  box-shadow: var(--shadow2);
}

.input-line .form-control {
  border-radius: 0;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  border-color: var(--line);
}

.input-upload {
  position: relative;
}
.input-upload .icon {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: calc(50% + 32px);
  transform: translateY(-50%);
  color: var(--text-4);
  font-size: 22px;
}
.input-upload .upload-file {
  position: relative;
  overflow: hidden;
  height: 50px;
  width: 100%;
  border: 1px dashed var(--line-2);
  background-color: var(--white);
  border-radius: 14px;
}
.input-upload .upload-file::before {
  position: absolute;
  width: 100%;
  height: 100%;
  font-weight: 400;
  font-size: 14px;
  line-height: 19px;
  content: "Upload file";
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: -10px;
  border: none;
  background-color: var(--white);
  color: var(--onSurface);
}
.input-upload.up-lg .upload-file {
  height: 60px;
}

.drop-select {
  display: flex;
  position: relative;
  border: 1px solid var(--line);
  border-radius: 20px;
}
.drop-select .bootstrap-select {
  width: auto !important;
}
.drop-select .bootstrap-select button {
  background: var(--white);
  padding: 20px;
  padding-right: 10px;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border: 0;
}
.drop-select .bootstrap-select button:focus {
  outline: 0 !important;
  box-shadow: unset;
}
.drop-select .bootstrap-select .dropdown-toggle::after {
  display: none;
}
.drop-select .bootstrap-select img {
  width: 22px;
  min-width: 22px;
  height: 22px;
  border-radius: 50%;
}
.drop-select .bootstrap-select .dropdown-menu li:not(:last-child) {
  padding-bottom: 10px;
}
.drop-select .bootstrap-select .dropdown-item.active {
  background: transparent;
}
.drop-select .form-control {
  transition: unset;
  padding-left: 0;
  border: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.drop-select:focus-within {
  border-color: var(--primary-btn);
}

.input-style-2 {
  position: relative;
}
.input-style-2 label {
  position: absolute;
  top: -10px;
  background-color: var(--white);
  padding: 0px 10px;
  left: 14px;
  z-index: 10;
}
.input-style-2:focus-within {
  color: var(--primary-btn);
}
.input-style-2:focus-within label {
  color: var(--primary-btn);
}

.box-view-hide {
  position: relative;
}
.box-view-hide .form-control {
  padding-right: 40px;
}
.box-view-hide .show-pass,
.box-view-hide .show-pass2,
.box-view-hide .show-pass3,
.box-view-hide .show-pass4 {
  position: absolute;
  right: 16px;
  top: 16px;
  cursor: pointer;
}
.box-view-hide .show-pass .icon-view,
.box-view-hide .show-pass2 .icon-view,
.box-view-hide .show-pass3 .icon-view,
.box-view-hide .show-pass4 .icon-view {
  display: none;
}
.box-view-hide .show-pass .icon-pass,
.box-view-hide .show-pass2 .icon-pass,
.box-view-hide .show-pass3 .icon-pass,
.box-view-hide .show-pass4 .icon-pass {
  font-size: 22px;
  color: var(--text-4);
}
.box-view-hide .show-pass.active .icon-view,
.box-view-hide .show-pass2.active .icon-view,
.box-view-hide .show-pass3.active .icon-view,
.box-view-hide .show-pass4.active .icon-view {
  display: inline-block;
}
.box-view-hide .show-pass.active .icon-hide,
.box-view-hide .show-pass2.active .icon-hide,
.box-view-hide .show-pass3.active .icon-hide,
.box-view-hide .show-pass4.active .icon-hide {
  display: none;
}

.box-forgot .forgot {
  display: none;
  position: absolute;
  top: 20px;
  right: 20px;
  gap: 10px;
}
.box-forgot .forgot .forgot-link {
  font-weight: 700;
  color: var(--primary-btn);
}
.box-forgot .forgot .show-pass {
  position: unset;
}
.box-forgot .form-control {
  padding-right: 110px;
}
.box-forgot .form-control:valid ~ .forgot {
  display: flex;
}

.form-select {
  font-family: "Inter Tight", sans-serif;
  color: var(--onSurface);
  font-size: 14px;
  line-height: 19.6px;
  padding: 20px;
  border-radius: 20px;
  border-color: var(--line);
  background-position: right 20px center;
  background-color: var(--white);
}
.form-select:focus {
  box-shadow: unset;
  border-color: var(--primary-btn) !important;
}

.group-cb {
  display: flex;
  align-items: center;
  gap: 8px;
}
.group-cb.cb-signup label span {
  color: #151515;
  font-weight: 500;
}
.group-cb.cb-signup .tf-checkbox {
  border-color: #e5e5e5;
}
.group-cb.cb-signup .tf-checkbox:checked {
  border-color: #e55223;
}
.group-cb.cb-signup .tf-checkbox:checked::before {
  color: #e55223;
}

.digit-group {
  display: flex;
  justify-content: center;
  gap: 12px;
}
.digit-group input {
  width: 58px;
  height: 58px;
  border-radius: 8px;
  font-size: 24px;
  font-weight: 600;
  line-height: 36px;
  color: var(--onSurface);
  border: 1px solid var(--line);
  text-align: center;
  background-color: var(--white);
}
.digit-group input:focus {
  border-color: var(--onSurface);
}




.search-box {
  width: 90%;
  margin: 100px auto 0px auto;
}


.search-box .right-icon {
  position: absolute;
  font-size: 20px;
  color: var(--text-4);
  top: 8px;
  right: 12px;
}
.search-box .icon-left {
  position: absolute;
  font-size: 22px;
  color: var(--text-4);
  top: 19px;
  left: 20px;
}
.search-box .search-field {
  padding: 8px 12px;
  padding-right: 30px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  border: 1px solid var(--line);
  background-color: var(--white);
}
.search-box.style-2 .search-field {
  padding-left: 20px;
}
.search-box.st2 .search-field {
  padding: 12px;
  padding-left: 33px;
}
.search-box.st2 .icon-search-2 {
  position: absolute;
  font-size: 18px;
  color: #151515;
  top: 12px;
  left: 12px;
}

.box-review {
  position: relative;
}
.box-review .meta-review {
  position: absolute;
  bottom: 20px;
  left: 13px;
  right: 13px;
}
.box-review .meta-review img {
  width: 20px;
  height: 20px;
}

.lo-select.active .current,
.time-select.active .current {
  background-color: #e55223;
  color: #fff;
  border-color: #e55223;
}
.lo-select.active::after,
.time-select.active::after {
  border-color: #fff;
}

/*------------ footer ---------------- */
.footer-fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background: var(--white);
}


.menubar-footer {
  padding: 15px 0px 8px;
}
.menubar-footer .inner-bar {
  padding-left: 0;
  padding-right: 0;
  display: flex;
  max-width: 1024px;
  margin-right: auto;
  margin-left: auto;
  align-items: center;
  justify-content: center;
}
.menubar-footer .inner-bar li {
  padding: 0;
  width: 30%;
}
.menubar-footer .inner-bar li a {
  color: var(--secondary);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
}
.menubar-footer .inner-bar li a .icon {
  font-size: 20px;
  color: var(--secondary);
}
.menubar-footer .inner-bar li.active a {
  color: var(--onSurface);
}
.menubar-footer .inner-bar li.active a .icon {
  color: var(--primary);
}
.menubar-footer .inner-bar .action-home {
  margin-top: -40px;
}
.menubar-footer .inner-bar .action-home a {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  width: 46px;
  height: 46px;
  background-color: var(--primary-btn);
  box-shadow: var(--shadow);
  margin: 0 auto;
}
.menubar-footer .inner-bar .action-home a i {
  font-size: 20px;
  color: #fff;
}
.menubar-footer.style-1 {
  border-bottom-left-radius: 16px;
  border-bottom-right-radius: 16px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.menubar-footer.style-2 {
  padding: 14px 19px 19px;
  border-radius: 16px;
}
.menubar-footer.style-2 li {
  width: 25%;
}
.menubar-footer.line li.active {
  position: relative;
}
.menubar-footer.line li.active::after {
  content: "";
  position: absolute;
  bottom: -18px;
  left: 50%;
  width: 56px;
  height: 4px;
  background: var(--primary-btn);
  border-radius: 20px 20px 0px 0px;
  transform: translateX(-50%);
}
.menubar-footer.style-3 {
  padding: 18px 19px;
  border-radius: 16px;
}
.menubar-footer.style-3 li {
  width: 25%;
}
.menubar-footer.style-4 {
  padding: 18px 19px;
  border-radius: 16px;
}
.menubar-footer.style-4 li {
  width: 20%;
}
.menubar-footer.style-5 {
  padding: 18px 19px;
  border-radius: 16px;
}

.cart-footer {
  padding: 12px 16px 20px;
}
.cart-footer .inner {
  padding-left: 0;
  padding-right: 0;
  max-width: 1024px;
  margin-right: auto;
  margin-left: auto;
}
.cart-footer .bottom-btn {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}
.cart-footer .bottom-btn .press-toggle {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  border: 1px solid var(--line);
  flex-shrink: 0;
}

/*------------ carousel ---------------- */
.dots-tes .swiper-pagination-bullet {
  margin: 0px 2px !important;
  width: 6px;
  height: 6px;
  opacity: 0.3;
  border-radius: 50px;
  background-color: var(--primary);
}
.dots-tes .swiper-pagination-bullet-active {
  opacity: 1;
}
.dots-tes.style-2 .swiper-pagination-bullet {
  background-color: #fff;
}

.swiper.auto .swiper-slide {
  width: auto;
}

.img-banner-slider {
  width: 275px;
  height: 275px;
  display: inline-block;
  border-radius: 20px;
  overflow: hidden;
}
.img-banner-slider.style-2 {
  width: 307px;
  height: 173px;
}

.swiper-wrapper-lr {
  margin-right: -16px;
  padding-right: 16px;
}

.line-tes {
  border-radius: 5px;
}
.line-tes span {
  margin: 0 !important;
  border-radius: 0 !important;
  background-color: #f3f2ea;
  opacity: 1;
  width: 15px;
  height: 5px;
}
.line-tes .swiper-pagination-bullet-active {
  background-color: var(--primary);
  border-radius: 4px !important;
}

/*------------ alert ---------------- */
.alert {
  color: #fff;
  margin-bottom: 0px;
  padding: 10px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.alert .btn-close {
  position: unset !important;
  width: 24px;
  height: 24px;
  padding: 0;
  background: none;
  opacity: 1;
  color: #fff;
}
.alert .btn-close i {
  font-size: 26px;
}
.alert svg {
  flex-shrink: 0;
}
.alert span {
  flex-grow: 1;
}
.alert.alert-primary {
  background: #1e8011;
  border: 1px solid #1e8011;
}
.alert.alert-primary.light {
  background: rgba(30, 128, 17, 0.1);
  border-color: transparent;
  color: #1e8011;
}
.alert.alert-primary.light .btn-close {
  color: #1e8011;
}
.alert.alert-secondary {
  background: #26ade4;
  border: 1px solid #26ade4;
}
.alert.alert-secondary.light {
  background: rgba(38, 173, 228, 0.1);
  border-color: transparent;
  color: #26ade4;
}
.alert.alert-secondary.light .btn-close {
  color: #26ade4;
}
.alert.alert-success {
  background: #54b24c;
  border: 1px solid #54b24c;
}
.alert.alert-success.light {
  background: rgba(84, 178, 76, 0.1);
  border-color: transparent;
  color: #54b24c;
}
.alert.alert-success.light .btn-close {
  color: #54b24c;
}
.alert.alert-info {
  background: #a70267;
  border: 1px solid #a70267;
}
.alert.alert-info.light {
  background: rgba(225, 0, 0, 0.1);
  border-color: transparent;
  color: #a70267;
}
.alert.alert-info.light .btn-close {
  color: #a70267;
}
.alert.alert-warning {
  background: #ff8a00;
  border: 1px solid #ff8a00;
}
.alert.alert-warning.light {
  background: rgba(255, 138, 0, 0.1);
  border-color: transparent;
  color: #ff8a00;
}
.alert.alert-warning.light .btn-close {
  color: #ff8a00;
}
.alert.alert-danger {
  background: #e10000;
  border: 1px solid #e10000;
}
.alert.alert-danger.light {
  background: rgba(225, 0, 0, 0.1);
  border-color: transparent;
  color: #e10000;
}
.alert.alert-danger.light .btn-close {
  color: #e10000;
}
.alert.alert-dark {
  background: #1b325f;
  border: 1px solid #1b325f;
}
.alert.alert-dark.light {
  background: rgba(27, 50, 95, 0.1);
  border-color: transparent;
  color: #1b325f;
}
.alert.alert-dark.light .btn-close {
  color: #1b325f;
}
.alert.alert-light {
  background: #e7e7e7;
  border: 1px solid #e7e7e7;
}
.alert.alert-light.light {
  background: #E7E7E7;
  border-color: transparent;
}
.alert.alert-square {
  border-radius: 0;
}

/*------------ avatar ---------------- */
.avatar img {
  width: 100%;
  min-width: 100%;
  height: 100%;
  object-fit: cover;
}
.avatar.round {
  border-radius: 50%;
  overflow: hidden;
}
.avatar.avt-status {
  position: relative;
}
.avatar.avt-status .status {
  position: absolute;
  width: 12px;
  min-width: 12px;
  height: 12px;
  border-radius: 50%;
  position: absolute;
  bottom: 0;
  right: 4px;
  border: 2px solid #fff;
  background: #0c9100;
}

.avt-40 {
  width: 40px;
  min-width: 40px;
  height: 40px;
  border-radius: 50%;
}

.avt-52 {
  width: 52px;
  min-width: 52px;
  height: 52px;
  border-radius: 50%;
}

.avt-56 {
  width: 56px;
  min-width: 56px;
  height: 56px;
}

.avt-60 {
  width: 60px;
  min-width: 60px;
  height: 60px;
}

.avt-70 {
  width: 70px;
  min-width: 70px;
  height: 70px;
}

.avt-76 {
  width: 76px;
  min-width: 76px;
  height: 76px;
}

.avt-80 {
  width: 80px;
  min-width: 80px;
  height: 80px;
}

.avt-96 {
  width: 96px;
  min-width: 96px;
  height: 96px;
}

.list-stacked {
  display: flex;
}
.list-stacked .avt-list {
  margin-right: -12px;
}
.list-stacked .avt-list .avatar {
  border: 1px solid #fff;
}

/*------------ switch ---------------- */
.tf-switch-check {
  position: relative;
  width: 46px;
  height: 24px;
  -webkit-appearance: none;
  background: #b9bac3;
  border-radius: 100px;
  transition: 0.2s;
  margin-right: 0;
}
.tf-switch-check::before {
  content: "";
  border-radius: 100px;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 3px;
  left: 3px;
  background: var(--white);
  transition: 0.5s;
}
.tf-switch-check:checked:checked {
  background: var(--primary);
}
.tf-switch-check:checked:checked::before {
  background: var(--white);
  left: 25px;
}
.tf-switch-check.light {
  background: var(--rgba-success);
}
.tf-switch-check.light::before {
  background: var(--success);
}
.tf-switch-check.light:checked:checked {
  background: var(--success);
  transition: 0.5s;
}
.tf-switch-check.success {
  background: var(--rgba-success);
}
.tf-switch-check.success::before {
  background: #54b24c;
}
.tf-switch-check.success:checked:checked {
  background: #54b24c;
  transition: 0.5s;
}
.tf-switch-check.warning {
  background: var(--rgba-warning);
}
.tf-switch-check.warning::before {
  background: var(--warning);
}
.tf-switch-check.warning:checked:checked {
  background: var(--warning);
  transition: 0.5s;
}
.tf-switch-check.danger {
  background: var(--rgba-danger);
}
.tf-switch-check.danger::before {
  background: var(--danger);
}
.tf-switch-check.danger:checked:checked {
  background: var(--danger);
  transition: 0.5s;
}
.tf-switch-check.danger {
  background: var(--rgba-info);
}
.tf-switch-check.danger::before {
  background: var(--info);
}
.tf-switch-check.danger:checked:checked {
  background: var(--info);
  transition: 0.5s;
}
.tf-switch-check.dark {
  background: var(--rgba-dark);
}
.tf-switch-check.dark::before {
  background: var(--dark);
}
.tf-switch-check.dark:checked:checked {
  background: var(--dark);
  transition: 0.5s;
}

.fieldset-sw {
  display: flex;
  gap: 20px;
  align-items: center;
}
.fieldset-sw label {
  cursor: pointer;
}

.sw-disabled {
  opacity: 0.5;
}

/*------------ radio button ---------------- */
.tf-radio {
  position: relative;
  border: 1px solid var(--line-2);
  border-radius: 50%;
  background: none;
  cursor: pointer;
  outline: 0;
  height: 22px;
  width: 22px;
  -webkit-appearance: none;
}
.tf-radio:checked {
  border-color: var(--primary);
}
.tf-radio:checked::before {
  opacity: 1;
}
.tf-radio::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  background-color: var(--primary);
  opacity: 0;
}
.tf-radio.square {
  border-radius: 0;
}
.tf-radio.square::before {
  border-radius: 0;
}
.tf-radio.square-2 {
  border-radius: 7px;
}
.tf-radio.square-2::before {
  border-radius: 5px;
}
.tf-radio.circle-2:checked {
  background-color: var(--primary);
  border-color: var(--primary);
}
.tf-radio.circle-2::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  border-radius: 50%;
  width: 10px;
  height: 10px;
  background-color: var(--white);
}
.tf-radio.circle-3:checked {
  background-color: var(--primary);
  border-color: var(--primary);
}
.tf-radio.circle-3::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50%;
  width: 100%;
  height: 100%;
}

.fieldset-radio {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--onSurface);
}
.fieldset-radio label {
  font-weight: 500;
  margin-top: 2px;
}

.tf-checkbox {
  position: relative;
  border: 2px solid var(--line);
  border-radius: 4px;
  background: none;
  cursor: pointer;
  outline: 0;
  width: 20px;
  height: 20px;
  -webkit-appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.tf-checkbox::before {
  content: "\e976";
  position: absolute;
  font-family: "icomoon";
  font-size: 10px;
  margin-top: -1px;
  color: #fff;
}
.tf-checkbox:checked {
  border-color: #e55223;
}
.tf-checkbox:checked::before {
  color: #e55223;
}
.tf-checkbox.sm {
  width: 16px;
  height: 16px;
  border-radius: 3px;
}
.tf-checkbox.sm::before {
  font-size: 6px;
}

.cb-rounded {
  position: relative;
  border: 1px solid var(--primary);
  background: none;
  cursor: pointer;
  outline: 0;
  width: 18px;
  height: 18px;
  -webkit-appearance: none;
  border-radius: 50%;
  background-color: var(--white);
}
.cb-rounded:checked::before {
  content: "";
  position: absolute;
  border-radius: 50%;
  width: 12px;
  height: 12px;
  left: 2px;
  top: 2px;
  background-color: var(--primary);
}

/*------------ card ---------------- */
.card {
  padding: 16px;
  border-radius: 16px;
  box-shadow: var(--shadow-box);
  border-color: transparent;
  background-color: var(--white);
  color: var(--onSurface);
}
.card .card-header {
  background-color: transparent;
  padding: 0;
  border-color: transparent;
}
.card .card-header .card-title {
  font-family: "Inter Tight", sans-serif;
  margin: 0;
}
.card .card-body {
  padding: 0;
}

.card-style1 {
  border-radius: 20px;
  padding: 20px;
  border: 1px solid var(--line);
}

/*------------ badge ---------------- */
.badge {
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 10px;
}
.badge.badge-lg {
  font-size: 13px;
  font-weight: 600;
  padding: 8px 20px;
}
.badge.badge-md {
  font-size: 12px;
  font-weight: 500;
  padding: 6px 10px;
}
.badge.badge-sm {
  font-size: 10px;
  font-weight: 500;
  padding: 4px 10px;
}
.badge.primary {
  background: var(--primary);
  border-color: var(--primary);
  color: #fff;
}
.badge.secondary {
  border-color: var(--secondary);
  color: var(--primary);
}
.badge.success {
  border-color: #54b24c;
  background: #54b24c;
  color: var(--white);
}
.badge.danger {
  background: var(--danger);
  border-color: var(--danger);
  color: var(--white);
}
.badge.light-primary {
  background: var(--rgba-primary);
  color: var(--primary);
}
.badge.light-success {
  background: var(--rgba-success);
  color: var(--success);
}
.badge.light-danger {
  background: var(--rgba-danger);
  color: var(--danger);
}
.badge.light-warning {
  background: var(--rgba-warning);
  color: var(--warning);
}
.badge.light-info {
  background: var(--rgba-info);
  color: var(--info);
}
.badge.light-badge {
  background: var(--light);
  color: var(--onSurface);
}
.badge.light-dark {
  background: var(--rgba-dark);
  color: var(--dark);
}
.badge.badge-circle {
  border-radius: 50%;
  padding: 0;
  width: 30px;
  min-width: 30px;
  display: inline-flex;
  height: 30px;
  justify-content: center;
  line-height: 30px;
}
.badge.badge-circle.primary {
  background-color: var(--white);
  color: var(--primary);
}
.badge.badge-circle.success {
  background-color: var(--white);
  color: var(--success);
}
.badge.badge-circle.danger {
  border-color: var(--danger);
  background-color: var(--white);
  color: var(--danger);
}
.badge.badge-circle.warning {
  border-color: var(--warning);
  background-color: var(--white);
  color: var(--warning);
}
.badge.badge-circle.info {
  border-color: var(--info);
  background-color: var(--white);
  color: var(--info);
}
.badge.badge-circle.light {
  border-color: var(--light);
  background-color: var(--white);
  color: var(--onSurface);
}
.badge.badge-circle.dark {
  border-color: var(--dark);
  background-color: var(--white);
  color: var(--dark);
}
.badge.badge-round {
  border-radius: 50%;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.badge.badge-round.round-22 {
  width: 22px;
  min-width: 22px;
  height: 22px;
  line-height: 22px;
}

.tf-btn .badge {
  position: absolute;
  right: -8px;
  top: -5px;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.badge-icon {
  position: relative;
}
.badge-icon .badge {
  position: absolute;
  right: -6px;
  top: -5px;
  width: 14px;
  height: 14px;
  font-size: 10px;
  font-style: normal;
  font-weight: 400;
  line-height: 13px;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/*------------ toast ---------------- */
.toast {
  padding: 16px;
  border-radius: 16px;
  box-shadow: 0px 8px 30px 0px rgba(0, 0, 0, 0.06);
  border-color: transparent;
}
.toast .toast-header {
  padding: 0;
  padding-bottom: 12px;
  color: var(--onSurface);
  background-color: var(--white);
}
.toast .toast-body {
  padding: 0;
  padding-top: 12px;
}
.toast.toast-style1 {
  position: relative;
}
.toast.toast-style1 .toast-body {
  padding: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.toast.toast-style1 .toast-body .close-toast {
  position: absolute;
  right: 16px;
  top: 16px;
}
.toast .close-toast {
  margin-right: -0.375rem;
  margin-left: 0.75rem;
  font-size: 20px;
}

/*------------ modal ---------------- */
.modal .modal-dialog {
  max-width: 100%;
  margin: 15px;
}
.modal .modal-dialog .modal-content {
  border-radius: 12px;
  border: 0;
  background: var(--white);
  box-shadow: var(--shadow-box);
}
.modal .modal-dialog .modal-content .modal-body {
  padding: 8px 0px 20px;
  border-bottom: 1px solid var(--line);
}
.modal .modal-dialog .modal-content .modal-footer {
  padding: 20px 0px 0px;
  margin: 0;
}
.modal.small .modal-dialog {
  margin: 20px;
}
.modal.action-sheet {
  z-index: 5000;
}
.modal.action-sheet .modal-dialog {
  padding: 0;
  bottom: 0;
  position: fixed;
  left: 0;
  right: 0;
  z-index: 10000;
  transform: translate(0, 100%);
  max-width: 100%;
  margin: 16px;
}
.modal.action-sheet.show .modal-dialog {
  transform: translate(0, 0);
}
.modal.action-sheet .modal-content {
  box-shadow: none;
  border: 0;
  border-radius: 20px 20px 0px 0px;
}
.modal.full .modal-dialog {
  margin: 0;
}
.modal.modalRight .modal-dialog {
  transform: translate(100%, 0) !important;
  min-width: 100%;
  height: 100%;
  margin: 0;
  transition: 0.5s all !important;
}
.modal.modalRight .modal-dialog .modal-content {
  border-radius: 0;
  border: 0;
  margin: auto;
  overflow: hidden;
  position: absolute;
  right: 0;
  bottom: 0;
  top: 0;
  padding: 0;
}
.modal.modalRight .modal-dialog .modal-content .modal-body {
  overflow: auto;
  padding: 0;
  padding-bottom: 30px;
}
.modal.modalRight.show .modal-dialog {
  transform: translate(0, 0) !important;
}
.modal.modalLeft .modal-dialog {
  transform: translate(-100%, 0) !important;
  min-width: 100%;
  height: 100%;
  margin: 0;
  transition: 0.5s all !important;
}
.modal.modalLeft .modal-dialog .modal-content {
  border-radius: 0;
  border: 0;
  margin: auto;
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: 0;
  top: 0;
  padding: 0;
}
.modal.modalLeft .modal-dialog .modal-content .modal-body {
  overflow: auto;
  padding: 0;
  padding-bottom: 30px;
}
.modal.modalLeft.show .modal-dialog {
  transform: translate(0, 0) !important;
}
.modal.modalCenter .modal-dialog-centered {
  margin: 0 auto;
  max-width: 273px;
}
.modal.fade {
  transition: opacity 0.3s linear;
}
.modal .pwa-content {
  padding: 30px 0px;
  pointer-events: auto;
}
.modal .pwa-content .top {
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: center;
}
.modal .pwa-content .pwa-logo {
  max-width: 60px;
}
.modal .pwa-content p {
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  padding: 0px 12px;
}
.modal .pwa-content .group-btn {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  justify-content: center;
}
.modal .pwa-content .group-btn .tf-btn {
  padding: 10px 12px;
  border-radius: 6px;
  font-weight: 500;
  line-height: 1;
  font-size: 12px;
  width: unset;
  display: inline-flex;
}
.modal .pwa-content .group-btn .btn-dismiss {
  background: #e6ecec;
}
.modal .modal-header {
  padding: 0;
  border: none;
}
.modal .modal-header span {
  font-size: 14px;
  font-weight: 500;
  font-style: normal;
  line-height: normal;
}
.modal .cart-footer {
  background-color: var(--white);
  pointer-events: auto;
}
.modal .cart-footer .top {
  padding: 0 16px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
  margin: 0 -16px;
}
.modal .cart-footer .top .icon-close1 {
  font-size: 18px;
  color: var(--secondary);
  font-weight: 600;
}

.modal-backdrop {
  background-color: var(--backdrop);
}
.modal-backdrop.show {
  opacity: 0.3;
}

.modal-background {
  background-color: var(--white);
}

.modal-notiCenter {
  background-color: var(--white);
  border-radius: 8px;
  backdrop-filter: blur(11px);
  pointer-events: auto;
}
.modal-notiCenter .top {
  padding: 16px;
  border-bottom: 1px solid var(--line);
}
.modal-notiCenter .bottom {
  display: flex;
}
.modal-notiCenter .bottom a {
  display: inline-block;
  font-weight: 600;
  padding: 11px 16px;
  width: 100%;
  text-align: center;
}
.modal-notiCenter .bottom a:first-child {
  border-right: 1px solid var(--line);
}

.modal-setting {
  pointer-events: auto;
  background-color: var(--white);
  border-radius: 12px 12px 0px 0px;
  backdrop-filter: blur(11px);
  pointer-events: auto;
  padding: 20px 16px;
}

.modal-boxContent {
  pointer-events: auto;
}
.modal-boxContent .item a {
  border-radius: 12px;
  background-color: var(--white);
  display: flex;
  padding: 18px 16px;
  justify-content: center;
}
.modal-boxContent .item:last-child {
  margin-top: 10px;
}

.modal-up {
  background: var(--white);
  pointer-events: auto;
  width: 100%;
  height: 80vh;
  overflow: auto;
}
.modal-up .top {
  padding: 16px;
}
.modal-up .top .inner {
  max-width: 1024px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.modal-up .top .inner .icon-close1 {
  font-size: 24px;
  color: var(--secondary);
  font-weight: 600;
}
.modal-up .content {
  padding-bottom: 96px;
}
.modal-up .content .form-control {
  padding: 8px;
  width: 65px;
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
}
.modal-up.full {
  height: 100vh;
}
.modal-up.full .top {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background-color: var(--white);
}
.modal-up.full .content {
  padding-top: 60px;
}

.modal#notiPrivacy .modal-dialog {
  max-width: unset;
  margin: 20px;
}
.modal#notiPrivacy .modal-dialog .modal-content {
  max-width: 335px;
  margin: 0 auto;
}
.modal#notiPrivacy .modal-dialog .modal-content label {
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

.modal-tracking .modal-content {
  position: relative;
}
.modal-tracking .modal-content .map-track {
  border-radius: 8px;
}
.place-card-medium {
  display: none !important;
}

/*------------ timeline ---------------- */
.tf-timeline {
  position: relative;
  padding-left: 26px;
  border-left: 1px solid var(--line);
}
.tf-timeline .timeline-item {
  position: relative;
}
.tf-timeline .timeline-item::after {
  content: "";
  top: 50%;
  transform: translateY(-50%);
  left: -33px;
  position: absolute;
  border-radius: 50%;
  background-color: var(--primary);
  height: 13px;
  width: 13px;
}

.timeline-panel .timeline-item {
  padding: 16px;
  display: flex;
  align-items: center;
  background: var(--white);
  box-shadow: var(--shadow-box);
  border-radius: 16px;
}
.timeline-panel .timeline-item .timeline-date {
  text-align: center;
  padding-right: 16px;
}
.timeline-panel .timeline-item .timeline-date h2 {
  font-family: "Inter Tight", sans-serif;
  font-size: 30px;
  line-height: 42px;
  font-weight: 700;
}
.timeline-panel .timeline-item .timeline-date span {
  color: var(--onSurface);
}
.timeline-panel .timeline-item .timeline-content {
  padding-left: 16px;
  border-left: 1px solid var(--line);
}
.timeline-panel .timeline-item .timeline-content p {
  color: var(--onSurface);
}
.timeline-panel .timeline-item .timeline-content .img-box {
  min-width: 169px;
  height: 95px;
  border-radius: 14px;
  overflow: hidden;
  margin-top: 20px;
}
.timeline-panel .timeline-item .timeline-content .img-box img {
  width: 100%;
  min-width: 100%;
  height: 100%;
  object-fit: cover;
}
.timeline-panel .timeline-item::before {
  content: "";
  position: absolute;
  top: calc(50% - 10px);
  left: -6px;
  background-color: var(--white);
  box-shadow: var(--shadow-box);
  width: 21px;
  height: 21px;
  transform: rotate(45deg);
}
.timeline-panel .timeline-item:not(:last-child) {
  margin-bottom: 24px;
}

.timeline-color .timeline-item {
  box-shadow: var(--shadow-box);
  border-radius: 12px;
  box-shadow: var(--shadow-box);
}
.timeline-color .timeline-item .timeline-header {
  padding: 16px;
  border-radius: 12px 12px 0px 0px;
}
.timeline-color .timeline-item .timeline-header p {
  font-size: 13px;
  line-height: 18.2px;
}
.timeline-color .timeline-item .timeline-body {
  background: var(--white);
  padding: 16px;
  border-radius: 0px 0px 12px 12px;
  color: var(--onSurface);
}
.timeline-color .timeline-item::after {
  top: 20%;
  transform: translateY(-20%);
}
.timeline-color .timeline-item::before {
  content: "";
  position: absolute;
  top: calc(20% - 6px);
  left: -6px;
  background-color: var(--white);
  width: 21px;
  height: 21px;
  transform: rotate(45deg);
}
.timeline-color .timeline-item.primary .timeline-header {
  background: var(--primary);
}
.timeline-color .timeline-item.primary .timeline-header p,
.timeline-color .timeline-item.primary .timeline-header h4 {
  color: #fff;
}
.timeline-color .timeline-item.primary::before {
  background-color: var(--primary);
}
.timeline-color .timeline-item.success .timeline-header {
  background: var(--success);
}
.timeline-color .timeline-item.success .timeline-header p,
.timeline-color .timeline-item.success .timeline-header h4 {
  color: #fff;
}
.timeline-color .timeline-item.success::before, .timeline-color .timeline-item.success::after {
  background-color: var(--success);
}
.timeline-color .timeline-item.danger .timeline-header {
  background: var(--danger);
}
.timeline-color .timeline-item.danger .timeline-header p,
.timeline-color .timeline-item.danger .timeline-header h4 {
  color: #fff;
}
.timeline-color .timeline-item.danger::before, .timeline-color .timeline-item.danger::after {
  background-color: var(--danger);
}
.timeline-color .timeline-item.warning .timeline-header {
  background: var(--warning);
}
.timeline-color .timeline-item.warning .timeline-header p,
.timeline-color .timeline-item.warning .timeline-header h4 {
  color: #fff;
}
.timeline-color .timeline-item.warning::before, .timeline-color .timeline-item.warning::after {
  background-color: var(--warning);
}
.timeline-color .timeline-item.light .timeline-header {
  background: var(--light);
}
.timeline-color .timeline-item.light .timeline-header p,
.timeline-color .timeline-item.light .timeline-header h4 {
  color: var(--onSurface);
}
.timeline-color .timeline-item.light::before, .timeline-color .timeline-item.light::after {
  background-color: var(--light);
}
.timeline-color .timeline-item.dark .timeline-header {
  background: var(--dark);
}
.timeline-color .timeline-item.dark .timeline-header p,
.timeline-color .timeline-item.dark .timeline-header h4 {
  color: #fff;
}
.timeline-color .timeline-item.dark::before, .timeline-color .timeline-item.dark::after {
  background-color: var(--dark);
}
.timeline-color .timeline-item.disable .timeline-header {
  background: var(--disable);
}
.timeline-color .timeline-item.disable .timeline-header p,
.timeline-color .timeline-item.disable .timeline-header h4 {
  color: #fff;
}
.timeline-color .timeline-item.disable::before, .timeline-color .timeline-item.disable::after {
  background-color: var(--disable);
}
.timeline-color .timeline-item:not(:last-child) {
  margin-bottom: 26px;
}

.timeline-number {
  padding-left: 40px;
}
.timeline-number .timeline-item {
  padding: 16px;
  margin-right: -16px;
  background: var(--white);
  box-shadow: var(--shadow-box);
  border-radius: 20px;
  position: relative;
}
.timeline-number .timeline-item .timeline-content {
  padding-left: 22px;
}
.timeline-number .timeline-item .timeline-content .timeline-header {
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}
.timeline-number .timeline-item .timeline-content .timeline-header p {
  font-size: 13px;
  line-height: 18.2px;
  color: var(--primary-btn);
}
.timeline-number .timeline-item .timeline-content .timeline-body {
  padding-top: 16px;
}
.timeline-number .timeline-item .timeline-content .timeline-body .box-img {
  margin-top: 16px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.timeline-number .timeline-item .timeline-content .timeline-body .box-img img {
  border-radius: 14px;
  height: 90px;
}
.timeline-number .timeline-item .number {
  position: absolute;
  top: 18px;
  left: -18px;
  font-size: 18px;
  line-height: 25.2px;
  font-weight: 700;
  color: var(--white);
  background: var(--primary);
  border: 4px solid var(--white);
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 98px;
}
.timeline-number .timeline-item::before {
  content: "";
  position: absolute;
  left: -35px;
  top: 37px;
  width: 25px;
  height: 1px;
  background: var(--primary);
}
.timeline-number .timeline-item::after {
  left: -47px;
  top: 37px;
}
.timeline-number .timeline-item:not(:last-child) {
  margin-bottom: 12px;
}

.timeline-status {
  padding-left: 0;
  border: 0;
}
.timeline-status .timeline-item {
  padding-left: 26px;
  padding-bottom: 23px;
  border-left: 1px dashed var(--line-3);
}
.timeline-status .timeline-item .timeline-title {
  font-weight: 700;
}
.timeline-status .timeline-item .timeline-date {
  margin-top: 4px;
  font-size: 13px;
  line-height: 18.2px;
  color: var(--text-5);
}
.timeline-status .timeline-item::after {
  left: -7px;
  top: 8px;
  background: var(--white);
  border: 1px solid var(--line-3);
}
.timeline-status .timeline-item.active {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.timeline-status .timeline-item.active .timeline-title {
  color: var(--primary-btn);
}
.timeline-status .timeline-item.active .icon {
  width: 40px;
  height: 40px;
  background: var(--primary);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 98px;
  color: #fff;
  font-size: 20px;
}
.timeline-status .timeline-item.process {
  border-color: var(--primary);
}
.timeline-status .timeline-item.process::after {
  background: var(--primary);
  border-color: var(--primary);
}

/*------------ progressbar ---------------- */
.progress {
  height: 12px;
  border-radius: 99px;
  background-color: var(--bg-progress);
  border-color: transparent;
}
.progress .progress-bar {
  background-color: var(--primary);
  border-radius: 99px;
}
.progress .progress-bar.success {
  background-color: var(--success);
  border-color: var(--success);
}
.progress .progress-bar.danger {
  background-color: var(--danger);
  border-color: var(--danger);
}
.progress .progress-bar.warning {
  background-color: var(--warning);
  border-color: var(--warning);
}
.progress .progress-bar.info {
  background-color: var(--info);
  border-color: var(--info);
}
.progress .progress-bar.dark {
  background-color: var(--dark);
  border-color: var(--dark);
}
.progress .progress-bar.liner-primary {
  background: var(--liner-primary);
}
.progress.h-2 {
  height: 2px;
}
.progress.h-4 {
  height: 4px;
}
.progress.h-6 {
  height: 6px;
}
.progress.h-8 {
  height: 8px;
}
.progress.h-10 {
  height: 10px;
}
.progress .progress-animated {
  animation-duration: 5s;
  animation-name: scrollanimated;
  transition: all 5s ease 0s;
}

@keyframes scrollanimated {
  0% {
    width: 0;
  }
}
/*------------ stepper ---------------- */
.tf-stepper {
  width: 164px;
  text-align: center;
}
.tf-stepper label {
  margin-bottom: 14px;
}
.tf-stepper .bootstrap-touchspin {
  align-items: center;
  gap: 10px;
}
.tf-stepper .bootstrap-touchspin .btn {
  border-radius: 46px;
  width: 48px;
  height: 48px;
  padding: 0;
  text-align: center;
  font-size: 20px;
  color: var(--onSurface);
  font-weight: 500;
  background-color: transparent;
  border-color: var(--line);
}
.tf-stepper .bootstrap-touchspin .btn:focus {
  box-shadow: unset;
  border-color: transparent;
}
.tf-stepper .stepper {
  font-size: 20px;
  line-height: normal;
  font-weight: 700;
  text-align: center;
  padding: 10px;
}
.tf-stepper .stepper:focus {
  border-color: transparent !important;
}
.tf-stepper.round-1 .bootstrap-touchspin .btn {
  border-radius: 14px;
}
.tf-stepper.round-2 .bootstrap-touchspin .btn {
  border-radius: 5px;
}
.tf-stepper.primary .bootstrap-touchspin .btn {
  border-color: transparent;
  background-color: var(--primary);
  color: #fff;
}
.tf-stepper.success .bootstrap-touchspin .btn {
  border-color: transparent;
  background-color: var(--success);
  color: #fff;
}
.tf-stepper.danger .bootstrap-touchspin .btn {
  border-color: transparent;
  background-color: var(--danger);
  color: #fff;
}
.tf-stepper.info .bootstrap-touchspin .btn {
  border-color: transparent;
  background-color: var(--info);
  color: #fff;
}
.tf-stepper.dark .bootstrap-touchspin .btn {
  border-color: transparent;
  background-color: var(--dark);
  color: #fff;
}
.tf-stepper.surface .bootstrap-touchspin .btn {
  border-color: transparent;
  background-color: var(--surface);
}
.tf-stepper.sm {
  width: 106px;
}
.tf-stepper.sm .bootstrap-touchspin .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
}
.tf-stepper.sm .stepper {
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 21px;
  padding: 0;
  border: 0;
}

/*------------ image box ---------------- */
.lightgallery-box {
  border-radius: 10px;
  overflow: hidden;
  display: inline-block;
}

/*------------ treeview ---------------- */
.jstree-default li,
.jstree-default a {
  font-weight: 500;
}
.jstree-default .jstree-clicked,
.jstree-default .jstree-wholerow-clicked {
  border-radius: 0;
  box-shadow: unset;
  background: none;
}

/*------------ spinner ---------------- */
.spinner-circle {
  width: 40px;
  height: 40px;
  position: relative;
}
.spinner-circle .spinner-child {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.spinner-circle .spinner-child::before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 20%;
  height: 20%;
  background-color: var(--white);
  border-radius: 100%;
  -webkit-animation: spinner-circleBounceDelay 1s infinite ease-in-out both;
  animation: spinner-circleBounceDelay 1s infinite ease-in-out both;
}
.spinner-circle .spinner-circle2 {
  -webkit-transform: rotate(40deg);
  -ms-transform: rotate(40deg);
  transform: rotate(40deg);
}
.spinner-circle .spinner-circle2::before {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}
.spinner-circle .spinner-circle3 {
  -webkit-transform: rotate(80deg);
  -ms-transform: rotate(80deg);
  transform: rotate(80deg);
}
.spinner-circle .spinner-circle3::before {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}
.spinner-circle .spinner-circle4 {
  -webkit-transform: rotate(120deg);
  -ms-transform: rotate(120deg);
  transform: rotate(120deg);
}
.spinner-circle .spinner-circle4::before {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}
.spinner-circle .spinner-circle5 {
  -webkit-transform: rotate(160deg);
  -ms-transform: rotate(160deg);
  transform: rotate(160deg);
}
.spinner-circle .spinner-circle5::before {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}
.spinner-circle .spinner-circle6 {
  -webkit-transform: rotate(200deg);
  -ms-transform: rotate(200deg);
  transform: rotate(200deg);
}
.spinner-circle .spinner-circle6::before {
  -webkit-animation-delay: -0.7s;
  animation-delay: -0.7s;
}
.spinner-circle .spinner-circle7 {
  -webkit-transform: rotate(240deg);
  -ms-transform: rotate(240deg);
  transform: rotate(240deg);
}
.spinner-circle .spinner-circle7::before {
  -webkit-animation-delay: -0.6s;
  animation-delay: -0.6s;
}
.spinner-circle .spinner-circle8 {
  -webkit-transform: rotate(280deg);
  -ms-transform: rotate(280deg);
  transform: rotate(280deg);
}
.spinner-circle .spinner-circle8::before {
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
}
.spinner-circle .spinner-circle9 {
  -webkit-transform: rotate(320deg);
  -ms-transform: rotate(320deg);
  transform: rotate(320deg);
}
.spinner-circle .spinner-circle9::before {
  -webkit-animation-delay: -0.4s;
  animation-delay: -0.4s;
}
.spinner-circle.lg {
  width: 50px;
  height: 50px;
}
.spinner-circle.md {
  width: 30px;
  height: 30px;
}
.spinner-circle.sm {
  width: 20px;
  height: 20px;
}
.spinner-circle.success .spinner-child::before {
  background-color: var(--success);
}
.spinner-circle.warning .spinner-child::before {
  background-color: var(--warning);
}
.spinner-circle.danger .spinner-child::before {
  background-color: var(--danger);
}
.spinner-circle.info .spinner-child::before {
  background-color: var(--info);
}
.spinner-circle.dark .spinner-child::before {
  background-color: var(--dark);
}
.spinner-circle.spinner-line .spinner-child::before {
  width: 6%;
  height: 20%;
  border-radius: 5px;
  -webkit-animation: spinner-lineGrowing 1s infinite ease-in-out both;
  animation: spinner-lineGrowing 1s infinite ease-in-out both;
}
.spinner-circle.spinner-line .spinner-circle2 {
  -webkit-transform: rotate(40deg);
  -ms-transform: rotate(40deg);
  transform: rotate(40deg);
}
.spinner-circle.spinner-line .spinner-circle2::before {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}
.spinner-circle.spinner-line .spinner-circle3 {
  -webkit-transform: rotate(80deg);
  -ms-transform: rotate(80deg);
  transform: rotate(80deg);
}
.spinner-circle.spinner-line .spinner-circle3::before {
  -webkit-animation-delay: -1s;
  animation-delay: -1s;
}
.spinner-circle.spinner-line .spinner-circle4 {
  -webkit-transform: rotate(120deg);
  -ms-transform: rotate(120deg);
  transform: rotate(120deg);
}
.spinner-circle.spinner-line .spinner-circle4::before {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}
.spinner-circle.spinner-line .spinner-circle5 {
  -webkit-transform: rotate(160deg);
  -ms-transform: rotate(160deg);
  transform: rotate(160deg);
}
.spinner-circle.spinner-line .spinner-circle5::before {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}
.spinner-circle.spinner-line .spinner-circle6 {
  -webkit-transform: rotate(200deg);
  -ms-transform: rotate(200deg);
  transform: rotate(200deg);
}
.spinner-circle.spinner-line .spinner-circle6::before {
  -webkit-animation-delay: -0.7s;
  animation-delay: -0.7s;
}
.spinner-circle.spinner-line .spinner-circle7 {
  -webkit-transform: rotate(240deg);
  -ms-transform: rotate(240deg);
  transform: rotate(240deg);
}
.spinner-circle.spinner-line .spinner-circle7::before {
  -webkit-animation-delay: -0.6s;
  animation-delay: -0.6s;
}
.spinner-circle.spinner-line .spinner-circle8 {
  -webkit-transform: rotate(280deg);
  -ms-transform: rotate(280deg);
  transform: rotate(280deg);
}
.spinner-circle.spinner-line .spinner-circle8::before {
  -webkit-animation-delay: -0.5s;
  animation-delay: -0.5s;
}
.spinner-circle.spinner-line .spinner-circle9 {
  -webkit-transform: rotate(320deg);
  -ms-transform: rotate(320deg);
  transform: rotate(320deg);
}
.spinner-circle.spinner-line .spinner-circle9::before {
  -webkit-animation-delay: -0.4s;
  animation-delay: -0.4s;
}

@-webkit-keyframes spinner-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes spinner-circleBounceDelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes spinner-lineGrowing {
  0%, 80%, 100% {
    opacity: 0.2;
  }
  40% {
    opacity: 1;
  }
}
@keyframes spinner-lineGrowing {
  0%, 80%, 100% {
    opacity: 0.2;
  }
  40% {
    opacity: 1;
  }
}
.spinner-grow {
  width: 40px;
  height: 40px;
  background-color: var(--primary);
}
.spinner-grow.md {
  width: 30px;
  height: 30px;
}
.spinner-grow.sm {
  width: 20px;
  height: 20px;
}
.spinner-grow.success {
  background-color: var(--success);
}
.spinner-grow.success-2 {
  background-color: var(--success2);
}
.spinner-grow.warning {
  background-color: var(--warning);
}
.spinner-grow.danger {
  background-color: var(--danger);
}
.spinner-grow.info {
  background-color: var(--info);
}
.spinner-grow.dark {
  background-color: var(--dark);
}
.spinner-grow.light {
  background-color: var(--light);
}
.spinner-grow.disabled {
  background-color: var(--disable);
}

/*------------ chart ---------------- */
.apexcharts-legend {
  padding: 0 !important;
}

.apexcharts-legend.apx-legend-position-bottom, .apexcharts-legend.apx-legend-position-top {
  flex-wrap: wrap;
  gap: 10px !important;
}

/*------------ divider ---------------- */
.tf-divider {
  position: relative;
  width: 100%;
  border-color: var(--primary);
  border-width: 2px 0 0 0;
  border-style: solid;
  z-index: 1;
}
.tf-divider span {
  top: -14px;
}
.tf-divider .icon {
  width: 25px;
  height: 25px;
  color: #fff;
  background-color: var(--primary);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
}
.tf-divider.success {
  border-color: var(--success);
}
.tf-divider.success .icon,
.tf-divider.success .text {
  background-color: var(--success);
}
.tf-divider.warning {
  border-color: var(--warning);
}
.tf-divider.warning .icon,
.tf-divider.warning .text {
  background-color: var(--warning);
}
.tf-divider.danger {
  border-color: var(--danger);
}
.tf-divider.danger .icon,
.tf-divider.danger .text {
  background-color: var(--danger);
}
.tf-divider.info {
  border-color: var(--info);
}
.tf-divider.info .icon,
.tf-divider.info .text {
  background-color: var(--info);
}
.tf-divider.light {
  border-color: var(--light);
}
.tf-divider.light .icon,
.tf-divider.light .text {
  background-color: var(--light);
}
.tf-divider.dark {
  border-color: var(--dark);
}
.tf-divider.dark .icon,
.tf-divider.dark .text {
  background-color: var(--dark);
}
.tf-divider.disable {
  border-color: var(--disable);
}
.tf-divider.disable .icon,
.tf-divider.disable .text {
  background-color: var(--disable);
}
.tf-divider.left span {
  position: absolute;
  left: 0;
}
.tf-divider.left-1 span {
  position: absolute;
  left: 20%;
}
.tf-divider.left-2 span {
  position: absolute;
  left: 30%;
}
.tf-divider.left-3 span {
  position: absolute;
  left: 10%;
}
.tf-divider.right span {
  position: absolute;
  right: 5%;
}
.tf-divider.right-1 span {
  position: absolute;
  right: 35%;
}
.tf-divider.right-2 span {
  position: absolute;
  right: 30%;
}
.tf-divider .text {
  padding: 5px 10px;
  border-radius: 8px;
  background-color: var(--primary);
  color: #fff;
  top: -15px;
}
.tf-divider.transparent .text {
  background-color: var(--white);
  color: var(--primary);
}
.tf-divider.transparent.success .text {
  color: var(--success);
}
.tf-divider.transparent.warning .text {
  color: var(--warning);
}
.tf-divider.b-width {
  border-width: 1px 0 0 0;
}
.tf-divider.dashed {
  border-style: dashed;
}
.tf-divider.dotted {
  border-style: dotted;
}

/*--------------- widget ---------------- */
.list-view-item {
  padding: 16px 0px;
}
.list-view-item a {
  display: flex;
  align-items: center;
}
.list-view-item:not(:last-child) {
  border-bottom: 1px solid var(--line);
}
.list-view-item.style-2 {
  justify-content: space-between;
}
.list-view-item.style-2 .title {
  flex-grow: 1;
}

.item-check {
  padding: 16px 0px;
  display: flex;
  justify-content: space-between;
  font-weight: 600;
  color: var(--onSurface);
}
.item-check.active {
  color: var(--primary);
}
.item-check.active .icon {
  display: block;
}
.item-check .icon {
  color: var(--primary);
  display: none;
}
.item-check .icon::before {
  font-size: 12px;
}
.item-check:not(:last-child) {
  border-bottom: 1px solid var(--line);
}
.item-check:last-child {
  padding-bottom: 0;
}

.loadmore-item .fl-item {
  display: none;
}

ul.line4-bt.mt-16.box-category {
  padding-bottom: 20px;
}
.modal-backdrop.fade.show {
  z-index: 9;
}

.box-category {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  width: 110%;
}


.category-item {
  font-size: 14px;
  font-weight: 600;
  line-height: 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.box-img-product {
  width: 80px;
  height: 80px;
  padding: 10px;
  background-color: #f8f2e2;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.banner-style1 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 14px;
  background-color: #f8f2e2;
  overflow: hidden;
}
.banner-style1 .content-left {
  padding-top: 13.5px;
  padding-bottom: 13.5px;
  padding-left: 26px;
}
.banner-style1 .box-img img {
  width: 168.028px;
  height: 123.688px;
  transform: rotate(6.586deg);
}
.banner-style1.st1 {
  height: 120px;
}
.banner-style1.st1 .content-left {
  padding-left: 37px;
}
.banner-style1.st1 .box-img img {
  width: 159px;
  height: 158px;
  transform: unset;
}
.banner-style1.st2 {
  background-color: #e1e3ea;
}
.banner-style1.st2 .box-img img {
  width: 146px;
  height: 109px;
  transform: unset;
}

.banner-style2 {
  position: relative;
  background-repeat: no-repeat;
  display: flex;
  justify-content: space-between;
  background-size: cover;
  backdrop-filter: blur(7.5px);
  border-radius: 14px;
  overflow: hidden;
}
.banner-style2::after {
  position: absolute;
  z-index: -1;
  content: "";
  width: 100%;
  height: 100%;
  background: rgba(19, 19, 23, 0.2);
  backdrop-filter: blur(7.5px);
}
.banner-style2 .content-left {
  background: linear-gradient(92deg, #fa683a 6.45%, rgba(250, 104, 58, 0) 73.28%);
  padding: 18px 30px;
  padding-right: 0;
}
.banner-style2 .content-left .tf-btn {
  padding: 7px 12px;
  background-color: var(--white);
  font-size: 14px;
  font-weight: 500;
  line-height: 18px;
}
.banner-style2 .content-right {
  transform: rotate(22deg);
  margin-right: -40px;
}
.banner-style2 .content-right img {
  width: 86px;
  height: 86px;
  border-radius: 13.231px;
}
.banner-style2 .content-right .box-img {
  background-color: var(--white);
  border-radius: 13.231px;
}
.banner-style2 .content-right .top,
.banner-style2 .content-right .bottom {
  display: flex;
  gap: 7px;
}
.banner-style2 .content-right .top {
  margin-top: -20px;
}
.banner-style2 .content-right .bottom {
  margin-left: 40px;
  margin-right: -10px;
  margin-bottom: -32px;
  margin-top: 6px;
}

.banner-style3 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 14px;
  background-color: #e1e3ea;
  overflow: hidden;
  padding: 0px 50px;
  gap: 40px;
}
.banner-style3 .content-right {
  padding: 21px 0px;
}
.banner-style3 .content-right span {
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  color: #606dfa;
}
.banner-style3 .content-right .desc {
  font-size: 10px;
  font-weight: 400;
  line-height: 13px;
  color: var(--secondary);
}
.banner-style3 img {
  width: 100.976px;
  height: 118.458px;
}

.box-product .img {
  width: 102px;
  height: 102px;
  border-radius: 8px;
  overflow: hidden;
}

.progress-product {
  border-radius: 0px;
  height: 13px;
}
.progress-product .progress-bar {
  border-radius: 0;
  font-size: 10px;
  font-weight: 500;
  line-height: 13px;
  padding-left: 8px;
  text-align: left;
}

.progress-tracking {
  height: 24px;
  border-radius: 8px;
  background-color: var(--line);
}
.progress-tracking .progress-bar {
  border-radius: 0;
  font-size: 14px;
  line-height: 18px;
  text-align: end;
  padding-right: 20px;
}
.progress-tracking.done .progress-bar {
  text-align: center;
  padding: 0;
}

.cart-store {
  display: flex;
  align-items: center;
}
.cart-store .content {
  flex-grow: 1;
  margin-left: 12px;
}
.cart-store .desc {
  display: flex;
  gap: 8px;
}
.cart-store .desc li:first-child {
  padding-right: 8px;
  border-right: 1px solid var(--line);
}
.cart-store .tf-btn {
  width: auto;
  padding: 7px 24px;
}

.list-star {
  display: flex;
  align-items: center;
  gap: 2;
}
.list-star .icon {
  font-size: 12px;
  color: #ffc700;
}
.list-star.style2 .icon:last-child {
  color: var(--line);
}

.box-review {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.box-review .item:not(:last-child) {
  padding-right: 8px;
  border-right: 1px solid var(--line);
}

.box-layout-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 12px;
  row-gap: 16px;
  margin-bottom:70px;
}

.card-product {
  border-radius: 10px;
  border: 1px solid var(--line);
  position: relative;
  overflow: hidden;
}
.card-product .box-img {
  background-color: var(--surface);
}
.card-product .content {
  padding: 8px 12px;
}
.card-product .content ul {
  margin-top: 2px;
  display: flex;
  gap: 6px;
}
.card-product .content ul li:first-child {
  padding-right: 6px;
  border-right: 1px solid var(--line);
}
.card-product .content .icon-star2 {
  color: #f8bd09;
}
.card-product .box-sale {
  position: absolute;
  top: 7px;
  left: 8px;
  right: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.card-product .box-sale .sale {
  border-radius: 4px;
  font-size: 12px;
  line-height: 16px;
  color: var(--white);
  padding: 0px 4px;
  background-color: #e74141;
}
.card-product .default-press {
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(2px);
}

.default-press {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--white);
  border-radius: 56px;
}
.default-press.active svg path {
  fill: #e74141;
  stroke: #e74141;
}
.default-press.active i {
  color: #e74141;
}
.default-press.style2 {
  border: 1px solid var(--line);
}
.default-press.style3 {
  width: 32px;
  height: 32px;
  border-radius: 99px;
  background-color: var(--surface);
}

.box-title-product {
  display: flex;
  gap: 12px;
}
.box-title-product li:not(:last-child) {
  padding-right: 12px;
  border-right: 1px solid var(--line);
}

.box-card-bank {
  width: 90px;
  height: 80px;
  padding: 12px 5px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4px;
  border-radius: 8px;
  border: 1px solid var(--line);
  font-size: 12px;
  line-height: 16px;
  color: var(--onSurface);
}
.box-card-bank .img {
  width: 32px;
  height: 32px;
}
.box-card-bank.active {
  border-color: var(--primary);
}

.box-cart-select {
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative;
}
.box-cart-select input {
  flex-shrink: 0;
}
.box-cart-select .inner {
  flex-grow: 1;
  display: flex;
  align-items: center;
  gap: 12px;
}
.box-cart-select .inner .img {
  width: 96px;
  height: 96px;
}
.box-cart-select .tf-stepper {
  position: absolute;
  bottom: 12px;
  right: 0;
  width: 72px;
}
.box-cart-select .tf-stepper .bootstrap-touchspin {
  gap: 8px;
}
.box-cart-select .tf-stepper .bootstrap-touchspin .btn {
  width: 24px;
  height: 24px;
  font-size: 18px;
}

.box-favourite {
  display: flex;
  align-items: center;
  gap: 12px;
}
.box-favourite .img {
  width: 96px;
  height: 96px;
}
.box-favourite .inner {
  flex-grow: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.dot {
  width: 8px;
  height: 8px;
  border-radius: 1000px;
  background-color: #e74141;
}

.ip-address[type=text] {
  padding: 16px;
  border: 0;
}
.ip-address[type=text]::placeholder {
  color: #b9bac3;
}

.group-ip-address {
  position: relative;
}
.group-ip-address .icon {
  position: absolute;
  top: 16px;
  right: 16px;
  font-size: 24px;
}

.textarea-address {
  padding: 16px;
  border: 0;
  height: 194px;
}
.textarea-address::placeholder {
  color: #b9bac3;
}

.tag-address {
  border-radius: 3px;
  background-color: var(--surface);
  padding: 4px;
  color: var(--onSurface);
}

.box-cate-filter {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.box-cate-filter .cate-filter-item {
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  gap: 4px;
  word-break: break-all;
}
.box-cate-filter .cate-filter-item img {
  width: 52px;
  height: 52px;
}

.wrap-success {
  background: var(--primary);
  position: relative;
  overflow: hidden;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wrap-success .line-through {
  position: absolute;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  overflow: hidden;
}
.wrap-success .line-through::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
  transition: all 0.7s;
  animation: rainbow 2s infinite;
}
.wrap-success .through-1 {
  left: 23%;
  top: 5%;
  transform: rotate(131deg);
  width: 486px;
  height: 34px;
}
.wrap-success .through-2 {
  left: 27%;
  top: 0%;
  transform: rotate(131deg);
  width: 107px;
  height: 34px;
}
.wrap-success .through-3 {
  left: -12%;
  top: 10%;
  transform: rotate(131deg);
  width: 113px;
  height: 34px;
}
.wrap-success .through-4 {
  left: -15%;
  bottom: 9%;
  transform: rotate(131deg);
  width: 130px;
  height: 34px;
}
.wrap-success .through-5 {
  left: 27%;
  bottom: 19%;
  transform: rotate(131deg);
  width: 168px;
  height: 34px;
}
.wrap-success .through-6 {
  left: 48%;
  bottom: 16%;
  transform: rotate(131deg);
  width: 360px;
  height: 34px;
}
.wrap-success .icon-1 {
  position: absolute;
  top: -10%;
  left: 50%;
}
.wrap-success .icon-1 .check-icon {
  transform: translateX(-50%);
}
.wrap-success .icon-2 {
  position: absolute;
  right: 28%;
  top: -2%;
}
.wrap-success .icon-3 {
  position: absolute;
  left: 22%;
  position: absolute;
  top: 5%;
}
.wrap-success .icon-4 {
  position: absolute;
  position: absolute;
  right: 22%;
  top: 4%;
}

.success_box {
  background: var(--white);
  padding: 80px 16px 16px;
  border-radius: 8px;
  position: relative;
  width: 100%;
  margin: 0px 16px;
  z-index: 1;
}
.success_box .content {
  text-align: center;
  margin-bottom: 40px;
}
.success_box .content .top p {
  font-size: 14px;
  line-height: 22px;
}
.success_box .content .inner p {
  font-size: 16px;
  padding-bottom: 8px;
}
.success_box .content .bottom p {
  font-size: 14px;
  line-height: 22px;
}
.success_box .content .bottom p:first-child {
  padding-bottom: 4px;
}

.circle-box {
  display: inline-block;
  border-radius: 50%;
}
.circle-box.check-icon {
  position: relative;
}
.circle-box.check-icon::after {
  position: absolute;
  border: 4px solid #fff;
  border-top: none;
  border-right: none;
  content: "";
  top: 22px;
  left: 22px;
  height: 13px;
  transform: rotate(-45deg);
  width: 22px;
  border-radius: 3px;
}
.circle-box.xl {
  width: 138px;
  height: 138px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.circle-box.xl i {
  font-size: 66px;
  color: var(--white);
}
.circle-box.lg {
  width: 82px;
  height: 82px;
  border: 10px solid var(--white);
  box-shadow: 0px 4px 20px 0px rgba(158, 158, 158, 0.25);
}
.circle-box.md {
  width: 24px;
  height: 24px;
  border: 3px solid var(--white);
  box-shadow: 0px 4px 20px 0px rgba(158, 158, 158, 0.25);
}
.circle-box.sm {
  width: 8px;
  height: 8px;
  border: 1px solid var(--white);
  box-shadow: 0px 4px 20px 0px rgba(158, 158, 158, 0.25);
}
.circle-box.bg-circle {
  background-color: var(--primary);
}

@keyframes rainbow {
  0% {
    left: 0%;
  }
  50% {
    left: 100%;
  }
  100% {
    left: 0%;
  }
}
.preload {
  overflow: hidden;
}

.preload-container {
  position: relative;
  width: 100%;
  height: 100%;
  background: #fff;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 99999999999;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.preload-container .spinner-circle {
  width: 60px;
  height: 60px;
}
.preload-container .spinner-circle .spinner-child::before {
  background-color: var(--primary);
}

.preload-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100px;
  height: 100px;
  z-index: 100;
  margin: -45px 0 0 -45px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-repeat: no-repeat;
  background-position: center center;
  animation: preload 1s linear infinite alternate;
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    transform: scale3d(1, 1, 1);
  }
}
.accordion-item .wd-list-item:first-child {
  margin-top: 14px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}

.map {
  margin-left: -16px;
  margin-right: -16px;
}

div#category {
  margin-bottom: 70px;
}


.box-order-fix {
  height: 70vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.fixed-cart {
  position: fixed;
  right: 20px;
  bottom: 150px;
  z-index: 999999;
}

.cart-icon {
  border-radius: 50px;
  background: rgba(21, 21, 21, 0.4);
  backdrop-filter: blur(8px);
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cart-icon .badge {
  width: 24px;
  height: 24px;
  font-size: 14px;
  line-height: 18px;
}

/* animation */
.ani1 {
  -webkit-animation: ani1 10s infinite ease-in-out alternate;
  animation: ani1 10s infinite ease-in-out alternate;
}

.ani2 {
  -webkit-animation: ani2 10s infinite ease-in-out alternate;
  animation: ani2 10s infinite ease-in-out alternate;
}

.ani3 {
  -webkit-animation: ani3 4s infinite ease-in-out alternate;
  animation: ani3 4s infinite ease-in-out alternate;
}

.ani4 {
  -webkit-animation: ani4 7s infinite ease-in-out alternate;
  animation: ani4 7s infinite ease-in-out alternate;
}

.ani5 {
  -webkit-animation: ani5 7s infinite ease-in-out alternate;
  animation: ani5 7s infinite ease-in-out alternate;
}

.ani6 {
  -webkit-animation: ani6 7s infinite ease-in-out alternate;
  animation: ani6 7s infinite ease-in-out alternate;
}

.ani7 {
  -webkit-animation: ani7 7s infinite ease-in-out alternate;
  animation: ani7 7s infinite ease-in-out alternate;
}

.ani8 {
  -webkit-animation: ani8 2000ms infinite ease-in-out alternate;
  animation: ani8 2000ms infinite ease-in-out alternate;
}

@keyframes ani1 {
  0% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
    transform: translate(0px, 0px) rotate(0deg);
  }
  20% {
    -webkit-transform: translate(-73px, 1px) rotate(-36deg);
    transform: translate(-73px, 1px) rotate(-36deg);
  }
  40% {
    -webkit-transform: translate(-141px, -72px) rotate(-72deg);
    transform: translate(-141px, -72px) rotate(-72deg);
  }
  60% {
    -webkit-transform: translate(-83px, -122px) rotate(-108deg);
    transform: translate(-83px, -122px) rotate(-108deg);
  }
  80% {
    -webkit-transform: translate(40px, -72px) rotate(-144deg);
    transform: translate(40px, -72px) rotate(-144deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
    transform: translate(0px, 0px) rotate(0deg);
  }
}
@keyframes ani2 {
  0% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
    transform: translate(0px, 0px) rotate(0deg);
  }
  20% {
    -webkit-transform: translate(20px, 1px) rotate(36deg);
    transform: translate(20px, 1px) rotate(36deg);
  }
  40% {
    -webkit-transform: translate(100px, 72px) rotate(72deg);
    transform: translate(100px, 72px) rotate(72deg);
  }
  60% {
    -webkit-transform: translate(83px, 122px) rotate(108deg);
    transform: translate(83px, 122px) rotate(108deg);
  }
  80% {
    -webkit-transform: translate(40px, 72px) rotate(144deg);
    transform: translate(40px, 72px) rotate(144deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
    transform: translate(0px, 0px) rotate(0deg);
  }
}
@keyframes ani3 {
  0% {
    transform: scale(0.8, 0.8);
  }
  50% {
    transform: scale(1, 1);
  }
  100% {
    transform: scale(0.8, 0.8);
  }
}
@keyframes ani4 {
  0%, 100% {
    transform: translateX(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;
  }
  50% {
    transform: translateX(-20px);
    -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;
  }
}
@keyframes ani5 {
  0%, 100% {
    transform: translateX(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;
  }
  50% {
    transform: translateX(20px);
    -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;
  }
}
@keyframes ani6 {
  0% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
    transform: translate(0px, 0px) rotate(0deg);
  }
  20% {
    -webkit-transform: translate(-13px, 1px) rotate(-6deg);
    transform: translate(-13px, 1px) rotate(-6deg);
  }
  40% {
    -webkit-transform: translate(-41px, -22px) rotate(-22deg);
    transform: translate(-41px, -22px) rotate(-22deg);
  }
  60% {
    -webkit-transform: translate(-33px, -22px) rotate(-50deg);
    transform: translate(-33px, -22px) rotate(-50deg);
  }
  80% {
    -webkit-transform: translate(40px, -72px) rotate(-50deg);
    transform: translate(40px, -72px) rotate(-50deg);
  }
  100% {
    -webkit-transform: translate(0px, 0px) rotate(0deg);
    transform: translate(0px, 0px) rotate(0deg);
  }
}
@keyframes ani7 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes ani8 {
  from {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-7px);
    -moz-transform: translateY(-7px);
    -o-transform: translateY(-7px);
    -ms-transform: translateY(-7px);
    transform: translateY(-7px);
  }
}
.content-map-track {
  position: relative;
}
.content-map-track .map-track {
  border-radius: 12px;
}
.content-map-track .map-track .mapboxgl-ctrl-bottom-left,
.content-map-track .map-track .mapboxgl-ctrl-bottom-right {
  display: none;
}
.content-map-track .m-direction {
  position: absolute;
  top: 22%;
  left: 30%;
}
.content-map-track .top-track-location {
  position: absolute;
  z-index: 20;
  left: 15px;
  right: 15px;
  top: 30px;
}
.content-map-track .top-track-location .icon {
  position: absolute;
  left: 0;
  top: 0;
  padding: 15px 10px 15px 14px;
  color: #cfcfcf;
  font-size: 20px;
}
.content-map-track .top-track-location input {
  height: 50px;
  padding-left: 42px;
  padding-right: 55px;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  border-color: transparent;
}
.content-map-track .top-track-location .t-ip {
  position: absolute;
  right: 14px;
  top: 16px;
  font-size: 14px;
  color: var(--primary);
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.box-driver-track {
  position: absolute;
  bottom: 15px;
  left: 15px;
  right: 15px;
  padding: 14px;
  background: var(--white);
  border-radius: 16px;
  box-shadow: 0px 8px 30px 0px rgba(0, 0, 0, 0.06);
}
.box-driver-track .top {
  display: flex;
  justify-content: space-between;
}
.box-driver-track .top .inner {
  display: flex;
  align-items: center;
  gap: 8px;
}
.box-driver-track .top .rate-right .icon-rate {
  font-size: 14px;
  color: #ffc700;
}
.box-driver-track .top .rate-right span {
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  color: var(--onSurface);
}

.box-curent-location {
  padding: 10px;
  background-color: var(--white);
  display: flex;
  align-items: center;
  gap: 14px;
  border-radius: 8px;
}
.box-curent-location .icon-lo {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: #fef6f4;
}

/*-------------- Pages ----------------- */
/*--------- boarding ---------- */
.bg-boarding {
  background-size: cover;
  background-repeat: no-repeat;
}

.img-boarding {
  width: 195px;
  height: 145px;
}

.logo-boarding {
  width: 196px;
  height: 195px;
  margin: 20px auto 100px;
}

.title-boarding-box {
  text-align: center;
  padding: 0px 43px;
}
.title-boarding-box h1 {
  color: #fff;
}
.title-boarding-box p {
  color: #f4e8dd;
  font-size: 16px;
  line-height: 22px;
  font-weight: 400;
}

.section-boarding-title {
  position: absolute;
  width: 100%;
  bottom: 100px;
}

.modal-noti-app .modal-dialog.modal-dialog-centered {
  margin: 0 auto;
  max-width: 335px;
}
.modal-noti-app .modal-dialog .modal-content {
  padding: 0;
}
.modal-noti-app .modal-dialog .modal-content .top {
  padding: 30px 30px 16px;
}
.modal-noti-app .modal-dialog .modal-content .top p {
  font-size: 16px;
  font-weight: 400;
  line-height: 140%;
}
.modal-noti-app .modal-dialog .modal-content .bottom li {
  padding: 16px;
}
.modal-noti-app .modal-dialog .modal-content .bottom li a {
  font-size: 18px;
  font-weight: 700;
  line-height: 26px;
  color: var(--primary);
}

.boarding-section {
  padding-top: 60px;
  background-color: #fa7a72;
}
.boarding-section .img-box {
  max-width: 321px;
  height: 356px;
  margin: 0 auto;
}
.boarding-section .swiper {
  z-index: unset;
}
.boarding-content {
  margin-top: -50px;
  padding-top: 60px;
  position: relative;
  z-index: 5;
  background-color: var(--white);
}
.boarding-content h2 {
  padding: 0 30px;
}
.boarding-content p {
  padding: 0 50px;
}
.boarding-content svg {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 300px;
}
.boarding-content svg path {
  fill: #fff;
}
.boarding-content .box-content {
  position: relative;
  z-index: 10;
}

/*--------- account ---------- */
.signin-area .box-image {
  max-width: 300px;
  height: 300px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.auth-line {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 32px 0px;
}
.auth-line::before {
  content: "";
  position: absolute;
  left: 0;
  height: 1px;
  width: 42%;
  background: #e5e5e5;
}
.auth-line::after {
  content: "";
  position: absolute;
  right: 0;
  width: 42%;
  height: 1px;
  background: #e5e5e5;
}

.noti-signin {
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.noti-signin a {
  font-size: 16px;
  font-weight: 500;
  line-height: 21px;
}

.create-pass-area .box-image {
  max-width: 283px;
  height: 330px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.title-password {
  font-size: 16px;
  line-height: 22px;
}

.newpass-area .box-image {
  max-width: 269px;
  height: 269px;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

.forgot-area .box-image {
  max-width: 295px;
  height: 243px;
  margin-left: auto;
  margin-right: auto;
}

.otp-area .box-image {
  text-align: right;
}
.otp-area .box-image img {
  max-width: 244px;
}

.cb-signup {
  display: flex;
  align-items: center;
  gap: 8px;
}
.cb-signup label {
  margin-bottom: 0;
}

/*--------- home ---------- */
.banner-top {
  height: 320px;
  background-color: var(--primary-bold);
  margin-bottom: -10em;
}
.banner-top .search-box .search-field {
  background: rgba(255, 255, 255, 0.1);
  border-color: transparent;
  backdrop-filter: blur(2px);
  color: #fff;
}
.banner-top .search-box .search-field::placeholder {
  color: rgba(255, 255, 255, 0.4);
}
.banner-top .search-box .icon-left,
.banner-top .search-box .icon-right {
  color: #fff;
  z-index: 1;
}
.banner-top h2 {
  color: #fff;
}

.tf-title-banner h3,
.tf-title-banner a {
  color: #fff;
}

.wd-dir-store.details .item-rate {
  border-radius: 4px;
  background: rgba(250, 190, 60, 0.12);
  padding: 4px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.wd-dir-store.details .item-rate .icon-star {
  font-size: 16px;
  color: #fabe3c;
}
.wd-dir-store.details .group-btn .tf-btn {
  padding: 11px 0px;
  border-radius: 5px;
  font-weight: 500;
}
.wd-dir-store.details .group-btn .icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #151515;
  border-radius: 5px;
  background-color: #e5e5e5;
}
.wd-dir-store.details .box-img.lr-wrap {
  position: relative;
}
.wd-dir-store.details .box-img.lr-wrap .box-bookmark {
  position: absolute;
  top: 12px;
  right: 12px;
}

.box-categories {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  margin-right: -20px;
  padding-right: 18px;
}





.box-categories .categories-item {
  white-space: nowrap;
}

.box-upload {
  display: flex;
  gap: 8px;
}
.box-upload img {
  width: 52px;
  height: 52px;
  border-radius: 4px;
}
.box-upload .upload {
  width: 52px;
  height: 52px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e5e5e5;
  background-color: #f5f5f5;
}
.box-upload .upload img {
  width: 32px;
  height: 32px;
}

.wrap-banner {
  padding-top: 20px;
  border-radius: 20px 20px 0px 0px;
  background-color: var(--white);
  margin-top: -20px;
  position: relative;
}

.categories-item {
  padding: 6px 16px;
  border-radius: 20px;
  border: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.categories-item svg path {
  fill: var(--text-4);
}
.categories-item.style-2 {
  background: var(--white);
  box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.08);
}
.categories-item.time-st.active, .categories-item.active {
  background-color: var(--primary);
  color: #fff;
  border-color: var(--primary);
}
.categories-item.time-st.active svg path, .categories-item.active svg path {
  fill: #fff;
}

.cate-item {
  padding: 7px 16px;
  background-color: #f5f5f5;
  display: inline-flex;
  align-items: center;
  color: #151515;
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  border-radius: 100px;
  gap: 8px;
}

.heart-press.active svg path {
  fill: #de0000;
  stroke: #de0000;
}
.heart-press.active i {
  color: #de0000;
}

.box-add-photo {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.box-add-photo img {
  width: 77px;
  height: 70px;
  border-radius: 14px;
}
.box-add-photo .input-upload .upload-file {
  width: 77px;
  height: 70px;
}
.box-add-photo .input-upload .upload-file::before {
  content: "\e958";
  font-family: "icomoon";
  margin-left: 0;
  font-size: 24px;
  color: var(--text-4);
}

.box-rating {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  border: 1px solid var(--line);
  padding: 10px 16px;
  gap: 10px;
}
.box-rating span {
  font-size: 18px;
  font-weight: 700;
  line-height: 140%;
}

.box-star-review {
  display: flex;
}
.box-star-review .content-left {
  padding-right: 20px;
  border-right: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.box-star-review .content-left .top h1 {
  font-size: 50px;
  font-style: normal;
  font-weight: 700;
  line-height: 70px;
  text-transform: uppercase;
  color: #d83a3a;
  display: inline-block;
  margin-right: 10px;
}
.box-star-review .content-left .top span {
  font-size: 30px;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
  color: var(--text-5);
  opacity: 0.4;
}
.box-star-review .content-right {
  padding-left: 20px;
  flex-grow: 1;
}
.box-star-review .content-right .line-progress {
  display: flex;
  gap: 10px;
  align-items: center;
}
.box-star-review .content-right .line-progress span {
  font-weight: 500;
  font-size: 12px;
  line-height: 140%;
}
.box-star-review .content-right .line-progress span i {
  color: #ffc700;
  font-size: 12px;
}
.box-star-review .content-right .line-progress .progress {
  flex-grow: 1;
  height: 8px;
}
.box-star-review .content-right .line-progress .progress .progress-bar {
  background-color: var(--primary-btn);
}

.banner-img img {
  width: 100%;
  height: 350px;
  object-fit: cover;
}

.tf-swiper .banner-style1 .content-left .title {
  font-size: 12px;
  font-weight: 700;
  line-height: 16px;
  color: #e74141;
  margin-bottom: 3px;
}
.tf-swiper .banner-style1 .box-img img {
  width: 144px;
  height: 106px;
}
.tf-swiper .banner-style2 .content-left {
  padding: 15px 30px;
  padding-right: 0;
}
.tf-swiper .banner-style2 .content-right {
  margin-right: -75px;
}
.tf-swiper .banner-style2 .content-right .bottom {
  margin-bottom: -60px;
}

.countdown span.countdown__value {
  background-color: var(--primary);
  color: var(--white);
  font-size: 10px;
  font-weight: 400;
  line-height: 13px;
  padding: 4px;
  border-radius: 2px;
}

.countdown__label {
  margin: 0px 4px;
}

/*--------- profile ---------- */
.banner-wrapper {
  position: relative;
  z-index: -1;
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: -60px;
  height: 258px;
}
.banner-wrapper::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%);
}

.box-profile .avatar {
  position: relative;
}
.box-profile .avatar .icon {
  border-radius: 50%;
  position: absolute;
  bottom: 0;
  right: 2px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  background-color: var(--secondary);
}
.box-profile.style-2 {
  display: flex;
  gap: 20px;
  align-items: center;
  padding: 20px 0px;
}
.box-profile.style-2 .icon {
  width: 14px;
  height: 14px;
}
.box-profile.style-2 .content {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.box-profile.style-2 .content .left p {
  display: flex;
  align-items: center;
  gap: 8px;
}

.box-number {
  position: relative;
  padding-bottom: 27px;
}
.box-number li:not(:last-child) {
  border-right: 1px solid var(--line);
}
.box-number .item {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
  color: var(--text);
  font-weight: 500;
}
.box-number .item span {
  color: var(--onSurface);
  font-size: 20px;
  line-height: 28px;
  font-weight: 700;
}
.box-number .btn-add {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -20px;
}

.box-latest-review .box-img {
  display: flex;
  gap: 8px;
}
.box-latest-review .box-img img {
  width: 60px;
  border-radius: 4px;
}

.box-btn-profile .tf-btn {
  border-radius: 4px;
  padding: 11px;
  color: #151515;
  font-weight: 400;
}
.box-btn-profile .icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  color: #151515;
  border-radius: 3px;
  background: #e6e6e6;
}

.box-photo-cf {
  position: relative;
}
.box-photo-cf .text-cf {
  font-size: 11px;
  font-weight: 400;
  line-height: 13px;
  position: absolute;
  color: #fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/*--------- chat ---------- */
.message-box {
  position: relative;
}
.message-box input {
  border-radius: 8px;
  padding: 8px 16px;
  border: 1px solid var(--line);
  color: var(--secondary);
  background-color: var(--white);
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
}
.message-box .btn-message {
  position: absolute;
  right: 12px;
  top: 12px;
}
.message-box .btn-message svg path {
  fill: var(--primary);
}

.bubble {
  display: flex;
  align-items: center;
  gap: 8px;
}
.bubble img {
  width: 24px;
  height: 24px;
  border-radius: 50%;
}
.bubble p {
  padding: 12px 16px;
  font-size: 14px;
  line-height: 18px;
  color: var(--onSurface);
  border-radius: 20px;
}
.bubble .time {
  color: var(--text-5);
  font-size: 12px;
  line-height: 120%;
}
.bubble.bubble-you {
  gap: 8px;
  margin-bottom: 14px;
  margin-right: 50px;
}
.bubble.bubble-you p {
  background-color: var(--line);
}
.bubble.bubble-me {
  margin-bottom: 14px;
  justify-content: flex-end;
  margin-left: 80px;
}
.bubble.bubble-me .content p {
  background-color: var(--white);
}
.bubble.bubble-me .content .time {
  text-align: end;
  display: block;
}

.status-icon {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}
.status-icon.online {
  background-color: #e55223;
  border: 2px solid #fff;
}
.status-icon.offline {
  background-color: #eb5a5a;
}

.fixed-chat {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 12px 20px;
  max-width: 1024px;
  margin: 0 auto;
}
.fixed-chat .inner {
  display: flex;
  gap: 12px;
  justify-content: space-between;
  align-items: center;
}
.fixed-chat .inner .message-box {
  flex-grow: 1;
}

/*--------- order ---------- */
.card-style2 {
  padding: 16px;
  border-radius: 10px;
  background-color: var(--white);
}

.order-box li {
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}
.order-box li:not(:first-child) {
  margin-top: 16px;
}

.order-item {
  display: flex;
  gap: 6px;
  justify-content: space-between;
  align-items: center;
}
.order-item .content {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.order-item .img {
  width: 80px;
  height: 80px;
}

.order-price {
  font-size: 18px;
  font-weight: 600;
  line-height: 22px;
  color: var(--onSurface);
}

.btn-order {
  padding: 6px 8px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
  color: var(--white);
}
.btn-order.process {
  background-color: #f8bd09;
}
.btn-order.shipped {
  background-color: #606dfa;
}
.btn-order.completed {
  background-color: #25c364;
}
.btn-order.cancel {
  background-color: #e74141;
}

.time-line-order {
  display: flex;
  align-items: center;
  padding: 0 40px;
}
.time-line-order .progress-order {
  margin-top: 8px;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate(-50%);
  font-size: 14px;
  font-weight: 600;
  line-height: 18px;
  color: var(--onSurface);
  white-space: nowrap;
}
.time-line-order .progress-order.completed {
  color: var(--secondary);
}
.time-line-order .icon {
  position: relative;
}
.time-line-order .icon .icon-check {
  width: 16px;
  height: 16px;
  background: var(--primary);
  font-size: 8px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: var(--white);
  border-radius: 50%;
}
.time-line-order .icon.completed .icon-check {
  background-color: var(--line);
  color: var(--secondary);
}
.time-line-order .line {
  height: 1px;
  background-color: var(--primary);
  flex-grow: 1;
  margin: 0px 8px;
}
.time-line-order .line.completed {
  background-color: var(--line);
}

.timeline-tracking {
  display: flex;
}
.timeline-tracking .time-day {
  padding-right: 24px;
  padding-bottom: 12px;
  border-right: 1px solid var(--line);
  position: relative;
}
.timeline-tracking .time-day::after {
  position: absolute;
  content: "\e976";
  font-family: "icomoon";
  right: -7px;
  top: 0;
  width: 12px;
  height: 12px;
  background: var(--primary);
  font-size: 6px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: var(--white);
  border-radius: 50%;
  box-shadow: 0 0 0 4px #fbeaea;
}
.timeline-tracking .time-day.not-complete::after {
  content: "";
  background-color: #b9bac3;
  box-shadow: unset;
}
.timeline-tracking .process-track {
  padding-left: 24px;
  padding-bottom: 16px;
}

.box-address {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 16px;
  border-radius: 10px;
  border: 1px solid var(--primary);
  background: rgba(246, 132, 68, 0.1);
}
.box-address input {
  flex-shrink: 0;
}

/*# sourceMappingURL=styles.css.map */
