body {
    display: flex;
    flex-direction: column;
    height: 100vh;
}

#wrapper {
    display: flex;
    flex: 1;
}

#sidebar {
    width: 250px;
    flex-shrink: 0;
	height: 100%;
}

#content {
    flex: 1;
    overflow-y: auto;
    padding: 20px;
}
.btn-outline-dark {
            color: black;
            border-color: black;
			margin-left:5px;
	
        }

        .btn-outline-dark:hover {
            background-color: #C9C9C9;
            color: white;
        }

        .btn-outline-dark i {
            color: black;
        }

.footer {
    width: 100%;
}
.profile-wrapper {
    position: relative;
    display: inline-block;
}

.profile-img {
    width: 50px;
    height: 50px;
}

.edit-profile-img {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 2px 6px;
    font-size: 12px;
}

/* ── Instance cards ───────────────────────────────── */
.instance-card {
  transition: transform .18s ease, box-shadow .18s ease;
  border-radius: 12px !important;
  border: 1px solid rgba(0,0,0,.07) !important;
}
.instance-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 28px rgba(0,0,0,.13) !important;
}
.instance-card.is-connected  { border-left: 4px solid var(--brand-primary,  #22c55e) !important; }
.instance-card.is-disconnected { border-left: 4px solid #9ca3af !important; }

.instance-status-dot {
  position: absolute; bottom: 0; right: 0;
  width: 13px; height: 13px;
  border-radius: 50%; border: 2px solid #fff;
}
.dot-online  { background: #22c55e; }
.dot-offline { background: #9ca3af; }

/* ── Stat cards ───────────────────────────────────── */
.stat-card {
  background: #fff;
  border-radius: 12px;
  padding: 1rem 1.25rem;
  box-shadow: 0 1px 6px rgba(0,0,0,.07);
  text-align: center;
}
.stat-icon   { font-size: 1.5rem; margin-bottom: .25rem; }
.stat-number { font-size: 1.75rem; font-weight: 700; line-height: 1; }
.stat-label  { font-size: .72rem; text-transform: uppercase; letter-spacing: .05em; color: #6b7280; margin-top: .2rem; }

/* ── Navbar brand logo ────────────────────────────── */
.navbar-brand-logo { height: 26px; width: auto; margin-right: 6px; vertical-align: middle; }

/* Para dispositivos móveis */
@media (max-width: 768px) {
    #sidebar {
        display: none;
    }

    .navbar-toggler {
        display: block;
    }

    .navbar-collapse {
        position: fixed;
        top: 0;
        left: 0;
        width: 250px;
        height: 100%;
        background-color: var(--brand-secondary, #343a40) !important;
        z-index: 1000;
        overflow-y: auto;
    }

    #wrapper {
        flex-direction: column;
    }
}

/* Para desktops */
@media (min-width: 769px) {
    .navbar-toggler {
        display: none;
    }
}
