.header { display: flex; justify-content: space-between; align-items: center; padding: 20px; } .header h1 { margin: 0; flex-grow: 1; text-align: center; } .settings { position: relative; } .icon-button { font-size: 24px; cursor: pointer; margin: 5px; border-radius: 50%; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; transition: background-color 0.3s, border-color 0.3s; } .settings-menu { display: none; position: absolute; top: 50px; right: 0; flex-direction: column; } .settings-menu.visible { display: flex; } .group { margin-bottom: 40px; } .group-title { display: inline-block; cursor: pointer; } .group-icon { margin-right: 8px; } /* Responsive Design */ @media (max-width: 1024px) { .router { flex: 1 1 calc(50% - 20px); max-width: calc(50% - 20px); } } @media (max-width: 768px) { .router { flex: 1 1 calc(50% - 20px); max-width: calc(50% - 20px); } } @media (max-width: 480px) { .router { flex: 1 1 100%; max-width: 100%; } }