/* DECLARATIONS */
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap");

/* ROOT VARIABLES */
:root {
  --color-primary: #7380ec;
  --color-danger: #ff7782;
  --color-success: #41f1b6;
  --color-warning: #ffbb55;
  --color-white: #202528; /* Цает блока */
  --color-info-dark: #7d8da1;
  --color-info-light: #dce1eb;
  --color-dark: #edeffd; /* Свечение блока */
  --color-light: rgba(0, 0, 0, 0.4);
  --color-primary-variant: #111e88;
  --color-dark-variant: #a3bdcc;
  --color-background: #181a1e; /* Темный фон 181a1e 202528 */

  --card-border-radius: 2rem;
  --border-radius-1: 0.4rem;
  --border-radius-2: 0.8rem;
  --border-radius-3: 1.2rem;

  --card-padding: 1.8rem;
  --padding-1: 1.2rem;

  --box-leagues: 0 0.5rem 0.5rem var(--color-light);
  --box-shadow: 0 2rem 3rem var(--color-light);
}

/* DARK THEME VARIABLES */
.dark-theme-variables {
  --color-background: #f6f6f9; /* Светлый фон f6f6f9 fff */
  --color-white: #fff; /* Цает блока */
  --color-dark: #363949;  /* Свечение блока */
  --color-dark-variant: #677483;
  --color-light: rgba(132, 139, 200, 0.18);
  --box-shadow: 0 1rem 2rem var(--color-light);
}

/* STYLES */
* {
  margin: 0;
  padding: 0;
  outline: 0;
  appearance: none;
  border: 0;
  text-decoration: none;
  list-style: none;
  box-sizing: border-box;
}
html {
  font-size: 14px;
}
body {
  width: 100vw;
  height: 100vh;
  font-family: poppins, sans-serif;
  font-size: 0.88rem;
  background: var(--color-background);
  /*user-select: none;*/
  overflow-x: hidden;
  color: var(--color-dark);
}
a {
  color: var(--color-dark);
}
img {
  display: block;
  width: 100%;
}
h1 {
  font-weight: 800;
  font-size: 1.8rem;
}
h2 {
  font-size: 1.4rem;
}
h3 {
  font-size: 0.87rem;
}
h4 {
  font-size: 0.8rem;
}
h5 {
  font-family: 0.77rem;
}
small {
  font-size: 0.75rem;
}
.profile-photo {
  width: 2.8rem;
  height: 2.8rem;
  border-radius: 50%;
  overflow: hidden;
}
.text-muted {
  color: var(--color-info-dark);
}
p {
  color: var(--color-dark-variant);
}
b {
  color: var(--color-dark);
}
.primary {
  color: var(--color-primary);
}
.danger {
  color: var(--color-danger);
}
.success {
  color: var(--color-success);
}
.warning {
  color: var(--color-warning);
}
/*
.time {
  font-size: 1rem;
}
*/
/* START ASIDE */
aside {
  position: fixed;
  left: -100%;
  background: var(--color-white);
  width: 18rem;
  z-index: 3;
  box-shadow: 1rem 3rem 4rem var(--color-light);
  height: 100vh;
  padding-right: var(--card-padding);
  display: none;
  animation: showMenu 400ms ease forwards;
}
@keyframes showMenu {
  to {
    left: 0;
  }
}
/* Внутриний блок */
aside .top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1.4rem;
}
aside .logo {  
  margin-left: 1rem;
}
aside .logo img {
  width: 6rem;
  height: 6rem;
}
aside .close {
  display: inline-block;
  cursor: pointer;
}
/* START SIDEBAR */
aside .sidebar {
  display: flex;
  flex-direction: column;
  height: 86vh;
  position: relative;
  top: 3rem;
}
aside h3 {
  font-weight: 500;
}
aside .sidebar a {
  display: flex;
  color: var(--color-info-dark);
  margin-left: 2rem;
  gap: 1rem;
  align-items: center;
  position: relative;
  height: 3.7rem;
  transition: all 300ms ease;
}
aside .sidebar a span {
  font-size: 1.6rem;
  transition: all 300ms ease;
}
aside .sidebar a:last-child {
  position: absolute;
  bottom: 2rem;
  width: 100%;
}
aside .sidebar a.active {
  background: var(--color-light);
  color: var(--color-primary);
  margin-left: 0;
}
aside .sidebar a.active:before {
  content: "";
  width: 6px;
  height: 100%;
  background: var(--color-primary);
}
aside .sidebar a.active span {
  color: var(--color-primary);
  margin-left: calc(1rem - 6px);
}
aside .sidebar a:hover {
  color: var(--color-primary);
}
aside .sidebar a:hover span {
  margin-left: 1rem;
}
aside .sidebar .message-count {
  background: var(--color-danger);
  color: var(--color-white);
  padding: 2px 10px;
  font-size: 11px;
  border-radius: var(--border-radius-1);
}
/* END SIDEBAR */
/* END ASIDE */

