/* Mobile */
@media (max-width: 480px) {
  body {
    grid-template-columns: 80px 1fr;
  }

  main {
    width: fit-content;
    height: auto;
  }

  h1,
  h2,
  h3,
  h4 {
    font-size: var(--font-size-sm);
  }

  .dashboard-search {
    width: 100%;
  }

  .dashboard-cards {
    flex-wrap: wrap;
    width: 100%;
  }

  .dashboard-card {
    flex: 1 1 calc(50% - var(--space-md));
    height: 150px;
  }

  .dashboard-history {
    gap: 0;
    padding: 5px;
    height: 300px;
  }

  .dashboard-balance {
    height: 100%;
  }

  #finance-chart {
    height: 150px;
  }

  .sidebar {
    height: 100%;
  }

  .btn-open-sidebar {
    display: flex;
  }

  .btn-close-sidebar {
    display: flex;
  }

  .sidebar-right {
    position: fixed;
    top: 0;
    right: 0;
    width: 55%;
    height: 100vh;
    transform: translateX(100%);
    transition: transform .6s ease;
    z-index: 1000;
  }

  .sidebar-right.active {
    transform: translateX(0);
  }

}


/* Tablet */
@media (min-width: 481px) and (max-width: 768px) {

  h1,
  h2,
  h3,
  h4 {
    font-size: var(--font-size-sm);
  }

  body {
    display: grid;
    grid-template-columns: 102px 1fr;
    min-height: 100vh;
    overflow-x: hidden;
  }

  main {
    width: 100%;
  }

  .dashboard-search {
    width: 100%;
  }

  .dashboard-cards {
    flex-wrap: wrap;
    width: 100%;
  }

  .dashboard-card {
    flex: 1 1 calc(50% - var(--space-md));
    height: 120px;
  }

  .dashboard-card img {
    width: 40px;
  }

  .dashboard-history {
    gap: 0;
    padding: 5px;
  }

  .dashboard-balance {
    height: max-content;
  }

  #finance-chart {
    height: 200px;
  }

  .sidebar {
    height: 100%;
  }

  .btn-open-sidebar {
    display: flex;
  }

  .btn-close-sidebar {
    display: flex;
  }

  .sidebar-right {
    position: fixed;
    top: 0;
    right: 0;
    width: 45%;
    height: 100vh;
    transform: translateX(100%);
    transition: transform .6s ease;
    z-index: 1000;
  }

  .sidebar-right.active {
    transform: translateX(0);
  }
}


/* Tablet L */
@media (min-width: 769px) and (max-width: 1024px) {
  body {
    display: grid;
    grid-template-columns: 80px 1fr;
    min-height: 100vh;
    overflow-x: hidden;
  }

  main {
    min-height: 100vh;
  }


  h1,
  h2,
  h3,
  h4 {
    font-size: var(--font-size-md);
  }

  .dashboard-card {
    height: 160px;
  }

  .dashboard-card img {
    width: 40px;
  }

  .dashboard-card p {
    font-size: var(--font-size-md);
  }

  .dashboard-history {
    height: 350px;
  }

  .dashboard-balance {
    height: 100%;
  }

  #finance-chart {
    height: 300px;
  }

  .btn-open-sidebar {
    display: flex;
  }

  .btn-close-sidebar {
    display: flex;
  }

  .sidebar-right {
    position: fixed;
    top: 0;
    right: 0;
    width: 35%;
    height: 100vh;
    transform: translateX(100%);
    transition: transform .6s ease;
    z-index: 1000;
  }

  .sidebar-right.active {
    transform: translateX(0);
  }

}

/* Laptop */
@media (min-width: 1025px) and (max-width: 1280px) {
  body {
    display: grid;
    grid-template-columns: 80px 1fr;
    min-height: 100vh;
    overflow-x: hidden;
  }

  h1,
  h2,
  h3,
  h4 {
    font-size: var(--font-size-md);
  }

  .dashboard-card {
    height: 130px;
  }

  .dashboard-card img {
    width: 40px;
  }

  .dashboard-card p {
    font-size: var(--font-size-md);
  }

  .dashboard-history {
    height: 190px;
  }

  .dashboard-balance {
    height: 100%;
  }

  .btn-open-sidebar {
    display: flex;
  }

  .btn-close-sidebar {
    display: flex;
  }

  .sidebar-right {
    position: fixed;
    top: 0;
    right: 0;
    width: 25%;
    height: 100vh;
    transform: translateX(100%);
    transition: transform .6s ease;
    z-index: 1000;
  }

  .sidebar-right.active {
    transform: translateX(0);
  }

}


/* Desktop */
@media (min-width: 1281px) and (max-width: 1480px) {
  main {
    min-height: 100vh;
  }

  .dashboard-history {
    height: 350px;
  }
}