/* START MAIN */
main {
  margin-top: 5rem;
  padding: 0 20rem; /* отступ от левого края */
}
/* START RIGHT SECTION */
.right .top {
  display: flex;
  justify-content: center;
}

.right .theme-toggler {
  background: var(--color-light);
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 1.6rem;
  width: 4.2rem;
  cursor: pointer;
  border-radius: var(--border-radius-1);
}
.right .theme-toggler span {
  font-size: 1.2rem;
  width: 50%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.right .theme-toggler span.active {
  background: var(--color-primary);
  color: white;
  border-radius: var(--border-radius-1);
}
.right .top .profile {
  display: flex;
  gap: 1rem;
  text-align: right;
}
/* Mobie */

.container {
  width: 100%; /* ширина контейнера */
  display: flex;
}

/* START INSIGHTS */
main .insights {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.6rem;
}
main .insights > div {
  background: var(--color-white);
  padding: var(--card-padding);
  border-radius: var(--card-border-radius);
  margin-top: 1rem;
  box-shadow: var(--box-shadow);
  transition: all 300ms ease;
}
main .insights > div:hover {
  cursor: pointer;
  box-shadow: none;
}
main .insights > div span {
  background: var(--color-primary);
  padding: 0.5rem;
  border-radius: 50%;
  color: var(--color-white);
  font-size: 2rem;
}
main .insights > div.expenses span {
  background: var(--color-danger);
}
main .insights > div.income span {
  background: var(--color-success);
}
main .insights > div .middle {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
main .insights h3 {
  margin: 1rem 0 0.6rem;
  font-size: 1rem;
}
main .insights .progress {
  position: relative;
  width: 92px;
  height: 92px;
  border-radius: 50%;
}
main .insights svg {
  width: 7rem;
  height: 7rem;
}
main .insights svg circle {
  fill: none;
  stroke: var(--color-primary);
  stroke-width: 14;
  stroke-linecap: round;
  transform: translate(5px, 5px);
  stroke-dasharray: 110;
  stroke-dashoffset: 92;
}

main .insights .progress .number {
  position: absolute;
  top: -2px;
  left: -2px;
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
main .insights small {
  margin-top: 1.6rem;
  display: block;
}
/* END INSIGHTS */
.right .top {
  position: fixed;
  top: 0;
  left: 0;
  align-items: center;
  padding: 0 0.8rem;
  height: 4.6rem;
  background: var(--color-white);
  width: 100%;
  margin: 0;
  z-index: 2;
  box-shadow: 0 1rem 1rem var(--color-light);
}
.right .top .menu-none {
  position: absolute;
  left: 20%;
  margin-bottom: 1.85rem;
}
.right .top .theme-toggler {
  width: 4.4rem;
  position: absolute;
  left: 70%;
}
.right .top .profile .info {
  display: none;
}
.right .top button {
  display: inline-block;
  background: transparent;
  cursor: pointer;
  color: var(--color-dark);
  position: absolute;
  left: 1rem;
}
.right .top button span {
  font-size: 2rem;
}
/* START TITLE */
.footer-container {
  position: relative;
  top: 20px; /* Adjust the value as needed */
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer-container .title-container {
  margin-right: 20px; /* Adds some space between the title and footer */
}
.footer-container .title-container :hover{
  cursor: pointer;
  color: #7380ec; 
}
.icon-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.footer-container .icon-container svg {
  margin-right: 15px; /* Move to the right */
  /* margin-top: -5px; Move upwards if needed */
  transition: fill 0.3s ease; /* Smooth transition for color change */
}
.footer-container .icon-container svg:hover {
  cursor: pointer;
  color: #7380ec; /* Change color to red on hover */
}
/* END TITLE */
/* START ORDER */
main .order {
  max-height: 400px; /* max Высота box */
  overflow-y: auto; /* Прокрутка внутри box-match */
  margin-top: 2rem;
}
main .order h2 {
  margin-bottom: 0.8rem;
}
main .order table {
  background: var(--color-white);
  width: 100%;
  border-radius: var(--card-border-radius);
  padding: var(--card-padding);
  text-align: center;
  box-shadow: var(--box-shadow);
  transition: all 300ms ease;
}
main .order table:hover {
  cursor: pointer;
  box-shadow: none;
}
main table tbody td {
  height: 2.8rem;
  border-bottom: 1px solid var(--color-light);
  color: var(--color-dark-variant);
}
main .order a {
  text-align: center;
  display: block;
  margin: 1rem auto;
  color: var(--color-primary);
}
/* END ORDER */
/* Mobie */